Téléinfo EDF avec émulateur 433MHz ou pince ampèremétrique ?

Bonsoir à tous,

Je vais bientôt déménager. Actuellement, mon compteur EDF est à l'intérieur du logement, et mon Raspberry domotique (Jeedom) est situé juste à côté. C'est la meilleure configuration possible, il me suffit d'utiliser le modem de chez GCE Electronics pour faire remonter les trames du compteur vers le raspi via USB.

Cependant, le compteur de mon futur logement se situe dans les armoires techniques dans le couloir.

Comme si cela ne suffisait pas, ce n'est pas EDF qui gère ma ville mais une régie. Je les ai contacté, ils ne veulent rien entendre au sujet du tirage d'un câble de téléinformation dans la gaine alimentant le logement.

Ayant un chauffe-eau et 3 radiateurs électriques, je tiens à pouvoir suivre ma consommation.

J'ai donc 2 solutions :

  • Mettre un Arduino sur batterie dans l'armoire du palier, lequel décode les trames du compteur et les transmet via 433MHz (j'ai un RF-Link).
  • Utiliser une pince ampèremétrique avec un Arduino placée sur la phase dans le tableau électrique.

Pour la solution déportée :

  • Avantages :
  • Mesure précise (compteur EDF)
  • Variété d'informations (Index, puissance apparente, consommation journalière, etc)
  • Désavantages :
  • Autonomie réduite, nécessité d'ouvrir l'armoire régulièrement pour charger les batteries
  • Sécurité du matériel (armoire accessible par tout les habitants de la résidence, les tech élec, fibre, etc)

Pour la solution indépendante du compteur :

  • Avantages :
  • Tout le matériel se situe dans le logement
  • Autonomie infinie (secteur)
  • Désavantages :
  • Mesure imprécise (même avec une calibration minutieuse, j'obtiens parfois plus de 500 Watts de différence par rapport à la mesure du compteur EDF)
  • Mesure de la consommation instantanée uniquement. Il faut ensuite calculer la consommation journalière etc. pour ensuite en déduite le coût.

Qu'en pensez-vous ? Toute suggestion est la bienvenue :slight_smile:

Merci par avance
Cordialement,
Waryard

j’obtiens parfois plus de 500 Watts de différence par rapport à la mesure du compteur EDF

Etonnant, à moins que tu parles de 500WH sur une période donnée.

  • Autonomie réduite, nécessité d’ouvrir l’armoire régulièrement pour charger les batteries

Étant donné que la collecte des données est permanente, il semble impossible d’endormir le microcontrôleur pour consommer moins, à moins de se contenter d’une mesure toutes les X secondes.

Autre solution : si le compteur est un Linky, il y a une sortie 6V alternatifs (130mW maxi).
En utilisant une PRO MINI et un module 433MHz ou un NRF24L01 ça peut passer.

Autre solution : installer un sous-compteur avec sortie téléinfo sur le tableau électrique (une centaine d'€).

hbachetti:
...
Autre solution : si le compteur est un Linky, il y a une sortie 6V alternatifs (130mW maxi).
En utilisant une PRO MINI et un module 433MHz ou un NRF24L01 ça peut passer.

Bonjour Henri
8) 8)

Moi j'avais lu sur une doc ENEDIS, qu'il s'agissait de MW et pas de mW et que c’était une puissance disponible mini ;D

A cette coquille prés sur la doc , je m’étais déjà posé la question de s'en servir comme source de charge de batterie tampon pour des système de transmission à faible taux de recurence , je pense par exemple à de l'esp32+SX1276 en mode lora .
C'est surtout le temps qui manque pour bien expérimenter

hbachetti:
Etonnant, à moins que tu parles de 500WH sur une période donnée.

Étant donné que la collecte des données est permanente, il semble impossible d'endormir le microcontrôleur pour consommer moins, à moins de se contenter d'une mesure toutes les X secondes.

Autre solution : si le compteur est un Linky, il y a une sortie 6V alternatifs (130mW maxi).
En utilisant une PRO MINI et un module 433MHz ou un NRF24L01 ça peut passer.

Merci pour ta réponse.

La différence est bien de 500 Watts.
Actuellement, avec 220 W affiché sur le compteur, la pince mesure 325 W.
Avec 2200 W sur le compteur, la pince est à 1600 W.
Courant coupé, la pince mesure 3W.
J'ai 2 résistances de 10K pour ramener la tension à 2.5V, un condo de 10µF et une résistance de 33Ω (en pratique 3 résistances de 100Ω en parallèle) nécessaire pour le SCT-013-000 (ampérage et non tension en sortie)

