Centralina alba tramonto arduino – prima parte

So che di Venerdì non andrebbe mai proposto un argomento complesso come una centralina alba tramonto arduino ma siamo in periodo natalizio, siamo tutti più buoni e mi perdonerai 🙂

entralina alba tramonto arduino volta

Bando alle cavolate ho trascorso gli ultimi giorni a scriver progetti natalizi in previsione della prossima settimana in cui cade, appunto, Natale.

Concetti base su cui costruire la centralina alba tramonto arduino

Il primo interrogativo che mi sono posto è stato:

“quanto dura l’alba, il giorno, il tramonto e la notte per riprodurre un effetto reale?”

Si, è al limite della malattia mentale … ma ancora non hai letto tutto, continuando a farmi domande mi sono chiesto:

“la durata di ogni fase come varia a differente latitudine ?”

ed ancora:

“come variano le fasi alba,giorno,tramonto e notte da un giorno all’altro ?”

Anticipo che mi sono fermato alle prime due, ma non escludo di poter realizzare anche una centralina in cui inserire parametrizzazioni più dettagliate 🙂 in futuro.

In pratica ho trovato un sito fantastico che mi ha agevolato: meteo.sm in cui selezionando:

  • località
  • data

puoi ottenere le fasce orarie per alba,giorno,tramonto e notte di una determinata località in un dato giorno.

Ho quindi deciso di prendere come riferimento due città:

  • Roma: capitale dell’italia e con latitudine centrale dell’Italia
  • Betlemme: puoi immaginare il perché parlando di natività ( vedi su wiki )

come data ho scelto il 25 dicembre 2014, prossimo natale, ma puoi ripetere la programmazione ogni anno per avere la tua centralina alba tramonto arduino sempre aggiornata.

Ecco i risultati per Roma:

entralina alba tramonto arduino roma 25 dic 2014

e per Betlemme:

entralina alba tramonto arduino betlemme 25 dic 2014

quindi la tua centralina riprodurrà i tempi di alba,giorno,tramonto e notte del giorno 25 dicembre 2014 a Roma o Betlemme.

Calcolo della durata di ciascuna fase

il passo successivo ad aver ottenuto i dati è convertirli per utilizzarli sulla centralina alba tramonto arduino.

Ho utilizzato un foglio di calcolo nel quale ho riportato gli orari di inizio e fine di ciascuna fase:

centralina alba tramonto arduino excel Roma 25dic2014

fai riferimento alla prima tabella e per ogni fase hai le ore,minuti e secondi di durata da cui con la formula:

Durata in sec. = (Ore x 3600) + ( Minuti x 60 ) + Secondi

ottieni la durata in secondi di ciascuna fase nell’arco della giornata e sapendo che un giorno è composto da 86400 secondi ( 24 ore ) puoi ricavarti la percentuale di tempo occupata da ciascuna fase nell’arco della giornata.

Se non vuoi fare calcoli puoi usare i valori che ho inserito nel foglio di calcolo riportato sopra.

Nella seconda tabella ho sommato la fase di notte fonda in quanto il calcolo parte dalla mezzanotte, spezzando così la notte i due, ma nella realtà è tutto un ciclo unico.

Calcolo dei cicli alba,giorno,tramonto e notte

Per completare il quadro dei dati che ti servono per realizzare la tua centralina alba tramonto arduino c’è la durata che ciascun ciclo deve avere.

Non penserai di lasciarlo sulla base delle 24 ore?

Nessun amico rimarrà così tanto a guardare il tuo presepe anche se stupendo e ricco di particolari 🙂

Ecco perché ho realizzato questa tabella:

centralina alba tramonto arduino excel Roma 25dic2014 cicli

con cui puoi calcolare quanto deve durare ogni fase ( in millisecondi perché arduino lavora in questa scala ) in base alla durata del ciclo completo.

