Téléinfo radio

les autres capteurs : Sondes Météo, switches
snips
Messages : 272
Enregistré le : 18 mars 2015, 22:37

Re: Téléinfo radio

Message par snips » 25 mars 2015, 23:23

Hello pguillot,

1) il est possible d'utiliser la librairie LOWPOWER, mais il faut insérer obligatoirement, par exemple la ligne de code
LowPower.powerDown() à l'intérieur du bloc "mySerial->end(); ..... mySerial->begin(1200);" dans le programme à télécharger ci-dessus, si non cela ne marchera pas.

exemple pour mettre en sommeil 16 sec en économisant la batterie.
mySerial->end();
sendOregon(OregonMessageBuffer, sizeof(OregonMessageBuffer));
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);

mySerial->begin(1200);

2) chez moi j'ai une version "économie d'énergie" de mon programme ci-dessus où en plus de LowPower, j'alimente - à la place du 5V - l'optocoupleur et la led via un "digital pin", et l'emetteur 433 mhz via un autre "digital pin", que je mets à high pour la capture d'une trame téléinfo (respectivement émission d"une trame OWL 180 via l'émetteur) et que "j'éteins" après.
Ca permet de rallonger un peu l'autonomie (chez moi j'alimente l'arduino uno directement en 5V sans passer par l'USB ou Vin à l'aide de 4 piles rechargeables de 1,3 V.... ca tient entre 4 jours à plus d'une semaine suivant les piles).

3) l'autonomie dépend surtout du type de carte arduino que vous avez, car hélas, les régulateurs linéaire de tension sur les arduino uno, nano sont très très énergivores : exemple : en mettant en veille totalement une arduino uno qui ne fait rien.... elle consomme encore 34,4 ma !! (au lieu de 46,5 ma) en l'alimentant via le port USB.... donc vous voyez la limite
de ce que vous pouvez gagner avec lowpower et arduino UNO ou nano. (20 à 30% maxi).
http://gadgetmakersblog.com/arduino-power-consumption/

4) Le mieux c'est d'utiliser une arduino mini en coupant/désactivant le régulateur de tension comme ci-dessous :
http://www.instructables.com/id/Arduino ... -and-code/
prendre la version 5V et non 3,3V car 3,3V c'est un peu faible pour l'emetteur 433 mhz.
J'ai une arduino mini, il faut que je m'y mette !

5) pour aller plus loin
https://github.com/petervojtek/diy/wiki ... onsumption

article de référence pour moi : http://www.gammon.com.au/forum/?id=11497

Conclusion : si vous ne voulez pas "vous prendre la tête", alimenter votre carte arduino à partir du 220v et un adapteur USB !! si vous le pouvez !

P.S. pour ceux qui montent la carte téléinfo et qui ont du mal à trouver l'optocoupleur vishay ou qui veulent faire du low cost : on peut utiliser des optocoupleurs EL817C- PC817, il suffit d'en mettre 2 "en tête bêche"

On peut en avoir 10 (pour seulement 2 utilisés pour téléinfo) pour moins de ...1,5 dollars frais de port compris si vous avez la patience d'attendre 3 semaines.
exemple http://www.ebay.com/itm/10PCS-EL817C-PC ... 3cc4b2a3be
Modifié en dernier par snips le 08 mai 2015, 12:50, modifié 1 fois.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


sirus
Messages : 100
Enregistré le : 05 mai 2015, 18:09
Contact :

Re: Téléinfo radio

Message par sirus » 05 mai 2015, 18:13

deennoo a écrit :Cela fonctionne c'est bon ! pour un compteur Hc/Hp

Il faut telecharger ce script :

http://connectingstuff.net/dw/my_telein ... _clean.ino


Un super merci a Snips !

Bonjour Deenoo et les autres, et merci pour ce lien,

sauf erreur de ma part, avec un compteur hp/hc cela est vue par domoticz comme deux capteurs (devices) différents chez moi.
C'est pareil pour toi ?
Modifié en dernier par sirus le 07 mai 2015, 07:19, modifié 1 fois.
Raspberry B+ & PI2 / Domoticz / RFXtrx433E / multiple homemade devices
My blog/tutos for domoticz / electronics stuff : domotique.web2diz.net

deennoo
Messages : 4003
Enregistré le : 25 janv. 2015, 02:00

Re: Téléinfo radio

Message par deennoo » 05 mai 2015, 19:14

Oui, il serait intéressant de pouvoir regrouper les deux, je pense que cela doit ce faire dans l intégration de domoticz par un développement de gizmo...
De quoi se faire Plaisir et essayer d'aider...
http://www.domo-attitude.fr

sirus
Messages : 100
Enregistré le : 05 mai 2015, 18:09
Contact :

