Pages: [1] 2 3   Go Down
Author Topic: Inizio progetto "ARDUINO COMANDA ACQUARIO"!!!  (Read 4847 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao esperti ho cominciato da qualche giorno a studiarmi arduino e ho già realizzato 2/3 sciocchezze con la breadboard!! è una ficata e mi piace sempre di più anche se un po' complicato visto che non conosco il linguaggio di programmazione ma pian piano ce la farò!!

vi spiego tutto ciò che voglio fare, cosi vediamo se qualche buona anima potrà aiutarmi:)
PREMETTO che non ho fretta a realizzare tutto e non mi aspetto ne voglio trovare tutto già fatto.. sennò addio soddisfazione personale no??

allora prtiamo dall'illuminazione:
devo mettere in funzione 1 neon t5 uvb, creare un sistema di alba e tramonto (pensavo con i led come ho già visto in altri post),
e la luce lunare, infine nel periodo invernale, una lampada spot!! qualche consiglio?

poi ci sono le 3 pompe:
1 pompa filtro esterno che al 99% andrà H24
2 pompa rabbocco per acqua evaporata, e che ancrà a rabboccare 1 volta a settimana l'acqua che andrà a toglire la 3^ pompa per il cambio parziale

poi 1 riscaldatore ausiliario che andrà a riscaldare l'acqua per il rabbocco circa mezz'ora prima

per ora comincio con questo che è già tanto per me!!!

poi ci sarà da vedere l'argomento CO2
sonda PH se fattibile?!?
una luce di decorazione immersa in un'anfora azionabile a orari e manualmente
sonda temperatura
il display dove visualizzerò i vari valori, l'ora e data
dei led e cicalina di segnalazione allarmi con eventuale visualizzazione su display

sembra un progetto da pazzi??? può essere e io lo sono e siccome non ho fretta e prima di attivare l'acquario voglio sia tutto perfetto
accetto tutti i vostri consigli e critiche... NO offese
SOTTOLINEO CHE SONO UN NOVELLINO EHH!!!

CIAO GRZIE
Logged

Offline Offline
Sr. Member
****
Karma: 7
Posts: 293
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si può si...ci sono anche dei progetti più o meno già fatti in giro. Ti posto un link ad un ragazzo che si sta cimentanto giusto ora sullo stesso problema...poi c'è google....

http://arduino.cc/forum/index.php/topic,138882.30.html

Anzitutto bisogno capire quanto sai... prima di arrivare all'acquario devi saper accendere con arduino relay, misurare temperature, gestire lcd, tasti... ed anche devi avere un orologio che in arduino non c'è.
gia ti dico che spannometricamente un arduino uno a livello di linee i/o sono probabilmene  appena sufficienti: in base ovviamente a cosa devi fare... ma considera che già il display ti mangia 6 pin i/o... poi uno per ogni tasto (4 tasti mi pare il minimo)... siamo a 10 pin...bisogna vedere poi soprattutto quanti sensori ti servono e quanti relay andrai a comandare.
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset



Anzitutto bisogno capire quanto sai... prima di arrivare all'acquario devi saper accendere con arduino relay, misurare temperature, gestire lcd, tasti... ed anche devi avere un orologio che in arduino non c'è.
gia ti dico che spannometricamente un arduino uno a livello di linee i/o sono probabilmene  appena sufficienti: in base ovviamente a cosa devi fare... ma considera che già il display ti mangia 6 pin i/o... poi uno per ogni tasto (4 tasti mi pare il minimo)... siamo a 10 pin...bisogna vedere poi soprattutto quanti sensori ti servono e quanti relay andrai a comandare.

intanto grazie della risposta:)
allora ti dico che intanto sto seguendo un video tutorial di niktorthenat su you tube che devo dire mi ha già fatto capire abbastanza però sono sempre agli inizzi, sto provando a smanettare un po' da solo adesso..

ho già notato il fatto che come uscite se mi bastano, mi bastano a pelo.
di relay me ne servono 3 o max 4, ho visto degli shild con 4 relay ma non ho capito bene il funzionamento... visto che riportano tutti i pin di arduino sulla parte superiore, come va ad agire lo shild? e ne ho visto anche uno RTC sul quale mi stavo facendo la stessa domanda

ah e per le sonde, quella di temperatura sicuramente e quella del ph non so se sia fattibile
Logged

Offline Offline
Sr. Member
****
Karma: 7
Posts: 293
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


