Archivi categoria: micro:bit

Corsi: Didattica della robotica – CTS di Cosenza


Presso la Rete Provinciale di Scuole per l’inclusività di Cosenza si parte con la nuova stagione di corsi sulla Didattica della Robotica con nuove proposte di kit e attività laboratoriali, dalla robotica di servizio a quella ludica. Il corso programmato da più di 6 mesi vede coinvolte numerose scuole di ogni ordine e grado della provincia di Cosenza.

Sempre da questo settembre per altri enti saranno avviati corsi in presenza ed online sempre di robotica, appena disponibile fornirò indicazioni per procedere con l’iscrizione.

Come più volte ribadito, credo che una soluzione per realizzare una didattica personalizzata di Coding e Robotica sia quella che fa uso di tecnologia a basso costo; questa impiega materiali di uso comune e strumenti di costruzione già in possesso di molte scuole, ciò permette che l’oggetto didattico possa essere creato, manipolato e modificato dall’allievo in piena libertà a scuola e a casa, quindi durante il corso mostrerò come realizzare robot con strutture in cartone e legno.
La realizzazione di robot a fini didattici prevede un controllo dei parametri fisici che può essere agevolmente svolto con strumenti didattici utilizzati comunemente in attività laboratoriali per l’apprendimento del Coding; schede elettroniche come BBC micro:bit, Arduino, Raspberry Pi, possono assolvere a questo compito e la loro programmazione può avvenire utilizzando i linguaggi più adatti al livello di scuola a cui appartengono gli studenti; quindi si potrà optare per un linguaggio grafico a blocchi o testuale.

Negli scorsi mesi mi sono concentrato in modo specifico sulla creazione di kit per la primaria e secondaria di primo grado, molto semplici da creare, manipolare e modificare, pertanto se volete saperne di più rimanete sintonizzati sui miei social 🙂

Per la scuola superiore utilizzerò le evoluzioni di EduRobot Black Panther e EduRobot 4WD (con tutte le estensioni).

Per il CTS di Cosenza non solo Robotica low cost ma anche quella che fa uso di kit commerciali molto diffusi: Bee-Bot, Ozobot Evo, LEGO Education WeDo 2.0, Lego Mindstorms EV3, Makeblock mBot Robot.

Buona Robotica a tutti 🙂

MicroCode – Language – Lezione 3

Sezione “QUANDO”

Il lato sinistro di una regola, la sezione “QUANDO“, inizia con un blocco di un evento che può essere inserito dalla finestra di dialogo che appare quando viene selezionato selezioni il blocco vuoto più a sinistra di una regola:

  • press pressione del pulsante, icona micro:bit, o pin
  • release rilascio del pulsante, icona micro:bit, o pin
  • move movimento dell’accelerometro, in vari modi
  • hear sentire un suono, sia forte che soffuso
  • cambio di temperatura variazione di temperatura, sia più calda che più fredda
  • ricezione radio ricezione via radio di un numero
  • inizio pagina inizia pagina si avvia solo quando la pagina viene avviata (o selezionata), con un ritardo opzionale
  • timer timer di un tempo
  • variabile (X,Y,Z) cambiato con un numero

Se la sezione “QUANDO” viene lasciata vuota, la regola verrà eseguita una sola volta quando la pagina viene avviata.

Eventi, parametri e condizioni

Un blocco evento può essere seguito:

  • da nessun blocco;
  • uno o più blocchi di parametro che determinano le condizioni sotto le quali l’esecuzione procederà dalla sezione “Quando” alla sezione “Fai”.

Ogni evento ha un parametro predefinito, che viene utilizzato quando non viene specificato alcun parametro. I valori predefiniti sono:

press, il valore predefinito del button A ; altre opzioni includono button B , micro:bit logo, pin 0 , pin 1 , pin 2 !
release, i valori predefiniti e le opzioni sono gli stessi di press

La finestra di dialogo sottostante mostra i parametri associati agli eventi di press/release del pulsante.