Re: Téléinfo radio

Message par sirus » 05 mai 2015, 19:21

à ce stade je ne vois que ça car j'ai regarder auss avec la libarie x10rf ( https://github.com/pyrou/x10rf/blob/master/x10rf.cpp )
qui simule un RFXmeter ca fonctionne également très bien mais toujours avec deux compteurs séparés...

Si quelqu'un a une autre idée...
j’aimerais pouvoir simuler un compteur de type "MultiMeter" ce qui c'est le cas pour le "P1 Smart Meter" qui fonctionne mais en filaire...
Modifié en dernier par sirus le 07 mai 2015, 07:20, modifié 1 fois.
Raspberry B+ & PI2 / Domoticz / RFXtrx433E / multiple homemade devices
My blog/tutos for domoticz / electronics stuff : domotique.web2diz.net

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


snips
Messages : 272
Enregistré le : 18 mars 2015, 22:37

Re: Téléinfo radio

Message par snips » 05 mai 2015, 23:22

Sirus,
si le programme, pour un compteur HC/HP, génère un compteur OWL qui retourne l'information PAPP (puissante apparente) et un index total compteur qui serait l'addition de l'index HC et de l'index HP, est-ce que cela répond à votre besoin ?
Domoticz verra donc un compteur qui retourne :
>PAPP
>HC+HP

sirus
Messages : 100
Enregistré le : 05 mai 2015, 18:09
Contact :

Re: Téléinfo radio

Message par sirus » 05 mai 2015, 23:42

Bonjour snips,

Je vais faire mon difficile mais j'airai bien aimé quelque chose avec deux courbes distinctes comme sur le mode filaire classique teleinfo. Cala permet d'avoir la consomation totale par jour / et mois distincte pour HP et HC:
edf.jpg
edf.jpg (44.74 Kio) Vu 7792 fois
Ça correspond à un compteur de type "multimeter" .

En scriptant je pense qu'il est possible de lire les données des deux compteurs "meter" HP et HC pour alimenter un compteur "multimeter" :

Code : Tout sélectionner

Electric P1 Smart Meter

/json.htm?type=command&param=udevice&idx=IDX&nvalue=0&svalue=USAGE1;USAGE2;RETURN1;RETURN2;CONS;PROD
IDX = id of your device (This number can be found in the devices tab in the column "Idx")
USAGE1= energy usage meter tariff 1
USAGE2= energy usage meter tariff 2
RETURN1= energy return meter tariff 1
RETURN2= energy return meter tariff 2
CONS= actual usage power [Watt]
PROD= actual return power [Watt]
Mais ce serais encore mieux si on pouvait envoyer directement l'info via RFXCOm et que domoticz stoque les données comme pour un compteur Electric P1 Smart Meter :
date.jpg
date.jpg (40.61 Kio) Vu 7792 fois
avec Val1 et Val5 = compteur HC et Hp
et val 3 = PAPP
Modifié en dernier par sirus le 07 mai 2015, 07:21, modifié 1 fois.
Raspberry B+ & PI2 / Domoticz / RFXtrx433E / multiple homemade devices
My blog/tutos for domoticz / electronics stuff : domotique.web2diz.net

snips
Messages : 272
Enregistré le : 18 mars 2015, 22:37

Re: Téléinfo radio

Message par snips » 06 mai 2015, 00:06

Ok, compris.
Le plus simple cela doit être effectivement d'attaquer par json.

snips
Messages : 272
Enregistré le : 18 mars 2015, 22:37

Re: Téléinfo radio

Message par snips » 08 mai 2015, 12:17

Bonjour,
2 scripts LUA à tester pour mettre à jour un compteur virtuel P1 smart Meter avec les données des 2 compteurs OWL heure pleine / heure creuse correspondant au téléinfo-arduino.
Capturelog.JPG
Capturelog.JPG (30.69 Kio) Vu 7767 fois
Soyez indulgent, c'est mon premier programme LUA ! donc bugs possibles (j'ai donc mis des "print" partout que vous pouvez supprimer bien sur).

La procédure :
1) dans l'onglet "setup" de domoticz, cliquer sur "Hardware" puis sur la case bleue "Create Virtual Sensors" (sur la ligne Dummy (Does nothing, use for virtual switches only)....).
Choisir ensuite P1 Smart Meter dans le menu déroulant et faire OK pour créer un compteur d'énergie virtuel
AjoutP1.JPG
ajout compteur P1 smart metter virtuel
AjoutP1.JPG (21.37 Kio) Vu 7767 fois
2) dans l'onglet "setup" de domoticz, cliquer sur "Devices" puis "Not used" vous devez voir un compteur "P1 Smart Meter", récupérer son "Idx" (ne pas confondre avec "ID")

