Go Down

Topic: Teleinfo + suivi conso graph 72h/h+ sauvegarde sur SD M/A + 2 relais : Mega 2560 (Read 34565 times) previous topic - next topic

muadeeb

Bonjour, et bonne Année à tous,

Tu partage toujours ton sketch ?
Je ne vois pas de liens.

bluemax2011

Je vais essayer de le remettre en service (je suis sur une version plus light sur uno pour l'instant ) mais il me faut aller sur place donc pas avant 2 à 3 mois.

Par contre, je n'arrive pas à régler le problème de l'heure sur les serveurs de temps  qui changent d'adresse ou qui ne réponde pas ou pas bonne adresse. Manuellement deviendrait l'idéal.

 Ensuite, en cas de plantage, il est incapable de se relancer et quand on est pas sur place c'est problématique.

 Il me faudrait une aide pour revoir le sketch et essayer de régler ses problèmes si c'est possible. Moi je sèche complètement.

Dorian28190

Salut j'aime bien ton projet et j'aimerai si c'est possible que tu me montre le programme que tu as utilisé poir recuper les données du compteur et les afficher sur le webserver stp


rjnc38

Par contre, je n'arrive pas à régler le problème de l'heure sur les serveurs de temps  qui changent d'adresse ou qui ne réponde pas ou pas bonne adresse. Manuellement deviendrait l'idéal.
il y a un pool de serveurs NTP en france http://www.pool.ntp.org/zone/fr que l'on peut utiliser raisonnablement (une requète par jour devrait suffir avec une RTC
Quote
Ensuite, en cas de plantage, il est incapable de se relancer et quand on est pas sur place c'est problématique.
il faut mettre un watchdog et ça fonctionne bien
Code: [Select]
#include <avr/wdt.h> // watchdog
setup : wdt_enable(WDTO_8S); // watchdog fixé à a 8s (maxi possible)
loop : wdt_reset(); // watchdog démarré on le raz a chaque passage sinon reboot ...

bluemax2011

Excuse du retard, j'étais sur un autre sujet.

 Merci pour ton aide.

 Pour le serveur ntp, je ne peux, dans le sketch, mettre que des adresse IP d'où ma difficulté. Il est vrai qu'avec une RTC tout serait plus facile mais j'avais un problème matériel que je n'ai pu régler.

 Pour le watchdog effectivement on y avait pensé . Tu mets où ses lignes dans le sketch ? Si le système est planté, comment le watchdog peut-il encore fonctionner ?

ptitnitro62000

Salut bluemax2001,

Quote
Si le système est planté, comment le watchdog peut-il encore fonctionner ?
Le jour ou tu arrive à faire planté un watchdog tu m'appelle.

Quote
Le watchdog est un mécanisme implanté dans les microprocesseurs pour éviter qu'un système ne reste gelé après un plantage du software.
On considère que le software « plante » si celui-ci ne repasse pas par un certain point avant un délai pré-établi.
En cas de plantage, on redémarre le microprocesseur et (facultativement) le reste du système, ce qui est préférable à un système qui reste inopérant.
Avec les Arduinos antérieurs au Due, il était délicat d'utiliser le watchdog, pourtant présent dans les microprocesseurs Atmega, sans modifier le bootloader des platines.
Ce n'est plus le cas avec l'Arduino Due et son microprocesseur SAM3X.
source: forum.snootlab.com

Arduino uno R3, Arduino Nano V3, Arduino Mega 2560, Arduino DUE, Shield Ethernet + Micro SD, Tiny RTC (DS1307+24c32) , module RTC ( module DS3231 + AT24C32) stater kit de base et plein d'autres trucs sympa ;-)

bluemax2011

 Je comprends mieux l'utilité d'une part et peut-être pourquoi on ne l'avait pas mis d'autre part.

 Il me faudrait essayer car là je suis planté depuis le mois de septembre et je ne peux m'y rendre avant le mois prochain pour faire mon reset hard.
 Ou essayer sur la version HTML directement car c'est bête de rester sur un échec.

  Donc en faite, il me faut changer le bootloader et rajouter les lignes de rjnc38.

ptitnitro62000

Arduino uno R3, Arduino Nano V3, Arduino Mega 2560, Arduino DUE, Shield Ethernet + Micro SD, Tiny RTC (DS1307+24c32) , module RTC ( module DS3231 + AT24C32) stater kit de base et plein d'autres trucs sympa ;-)

bluemax2011

je vais aller voir si j'ai le bon condo.

 et si j'ai bien compris, on peut même lancer le watchdog à distance.

rjnc38

et si j'ai bien compris, on peut même lancer le watchdog à distance.
oui il suffit de le prévoir dans le serveur web ... enfin .... par une backdoor pour éviter les plaisanteries

bluemax2011

Il faut mettre tes lignes du watchdog en début ou fin de sketch ?

et si tu voulais le lancer à distance, tu écrirais quoi ?

rjnc38

Code: [Select]
#include <avr/wdt.h> // watchdog
setup : wdt_enable(WDTO_8S); // watchdog fixé à a 8s (maxi possible)
loop : wdt_reset(); // watchdog démarré on le raz a chaque passage sinon reboot ...

le #include en début de sketch avec les autres
le wdt_enable(...) à la dernière ligne du setup()
le wdt_reset() à la première ligne de la loop()
ensuite il faut faire une fonction par ex à la fin du sketch :
Code: [Select]
void reboot() {
while(1);
}

et après quand tu veux déclencher le redémarrage .... tu appelle : reboot();


bluemax2011

Au fait, si je ne change pas le bootloader du Mega, cela ne fonctionnera pas ?

et comme je ne me suis jamais "penché" sur le Due, le code est compatible à 100% ? Et pourrais je utiliser mes relais 5V ( je crois avoir lu qu'il ne gerait que le 3.3v) ?
 C'est juste pour savoir si j'en commande un second.

Go Up