EduRobot BitSquare

BitSquare quadrato nel design, semplicità nella realizzazione di attività introduttive di Coding e robotica a scuola.

Per la lezione che ho condotto oggi per i colleghi che stanno seguendo il mio corso di Didattica della Robotica, organizzato dal CTS di Cosenza, ho progettato un semplice supporto che ospita il Servo:Lite di Kitronik e BBC micro:bit e due servomotori. Nessuna vite di blocco per i servomotori ma elastici che evitano la fuoriuscita dei motori dalle loro sedi, le uniche viti da usare sono quelle che fissano le ruote all’albero del motore.

La progettazione ha richiesto circa 1 ora di lavoro e come sempre sfrutterò questo progetto per svolgere tra qualche settimana un’attività di sperimentazione con alcune classi prime e seconde superiori dell’ITIS passando da una programmazione a blocchi, Blocks, per giungere poi all’uso di MicroPython.
Espansioni già richieste da alcuni colleghi della primaria: aggiungere l’alloggiamento per una penna.

Il costo di stampa è meno di 1€ mentre il tempo di stampa e di quasi due ore, ma questi valori possono scendere in funzione della tipologia di filamento e stampante.

Per gli esercizi di utilizzo lascio a voi, durante i corsi che svolgo, su questo prototipo e strutture similari, propongo numerose schede di lavoro.

Sperando che il progetto possa servire anche ad altri condivido i file per la stampa 3D che trovate su Thingiverse.

Buon Coding a tutti 🙂

Pubblicato in micro:bit, robotica | Contrassegnato , , , , , | Lascia un commento

MicroCode – Language – Lezione 4

Editor delle risorse

Sono disponibili due editor, uno che permette la creazione di loghi 5×5 ed uno per la creazione di semplici melodie.

Editor icone LED

L’editor di icone LED permette di selezionare quali LED sono accesi o spenti per ogni  fotogramma di un’animazione. E’ possibile continuare ad aggiungere icone LED in una sequenza (l’editor farà una copia dell’ultima immagine realizzata):

Editor di melodie

L’editor di melodie ti permette di comporre una sequenza di quattro note, dove ogni nota può essere C, D, E, F o G:

Gestire valori numerici

Per i comandi che prevedono un valore numerico come: radio send, imposta variabile), sono disponibili vari blocchi:

  •  constant values 1, 2, 3, 4 e 5 punti
  •  values of variables X, Y e Z
  •  value of the radio receive event , disponibile solo se la sezione WHEN (QUANDO) ha un evento ricezione radio
  • value of the temperature sensor , sempre disponibile
  • random number generator un dado che fornisce in modo predefinito un numero intero casuale tra 1 e 5 (estremi inclusi).

loops

repeat

Il blocco repeat può essere aggiunta ad una serie di comandi per ripetere l’intera sezione DO. Il blocco valore, dopo repeat, determinano il numero di iterazioni. Se non viene fornito un valore, la ripetizione viene eseguita all’infinito.

WHEN: premi il logo micro:bit, DO: viene visualizzato il logo happy e il logo serio sul display e la visualizzazione dei due loghi viene mostrata per tre volte (la sequenza loghi è seguita dal repeat e dal blocco tre puntini).

Buon Coding a tutti 🙂

Pubblicato in micro:bit, news, tutorial | Contrassegnato , , , , , | Lascia un commento

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 🙂

Pubblicato in arduino, corsi, micro:bit | Contrassegnato , , , , , , , | Lascia un commento

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 🙂

Pubblicato in micro:bit, tutorial | Contrassegnato , , , , , | Lascia un commento

EduRobot 4WD – Bluetooth

Alcuni lettori hanno notato nella lezione in cui ho condiviso i sorgenti per la stampa 3D del robot, che la scheda motori utilizzata è una Adafruit Motor Shield V01 e mi è stato fatto notare che esiste la V02 della scheda, quindi perché ho usato la versione precedente? La risposta non è tecnica ma economica, ho acquistato ad un prezzo interessante, su uno store cinese, una grande quantità di queste schede che poi ho usato per i miei corsi. Ovviamente nulla vieta che voi possiate utilizzare una qualsiasi altra scheda, la logica di programmazione è la medesima, ma certamente varieranno il nome delle istruzioni che controllano il motore, se avete necessità contattatemi.

Lista componenti

  • N. 1 Arduino UNO R3
  • N. 1 Adafruit Motor Shield V01
  • Modulo Bluetooth HC05
  • N. 4 Motori DC 6V
  • N. 4 Ruote

Di seguito trovate i collegamenti elettrici effettuati e il primo sketch di esempio con cui parto per svolgere le successive esercitazioni. Per gli allievi e i docenti che si iscriveranno ai miei corsi darò ulteriori esempi e spiegazioni.

Lo shield per il controllo motori può gestire fino a 4 motori DC in entrambe le direzioni, ciò vuol dire che possono essere azionati sia in avanti che all’indietro. La velocità può anche essere variata con incrementi dello 0,5% utilizzando PWM integrato sulla scheda, ciò permetterà un movimento uniforme e non brusca del robot.

Il ponte H presente sulla scheda può pilotare carichi NON superiori ai 0,6A o che hanno picchi di richiesta corrente NON superiori a 1,2A, quindi utilizzate questa scheda per piccoli motori, i classici motori gialli da 6V vanno più che bene.

Collegamento motori allo shield Arduino Motor Driver

Come indicato nell’immagine che segue è molto semplice:
– saldate due cavi al motorino (in commercio trovate motori con fili saldati)
– collegate i motori ai morsetti: M1, M2, M3 o M4.

Collegamento scheda Bluetooth HC-05 allo shield Arduino Motor Driver

Come sicuramente saprete, il modulo Bluetooth HC-05 permette di convertire una porta seriale UART in una porta Bluetooth e la utilizzeremo per inviare su seriale i caratteri selezionati da una specifica app Android, per comandare direzione e velocità dei motori del robot.

I collegamenti sono:

HC05 <-> Arduino Motor Driver
RX - Pin 1
TX - Pin 0
G - GND
V - +5V

Orientamento ruote.

Collegamento motori M1 e M2.

Collegamento motori M3 e M4.

Modulo Bluetooth HC-05.

Connessione dei pin RX e TX del modulo Bluetooth HC-05 alla seriale di Arduino (pin 0 e pin 1).

Alimentazione del modulo Bluetooth HC-05 attraverso lo shield.

Alimentazione dello shield.

Continua a leggere

Pubblicato in arduino, robotica | Contrassegnato , , , , , , , | Lascia un commento