3) Copier les 2 morceaux de code ci-dessous pour créer 2 scripts LUA. Dans ces scripts il faut remplacer les noms des 2 compteurs OWL 180 'Heure Pleine' et 'Heure Creuse' ainsi nommés chez moi par les 2 noms que vous avez choisis quand vous avez implémenté mon programme ino/arduino téléinfo radio.

'Heure Pleine' >>>> 'votre nom de compteur heure pleine'
'Heure Creuse' >>>> 'votre nom de compteur heure creuse'
"301" >>>> "votre Idx de votre P1 Smart Meter"
respecter les ' et "

--------------------------------------------------------------------------------------------------
Premier script ci-dessous à enregistrer sous Domoticz\scripts\lua\script_device_HeurePleineLog.lua
--------------------------------------------------------------------------------------------------

Code : Tout sélectionner


commandArray = {}

if devicechanged['Heure Pleine'] then
   
   owl = otherdevices_svalues['Heure Creuse']
   print('Heure Creuse : '..owl)
   PAPP,HC=owl:match("([^;]+);([^;]+)")
   print('PAPP : '..PAPP)
   print('HC : '..HC)

   owl = otherdevices_svalues['Heure Pleine']
   print('Heure Pleine : '..owl)
   PAPP,HP=owl:match("([^;]+);([^;]+)")
   print('PAPP : '..PAPP)
   print('HP : '..HP)

      
   commandArray[1] = {['UpdateDevice'] = "301" .. "|0|" .. tonumber(HP) .. ";" .. tonumber(HC) .. ";" .. "0" .. ";" .. "0" .. ";" .. tonumber(PAPP) .. ";" .. "0"}
   
   print('Compteur HPHC : '..otherdevices_svalues['Compteur HPHC']) 
end
return commandArray
-------------------------------------------------------------
Deuxième script ci-dessous à enregistrer sous Domoticz\scripts\lua\script_device_HeureCreuseLog.lua
--------------------------------------------------------------

Code : Tout sélectionner

commandArray = {}

if devicechanged['Heure Creuse'] then
   
   owl = otherdevices_svalues['Heure Pleine']
   print('Heure Pleine : '..owl)
   PAPP,HP=owl:match("([^;]+);([^;]+)")
   print('PAPP : '..PAPP)
   print('HP : '..HP)

   owl = otherdevices_svalues['Heure Creuse']
   print('Heure Creuse : '..owl)
   PAPP,HC=owl:match("([^;]+);([^;]+)")
   print('PAPP : '..PAPP)
   print('HC : '..HC)
      
   commandArray[1] = {['UpdateDevice'] = "301" .. "|0|" .. tonumber(HP) .. ";" .. tonumber(HC) .. ";" .. "0" .. ";" .. "0" .. ";" .. tonumber(PAPP) .. ";" .. "0"}
   
   print('Compteur HPHC : '..otherdevices_svalues['Compteur HPHC']) 
end
return commandArray
-------------------------------------
Vous pouvez vérifier le bon fonctionnement en regardant le log dans "Setup" / "Log" ou en regardant le compteur P1 smart Meter (qui doit répliquer la puissance apparente du compteur actif et totaliser les 2 index).
les 3 compteurs HC-HP-P1smartmeter.JPG
les 3 compteurs HC-HP-P1smartmeter.JPG (39.9 Kio) Vu 7767 fois
P.S. sur le graphique "WEEK" il y a un énorme pic qui correspond au total des 2 index des 2 compteurs HC et HP le premier jour où le P1 smart meter est mis en place, c'est normal, domoticz calcule une différence d'index pour établir la consommation, donc la première fois tout le compteur passe ! mais au bout d'une semaine cela "va se normaliser".

sirus
Messages : 100
Enregistré le : 05 mai 2015, 18:09
Contact :

Re: Téléinfo radio

Message par sirus » 10 mai 2015, 17:16

Oui c'est un peu à ce que je pensais...

je teste des que possible...

Je constate que l'utilisation cpu est plus élevé et que le rfxcom est bien occupé à cause du trafic...

à suivre
Raspberry B+ & PI2 / Domoticz / RFXtrx433E / multiple homemade devices
My blog/tutos for domoticz / electronics stuff : domotique.web2diz.net

snips
Messages : 272
Enregistré le : 18 mars 2015, 22:37

Re: Téléinfo radio

Message par snips » 10 mai 2015, 18:56

Sirus, je suis à 0,51% de CPU utilisé avec un PI 2.

Je suggère de virer toutes les lignes de print dans les 2 scripts LUA après test pour gagner un peu de CPU pour ceux qui sont en "PI 1" avec beaucoup de devices...

bon test !

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Répondre