In funzione dell’evento verranno mostrati parametri diversi.

Condizioni sui valori degli eventi

Quando un evento ha un valore numerico (nel caso della ricezione di un messaggio radio o di un aggiornamento di una variabile), se tale valore è uguale alla somma dei valori (costanti e variabili) che seguono, allora l’esecuzione proseguirà alla sezione “Fai”. Ecco i cinque valori (punti) disponibili:

  • 1 dot:
  • 2 dot:
  • 3 dot:
  • 4 dot:
  • 5 dot:

Il timer è parametrizzato con vari tempi che possono anche essere sequenziati e sommati:

  • 1/4 di secondo:
  • 1 secondo:
  • 5 secondi:
  • ? secondi: – da 0 a 1 secondo, scelto casualmente

Nel caso del timer, la somma specifica la quantità di tempo con cui avviare il timer.

Sezione “Fai”

Il lato destro di una regola, la sezione “Fai”, inizia con uno dei blocchi di comando presenti nella lista che segue:

  • show image mostra una sequenza di animazione sullo schermo LED.
  • show number mostra numero visualizza un valore numerico tra 0 e 99
  • sound emoji riproduce una sequenza di emoji
  • play notes riproduce una sequenza di note (dalla scala di Do maggiore)
  • radio send invia un numero dato tramite la radio
  • radio set group prende un numero e garantisce che i messaggi radio da un diverso numero di gruppo vengano ignorati (il gruppo radio predefinito è 1, il che significa che tutti i micro:bit vedono tutti i messaggi)
  • switch page trasferisce il controllo dell’esecuzione a una pagina specifica
  • set variable inserisce un numero in una variabile (X, Y, Z); predefinito a 0 se non viene specificato nessun valore; inoltre imposta e

Un comando può essere seguito da vari blocchi di parametro, a seconda del tipo di comando.

Come per gli eventi, ogni comando ha un parametro predefinito, nel caso in cui non venga dato alcun blocco di parametro i parametri predefiniti sono:

  • screen mostra di default una faccia felice
  • sound emoji riproduce di default l’emoji giggle
  • radio invia il numero 1 come predefinito
  • switch passa di default alla pagina 1
  • get prende il valore da una variabile (X, Y, Z); se la variabile non era stata precedentemente impostata il valore predefinito è 0. Ciò vale anche per e

Buon Coding a tutti 🙂

EduRobot 4WD – stampare e costruire il robot

Avevo promesso qualche mese fa che avrei rilasciato i sorgenti grafici di EduRobot 4WD e lo scorso giugno studenti di alcune scuole italiane mi hanno chiesto la cortesia di rendere disponibili i sorgenti per la stampa 3D. Gli impegni di fine anno non mi hanno permesso di essere celere nella pubblicazione e visto che domani è l’inizio di un nuovo anno scolastico rendo disponibile la semplice base robotica in modo che possa essere utilizzata e spero anche migliorata dagli allievi.

Ma qual è l’idea progettuale di base di EduRobot 4WD?

Come ribadito nel post di presentazione di EduRobot 4WD, durante le attività laboratoriali di robotica con studenti e docenti, spesso la costruzione della parte meccanica richiede molta attenzione e tempo. Per questo motivo, ho deciso di realizzare un design semplice, ma funzionale, su cui poter facilmente integrare qualsiasi sistema di controllo elettronico. Pertanto per rendere la programmazione più stimolante e varia, ho progettato un robot 4WD che può avere diverse funzionalità: può essere comandato via Bluetooth o WiFi, può operare autonomamente, seguire persone, reagire alla luce, rilevare gas, seguire una linea, o ancora rispondere ai comandi vocali.

