Ciao Ciao Box – Realizzare un robot a basso costo

In occasione del corso: creare un kit di robotica educativa a basso costo – 3′ edizione rendo pubblico il progetto del “Ciao Ciao Box” un dispositivo che è stato realizzato con BBC micro:bit V2 pensato per allievi della scuola elementare e media. Come annunciato recentemente sui vari social sto sviluppando una versione su cui sarà possibile bloccare magneticamente, con viti o con mattoncini Lego altri oggetti o scatole interattive programmabili.
Come potete intuire questo tipo di interazione potrà avvenire anche con altri Microcontrollori, ma la semplicità di programmazione di micro:bit rende la realizzazione di questo scatola interattiva interessante con gli studenti più giovani.

Ma come realizzare questo tipo di oggetto?

Innanzitutto l’interazione che mostro in questa lezione è tra due box con bandiera, il cui movimento è realizzato da un piccolo servomotore SG90 ed un terzo box che ha l’unico scopo di emettere un suono che sarà diverso in funzione del box trasmittente.

Quindi 3 box con le seguenti funzionalità:

  • box 1 emettitore suono. Emette suoni diversi in funzione del box che muove la bandiera
  • box 2 invio messaggio “muovi bandiera” al box 3 e nel contempo può ricevere il messaggio “muovi bandiera” dal box 3
  • box 3 invio messaggio “muovi bandiera” al box 2 e nel contempo può ricevere il messaggio “muovi bandiera” dal box 2

Perché usare il box 1 per emettere un suono?

Intuitivamente si potrebbe si potrebbe essere portati a pensare che questa funzionalità poteva essere riprodotta dal box 2 e dal box 3, ma ciò non è possibile.

La gestione del servomotore e nel contempo dell’emissione del suono non può essere fatta contemporaneamente in quanto il comportamento dei due dispositivi elettronici non risponde ai comandi impartiti dalla programmazione. Dal puntosi vista tecnico è presente un unico timer che gestisce il ciclo di funzionamento e il timer può essere usato o dal servomotore o dal buzzer non da entrambi.

Per evitare il comportamento anomalo viene demandata l’emissione del suono al box 1.

Il progetto pertanto potrebbe essere realizzato con un micro:bit V2 dotato di buzzer e due microbit V1 a cui demandiamo il controllo dei servomotori.

Ovviamente se disponete di soli micro:bit V1 potrete connettere un buzzer esterno al micro:bit inserito nel box 1, per questa operazione fate riferimento alle schede di progetto condivise su questo sito.

Struttura del box

Si tratta di un cubo 10×10 cm. La realizzazione dei box può essere fatta con qualsiasi materiale: cartone, compensato, foam. Potreste anche riciclare scatole di alimenti: latte, pasta, sale ecc…

Per chi desidera realizzare le medesime scatole che vedete nell’immagine introduttiva di questa lezione condivido il file pdf che potrà essere utilizzato per tagliare a laser tutte le facce del cubo in cui troverete gli inserti per i pulsanti e i servomotori.

Per chi invece non può utilizzare una macchina a taglio laser condivido il file pdf delle facce del cubo su cui poi voi dovrete realizzare i fori per l’inserimento dei pulsanti e dei servomotori.

Materiali utilizzati

Tutti i materiali potete trovarli su qualsiasi store online e la quasi totalità di quelli in eleco li trovate su Amazon.

Compensato spessore 3 mm (se costruite i box in compensato)

Pulsanti 6 colori 12×24 mm

Servomotori SG90 (0°-180°)

Edge Connector Breakout Board per micro:bit

Jumper corti maschio/maschio (fili da usare per la breadboard)

mini breadboard da 170 punti

Contenitore 4 batterie AA da 1,5 V con interruttore

Fogli di cartone ondulato formato A4 da 4 mm di spessore

Viti M3 12 mm e dadi M3

Collegamenti

Box 1

Si suppone in questo circuito l’utilizzo di un micro:bit V2

Box 2

 

Box 3

 

Come potete notare i circuiti per il box 2 e 3 differiscono solamente per il pin a cui connettiamo il pulsante.

E’ essenziale notare due cose:

  • il micro:bit e il servomotore sono alimentati da due batterie diverse, il micro:bit a 3V mentre il servomotore con un pacco batterie da 6V. Il positivo del servomotore va solamente collegato al pacco batterie da 6V
  • Le masse dei due pacchi batterie sono comuni, si noti il collegamento a massa del micro:bit sulla breadboard e quello del servomotore al pacco batterie.

E’ possibile evitare il pacco batterie da 3V, ma per questa operazione è necessario effettuare una modifica al cavo micro USB utilizzato per connettere il micro:bit al computer, ma demando questa spiegazione ad una prossima lezione.

Per i colleghi che seguono il mio corso darò ulteriori dettagli tecnici e alternative di progettazione.

Programmazione

All’interno del codice condiviso troverete alcune indicazioni sul funzionamento, essenziale porre estrema attenzione al codice dei Box 2 e 3 in cui nel blocco “on start” ho abilitato le resistenze di pull-up sui pin 2 e 8 del micro:bit, questa operazione eviterà di utilizzare due resistori esterni di pull-up connessi al pulsante.

In questa sperimentazione, per i box 2 e 3 ho utilizzato un solo pulsante, lascio a voi le modifiche del circuito e la programmazione per abilitare il funzionamento del secondo pulsante.

Consiglio, per i box 2 e 3 di effettuare il trasferimento del codice sul micro:bit senza connettere il micro:bit all’edge connector, una volta effettuato il trasferimento del programma, scollegatelo dal computer ed inseritelo all’interno dell’edge connector.

Programmazione box1

Programmazione box 2 e 3

Maggiori dettagli su collegamenti e funzionalità da aggiungere durante il corso in presenza.

Buon Coding a tutti 🙂

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.