M3 solaire sur Internet

Modérateurs : ramses, Balajol, monteric, j2c

Avatar du membre
p_bricoleur
Modérateur
Modérateur
Messages : 1671
Enregistré le : mar. déc. 27, 2005 10:37 am
Localisation : Rueil-Malmaison (92)
Contact :

Message par p_bricoleur »

Bonjour fpyfu (je crois que c'est Alain non ?),

En attendant, si tu as un script d'injection dans RRDT, tu peux utiliser le petit programme executable que j'ai mis là :

http://solarihome.perso.sfr.fr/oneWire/oneWire2.exe

Si tu le lances avec "oneWire2 temp", tu récupères en sortie (stdout) une liste "sonde1 températureSonde1 sonde2 températureSondes2....".

Le seul prérequis est d'avoir un coupleur Maxim (j'utilise USB DS9490) et d'avoir installé ses drivers.

Tu peux donc lancer ce programme, récupérer les données et les injecter dans RRDT.

Cordialement,
Thierry

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

rebonjour P bricoleur, bonjour a tous
USB DS9490
je l'ai cette semaine, j'ai hâte d'essayer, un vrai gamin le soir de noël... et j'ai passé les 60 ans!! C'est grave docteur?
Alain
Modifié en dernier par fpyfu le jeu. févr. 04, 2010 18:18 pm, modifié 1 fois.

Avatar du membre
Stefb12
Newbie
Newbie
Messages : 12
Enregistré le : dim. nov. 25, 2007 0:53 am
Localisation : Reims (51)

Message par Stefb12 »

Bonjour P_bricoleur,

J'ai une petite question, comment fais tu pour faire le graphique avec le fichier créer par espionM3 ?
http://pagesperso-orange.fr/chauffage/
Je suis en train de faire un site pour voir les températures du chauffage. J'utilise samurize pour gérer mes données pour l'instant, le rectangle en haut à gauche est affiché sur le PC pour suivre le fonctionnement. L'ajout de panneau solaire viendra quand j'en aurai les moyens.

Bonne journée


Stéphane

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

bonjour
il y a certainement plus simple mais moi j'utilise la commande FTP

pour suivre l'évolution il faut pouvoir envoyer cette image vers sa page perso (même si il n'y a qu'une page contenant cette image) régulièrement disons toutes les 5 minutes
pour utiliser cette commande il faut faire démarrer/ exécuter et taper FTP ensuite lire les instructions ftp?
sinon on peut faire un batch qui le fait automatiquement.
il suffit de faire un fichier texte comme çi dessous
open perso-ftp.orange.fr
USER popo
bonjour
cd /salut1
binary
put c:\grapheSolaire.png
quit
je fait une petite boucle en basic qui se lance toutes les 5 minutes comme cela
Shell("ftp -n -s:c:\temp.txt", vbHide)
le prog complet donne cela
Private Sub Command1_Click()
ChDir "C:\"

Open "temp.txt" For Append As #1
Print #1, "open ftp.ifrance.com" 'Le serveur est par exemple ftp.ifrance.com
Print #1, "USER popo" 'Le nom d'utilisateur est popo
Print #1, "bonjour" 'Mot de passe (bonjour)


'Disons que nous voulons uploader un fichier nomme grapheSolaire.png (se trouvant sur le C: dans le dossier salut1 sur le ftp

Print #1, "cd " + "/salut1"
Print #1, "binary"
Print #1, "put c:\grapheSolaire.png"
Print #1, "quit"
Close #1


End Sub

Private Sub Timer1_Timer()
Dim site As Integer
site = Shell("ftp -n -s:c:\temp.txt", vbHide)
End Sub
Fichiers joints
Sans_titre_133.jpg
Sans_titre_133.jpg (54.64 Kio) Vu 5266 fois
Modifié en dernier par fpyfu le ven. févr. 05, 2010 20:13 pm, modifié 1 fois.

Avatar du membre
Stefb12
Newbie
Newbie
Messages : 12
Enregistré le : dim. nov. 25, 2007 0:53 am
Localisation : Reims (51)

Message par Stefb12 »

bonjour fpyfu,

Merci pour ton programme, j'utilise actuellement ftp-watchdog. Je vais essayer ton programme cela m'a l'air très simple et surement plus léger que watchdog. Le problème est que je n'arrive pas à faire de graphique avec RRDTOOL depuis le fichier solar.dat crée par espionM3. Je voudrai rajouter de beaux graphique pour suivre l'évolution des températures,des vannes et des 2 pompes.

