[AUDIO_VIDE] Bonjour. Les LED permettent de réaliser de très jolies enseignes à motifs fixes de manière très simple que nous pouvons ensuite animer. Je vais vous expliquer le principe de ces enseignes à motifs fixes et le découpage en segments. Nous verrons ensuite des schémas de commandes basés sur des transistors et comment relier des LED en série et en parallèle, et finalement nous parlerons de programmation de ces animations. Prenons par exemple un morceau de plexiglas, faisons des trous selon les motifs que nous voyons ici et nous réalisons une enseigne lumineuse qui annonce un hôtel. Voici un autre exemple qui pourra être mis devant une pharmacie. L'idée va consister à regrouper les LED en motifs. On pourrait par exemple avoir un premier groupe de LED qui serait le cadre, un groupe de LED par caractères. Pour cette enseigne, voici un exemple de la manière dont nous pourrions regrouper les LED. On se souvient qu'une LED normale consomme approximativement 10 milliampères. Le microcontrôleur, lui, peut fournir 10 à 20 milliampères sur chacune de ses sorties. Et encore il y a des limites pour un total de courant pour tout le microcontrôleur. On voit donc qu'il va falloir utiliser un élément d'amplification, et ici on utilisera tout naturellement le transistor. Voilà ici le transistor, avec son émetteur connecté à la masse, un transistor N P N. Dans le circuit de collecteurs, on place plusieurs diodes lumineuses avec chacune sa résistance de limitation, et on va pouvoir allumer ou éteindre l'ensemble des diodes lumineuses en faisant passer du courant dans la base du transistor, et pour cela on utilise une broche du microcontrôleur et une résistance de limitation de la base. Il suffira d'avoir suffisamment de courant pour saturer le transistor. Pour éviter d'utiliser une résistance de limitation par diode lumineuse, et je rappelle que c'est aussi de l'énergie qui est gaspillée, on va pouvoir utiliser ce montage avec une seule résistance pour plusieurs diodes lumineuses. Alors bien entendu, il faudra une tension suffisante. Si je mets par exemple ici 12 volts, je vais pouvoir mettre cinq LED de couleur rouge dont on se souvient que la tension directe est d'environ deux volts. Même avec un transistor entrée de gamme comme le B C 337 qui est capable d'avoir un courant de collecteur de l'ordre de 500 milliampères, il est possible d'avoir un nombre de branches qui est jusqu'à 50, et s'il y a cinq LED par branche ça fait un joli total de 250 LED commandées par un seul transistor et une broche de microcontrôleur. Pour calculer cette résistance, il va falloir utiliser la loi d'Ohm. On peut estimer la tension qui est là . Si j'ai 12 volts ici, si j'ai cinq fois deux volts, il va me rester deux volts. Deux volts, 10 milliampères, je peux calculer la résistance correspondante. Comme en fait je ne sais pas exactement la tension directe, ce que je vais faire c'est que je vais mettre la valeur calculée, je vais mesurer la tension donc calculer le courant et éventuellement ajuster la valeur en conséquence. Selon les couleurs, il sera peut-être nécessaire de faire varier le nombre de LED par branche et évidemment d'adapter également les résistances de limitation de courant. J'aimerais juste signaler que la question du câblage peut devenir relativement importante. Chaque groupe de LED, ici c'est un petit groupe mais on peut avoir des groupes évidemment beaucoup plus importants, consomme un certain courant, donc il y aurait en principe le même courant ici, ici et là , et bien entendu aussi à travers chacun de ces transistors, mais selon le câblage on va totaliser des courants, soit du côté moins, soit du côté plus. Il faudra donc soigner le câblage, tant dans cette partie que dans cette partie, là où le courant est le plus important, pour éviter des chutes de tension. La programmation des animations semble a priori extrêmement simple. C'est presque aussi simple que le tout premier programme que nous avons écrit qui faisait clignoter une LED. On va faire alterner la mise d'une ou de plusieurs LED dans un certain état et des délais, des attentes. Ici on voit qu'on va allumer la première, la deuxième et cetera, donc les huit LED pour former un petit chenillard. C'est une animation très classique sur des enseignes lumineuses. Ici, on attend un moment que toutes les LED soient allumées, puis on fait clignoter l'ensemble du mot pour le mettre bien en évidence, puis une petite pause avant la reprise de l'animation. Mais cette apparente simplicité cache en fait le fait qu'il est souvent assez difficile de programmer des animations. Les programmes deviennent souvent extrêmement longs. Si on avait utilisé des digital write au lieu d'utiliser cette instruction, eh bien un nombre important de mémoire, d'octets, serait utilisé à chaque appel et on serait limité pour un microcontrôleur donné à des animations limitées. Lorsqu'on a beaucoup de sorties, on cherche souvent à faire des animations relativement complexes, qui risquent donc de prendre beaucoup de place en mémoire. Ici, on a fait un petit peu mieux en utilisant les appels directs sur les registres du microcontrôleur, mais malgré tout on va gaspiller beaucoup de place et surtout les programmes vont très rapidement devenir illisibles. Bien entendu on peut créer des procédures spécifiques. Ici, par exemple, j'aurais pu utiliser la procédure chenillard ajoute avec un paramètre 200 qui est donc le cinquième de seconde, 200 millisecondes, avec ici une boucle for qui, successivement, va ajouter donc va allumer une LED supplémentaire sur le i-ième rang pour i qui va de zéro jusqu'à sept avec un délai entre deux qui est égal au paramètre d'entrée de l'attente. On peut donc ainsi écrire des animations par des procédures et c'est une voie qui peut être explorée. Donc les programmes peuvent devenir rapidement longs, peu lisibles, dépasser même la taille mémoire du microcontrôleur, et on explorera d'autres possibilités comme par exemple la création d'un langage spécifique pour une application donnée qui permettra d'avoir des sortes de tableaux qui correspondent à des instructions, un petit peu comme les instructions assembleur d'un microcontrôleur, et ça permettra d'économiser beaucoup de place mémoire. Je signale aussi qu'on va souvent être intéressé à avoir des LED d'intensité variable. Pour cela, on utilisera le P W M ou encore le B C M. Tous ces sujets, langage interprété, P W M, B C M, seront vus plus tard dans ce cours. Nous avons vu le principe de ces enseignes à motifs fixes et le découpage en segments, nous avons vu les schémas électroniques avec des transistors en mettant les diodes en série et en parallèle, nous avons abordé la programmation des animations. J'aimerais ajouter que ce sujet est intéressant par exemple pour des jeunes intéressés à créer une entreprise. Je connais beaucoup de jeunes, en particulier en Afrique, qui, avec très peu de moyens, ont commencé à réaliser des enseignes un peu basées sur cette technologie, qui sont, qui ont pu vendre ces enseignes, qui ont pu engager des collaborateurs, et qui ont pu ainsi développer l'économie locale. Plutôt que d'acheter des produits à l'étranger, ils les ont fabriqués dans leur propre pays. J'aimerais que ce MOOC soit aussi une occasion d'encourager l'entrepreneuriat et en particulier l'entrepreneuriat des jeunes.