ho già notato il fatto che come uscite se mi bastano, mi bastano a pelo.
di relay me ne servono 3 o max 4, ho visto degli shild con 4 relay ma non ho capito bene il funzionamento... visto che riportano tutti i pin di arduino sulla parte superiore, come va ad agire lo shild? e ne ho visto anche uno RTC sul quale mi stavo facendo la stessa domanda

ah e per le sonde, quella di temperatura sicuramente e quella del ph non so se sia fattibile
non so come sono fatti... sinceramente quelli per i relay non li ho manco mai acquistati: amo i fotoaccoppiatori, se posso uso quelli e mi faccio tutto su una millefori.
Il sensore di temperatura è piuttosto facile: si può andare sia sul digitale che sull'LM35... eventualmente anche su ntc e cose ma penso che per un acquario una delle soluzioni di gran lunga più semplici sia lm35: cerca su google lm35 e arduino e troverai i primi semplicissimi schemi.
Conducibilità: si può fare "pressochè senza sensori" :la difficoltà casomai è la taratura... ph il problema è che le sonde costano una botta di soldi per il resto mi pare che non sono per nulla difficili da interfacciare però direi che uno le prende a suo rischio e pericolo: io non ho esperienza sull'argomento...inoltre questi due parametri (ma parlo da inesperto totale del campo) non li vedo modificabili da arduino: nel senso che arduino può accenderti un led rosso di allarme se il ph è troppo acido/basico ma dopo di che penso tocchi a te metterti li con i carboni goccette acque e cose...

il CO2 come lo misurate?
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


ho già notato il fatto che come uscite se mi bastano, mi bastano a pelo.
di relay me ne servono 3 o max 4, ho visto degli shild con 4 relay ma non ho capito bene il funzionamento... visto che riportano tutti i pin di arduino sulla parte superiore, come va ad agire lo shild? e ne ho visto anche uno RTC sul quale mi stavo facendo la stessa domanda

ah e per le sonde, quella di temperatura sicuramente e quella del ph non so se sia fattibile
non so come sono fatti... sinceramente quelli per i relay non li ho manco mai acquistati: amo i fotoaccoppiatori, se posso uso quelli e mi faccio tutto su una millefori.
Il sensore di temperatura è piuttosto facile: si può andare sia sul digitale che sull'LM35... eventualmente anche su ntc e cose ma penso che per un acquario una delle soluzioni di gran lunga più semplici sia lm35: cerca su google lm35 e arduino e troverai i primi semplicissimi schemi.
Conducibilità: si può fare "pressochè senza sensori" :la difficoltà casomai è la taratura... ph il problema è che le sonde costano una botta di soldi per il resto mi pare che non sono per nulla difficili da interfacciare però direi che uno le prende a suo rischio e pericolo: io non ho esperienza sull'argomento...inoltre questi due parametri (ma parlo da inesperto totale del campo) non li vedo modificabili da arduino: nel senso che arduino può accenderti un led rosso di allarme se il ph è troppo acido/basico ma dopo di che penso tocchi a te metterti li con i carboni goccette acque e cose...

il CO2 come lo misurate?


esatto il sensore lm35 l'avevo già vistob in giro e cmq mi serve per indicare la temp dell'acqua e avvisarmi se è troppo calda/fredda
sonda ph ho sentito che ha un segnale di pochi millivolt e arduino non riesce a leggerlo correttamente, ho sentito che bisogna allegarci un circuitino, e cmq mi serve solo per visualizzare il valore sul display senza dover ogni volta fare il test manuale poi per il resto tocca alle mie manine eh eh..
CO2 devo comandare un'elettrovalvola, però sono ancora un po' inesperto, mi sto informando anch'io, tra piante torba ecc.

i fotoaccoppiatori sinceramente ho capito come funzionano +o- ma non li conosco
« Last Edit: December 30, 2012, 12:11:03 pm by nicola90wii » Logged

Offline Offline
Sr. Member
****
Karma: 7
Posts: 293
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


i fotoaccoppiatori sinceramente ho capito come funzionano +o- ma non li conosco

dagli un'occhiata, compratene una manciata o smonta qualche affare che ne trovi sicuramente... possiamo paragonarli a dei relay come funzionamento ma nel tuo caso andrebbero discretamente meglio dei relay... i relay infatti sono piuttosto lenti ma soprattutto richiedono molta corrente per funzionare ed arduino spesso non è in grado di erogarla direttamente mentre ti accende tutti i fotoaccoppiatori che vuoi: la limitazione è che serve una resistenza per il led di input e in output non puoi attaccarci centinaia di kilowatt ma tu non dovresti avere consumi eccessivi da quel punto di vista.
si le sonde ph mi pare producano pochi millivolt però è da capire quanto pochi siano questi millivolt perchè arduino non è proprio una mrda da quel punto di vista. Casomai si amplifica...
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