a+

Stéphane

Avatar du membre
p_bricoleur
Modérateur
Modérateur
Messages : 1671
Enregistré le : mar. déc. 27, 2005 10:37 am
Localisation : Rueil-Malmaison (92)
Contact :

Message par p_bricoleur »

Bonsoir,

Pour ma part, j'utilise un script Python pour lire le fichier texte, dessiner les courbes, modifier le schéma et envoyer les fichiers sur Internet.
Le script utilise la bibliothèque de tracé MatPlotLib.

Le FTP est intégré à Python mais il faut dans tous les cas ouvrir la connexion; faire les transferts et fermer la connexion.

Le fichier index.html ne bouge pas, il référence les 2 fichiers graphiques par leur nom et ce sont eux que je mets à jour.

Cordialement,
Thierry

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

la commande FTP est très simple
Le problème est que je n'arrive pas à faire de graphique avec RRDTOOL
RRDTOOL pff je galère aussi avec si tu veut j'ai un bon pdf en francais
en ce moment je fait avec un batch comme ceci pour entrer des données et les comparée au fichier exel , mais les graphiques ne refletent pas les données
rem @echo off
rrdtool create test.rrd --step 60 ^
DS:Puissance:GAUGE:120:0:9000 ^
RRA:MAX:0.5:1:1200 ^
RRA:MIN:0.5:12:2400 ^
RRA:MAX:0.5:12:2400 ^
RRA:AVERAGE:0.5:12:2400

echo hh:mm:ss,cc Puissance>test.xls

REM création d'une variable vide tempo = 0 pour effectuer x fois une action
set tempo=

REM répétition de l'action 10 fois avant que cela s'arrêter
:boucle
REM création du nombre aléatoire pour la commande rrdtool de 1 à 100
set /a nb=%random%%%100
rrdtool update test.rrd --template Puissance N:%nb%
REM utilisation du nombre aléatoire pour le fichier test.xls utilisé par rrdtool.
echo %time% %nb% >>test.xls
REM Attente de 60 secondes entre chaque action
@ping 127.0.0.1 -n 60 -w 1000> nul
REM incrémenter la variable de départ d'un pas de 1. De 0 notre variable va donc être égale à 1 (équivalent d'un compteur)
set /a tempo+=1
REM si le compteur est égal à 10 fois alors il passera à la suite création du graphe
if /i %tempo% equ 10 goto :suite
goto boucle

:suite
rrdtool graph test.png ^
--imgformat PNG ^
--font DEFAULT:8:C:\WINDOWS\fonts\Arial.ttf ^
--title "Exemple de graphique sur la puissance" ^
--vertical-label "VA" ^
--end now ^
--start end-3600s ^
--width 647 ^
--height 270 ^
DEF:Power=test.rrd:Puissance:MAX ^
COMMENT:" Minimum Maximum Moyenne\l" ^
LINE1:Power#FF0000:"Puissance " ^
GPRINT:Power:MIN:"%%8.0lf " ^
GPRINT:Power:MAX:"%%16.0lf " ^
GPRINT:Power:AVERAGE:"%%10.2lf"
pause
j'espere que c'est le bon bach car je le triture depuis plusieurs jours


Télécharger : RrdTool pour Win32
Créer un répertoire "C:\RrdTool"
Ouvrir l'archive rrdtool-1.2.28-bin-w32.zip, copier "rrdtool.exe" dans "C:\RrdTool"
Dans une fenêtre DOS :
1/ Ajouter le Path sur le répertoire : "PATH C:\RrdTool;%PATH%"
2/ Tester en lançant la commande "rrdtool" => donne un mini help de rrdtool

Pour tester faire un batch qui :
- crée une base test.rrd,
- la remplit sur une dizaine de minutes, il rempli également un fichier test.xls avec les mêmes données,
- et enfin crée le graphique test.png.
Voici ci-dessous un exemple de fichier de commande "test.bat" :
Entre chaque update, les @ping sont là pour simuler une fonction wait de 60' environ qui n'existe pas sous dos.
Copier/coller tel quel le texte entre les deux lignes === dans le fichier "test.bat"
=======================================================
rrdtool create test.rrd --step 60 ^
DS:Puissance:GAUGE:120:0:9000 ^
RRA:MAX:0.5:1:1200 ^
RRA:MIN:0.5:12:2400 ^
RRA:MAX:0.5:12:2400 ^
RRA:AVERAGE:0.5:12:2400

echo hh:mm:ss,cc Puissance>test.xls

rrdtool update test.rrd --template Puissance N:10
echo %time% 10>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:155
echo %time% 155>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:1200
echo %time% 1200>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:3800
echo %time% 3800>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:200
echo %time% 200>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:250
echo %time% 250>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:8000
echo %time% 8000>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:6500
echo %time% 6500>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:1
echo %time% 10>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:230
echo %time% 230>>test.xls
@ping 127.0.0.1 -n 60 -w 1000> nul
rrdtool update test.rrd --template Puissance N:10
echo %time% 10>>test.xls


rrdtool graph test.png ^
--imgformat PNG ^
--font DEFAULT:8:C:\WINDOWS\fonts\Arial.ttf ^
--title "Exemple de graphique sur la puissance" ^
--vertical-label "VA" ^
--end now ^
--start end-3600s ^
--width 647 ^
--height 270 ^
DEF:Power=test.rrd:Puissance:MAX ^
COMMENT:" Minimum Maximum Moyenne\l" ^
LINE1:Power#FF0000:"Puissance " ^
GPRINT:Power:MIN:"%%8.0lf " ^
GPRINT:Power:MAX:"%%16.0lf " ^
GPRINT:Power:AVERAGE:"%%10.2lf"
Fichiers joints
test_324.png
test_324.png (28.82 Kio) Vu 5226 fois

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

re
Le problème est que je n'arrive pas à faire de graphique avec RRDTOOL depuis le fichier solar.dat crée par espionM3.
je crois me souvenir que ce fichier dat est un simple fichier texte formaté, dans ce cas il faut le lire sequentiellement afin de mettre a jour la base rrdtool a l'aide de la commande rrdtool update
par contre je n'ai pas un M3 mais un Zelio (c'est la même famille) j'ai abandonné il y a un bout de temps la lecture car je perdais trop souvent la connexion (connexion serie).
je préfère installer un réseaux wire quitte a doubler les sondes déjà pressente sur l'automate le 1 wire semble plus fiable de plus cela me donne une sécurité par exemple si la sonde de l'automate me donne 0 et le 1wire 100 je peut en déduire que la sonde/convertisseur a un soucis et par prudence lancer la procédure antisurchauffe qui est sur batterie.
l'année passée j'ai péter pas mal de tuyau PER suite a une panne de sonde, pourtant je croyait avoir trouver une parade style:
- si la sonde = subitement zero ou 100 alors court circuit ou coupure.... ben oui ma sonde de capteur est restée bloqué a 60° de ce fait lorsque le stock est lui aussi arrivé a 60 la circulation c'est stoppé jusqu'à éclatement des canalisations, depuis comme en aviation sur le capteur j'ai des mesures redondante!
autre point intéressant en cas de coupure edf le réseau wire étant géré par le pc avec environ 4 heures d'autonomie il agit aussi en sécurité antisurchauffe
82 tubes 58*180 en plein soleil, en plein ete ça mérite des précautions

Avatar du membre
Stefb12
Newbie
Newbie
Messages : 12
Enregistré le : dim. nov. 25, 2007 0:53 am
Localisation : Reims (51)

Message par Stefb12 »

merci, je vais regarder ce que tu as fait avec rrdtool. Pratique d'avoir deux sondes, je n'y avais pas pensé, j'ai fait un programme de "secours" en cas de sonde HS valeur <5 les pompes démarre comme si il y avait une surchauffe (chaudière pour mon cas).

a+

Stéphane

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

bonjour
pour le ftp je ne sait ps comment tu a fait mais j'observe que ça marche
pour rrdtool, si tu comprend les subtilités je suis preneur, c'est pas limpide pour moi
sinon j'ai un bon manuel PDF en francais
merci, je vais regarder ce que tu as fait avec rrdtool
Fichiers joints
pdf_rrdtools.rar
doc en francais
(1018.31 Kio) Téléchargé 128 fois

Avatar du membre
Stefb12
Newbie
Newbie
Messages : 12
Enregistré le : dim. nov. 25, 2007 0:53 am
Localisation : Reims (51)

Message par Stefb12 »

merci p_bricoleur, mais je ne connais pas les scripts python. j'ai un script en javascript qui va chercher les dernières données dans le fichier log crée par espionm3, j'ai déjà mis pas mal de temps pour le faire. Mais si la solution est plus simple en python pourquoi pas ?

A+

Stéphane

Avatar du membre
Stefb12
Newbie
Newbie
Messages : 12
Enregistré le : dim. nov. 25, 2007 0:53 am
Localisation : Reims (51)

Message par Stefb12 »

Pour le FTP j'utilise ftp-watchdog, gratuit et en allemand. Voici un lien avec les expliquation. http://www.plevenon-meteo.info/ftp.html

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

bonjour
Pbricoleur a dit:
http://solarihome.perso.sfr.fr/oneWire/
merci cela m'a tres ete utile j'ai fait ma premiere sonde de temp et ça marche

p Bricoleur a dit:
Bonjour fpyfu (je crois que c'est Alain non ?),

En attendant, si tu as un script d'injection dans RRDT, tu peux utiliser le petit programme executable que j'ai mis là :

http://solarihome.perso.sfr.fr/oneWire/oneWire2.exe

Si tu le lances avec "oneWire2 temp", tu récupères en sortie (stdout) une liste "sonde1 températureSonde1 sonde2 températureSondes2....".

viiiiiiiiiiiii!! ça marche aussi comme je sait rester modeste je dit: je suis un génie-------> bon je sort

bref encore merci

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

bonjour
juste pour information
voila (mais je me suis fait aider)
pour sortir les sondes et températures
pour couper et sortir les que les sondes
pour couper et sortir que les températures
:boucle
::stocke (>>) les informations dans un fichier txt (tmp.txt)
oneWire2 temp >> tmp.txt
::separe les informations sonde et température dans deux fichiers différents
for /f "tokens=1,2 delims= " %%a in ('type tmp.txt') do (
echo %%a >> sonde.txt
echo %%b >> temperature.txt
)
goto boucle
pour faire des essais et mettre une base rrdtool a jour
:boucle

::stocke (>>) les informations dans un fichier txt (tmp.txt)
oneWire2 temp >> tmp.txt
::separe les informations sonde et température dans deux fichiers différents
for /f "tokens=1,2 delims= " %%a in ('type tmp.txt') do (
echo %time% >>test.txt
rrdtool update chauffage.rrd N:%%b
echo %%a >> sonde.txt
echo %%b >> temperature.txt
)

rrdtool graph temp_extj.png ^
--imgformat PNG ^
--font DEFAULT:8:C:\WINDOWS\fonts\Arial.ttf ^
--end now ^
--start end-12h ^
--width 800 ^
--height 300 ^
--x-grid MINUTE:30:HOUR:1:HOUR:2:0:%%H:%%M ^
--slope-mode ^
-- DEF:tempe=chauffage.rrd:temp_ext:AVERAGE ^
LINE1:tempe#0000ff:"temp_ext" ^
GPRINT:tempe:LAST:"actuel %%.1lf " ^
GPRINT:tempe:MIN:"min %%.1lf " ^
GPRINT:tempe:MAX:"Max %%.1lf " ^
GPRINT:tempe:AVERAGE:"moyenne %%.1lf"
del /s tmp.txt
goto boucle
avant il faut creer sa base (ici pour une sonde)
RRDTOOL create chauffage.rrd -s 60 DS:temp_ext:GAUGE:600:U:U RRA:AVERAGE:0.5:1:1440
RRA:AVERAGE:0.5:6:1680
RRA:AVERAGE:0.5:6:7200
RRA:AVERAGE:0.5:60:8760
ce messsage c'est pour remercier P Bricoleur d'avoir mis a ma disposition ONEWIRE2.exe et lui dire u'il me permet d'essayer de comprendre le fonctionnement de rrdtool
encore merci P Bricoleur
Modifié en dernier par fpyfu le mar. févr. 16, 2010 19:10 pm, modifié 2 fois.

Avatar du membre
fpyfu
Maitre Solaire
Maitre Solaire
Messages : 809
Enregistré le : sam. déc. 24, 2005 21:50 pm
Localisation : Valréas 84600

Message par fpyfu »

bonjour

ben dit donc une semaine comme celle la après les deux mois passé, ça remonte le moral
Fichiers joints
grapheSolaire.png
grapheSolaire.png (98.56 Kio) Vu 4989 fois

Répondre

Retourner vers « Crouzet M2-M3, autres API et péripheriques »