Introduction à l'électronique dans un context artistique


Électronique simple/sans microcontrôleur, microcontrôleurs, micro-ordinateur, ordinateur.

La différence entre un microcontrôleur et un micro-ordinateur est principalement sa capacité de calcul et habituellement un ordinateur aura un système d'exploitation. La différence entre un ordinateur et un micro-ordinateur est sa grandeur.

  • Électronique simple, c'est à dire oeuvre avec lumière, son ou moteur, qui n'utilise aucun processeur.
  • Électronique sans microcontrôleur, oeuvre qui comporte de l'électronique de niveau complexe mais sans aucun processeur
  • Électronique avec microcontrôleur
  • Electronique avec micro-ordinateur

Le microcontrôleur

  • Entrées (capteurs, data)
  • Traitement de données par un programme
  • Sorties (lumières, mouvement, sons, data)
entreeTraitementSortie

Les limites d'un microcontrôleurs: quoi prendre en considération pour choisir le bon

  • Nombres d'entrées/sorties
    Si un microcontrôleur n'a pas assez d'entrées ou de sorties pour un projet il faudra utiliser un autre ou plusieurs microcontrôleurs.
  • Sa grandeur, sa forme, ses connecteurs
    Les microcontrôleurs se trouvent en toutes sortes de grandeurs. De plus certains ont des trous pour des visses, certains non, certains sont plus solides. Certains ont une forme et des connecteurs qui sont compatibles avec des modules ce qui peut simplifier un projet. Certains on un port USB intégré ce qui simplifie la programmation.
  • Capacité de son microprocesseur
    Si la capacité du microprocesseur d'un microcontrôleur n'est pas suffisant il faudra soit optimiser son code, choisir un microcontrôleur avec un microprocesseur de plus grande capacité ou changer vers un micro-ordinateur.

    Typiquement, tout ce qui attrait à la photographie, l'analyse d'image, le vidéo devra utiliser un micro-ordinateur ou un ordinateur. Pour l'analyse du son, ajouts d'effets il est possible qu'un microcontrôleur ne soit pas suffisant non plus. Pour l'analyse de grandes quantités de data, comme pour le machine learning et l'intelligence artificiel il faudra aussi un ordinateur.

Entrées

  • capteur, présence/distance: ultrason, capteur capacitif, LIDAR, ToF, senseur de lumière, PIR etc...
  • capteur de touché, interrupteur, potentiomètre, capteur de pression, capteur capacitif etc...
  • capteur d'éléments, température, pression atmosphérique, de certain gaz etc...
  • capteur de mouvements, accéléromètre, interrupteur au mercure, gyroscope etc...
  • capteur de lumière, IR etc...
  • capteur de vitesse, débitmètre etc...
  • biocapteur, cardiaque, onde alpha etc...
  • capteur de son, microphone, piézo-électrique etc...
  • data

Sorties

  • lumières, LEDs et autres lumières demandant un faible courant
  • moteurs, ventilateurs, pompes et autre moteurs CC
  • moteurs pas à pas, moteurs sans broches
  • solénoïdes, valves, relais solénoïdes permettant de contrôler lampes puissantes, électroménagers ou n'importe quoi qui peut être allumé avec un interrupteur
  • data
  • son
entreeTraitementSortie

Traitement des données (microcontrôleur Arduino)

Arduino est une cartes électroniques matériellement libre (open hardware) programmable à partir de l'environment de développement (le logiciel) Arduino. Sur ces cartes il peut y avoir des connecteurs et quelques composantes mais il y a principalement un microcontrôleur. Arduino est une compagnie Italienne qui date de 2003.

Arduino a aussi une communauté, des forums etc... de patenteux et patenteuse d'électronique et de programmation, des inventeurs et inventrices, des codeurs et codeuses qui partagent leurs projets et connaissances.

Arduino a une quinzaine de cartes, et il existe une centaine de cartes compatibles avec le logiciel Arduino.

