› Forums › Modem Téléinfo (USB, XBEE…) › Sheild Téléinfo 2 compteurs Arduino
- Ce sujet contient 25 réponses, 3 participants et a été mis à jour pour la dernière fois par
cdlog2, le il y a 5 années et 11 mois.
- Post
-
Bonjour à tous,
Mon installation arduino + shield teleinfo 2 compteurs ne fonctionne pas.
Les 2 compteurs, production et consommation, sont des sous compteurs j’ai donc accès à la programmation et la teleinfo est validée.
La shield vient de chez Cartelectronic et je suis le descriptif d’installation du site.
La compil et le téléversement du Teleinfo_Arduino_V0_3E se font correctement sans défaut, la led bleue et verte cpt 1 ( led cpt 2 reste éteinte) clignotent brièvement et puis plus rein.
Aurais-je oublié quelque chose?
Merci pour votre aide par avance.
00
- Replies
-
-
Bonjour,
Quitte à dire une bêtise, alors Nicolas me corrigera !
Une hypothèse d’école, Vos deux sous compteurs sont certainement derrière un compteur EDF type Enedis ?
et vous êtes certainement en mode téléinfo « historique » avec le Enedis.Hors vos 2 compteurs (peut être de modèles ancien EDF) ne comprennent peut être pas ces trames en « historique » car ils fonctionnent eux en mode de trame téléinfo « Standard » Ce n’est qu’une hypothèse bien sûr ! Si c’est le cas il faut faire changer le mode de la téléinfo du ENEDIS en mode Standard
Brancher une voie du shield Arduino directement sur la téléinfo du Compteur primaire pour essais, vous verrais si le shield Arduino fonctionne ou pas.
Cdt
00 -
Merci pour votre réponse super rapide.
Effectivement, j’aurais peut être du le préciser, mon compteur primaire ( enedis plombé) est un compteur mécanique.
Un sous compteur est juste après mon onduleur photovoltaïque (prod) et l’autre sous compteur ( conso ) est à la suite de mon disjoncteur principal. Ce sont des Itron A14C5, donc de conception récente.
Je ne peux pas vérifier le shield sur le compteur primaire.
La trame teleinfo n’est pas générée par le compteur lui-même?
Le compteur mécanique pourrais être la cause du problème?
Cdt
00 -
Avez vous configuré la date et l’heure ?
Quel abonnement avez vous activé sur les compteurs ?
00 -
Bonjour,
Avant tout je rectifie mes propos.
La télé-information client peut fonctionner selon 2 modes différents :
– historique : dans ce mode, le compteur Linky permet de restituer des trames d’information équivalentes à celles des anciens
compteurs électroniques résidentiels, toutefois, pour obtenir les informations optimales dans ce mode d’information, la configuration tarifaire du compteur doit être réalisée dans la même logique des contrats historiques-standard: ce nouveau mode, est apparu avec les compteurs Linky. Il est plus rapide que le mode historique, et comporte des
informations différentes, avec un formatage spécifique.Mais à priori vous n’êtes pas concernée
Je n’ai pas ce Shield Arduino donc je ne peux pas donner mon expérience, mais à la lecture du fichier INO à la ligne 219 je lis:
Serial.println(F(« Reglage heure OK – installer le cavalier pour la teleinfo »)
Avez vous installé ce cavalier sur le Shied après la mise à l’heure comme spécifié ?
Comment avez vous compilé le fichier INO, utilisez vous le ARDUINO IDE ?
Dans ce cas vous devriez pouvoir voir les message USB via le Moniteur Série du menu Outil de l’Appli.Afin de visualiser toute les trame lues dans le Moniteur de l’IDE, dé-commenter provisoirement le
//#define echo_USB
qui se trouve au début du INO : (enlever les deux // en début de ligne )Vous verrez déjà si le Shield reçois des infos de vos Compteurs.
Pour la suite je ne vois pas si ce n’est que de debugger le programme.Nicolas pourra peut être donner d’autres éléments.
Cdt00 -
paramétrer le Moniteur série de l’IDE en 1200 bauds.
00 -
Bien sur si vous faites la modif dans le fichier INO, il faut recompiler et faire à nouveau le téléversement !
Remettre le #define echo_USB en commentaire ( //#define echo_USB) après vos tests et recompiler + téléversement.
00 -
J’utilise Termite pour rentrer l’heure mais je ne sais pas comment contrôler si c’est ok ou pas! (je suis un débutant)
Le compteur prod est sur Base et le conso sur HC.
J’utilise Arduino IDE pour compiler et téléverser, j’enlève le cavalier avant de téléverser ensuite je le remet.
Le Moniteur série quelque soit la vitesse ne m’envoie que des caractères incompréhensibles.
« Afin de visualiser toute les trame lues dans le Moniteur de l’IDE, dé-commenter provisoirement le
//#define echo_USB »Je vais essayer la manip.
Merci pour votre aide.
00 -
Vous êtes bien branché sur les bornes I1 et I2 du compteur ? (pas T1 et T2 car c’est le téléreport)
00 -
Oui je suis sur la borne en bas à droite I1 et I2.
Voila se que j’ai sur le Moniteur serie en 1200bauds:
20:07:19.711 -> –⸮⸮elei⸮fo⸮USB⸮Ar⸮⸮i⸮o⸮V0.3e⸮–⸮
20:07:19.991 -> ⸮⸮⸮icroSD⸮i⸮iti⸮li⸮ee⸮!⸮
20:07:19.991 -> ⸮⸮à⸮o⸮co⸮fi⸮⸮re⸮!⸮
20:07:20.272 -> ⸮65⸮⸮65⸮⸮⸮65⸮⸮65:⸮65⸮
20:07:20.459 -> ⸮⸮trer⸮He⸮re:⸮00 -
Vous avez pas réglé correctement la vitesse du port com de votre PC: 1200 bauds 7 bits, parité pair
00 -
Bonsoir,
Le Temrminal de L’IDE ne permet pas de modifier facilement toutes les infos du Port.
Si vous travaillez sous Windows je vous propose d’utiliser un autre émulateur Serie qui s’appelle Terminal.
Télécharger le fichier termv19b.zip que je joints en pièces jointes si cela veut bien passer ?
Décompresser le fichier ZIP dans dossier de votre PC. Un autre dossier termv19b sera crée.
A l’intérieur vous aurez un exécutable qui s’appelle Terminal.exe. (pas de virus)Ce petit logiciel est un puissant émulateur Série RS232, vous pourrez paramétrer ce logiciel afin de lire les messages de votre Arduino
avec les bonnes infos utilisés :Fermer en premier lieu le Terminal de l’IDE Arduino s’il est ouvert. Par contre vous pouvez rester dans l’IDE Arduino avec votre téléinfo.Ino ouvert.
Lancer terminal.exe et ensuite cocher ces options :
– Baud rate = 1200
– Data bits = 7
– Parity = even
– Stop bit = 1Sélectionner dans « Com Port » le n° du Port ouvert par votre Arduino.
Puis cliquer sur Connect. (en haut)Faites ensuite un Reset de votre Arduino (qui possède le Shied) via le Bouton rouge Reset en face avant de la carte .
Si tout va bien vous allez voir les infos correctement rendues dans « Terminl » par le programme de la téléinfos.
Par contre si vous devez recompiler le programme avec l’IDE, fermez au préalable le logiciel Terminal car le Port serait déjà Occupé.
Cdt
Attachments:
You must be logged in to view attached files.00 -
Bonjour,
J’ai installé Terminal.
Après appui sur bouton rouge:
Entrer Heure: — Teleinfo USB Arduino V0.3e —
> microSD initialisee !
RTC non configure !
01/01/2000,00:00
Entrer Heure:Je n’arrive pas à lui rentrer l’heure.
J’ai enlevé la pile et le cavalier, j’envoie (exemple) 23/10/2019,08:57 .
Comment je fais pour savoir si la date et l’heure sont bien passés.
00 -
Pour rentrer la date et l’heure il semble qu’il faille envoyer juste le nombre + CR correspondant et uniquement au champs qui sera demandé entre chaque saisie.
Vous pouvez envoyer les caractères via le logiciel Terminal en tapant vos caractères dans le champs TOUT EN BAS du logiciel,
COCHER bien l’option CR à droite du champs,Entrer uniquement le nombre qui vous sera réclamé sur 2 chiffres ( jour ou mois ou année ou heure ou minute) SANS Return clavier
Puis vous cliquer sur SEND en bout du champ pour envoyer le nombre à l’arduino
Exemple :
On vous demande :>> « Entrer Heure: » << Taper ex: 11 pour 11 heure > Option CR doit être coché >> SEND
>> « Entrer Minute: » << Taper ex: 01 pour 1 minute > Option CR doit être coché >> SEND
>> « Entrer Seconde: » << Taper ex: 02 pour 2 secondes > Option CR doit être coché >> SEND
>> « Entrer Jour: » << Taper ex: 23 pour le jour > Option CR doit être coché >> SEND
>> « Entrer Mois: » << Taper ex: 10 pour le mois > Option CR doit être coché >> SEND
>> « Entrer Annee 20xx: » << Taper ex: 2019 pour l’année > Option CR doit être coché >> SEND
Si l’heure est bien comprise on vous répondra par » Reglage heure OK – installer le cavalier pour la teleinfo »Faites un reset du Arduino. Au setup vous allez lire ceci en principe :
« — Teleinfo USB Arduino V0.3e — »
« > microSD initialisee ! »« RTC non configure ! » >>>> UNIQUEMENT Si le RTC n’est pas correctement configuré
01/01/2000,00:00« 23/10/2019,10:00 » >>>>> La DATE et l’HEURE du RTC si tout est OK
« – Compteur 2 detecté » >>>>> Si vous avez connecté 2 compteurs
ect ect ……
N’oubliez pas de remettre //#define echo_USB en commentaire ( // ) si vous l’avez modifié pour test et lorsque vous en aurez plus besoin. Il faudra dans ce cas recompiler et transférer dans le UNO . Fermer Terminal si vous recompilez.
Cdt
00 -
Bonjour,
Je viens de me rendre compte qu’à la suite de la compilation de Teleinfo_Arduino_V0_3E, il y a dans la fenêtre du bas des lignes en rouge que je n’avais pas vue car la fenêtre était trop petite.
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:39:21: warning: ISO C++11 requires whitespace after the macro name
#define message_système_USB //envoie des messages sur l’USB (init SD, heure au demarrage, et echo des erreures)
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:111:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:123:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:136:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:150:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:281:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:359:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:430:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:487:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:696:20: warning: extra tokens at end of #ifdef directive
#ifdef message_système_USB
^
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino: In function ‘void loop()’:
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:192:76: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if ((ReceptionNombre > val_max[reg_horloge-1]) || (ReceptionNombre == -1)) {
~~~~~~~~~~~~~~~~^~~~~
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino: In function ‘void traitbuf_cpt(char*, uint8_t)’:
C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E\Teleinfo_Arduino_V0_3E.ino:330:39: warning: unused parameter ‘len’ [-Wunused-parameter]
void traitbuf_cpt(char *buff, uint8_t len)
^~~
C:\Program Files (x86)\Arduino\libraries\SD\src\SD.cpp: In function ‘open.constprop’:C:\Program Files (x86)\Arduino\libraries\SD\src\SD.cpp:456:12: warning: ‘pathidx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
filepath += pathidx;
^
C:\Program Files (x86)\Arduino\libraries\SD\src\SD.cpp:450:7: note: ‘pathidx’ was declared hereint pathidx;
^
Le croquis utilise 21364 octets (66%) de l’espace de stockage de programmes. Le maximum est de 32256 octets.
Les variables globales utilisent 1384 octets (67%) de mémoire dynamique, ce qui laisse 664 octets pour les variables locales. Le maximum est de 2048 octets.Je suppose que c’est pas très bon.
J’ai fait la manip avec terminal pour rentrer l’heure comme expliqué sur le message précédent, ci-joint un impr ecran, j’ai l’impression de rien envoyer.
Attachments:
You must be logged in to view attached files.00 -
Verifier ces deux lignes n° 38 et 39
//#define echo_USB //envoie toutes les trames téléinfo sur l’USB
#define message_système_USB //envoie des messages sur l’USB (init SD, heure au demarrage, et echo des erreures)Il faut mettre un espace entre les divers définition des ces lignes #Defines et mettre un HashTag # devant Define, ex:
#define (espace) message_système_USB (espace ou plusieurs ) //envoie des …..Si vous avez décommenté la ligne //#define echo_USB en elevant les //
alors pareil
#define (espace) echo_USB (espace ou plurieurs) //envoie toutes …Les warning sont induit par une mauvaise définition d’un ou des deux #define …. tous les textes en commentaire doivent être précédés de //
Une hypothèse, l’accent grave sur le #define message_système_USB peut générer ces Warnings
Retirer l’accent grave de toutes les références à message_système_USB dans l’ensemble du fichier.
Faire une recherche et remplacer message_système_USB par message_systeme_USB
Cela devrais éliminer les WARNING sur ce #define——————–
modifier la ligne 59
unsigned int ReceptionNombre = 0; // variable de calcul du nombre reçu par port série
par
int ReceptionNombre = 0; // variable de calcul du nombre reçu par port série
cela devrait éliminer le warning: comparison between signed and unsigned integer———————-
dans la procèdure en ligne n° 318, rajouter len=len comme indiqué ci-dessous. Cela devrait éliminer le warning: unused parameter ‘len’ [-Wunused-parameter]char chksum(char *buff, uint8_t len)
{len=len;
int i;
char sum = 0;
for (i=1; i<(len-2); i++) sum = sum + buff[i];
sum = (sum & 0x3F) + 0x20;
return(sum);
}—————
Les autres Warning restant sont induit par la librairie SD de l’Arduino IDE. qu’elle est votre version de IDE ?
Mais ces warning ne doit pas poser problèmeFaites ces modifs, recompiler et transférer > fermer Terminal.exe avant.
concernant l’envoie de l’heure et date depuis Terminal, il n’y a pas l’option +CR en fin du champ du bas dans votre version que j’ai envoyé ?.
envoyez vos infos heures et date comme indiqué, mais ajouter \r en fin de chaque nombre. Ex: 23\r ou 2019\r etc. Si cela ne bouge pas essayer avec \n Ex: 23\n ou 2019\n etc
Normalement cela devrait simuler un Return après les nombres envoyés, c’est ce qui manque pour valider votre saisie dans le programme.Faites moi savoir si c’est un peu mieux.
Cdt
00 -
J’ai compilé le fichier Teleinfo_Arduino_V0_3E.ino avec la version Arduino IDE version 1.8.9, sans modifier quoi que ce soit dans le fichier d’origine et je n’ai aucun Warning comme vous !
Probablement votre version IDE devrait être mis à jour en téléchargeant la dernière version qui est 1.8.10
Donc ne modifiez rien de ce que je vous ais indiqué et recompiler avec la dernière version IDE
Pour les Return en saisie des nombres pour les champs heure, minute etc, si \r ou \d à la suite des nombre ne provoque pas de changement dans l’appli, essayez de faire un RETURN Clavier après vos saisie pour voir si cela passe. Le Send sera envoyé avec votre return
00 -
Correction, il y a bien une erreur sur les appels de now.dayOfWeek(); dans le INO pour les ligne 147 et 239.
Changer dans tout le fichier INO les appels à
now.dayOfWeek();
Par
now.dayOfTheWeek();
Par contre il n’y a pas de WARNING avec la dernière Version de IDE
Travaillez vous sous Windows ou Linux ?
00 -
J’ai la version 1.8.10 depuis que j’ai commencé.
Je vais essayer les modifs indiquées.
00 -
Je vous envoie ma version de Terminal.exe qui possède l’Option +CR en fin de la barre SEND en vas du logiciel. En cochant cette Option on est sur d’envoyer le Carriage-Return dès que vous envoyé vos nombres pas la Cde Send. à droite en bas.
Supprimer votre version Terminal et décompresser celui que je vous envoie.
Recompiler et ne modifier pas now.dayOfTWeek(); pour l’instant si vous n’avez pas cette erreur en Compil. Cela dépend de la Version de la librairie RTClib que vous avez.
Tenez moi au courant je reste en ligne
Cdt
Attachments:
You must be logged in to view attached files.00 -
Je suis sous windows.
Avec la version 1.8.10 malgré les modifs toujours des défauts.
J’ai télécharger la 1.8.9 et là après compil sans modif plus aucune ligne rouge.
Je téléverse, pas de ligne rouge mais:
Le croquis utilise 21646 octets (67%) de l’espace de stockage de programmes. Le maximum est de 32256 octets.
Les variables globales utilisent 1419 octets (69%) de mémoire dynamique, ce qui laisse 629 octets pour les variables locales. Le maximum est de 2048 octets.
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E : aucun fichier d’en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E
Bibliothèque non valide trouvée dans C:\Users\Lezi\Documents\Arduino\libraries\Teleinfo_Arduino_V0_3E : aucun fichier d’en-tête (.h) trouvé dans C:\Users\Lezi\Documents\Arduino\libraries\Teleinfo_Arduino_V0_3E
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E : aucun fichier d’en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\Teleinfo_Arduino_V0_3E
Bibliothèque non valide trouvée dans C:\Users\Lezi\Documents\Arduino\libraries\Teleinfo_Arduino_V0_3E : aucun fichier d’en-tête (.h) trouvé dans C:\Users\Lezi\Documents\Arduino\libraries\Teleinfo_Arduino_V0_3EConcernant l’heure, j’ai essayé toutes les manips toujours rien, il ne réponds pas.
00 -
Avec le nouveau Terminal ça marche, l’heure et la date sont entrés et les leds sur le shield se sont misent à clignoter, ça à l’air de fonctionner.
00 -
Je vais laisser tourner quelques jours et voir si tout se charge sur la SD comme prévu.
Je voulais vous envoyer un grand merci, c’est la première fois que j’utilise un forum pour avoir de l’aide et je suis impressionné.
Merci encore.
00 -
J’ai fais une recherche concernant les Warnings que vous avez en v1.8.10.
En fait dans la dernière version de IDE 1.8.10 ils ont changé la valeur dans le fichier preferences.txt de l’ IDE de l’option compiler.warning_level= une valeur differente de none.
Dans la version IDE 1.8.9 cette option est à =none, c’est pourquoi on ne voit pas les Warning en 1.8.9. Par contre avec cette version IDE 1.8.9 vous avez un gros pb de librairie introuvable.
Je pense que le mieux et de désinstaller complètement votre ARDUINO IDE pour partir sur une bonne base. Vous installer ensuite la version 1.8.10 propre comme avant. et vous modifierai l’option compiler.warning_level=none dans le fichier preferences du IDE.
On verra s’il vous manque des librairies. Vous pourrez les télécharger si c’est le cas. Pour le moment ils ne sont pas nommé dans le compte rendu de la compil.
les warnings que vous avez ne posent pas problème. Mais les messages actuels Bibliothèque non valide sont beaucoup plus grave.
Pour accéder au fichier preference.txt de l’IDE vous cliquez sur fichier > préférence > dans la fenêtre qui s’ouvre en bas vous cliquez sur le lien du dossier qui contient preference.txt. Une fois dans le dossier Vous ouvrez ce fichier preferences.txt et changer l’option >> compiler.warning_level=none
Vous n’aurez plus de warning !
changer votre Terminal.exe par le nouveau que je vous ais envoyé. l’Option +CR est présent dans le champs d’envoie en bas de page
Je reste à proximité, tenez moi au courant.
00 -
On c’est croisé dans les messages. Mes félicitations pour la mise en route.
Mais personnellement je ferais le ménage pour repartir sur une meilleure base.
L’heure qui à été rentré ne sera plus modifié tant que vous n’enlevez pas la pile.
Recompiler le Arduino UNO le fera se réinitialiser comme si vous aviez fait un Reset. L’heure du RTC ne sera pas modifiée.
Le but est d’avoir un compte rendu de compil Propre.
Cdt
00 -
Normalement avec Terminal vous devriez voir passer toutes les trames de la téléinfo au fil de l’eau si les Compteurs sont connectés.
Vérifier que vos compteurs envoient bien leurs trames de téléinfo en mode historique. Je ne sais pas si le logiciel INO comprennes ceux du mode standard
Il faudrait que Nicola le confirme
Cdt
00
-
- Vous devez être connecté pour répondre à ce sujet.