in output non puoi attaccarci centinaia di kilowatt ma tu non dovresti avere consumi eccessivi da quel punto di vista.
si le sonde ph mi pare producano pochi millivolt però è da capire quanto pochi siano questi millivolt perchè arduino non è proprio una mrda da quel punto di vista. Casomai si amplifica...


garda le pompe saranno MAX 10 W esagerando e il riscaldatore sui 100/150W troppo?
non dico niente di arduino anzi dico che è fantastico, io ti parlo da inesperto e con tutte le info che ho raccimolato navigando di qua e di la:)
Logged

Offline Offline
Sr. Member
****
Karma: 7
Posts: 293
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


in output non puoi attaccarci centinaia di kilowatt ma tu non dovresti avere consumi eccessivi da quel punto di vista.
si le sonde ph mi pare producano pochi millivolt però è da capire quanto pochi siano questi millivolt perchè arduino non è proprio una mrda da quel punto di vista. Casomai si amplifica...


garda le pompe saranno MAX 10 W esagerando e il riscaldatore sui 100/150W troppo?
non dico niente di arduino anzi dico che è fantastico, io ti parlo da inesperto e con tutte le info che ho raccimolato navigando di qua e di la:)

guarda: il moc 3022 che è un fotoaccoppiatore per 220V a triac di dimensioni modeste mi pare che si gestisce 100 milliampere...  già da solo probabilmente ti tiene la pompa. Per il riscaldatore invece o ricorriamo al relay o ci si mette un modesto triac... io alla fine preferisco sempre la seconda opzione perchè tanto se il relay non è proprio piccolino arduino da solo non lo tiene e spesso si casca di nuovo su un fotoaccoppiatore di supporto o comunque un transistor.
Logged

0
Offline Offline
Faraday Member
**
Karma: 23
Posts: 2797
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quella del fototriac e del triac di potenza è una soluzione più complessa del semplice relè, anche il costo potrebbe essere più alto, dipende da dove compri e cosa. Se usi le breakout sei costretto a comprare quello che c'è in giro, se invece te la cavi con saldature e basette millefori e sai leggere uno schematico quasi sicuramente sceglierai come soluzione definitiva l'accoppiata fototriac+triac.

Ci sono dei triac in TO92 che possono reggere 1A circa, sono presenti in molte schede di lavatrici al posto dei rele per comandare la poma di scarico, l'elettrovalvole ecc. Ma per il motore e resistenza vengono ancora usati i relè. Mentre per potenze maggiori ci sono i BTA600 e nel caso si debba comandare un motore si possono usare le varianti BW BTA12600BW che sono snubber less ed è proprio questo che viene usato nelle lavatrici per regolare il numero di giri, oltre che per l'avviamente soft.

Ciao.

Logged

AvrDudeQui front end per avrdude https://gitorious.org/avrdudequi/pages/Home

Rovereto
Offline Offline
Full Member
***
Karma: 4
Posts: 172
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao! pure io mi sto cimentando nella creazione di un controllo acquario con arduino,
per ora il mio obbiettivo è gestire filtro esterno, 2 luci separate e riscaldatore.

percui sto provando separati il seguente materiale..

sonda lm335 per la temperatura (del quale avevo aperto un post per delucidazioni).
una scheda da 4 relé per gestire filtro luci e riscaldatore.
rtc, per ora e gestione complessiva.

poi dovrebbe arrivarmi in tempi più o meno brevi il controllo seriale per l'lcd 1602 per far visualizzare un pò di info 8temperatura, ora cosa è acceso e spento) all'utente... magari con qualche bottoncino per il controllo manuale.. spegnere filtro, (per cibare i pesci, nel mio caso tartaruga), magari cambio orari da manuale..(per quello ho ordinato lo slot sd.. ma sarà una cosa che implementerò con calma).

il progetto di base è questo, poi è anche facilmente espandibile.. ma vedo che con le 4 cosine cho ho messo io l'arduino UNO mi sta stretto, quindi magari te devi optare per un mega.. o una DUE..