Il existe de nombreux Shield et modules qui sont compatibles avec les cartes Arduino qui permettent de facilement lire des capteurs ou de permettre de contrôler une grande variété de lumières, moteurs, solénoïdes, relais etc...

Mes préférés!

  • Teensy
    J'utilise souvent Teensy LC qui est une carte compatible Arduino. Je la préfère à cause de sa stabilité, sa petite grandeur, la qualité de communauté spécifique au Teensy et de la qualité de la documentation. J'utilise d'autres modèles de Teensy quand j'ai besoin de plus de processeurs quand je fais de l'audio.

  • Arduino
    Chez Arduino, je préfère personnellement la Arduino Leonardo car elle est compatible avec beaucoup de Shields et peut être vu en tant qu'interface d'un ordinateur (HID, Human interface device), soit souri, clavier etc... Beaucoup de documentation en ligne utilise la Arduino Uno qui est très similaire. La Arduino Uno est un bon départ pour beaucoup de projets.

  • Adafruit
    Adafruit est un compagnie à New York qui offre une qualité de matériel et de documentation. À noter, la série de cartes compatibles avec Arduino qu'elle nomme Feather (et ses shields qu'elle nomme FeatherWing), les cartes et modules Wearable.

    Ainsi que plusieurs modules, comme les modules pour les moteurs.

  • Sparkfun est un autre endroit où trouver des modules et de la documentation de qualité

Où acheter?

Arduino est basé en Italie. Les prix sont chers et la livraison assez lente.

On peut acheter à Sain-Jérôme et Saint-Eustache chez Addisson Electronique, ou en ligne. Leur sélection est cependant restreinte.

Roboshop est un site en ligne mais leur location est à Mirabel.

À Montréal, le Addisson est plus intéressant. Abbra est le magasin physique avec le plus de choix. Grande sélection de module d'apprentissage.

Aux États-Unis, on peut acheter chez Adafruit, Teensy, Sparkfun, Digikey, Newark, Mouser.

