Table des matières:

Coronavirus EXTER-MI-NATION avec Micro:bit et Daleks : 4 étapes (avec photos)
Coronavirus EXTER-MI-NATION avec Micro:bit et Daleks : 4 étapes (avec photos)

Vidéo: Coronavirus EXTER-MI-NATION avec Micro:bit et Daleks : 4 étapes (avec photos)

Vidéo: Coronavirus EXTER-MI-NATION avec Micro:bit et Daleks : 4 étapes (avec photos)
Vidéo: COVID-19 Updates: IBD Clinic of the Future 2024, Juillet
Anonim
Image
Image

Il s'agit d'un deuxième projet de série sur la protection contre les coronavirus de TinkerGen. Vous pouvez trouver le premier article ici. Nous croyons fermement qu'avec les efforts collectifs de l'humanité, l'épidémie actuelle prendra bientôt fin. Mais même après le passage de COVID-19, nous devons rester vigilants et conserver les bonnes habitudes que nous avons (espérons-le) développées en ces temps difficiles. L'article précédent était axé sur l'utilisation de Micro:bit pour faire plus attention au fait que nous touchons inconsciemment nos visages et, ce faisant, empêcher la propagation des germes. Dans cet article, nous allons concevoir et construire une arme simple mais puissante contre les microbes - un petit appareil, que nous pouvons utiliser pour mesurer le temps que nous passons à nous laver les mains.

Fournitures

Bitmaker Lite

Contreplaqué 1/8 (3 mm) pour le boîtier

Deux colonnes cuivre simple tête M4 * 8 + 5 Deux écrous M4

Deux vis à tête cylindrique à six pans creux M4 * 8

Deux rivets en nylon blanc R480

Deux colonnes aluminium double passe M2*15

Deux vis mécaniques M2 * 8

Étape 1: Assemblage du boîtier

Assemblage du boîtier
Assemblage du boîtier
Assemblage du boîtier
Assemblage du boîtier
Assemblage du boîtier
Assemblage du boîtier

Téléchargez les fichiers.dxf à partir de Thingverse, puis coupez-les dans du contreplaqué de 1/8 (3 mm). Le boîtier a une conception autobloquante, mais vous devrez peut-être appliquer un peu de colle lors de l'assemblage de la boîte. Utilisez deux M4 * 8 + 5 colonnes en cuivre à une tête, deux écrous M4 et deux vis à tête cylindrique à six pans creux M4 * 8 pour fixer Grove Ultrasonic Ranger à la paroi intérieure du boîtier. Sur le côté opposé du boîtier, fixez le servo avec 2 colonnes en aluminium à double passage M2 * 15. Utilisez deux vis à dents mécaniques M2 * 8 pour installer le bras de servo en plastique sur la flèche. Connectez Ultrasonic Ranger et Servo à BitMaker Lite, puis fixez-le à l'intérieur du boîtier avec deux rivets en nylon blanc R480. Attachez la flèche au servo et placez les deux couvercles inférieurs en place. L'assemblage est terminé, codons maintenant !

Étape 2: programme Makecode

Programme Makecode
Programme Makecode
Programme Makecode
Programme Makecode
Programme Makecode
Programme Makecode

J'ai fait deux versions du code pour ce projet: une plus simple, réalisée avec Microsoft Makecode, un environnement de programmation graphique et une plus difficile, écrite en Micropython - celle-ci comprend également la voix Dalek, synthétisée avec le module vocal Micro:bit. Nous allons commencer par un programme plus simple.

Avant de commencer à écrire du code, vous devez ajouter l'extension BitMaker lite à Makecode. Consultez sur la façon de le faire ici.

À l'intérieur du bloc de démarrage, nous effaçons l'écran, définissons les deux variables, start_time et stage à 0, définissons l'angle d'asservissement à 90 et attendons 500 ms avant de démarrer le code de la boucle principale. La logique du code à l'intérieur de la boucle principale est assez simple - tout d'abord, qu'il y ait des mains détectées ou non, si l'étape est à 0, nous réglons le servo à 90 degrés, c'est un état par défaut.

