Table des matières:

Réveil LED Sunrise avec alarme de chanson personnalisable : 7 étapes (avec photos)
Réveil LED Sunrise avec alarme de chanson personnalisable : 7 étapes (avec photos)

Vidéo: Réveil LED Sunrise avec alarme de chanson personnalisable : 7 étapes (avec photos)

Vidéo: Réveil LED Sunrise avec alarme de chanson personnalisable : 7 étapes (avec photos)
Vidéo: Lampe enceinte LED FM Thinp, ENFIN la FM ! 2024, Novembre
Anonim
Réveil LED Sunrise avec alarme de chanson personnalisable
Réveil LED Sunrise avec alarme de chanson personnalisable

Ma motivation Cet hiver ma copine a eu beaucoup de mal à se réveiller le matin et semblait souffrir de TAS (Trouble Affectif Saisonnier). Je remarque même à quel point il est plus difficile de se réveiller en hiver car le soleil ne s'est pas encore levé. Les symptômes du TAS sévère peuvent inclure l'irritabilité, le fait de trop dormir mais toujours la fatigue, l'impossibilité de sortir du lit, la dépression et même certains problèmes physiques tels que des douleurs articulaires et une résistance réduite aux infections. J'avais entendu parler d'alarmes de lever de soleil qui simulaient le lever du soleil et j'ai pensé que cela pourrait être une solution possible à son problème. Le plan dont je me souviens avoir vu un instructable (https://www.instructables.com/id/Blue-LED-dawn-simulator- for-Soleil-Sun-Alarm/) à propos de la modification d'une alarme de lever de soleil pour fournir une lumière bleue à l'aide de LED, car le bleu est censé être la bonne lumière pour aider. J'ai aimé l'idée, mais la façon dont le microcontrôleur est utilisé dans cette instructable m'a intimidé car j'ai eu une expérience limitée de la programmation après le développement du code. Cela n'a pas non plus résolu mon autre problème: dépenser 80 $ pour un réveil et le modifier, non pas que ma petite amie n'en vaut pas la peine:D J'ai d'abord pensé à développer une horloge à partir de zéro en utilisant un microcontrôleur. Nous avons construit une horloge de comptage binaire dans l'une de mes classes de collège, donc je connaissais la logique. J'ai abandonné cette idée plus tard car je n'utiliserais pas le même langage de programmation et je prendrais beaucoup de temps pour développer le code. J'ai alors eu l'idée d'utiliser un réveil numérique bon marché qui pourrait, espérons-le, fournir une tension lorsque l'alarme se déclenche. Je pourrais prendre cette tension et l'utiliser comme interrupteur avec un microcontrôleur. Lorsque l'alarme s'est déclenchée et que la tension est devenue élevée, le processus de gradation a commencé. Si le bouton de répétition était enfoncé ou si l'alarme était désactivée, la tension baisserait et le processus de gradation s'arrêterait, éteignant les lumières. J'ai fait des recherches sur cette idée et j'ai découvert qu'il était possible d'utiliser la tension d'une horloge et de l'utiliser avec un microcontrôleur ! Un gars avait terminé un projet similaire qui ouvrait ses stores automatiquement le matin (https://hackaday.com/2008/11/18/alarm-clock-automated-blinds/). Le microcontrôleur Les idées ont commencé à couler et tout ce que j'avais à faire était de choisir un microcontrôleur à utiliser. J'ai vu un article sur sparkfun.com qui parlait du processus de construction d'un circuit pour faire fonctionner un ATMega168. J'ai lu attentivement et j'ai décidé que cela semblait assez simple et que c'était le microcontrôleur que je voulais utiliser. Après des recherches plus poussées, j'ai trouvé cette chose Arduino que tout le monde utilise pour leurs projets de bricolage. Il utilisait l'ATMega168, était open source et disposait de nombreux forums d'aide et d'exemples de démarrage; parfait pour le débutant. J'ai décidé de l'utiliser pour programmer mon ATMega168 et de le transplanter dans une carte de dérivation contenant l'essentiel pour que l'ATMega168 fonctionne. Avec la dernière pièce du puzzle en main, je pouvais commencer. Remarque rapide: avant de commencer, je veux juste remercier toutes les sources que j'ai utilisées. J'ai essayé de m'assurer que j'ai lié toute référence que j'ai utilisée dans l'instructable. Le code n'est que des manipulations des exemples inclus dans l'environnement Arduino et un peu du mien, donc merci aux personnes qui les ont codées ! C'est aussi mon premier projet de microcontrôleur. Je suis sûr que je n'ai pas tout fait correctement, comme ajouter des capuchons de filtre à des endroits et d'autres pièces diverses à mes circuits. Si vous voyez quelque chose qui peut être amélioré, faites-le moi savoir! Je ne manquerai pas de mettre à jour ou de prendre des notes. Prendre plaisir!

Étape 1: Sonder le circuit de sortie d'horloge et d'alarme

Sondage du circuit de sortie d'horloge et d'alarme
Sondage du circuit de sortie d'horloge et d'alarme
Sondage du circuit de sortie d'horloge et d'alarme
Sondage du circuit de sortie d'horloge et d'alarme
Sondage du circuit de sortie d'horloge et d'alarme
Sondage du circuit de sortie d'horloge et d'alarme

Sonder l'horloge C'est l'horloge que j'ai choisie. Je l'ai eu chez Walmart et c'était bon marché, donc si je ne pouvais pas l'utiliser, je ne serais pas trop contrarié. Il dispose également d'une batterie de secours 9v en cas de panne de courant. J'ai découvert plus tard que la séquence d'alarme de l'ATMega168 se déclenche toujours ! Il vous réveillera donc s'il n'y a pas de courant ! Lorsqu'il est à court de batterie, l'écran avant s'éteint et il passe à une horloge interne différente qui est moins précise mais fonctionne toujours correctement. Lorsque l'alimentation est rebranchée, l'horloge devra peut-être être ajustée, mais les paramètres de l'alarme resteront. L'horloge se démonte assez facilement. Il y a quatre vis en bas et trois vis qui maintiennent la carte PCB du bouton fixée au haut du boîtier de l'horloge. Pour retirer le haut et obtenir un meilleur accès à l'écran LCD, vous devez enfiler le clip 9v à travers le trou dans la moitié inférieure. L'écran LCD avant sort et lors de l'inspection, il y avait peu de pièces. J'ai trouvé un transformateur, un haut-parleur piézoélectrique pour l'alarme, des diodes pour le circuit redresseur, des boutons pour les entrées et un affichage d'horloge qui semblait avoir tous les circuits d'horloge en dessous. J'ai trouvé le sol et j'ai commencé à sonder. SOYEZ PRUDENT EN FAISANT CECI SUR VOTRE HORLOGE, IL Y A UN TRANSFORMATEUR EXPOSÉ QUI PROVOQUERA UN ÉNORME CHOC. J'ai pris note des tensions sur chaque broche lorsque l'alarme était désactivée et lorsque l'alarme était activée. J'espérais une broche qui fournirait une belle tension logique de 5v lorsque l'alarme était allumée et de 0v lorsque l'alarme était éteinte. Je n'ai pas eu cette chance, mais la tension qui est allée au haut-parleur a fourni une tension qui variait de 9,5 v à 12,5 v. J'ai pensé que je pourrais l'utiliser. J'ai également trouvé une broche étiquetée VCC qui fournissait une tension variant de 10v-12v. Cela entre en jeu plus tard lors de la construction de l'alimentation du microcontrôleur. Circuit de sortie d'alarme J'ai soudé un fil à la terre et un à la broche d'alarme et j'ai commencé à travailler sur un circuit pour stabiliser la tension. J'ai pensé que je pouvais utiliser un régulateur 5v mais je n'avais qu'un régulateur réglable qui traînait. J'ai fait quelques calculs et mes valeurs ont fourni une tension légèrement inférieure à 5v. J'ai bricolé un peu et échangé des résistances jusqu'à ce qu'il fournisse le 5v dont j'avais besoin. J'ai utilisé un condensateur de 470uF sur l'entrée pour lisser la tension. Avec le condensateur, la tension ne variait que de 10,5v-10v. Vous trouverez ci-dessous le schéma du circuit que j'ai utilisé pour conditionner ma sortie d'alarme et une image des pièces ensemble sur une planche à pain.

Étape 2: Circuit d'alimentation, circuit de commande de LED et câblage

Circuit d'alimentation, circuit de commande de LED et câblage
Circuit d'alimentation, circuit de commande de LED et câblage
Circuit d'alimentation, circuit de commande de LED et câblage
Circuit d'alimentation, circuit de commande de LED et câblage
Circuit d'alimentation, circuit de commande de LED et câblage
Circuit d'alimentation, circuit de commande de LED et câblage

Circuit d'alimentation Si je devais brancher le microcontrôleur directement au Vcc de l'horloge, je le ferais sauter (enfin pas vraiment, mais le rendrait inutile). J'avais besoin de conditionner la tension et de la ramener à 5v. J'ai utilisé un circuit régulateur simple qui utilise seulement deux condensateurs et un régulateur 5v. Je suis allé au laboratoire de l'école et j'ai trouvé un régulateur 5v dans la pile d'ordures. J'ai branché le circuit et l'ai testé. Il a fourni un circuit de commande de 4,99v. LED agréable et stable. Étant donné que l'ATMega168 ne peut fournir qu'environ 16 mA de courant à chacune de ses sorties numériques, un régulateur de courant est nécessaire pour alimenter les LED. J'ai trouvé ce circuit sur les forums d'aide Arduino et cela semble être un circuit assez commun et simple. Pour diriger la lumière des LED, j'ai décidé d'utiliser un réflecteur d'une lampe de poche. La lampe de poche que j'ai achetée avait trois trous pour trois LED. J'ai décidé de les rectifier plus gros et d'en mettre quatre dans chaque trou, expliquant ainsi la façon dont le circuit est tracé. les sortir par un trou sur le côté. J'ai aussi eu l'idée d'ajouter une boucle dans mon programme de microcontrôleur pour jouer une chanson à la place de l'alarme d'origine. J'ai soudé deux fils plus longs au haut-parleur piézoélectrique et les ai également enfilés sur le côté. J'ai utilisé des pinces à fil pour découper une petite encoche dans la moitié supérieure de l'horloge et j'ai tout revissé.

Étape 3: connexion de l'ATMega168 et construction du prototype

Branchement de l'ATMega168 et construction du prototype
Branchement de l'ATMega168 et construction du prototype
Branchement de l'ATMega168 et construction du prototype
Branchement de l'ATMega168 et construction du prototype
Branchement de l'ATMega168 et construction du prototype
Branchement de l'ATMega168 et construction du prototype
Branchement de l'ATMega168 et construction du prototype
Branchement de l'ATMega168 et construction du prototype

Branchement de l'ATMega168 Il n'y a que quelques broches qui doivent être connectées pour que l'ATMega168 fonctionne. J'ai trouvé ce brochage de l'ATMega168 sur https://www.moderndevice.com/Docs/RBBB_Instructions_05.pdf. Les connexions sont les suivantes: Vers Vcc-Pin 1 à Vcc avec une résistance de 10k. -Pin 7 et Pin 20 à VccTo Ground-Pin 8 et Pin 22 à Ground-Pin 21 to Ground avec un condensateur électrolytique.1uFInput-Pin 4 (Digital pin 2) est connecté à mon fil d'alarmeOutput-Pin 15 to NEGATIVE Lead of piezoelectric haut-parleur-Broche 16 à l'entrée du circuit de commande de LEDClock-16Mhz Crystal - Une jambe à la broche 9 l'autre jambe à la broche 10--11 Connexions en tout--Remarque: je pense que j'aurais pu brancher des capuchons aux jambes de le cristal mais comme mon programme n'a pas besoin d'une horloge très précise, je l'ai laissé tel quel. J'ai utilisé la broche numérique d'entrée de l'alarme au hasard, toute autre broche numérique devrait fonctionner. Le haut-parleur piézoélectrique et les LED doivent être connectés à une broche PWM numérique ou ils ne fonctionneront pas. De plus, je n'ai pas trouvé de bon modèle dans Eagle pour le modèle à 28 broches, alors j'ai juste peint MS tout ensemble:D Désolé si cela semble déroutant. Posez des questions si vous en avez besoin ! J'ai également fait un schéma fonctionnel pour aider à comprendre d'où tout va ou vient. Construire le prototype --- Liste des pièces --- Circuit de sortie d'alarme - Régulateur de tension positive réglable LM317T (Vous pouvez utiliser un régulateur 5v, je viens d'avoir ceci un) -Résistance -1k Ohm -Résistance 3.8k Ohm -Condensateur électrolytique 470uFAlimentation -Régulateur UA7805C 5v -Condensateur électrolytique 100uF -Condensateur électrolytique -10uF Circuit pilote LED -2N3904 -150 Ohm (Vous pouvez expérimenter avec des valeurs de résistance inférieures ou supérieures en fonction de vos LED) -1k Ohm ResistorMicrocontroller -Douille 28 broches (En option mais j'ai reprogrammé mon ATMega168 plusieurs fois avec mon Arduino) -ATMega168 -Condensateur électrolytique.1uF -16 MHz Crystal -10k Ohm ResistorMisc. Fournitures -Carte de prototypage Perf -Pieds et vis de la carte de prototypage -Fil Lorsque j'ai prototypé mon circuit, j'ai construit chaque section sur une planche à pain, l'ai testée et l'ai transférée sur la carte de perf. J'ai commencé par le circuit de sortie d'alarme et je me suis assuré qu'il fonctionnait correctement. Je suis ensuite passé à la partie alimentation, puis au pilote de LED, et j'ai terminé avec le circuit du microcontrôleur. Mais, vu que vous n'avez pas besoin de tester le circuit et de vous assurer que les concepts fonctionnent, puisque je l'ai déjà fait, vous pouvez simplement construire l'ensemble du circuit. Assurez-vous d'avoir les bonnes tensions aux bons endroits. 0v à la sortie du circuit de sortie d'alarme lorsque l'alarme est éteinte et 5v lorsqu'elle est allumée. 5v en sortie du circuit d'alimentation. Ne collez pas encore l'ATMega168 dans le socket, il faut le programmer. J'aurais pu utiliser une planche de perforation plus petite ou couper la mienne, mais j'ai décidé de la laisser seule. Ce n'est pas extrêmement grand. Après le prototypage du circuit, la construction de l'ampoule LED peut commencer.

Étape 4: Construire la LED « Ampoule »

Construire la LED
Construire la LED
Construire la LED
Construire la LED
Construire la LED
Construire la LED
Construire la LED
Construire la LED

L'ampoule Triple Quad LED !!!!"' Si vous le souhaitez, vous pouvez ignorer cette étape et utiliser une seule LED pour tester votre circuit. Vous pourrez y revenir lorsque le circuit sera confirmé et fonctionnel. De plus, j'ai utilisé du blanc LED parce que je n'avais plus de bleus à haute luminosité. J'ai entendu dire que le bleu aidait mieux avec le SAD. Je suis allé au magasin à un dollar pour acheter une lampe de poche bon marché parce que j'avais besoin d'un réflecteur pour diriger la lumière des LED. La lampe de poche que j'ai acheté contenait trois LED. J'ai décidé de fourrer quatre LED dans chaque trou et j'avais besoin d'un moyen de les câbler tous. J'ai proposé ce processus qui soude quatre LED ensemble, puis connecte trois de ces "quad LED" ensemble. Toutes les LED sont en parallèle, en gardant la même tension qu'une LED et augmente le courant. C'est ce que fournit le circuit de commande de LED. Protip: Une petite pince à bec effilé aideÉtape 1: Maintenez deux LED ensemble avec les fils de terre en contact. Les bords plats des LED doivent s'asseoir l'un à côté de l'autre. Chargez la pointe de votre fer à souder n avec un peu de soudure pour qu'il y ait une goutte de soudure liquide sur la panne. Touchez rapidement les deux fils de terre avec votre fer à souder aussi près que possible de la LED. Si vous laissez la pointe en place longtemps, les fils chaufferont et vous ne vous sentirez pas très bien. asseyez-vous à côté d'une autre couleur de paire. J'ai poncé les LED pour aider à diffuser un peu la lumière. Maintenant, pliez les fils comme indiqué. Un peu difficile de prendre des photos du processus, mais fondamentalement, pliez les pistes positives vers l'extérieur. Pliez les fils négatifs vers les côtés aplatis et vers le haut de sorte que lorsque vous mettez deux paires ensemble, les quatre fils négatifs se réunissent en un seul gros fil. En prenant deux paires, tenez-les ensemble. Les broches négatives seront toutes au centre. Touchez-les avec votre fer à souder pour les fusionner tous ensemble. Étape 3: Maintenant que les quatre fils négatifs sont soudés ensemble, coupez-en trois, en n'en laissant qu'un. Maintenant, pliez l'un des fils positifs autour de l'extérieur du quad LED, en soudant à chaque connexion. Coupez tous les fils positifs sauf un en laissant un fil positif et un fil négatif. Vous avez terminé ! Maintenant, faites-en deux de plus:] Une fois que vous avez trois LED quadruples, il est temps de les installer dans le réflecteur de la lampe de poche. J'ai acheté cette lampe de poche pour 3 $ au magasin à un dollar. C'est un dorcey et toutes les pièces se tordent, il est donc facile d'accéder à toutes les pièces. J'utilise le réflecteur argenté et le dos conique noir. Le cône noir peut être dépouillé de ses pièces métalliques en ne laissant que la pièce en plastique. Il est utilisé plus tard pour fixer l'ampoule au col réglable. Selon la lampe de poche que vous trouvez, vous devrez peut-être installer vos LED sur le cou réglable différemment. J'ai essayé de trouver une lampe de poche générique qui serait disponible dans beaucoup d'endroits. Étape 4: J'ai utilisé une prise dremel pour élargir les trois trous du réflecteur. J'ai ensuite poussé chacune des quatre LED quad dans leurs trous avec les fils négatifs vers l'intérieur. Pliez et soudez les fils négatifs et positifs ensemble pour compléter l'AMPOULE TRIPLE QUAD LED ! J'ai ensuite soudé deux fils longs et minces qui seront ensuite acheminés le long du col réglable et soudés à la carte de circuit imprimé principale. J'ai également mis de la colle sur chaque paquet de quad LED pour m'assurer qu'ils resteraient en place.

Étape 5: Cou réglable et la base

Cou réglable et la base
Cou réglable et la base
Cou réglable et la base
Cou réglable et la base
Cou réglable et la base
Cou réglable et la base

Le col ajustable Afin de diriger la "lumière du soleil" que génère le réveil, j'ai choisi d'ajouter un col ajustable. Au début, je pensais pouvoir utiliser un conduit pour le cou, mais comme j'ai peu d'outillage et de matériel à l'université, je ne pouvais pas très bien le fixer à la base. De plus, il était assez difficile à plier et ne s'ajustait pas trop bien. J'ai fini par n'utiliser qu'un seul des fils à l'intérieur du conduit. Il s'est avéré assez bon. J'ai pu le fixer sans matériel, juste un trou dans la base. J'ai commencé par retirer un fil du conduit et l'enrouler autour de l'extérieur, créant une belle spirale. Ensuite, j'ai torsadé juste le fil du conduit. Je l'ai ensuite étiré et connecté au cône noir que j'ai mentionné plus tôt. Le cône noir est livré avec des circuits de la lampe de poche qui y sont attachés, mais il s'enlève facilement. Maintenant que vous n'avez que le morceau de cône en plastique, faites deux trous sur les bords, chacun assez grand pour que le fil passe à travers. Je l'ai nourri de haut en bas et de l'autre côté, en l'enroulant sous. J'ai ensuite utilisé le fil fin et flexible du conduit pour le sécuriser davantage. Les deux longs fils soudés plus tôt peuvent être passés à travers le cône noir et l'ampoule peut être torsadée en place. J'ai rajouté un peu de colle pour qu'il reste attaché. La base Pour fixer le cou réglable, j'ai percé un trou de 7/64 pouces dans la base en bois et j'y ai collé le fil. Il s'adapte assez bien, donc aucune colle n'est nécessaire, mais il est suffisamment lâche pour que le cou soit tourné et tordu. Les deux fils LED peuvent être enroulés autour du cou et soudés à la carte de prototypage. Pour fixer la carte, j'ai utilisé quatre supports PCB. J'avais un foret de filetage disponible, mais ce n'était pas nécessaire. Si vous n'avez pas de foret, percez simplement un trou plus petit que la vis et vissez-le avec une pince. J'ai attaché l'horloge à la base à l'aide de velcro. Je ne l'ai pas vissé car mon horloge a une batterie de secours et lorsque la batterie est morte, elle devra être remplacée. Enfin, j'ai ajouté des pieds en caoutchouc dans les coins.

Étape 6: Le programme

Le programme
Le programme

Le programme Afin de programmer votre ATMega168 avec la connexion USB et la carte Arduino, vous aurez besoin d'une puce ATMega168 sur laquelle est déjà installé le chargeur de démarrage Arduino. C'était le moyen le plus simple que j'ai pu trouver pour programmer le microcontrôleur. Lorsque j'ai acheté ma carte, j'ai acheté un ATMega168 supplémentaire avec le bootloader du même fournisseur. Vous devrez peut-être payer un peu plus pour la puce préprogrammée, mais cela en valait la peine pour moi car je ne voulais pas jouer avec les adaptateurs de câble série, etc. J'ai joint le code en tant que fichier.txt et.pde déposer. Je ne voulais pas rendre cette longue instructable en publiant tout le code. J'ai utilisé le dernier environnement de programmation Arduino: arduino-0015. Ce que j'aime dans les cartes Arduino, c'est qu'il y a des tonnes d'exemples inclus avec l'environnement, l'environnement du programme est gratuit et il existe de nombreuses pages de projets et d'aide. Il est également très facile de créer un tableau de répartition pour exécuter votre programme seul. J'ai essayé de commenter le code au mieux de ma compréhension, donc je vais garder les descriptions au minimum. J'ai utilisé l'exemple "Fading LED" de BARRAGAN pour me familiariser avec la modulation de largeur d'impulsion (PWM) dont l'ATMega168 est capable. J'ai trois déclarations "si". Le premier s'est estompé plus lentement dans les niveaux d'obscurité les plus bas (0-75 sur 255) car les niveaux les plus élevés se ressemblent. La seconde s'estompe plus rapidement dans les niveaux d'obscurité supérieurs. L'ensemble du processus de fondu enchaîné prend 15 minutes. Une fois que les LED ont atteint leur pleine luminosité, la boucle de chanson jouera jusqu'à ce que l'alarme soit coupée. L'alarme d'origine était assez ennuyeuse. C'était juste le son typique du réveil que tout le monde déteste. J'ai pensé, pourquoi ne pas utiliser le haut-parleur pour faire une chanson agréable pour se réveiller ? Comme ma copine adore les Beatles et que je savais que Hey Jude avait une mélodie assez simple, j'ai décidé de l'utiliser. Une onde carrée est générée puis PWM est utilisé pour jouer les notes de Hey Jude sur le haut-parleur piézoélectrique. Pour programmer la chanson, j'ai manipulé l'exemple "Melody" à partir des exemples de l'environnement Arduino. J'ai trouvé des partitions simples et les ai traduites en notes dans le code. J'ai dû augmenter le nombre de notes jouées à 41 et faire le calcul pour trouver une note plus basse que le "c" qui est fourni. J'ai ensuite implanté ce code dans mon code principal. Pour programmer la puce, vous devrez d'abord installer les pilotes USB fournis avec l'environnement Arduino. Ensuite, sélectionnez votre carte dans le menu déroulant et sélectionnez le port COM approprié. Tout ce processus est décrit en détail ici: https://arduino.cc/en/Guide/WindowsEt c'est tout ! Après avoir programmé l'ATMega168, il peut être retiré de l'Arduino et inséré dans le circuit prototypé !

Étape 7: Conclusion

Conclusion
Conclusion
Conclusion
Conclusion
Conclusion
Conclusion

Améliorations possibles Après avoir terminé l'alarme de lever de soleil, j'ai pensé à quelques améliorations ou fonctionnalités supplémentaires que j'aurais pu ajouter. L'une des idées que j'ai eues était un interrupteur pour allumer l'ampoule à pleine luminosité afin qu'elle puisse être utilisée comme lampe de lecture. Un autre interrupteur peut être utilisé pour activer ou désactiver le son de l'alarme. Le circuit imprimé aurait également pu être beaucoup plus petit. Je venais juste d'avoir celui-ci et j'ai décidé de le laisser en un seul morceau. Le produit finalLe voici ! J'ai ajouté quelques photos de ce à quoi cela ressemble lorsque les lumières s'éteignent. J'ai également pris une vidéo de l'alarme jouant Hey Jude. Encore une fois, si vous avez des questions sur ce projet, n'hésitez pas, j'adore vous aider !

Conseillé: