Une fois n’est pas coutume, et sans vouloir céder à la tendance des déballages de produits qu’on rencontre de plus en plus sur la partie fadasse de la blogosphère 2.0, je vais exceptionnellement publier quelques photos d’un déballage maison et d’un petit test de matériel. Car j’ai eu la chance de me faire prêter, comme l’indique le titre, un Arduino ! Et même plusieurs !
Un grand merci à Romain pour m’avoir spontanément proposé de tester ce merveilleux matériel.
Mais je vois déjà mes (trois) lecteurs déconcertés, à la limite du décrochage, qui se posent des questions. Et je lis sur leurs lèvres : C’est quoi, un Arduino ?
Un Arduino, c’est un peu le rêve des bidouilleurs en herbe. C’est une plate-forme électronique open-source pouvant être programmée et interfacée avec de nombreux autres systèmes, par de nombreuses possibilités de communication. C’est encore trop vague ? Alors disons que c’est une carte qui permet à des bidouilleurs de faire communiquer très facilement des systèmes informatiques divers et/ou/avec des systèmes électroniques divers. Comme avec le Meccano, les possibilités sont infinies.
Il y a quelques mois en arrière, dans la même optique de bidouillage, mais dans un registre un peu différent, j’avais acheté un PIC et un peu de matos pour le programmer. L’ennui, c’est que même si un PIC est hyper flexible dans sa programmation, il n’en reste pas moins dénué de périphériques, et il faut donc avoir des connaissances un peu plus que basiques en électronique pour piloter des appareils externes. Je comptais d’ailleurs me limiter au pilotage de circuits TTL et de quelques LED avec cette puce.
Mais l’Arduino change tout. Disposant de bibliothèques pour la programmation, flashable par USB, connectable à différents modules dédiés et a des prix raisonnables, et enfin open source, le dispositif est très séduisant. Ça tombe bien, je me disais que ça serait le périphérique parfait pour gérer une installation domotique. Par exemple, on pourrait imaginer de lui greffer un détecteurs de gaz, des relais électriques, ou des détecteurs de portes ouvertes, ou même plusieurs de ces composants en même temps.
On pourrait imaginer plusieurs Arduino communiquant dans la maison ou l’appartement en mode maître/esclave via des liaisons RF.
On pourrait imaginer le maître relié au réseau local grâce à un module Ethernet, pilotable ou interrogeable via ce biais. Et on pourrait même envisager un affichage des information sur un écran à cristaux liquides, TFT, ou même un touch screen ! Il y a vraiment de quoi s’amuser.
À titre d’exemple, Romain voulait se servir de l’Arduino pour piloter ses radiateurs électriques, de manière automatique en fonction de l’heure, ou à la demande. Il est parti sur un petit bout de code que j’ai un peu étayé durant la période de prêt, afin d’obtenir un draft d’interface de pilotage via un navigateur web.
Pour mes essais, je suis parti avec le minimum de matériel : 1 Arduino, 1 shield Ethernet, une batterie, un câble USB. Et pour le confort : un switch, des câbles RJ-45, un PC pas trop à la ramasse et mes petits doigts pour coder. 🙂
Grâce au module Ethernet et aux bibliothèques qui gèrent son fonctionnement, je suis arrivé à obtenir en quelques lignes de code un petit serveur web personnalisé sur une carte électronique autonome de 10cm de long !
OK, les inconditionnels de l’embarqué et du temps réel me hurleraient dessus en voyant le code, tellement j’ai développé ça comme un porc en codant avec les pieds et dans la hâte. Mais le draft fonctionne et démontre les possibilités étonnantes qu’on peut obtenir de ce hardware en quelques minutes.
Dans mon cas, les radiateurs ne sont bien sûr pas branchés. Ça ne servirait à rien, de toutes façons. Je fonctionne au chauffage central.
Une petite réflexion pour finir, sur les optimisations possible d’un tel système : Compte tenu de la mémoire limitée dans ce type de matériel embarqué, on pourrait imaginer que l’Arduino renvoie simplement une page XML, donc non verbeuse et réduite au minimum, qui serait formatée via une XSL externe, et qui proposerait tout l’habillage CSS et Ajax pour se la péter quand on montre à ses potes comment on fait du remote-heating-control depuis le boulot. 🙂
C’est décidé, je mets l’Arduino sur ma liste de courses.
Laisser un commentaire