En effet, vu que le montage semble énergivore, j'avais pensé à collecter et transmettre les trames toutes les 10sec environ (de toute façon le compteur met plusieurs secondes à afficher une variation brusque de la consommation, et il calcule l'index indépendamment du système de transmission donc la courbe sera moins lisse mais parfaitement exacte. Lors d'une coupure du système (pour charge par exemple) les informations ne seront plus remontées mais une fois le système à nouveau opérationnel, le bon index est remonté. Alors que le courant consommé pendant une défaillance du système avec la pince restera inconnu.)

La solution du sous-compteur est à mon sens trop onéreuse et nécessite la modification du tableau alors que je ne serais pas le propriétaire des lieux.

Ca serait génial que le compteur soit un Linky (ce qui m'offrirait en plus un relevé fiable sur internet en cas de défaillance de mon système) mais il y a de fortes chances que ce soit un électronique avec pastille Euridis de téléreport, malheureusement. Je confirmerai ou infirmerai cela bientôt.

Waryard:
Merci pour ta réponse.

La différence est bien de 500 Watts.
Actuellement, avec 220 W affiché sur le compteur, la pince mesure 325 W.
Avec 2200 W sur le compteur, la pince est à 1600 W.
Courant coupé, la pince mesure 3W.

c'est quoi ta "pince" exactement ?

Artouste:
c'est quoi ta "pince" exactement ?

La référence de ma pince est présente dans la phrase juste en dessous de ta citation dans mon post (SCT-013-000)

Artouste:
Bonjour Henri
8) 8)

Moi j'avais lu sur une doc ENEDIS, qu'il s'agissait de MW et pas de mW et que c’était une puissance disponible mini ;D

On rigole pas chez ENEDIS

Actuellement, avec 220 W affiché sur le compteur, la pince mesure 325 W.
Avec 2200 W sur le compteur, la pince est à 1600 W.
Courant coupé, la pince mesure 3W.

Il me semble étonnant qu'une pince donne un résultat aussi peu précis, et aussi peu linéaire.
Il faut peut-être incriminer ton montage, ou le code.

hbachetti:
Il me semble étonnant qu'une pince donne un résultat aussi peu précis, et aussi peu linéaire.
Il faut peut-être incriminer ton montage, ou le code.

Pour le montage, j'ai réalisé celui-ci à la lettre :


J'ai peut-être placé le condo à l'envers ; il me paraissait logique de mettre le - du condo sur la masse de l'Arduino (cf. photo de mon montage ci-dessous)

Pour le code, j'ai repris celui de OpenEnergyMonitor, lequel est disponible ici : EmonLib/current_only.ino at master · openenergymonitor/EmonLib · GitHub
J'ai modifié par tâtonnement la calibration (par défaut c'était 2600W pour 400W réels environ)
J'ai également multiplié l'intensité instantanée par la tension dans mon logement (217V, je ne suis pourtant pas très loin du HTA/BT, je le vois de ma fenêtre) afin d'obtenir la puissance apparente.

Tu as suivi ces recommandations ?

https://learn.openenergymonitor.org/electricity-monitoring/ct-sensors/interface-with-arduino?redirected=true

hbachetti:
Tu as suivi ces recommandations ?

Learn | OpenEnergyMonitor

