====== Un programmateur horaire à mémoire avec Arduino ======
Un morceau du projet [[http://dominiqueleroy.info/blog/?p=341 Inougarden ]] , Dominique Leroy
Avoir une petite boite qui allume et éteint les machines par commande et programmation:
* un mini arduino pro 5v a 2€
* une horloge rct i2c genre DS1307 2€
* ex http://www.miniinthebox.com/fr/arduino-i2c-rtc-ds1307-ds1307-24c32-temps-reel-module-horloge_p903366.html
* ex http://www.ebay.com/itm/DS3231-AT24C32-IIC-module-precision-Real-time-clock-module-memory-module-Arduino-/400503978923?pt=LH_DefaultDomain_0&hash=item5d3fe5bbab
*
* une mémoire AT24C256 EEPROM I2C 4€ ? si pas dans le module rtc
* http://www.miniinthebox.com/fr/at24c256-eeprom-i2c-module-de-stockage-memoire_p1240872.html
* un bouton de mise en route
* un module relais 1 voie
* http://www.miniinthebox.com/fr/arduino-5v-module-de-relais-pour-le-developpement-home-control-appliance-smc_p903299.html
* http://www.gotronic.fr/art-relais-bistable-g6bk-5v-4016.htm
* http://www.omron.com/ecb/products/pry/121/g6b_111.html
* http://omronfs.omron.com/en_US/ecb/products/pdf/en-g6b.pdf
G6BK-1114P-US: 1-pole Double-winding Latching Model
1 2 3 4 S:Set coil
+ + + + R Reset coil
S R --/___
+ +
6 5(+)
fonctionnement:
- impulsion 7ms sur 1(-) et 6(+) => 3 connecté à 4
- impulsion sur 2(-) et 5(+) => 3 et 4 déconnectés
il y aussi en 3v :{{:arduino:switch_latch-bistable.jpg?200|}}
Sur l'arduino I2C sont sur les Pins 4 ( et 5
====== Logiciel ======
**Ressources** :
* https://github.com/JChristensen/DS3232RTC
* http://playground.arduino.cc/Code/Time
* http://arduiniana.org/libraries/streaming/
modif date en tapant 1:14:09:25:13:00:00
première version sans alarm : {{:arduino:proghoraire.ino|}}
une autre avec capteur humidité en plus RHT2 : {{:arduino:progheure.ino|}} ( attention heures fixées )
{{:arduino:makefile.txt|}} a utiliser avec Arduino.mk
Usage :
* 1 mode mise à l'heure ex 1,14,10,24,15,58,12, pour 2014 octobre 24 15:58:12 h:m:s
* 2 mode alarme ON horaire du jour ex 2,17,16,30, pour tous le 17h16 et 30" tous les jours allumé
* 3 mode alarme OFF horaire du jour ex 3,17,16,00, pour tous le 17h16 et 00" tous les jours éteind ( les secondes ne servent pas )
* 4 mode alarme ON heure et jour du mois ex 4,17,16,30,22 pour tous le 17h16 30" le 22 du mois allumé
* 5 mode alarme OFF heure et jour du mois ex 5,18,16,30,22 pour tous le 18h16 30" le 22 du mois éteind ( seconde sans importance )
* 6 mode delais en seconde avant ON maxi 120 sec ex 6,20, pour 20 secondes avant ON
* 7 mode delais en seconde avant OFF maxi 120 sec ex 7,200, pour 200 secondes avant OFF
* 9 mode RAZ des alarmes
attention la fonction délais est un peu triviale , c'est un bête pause, donc il faut en attendre la fin pour récupérer la main... à améliorer ;-)
====== Discuter avec l'arduino ======
Arduino-serial est la pour nous ;-)
* https://github.com/todbot/arduino-serial/
{{:arduino:arduino-serial.tgz|arduino-serial pour arm}}
======= Piste 2 avec module réseau =======
Plutôt que d'utilisé un module RTC qui sauvegarde l'heure par une pile et si l'installation commandée est sur le réseau (LAN pour le moment) on peut penser
* un mini arduino basse conso ( 8 MHz 3,3v )
* un module ethernet
* un relais bistable
* une alimentation POE ( par le réseau )
* l'heure vient d'un serveur ntp
* la programmation se fait par le réseau et donc est accessible par d'autre.
* l'alimentation est indépendante de l'installation commandée