Veilleuse Arduino RGB
Probablement tout le monde dans l'enfance a eu un rêve (et pas un). Vous pouvez même essayer de vous rappeler le sentiment qui submerge l'âme d'un enfant dans la réalisation de ses rêves ou cette lueur familière lointaine dans ses yeux ... Enfant, je rêvais d'avoir ma veilleuse.Maintenant, j'étudie en 4e année de BSUIR et lorsque nous avons été informés que le projet de cours sur la conception de circuits peut se faire non pas sur papier mais sur un morceau de fer, il m'est apparu: la lampe de nuit, que je désirais tant dans l'enfance, peut se faire seule. Et pour faire non seulement un objet qui illuminera la pièce dans l'obscurité, mais un appareil qui peut être facilement contrôlé pour n'importe quelle humeur. Pourquoi pas J'ai décidé d'ajouter la possibilité de changer les couleurs à l'aide de mes mains: plus la main est rapprochée de la veilleuse, plus la couleur (RVB) est lumineuse. Et je voudrais également contrôler la veilleuse à l'aide de la télécommande.J'avoue tout de suite que j'ai espionné l'idée sur cxem.net . En bref, cet exemple a utilisé une matrice RVB qui était contrôlée à l'aide de registres à décalage et de capteurs de distance à ultrasons. Mais je pensais que la matrice brille exclusivement dans une direction, mais je voulais que la veilleuse brille des deux côtés.Justification des éléments du circuit
J'ai tourné mon attention vers les microcontrôleurs Arduino. UNO est une option tout à fait adaptée à mon idée, premièrement parce que c'est la plate-forme la plus populaire et le nombre de broches n'est pas trop grand, contrairement à Mega, et deuxièmement, vous pouvez y connecter une source d'alimentation externe, dans mon cas, c'est 12V, contrairement à Nano troisièmement ... eh bien, je pense que vous pouvez vous concentrer sur ces deux points. La plate-forme est très populaire dans le monde entier en raison de la commodité et de la simplicité du langage de programmation, ainsi que de son architecture ouverte et de son code de programme.Plus d'informations sur ce forum peuvent être facilement trouvées sur Internet, donc je ne surchargerai pas l'article.Donc, les exigences de base pour le système. Requis:- capteurs qui suivront la distance à la barrière pour contrôler le système;- un capteur pour lire les signaux de la télécommande;- LED, qui fourniront la fonctionnalité d'éclairage nécessaire;- une unité de contrôle qui contrôlera l'ensemble du système.
Des capteurs de distance sont nécessaires en tant que capteurs de distance pour le projet, chacun correspondant à une couleur spécifique: rouge, vert, bleu. Les capteurs de distance surveilleront la distance de la main à la lampe de nuit et plus la main sera rapprochée d'un capteur spécifique, plus la couleur correspondant à ce télémètre brûlera. Inversement, plus la main est éloignée, moins la tension est appliquée à la couleur correspondant au capteur.Les télémètres les plus populaires en ce moment sont les Sharp GP2Y0A21YK et HC-SR04. Sharp GP2Y0A21YK est un télémètre infrarouge. Il est équipé d'un émetteur infrarouge et d'un récepteur infrarouge: le premier sert de source au faisceau dont la réflexion attrape le second. Dans le même temps, les rayons infrarouges du capteur pour l'œil humain sont invisibles et inoffensifs à cette intensité.Comparé au capteur à ultrasons HC-SR04, ce capteur présente à la fois des avantages et des inconvénients. Les avantages incluent la neutralité et l'innocuité. Et les inconvénients sont une portée plus courte et une dépendance au bruit externe, y compris certains types d'éclairage.
Les télémètres à ultrasons HC-SR04 ont été utilisés comme capteurs de distance pour le projet.Le principe d'action du HC-SR04 est basé sur le phénomène bien connu de l'écholocation. Lors de son utilisation, l'émetteur génère un signal acoustique qui, réfléchi par l'obstacle, retourne au capteur et est enregistré par le récepteur. Connaissant la vitesse de propagation des ultrasons dans l'air (environ 340 m / s) et le temps de retard entre le signal émis et reçu, il est facile de calculer la distance jusqu'à la barrière acoustique.L'entrée TRIG est connectée à n'importe quelle broche du microcontrôleur. Cette sortie nécessite un signal numérique pulsé d'une durée de 10 μs. Le signal au capteur TRIG d'entrée envoie un paquet d'impulsions ultrasonores. Après avoir reçu le signal réfléchi, le capteur génère un signal d'impulsion à la sortie ECHO, dont la durée est proportionnelle à la distance à l'obstacle.
Capteur IR. Bien sûr, le signal requis pour la télécommande sera lu et décodé à partir de ce capteur. TSOP18 diffèrent uniquement en fréquence. Le capteur VS1838B TSOP1838 a été sélectionné pour le projet.Le projet était basé sur l'idée d'éclairer la pièce avec n'importe quelle couleur, ce qui suggère que 3 couleurs primaires seront nécessaires à partir desquelles l'éclairage sera obtenu: rouge, vert, bleu. Par conséquent, le modèle LED SMD 5050RGB a été choisi, qui répondra parfaitement à la tâche.Selon la quantité de tension fournie à chaque LED, elles changeront l'intensité de cet éclairage. La LED doit être connectée via une résistance, sinon nous risquons de la gâcher non seulement, mais aussi Arduino. Une résistance est nécessaire afin de limiter le courant sur la LED à une valeur acceptable. Le fait est que la résistance interne de la LED est très faible et, si vous n'utilisez pas de résistance, un courant traversera la LED qui brûle simplement la LED et le contrôleur.
Les bandes avec LED utilisées dans le projet sont alimentées en 12V.Étant donné que la tension sur les LED à l'état "éteint" est de 6V et qu'il est nécessaire de réguler l'alimentation qui dépasse 5V, il est nécessaire d'ajouter des transistors au circuit dans le mode clé. Mon choix s'est porté sur le BC547c.Considérons brièvement, pour ceux qui l'ont oublié, le principe de fonctionnement du transistor npn. Si vous n'appliquez pas de tension du tout, mais prenez simplement et fermez les conclusions de la base et de l'émetteur, même si elles ne sont pas courtes, mais à travers une résistance de plusieurs ohms, il s'avère que la tension de base-émetteur est nulle. Par conséquent, il n'y a pas de courant de base. Le transistor est fermé, le courant du collecteur est négligeable, juste le même courant initial. Dans ce cas, on dit que le transistor est dans un état de coupure. L'état inverse est appelé saturation: lorsque le transistor est complètement ouvert, de sorte qu'il n'y a nulle part où s'ouvrir davantage. Avec un tel degré d'ouverture, la résistance de la section collecteur-émetteur est si faible qu'il est tout simplement impossible d'activer le transistor sans charge dans le circuit collecteur, il brûlera instantanément. Dans ce cas, la tension résiduelle au niveau du collecteur ne peut être que de 0,3 ... 0,5 V.Ces deux états - saturation et coupure - sont utilisés lorsque le transistor est en mode clé comme un contact de relais normal. Le point principal de ce mode est qu'un petit courant de base contrôle un grand courant de collecteur, qui est plusieurs dizaines de fois supérieur au courant de base. Un courant de collecteur important est obtenu en raison d'une source d'énergie externe, mais le gain de courant, comme on dit, est toujours évident. Dans notre cas, le microcircuit, dont la tension de fonctionnement est de 5V, comprend 3 barrettes avec LED fonctionnant à partir de 12V.Nous calculons le mode de fonctionnement de la cascade de touches. Il est nécessaire de calculer la valeur de la résistance dans le circuit de base pour que les LED s'allument à pleine puissance. Une condition nécessaire dans le calcul est que le gain de courant soit supérieur ou égal au quotient de division du courant de collecteur maximal possible par le courant de base minimal possible:
Par conséquent, les bandes peuvent avoir une tension de fonctionnement de 220 V et le circuit de base peut être contrôlé à partir d'un microcircuit de 5 V. Si le transistor est conçu pour fonctionner avec une telle tension sur le collecteur, les LED s'allumeront sans problème.La chute de tension à la jonction base-émetteur est de 0,77 V, à condition que le courant de base soit de 5 mA et le courant de collecteur de 0,1 A.La tension à la résistance de base sera:
selon la loi d'Ohm:
Dans la série standard de résistances, nous choisissons une résistance de 8,2 kOhm. Le calcul est maintenant terminé.Je veux attirer votre attention sur un problème que j'ai rencontré. Lors de l'utilisation de la bibliothèque IRremote, l'Arduino s'est écrasé lors du réglage de la couleur bleue. Après une recherche longue et approfondie sur Internet, il s'est avéré que cette bibliothèque utilise le timer par défaut 2 pour ce modèle Arduino. Les temporisateurs sont utilisés pour contrôler les sorties PWM.Minuterie 0 (heure système, PWM 5 et 6);Minuterie 1 (PWM 9 et 10);Minuterie 2 (PWM 3 et 11).Au départ, j'ai utilisé PWM 11 pour ajuster la couleur bleue. Par conséquent, soyez prudent lorsque vous travaillez avec PWM, des minuteries et des bibliothèques tierces qui peuvent les utiliser. Il est étrange que rien ne soit dit sur cette nuance sur la page principale du github. Si vous le souhaitez, vous pouvez décommenter la ligne avec la minuterie 1 et le commentaire 2. Leséléments de connexion sur la maquette sont les suivants:
Après des tests sur la planche à pain, les phases «Placement des éléments sur la planche» et «Travail avec un fer à souder» ont commencé. Après le premier test de la planche finie, la pensée se glisse dans ma tête: quelque chose s'est mal passé. Et alors commence la phase familière du «travail minutieux avec le testeur». Cependant, les dysfonctionnements (plusieurs contacts voisins ont été soudés accidentellement) ont été rapidement corrigés et le voici la lumière espiègle tant attendue des LED.
De plus, ce n'était que le cas. Pour cette raison, du contreplaqué avec des trous pour nos capteurs a été coupé. Le capot arrière a été spécialement conçu pour que vous puissiez profiter de la vue de l'intérieur et, si vous le souhaitez, pour terminer ou refaire quelque chose. Il dispose également de 2 trous pour reprogrammer la carte et l'alimentation.Le corps a été collé sur un adhésif époxy à deux composants. Il convient de noter la particularité de cette colle, pour ceux qui ne l'ont jamais rencontrée auparavant. Ce compagnon est livré dans deux conteneurs séparés, lorsque le contenu est mélangé, une réaction chimique instantanée se produit. Après le mélange, vous devez agir rapidement, dans les 3-4 minutes. Pour une utilisation ultérieure, vous devez mélanger une nouvelle portion. Donc, si vous essayez de répéter cela, mon conseil est de mélanger en petites portions et d'agir très rapidement, il n'y aura pas beaucoup de temps pour réfléchir. Par conséquent, il convient d'envisager à l'avance comment et où coller le boîtier. Et en une seule séance, cela ne fonctionnera pas.Pour fixer les bandes avec des LED, un tube a été inséré dans le capot supérieur à travers lequel tous les fils sont parfaitement passés.
Lorsque la question s'est posée avec un abat-jour, je me suis souvenu comment, dans l'enfance, je fabriquais des objets artisanaux à partir de simples fils, de la colle et d'un ballon, qui servaient de base. Le principe de l'abat-jour est le même, mais envelopper un polyèdre était plus difficile qu'une boule. En raison de la pression exercée par les fils sur la structure, celle-ci a commencé à se rétrécir vers le haut et les fils ont commencé à tomber. D'urgence, les mains collées, il a été décidé de renforcer la structure par le haut. Et puis le CD est venu à la rescousse. En conséquence, nous avons obtenu une telle veilleuse:
Que voulez-vous dire à la suite
Que dois-je changer dans le projet? Pour signaler les capteurs de distance TRIG, une sortie Arduino pourrait être utilisée au lieu de trois. J'aurais également prévu un trou pour le capteur infrarouge (que j'ai oublié), qui, hélas, est caché dans le boîtier duquel, bien sûr, il ne peut pas lire les signaux de la télécommande. Cependant, qui a dit que vous ne pouviez rien souder et percer?
Je voudrais noter que ce fut un semestre intéressant, et une excellente occasion d'essayer de faire quelque chose qui n'est pas sur le papier, afin que je puisse mettre une autre coche à côté de l'élément «rêve d'enfance». Et s'il vous semble qu'il est difficile d'essayer quelque chose de nouveau et que vous ne savez pas quoi faire en premier, ne vous inquiétez pas. La pensée passe à travers l'esprit de beaucoup: par où commencer et comment cela peut-il être fait du tout? Dans la vie, il existe de nombreuses tâches qui peuvent vous embrouiller, mais si vous essayez simplement, vous remarquerez qu'avec un clin d'œil, vous pouvez transformer des montagnes, même si vous devez essayer un peu pour cela.Lien vers le code source .Auteur de l'article: Anastasia KovshSource: https://habr.com/ru/post/fr388573/
All Articles