Ti ho mostrato il mio progetto, che sto ultimando, spero in una decina di giorni, forse qualcosa di più perche capitano sempre imprevisti extra arduinali... sarebbe bello creare una cosa fatta bene e magari renderla pubblica in quanto si incontra in giro sempre molta gente interessata, ma quelli che hanno sviluppato il progetto se lo tengono ben stretto sotto la loro vasca.  smiley-roll-blue

Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao! pure io mi sto cimentando nella creazione di un controllo acquario con arduino,
per ora il mio obbiettivo è gestire filtro esterno, 2 luci separate e riscaldatore.

percui sto provando separati il seguente materiale..

sonda lm335 per la temperatura (del quale avevo aperto un post per delucidazioni).
una scheda da 4 relé per gestire filtro luci e riscaldatore.
rtc, per ora e gestione complessiva.

poi dovrebbe arrivarmi in tempi più o meno brevi il controllo seriale per l'lcd 1602 per far visualizzare un pò di info 8temperatura, ora cosa è acceso e spento) all'utente... magari con qualche bottoncino per il controllo manuale.. spegnere filtro, (per cibare i pesci, nel mio caso tartaruga), magari cambio orari da manuale..(per quello ho ordinato lo slot sd.. ma sarà una cosa che implementerò con calma).

il progetto di base è questo, poi è anche facilmente espandibile.. ma vedo che con le 4 cosine cho ho messo io l'arduino UNO mi sta stretto, quindi magari te devi optare per un mega.. o una DUE..

Ti ho mostrato il mio progetto, che sto ultimando, spero in una decina di giorni, forse qualcosa di più perche capitano sempre imprevisti extra arduinali... sarebbe bello creare una cosa fatta bene e magari renderla pubblica in quanto si incontra in giro sempre molta gente interessata, ma quelli che hanno sviluppato il progetto se lo tengono ben stretto sotto la loro vasca.  smiley-roll-blue


Allora ti seguo, con calma, e poi si può rendere il tutto  pubblico così che altri come noi possano fare lo stesso:-)
P.s. anch'io ho una tartaruga, più precisamente una sternotherus carinatus, che crescerà fino a 10 cm più o meno quindi non ha problemi in una vasca da 100 litri con una2o3 pesciolini:-)
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao anche io sto seguendo e contemporaneamente cercando di strutturare il mio progetto di Arduino.
Posso dire quello che so e perdonate se quello che non so ancora non risponde alle vostre domande in modo esatto.
Allora cominciamo con il dire che il ph è la parte difficile....
Come si misura il ph?
Misurarlo non è un problema, esistono sonde di ogni genere e di .. ogni prezzo. Il problema è interfacciare la misura che è + e - mvolt con Arduino che ha un campo di misurazione da zero in su ( se dico giusto)
Esistono degli shield tipo ph-orp o dei lavori fatti su practicalmaker di schede pronte da inserire come shield con presa bnc belli e pronti.
Poi viene la taratura e tutto il resto.

Una risposta sul ph: a noi acquariofili in realtà il ph ci frega relativamente, è che il controllo del ph comporta la riduzione della durezza dell'acqua e l'arricchimento di co2 disciolta. Due parametri molto importanti per le piante e per i pesci.
Quindi tenendo in soglia il ph abbiamo controllato sia durezza che co2.
Il controllo della C02 si realizza con una elettrovalvola a 220 v da collegare ad una bombola di co2, ma questo interessa chi pensa all'acquario. Inizialmente interessa sapere come fare in modo che il rele comandi l'elettrovalvola il resto viene dopo.

Bene il resto serve a controllare la temperatura e qui entra in campo LM35 che governa il riscaldatore, oppure con un sottosabbia due riscaldatori.
Per la gestione luci è tutto sulla gestione del tempo. E quindi tanta bella programmazione.

PROBLEMA PIN
Non so il resto ma con LCD shield e cinque tastini rimangono 5 porte analogiche e 7 digitali libere. In realtà i tastini prendono fra tutti una sola porta analogica divisa su più livelli (vedere su DFROBOT LCDSHIELD).
Rimane per me aperta l'incognita di gestire con uno shield in cascata il ph e interfacciare la sonda lm35, poi gestire le 8 uscite che io piloto con dei rele, i segnali che partono da Arduino e finiscono con apertura o chiusura del contatto a 220 v dove lavora tutto il materiale per acquario.
Io ne ho contati otto 3 luci,2 riscaldatori,1 pompa, mangiatoia e CO2.
Il problema che mi sembra più grosso è gestire tramite LCD la programmazione delle ore di accensione spegnimento e valori ph e Temp ai quali intervenire.
E sapere se riesco a fare a meno del RTC (che non so nemmeno come collegare a questo punto)

