Arduino, l’autre circuit

mardi 27 mars 2012, par Richard TIMSIT

Arduino est une petite carte de développement open source au succès fabuleux. Elle nous donne l’occasion de réaliser qu’il n’y a presque plus de matériel sans logiciel et qu’ainsi le logiciel libre touche potentiellement l’ensemble des objets techniques qui nous environnent.



Arduino, an open-source electronic prototyping platform, is enjoying a tremendous success. As surrounding objects are becoming software driven, free software has a beautiful future, being potentially everywhere.

Depuis quelques années, nous sommes entourés d’un nouveau type d’objets techniques, dits intelligents, ils réussissent plus souvent à nous abrutir ou à nous aliéner qu’à nous faciliter la vie, mais l’évolution du système de production industrielle a ses lois... De nombreux acteurs sociaux tentent d’analyser ce système pour faire des propositions visant à transformer le poison en remède (ArsIndustrialis) ; d’autres se sont emparés de toutes ces techniques numériques pour construire ce qui ressemble plus à un bazar qu’à une cathédrale, mais qui avec le temps s’avère fabuleusement important.


fig. 1 - vue de face du circuit

Le mot libre dans le titre de cette rubrique venait qualifier ce qui avait trait à une activité purement intellectuelle, celle de l’écriture du logiciel. Cette activité s’est avérée de moins en moins immatérielle jusqu’à s’introduire dans tous les objets qui nous entourent et qui commencent à envahir nos corps en de nouvelles formes de prothèses. Le choix d’un objet technique commence donc à dépendre intimement de notre conception de la liberté.
C’est dans ce contexte qu’est né ce tout autre circuit ...
La prolongation du logiciel vers le monde physique paraissait l’affaire de spécialistes et l’apanage d’une industrie lourde. Massimo Banzi avec quelques amis a voulu montrer le contraire. On peut, on veut, on doit pouvoir faire ce que l’on veut avec du logiciel libre ou open source, il n’y a pas de raison de ne pas commencer à le faire aussi avec du matériel. L’idée de mettre à disposition une carte d’interface facilement programmable avec du logiciel libre et facilement réalisable par une petite industrie voire par un électronicien seul, était née. La carte toute faite ne devait pas coûter plus cher qu’une place de cinéma et ne devait rien avoir à envier à tout ce qui se fait de mieux dans le domaine.
Le langage de prototypage rapide mis au point par le MIT destiné à des non-informaticiens (élèves des beaux arts, graphistes ou designers) Processing, logiciel libre mentionné dans l’article du FI SR/11 Les logiciels libres pour vos études et la recherche allait devenir l’outil idéal pour programmer la carte et lui faire faire des choses...
 
 
  Des choses : interroger des capteurs, agir sur des actionneurs, asservir des systèmes, comprendre comment marchent les automates, démystifier les robots et mettre à la portée de tous la matière même de ce qui nous environne. Apprendre à pratiquer les objets techniques comme des instruments pour refuser un destin de consommateur de marchandises jetables, tel est le sens que prend ce projet pour tous ceux qui, de plus en plus nombreux, empruntent ce circuit.