Oui, c'est notamment ce qui m'a fait choisir une valeur de 33ohm pour la résistance. Force est de constater que quelque chose cloche quand même. Je vais essayer un autre code (la documentation d'OpenEnergyMonitor concernant la calibration est un peu ardue)

Bon ,j’ai du nouveau.

=> J’ai essayé un montage équivalent avec un NodeMCU via la pin A0, même résultat avec à mon sens une erreur moins importante qu’avec l’Arduino Nano (plutôt 300 W de différence avec 2000W de consommation)

=> J’ai essayé avec un NodeMCU et un ADS1115.
Le pont et le condo étant remplacés par la gestion du gain dans le code.
La pince est directement connectée aux pins A0 et A1 de l’ADC.
J’ai testé avec une résistance (burden) de 330 ohm et 33 ohm.
J’obtiens les valeurs suivantes (210W sur le compteur EDF) :

45.98 A   PA=10344.98 W
Send data to Jeedom
connecting to 192.168.42.1
closing connection
54.57 A   PA=12278.76 W
Send data to Jeedom
connecting to 192.168.42.1
closing connection
21.43 A   PA=4820.81 W
Send data to Jeedom
connecting to 192.168.42.1
closing connection
67.72 A   PA=15235.95 W
Send data to Jeedom
connecting to 192.168.42.1
closing connection

Voici le bout de code en charge de la mesure :

double squareRoot(double fg)  
{
  double n = fg / 2.0;
  double lstX = 0.0;
  while (n != lstX)
  {
    lstX = n;
    n = (n + fg / n) / 2.0;
  }
  return n;
}

double calcIrms(unsigned int Number_of_Samples)
{
  /* Be sure to update this value based on the IC and the gain settings! */
  float multiplier = 0.125F;    /* ADS1115 @ +/- 4.096V gain (16-bit results) */
  for (unsigned int n = 0; n < Number_of_Samples; n++)
  {
    sampleI = ads.readADC_Differential_0_1();

    // Digital low pass filter extracts the 2.5 V or 1.65 V dc offset, 
  //  then subtract this - signal is now centered on 0 counts.
    offsetI = (offsetI + (sampleI-offsetI)/1024);
    filteredI = sampleI - offsetI;
    //filteredI = sampleI * multiplier;

    // Root-mean-square method current
    // 1) square current values
    sqI = filteredI * filteredI;
    // 2) sum 
    sumI += sqI;
  }
  
  Irms = squareRoot(sumI / Number_of_Samples)*multiplier; 

  //Reset accumulators
  sumI = 0;
//--------------------------------------------------------------------------------------       
 
  return Irms;
}

L’intensité instantanée provient directement de cette fonction.
Pour obtenir une approximation de la puissance instantanée, je multiplie l’intensité instantanée par 225.

Personne n'a jamais manipulé d'ADS1115 ou c'est par pur plaisir de laisser un projet s'embourber ?

Si, je connais bien l'ADS1115.
Tout dépend du câblage.

hbachetti:
Si, je connais bien l'ADS1115.
Tout dépend du câblage.

Comme dit dans un de mes précédents posts, la pince est directement connectée aux pins A0 et A1.

Il y a juste une résistance entre ces deux pins (le SCT-013-000 n'ayant pas de résistance intégrée).

J'ai essayé 33 ohm et 330 ohm.

Normalement, avec une mesure différentielle il est possible de mesurer des tensions négatives.

Je procéderais par élimination :

  • soit la pince raconte n'importe quoi
  • soit le logiciel est en cause

Aurais-tu la possibilité de mesurer une tension connue, par exemple celle d'un petit transformateur ?
Attention de ne pas dépasser VCC sur les entrées de l'ADC. Mettre un pont diviseur si nécessaire.

Tu pourras ainsi valider la partie logicielle, ou la mettre au point si bug il y a.
Attention également de ne pas perdre de temps entre deux mesures ADS115.
C'est de l'I2C, donc pas rapide. Bascule éventuellement sur 400KHz.

Wire.setClock(400000);

hbachetti:
Normalement, avec une mesure différentielle il est possible de mesurer des tensions négatives.

Je procéderais par élimination :

  • soit la pince raconte n'importe quoi
  • soit le logiciel est en cause

Aurais-tu la possibilité de mesurer une tension connue, par exemple celle d'un petit transformateur ?
Attention de ne pas dépasser VCC sur les entrées de l'ADC. Mettre un pont diviseur si nécessaire.

Tu pourras ainsi valider la partie logicielle, ou la mettre au point si bug il y a.
Attention également de ne pas perdre de temps entre deux mesures ADS115.
C'est de l'I2C, donc pas rapide. Bascule éventuellement sur 400KHz.

Wire.setClock(400000);

bonjour
Je ne comprend pas bien l’intérêt/choix d'utiliser ici un ampli d’instrumentation différentiel comme l' ADS115 pour acquérir de la tension alternative issue d'une "pince amperemetrique" (transfo ) ?
l'ADS115 est donné pour un taux d'echantillonage "gerable" entre 8 et 860 SPS
Je n'ai pas vu de gestion de ce taux d'echantillonage , ni d'integration de(s) la valeur lue = "on" tape donc au petit bonheur la chance n'importe où sans synchro dans la sinusoïde à 50 Hz
J'ai loupé un truc ? 8)

Je pense que Waryard veut juste faire un essai avec un ADS1115. Ce n’est certainement pas une solution définitive.
Il vaudra mieux utiliser l’ADC de l’ARDUINO qui offre plus de 8900SPS, et même 38000 avec une petit effort.
Je pense que le code doit être en cause.
La pince je n’y crois pas trop …

hbachetti:
Je pense que Waryard veut juste faire un essai avec un ADS1115. Ce n'est certainement pas une solution définitive.
Il vaudra mieux utiliser l'ADC de l'ARDUINO qui offre plus de 8900SPS, et même 38000 avec une petit effort.
Je pense que le code doit être en cause.
La pince je n'y crois pas trop ...

Il n' y a aucune chance de sortir une info utile ici de l'ads115 en connectant la pince en differentiel (A0 A1)
en revanche en l'utilisant en single ended et en faisant une gestion simple du signal crete max , çà devrait permettre de descendre sur de la conso "basse" (effet de seuil)
çà se teste 8)