Asie (moins cher mais il faut être patient) Amazon (beaucoup d'électronique sur Amazon viennent de magasins qui sont en Asie), Tada electronic, AliExpress, Banggood, dx.com, ebay. Je préfère ebay personnellement.

Achat d'électronique, environment et éthique
La très grande majorité de l'électronique est fabriqué en Chine. Il est très difficile voire impossible de connaître à quel point un produit a été éthiquement produit. Cependant, la fabrication de la grande majorité des des composantes est automatisés et l'air doit être propre donc les conditions sont habituellement meilleure que pour d'autres produits à part peut-être lorsque les soudures sont faites à la mains. La partie de la production qui est probablement la pire sont les mines et presqu'aucun producteur parle de la provenance des matériaux de base. Il est donc pas faux de penser, quoi que discutable, que d'acheter directement en Chine n'est pas habituellement moins éthique que d'acheter ici.

L'achat de pièces au Canada par rapport à la Chine peut parfois être 5, 10 ou même 20 fois plus cher. Dans un contexte artistique, ma décision est de choisir mes produits dans un magasin locale où je peux acheter facilement à la dernière minute si quelque chose brise mais d'acheter en Asie, particulièrement pour les achats en grand nombres. Je fais aussi mes choix de pièces en les achetant localement. Il est important d'avoir au moins une partie de nos achats localement pour garder nos magasins locaux, et encourager l'économie local.

Comme Arduino est matériellement libre(open hardware), il est possible à tous de fabriquer une Arduino. Il est donc possible et éthique d'acheter des clones en ligne à très bas prix. Cependant, acheter chez Arduino permet d'encourager le développement. Certains clones sont de meilleur qualité que d'autre. Certains clones demande d'installer des library adaptées.

Si on veut éviter les contrefaçons de pièces électroniques, Digikey est un bon point de départ. Adafruit produit ses propres modules aux États-Unis.

Pour éviter de recevoir beaucoup de colis et ainsi éviter le transport et l'emballage de plusieurs colis, j'essaie tant que possible d'acheter plusieurs produits au même magasin. Ebay, Amazon et Ali Express sont des sites de multiples magasins et il faut trouver la page d'un seul magasin et essayer de s'y restreindre.

Presque tous les magasins en ligne offre la possibilité de laisser un commentaire. J'essaie de laisser un commentaire à chaque fois que je magasine en ligne. Il faut penser aux gens qui travaillent au service à la clientèle de l'autre côté de notre commande, et un commentaire est une façon d'entrer en contact avec eux, de la politesse de base que l'on n'oublierait jamais lorsqu'on est dans un magasin local. Ce commentaire me permet habituellement d'avoir un meilleur service par la suite, un envoie plus rapide peut-être ou un bonbon et un petit mot dans ma boîte.

Quant à l'emballage? À notre magasin local il est maintenant normal de ne pas prendre de sac. Cependant, les commandes en ligne augmente énormément à chaque année et la pression du publique pour une meilleure gestion de l'emballage est peu présente. Je spécifie maintenant que j'apprécie les emballages réutilisés, réutilisable, compostable et recyclable. Ce commentaire ne fonctionne pas tellement bien avec les grandes compagnies, cependant lorsque j'achète directement en Chine, sur Ebay ou AliExpress, ce sont de petites entreprises de quelques personnes qui se sont par exemple spécialisés dans les senseurs compatibles avec Arduino ou les pompes etc... Lorsque je rentre en contact avec ces gens, leur réponse est habituellement très bonne. J'ai reçu des pièces protégés par des journaux de Hong Kong, ce qui est plus amusant que du popcorn de styromousse, et j'ai aussi une fois convaincu une petite entreprise de changer sa façon d'emballer pour quelque chose de plus environnementale.


Initiation à la programmation Arduino

La programmation des cartes Arduino se fait habituellement en C/C++ dans le logiciel Arduino.

Il existe une grande quantité de code dans les exemples et en ligne qui peuvent nous aider à partir pour n'importe quel projet. Les forums sont remplis de gens qui sont prêts à aider.

Premier pas avec Arduino

  • Installer Arduino (télécharger ici), et allumer le programme
  • Branchez la carte Arduino en USB
  • Assurez-vous que le bon Board/Carte et le bon port soit sélectionnés dans le menu Tools/Outils
  • Dans File->Exemples vous allez trouvez une grande liste d'exemples qui peuvent être utile pour toutes sortes de projets. Pour commencer, ouvrir Blink
  • Ici on peut décortiquer ce code
  • Cliquez sur Upload
  • Après quelques secondes, la LED sur votre carte Arduino clignotera

En apprendre plus

Il existe une grande quantité de cours en ligne d'initiation à la programmation Arduino. Ici une référence en Français pour commencer et une grande quantité de liens pour se spécialiser. Évidement le site d'Arduino lui même, en anglais. Et ici un initiation à la soudure électronique.

Engager quelqu'un pour faire le code

J'encourage tous les artistes à apprendre à coder elles-mêmes ou eux-mêmes. Cependant, tout le monde n'a pas le temps ou l'envie. Il est donc possible d'engager. Peu de codeurs et de codeuses travaillent à faire du code Arduino en temps plein. Il faut donc trouver quelqu'un qui s'y connaisse suffisamment pour votre projet. À moins d'un projet très complexe, je conseille personnellement de trouver un ou une artiste qui travaille avec Arduino et qui peut travailler sur votre projet. La communication est alors plus facile et efficace. Il existe des groupes en ligne Arduino sur toutes les plateformes de média sociaux. Trouver un groupe ou une page avec des artistes travaillant avec Arduino et postez les grandes lignes de votre projet, et que vous voulez engager quelqu'un. Vous allez alors avoir des recommandations. Les différents palliés de conseil des arts ont aussi parfois des noms.