Ciao a tutti
Andrea
Logged

Offline Offline
Sr. Member
****
Karma: 7
Posts: 293
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

le sonde ph di solito agiscono come delle batterie: si misura la differenza di potenziale tra un liquido di ph noto (acqua in sali di cloruro di potassio..ph 7) ed un elettrodo posto nell'acqua da misurare dell'acquario... le cariche elettriche devono passare attraverso un vetro speciale che da come ho capito è conduttivo... insomma non è una sonda facilissima da autocostruirsi ed è una sonda da tenere tarato tant'è che con un normale ph-ametro ti danno le soluzioni di taratura.
L'amplificazione dei millvolt non dovrebbe essere un grosso problema: chiaro sarà da comprare un operazionale probabilmente "instrumental" che non costano 2 lire ma non è un grossissimo problema.
Il fatto che tipicamente la sonda ph compari rispetto ad un elettrolita a ph 7 imho è indice che questa sonda produce valori + e -... quindi non sempre positivi.
Non so cosa vi serva sugli acquari: ne quali precisioni ne find'ove tuttavia vi posso dire per "blande" esperienze nel campo delle soluzioni fisiologiche che un conto è il ph ed un conto è la qta di sali discioli che regola l'osmosi: l'acqua di mare è a ph sostanzialmente vicino a 7 come l'acqua levissima e come l'acqua distillata ma se ti fai una flebo di acqua distillata o con troppo sale muori perchè le tue cellule partono di osmosi e si gonfiano fino a scoppiare o si disidratano fino a morire.
Un parametro per valutare l'osmosi è la conducibilità: non saprei creare una scala ma la misurazione è abbastanza banale: quindi io la metterei magari a carattere informativo.
Qualcuno mi aveva detto che il PH indica anche l'inquinamento da "pipi" di pescilini... è una bufala?

Andando nello specifico della gestione dei tasti è vero che si possono mettere i tasti tutti su un ingresso analogico ma per mia esperienza personale non è un grande sistema: in particolare suggerirei di non fare come ho fatto io e di assicurarsi che il contatto del tasto non sia a membrana (come normalmente avviene sulle tastiere commerciali) in quanto queste membrane sono si conduttive ma non straordinariamente conduttive e quindi quando premi il tasto hai una resistenza che dipende da quanto bene hai premuto il tasto: se devi mettere i tasti in dei partitori di tensione leggi dei range sempre molto molto variabili: troppo.

nel link che ho posto sopra con l'utente danielicious si affrontava il montaggio di sensori di temperatura, lcd e modulo orario... il problema iniziale era che i sensori di temperatura 1-wire (non lm35) hanno tempi di risposta non immediati che rallentavano la lettura della dataora: risolto.
Ponevo inoltre il problema dell'alba/tramonto con lampade fluorescenti che non fanno facilmente il fade... però sono molto ignorante in materia e non so se queste albe servono.
Logged

Rovereto
Offline Offline
Full Member
***
Karma: 4
Posts: 172
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Per la questione del ph penso sia veramente rognosa, soprattutto per il settaggio e la tara dello strumento, infatti vedo strumenti da qualche migliaio di euro che ogni tot misurazioni bisogna ritararli con il  liquido apposito...

Io intanto mi rendo utile e vi faccio vedere cosa ho fatto fino ad ora...

La base del mio progetto consiste come detto prima in una scheda da 4 relay, RTC DS1307, e sonda di temperatura.

collegati cosi alla scheda arduino

relay 1 --> filtro -->    pin 4
relay 2 --> luce 1 -->   pin5
relay 3 --> luce 2 -->   pin6
relay 4 --> riscaldatore --> pin7

RTC
SDA -->pin A4
SCL --> pin A5

SONDA TEMP
lm335 --> pin A0

Qui il codice (Compilato ma non ancora testato)
Code:
#include "Wire.h"
#define DS1307_ADDRESS 0x68

const int ora_accensione = 9  ;
const int min_accensione =  30 ;
const int ora_spegni =  17 ;
const int min_spegni =  20 ;
const int Temp_Giusta = 27 ;
const float Margine_temp = 1.5 ;

const int filtro = 4 ;
const int luce_1 = 5 ;
const int luce_2 = 6 ;
const int risca = 7 ;



void setup() {
  Wire.begin();
  Serial.begin(9600);
  pinMode(filtro, OUTPUT);
  pinMode(luce_1, OUTPUT);
  pinMode(luce_2, OUTPUT);
  pinMode(risca, OUTPUT);
  
}