Ad esempio se vuoi che il tuo ciclo di alba-giorno-tramonto-notte duri 1 min sul ciclo di Roma al 25 dicembre 2014 avrai che le singole fasi durano:

  • alba: 4194 millisecondi
  • giorno: 22958 millisecondi
  • tramonto: 4195 millisecondi
  • notte: 28651 millisecondi

Ecco le versioni delle tabelle precedenti per Betlemme:

entralina alba tramonto arduino betlemme

e per ciascun ciclo:

centralina alba tramonto arduino excel Betlemme 25dic2014 cicli

Buon calcolo !!!

  • Questo sito ed i suoi contenuti è fornito "così com'è" e Mauro Alfieri non rilascia alcuna dichiarazione o garanzia di alcun tipo, esplicita o implicita, riguardo alla completezza, accuratezza, affidabilità, idoneità o disponibilità del sito o delle informazioni, prodotti, servizi o grafiche correlate contenute sul sito per qualsiasi scopo.
  • Ti chiedo di leggere e rispettare il regolamento del sito prima di utilizzarlo
  • Ti chiedo di leggere i Termini e Condizioni d'uso del sito prima di utilizzarlo
  • In qualità di Affiliato Amazon io ricevo un guadagno dagli acquisti idonei qualora siano presenti link al suddetto sito.

Permalink link a questo articolo: https://www.mauroalfieri.it/elettronica/centralina-alba-tramonto-arduino-prima-parte.html

54 commenti

2 ping