In questa struttura le parti che necessitano di solidità sono vincolate da viti metalliche mentre i circuiti di controllo e le batterie di alimentazione sono fissate con velcro a forte tenuta. L’utilizzo del velcro è stata una soluzione che mi ha permesso di ridurre le fasi di assemblaggio e di modifica della struttura. Ovviamente una struttura di questo genere non è cosa nuova, potete ritrovare design simili realizzati in compensato o in plexiglass su cui ad esempio i motori sono vincolati con colla a caldo, ma ciò ovviamente non permette di riutilizzare velocemente i motori per altre esercitazioni; inoltre le forcelle che vincolano i motori possono essere riutilizzati anche in altri kit che ho sviluppato, si veda ad esempio EduRobot Black Panther.

In questo modello, gli elementi che richiedono maggiore robustezza sono assicurati con viti metalliche, mentre i circuiti di controllo e le batterie di alimentazione sono fissate con velcro a forte tenuta. La scelta del velcro ha notevolmente semplificato e velocizzato le fasi di assemblaggio e modifica. Ovviamente una struttura di questo genere non è cosa nuova, potete ritrovare design simili realizzati in compensato o del plexiglass in cui ad esempio i motori sono vincolati con colla a caldo, ma ciò ovviamente non permette di riutilizzare velocemente i motori per altre esercitazioni; inoltre le forcelle che vincolano i motori possono essere riutilizzati anche in altri kit che ho sviluppato, si veda ad esempio EduRobot Black Panther.

La sequenza di assemblaggio è estremamente semplice, bisogna porre attenzione solo all’orientamento dei motori, ma le foto che seguono mostrano tutti i dettagli che vi permetteranno di assemblare il robot in circa 15 minuti.

Nelle foto potete vedere le due versioni:

  • controllo remoto Bluetooth
  • segui linea

Non posso mostrarvi la versione WiFi e con telecamera in quanto in questo momento sono disassemblati.

Ovviamente se serve, con piccole modifiche, potrete realizzare una versione a più livelli in modo da aggiungere tutti i circuiti che vi servono.

Per prelevare i sorgenti grafici seguire il link su Thingiverse.

Versione Bluetooth

Complessivo.

Vista motori.

Dettaglio forcella motori.

Dettaglio sensore Bluetooth.

Continua a leggere

MicroCode – Language – Lezione 2

In questa seconda lezione vedremo come realizzare il primo programma in MicroCode. L’immagine sottostante mostra un programma di una pagina con quattro regole (blocchi istruzione When – Do)

Nel video i passi di realizzazione in cui viene evidenziato l’help contestuale al passaggio del mouse sulle istruzioni.

Le prime due regole si attivano quando viene premuto A.

  • quando premi il pulsante A, fai mostra la sequenza delle due icone che mostrano una faccina che ride sul display del micro:bit

  • quando premi il pulsante A, fai suonare il micro:bit con il suono “faccina felice”

Le altre regole sono simili ma si attivano per il pulsante B; alla pressione viene mostrata una sequenza di faccine tristi ed emesso il suono “triste”.

Pagine ed esecuzione delle regole

