Créez un "miaou" numérique à partir d'une horloge analogique: 7 étapes

Créez un "miaou" numérique à partir d'une horloge analogique: 7 étapes

Table des matières:

Anonim

Votre horloge analogique ne fait-elle pas assez de travail? Vous voulez faire des choses numériques avec une horloge analogique?

Ce tutoriel vous montrera comment faire en sorte que Kit Cat Clock diffuse un clip audio «meow», à des intervalles de temps précis, à l'aide de l'Atmega 328P-PU via la carte de développement Arduino Uno. Dans mon exemple, le miaou se produira toutes les heures. Cela ne doit pas nécessairement être une horloge Kit-Cat, cette idée peut fonctionner avec d'autres horloges qui utilisent un moteur magnétique.

Hypothèses (à sauter si vous êtes déjà un expert en tout)

Le projet comprend de nombreuses compétences intermédiaires à avancées, telles que la gravure d’un chargeur de démarrage et la soudure de fils. Par conséquent, certaines connaissances et compétences requises sont nécessaires avant de procéder. Je supposerai que vous savez comment, ou du moins serez prêt à:

Graver un chargeur de démarrage sur l’Atmel328P-PU (sauf si le vôtre en a déjà un).

Envoi de «croquis» sur l’Atmel328P-PU via Arduino

Entrée de commandes dans un émulateur de terminal ou une invite de commande (Windows)

Utiliser un fer à souder pour établir des connexions entre les composants.

Utilisation possible d'une perceuse ou d'un outil Dremel pour le rognage / le découpage de pièces en plastique et le perçage de trous.

Matériaux

Arduino Uno R3 x 1

Planche à pain x 1

Fil de liaison (assez de pièces)

Résistances:

350 Ohm x 1

150 Ohm x 1

220 Ohm x 1

280 Ohm x 1

10K Ohm x 1

330 Ohm x 1 (facultatif si vous voulez le voyant lorsque vous utilisez Arduino sur Breadboard Setup)

Condensateurs:

100 uF x 1

10 uF x 1

22 pF x 2 (peut être facultatif)

Oscillateur à cristal 16 Mhz