Si nous détectons qu'il y a un objet à une distance inférieure à 10 cm de notre appareil (nous supposerons que ce sont les mains d'une personne), alors nous effectuons une vérification si 1 seconde s'est écoulée depuis la dernière fois que nous sommes passés à l'étape suivante. 1 seconde est définie à des fins de débogage, en fait elle est censée se rapprocher de 4 secondes (selon les recommandations du CDC, la durée assez bonne pour se laver les mains est de 20 secondes, nous avons 5 étapes, donc 20/5=4). Chaque fois qu'une seconde s'est écoulée depuis que nous sommes passés à une étape, si les mains sont toujours détectées à proximité de l'appareil, nous passons à l'étape suivante, réinitialisons la minuterie et jouons une mélodie. Nous avons également défini la broche numérique 1 sur LOW, afin que la génération PWM pour le son n'interfère pas avec le servo - si vous ne le faites pas, vous remarquerez que le servo commencera à devenir fou lorsque la musique est jouée. Il s'agit d'une limitation connue de Micro:bit.

Ensuite, pour chaque étape, nous définissons l'angle d'asservissement dans une succession de blocs if. Enfin, si aucune main n'est détectée (la distance de l'appareil est supérieure à 10 cm) et que la scène n'est pas à 0 - ce qui signifie que l'utilisateur a interrompu le lavage des mains prématurément, nous jouons un son triste et remettons la scène à 0.

si vous rencontrez des problèmes avec le code, vous pouvez télécharger le fichier.hex sur notre référentiel GitHub pour ce projet.

Étape 3: Programme Micropython

Programme Micropython
Programme Micropython

Si vous aimez coder et aimeriez relever un petit défi, alors faire le même projet en Micropython pourrait être plus intéressant pour vous. En plus, cette version est plus fun !

Le code principal de la version Micropython suit la même logique. Une différence majeure ici est que nous ne pouvons pas utiliser directement Ultrasonic Ranger ou Servo - il n'y a pas de modules standard dans le micrologiciel Micro:bit micropython pour ceux-ci. Nous allons donc mettre cette classe Servo dans notre code et utiliser le code Python Grove Ultrasonic Ranger légèrement modifié pour la mesure de distance. Une meilleure façon serait de créer deux fichiers.py autonomes et de les importer en tant que modules - un pour la classe Servo, l'autre pour Ultrasonic ranger. Mais nous garderons tout au même endroit, par souci de simplicité.

L'autre différence clé est l'utilisation du module vocal, qui nous permet de synthétiser la voix familière de Dalek:) Nous utilisons les paramètres de cette documentation pour le module vocal pour créer une voix qui ressemble à la voix de Dalek.

Accédez au référentiel GitHub de ce projet pour télécharger le code Micropython complet.

Étape 4: Faites-en le vôtre

Faites-en le vôtre
Faites-en le vôtre
Faites-en le vôtre
Faites-en le vôtre

Nous avons construit un projet intéressant et utile avec les extensions Micro:bit et Bitmaker Lite, qui peut être à la fois un projet purement éducatif et qui peut vraiment être utilisé dans la salle de bain domestique pour rappeler aux gens de se laver les mains plus soigneusement. Bien sûr, l'expérimentation et l'amélioration ne s'arrêtent pas là - vous pouvez penser à des moyens de rendre le boîtier et l'installation plus robustes et plus adaptés à une utilisation dans les écoles publiques ou les jardins d'enfants. Ou vous pouvez connecter un haut-parleur externe pour augmenter le volume.

Les possibilités sont infinies et la mise en œuvre de vos propres idées dans le matériel et les logiciels est l'âme du mouvement Maker. Si vous proposez des moyens nouveaux et intéressants d'améliorer ce projet, veuillez les partager dans les commentaires ci-dessous. De plus, Bitmaker Lite est livré avec un cours en ligne auquel vous pouvez accéder gratuitement sur la plateforme de cours en ligne de TinkerGen, https://make2learn.tinkergen.com/ !

Pour plus d'informations sur Bitmaker Lite et d'autres matériels pour les décideurs et les éducateurs STEM, visitez notre site Web, https://tinkergen.com/ et abonnez-vous à notre newsletter.

Conseillé: