Ciao di nuovo a tutti, su suggerimento di mio papà, voglio utilizzare Arduino per poter accendere e spegnere una lampada o un qualsiasi utilizzatore a 220 V in determinati orari della settimana.
Quindi ad esempio:
– il lunedì voglio che la mia lampada si accende alle ore 8.15 fino alle 9.40, il pomeriggio invece dalle 17.10 alle 17.45.
– il martedì dalle ore 9.20 alle ore 10.50
– il mercoledì dalle ore 10.00 alle ore 11.00 e nel pomeriggio dalle ore 15.10 alle ore 15.45
e cosi via, fino a domenica
Per fare questo mi sono procurato il chip DS1307: è un RTC (Real-time clock) molto economico che permette di tenere traccia del tempo e della data.
Inoltre è provvisto di una batteria a tampone che garantisce il funzionamento dell’orologio interno anche in assenza di alimentazione esterna.
E’ possibile colloquiare con il chip tramite protocollo I2C, quindi con la libreria Wire.
Il collegamento fra arduino e il chip è molto semplice, come da foto sottostante:
Riepilogando:
PIN Arduino | PIN DS1307 |
5 V | 5 V |
GND | GND |
Pin Analogico 4 | SDA |
Pin Analogico 5 | SCL |
I collegamenti fra Arduino e il chip variano a seconda del modello di Arduino (uno, leonardo, ecc).
Infatti i PIN SDA (data line) e SCL (clock line) differiscono come da link precedente.
Board | I2C / TWI pins |
Uno, Ethernet | A4 (SDA), A5 (SCL) |
Mega2560 | 20 (SDA), 21 (SCL) |
Leonardo | 2 (SDA), 3 (SCL) |
Due | 20 (SDA), 21 (SCL), SDA1, SCL1 |
Vedremo nel prossimo post come gestire la date ed ora e come poter utilizzare queste informazioni per poter accendere quando desideriamo un dispositivo.
Alla prossima!!!