Ardu-Aquarium Controller v. 3.3.1

Cosa attualmente fa lo sketch:

Aggiornato il 04/06/2014
In questo ultimo aggiornamento, non ci sono aggiornamenti delle funzioni già esistenti, ma miglioramenti della gestione di alcune di esse ed alcune correzioni:

  • Lo sketch è stato diviso in più file per migliorarne la menutenzione e la gestione (per chi non lo sa, espandere i file in allegato in un'unica cartella e lanciare il file principale "Ardu_Aquarium_Controller_v3_3_1.ino" l'ide aprirà da solo gli altri ed in fase di compilazione/caricamento crea un unico eseguibile)
  • Sono stati rimappati i tasti DX e SX a causa di un piccolo errore nella realizzazione dei PCB
  • E' stato rimappato il buzzer che ora è connesso al Pin 7 di Arduino
  • E' stata introdotto un nuovo metodo di lettura dei tasti, che ha migliorato il flusso dei dati sul bus I2C
  • E' stata eliminata la libreria IOexp
  • E' stato adottato un nuovo metodo di utilizzo del buzzer, suggerito dal preziosissimo Lesto (grazieeeee :slight_smile: )

Il file con il nuovo sketch è disponibile in allegato a questo msg.

prima di caricarlo però far girare quest'altro piccolo sketch:

#include <EEPROM.h>

void setup()
{
  for (int i = 0; i < 255; i++)
    EEPROM.write(i,0);
}

void loop()
{
}

Che serve unicamente ad inizializzare le celle di memoia della Eprom di Arduino.

Schermata Principale

Vengono visualizzate:

  • Data e ora
  • Temperatura (se la temperatura rilevata scende o sale di 1,5° inizia a lampeggiare e contemporaneamente si attiva un allarme sonoro disattivabile attraverso il tasto ESC)
  • Luce media (viene visualizzata la media dei valori di fading sulle tre linee luci
  • PH e Conducibilità sono finti, ma avevo bisogno di vedere come disporli sul display che a conti fatti non è poi così grande.

Schermata Impostazioni

Come si vede dall'immagine, dalla versione 3.0 dello sketch, è stata adotata la modalita di menù a scorrimento, le voci selezionabili sono;

  • Data/Ora: regolazione dell’RTC
  • Imposta Luci: Rimanda ad un sotto menù dove è possibile impostare il funzionamento delle linee luci
  • Temperatura: Impostazione della temperatura dell’acqua, è stato inserito un range di +/- 1,5°, di temperatura al di fuori del quale, scatta un'allarme sonoro disattivabile premendo il tasto esc, ed in più nella schermata principale la temperatura lampeggia.
  • Info Luci: In questa schermata, viene visualizzato lo stato di funzionamento delle luci.

Impostazione data e ora

Con i tasti dx e sx sposto le freccette sui vari dati, con i tasti su e giù eseguo le variazioni, con ok un prima volta appare "CONFERMA"
Al secondo OK setto l’RTC.

Regolazione temperatura

Con i tasti su e giù regolo il valore della temperatura dell’acqua e confermo, andrebbe migliorata/completata permettendo l'inseriemento di valori di range per un eventuale allarme sonoro, in questo momento, il range esiste ma fisso a 1,5°.

Info Luci

In questa schermata per ogni linea è possibile visualizzare se è accesa o spenta (ON/OFF), la percentuale di fading in relazione alla luminosità massima impostata ed il modo di funzionamento se in automatico "A" o se in manuale "M".

Imposta Luci.

Fotoperiodo L1 , L2 o L3: A queste voci è possibile regolare i fotoperiodi delle tre linee luci:

  • Orario di accensione e di spegnimento
  • Durata del fading sia all'accensione che allo spegnimento (Alba/Tramonto)

Funz/LMax Linee: Questa funzione è presente dalla versione 3.0 dello sketch e da la possibilità di selezionare singolarmente per le tre linee la modalita di finzionamento (manuale o automatica) e la luminosità massima.

Impostazione del fotoperiodo

Come con data e ora, spostando le freccette regolo inizio e fine del fotoperiodo, la lunghezza viene ricalcolata automaticamente e ri-visualizzata ad ogni variazione.

Regolazione durata fading

Si imposta la durata del fading di alba e tramonto e contemporaneamente viene visualizzato il periodo di luce piena

Funzionamento e luminosità massima delle linee

In questa funzione, ci si può spostare tra i vari campi, utilizzando i tasti DX e SX, mentre i tutti e tre i campi i valori vengono variati utilizzando i tasti SU e GIU:

Primo campo: è possibile selezionare la linea su cui decide di operare.

Secondo campo: si può scegliere tra tre opzioni

  • ON: Accensione manuale, avviene in circa 30 secondi se la luminosità è impostata al massimo, è stata fatta questa scelta per non disorientare/spaventare i pesci.
  • OFF: Spengimento manuale o disattivazione della linea, anche questo avviene in circa 30 secondi se la luminosità è impostata al massimo, è stata fatta questa scelta per non disorientare/spaventare i pesci.
  • AUT: La linea funziona in modalita automatica, secondo gli orari di accensione/spegnimento e durata di fading impostati.
    si può scegliere tra tre opzioni:

Terzo campo: In questo campo, regolando il numero delle rampe di fading, viene regolata anche la luminosità massima della linea selezionata.
La pressione del tasto OK, permette di memorizzare in eprom i valori impostati di tutte e tre le linee.

Sono sempre graditi consigli e segnalazioni di errori :slight_smile:

Ardu_Aquarium_Controller_v3_3_1.zip (13.7 KB)