Sommario:

Coronavirus EXTER-MI-NATION Con Micro:bit e Daleks: 4 passaggi (con immagini)
Coronavirus EXTER-MI-NATION Con Micro:bit e Daleks: 4 passaggi (con immagini)

Video: Coronavirus EXTER-MI-NATION Con Micro:bit e Daleks: 4 passaggi (con immagini)

Video: Coronavirus EXTER-MI-NATION Con Micro:bit e Daleks: 4 passaggi (con immagini)
Video: Night 2024, Dicembre
Anonim
Image
Image

Questo è un secondo progetto in serie sulla protezione dal coronavirus di TinkerGen. Potete trovare il primo articolo qui. Crediamo fermamente che con gli sforzi collettivi dell'umanità, l'attuale epidemia finirà presto. Ma anche dopo che il COVID-19 è passato, dovremmo rimanere vigili e mantenere le buone abitudini che (si spera) abbiamo sviluppato durante questi tempi difficili. L'articolo precedente era focalizzato sull'uso di Micro:bit per prestare maggiore attenzione a noi toccando inconsciamente i nostri volti e così facendo prevenire la diffusione di germi. In questo articolo progetteremo e costruiremo un'arma semplice ma potente contro i microbi: un piccolo dispositivo che possiamo usare per misurare la quantità di tempo che passiamo a lavarci le mani.

Forniture

Bitmaker Lite

Compensato da 1/8 (3 mm) per la custodia

Due colonne in rame a testa singola M4 * 8 + 5 Due dadi M4

Due viti a testa cilindrica con esagono incassato M4 * 8

Due rivetti in nylon bianco R480

Due colonne M2 * 15 in alluminio a doppio passaggio

Due viti meccaniche M2 * 8

Passaggio 1: assemblaggio della custodia

Assemblaggio della cassa
Assemblaggio della cassa
Assemblaggio della cassa
Assemblaggio della cassa
Assemblaggio della cassa
Assemblaggio della cassa

Scarica i file.dxf da Thingverse, quindi tagliali da compensato da 1/8 (3 mm). La custodia ha un design autobloccante, ma potrebbe essere necessario applicare un po' di colla durante l'assemblaggio della scatola. Usa due M4 * 8 + 5 colonne in rame a testa singola, due dadi M4 e due viti a esagono incassato M4 * 8 per fissare Grove Ultrasonic Ranger alla parete interna del case. Sul lato opposto del case, collegare il servo con 2 colonne in alluminio a doppio passaggio M2 * 15. Utilizzare due viti a denti meccanici M2 * 8 per installare il braccio del servo in plastica sulla freccia. Collegare Ultrasonic Ranger e Servo a BitMaker Lite e quindi fissarlo all'interno della custodia con due rivetti in nylon bianco R480. Collegare la freccia al servo e posizionare sia la parte superiore che copertine inferiori attivate L'assemblaggio è terminato, eseguiamo il codice ora!

Passaggio 2: programma Makecode

Programma Makecode
Programma Makecode
Programma Makecode
Programma Makecode
Programma Makecode
Programma Makecode

Ho realizzato due versioni del codice per questo progetto: una più semplice, realizzata con Microsoft Makecode, un ambiente di programmazione grafico e una più difficile, scritta in Micropython - che include anche la voce Dalek, sintetizzata con il modulo vocale Micro:bit. Inizieremo con un programma più semplice.

Prima di iniziare a scrivere codice, è necessario aggiungere l'estensione BitMaker lite a Makecode. Consulta come farlo qui.

All'interno del blocco di avvio, puliamo lo schermo, impostiamo le due variabili, start_time e stage su 0, impostiamo l'angolo del servo a 90 e aspettiamo 500 ms prima di avviare il codice del ciclo principale. La logica del codice all'interno del ciclo principale è abbastanza semplice: prima di tutto, indipendentemente dal fatto che ci siano mani rilevate o meno, se lo stadio è 0, impostiamo il servo a 90 gradi, è uno stato predefinito.