Haut-parleur de 0,5 Watt (diamètre d'environ 50,8 mm) x 1

Adaptateur mural 7,5 V ca (j’utilisais la marque Vtech chez Toys R Us) x 1

7805 régulateur de tension x 1

Fer à souder et soudure

Protoboard (ou un autre tableau de projet final qui sera suffisamment petit pour s’adapter au boîtier de l’horloge)

super colle

Thermorétractable (facultatif)

Pistolet à colle chaude (facultatif)

Takane Quartz Clock (en supposant que vous deviez remplacer celle par défaut dans Kit Cat, comme je l'ai fait)

Capteur à effet Hall x 1

J'ai utilisé la famille de capteurs à effet Hall SS41. Ces capteurs sont suffisamment sensibles pour détecter le champ magnétique relativement faible provenant du moteur à aimant d'horloge. Le spécifique que j'ai acheté peut être trouvé ici

Provisions:

Étape 1: Aperçu général du projet:

Un aspect intéressant de ce projet consiste à utiliser des appareils analogiques (dans ce cas une horloge analogique) pour interagir avec le monde numérique de l’Atmel 328P-PU. Arduino est probablement l’un des moyens les plus simples d’atteindre cet objectif. J'utiliserai le moteur d'horloge typique de l'horloge classique Kit Cat pour générer une impulsion numérique qui alimentera la puce Atmel. Cela fonctionne parce que le moteur de l'horloge utilise un aimant permanent situé à proximité d'une bobine pour créer le couple mécanique nécessaire pour faire tourner les aiguilles de l'horloge. Je vais tirer parti de ce champ magnétique en utilisant un capteur à effet Hall pour détecter le flux magnétique provenant du moteur de l'horloge. Le capteur émettra un signal numérique HAUT chaque fois que l'un des pôles de l'aimant sera face au capteur, puis un signal BAS si le pôle opposé est à proximité du capteur. Cette transition de pôle a lieu toutes les secondes ou a une fréquence de 1 Hz et est la raison pour laquelle elle constitue un moteur idéal pour entraîner les aiguilles de l’horloge.

Remarque: le capteur ne touche pas réellement l'aimant, il en est très proche. Les images montrent à quel point il était nécessaire de placer le capteur afin de pouvoir obtenir des lectures.

Les images ici montrent l'intérieur de l'horloge et le moteur magnétique sur le côté droit. Le type d'horloge s'appelle un "Takane Quartz" et ils sont assez communs dans les horloges analogiques bon marché.

Une fois que le capteur émet une impulsion constante, toutes sortes de choses peuvent être faites numériquement et, en réalité, votre imagination est limitée à ce que vous pouvez faire. Dans ce tutoriel, je vais simplement créer un compteur qui compte les impulsions d’horloge (à partir du capteur de Hall), puis, une fois le décompte terminé, diffuse un clip audio «meow».

La première étape consiste à monter le capteur à effet Hall suffisamment près du moteur magnétique pour que vous puissiez obtenir une bonne lecture. J'ai dû placer le capteur très près de mon moteur magnétique pour obtenir une sortie. Vous pouvez tester le capteur en attachant quelque chose comme une LED à la broche de sortie du capteur, puis en allumant l'horloge. Si cela fonctionne, le voyant doit clignoter toutes les deux secondes. En effet, la sortie n’est haute que lorsque l’un des pôles fait face au capteur (par exemple, le pôle nord); lorsque le pôle opposé (sud) fait face au capteur, la sortie est BAS.

Une fois que vous avez déterminé un emplacement et une distance appropriés pour obtenir vos lectures, vous devriez alors commencer à réfléchir à la manière de les monter en permanence. J'ai choisi d'utiliser de la super colle pour maintenir le capteur en place. J'ai également envisagé l'emplacement en raison de l'emplacement du boîtier arrière. J'ai dû découper un petit trou rectangulaire pour que les broches du capteur soient accessibles. Vous devez déterminer ce qui fonctionne le mieux car, même si ces horloges sont presque identiques, la disposition à l'intérieur est parfois légèrement différente et l'emplacement du capteur peut varier en fonction de l'horloge dont vous disposez.

Étape 2: Souder le fil aux broches d'entrée du capteur

Il est maintenant temps de souder les broches pour câbler. La raison pour laquelle j'ai fait cela était pour deux raisons: d'abord, vous voulez pouvoir tester le capteur pendant que vous continuez à travailler, et aussi parce que vous aurez besoin de ces fils lorsque vous les connecterez à votre planche à pain et enfin au protoboard. Notez que l’utilisation de fils de couleurs différentes peut faciliter la tâche lorsque vous devez identifier rapidement les broches. C'est ce que j'ai fait.

La configuration du brochage peut être trouvée sur ce site

Étape 3: Préparation du fichier audio

Si vous savez déjà convertir un fichier.WAV en fichier C, vous pouvez ignorer ou parcourir cette étape.

Maintenant que le capteur est fixé aux broches appropriées sur la carte de connexion, vous devez télécharger l'esquisse audio sur l'Atmel328P. Mais d’abord, certaines modifications et «massages» doivent être faits en premier lieu. C’est là que vous pouvez apporter certaines de vos propres modifications et j’entrerai dans certains détails (mais pas tous) concernant l’utilisation des programmes Audacity et wav2c. Vous devriez aller de l'avant et ouvrir le code que j'ai fourni dans votre IDE Arduino. Lorsque vous ouvrez l'esquisse dans l'EDI Arduino, le premier onglet est une légère modification de l'esquisse audio PCM écrite par Michael Smith. L'original peut être trouvé sur le site Arduino:

playground.arduino.cc/Code/PCMAudio

Audacity est un programme d'édition audio. Il est très puissant et permet l’export d’un fichier.wav sous la forme d’un fichier.wav mono 8 bits non signé. Cela est nécessaire pour réduire la taille du fichier et également pour optimiser la compatibilité avec l'esquisse de lecture audio. Vous pourrez peut-être utiliser différentes tailles et débits binaires, mais je ne l'ai pas expérimenté. Nous n'utiliserons les fonctionnalités nécessaires dans Audacity que pour faire le travail.

Wav2c, comme son nom l'indique, peut convertir un fichier.wav en fichier C. Cela est également nécessaire car le fichier.wav est trop volumineux pour tenir dans la mémoire du 328P-PU. A ce jour, vous pouvez télécharger le code source directement depuis github. Vous pourrez également obtenir des versions compilées d'autres sites Web. De toute façon, vous devriez l’utiliser ou utiliser un autre programme similaire pour le processus de conversion.

github.com/olleolleolle/wav2c

Étape 4: Utiliser Audacity et Wav2c

Le but de la conversion de fichier audio est de prendre un fichier audio (.wav) et de le transformer en un fichier de fichier d’en-tête C utile. Cela permet à l’arduino d’utiliser les informations du fichier d’en-tête pour restituer le son via un haut-parleur.

-Premier ouvrir dans le fichier dans Audacity.

-Changez le débit du projet sur 8 000 Hz (situé dans le coin inférieur gauche).

-Alors sélectionnez «pistes» dans le menu et sélectionnez «rééchantillonner».

-Prochainement une exportation> d'autres fichiers non compressés.

Options -Under sélectionnez 8-bit signé.

Cela préparera le fichier pour l'étape suivante ci-dessous, à savoir la conversion en fichier C.

-Next Ouvrez un terminal et accédez au même répertoire que le fichier.

-Exécutez la commande suivante (sox) pour couper la queue (en supposant qu'il en existe une)

-Ensuite, exécutez la dernière commande pour effectuer la conversion.

(notez qu'une copie du fichier original est en cours de conversion)

-Next, ouvrez l'IDE arduino et ajoutez un nouvel onglet vide (le bouton permettant d'ajouter un nouvel onglet se trouve à l'extrême droite de l'IDE Arduino).

-Romaine l'onglet avec le même nom que le fichier d'en-tête.

-Copiez et collez le contenu dans l'onglet

Étape 5: Tester votre son

Maintenant que le fichier sounddata.h est prêt et que vous avez vérifié le schéma Arduino, vous devez maintenant le télécharger sur votre puce. J'ai utilisé la carte Arduino directement pour tous mes tests initiaux, mais plus tard, j'ai utilisé la configuration "Arduino sur Breadboard" pour mon test restant. J'ai joint le diagramme ici.

Si tout se passe bien, allumez votre horloge et testez-la pour vous assurer qu'elle compte les impulsions de l'horloge puis fournit la sortie. Remarque: lorsque je faisais cela à l'origine, je plaçais le compteur de lecture audio toutes les 60 secondes pour ne pas avoir à attendre une heure entière pour voir si cela fonctionnait, puis j'ai plus tard changé le compteur à 3600 secondes ou 1 heure). Pour modifier l'intervalle de miaulement, localisez le morceau de code à proximité des dernières lignes et recherchez la variable clockCount. Changez-le à la valeur que vous voulez.

Étape 6: Tout souder pour une conception compacte et plus permanente

Passons maintenant à la partie amusante … souder toutes les parties importantes de votre planche à pain à un protoboard plus compact. Vous n'aurez pas besoin de tout, comme la sortie LED ou le bouton de réinitialisation (en supposant que vous en ayez un du circuit Arduino on Breadboard). Il y a de bien meilleures façons de le faire, mais si vous avez des stocks limités, Protoboard est probablement votre meilleur choix. Beaucoup de gens font maintenant leur propre gravure et traitement à la PCB. Si vous pouvez le faire, alors, certainement, faites-le, car c'est beaucoup mieux qu'un protoboard.

Vous devez également connecter votre adaptateur secteur aux nœuds positifs et négatifs du protoboard, là où il rencontre les broches du régulateur de tension. J'ai utilisé le modèle Vtech 7,5 volts. Ce sont environ 10 dollars à la cible, et 12 à Toys R Us. Ou vous pouvez utiliser quelque chose de semblable qui traîne dans la maison. Attention: vous devriez essayer de garder la différence de tension entre le régulateur et l’adaptateur au minimum, car sinon elle chaufferait. Si la différence est grande, installez un dissipateur de chaleur sur le régulateur pour dissiper la chaleur. La différence de tension entre le 7805 et l'adaptateur secteur Vtech n'est que de 2,5 volts à 300 mA, mais vous devez néanmoins placer un petit dissipateur thermique dessus.

Remarque: assurez-vous que vous êtes satisfait / satisfait du croquis sur la puce Atmega car une fois soudé sur le tableau, vous ne pourrez plus le reprogrammer.

Remarque: j'ai également utilisé un dremel pour faire un petit trou au bas du boîtier de l'horloge afin que le cordon de l'adaptateur d'alimentation s'adapte parfaitement. Je l'ai également utilisé pour d'autres tâches lors de la modification de l'horloge, comme la réduction des arêtes vives et le nettoyage de l'intérieur en général.

Étape 7: Tout organiser et l’intégrer à l’horloge

Une fois que tous les câbles et composants ont été correctement soudés, il est maintenant temps d'organiser le câblage et de décider du bon placement de la carte dans le logement du kit Cat. La principale préoccupation ici est de placer tout dans un endroit qui n’interférera pas avec le mouvement de la queue et des yeux. Je ne savais pas non plus à quel point l'adaptation du haut-parleur serait difficile. J'ai donc dû percer des trous pour pouvoir monter le haut-parleur dans un endroit susceptible d'empêcher l'armature du moteur de queue.

Trouver une place pour le tableau peut être délicat et peut nécessiter quelques essais et erreurs. Je me suis installé sur un endroit à gauche, près du logement de la batterie. J'ai ensuite utilisé un pistolet à colle chaude sur les bords du tableau pour le maintenir en place. Vous pouvez trouver des liens de tirage ou des liens zip utiles pour organiser et regrouper les fils de manière ordonnée.

Quelle que soit la technique que vous décidiez de faire, c'est à vous de décider, car réussir à tout ranger dans le boîtier de l'horloge dépendra de votre horloge et de la quantité de données qu'il contient.

Finaliste au

Concours Capteurs