Vai al modulo dei commenti

    • giuseppe traversa il 10 Marzo 2015 alle 18:59
    • Rispondi

    Vorrei sapere se tale progetto può avere il via da un telecomando e quindi anche la fine. Mi spiego meglio ,il loop della centralina può iniziare con un pulsante del telecomando e quindi anche la fine . E come potrei inserire tali input nello sketch.
    Grazie per tutto quello che dirai.
    Giuseppe

    1. Ciao Giuseppe,
      a mio avviso si, puoi mettere nel loop() un if() che verifichi la pressione di un tasto del telecomando, leggi i miei articoli sull’IR, e attendere che venga premuto per eseguire lo start/stop del ciclo.

    • giuseppe traversa il 11 Marzo 2015 alle 17:28
    • Rispondi

    Grazie, proverò a inserire if().

    • giuseppe traversa il 18 Marzo 2015 alle 16:12
    • Rispondi

    Ciao Mauro scusami del ritardo,sono stato a letto e non ho potuto verificare il telecomando.
    Comunque durante questo tempo ho ricevuto dei moduli relè e li ho sostituiti al posto dei led per testarli.
    Non funziona , restano sempre accesi l’alba tramonto e notte.
    Ho provato a cambiare i tempi delle fasi. Ma niente…
    Sto sbagliando qualcosa ? Ho usato gli stessi collegamenti con la differenza invece dei led ho usato i rele.
    Ho anche invertito in analogWrite da LOW in HIGH. niente..
    Mi puoi dire dove sbaglio ? LO so che è presto per parlare del Natale , ma visto gli inconvenienti e gli inprevisti e tutto il lavoro di assemblaggio della struttura scenografica,elettrica ed elettronica che andrò a preparare avrò bisogno di tempo e pazienza. Grazie per la tua disponibiltà

    1. Ciao Giuseppe,
      inizio a pensare che ti occorre qualche oretta di buona lettura di elettronica, la differenza tra led e relay è abissale in un progetto come la centralina di alba e tramonto in quanto i led giocano con le dissolvenze in PWM e i relay non possono fare questo.
      Prima di arrivare al telecomando, parte ancora più complessa, ti suggerirei di leggere e comprendere i tutorial del mio corso base on-line gratuito.

    • giuseppe traversa il 18 Marzo 2015 alle 18:36
    • Rispondi

    La differenza tra led e relè la conosco, non riuscivo a capire quando dicevi che si possono utilizzare faretti a 220 volt di vari colori ora è chiaro che bisogna modificare lo sketch inserendo i relè. Sono le tue lezioni che ho incominciato a seguire da quando ho acquistato Arduino. Sono a digiuno di programmazione ma di elettrotecnica ho esperienza da quarantanni. Grazie ancora per la tua pazienza.
    Giuseppe

    1. Ciao Giuseppe,
      il led sai che deve essere dimmerabile mentre ed il relay non lo è:
      Per collegare dei faretti dovrai usare un mosfet o driver per led.
      In questo modo non dovrai modificare nulla nello sketch per la parte di Alba-Giorno-Tramonto-Notte e potrai concentrarti solo sul telecomanado.

    • giuseppe traversa il 19 Marzo 2015 alle 13:12
    • Rispondi

    Grazie per i suggerimenti.
    Ti voglio confidare una cosa : ho 68 anni e sono da poco in pensione per non restare in ozio ho voluto entrare in un mondo che mi ha sempre affascinato “l’informatica” , ma avendo poca esperienza cerco di copiazzare e recepire le funzioni principali. Ho tanto tempo disponibile ( spero) per imparare e con le tue lezioni e sperimenti spero di riuscire.Se ti trovavi nei paraggi ti avrei offerto le nostre famose zeppole. Virtualmente ti offro.Ciao
    Giuseppe

    1. Ciao Giuseppe,
      i miei appunti sul web hanno lo scopo di aiutare chi, come te, ha competenza e buona volontà di imparare.
      Io non so tutto … anzi mi mancano ancora milioni di cose da imparare e non so neppure quantificarle, ma ogni giorno ne imparo una e la descrivo nel blog per condividerla con tutti gli appassionati di questi argomenti.
      Sono qui se ti serve qualche chiarimento sui miei articoli.
      Dove devo venire per le zeppole ?

    • giuseppe traversa il 19 Marzo 2015 alle 19:20
    • Rispondi

    Bari città quando vuoi casa mia è aperta.

    1. Se vengo a Bari ti avviso 🙂

    • giuseppe traversa il 4 Aprile 2015 alle 11:56
    • Rispondi

    Ciao Mauro per prima cosa Buona Pasqua.
    dopo tanto tempo ho ripreso il solito progetto della centralina alba ecc.ho letto l’articolo su IR e va tutto bene,ma quando inserisco il comando di un rele nel loop della centralina il rele non viene eccitato.
    Mi spiego meglio : la centralina alba e tramonto funziona correttamente ho solo inserito nel loop un if che quando premo un pulsante del telecomando si dovrebbe accendere il led o il rele e lo stesso si dovrebbe spegnere quando riceve l’altro pulsante. Ma tutto questo non avviene è come se il ricevitore non ha nessun segnale. Cosa sbaglio.
    Grazie per il tuo suggerimento
    Giuseppe

    1. Ciao Giuseppe,
      hai provato con un semplice pulsante prima del telecomando IR ?

    • giuseppe traversa il 7 Aprile 2015 alle 16:57
    • Rispondi

    no,ora provo Grazie

    • giuseppe traversa il 7 Aprile 2015 alle 18:19
    • Rispondi

    ho provato col pulsante e avviene la stessa cosa cioè pigiando il pulsante non accende il led mentre lo sketch della centralina continua a funzionare.Forse l’if di (leggi il pulsante ) l’ho inserito alla fine del loop della centralina.Non so che fare.

    1. Ciao Giuseppe,
      questo evidenzia che l’errore è nello sketch, l’if è nel posto sbagliato.
      Ti ho consigliato di lavorare prima con un pulsante proprio per concentrarti prima su dove e come inserire un controllo e solo dopo dedicarti al telecomando.. è la base del ragionamento logico che applico nella realizzazione di tutti i miei sketch.

    • giuseppe traversa il 7 Aprile 2015 alle 18:32
    • Rispondi

    ho provato ad inserire all’inizio del loop e le fasi della centralina avvengono quando accendo e spengo il led con il pulsante. Cosa devo cambiare nel loop?

    1. Ciao Giuseppe,
      non ho compreso la domanda.

    • giuseppe traversa il 7 Aprile 2015 alle 18:45
    • Rispondi

    Vorrei essere più preciso , io vorrei che le due cose ( centralina e comando led o rele) siano indipendenti tra loro,
    Grazie

    1. Ciao Giuseppe,
      per fare questo dovrai sostanzialmente cambiare il modo in cui funziona la centralina.
      Il delay è un blocco al funzionamento secondo la tua idea, ti consiglio di leggere gli articoli sul millis() e ribaltare il funzionamento della centralina utilizzando millis() il loop() come ciclo di controllo ed eliminando i for.

    • giuseppe traversa il 9 Aprile 2015 alle 18:14
    • Rispondi

    Ciao Mauro,
    in conclusione per inserire un comando qualsiasi nello sketch della centralina devo eliminare il fade (la dissolvenza) del led e inserire millis() che è un intervallo di tempo.Cosi si perde la bellezza della dissolvenza.Ho capito bene o continuo a sbagliare.Se non posso inserire un comando qualsiasi che esuli dal funzionamento della centralina dovrei usare un’altra scheda Arduino? Spero di aver espresso il mio dilemma o continuo a confondere le idee.
    Grazie Giuseppe

    1. Ciao Giuseppe,
      purtroppo non mi sono espresso in modo che tu potessi capirmi, forse, il fade non va elimnitao ma riscritto completamente in modo che non faccia uso del delay ma del millis.

    • giuseppe traversa il 13 Aprile 2015 alle 12:18
    • Rispondi

    Grazie infinite Mauro sono io che ho interpretato male .Comunque ho risolto completamente il problema senza utilizzare il telecomando.
    Studiando la funzione millis() e il fade ho navigando ho trovato un link di Leonardo Milani in cui elenca una nuova libreria Looper uno schedulatore software per arduino.
    Nelle tue lezioni è spiegato più dettagliatamente questa libreria cosa serve e quando si può utilizzare.
    Forse dirai che per me è ancora presto ,ma mai dire mai.
    Ciao e ancora grazie.

    1. Ciao Giuseppe,
      sembra molto interessante. Leonardo è in gamba ed ha scritto molti esempi da usare di questa libreria.

    • soft il 15 Agosto 2015 alle 21:12
    • Rispondi

    ciao, scusa io dovrei attivare questo circuito con un pulsante e appena finito il ciclo (dopo la notte) avrei bisogno che il presepe si spenga da solo e si riattivi appunto quando premo il pulsante. ho provato a inserire if(buttonState == HIGH), ma non funziona… o meglio funziona, ma ad ogni cambiamento (alba-giorno-tramonto-sera), devo premerlo se no non cambia. potresti aiutarmi grazie 😉

    1. Ciao Soft,
      se stai seguendo questo sketch: https://www.mauroalfieri.it/elettronica/centralina-alba-tramonto-arduino-sketch.html la cosa migliore che posso consigliarti è di inserire all’inizio del loop() un controllo della pressione del pulsante che imposti una variabile a false poi controlli il valore di questa variabile per eseguire il loop(). Una sorta di pausa dal loop;

    • soft il 17 Agosto 2015 alle 14:08
    • Rispondi

    l’ho fatto, ma a ogni passaggio da alba a giorno, piuttosto che da giorno a tramonto, mi controlla sei il pulsante è premuto

    1. Ciao Soft,
      devi far in modo che il cambio valore della variabile da true e false, o viceversa, avvenga solo alla fine di un ciclo completo alba,giorno,tramonto,notte ..

    • soft il 17 Agosto 2015 alle 15:22
    • Rispondi

    come??

    1. Ciao Soft,
      potresti sfruttare il reset del count, quando lo riporti a 0, imposti anche la variabile.

    • soft il 20 Agosto 2015 alle 15:50
    • Rispondi

    ciao mauro, c’è scritto che se voglio che tutto il ciclo mi duri un minuto devo fare riferimento alla tabella e impostare quei millisecondi… però provando invece che un minuto, tutto il cilo mi dura 30min come mai?

    1. Ciao Soft,
      come ti ho scritto devi verificare bene in quale array vai ad inserire i valori della tabella:
      4194+22958+4195+28651 = 59998 / 1000 = 59,998 secondi che corrisponde circa ad 1 min ( 60 secondi )

        • soft il 20 Agosto 2015 alle 19:25
        • Rispondi

        io ho inserito i valori che hai messo tu….. riscritto il programma che hai fatto te e ho cancella onminbtlm, lasciando solo oneminrome

        1. Ciao Soft,
          nel video presente in questo articolo: https://www.mauroalfieri.it/elettronica/centralina-alba-tramonto-arduino-sketch.html vedi la centralina in funzione con tutto il ciclo che dura circa un minuto.

          Prova a mettere dei serail println dopo ogni fase e verifica i tempi di eseguzione per capire dove avviene l’errore che prolunga sensibilmente il tempo.

    • Emanuele il 15 Dicembre 2015 alle 09:23
    • Rispondi

    Buongiorno, solo oggi per caso (o meglio poi capirai che proprio un caso non era) mi sono imbattuto nel tuo sito. Complimenti. Mi chiamo Emanuele e da ex studente di informatica, appassionato di elettronica e anche “voglioso” di sperimentare Arduino. Nel tempo, diplomato da vent’anni, ho lasciato l’elettronica, non l’informatica, e mi sono appassionato anche ai presepi. Vengo al dunque. Sto facendo un plastico, e, forse sbagliando, ho improntato l’impianto elettrico con delle lampadine (per ora solo 10) micromignon a 12V da 2 Watt. Non ho ancora l’alimentatore (pensavo anche di riadattarne uno del PC ma credo faccia troppo rumore) e mi è venuto solo ora il dubbio di come fare una intermittenza e/o dissolvenza. Cercando sono “caduto” in questo tuo progetto. Mi piacerebbe, potrei adattare i “tempi”, ma credo che le lampadine che ho siano il problema giusto? Non ho modo di adattare o cosa?
    ciao, ancora complimenti,
    Emanuele

    1. Ciao Emanuele,
      se ho ben capito devi realizzare delle dissolvenze su lampadine da 12v 2W ( circa 0,17 A ) ciascuna.
      Per la parte elettronica dovrai predisporre un circuito a mosfet o simile.
      Come esempio di programmazione puoi seguire uno qualsiasi degli articoli in cui descrivo le dissolvenze ed il PWM con arduino.

    • Domenico Giuliani il 4 Gennaio 2016 alle 00:40
    • Rispondi

    Salve, sono molto interessato al progetto Centralina alba tramonto Arduino. Ho realizzato il tutto su bredboard e funziona benissimo. Avrei pensato però nel mio caso di lasciare un solo led per le stelle e modificare l’altro led delle stelle per attivare un led per il fuoco. Mi diletto di programmazione con arduino, ma ora non saprei come procedere. Potresti aiutarmi? Grazie. Complimenti per il tuo sito. Saluti Domenico.

    1. Ciao Domenico,
      bella la tua idea di utilizzare un pin per un effetto fuoco.
      Per aiutarti posso dirti che puoi leggere tutto il mio sketch e comprendere le parti in cui i pin della seconda serie di led, dedicati alle stelle, debbano essere separati dal primo ciclo.
      Infine non hai che da scrivere una funzione che simuli il fuoco, io non conosco come funzioni, e tradurla in codice per la centralina.

    • Gianluca il 11 Ottobre 2016 alle 18:11
    • Rispondi

    Ciao Mauro, io avrei bisogno di collegare delle strisce led che hanno bisogno di parecchia corrente (il giorno 72W) come posso fare ?

    Grazie
    Gianluca

    1. Ciao Gianluca,
      io userei un circuito a mosfet sufficientemente dimensionato.
      Se non trovi nulla nel panorama delle shield vendute per il controllo di led dovrai progettarne una tua.

        • Gianluca il 12 Ottobre 2016 alle 14:56
        • Rispondi

        Grazie per la risposta, mi sapresti dare una dritta su qualche shield devo cercare ?
        Grazie ancora !

        1. Ciao Gianluca,
          prova con qualche shield tipo RGB o LedStrip shield

    • paolo il 28 Maggio 2017 alle 15:17
    • Rispondi

    Salve sig. Alfieri,
    ho visionato il suo progetto e volevo chiederLe una cosa: se lo volessi adattare ad un acquario, mi basterebbe solo ricalcolare i tempi, inserendo nello sketch i relativi valori? Ed inoltre , come potrei utilizzare un switch per bypassare i tempi ed avere un test così come nel filmato, indipendentemente dalla programmazione effettuata? Grazie e complimenti per la sua professionalità, e per il suo metodo nel come rende facili e intuitive le sue spiegazioni.

    1. Ciao Paolo,
      io non conosco gli acquari e l’argomento tuttavia penso che se ciò che vuoi ottenere sia una tempistica differente ti basta cambiare i tempi.
      Lo switch è più complesso, non impossibile ma di certo richiede un tempo ed una competenza di programmazione importante, puoi leggere i miei tutorial sugli switch e capire come integrarli in questo progetto.

        • paolo il 31 Maggio 2017 alle 20:22
        • Rispondi

        grazie perl’attenzione. Leggendo il quarto articolo, potrei usare il potenziometro al minimo per avere il tempo al minimo e quindi come test, senza utilizzare il switch. Volevo inoltre dirle che ho usato l’RGB shield di FuturA e funziona egregiamente ma….. c’è un ma: il passaggio da 0 al massimo, molte volte avviene a scatti e ho l’impressione che si perda la dissolvenza incrociata. Si può risolvere il problema senza infierire sul suo sketch?
        Grazie e buona serata
        Paolo

        1. Ciao Paolo,
          l’effetto visivo a scatti devi capire se dipende dalla RGB Shield o dal tipo di lampade/led che hai utilizzato.
          Alcuni led se alimentati da 0 a 255 in modo costante, ossia di uno in uno, hanno come effetto visivo un incremento a scatti, altri non lo fanno.
          Lo stesso effetto potrebbe essere causato dalla shield in quanto i driver potrebbero avere un comportamento non lineare.

            • paolo il 2 Giugno 2017 alle 12:28

            Ciao e buongiorno Mario,
            allora ho utilizzato la RGB shield per Arduino di Futura (in realtà è della velleman …..http://www.velleman.co.uk/contents/en-uk/p578_ka01.html )mentre per i led ho usato una striscia anonima che avevo. Comunque, ora sto provando il tutto e mi sembra che funzioni egregiamente;
            ATTENZIONE, ho scoperto il perchè:
            avevo lo sketch che la Vellman ha dato in dotazione allo shield (vedi ka01_sample_code) caricato, dove ci sono effetti tra cui la dissolvenza incrociata tra canali, e con lo stesso shield e le stesse strisce, non si avverte alcun baluginio, nè esecuzione a scatti. Dov’è l’arcano?
            Saluti
            Paolo

          1. Ciao Paolo,
            non sono certo di aver compreso il tuo commento, hai risolto?

    • Nicola il 27 Dicembre 2019 alle 16:51
    • Rispondi

    Salve,
    mi chiamo Nicola sono un appassionato di presepi.
    Le faccio i complimenti per lo splendido lavoro realizzato e per aver messo a disposizione di persone appassionate come me il materiale del progetto.
    Le premetto che le mie conoscenze di elettronica sono minime, non ho mai utilizzato schede Arduino nè programmato, tuttavia mi piace imparare e cercare di realizzare le cose con il fai da te.
    Al momento utilizzo la centralina della Frisa “Natalino parlante”, tuttavia, per vari limiti tecnici della stessa, mi piacerebbe realizzare una centralina fai da te con fasi alba/giorno/tramonto/notte a dissolvenza, suoni ed effetti audio.
    Le chiedo per favore un consiglio su come partire per realizzare il progetto.
    La centralina guidata da Arduino dovrebber pilotare 4 metri circa di strisce LED (RGB e monocolore) + circa 50 diodi led (da 10, 5, 3 e 1,8mm) + l’audio. Alimentazione a 12V.
    Quali dovrebbero essere i componenti principali per realizzare il progetto?

    1. Ciao Nicola,
      il progetto è ambizioso ma di sicuro interesse.
      Io ti consiglio di partire da piccoli progetti singoli, sia per la parte elettronica sia la programmazione e iniziare, magare da questa centralina, per controllare le strisce led ed i led singoli.
      Ricorda che per controllare strisce di led da 12v con Arduino hai di certo bisogno di una shield che disponga di mosfet o altro componente elettronico adatto a sopperire sia come tensione che come corrente alla richiesta delle strisce led.
      Non ho la tendenza a suggerire delle shield per non far pubblicità ma penso che provi a cercare “RGB shield” troveai molte schede che possono fare al caso tuo.
      Per la musica ho recensito alcune schedine tipiche proprio in occasione degli scorsi progetti natalizi, prova a cercare nel blog ce ne sono di davvero interessanti.

    • Rodolfo il 16 Novembre 2020 alle 20:05
    • Rispondi

    Ciao Mauro, ti ringrazio per avermi contattato. Ho riportato su IDE lo sketch da te elaborato per l’effeto alba tramonto. La sintassi è giusta perche alla verifica ho eliminato tutti gli errori che mi segnalava ma riportato lo sketch su Arduino UNO non mi fa il ciclo dawn-sun-sunset-moon come prevede lo sketch e l’effetto del potenziometro è nullo. Cosa ho sbagliato?
    Grazie per l’attenzione
    Rodolfo Filippini

    1. Ciao Rodolfo,
      qualche sketch stai utilizzando? in questo articolo non c’è uno sketch da utilizzare, ho il sospetto che tu stia utilizzando uno sketch parziale.

    • INNOCENZO SANSONE il 25 Ottobre 2023 alle 18:38
    • Rispondi

    Buona sera.
    Sono un vecchio ingegnere elettronico ( ramo comunicazioni ) ed ho iniziato a divertimi con arduino, la mia prima esperienza di S/W.
    Ho relizzato la centralina , inserendo le tempistiche per il ciclo di un minuto.
    Le stringhe di led sono interfacciate ad arduino tramite i dual h bridge L298 N-
    Tutto funziona correttamente, ma se vario i tempi, per es. per un ciclo di 5 minuti, il programma si blocca. Dove sbaglio ????

    1. Ciao Innocenzo,
      in qualche commento questo tipo di problematica è stata già riportata.
      In pratica le variabili che contengono i valori dei tempi per il ciclo da 5 min sono troppo piccole: le variabili di tipo int in Arduino Uno, e simili a 8 bit, vanno da -32768 a +32767 quindi valori come 114788 superano il range possibile.
      Prova a avariarle gli array relativi ai tempi con delle variabili di tipo ungigned long ( https://www.arduino.cc/reference/en/language/variables/data-types/unsignedlong/ ) che come descritto nel manuale possono contenere valori, positivi, fino a 4,294,967,295 (2^32 – 1).

  1. […] primo articolo hai letto come puoi ricavare i tempi delle fasi alba-giono-tramonto-notte e come tradurre in tempi […]

  2. […] Nel primo articolo dedicato alla centralina natalizia hai letto come sono calcolati i tempi di durata di ciascuna fase del ciclo giornaliero. […]

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.