Se rileviamo la presenza di un oggetto a una distanza inferiore a 10 cm dal nostro dispositivo (assumeremo che siano le mani di una persona), eseguiamo un controllo se è trascorso 1 secondo dall'ultima volta che siamo passati alla fase successiva. 1 secondo è impostato per scopi di debug, in realtà dovrebbe essere più vicino a 4 secondi (secondo le raccomandazioni del CDC, la durata abbastanza buona per lavarsi le mani è di 20 secondi, abbiamo 5 fasi, quindi 20/5=4). Ogni volta che è trascorso 1 secondo da quando siamo passati a una fase, se le lancette vengono ancora rilevate in prossimità del dispositivo, avanziamo alla fase successiva, resettiamo il timer e suoniamo una melodia. Abbiamo anche impostato il pin digitale 1 su LOW, in modo che la generazione PWM per il suono non interferisca con il servo - se non lo fai, noterai che il servo inizierà a comportarsi in modo pazzesco durante la riproduzione della musica. Questa è una limitazione nota di Micro:bit.

Quindi per ogni fase impostiamo l'angolo del servo in una successione di blocchi if. Infine, se non vengono rilevate mani (la distanza dal dispositivo è maggiore di 10 cm) e il livello non è 0, il che significa che l'utente ha interrotto prematuramente il lavaggio delle mani, riproduciamo un suono triste e riportiamo il livello a 0.

se hai problemi con il codice, puoi scaricare il file.hex dal nostro repository GitHub per questo progetto.

Passaggio 3: programma Micropython

Programma Micropython
Programma Micropython

Se ti piace programmare e vorresti una piccola sfida, allora realizzare lo stesso progetto in Micropython potrebbe essere più interessante per te. Inoltre, questa versione è più divertente!

Il codice principale della versione Micropython segue la stessa logica. Una delle principali differenze qui è che non possiamo utilizzare direttamente Ultrasonic Ranger o Servo: non ci sono moduli standard nel firmware Micro: bit micropython per questi. Quindi, inseriremo questa classe Servo nel nostro codice e utilizzeremo il codice Grove Ultrasonic Ranger Python leggermente modificato per la misurazione della distanza. Un modo migliore sarebbe creare due file.py autonomi e importarli come moduli: uno per la classe Servo, l'altro per il ranger ultrasonico. Ma terremo tutto in un posto, per semplicità.

L'altra differenza fondamentale è l'uso del modulo vocale, che ci consente di sintetizzare la voce familiare di Dalek:) Usiamo i parametri di questa documentazione per il modulo vocale per creare una voce che suoni come la voce Dalek.

Vai al repository GitHub di questo progetto per scaricare il codice Micropython completo.

Passaggio 4: crealo da solo

Rendilo tuo
Rendilo tuo
Rendilo tuo
Rendilo tuo

Abbiamo costruito un progetto interessante e utile con l'estensione Micro:bit e Bitmaker Lite, che può essere sia un progetto puramente educativo che può davvero trovare impiego nel bagno di casa per ricordare alle persone di lavarsi le mani più accuratamente. Naturalmente, la sperimentazione e il miglioramento non si fermano qui: puoi pensare a modi per rendere il case e l'installazione più robusti e più adatti all'uso nelle scuole pubbliche o negli asili. Oppure puoi collegare un altoparlante esterno per aumentare il volume.

Le possibilità sono infinite e implementare le proprie idee in hardware e software è l'anima del movimento Maker. Se trovi alcuni modi nuovi e interessanti per migliorare questo progetto, condividi i commenti qui sotto. Inoltre, Bitmaker Lite include un corso online a cui puoi accedere gratuitamente sulla piattaforma di corsi online di TinkerGen, Per ulteriori informazioni su Bitmaker Lite e altro hardware per produttori ed educatori STEM, visita il nostro sito Web, https://tinkergen.com/ e iscriviti alla nostra newsletter.

Consigliato: