[Programmation] Arduino nano Watchdog
Répondre à la discussion
Affichage des résultats 1 à 14 sur 14

Arduino nano Watchdog



  1. #1
    juju_du_26

    Arduino nano Watchdog


    ------

    Bonjour a tous .

    Pour mon système domotique , je mesure et affiche la température de ma piscine .
    J'ai donc dans la piscine , un capteur type DS18b20 , connecté a un Arduino nano , et envoie des data via RF 433 MHz
    Le tout est alimenté par une batterie Lipo 18650 de 2600mAh .
    La mesure et l'envoi / réception des data température fonctionne ...

    Mon problème , je voudrais mettre en veille prolongée l’Arduino pour diminuer la conso sur la batterie .
    Pour cela , j'utilise le mode sleep et le watchdog .

    En premier test , j'ai mis un watchdog réglé a 8secondes .... le nano passe bien en veille mais y a un problème au réveil ,
    le programme ne rentre pas dans l'ISR du watchdog , et la led sur pin13 clignote rapidement , le nano est planté .

    Ci joint mon programme complet ainsi que la copie du moniteur serie .

    Bonne journée et bonne baignade .
    JuJu

    -----
    Fichiers attachés Fichiers attachés

  2. #2
    umfred

    Re : Arduino nano Watchdog

    D'après la doc, le watchdog de 8s ne serait pas supporté par le Nano (ça s'arrêterait à 2s) https://github.com/janelia-arduino/Watchdog
    Quoique ça se contredit avec cet exemple: https://passionelectronique.fr/watch...valle-regulier
    De plus il semble manquer un appel à wdt_reset() quelque part.

  3. #3
    juju_du_26

    Re : Arduino nano Watchdog

    Bonjour ,
    J'ai trouvé , le probleme venait du setup / activation du watchdog ..
    J'ai remplacé le

    Code:
    wdt_enable(WDTO_8S) ;
    par

    Code:
       wdt_reset() ;
       WDTCSR = (1<<WDCE) | (1<<WDE) ;    // watchdog enable sur 8 sec
       WDTCSR = 0b01100001 ;
    Et l,arduino nano fait bien des boucles toutes les 8 secondes .
    Pour rallonger le temps d'attente entre 2 mesures , il suffit de compter N boucles sleep / watchdog

    Merci
    JuJu

  4. #4
    Sweeban

    Re : Arduino nano Watchdog

    Bonjour,
    Je ne connais pas trop Arduino & compagnie mais une valeur de WDT de2 s me parait très faible ...
    Est-ce pertinent de faire des mesures si rapprochées ?...
    Sur Pic on va jusque plus de 260 s
    Mais sur Pic de MicroShip pour "doubler" le temps ainsi que tu le fais, il faudrait réveiller le PIC pour incrémenter le compteur, donc le µC consommerai davantage
    Cdlt

  5. A voir en vidéo sur Futura
  6. #5
    juju_du_26

    Re : Arduino nano Watchdog

    Salut

    J'ai mis le watchdog a 8 secondes ( le max sur Arduino ) et je compte N boucles de 8 secondes
    pour faire une mesure de température toutes les 10 minutes ...

    Bonne journée

  7. #6
    Sweeban

    Re : Arduino nano Watchdog

    Re,
    Donc tu as besoin de 75 boucles pour ta tempo...
    Dommage de ne pas pouvoir augmenter la valeur de ton WDT, tu aurais pu baisser le nombre de boucles donc moins de réveil du µC donc au final
    la batterie serai moins sollicitée...
    Et passer sur 1 Pic ?
    Je te rassure je n'ai aucune action chez MicroShip ! lol

    Cordialement

  8. #7
    juju_du_26

    Re : Arduino nano Watchdog

    RE
    Je connais les PIC , j'en ai utilisé pendant des années , programmée en asm ...
    Ici , même si l’Arduino , en se réveillant N fois , toutes les 8 secondes , consomme un peu , ce n'est pas grave ,
    j'ai un petit panneau solaire qui compense ...

  9. #8
    Seb.26

    Re : Arduino nano Watchdog

    Le réveil WD pour faire "n--; if(!n){ ... }" la conso est négligeable.

    Surtout si tu tournes sur une horloge basse fréquence.
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  10. #9
    Sweeban

    Re : Arduino nano Watchdog

    @Seb
    Je trouve "plus propre" d'avoir un WDT plus étendu mais
    en effet nul besoin de mettre le turbo :
    Perso pour faire de la prise de mesure avec le CAN 10bit d'un "pauvre 12F683" :
    :Fosc = 1Mhz , cycle machine à 4µs et le WDT sur environ 260s pour 1 prise de mesure de 4mn 20s au maximun
    Dernière modification par Sweeban ; 17/07/2023 à 17h07.

  11. #10
    Seb.26

    Re : Arduino nano Watchdog

    Citation Envoyé par Sweeban Voir le message
    @Seb
    Je trouve "plus propre" d'avoir un WDT plus étendu mais
    d'un point de vue philosophique, pourquoi pas
    Mais fais le calcul en vrai de ce que cela coute sur ta batterie comparé aux cycle de réveil + traitement + action ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  12. #11
    juju_du_26

    Re : Arduino nano Watchdog

    Merci a tous pour vos réponses .

    Finalement , en mettant le WDT a 8 sec et en faisant 75 boucles , le nano fait une mesure toutes les 10 min
    ce qui est suffisant , et n'envoie la donnée que si différente de la dernière .
    En se mettant en veille entre 2 mesures et avec le petit panneau solaire , la batterie est maintenue chargée ..

    Bonne journée
    JuJu

  13. #12
    Sweeban

    Re : Arduino nano Watchdog

    #10
    Justement Quel calcul est le "meilleur " ?
    J'attends ta philosophie... ta réponse à ce sujet... 260s >>> 8s ! Pas certain que tu gagnes...
    J'aime pas les Smileys verts
    Dernière modification par Sweeban ; 20/07/2023 à 19h45.

  14. #13
    Sweeban

    Re : Arduino nano Watchdog

    #10
    Dans les 2 cas avec le PS chargeant la batterie cela fonctionnera ...
    Mais au niveau Efficience de la conso du µC par certain que tu gagnes ...

  15. #14
    Sweeban

    Re : Arduino nano Watchdog

    # 11
    Bonsoir "juju"
    Oui cela fonctionne mais...
    Utiliser la base de temps du Watchdog cadencé aux environs de 31 Khz (Sur PIC) avec 1 profondeur de 260s consomme moins d'énergie !
    On "réveille" le µC moins souvent, on évite des boucles inutiles !..
    Quoi qu'en dise seb !
    A méditer !
    Dernière modification par Sweeban ; 20/07/2023 à 21h07.

Discussions similaires

  1. [Analogique] Arduino Nano + SIM800L
    Par Superclass dans le forum Électronique
    Réponses: 5
    Dernier message: 16/06/2020, 18h50
  2. arduino nano & carte SD
    Par man_of_steel dans le forum Matériel - Hardware
    Réponses: 0
    Dernier message: 16/12/2017, 22h01
  3. arduino nano v3 non reconnu
    Par invite712e037c dans le forum Électronique
    Réponses: 12
    Dernier message: 26/11/2014, 08h18
  4. Arduino Nano et led RGB 10w
    Par bypbop dans le forum Électronique
    Réponses: 16
    Dernier message: 26/08/2014, 14h55
  5. Arduino nano
    Par invited0ef5633 dans le forum Électronique
    Réponses: 1
    Dernier message: 04/02/2013, 22h00
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...