L’esecuzione del programma MicroCode inizia sulla pagina 1. Tutte le regole su quella pagina sono attive. Le regole presenti su un’altra pagina diventano attive solo quando il programma passa a quella pagina (tramite un comando esplicito di cambio pagina, che verrà mostrato più avanti. Qualsiasi regola che potrebbe essere ancora in esecuzione sulla pagina corrente (come un’animazione in un ciclo) viene terminata prima che avvenga il cambio di pagina, non si possono mai avere regole in esecuzione allo stesso momento su pagine diverse.

All’avvio del timer viene visualizzata una sequenza di icone (seconda regola) e contemporaneamente dopo 5 secondi dall’avvio del timer più un tempo casuale si passa alla pagina 2 (prima regola).

Al passaggio alla pagina 2 viene mostrata l’immagine di una faccina che ride (prima regola) ed emesso un suono “felice” (seconda regola).

Nel video vengono mostrati i passi di realizzazione del programma e la modalità di creazione e passaggio alla pagina 2.

Eventi e ordine di esecuzione delle regole

Gli eventi, azioni che innescano le regole costituite da blocchi “Quando – Fai”, sono elaborati da MicroCode uno alla volta. Ad esempio, se vengono premuti i pulsanti A e B nello stesso momento (approssimativamente), MicroCode elaborerà o A prima di B o B prima di A.
Per un dato evento, MicroCode elabora l’evento eseguendo le regole per quel determinato evento nell’ordine in cui appaiono sulla pagina corrente. Per ogni regola, viene valutata se le condizioni sull’evento nella sezione “Quando” sono soddisfatte e, in caso affermativo, avviare la sezione “Fai” della regola.

Terminazione della regola

La maggior parte dei comandi nella sezione “Fai”, come ad esempio assegnare ad una variabile un valore, viene completata rapidamente; altri comandi invece richiedono un tempo di esecuzione proporzionale alla lunghezza della sequenza, come ad esempio la visualizzazione di una sequenza di icone, inoltre un’animazione o un suono, possono essere ripetuta più volte (o indefinitamente) utilizzando un blocco “ripeti” (che vedremo nelle prossime lezioni). Nel caso di un’animazione, una regola in esecuzione che utilizza lo schermo del micro:bit, verrà terminata se viene avviata una nuova regola che utilizza anche lo schermo del micro:bit.

Buon Making a tutti 🙂

STEAM per il benessere e la cura delle persone BBC micro:bit: Automatic Tea Maker

Propongo la prima parte di un esercizio che fa parte di un nuovo percorso di formazione di Making e Coding con BBC micro:bit ed Arduino di recente realizzazione.
La nuova azione formativa consiste nella progettazione e costruzione di semplici sistemi di automazione utili alla nostra vita con particolare attenzione allo sviluppo di sistemi che supportano persone con necessità specifiche, quindi usare le STEAM per progettare oggetti utili al nostro benessere, partendo dal Coding e la progettazione 3D, dal mio punto di vista un modo interessante per coinvolgere lo studente in progetti semplici ed inclusivi che coinvolgono il proprio vivere quotidiano.

Tra questa lista di progetti la “Automatic Tea Maker” è uno strumento che nasce dal mio eserciziario di laboratorio di automazione sviluppato con Arduino qualche tempo fa, ora riproposto con un controllo basato su micro:bit.

L’automazione consiste in sistema che regola il tempo di infusione e il movimento della bustina di te nella tazza di acqua calda. La bustina viene collegata ad una leva il cui movimento su/giù, avviene per un tempo fissato dall’utente permettendo così la giusta infusione per i tipo di tè o tisana.

L’attività consiste nella realizzazione di quattro progetti

  1. il primo progetto permette di realizzare un sistema oscillante in cui il tempo di oscillazione e immersione della bustina è fissato all’interno del codice e la struttura meccanica è semplificata e realizzata con oggetti di recupero.
  2. il secondo progetto riprende la prima versione ed aggiunge la possibilità di visualizzare un timer che mostra la quantità di secondi mancanti al termine dell’infusione
  3. il terzo progetto aggiunge al secondo la segnalazione sonora di tutti gli stati e al termine dell’infusione il filtro viene spostato in una posizione esterna alla tazza e con una serie di oscillazioni favorisce lo sgocciolamento per poi posizionarsi in una posizione di riposo che favorisce l’eliminazione del filtro.
  4. il quarto progetto possiede tutte le funzionalità dei punti precedenti e poiché tè e tisane possono avere tempi di infusione diversi, viene aggiunge la possibilità, mediante un pulsante, l’impostazione del tempo di oscillazione e di infusione prima dell’avvio delle oscillazioni;
  5. Il quinto progetto consiste nella modellazione 3D della struttura da stampare con stampante 3D.

In questo tutorial mostrerò solamente la prima parte dell’attività, le successive per ora saranno riservate ai colleghi e agli studenti iscritti ai miei corsi.

Continua a leggere