Come anticipato tanto tempo fa, sono alle prime armi e per mancanza d'esperienza spesso faccio degli sbagli. Cmq ho progettato un controllo per la mia plafoniera dell'acquario. Dopo tanti tentativi e simulazioni sono riuscito a farla funzionare.
Dopo aver implementato un modulo RTC, 26 relè, tre galleggianti 4 LM35, una fotoresistenza e molti LED, sto riscontrando un comportamento anomalo.
Spesso il modulo RTC non mi viene letto (not running) e o addirittura mi legge dati sbagliati:
####################
2165/165/165 165:165:85
ORE-MINUTI:16665
RTC RUNNING
MANUTEZIONE OFF
MAndandomi in tilt l'intero progetto con i relativi Relè. Ossia li lascia in modalità NA anche se arduino me li segna spenti:
MANUTEZIONE OFF
RELAY 1 OFF
RELAY 2 OFF
RELAY 3 OFF
RELAY 4 OFF
RELAY 5 OFF
RELAY 6 OFF
RELAY 7 OFF
RELAY 8 OFF
RELAY 9 OFF
RELAY 10 OFF
RELAY 11 OFF
RELAY 12 OFF
RELAY 13 OFF
RELAY 14 OFF
RELAY 15 OFF
RELAY 16 OFF
RELAY 17 LUCE ROSSA OFF
RELAY 18 LUCE ROSSA OFF
DOSOMETRICA 1 SPENTA
DOSOMETRICA 2 SPENTA
Per non parlare che spesso sono costretto ad eseguire il reset del mega, attraverso il bottone oppure togliendo la connessione della USB.
MEntre allego le foto della plafoniera, dove si evidenzia che rimane accesa anche se i relè mi indicano OFF. invece nella parte destra delle foto si notano i relè con arduino mega nel centro.....mentre nell'altra foto (parte sinistra il terzo relè con il modulo rtc.
Sicuramente ho sbagliato qualcosa ma non riesco a capire dove.
Una domanda ma il cavo USB lo usi solo per alimentarlo o il sistema è collegato a qualcosa per visualizzare il log?
Perché se lo usi solo per alimentare ti consiglio di eliminare tutte le print sulla seriale quando non sei in debug, il metodo più usao è una cosa del genere:
In questo modo quando tutto è ok commenti la define ricompili e agiorni il programma sulla mega.
Non dovrebbe essere questo a costringerti a riavviare ma potrebbe essere un inizio di ottimizzazione.
L'altra cosa che potrebbe portarti al blocco sono appunto i relé, quelle schede da 8 relé sono note per introdurre problemi se alimentate in comune con Arduino, tu come le alimenti? L'ideale è separare nettamente alimentazione della mega dai relé (ovvero due alimentatori separati e evitare di mettere in comune anche i GND) se cerchi sul forum troverai mlte discussioni a riguardo.
La terza cosa che mi viene in mente che può portare a comportamenti "anomali e bizzarri" è l'utilizzo dei collegamenti a mezzo breadboard su progetto definitivo, se hai anche solo una minima capacità di saldare e un saldatore ti consiglio di effettuare i collegamenti in modo più stabile a mezzo di schede "millefori"