WebLog (ou Journal) Thinselin & Co

Calendrier

« juin 2008 »
lunmarmerjeuvensamdim
1
2345678
9101112131415
16171819202122
23242526272829
30

Syndication

jeudi 26 juin 2008

La genèse de l'automate pour aquarium

Voici le premier billet d'une nouvelle catégorie, qui j'espère animera un peu plus ce blog :-p
Cela faisait un bon moment que je souhaitais faire de l'embarqué, "juste pour voir". Le tout était de trouver une idée de projet à réaliser. Ayant dans l'idée de faire un aquarium à la maison, l'idée d'avoir un automate pour le gérer intéralement est plutot séduisante. C'est parti pour le mini cahier des charges:

  • LCD 2 lignes de 16 caractère et 5 boutons pour naviguer/configurer l'automate. Pas de connection PC (série/USB/Ethernet) pour le moment (ce sera pour la V2 LOL )
  • Gestion Température
    • Commande chauffage
    • Capteur température avec un buzzer (et/ou LED) si température trop haute ou trop basse
  • Gestion Lumière Temporelle (gestion par 1/4h de l'intensité avec interpolation)
    • Commande néon tout ou rien
    • Commande LED progressive
  • Gestion pH
    • Commande CO2
    • Capteur pH
  • Gestion Nourriture
    • Commande distributeur
  • Gestion eau
    • Commande pompe ( couplé ou non avec la distribution de nourriture)
  • Gestion renouvellement eau
    • Commandes electro-vanne
    • Capteurs niveau d'eau

Le suivi du développement est ici
Restait à choisir la plateforme. Après de longues hésitations, et pas mal de recherche je me suis fixé sur la famille des AVR d'Atmel. Un projet semblable existe, avec un auteur fort sympathique: l'automate anubias
Reste à assembler le tout, et développer la partie soft en C (pas el temps de me mettre à l'assembleur....). Pour le matériel il existe des platines très sympas, du style butterfly (15 euros avec un LCD !!!) ou bien celle d'elektor et encore bien d'autres. Mais partant sur de l'ATMega128, car il possède 128K de mémoire flash, le choix est plus restreint. Je me suis tourné sur les produits de futurlec. Notamment les AVR-Stamp (bien que ne suivant le format STAMP habituel). Pour les expérimentations, on rajoute la partie hote, un afficheur LCD , un cable série, un programmateur et voilà. Ne pas oublier de commander des composants I2C gratuits chez Maxim (DS1307, DS1631,...). D'autres platines existent chez OakMicro, Olimex, Kanda, etc etc. A vous de choisir la votre !
Niveau budget cela donne: 27.90$ pour la carte hote, 19.90$ pour le proc, 5.90$ pour le programmateur, 11.90$ pour l'afficheur LCD, 2.5$ pour le cable série; soit un total de 68$. Pas mal, non ?
Ensuite vient la partie logicielle. Atmel fournit un environnement très complet avec la suit AVRStudio. Une merveille qui est gratuite (pour nous inciter à venir dans le camp Atmel), et qui peut s'interfacer avec la chaine de développement C pour windows, WinAVR (existe aussi sous linux). On peut alors développer directement en C depuis AVRStudio. On peut également utiliser un IDE plus costaud que celui d'AVRStudio, avec Eclipse et le plugin qui va bien. A noter qu'il existe une multitude de compilateurs payant (CodeVision, IAR,...) dont des versions d'évaluation sont disponibles mais qui sont bridées (taille du code, limitation en librairies,....)
Voilà ce que cela donne après quelques efforts:

Une des raisons du choix de la famille AVR est la communauté, et en particulier le site AVRFreaks qui présente une multitude de projets avec sources (asm, C, basic,...), hardware, collection d'outils, etc etc. J'y suis inscrit, et mes questions restent peu de temps sans réponses. Le reste va suivre....

mardi 17 juin 2008

Général Plouf

Ca y est, la piscine est opérationelle. Après avoir commandé les pièces cassées lors du déménagement (platines à 10 euros pièce, et liner à 250 euros), et préparé le sol (sable + géotextile + polystirène extudé + feutrine) on peut se baigner. La température est montée à 28°C en 2 jours :-p


Reste à attendre que google earth passe au dessus de la maison LOL

Theme original par Stephane Sulikowski modifie par Shinoli

Parse error: syntax error, unexpected $end, expecting ')' in /homez.108/thinseli/www/dotclear/ecrire/tools/bbclone/var/access.php on line 3362