Grâce à un câble USB la carte se connecte à un ordinateur (Linux, Windows, Mac) sur lequel il suffit d’installer le logiciel de développement disponible sur le site d’Arduino pour immédiatement pouvoir lui faire faire ces choses dont nous parlions. La carte possède une quantité de ports sur lesquels on branchera les capteurs et actionneurs dont on aura besoin pour réaliser son projet. Mesurer une température, une pression, l’humidité ou la radioactivité ambiante  ? Faire tourner des moteurs, programmer des LED RGB comme celles proposées par ThingM  ? Tout cela devient facilement réalisable si l’on n’est ni électronicien ni informaticien. Le câble USB fait fonction de cordon ombilical pendant la programmation. C’est lui qui alimente la carte. Ensuite, si le but du projet n’est pas de fournir des informations à l’ordinateur, le circuit devra être alimenté pour réaliser de façon autonome son programme. Les artistes qui ont osé suivre ces pistes ont réussi à réaliser leurs désirs les plus simples, et ont trouvé l’aide nécessaire ou les partenaires adéquats quand les projets devenaient plus ambitieux.
Comme on pouvait s’y attendre les hackers sont venus aider l’équipe initiale à démontrer l’utilité de la carte dans mille et une situations, en traduisant de la documentation, en produisant des tutoriaux dans toutes les langues pour tous les âges, en organisant des séances pratiques d’initiation au circuit, des enseignants et pas des moindres sont d’ailleurs venus leur porter main forte. Des revues comme Make ne sortent plus un numéro sans qu’un article ne soit consacré à cette carte magique. De multiples petites sociétés rivalisent d’audace et de créativité pour proposer des composants utilisables avec un Arduino ou des cartes plus performantes avec la même licence ouverte (Snootlab->http://shop.snootlab.com/]). Les fabricants de composants électroniques se font un plaisir de fournir les schémas d’interfaçage de leurs produits avec un Arduino pour en démontrer les qualités et la facilité d’emploi.


fig. 2 - le dos du circuit

Il n’est pas dans mon intention de donner un mode d’emploi ou des exemples d’utilisation de la carte dans cet article, les moteurs de recherche ramènent des références d’une trop grande richesse par rapport à ce que je peux donner ici. Le contenu du site du projet est exemplaire de ce qu’un travail collaboratif peut offrir. Je voudrais cependant vous inviter à oser vous lancer sans vous ruiner, car Massimo a tenu son pari.
L’éclairage est en pleine révolution, les LED offrent de nombreux avantages qui surpasseront bientôt les inconvénients qu’un enseignant de l’EPFL, descendant direct des lumières a su mettre en évidence dans un beau petit livre. Le schéma donné par la société ThingM pour programmer les composants de la famille BlinkM, dont j’ai donné les références un peu plus haut, avec un Arduino montre bien la simplicité à laquelle on peut arriver.Moyennant quelques petites astuces de conception et de programmation, il est possible de placer les platines de LED directement sur un bornier de l’Arduino pour les programmer. Utiliser un ou plusieurs BlinkM (MinM) pour se fabriquer un éclairage original dont la lumière variera dans le temps selon un certain programme avec des couleurs bien définies devient extrêmement simple, il suffit d’insérer ce qui deviendra la source lumineuse sur l’Arduino comme indiqué dans les schémas et de les programmer sur son ordinateur ...

BlinkM MaxM BlinkM BlinkM MaxM
fig. 3 - montage d’un BlinkM sur Arduino
On peut aussi utiliser l’Arduino pour programmer un MaxM (toujours de ThingM) et en faire un gradateur de bande à LED RGB à anode commune. On insère la platine master d’un MaxM pour la programmer afin qu’elle remplisse la fonction désirée. Une fois celle-ci séparée de l’Arduino, alimentée et pourvue de ses trois potentiomètres on a fabriqué un nouvel objet technique recyclable pour une tout autre application si besoin.


fig. 4 - master de MaxM monté comme un MinM


fig. 5 - gradateur terminé et autonome
Les modules de la société ThingM sont des ensembles de trois LED montées sur un petit circuit autour d’un microcontrôleur dont la qualité du logiciel fait la richesse du composant. Ce circuit n’est pas du open hardware ... mais il n’a pas fallu attendre bien longtemps pour qu’un projet se constitue et propose une alternative open source au logiciel embarqué sur le composant et open hardware pour réaliser soi-même un dispositif de ce genre ...
Quand Massimo Banzi a obtenu le prix Ars Electronica en 2006, il devait être certain d’avoir conçu un instrument pédagogique prometteur meilleur que toutes les cartes de développement existantes. Le choix d’ouvrir la description de la carte et de mettre celle-ci sous une licence Creative Commons a permis de donner une vie au projet. Aujourd’hui force est de constater que cette démarche inaugure un tout autre circuit en ouvrant de nouvelles voies. Les articles open hardware->http://en.wikipedia.org/wiki/Open_h...] et matériel libre de Wikipédia montrent parfaitement que nous sommes désormais de plain-pied dans un nouveau paradigme.
Cette toute petite histoire débutée dans un bar d’une petite ville du nord de l’Italie démontre le fabuleux instrument d’émancipation que représente la conjugaison de l’ouverture du logiciel (et du hardware ) avec le développement d’Internet.
Du Fablab de Lucerne, au futur Fablab de Neuchâtel, en passant par les Hackerspaces de Lausanne ou de Genève, vous aurez toujours les moyens de donner jour à vos idées.
L’ère numérique dans laquelle nous sommes a ses maux terrifiants, elle a aussi ses remèdes miraculeux.


fig. 6 - l’Arduino à l’oeuvre

Références

L’article comporte de nombreuses références qui vous conduiront à en trouver bien d’autres. J’en ajoute encore deux concernant un sujet dont je n’ai pas parlé, la liaison entre un circuit Arduino et un smartphone Android...


Article du FI-EPFL 2012 sous licence CC BY-SA 3.0 / R. Timsit

Documents joints


Richard TIMSIT

FI No 3 du 27 mars 2012

Mots-clés

Accueil du site