void loop() {
  int Stato_luci;
  int Stato_temp;

  Stato_luci = ContLuci();
  Stato_temp = ContTemp();
  Stampa(Stato_luci,Stato_temp);
  delay(5000);

}

int ContTemp()
{

  double margine_up = (Temp_Giusta + Margine_temp);
  double margine_down = (Temp_Giusta - Margine_temp);
  double temp = Temperatura();
  int stato;

  if (digitalRead(risca)==LOW) {
    stato=0;
  }
  if (digitalRead(risca)==HIGH) {
    stato=1;
  }

  if(stato==0 && temp<=margine_down) {
    Relay(risca,1);
    return 1;
  }
  if(stato==1 && temp>=margine_up) {
    Relay(risca,0);
    return 0;
  }

  return (stato);

}

int ContLuci(){

  int ore=Ora(1);
  int minuti=Ora(0);

  if (ora_accensione==ore && min_accensione<=minuti){
    Relay(luce_1,1);
    Relay(luce_2,1);
    return(1);
  }
  else {
    if (ora_spegni==ore && min_spegni>=minuti){
      Relay(luce_1,1);
      Relay(luce_2,1);
      return(1);
    }
    else {
      if (ora_accensione<=ore && ora_spegni>=ore) {
        Relay(luce_1,1);
        Relay(luce_2,1);
        return(1);
      }
    }
  }
  Relay(luce_1,0);
  Relay(luce_2,0);
  return (0);
}

void Stampa(int Luci, int Risc){
  int ore = Ora(1);
  int minuti = Ora(0);
  double Temp = Temperatura();

  Serial.print("Temperatura: ");
  Serial.println(Temp,DEC);
  Serial.print("°C     ");

  Serial.print(ore);
  Serial.print(":");
  Serial.print(minuti);
  Serial.print("\n");

  if (Luci==0) Serial.print("Luci : OFF ");
  else Serial.print("Luci : ON ");
  if (Risc==0) Serial.print(" Riscalda : OFF ");
  else Serial.print(" Riscalda : ON ");
  Serial.print("\n");

  return ;
}

double Temperatura(){

  double sensorValue = analogRead(A0);
  double tempKelvin = sensorValue*500/1023.0;
  double tempCelsius = tempKelvin-273.0;  
  return tempCelsius;
}

int Relay(int pin,int val){

  if (val==1){
    digitalWrite(pin,HIGH);
    return(1);
  }
  else {
    if(val==0){
      digitalWrite(pin,LOW);
      return(0);
    }
  }

  return 0;
}

byte bcdToDec(byte val)  {
  // Convert binary coded decimal to normal decimal numbers
  return ( (val/16*10) + (val%16) );
}

int Ora(int p){

  // Reset the register pointer
  Wire.beginTransmission(DS1307_ADDRESS);

  byte zero = 0x00;
  Wire.write(zero);
  Wire.endTransmission();

  Wire.requestFrom(DS1307_ADDRESS, 7);

  bcdToDec(Wire.read());
  int minuti = bcdToDec(Wire.read());
  int ore = bcdToDec(Wire.read() & 0b111111); //24 hour time

  if (p==1) return ore;
  else {
    return minuti;
  }

}

Funzioni Implementate:
accensione/spegnimento ad una certa ora/minuti
Controllo della temperatura dell'acqua con relativa accensione/spegnimento del riscaldatore
Stampaggio a seriale di tutti i dati e info stato luci e riscaldatore

Funzioni da Implementare nel breve periodo
Librerie <time.h> e <DS1307RTC.h>
aggiunta pulsanti controllo manuale
aggiunta display informazioni

il progetto è in stato embrionale ma penso che sia una buona base da cui partire per un progetto più grosso.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quindi da quello che vedo hai utilizzato uno shield RTC a cui fai riferimento per la gestione del tempo, e la sonda con LM35 per gestire la temperatura.
Sono due cose che penso di dover fare, per gestire adeguatamente il sistema.
Vedo che la definizione dei tempi di accensione e spegnimento per te è costante, non hai previsto la possibilità di variare nulla se non riprogrammando Arduino.
Io vorrei farlo tramite LCD shield, e la cosa mi appare complessa al momento, almeno per quello che so fare.

due domande:
wire.h
cosa è? da dove viene? penso sia per la gestione della sonda giusto?

pin
RTC e LM35 in tutto usi 3 pin analogici?
Logged

Pages: [1] 2 3   Go Up
Jump to: