Demodulateur teleinformation EDF
De MicElectroLinGenMet.
(Retour Accueil ou Liste des articles)
Sommaire |
La liaison téléinfo
(Source: [GESTIONNAIRE D'ÉNERGIE])
Les compteurs électroniques EDF possèdent deux bornes de téléinformation à disposition du client. Sur celles-ci, il est possible d'y lire des données informatiques sur la consommation électrique du client.
L'utilisation de ces bornes est surtout destinée aux gestionnaire d'energie disponible dans le commerce. Mais il est aussi possible d'exploiter ces données sur un PC.
Ces informations sont émises cycliquement sous forme de messages composés d’une étiquette d’identification suivie généralement d’une valeur. Le signal est modulé à 50 KHz : la présence de modulation correspondant à un 0 logique, l’absence à un 1 logique.
Il est donc nécessaire de démoduler ce signal. Après quoi on obtient une suite de caractères ASCII émise à 1200 bits/s, 7 bits/caractères, parité paire, 1 bit de stop.
Chaque information débute par le caractère LF (0A hexa), suivie de l’étiquette, de la valeur associée et se termine par le caractère CR (0D).
Autres sources d'informations sur le sujet:
Détail des trames téléinformation
(Source: [GESTIONNAIRE D'ÉNERGIE] et [Teleinfo])
Les infos sont transmises cycliquement sur la ligne, modulées en ASK à 50kHz, ce qui correspond en gros à : soit aucune tension présente, soit un signal à 50kHz de 10V CC environ. Le 0V équivaut à un 1 logique, le 50kHz à un 0 logique.
Pour être exploitées, ces infos doivent être démodulées pour être aux formats TTL ou RS232.
C'est donc une liaison série qui délivre des caractères ASCII suivant le protocole suivant :
- 1200 bits/s
- 7 bits/caractères
- parité paire
- 1 bit de stop
Un groupe de messages complet constitue une trame qui débute par le caractère STX (code ASCII = 02), et se termine par ETX (03).
Chaque message composant la trame comprend :
LF (0x0A) Etiquette (4 à 8 caractères) SP (0x20) Données (1 à 12 caractères) SP (0x20) CC (caractère de contrôle) CR (0x0D)
Ces différents messages donnent les indications suivantes en fonction de l'abonnement souscrit :
- n° d'identification du compteur, étiquette: ADCO (12 caractères)
- option tarifaire (type d'abonnement) : OPTARIF (4 car.)
- intensité souscrite : ISOUSC ( 2 car. unité = ampères)
- index si option = base : BASE ( 9 car. unité = Wh)
- index heures creuses si option = heures creuses : HCHC ( 9 car. unité = Wh)
- index heures pleines si option = heures creuses : HCHP ( 9 car. unité = Wh)
- index heures normales si option = EJP : EJP HN ( 9 car. unité = Wh)
- index heures de pointe mobile si option = EJP : EJP HPM ( 9 car. unité = Wh)
- index heures creuses jours bleus si option = tempo : BBR HC JB ( 9 car. unité = Wh)
- index heures pleines jours bleus si option = tempo : BBR HP JB ( 9 car. unité = Wh)
- index heures creuses jours blancs si option = tempo : BBR HC JW ( 9 car. unité = Wh)
- index heures pleines jours blancs si option = tempo : BBR HP JW ( 9 car. unité = Wh)
- index heures creuses jours rouges si option = tempo : BBR HC JR ( 9 car. unité = Wh)
- index heures pleines jours rouges si option = tempo : BBR HP JR ( 9 car. unité = Wh)
- préavis EJP si option = EJP : PEJP ( 2 car.) 30mn avant période EJP
- période tarifaire en cours : PTEC ( 4 car.)
- couleur du lendemain si option = tempo : DEMAIN
- intensité instantanée : IINST ( 3 car. unité = ampères)
- avertissement de dépassement de puissance souscrite : ADPS ( 3 car. unité = ampères) (message émis uniquement en cas de dépassement effectif, dans ce cas il est immédiat)
- intensité maximale : IMAX ( 3 car. unité = ampères)
- Puissance apparente : PAPP ( 5 car. unité = Volt.ampères)
- groupe horaire si option = heures creuses ou tempo : HHPHC (1 car.)
- mot d'état (autocontrôle) : MOTDETAT (6 car.)
Nota : le compteur peut être configuré en mode "veille" et n'émettre que l'étiquette ADCO. Pour avoir accès au jeu d'informations complet, il suffit de le faire paramétrer en conséquent par EDF.
Documentation plus complète:
- Spécifications techniques d'EDF concernant la téléinformation (Source: EDF)
- Mise à jour: Sorties de téléinformation client des appareils de comptage électroniques utilisés par ERDF
Le bornier téléinformation est situé dans mon cas (compteur Landis Gyr) en haut à droite du compteur électronique (Borne I1 - I2).
La liaison vers l'utilisation se fait par un câble 2 conducteurs avec écran relié à la terre.
Shéma du démodulateur
Shéma repris du site [GESTIONNAIRE D'ÉNERGIE], redessiné sous Kicad (version Linux).
Shéma PDF: teleinfo.pdf
Partie démodulateur seul avec sortie TTL
La led a été rajoutée pour visualiser la réception. Celle-ci clignote rapidement à la réception des trames.
Adaptateur TTL/RS232
Shéma à base du circuit Max232 pour la connexion à un port RS232 de PC.
Test du montage sur un PC Linux
Réception des trame sous minicom
Minicom est un programme de communication par port série sous Linux/Unix.
Bienvenue avec minicom 2.2 OPTIONS: I18n Compilé le Jan 7 2007, 18:00:43. Port /dev/ttyS1 Tapez CTRL-A Z pour voir l'aide concernant les touches spéciales ADCO 70060936XXXX ? (paranoiac inside) OPTARIF HC.. < ISOUSC 20 8 HCHC 004063750 _ HCHP 004423070 ' PTEC HC.. S IINST1 001 I IINST2 000 I IINST3 001 K IMAX1 006 6 IMAX2 016 8 IMAX3 015 8 PMAX 05710 3 PAPP 00280 + HHPHC E 0 MOTDETAT 000000 B PPOT 00 # ADCO 70060936XXXX ? OPTARIF HC.. < ISOUSC 20 8 HCHC 004063751 HCHP 004423070 ' PTEC HC.. S IINST1 001 I IINST2 000 I IINST3 001 K IMAX1 006 6 IMAX2 016 8 IMAX3 015 8 PMAX 05710 3 PAPP 00280 + HHPHC E 0 MOTDETAT 000000 B PPOT 00 # Aide : CTRL-A Z | 1200 7E1 | NOR | Minicom 2.2 | VT102 | Déconnecté
Trame téléinfo
L'abonnement est de type Heures Creuses en tri-phasée.
ADCO 70060936XXXX ? OPTARIF HC.. < ISOUSC 20 8 HCHC 003064470 ^ HCHP 003660820 , PTEC HP.. IINST1 001 I IINST2 001 J IINST3 001 K IMAX1 015 6 IMAX2 022 5 IMAX3 026 : PMAX 09040 3 PAPP 00600 ' HHPHC E 0 MOTDETAT 000000 B PPOT 00 #
En hexa.:
00116940 0a 41 44 43 4f 20 37 30 30 36 30 39 33 36 XX XX |.ADCO 70060936XX| 00116950 XX XX 20 3f 0d 0a 4f 50 54 41 52 49 46 20 48 43 |XX ?..OPTARIF HC| 00116960 2e 2e 20 3c 0d 0a 49 53 4f 55 53 43 20 32 30 20 |.. <..ISOUSC 20 | 00116970 38 0d 0a 48 43 48 43 20 30 30 33 30 36 34 34 37 |8..HCHC 00306447| 00116980 30 20 5e 0d 0a 48 43 48 50 20 30 30 33 36 36 32 |0 ^..HCHP 003662| 00116990 33 34 34 20 2f 0d 0a 50 54 45 43 20 48 50 2e 2e |344 /..PTEC HP..| 001169a0 20 20 0d 0a 49 49 4e 53 54 31 20 30 30 31 20 49 | ..IINST1 001 I| 001169b0 0d 0a 49 49 4e 53 54 32 20 30 30 30 20 49 0d 0a |..IINST2 000 I..| 001169c0 49 49 4e 53 54 33 20 30 30 31 20 4b 0d 0a 49 4d |IINST3 001 K..IM| 001169d0 41 58 31 20 30 31 35 20 36 0d 0a 49 4d 41 58 32 |AX1 015 6..IMAX2| 001169e0 20 30 32 32 20 35 0d 0a 49 4d 41 58 33 20 30 32 | 022 5..IMAX3 02| 001169f0 36 20 3a 0d 0a 50 4d 41 58 20 30 39 30 34 30 20 |6 :..PMAX 09040 | 00116a00 33 0d 0a 50 41 50 50 20 30 30 35 39 30 20 2f 0d |3..PAPP 00590 /.| 00116a10 0a 48 48 50 48 43 20 45 20 30 0d 0a 4d 4f 54 44 |.HHPHC E 0..MOTD| 00116a20 45 54 41 54 20 30 30 30 30 30 30 20 42 0d 0a 50 |ETAT 000000 B..P| 00116a30 50 4f 54 20 30 30 20 23 0d 03 02 0a 41 44 43 4f |POT 00 #....ADCO|
Trame dépassement d'intensité en triphasé (ici phase 2):
00000000 0a 41 44 49 52 32 20 30 32 35 20 29 0d 0a 41 44 |.ADIR2 025 )..AD| 00000010 43 4f 20 37 30 30 36 30 39 33 36 XX XX XX XX 20 |CO 70060936XXXX | 00000020 3f 0d 0a 49 49 4e 53 54 31 20 30 30 31 20 49 0d |?..IINST1 001 I.| 00000030 0a 49 49 4e 53 54 32 20 30 32 35 20 50 0d 0a 49 |.IINST2 025 P..I| 00000040 49 4e 53 54 33 20 30 30 33 20 4d 0d 03 |INST3 003 M..|
Ce type de trames est suivi de trames courtes:
00000000 0a 41 44 43 4f 20 37 30 30 36 30 39 33 36 XX XX |.ADCO 70060936XX| 00000010 XX XX 20 3f 0d 0a 49 49 4e 53 54 31 20 30 30 31 |XX ?..IINST1 001| 00000020 20 49 0d 0a 49 49 4e 53 54 32 20 30 31 39 20 53 | I..IINST2 019 S| 00000030 0d 0a 49 49 4e 53 54 33 20 30 30 31 20 4b 0d 03 |..IINST3 001 K..|
Exemple d'une trame normale interrompue par une trame ADIR:
00000000 0a 41 44 43 4f 20 37 30 30 36 30 39 33 36 XX XX |.ADCO 70060936XX| 00000010 XX XX 20 3f 0d 0a 4f 50 54 41 52 49 46 20 48 43 |XX ?..OPTARIF HC| 00000020 2e 2e 20 3c 0d 0a 49 53 4f 55 53 43 20 32 30 20 |.. <..ISOUSC 20 | 00000030 38 0d 0a 48 43 48 43 20 30 31 34 33 31 39 30 36 |8..HCHC 01431906| 00000040 35 20 23 0d 04 02 0a 41 44 49 52 33 20 30 32 33 |5 #....ADIR3 023| 00000050 20 28 0d 0a 41 44 43 4f 20 37 30 30 36 30 39 33 | (..ADCO 7006093| 00000060 36 XX XX XX XX 20 3f 0d 0a 49 49 4e 53 54 31 20 |6XXXX ?..IINST1 | 00000070 30 31 32 20 4b 0d 0a 49 49 4e 53 54 32 20 30 31 |012 K..IINST2 01| 00000080 35 20 4f 0d 0a 49 49 4e 53 54 33 20 30 32 33 20 |5 O..IINST3 023 | 00000090 4f 0d 03 |O..|
Attention pour le monophasé: la trame de dépassement d'intensité commence par ADPS.
Programmes sous Linux
Teleinfos serial
Programme de test en C pour lire les données téléinfo et les stocker dans fichier csv ou base MySql: teleinfoserial_csv.c ou teleinfoserial_mysql.c
(Voir ci-dessous avec un Wrt54gl)
Teleinfo ethernet
- Programme pour lire les données Téléinfo sur interface ethernet/série de type EZL-60 ou machine embarquée comme un routeur utilisant le daemon ser2net (socket réseau)
Voir programme: Teleinfosocket mysql.c
- Programme réseau utilisant le protocol xPL
Version gérant le protocole xPL de manière simplifiée (pas d'utilisation de la librairie C xPL: xPLLib): Teleinfosocket_xPL.c
(Voir ci-dessous avec un Wrt54gl)
Fork
Versions du programme teleinfo_serial.c adaptées/modifiées par d'autres utilisateurs
- Version pour compteur monophasé heures creuses, (Modifiée/Testée par Ludovic Gomez): Teleinfo_serial_mono.c
- Version qui broadcaste les trames téléinfo. sur le réseau: http://hallard.wikidot.com/teleinfo-broadcast
- Version pour compteur monophasé et sans heures creuses: http://frank.villaro-dixon.eu/article-76-t%C3%A9l%C3%A9information-edf-enercoop-compteur.html
Interface teleinfo. pilote par un WRT54GL
L'arrivée du câble téléinformation n'étant pas à proximité du PC Linux, l'interface téléinfo. sera piloté par un port série du routeur wifi Wrt54gl flasher OpenWrt.
Le matériel
Le montage utilise une interface simple utilisant un 74HC05 pour adapter les niveaux 3.3V du port série au 5V.On pourra reprendre le montage de l'interface 1-wire pour wrt54gl car il reste 2 portes du 74HC05 de libres.Celle-ci utilisant le port série ttyS1, l'interface Téléinfo. prendra le port ttyS0.
Il faudra désactiver la console système utilisant ce port au niveau d'OpenWrt en modifiant un fichier.
root@wrt54gl:# cat /etc/inittab ::sysinit:/etc/init.d/rcS #tts/0::askfirst:/bin/ash --login => ligne diésée.
suivi d'un reboot.
ATTENTION: OpenWrt ne sera plus joignable par la console série mais le CFE doit rester joignable au boot normalement.
Ceci n'est pas génant pour l'interface Téléinfo car elle ne reçoit pas de données.
Shéma de l'interface
Photos du cablâge
Vu de l'interface 1-wire et téléinfo en test (78HC05 + DS2480B + DS18B20 sur la platine et un autre en extérieur):
Programmes
Voici deux programmes pour gérer l'interface sur le Wrt54gl (Voir Compiler_des_programmes_pour_le_Wrt54gl).
(Ces programmes fonctionneront aussi sur PC aprés compilation en précisant le bon port série).
Teleinfoserial_csv
Le premier (teleinfoserial_csv.c) va lire les données Téléinfo. demandées et les enregistrer dans un fichier.
Les données Téléinfo. sont disponible dans le fichier /tmp/teleinfo.csv
root@wrt54gl:~# cat teleinfo.csv '1223717885','2008-10-11','11:38:05','70060936XXXX','HC..','20','8430133','8216484','HP','1','0','1','11','20','19','7470','420','E','000000','00','0','0','0' '1223717944','2008-10-11','11:39:04','70060936XXXX','HC..','20','8430140','8216484','HP','1','0','1','11','20','19','7470','410','E','000000','00','0','0','0' '1223718005','2008-10-11','11:40:05','70060936XXXX','HC..','20','8430147','8216484','HP','1','0','1','11','20','19','7470','420','E','000000','00','0','0','0' '1223718065','2008-10-11','11:41:05','70060936XXXX','HC..','20','8430154','8216484','HP','1','0','1','11','20','19','7470','410','E','000000','00','0','0','0' '1223718124','2008-10-11','11:42:04','70060936XXXX','HC..','20','8430160','8216484','HP','1','0','1','11','20','19','7470','450','E','000000','00','0','0','0' '1223718185','2008-10-11','11:43:05','70060936XXXX','HC..','20','8430167','8216484','HP','1','0','1','11','20','19','7470','430','E','000000','00','0','0','0' '1223718244','2008-10-11','11:44:04','70060936XXXX','HC..','20','8430174','8216484','HP','1','0','1','11','20','19','7470','410','E','000000','00','0','0','0' '1223718305','2008-10-11','11:45:05','70060936XXXX','HC..','20','8430180','8216484','HP','1','0','1','11','20','19','7470','410','E','000000','00','0','0','0' '1223718365','2008-10-11','11:46:05','70060936XXXX','HC..','20','8430187','8216484','HP','1','0','1','11','20','19','7470','440','E','000000','00','0','0','0' '1223718424','2008-10-11','11:47:04','70060936XXXX','HC..','20','8430194','8216484','HP','1','0','1','11','20','19','7470','410','E','000000','00','0','0','0' '1223718485','2008-10-11','11:48:05','70060936XXXX','HC..','20','8430200','8216484','HP','1','0','1','11','20','19','7470','410','E','000000','00','0','0','0' '1223718544','2008-10-11','11:49:04','70060936XXXX','HC..','20','8430207','8216484','HP','1','0','1','11','20','19','7470','400','E','000000','00','0','0','0'
En mode DEBUG, le programme affiche la trame Téléinfo. reçue.
root@wrt54gl:~# ./teleinfoserial_csv ----- 2008-10-12 15:59:52 ----- ADCO='70060936XXXX' OPTARIF='HC..' ISOUSC='20' HCHP='008444126' HCHC='008228815' PTEC='HP' IINST1='002' IINST2='000' IINST3='001' IMAX1='011' IMAX2='020' IMAX3='019' PMAX='07470' PAPP='00610' HHPHC='E' MOTDETAT='000000' PPOT='00' ADIR1='' ADIR2='' ADIR3=''
Voir dans la syslog les messages d'erreurs ou d'informations.
Cette nouvelle version détecte les trames de dépassement d'intensité (ADIRn) en envoyant un message par la syslog et gère la vérification des checksums en bouclant jusqu'à 3 essais si erreurs.
En mode DEBUG, une erreur de checksum génére un fichier contenant la trame Téléinfo:
root@wrt54gl:~# hexdump -C teleinfotrame.1222095735 00000000 0a 41 44 43 4f 20 37 30 30 36 30 39 33 36 XX XX |.ADCO 70060936XX| 00000010 XX XX 20 3f 0d 0a 4f 50 54 41 52 49 46 20 48 43 |XX ?..OPTARIF HC| 00000020 2e 2e 20 3c 0d 0a 49 53 4f 55 53 43 20 32 30 20 |.. <..ISOUSC 20 | 00000030 38 0d 0a 48 43 48 43 20 30 30 38 30 30 35 39 32 |8..HCHC 00800592| 00000040 37 20 25 0d 0a 48 43 48 50 20 30 30 38 31 39 37 |7 %..HCHP 008197| 00000050 39 39 33 20 41 0d 0a 50 54 45 43 20 48 50 2e 2e |993 A..PTEC HP..| 00000060 20 20 0d 0a 49 49 4e 53 54 31 20 30 30 31 20 49 | ..IINST1 001 I| 00000070 0d 0a 49 49 4e 53 54 32 20 30 30 30 20 49 0d 0a |..IINST2 000 I..| 00000080 49 49 4e 53 54 33 20 30 30 31 20 4b 0d 0a 49 4d |IINST3 001 K..IM| 00000090 41 58 31 20 30 31 31 20 32 0d 0a 49 4d 41 58 32 |AX1 011 2..IMAX2| 000000a0 20 30 31 39 20 3b 0d 0a 49 4d 41 58 33 20 30 31 | 019 ;..IMAX3 01| 000000b0 36 20 39 0d 0a 50 4d 41 58 20 30 35 30 39 30 20 |6 9..PMAX 05090 | 000000c0 34 0d 0a 50 41 50 50 20 30 30 33 33 30 20 27 0d |4..PAPP 00330 '.| 000000d0 0a 48 48 50 48 43 20 45 20 30 0d 0a 4d 4f 54 44 |.HHPHC E 0..MOTD| 000000e0 45 54 41 54 20 30 30 30 30 30 30 20 42 0d 0a 50 |ETAT 000000 B..P| 000000f0 50 4f 54 20 30 30 20 23 0d 03 |POT 00 #..|
Paramètres à adapter dans le source en fonction de ses besoins:
- Port série à modifier en conséquence avec 'SERIALPORT.
- Nombre de valeurs à relever: NB_VALEURS + tableaux "etiquettes".
Teleinfoserial_mysql
Le deuxième (teleinfoserial_mysql.c) va lire les données Téléinfo. demandées et les enregistrer sur une base de données MySql distante.
Si le serveur MySql n'est pas accessible le programme sauvegarde les données en local sur le Wrt54gl (/tmp/teleinfo.csv) pour réimport ultérieure par exemple.
Ce programme détecte aussi les trames de dépassement d'intensité (ADIRn) en envoyant un message par la syslog et gère la vérification des checksums en bouclant jusqu'à 3 essais si erreurs.
Voir la table MySql Téléinfo: Structure de la table Teleinfo à adapter suivant abonnement EDF (ici données pour du triphasé).
Le programme sera lancer en crontab du Wrt54gl:
* * * * * /jffs/bin/teleinfoserial_mysql >> /tmp/teleinfoserial_mysql.log 2>&1
Ne pas oublier d'installer la "library" libmysqlclient pour utiliser les fonctions MySql:
root@wrt54gl:~# ipkg install libmysqlclient
Il n'y a pas d'affichage à la console sauf en mode DEBUG (affichage de la trame Téléinfo. reçue), Les messages d'erreurs ou d'informations étant renvoyés dans la syslog.
Voici une partie des données Téléinfo. enregistrées dans une base MySql sur la Debian:
dan@vesta:~$ ~/bin/listdatateleinfo.sh timestamp date heure hchp hchc ptec inst1 inst2 inst3 papp 1222352044 25/09/2008 16:14:04 8215020 8030891 HP 1 0 1 300 1222351984 25/09/2008 16:13:04 8215016 8030891 HP 1 0 1 300 1222351925 25/09/2008 16:12:05 8215012 8030891 HP 1 0 1 300 1222351864 25/09/2008 16:11:04 8215007 8030891 HP 1 0 1 300 1222351805 25/09/2008 16:10:05 8215003 8030891 HP 1 0 1 300 1222351744 25/09/2008 16:09:04 8214999 8030891 HP 1 0 1 300 1222351683 25/09/2008 16:08:03 8214995 8030891 HP 1 0 1 300 1222351625 25/09/2008 16:07:05 8214991 8030891 HP 1 0 1 300
Execution du programme en mode DEBUG:
root@wrt54gl:~# ./teleinfoserial_mysql ----- 2008-10-12 15:59:52 ----- ADCO='70060936XXXX' OPTARIF='HC..' ISOUSC='20' HCHP='008444126' HCHC='008228815' PTEC='HP' IINST1='002' IINST2='000' IINST3='001' IMAX1='011' IMAX2='020' IMAX3='019' PMAX='07470' PAPP='00610' HHPHC='E' MOTDETAT='000000' PPOT='00' ADIR1= ADIR2= ADIR3=
Paramètres à adapter dans le source en fonction de ses besoins:
- Port série à modifier en conséquence avec SERIALPORT.
- Nombre de valeurs à relever: NB_VALEURS + tableaux "etiquettes" à modifier selon abonnement.
- Paramètres Mysql (Serveur, Base, table et login/password)
- Autorisé le serveur MySql à accepter les connexions distantes pour le Wrt54gl.
Ser2net
Il est possible d'utiliser le package ser2net sur le Wrt54gl pour rediriger le port série du WRT vers un port réseau.
Il suffira de lire les données avec un programme comme Teleinfosocket mysql.c tournant sur un Linux distant.
Configuration sur le Wrt54gl, fichier ser2net.conf (sur OpenWrt Kamikaze 8.09):
root@wrt54gl:~# grep ttyS0 /etc/ser2net.conf 2001:raw:10:/dev/ttyS0:1200 EVEN 1STOPBIT 7DATABITS LOCAL -RTSCTS
Message xPL
Programme C tournant sur le Wrt54gl pour envoyer les données téléinfo par message xPL.
Compilé avec le SDK de OpenWrt Kamikaze 8.09 mais doit fonctionner avec la WhiteRussian 0.9 en reprenant le Makefile de l'exemple
Voir source pour Wrt54gl: Teleinfosocket_xPL.c et le package complet pour SDK OpenWrt 8.09 Teleinfosocket_xPL.tgz.
- Messages xPL reçus avec xPL_Logger:
09/12/09 00:51:01 xpl-stat {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' OPTARIF='HC..' ISOUSC='20' HCHP='014304442' HCHC='013822589' PTEC='HP' IINST1='001' IINST2='000' IINST3='001' IMAX1='014' IMAX2='023' IMAX3='018' PMAX='07240' PAPP='00260' HHPHC='E' MOTDETAT='000000' PPOT='00' } 09/12/09 00:52:00 xpl-stat {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' OPTARIF='HC..' ISOUSC='20' HCHP='014304446' HCHC='013822589' PTEC='HP' IINST1='001' IINST2='000' IINST3='001' IMAX1='014' IMAX2='023' IMAX3='018' PMAX='07240' PAPP='00260' HHPHC='E' MOTDETAT='000000' PPOT='00' } 09/12/09 00:53:01 xpl-stat {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' OPTARIF='HC..' ISOUSC='20' HCHP='014304450' HCHC='013822589' PTEC='HP' IINST1='001' IINST2='000' IINST3='001' IMAX1='014' IMAX2='023' IMAX3='018' PMAX='07240' PAPP='00250' HHPHC='E' MOTDETAT='000000' PPOT='00' } 09/12/09 00:54:02 xpl-stat {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' OPTARIF='HC..' ISOUSC='20' HCHP='014304454' HCHC='013822589' PTEC='HP' IINST1='001' IINST2='000' IINST3='001' IMAX1='014' IMAX2='023' IMAX3='018' PMAX='07240' PAPP='00270' HHPHC='E' MOTDETAT='000000' PPOT='00' }
- Messages lors d'un dépassement de capacité ADIRn:
09/12/04 06:43:00 xpl-trig {domos-wrt54gl.teleinfo *} teleinfo.basic { ADIR2='022' ADCO='70060936xxxx' IINST1='000' IINST2='022' IINST3='006' } 09/12/04 06:43:01 xpl-trig {domos-wrt54gl.teleinfo *} teleinfo.basic { ADIR2='022' ADCO='70060936xxxx' IINST1='000' IINST2='019' IINST3='006' } 09/12/04 06:43:01 xpl-trig {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' IINST1='000' IINST2='019' IINST3='006' } 09/12/04 06:43:02 xpl-trig {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' IINST1='000' IINST2='019' IINST3='006' } 09/12/04 06:43:03 xpl-trig {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' IINST1='000' IINST2='019' IINST3='006' } 09/12/04 06:43:03 xpl-trig {domos-wrt54gl.teleinfo *} teleinfo.basic { ADCO='70060936xxxx' IINST1='000' IINST2='016' IINST3='006' }
- Affichage sur LCD (lcdproc) de données téléinfo.
Avec un script Perl personnel (xpl-lcdteleinfo.pl) basé sur la libxpl-perl.
Export donnee Teleinfo sur base MySql externe d'un FAI
Le fichier CSV généré par le programme teleinfoserial_csv.c pourra être exporté sur une base MySql de FAI (free.fr en l'occurence).
Voici un exemple de script: Export_donnee_Teleinfo_sur_base_FAI.php
Wrt54gl en situation Teleinfo/1-wire
Vue du Wrt54gl connecté à l'interface 1-wire et téléinfo:
Résultats sous forme graphique
Scripts PHP
Les données Téléinfo. sont lus par le script PHP dans la base MySql.
La librairie JpGraph permet de généré facilement un graphe en fonction de ces données.
(Dernière version des scripts PHP: 19/02/2009)
Consommation sur 24h. En vert apparait la consommation en période "heures creuse".
Intensité sur 24h des 3 phases (abonnement tri-phasé), décalées sur le graphes de 10A pour la lisibilité.
Consommation sur une période de 8 jours.
Scripts RRDTool
Exemples de scripts Shell pour générer des graphiques Téléinfo. avec RRDTool.
Pour le Wrt54gl, les packages rrdtool / rrdcgi sont disponibles. Il sont utilisé par temploggerd et owfs (Bus 1-wire sur Linksys Wrt54gl). A tester ...
Ci-dessous, graphes obtenus avec RRDTool sur PC.
Les scripts rrdtool n'ont pas évolué depuis car les données Téléinfo. étant stockés dans une base MySql cela faisait double emploi avec une base RRD en plus qui reste moins souple à utiliser.
12 Mai 2007