In questa lezione vedremo come costruire un programma che permette di visualizzare sulla matrice di LED la frase “Salve mondo!” impareremo inoltre come caricare sulla scheda il programma realizzato.
Di cosa avete bisogno
n.1 BBC micro:bit
n.1 Micro USB
n.1 Computer o tablet
n.2 x Batterie AAA ed un contenitore per le batterie (opzionale perché la scheda potrà essere alimentata direttamente anche via USB)
Per questo tutorial ci concentreremo sul JavaScript Blocks Editor.
Partiamo…
Un click su Let’s Code per incominciare a programmare.
Dall’area di programmazione cancellate l’istruzioni “on start” che non servirà in questo esercizio:
Selezioniamo dalla sezione “Basic” l’istruzione “show string Hello!” e trascinatela nell’area di programmazione all’interno dell’istruzione “forever”.
Nel momento di calma lavorativa estiva ho deciso di realizzare un corso introduttivo in 10 lezioni sull’uso del BBC micro:bit che utilizzerò con i mie allievi delle classi prime (superiore) nei prossimi mesi. Il corso è da intendersi introduttivo e se desiderate, come accade per qualsiasi contenuto che pubblico su questo sito, usate liberamente questi appunti secondo le vostre necessità, spero che questo lavoro possa essere utile.
Tutte le lezioni sono già impostate le pubblicherò a distanza di circa di 2 o 3 giorni salvo imprevisti o impegni didattici.
BBC micro:bit è un piccolissimo microcontrollore che può essere utilizzato per una grande varietà di progetti a livello didattico per svolgere attività laboratori di Coding, ad esempio per sperimentazioni sulla creazione di giochi, robot, strumenti musicali, oggetti indossabili e molto altro. La versatilità e la semplicità d’uso, unita ad una buona dose di fantasia da parte dei vostri studenti permetterà di creare attività laboratoriali che possono anche avere una forte interazione con il mondo fisico.
La distribuzione del BBC micro:bit iniziò nel 2016, venne regalata a tutti gli studenti dell’Inghilterra e nel 2017 la scheda e stata resa disponibile per la vendita in: Finlandia, Francia, Germania, Inghilterra, Italia, Olanda, Svezia e nel breve la distribuzione verrà estesa a molti altri paesi.
Ho avuto la fortuna di acquistare la scheda diversi mesi fa, non appena venne resa disponibile in Italia, ne ho valutato prestazioni e modalità di utilizzo a scuola, ma le avventure robotiche con DotBot hanno rallentato la produzione delle lezioni destinate agli studenti, riprendo con questo post la realizzazione di appunti dedicati al micro:bit.
Oltre alle 10 lezioni introduttive ho sviluppato ulteriori lezioni in cui spiego come realizzare dispositivi IoT e diverse applicazioni robotiche.
Probabilmente il tutto diventerà una buona raccolta di dispense ed esercitazioni, forse un libro open, ma i pensieri e i progetti corrono veloci e tutto potrà cambiare 🙂 nel mentre tra un pensiero e l’altro inizio a scrivere ciò che ho sperimentato nei mesi passati.
Per chi fosse interessato da ottobre ripartirà un ciclo di miei Webinar ed ho intenzione di svilupparne uno dedicato all’uso BBC micro:bit per fare Coding a scuola.
La versatilità del micro:bit permette di impostare lezioni sul Coding sia per il primo che per il secondo ciclo di studi del nostro ordinamento scolastico.
Per rendere il percorso accessibile alla maggior parte dei colleghi e studenti ho cercato di ridurre al minimo i concetti di elettronica, mentre ogni concetto informatico è spiegato con disegni e schemi, in questo modo le lezioni potranno essere utilizzate per ogni livello di scuola ed espanse a piacimento da docenti ed allievi.
Durante questa prima parte del corso useremo come ambiente di programmazione il Microsoft Block Editor che permette la creazione di codice unendo blocchi funzionali, così come accade con Scratch o Blockly. L’intera programmazione avviene on-line all’interno di una pagina web, inoltre non sarà necessario installare nessuna driver sul vostro computer.
Nei corsi successivi mostrerò anche come realizzare progetti in JavaScript, Python e Microsoft Touch Develop.
Micro:bit è una scheda elettronica che per alcune funzionalità ricorda una scheda Arduino. Sulla scheda troviamo un microcontrollore a 32 bit, il “cervello” che governa l’intero dispositivo, inoltre sono presenti: un magnetometro (bussola elettronica), modulo Bluetooth, sensore di movimento (accelerometro), sensore di temperatura, uscite ed ingressi analogiche e digitali, due pulsanti, un pulsante di reset, una matrice di 25 LED.
Ma perché utilizzare micro:bit a scuola?
Mi è stato chiesto:
“Michele ma tu che ti occupi di didattica con Arduino da anni perché vuoi usare micro:bit?”
Prima di ogni cosa sono un insegnante è uno dei miei obiettivi è trovare soluzioni efficaci che mi permettono di costruire una didattica anche personalizzata, soprattutto in presenza di necessità specifiche dello studente, Arduino mi ha permesso di fare tantissimo e continuerò ad usarlo, BBC micro:bit è uno strumento in più specificatamente progettato per fare formazione (Coding) a scuola con bambini dai 7 ai 13 anni.
Micro:bit ha un costo relativamente basso, dispone a bordo di sensori sufficienti per svolgere molte attività interessanti, la gestione dei sensori avviene mediante istruzioni semplici, inoltre le competenze elettroniche che bisogna avere sono molto molto molto basse ed inoltre può essere programmato in diverse modalità tutte semplici.
Siamo quasi alla partenza per l’edizione 2017 della Mini Maker Faire di Torino e come community Rokers non potevamo mancare a questo evento che quest’anno, per l’alto numero di partecipanti si svolgerà in due giornate: 27 e 28 maggio 2017 in Via Egeo 18 – Torino. Avremo a disposizione un tavolo sufficientemente ampio per ospitare i progetti degli utenti della community, ma soprattutto il nostro desiderio è ospitare i progetti robotici anche di altre persone che pur non facendo parte dei Rokers vogliono mostrare i loro lavori o chiedere supporto. Vogliamo andare oltre gli schemi diffusi dei concorsi e delle gare robotiche, desideriamo, divertendoci, supportare progetti che affrontano nuove sfide didattiche e soluzioni pratiche al vivere quotidiano, dalla disabilità e non solo, azioni progettuali che vedono la robotica e le esigenze dell’uomo al centro, quindi un momento di aggregazione e sperimentazione.
Se desiderate quindi, portate i vostri attrezzi e costruiamo insieme robot! 🙂
Ma cosa porteremo?
Robot di ogni tipo, robot da costruire, la nostra passione e la competenza di moltissimi, studenti, insegnanti e appassionati della robotica di servizio.
Per quanto mi riguarda, le attività di fine anno scolastico mi stanno occupando tantissimo e tra un consiglio di classe ed un’interrogazione, sto programmando cosa fare alla #MMFTO, certamente porterò con me l’esperienza di fare didattica della robotica, ma la fortuna è che nel gruppo, ormai giunto a più di 60 iscritti, sono presenti persone fuori dal comune a cui potrete chiedere ogni cosa riguardo alla cloud robotics, all’elettronica alla programmazione alla didattica. Spero di conoscervi, passate a trovarci 🙂
Descrizione del progetto:
Rokers (Robot Makers) è una community italiana che vuole diffondere la robotica di servizio nel mondo non professionale. Lo scopo di Rokers è organizzare incontri informali tra makers, ingegneri, insegnanti e appassionati.
I nostri obiettivi:
Mostrare progetti e condividere sapere
Proporre attività in grado di ispirare gli altri makers
Fare networking
Se ti stai chiedendo a che categoria appartiene il nostro progetto ecco alcune parole chiave:
Education
Maker Pro
Raspberry Pi
Arduino
Robotica di servizio
Science
Per essere aggiornati sulle nostre attività collegati al gruppo Facebook:
Sto svolgendo in queste settimane un corso Arduino per i miei allievi di II’, ma gli impegni dei consigli di classe e le attività di vicepresidenza mi hanno portato a spostare un paio di lezioni e per farmi perdonare ho deciso di implementare velocemente una breve lezioni che generi l’effetto “waooo” 🙂 spero possa funzionare. L’idea è quella di comandare la marcia e l’arresto di motori asincroni trifase (380 Vac) remotamente attraverso comandi dati da cellulare utilizzando tecnologia a basso costo.
Aggiungere funzionalità di controllo remoto via WiFi ai propri progetti Arduino è ormai diventato relativamente semplice e molto economico. E’ da qualche tempo che sto utilizzando i noti ESP8266 nella versione più economica ESP01 per effettuare esperimenti di domotica a basso costo. ESP8266 è un microcontrollore programmabile in una modalità molto simile a quanto viene fatto per Arduino è costituito da un circuito SoC (System on Chip) dalle dimensioni ridottissime (5 x 5 mm) e la scheda che lo ospita integra un’antenna WiFi.
Esistono diversi modelli di ESP che includono l’ESP8266 ad essi è stato assegnato un nome che ha la seguente struttura ESP-XX dove XX è un numero che in questo momento va da 01 a 13 e che sicuramente nei prossimi mesi sarà destinato ad aumentare. In generale numeri più alti indicano funzionalità e performance più elevate, ma sicuramente ad oggi la versione più diffusa per semplicità di utilizzo e costi resta ancora l’ESP01.
I modelli ESP differiscono uno dall’altro per le seguenti caratteristiche:
dimensioni del modulo;
memoria flash, esterna al chip e varia da 512 KByte fino a 4MByte;
numero di pin;
antenna WiFi stampata su scheda o su apposito connettore a cui collegare un’antenna
Nell’immagine che segue un elenco dei più diffusi moduli ESP disponibili:
Come già accennato in precedenti post in questi mesi sto svolgendo una serie di attività di prototipazione rapida di sistemi di rilevazione ambientale presso la facoltà di Agraria di Padova e l’esigenza di espandere la quantità di ingressi analogici di Arduino è una necessità reale che può essere superata agevolmente con pochissimi euro (per la precisione 1€ 🙂 ) utilizzando l’integrato 4051 Multiplexer/Demultiplexer analogico ad 8 canali in grado appunto di ampliare il numero di I/O di Arduino.
Esigenze di questo tipo si presentano spessissimo, ad esempio nel caso voi vogliate collegare più sensori analogici ad un ESP che dispone di un solo ingresso analogico, o più semplicemente andare oltre i 6 pin analogici di Arduino UNO R3, situazione che si presenta ad esempio nel caso in cui si stanno occupando i pin analogici A4 e A5 per la comunicazione I2C per altri dispositivi.
L’integrato 4051 viene realizzato da diverse aziende vi allego i datasheet corrispondenti alla versione prodotta da Philips e Texas Instruments, identici nelle funzionalità:
All’interno trovate tutte le indicazioni necessarie per poterlo usare che vi riassumo nelle righe che seguono.
Piedinatura dell’integrato
Dove:
Z: pin input/output (connesso agli Input/Output Arduino )
E: pin di enable (attivo basso, cioè attivo su LOW da connettere a GND)
VEE: tensione di alimentazione negativa (da connettere a gnd)
VSS: terra (0 V)
A0-A1-A2: pin di selezione input (connessi a tre pin digitali di Arduino) – A0 bit meno significativo (LSB), A2 bit più significativo (MSB)
Da Y0 a Y7: pin di inputs/outputs
VDD: tensione di alimentazione positiva (da 3V a 5v)
Tabella di verità
Dalla tabella si evince che per poter far funzionare l’IC è necessario connettere E (Enable) a GND.
Il 4051 è un integrato in tecnologia CMOS dotato di 8 ingressi (nominati Y) che può accettare segnali analogici compresi tra 0V e 5 V, tali segnali possono essere selezionati mediante tre pin di selezione nominati: A0, A1, A2 ed inviati direttamente ad un pin analogico di Arduino per la successiva elaborazione.
La selezione del canale Y scelto (in altre parole del segnale analogico che si desidera leggere o scrivere) può essere fatta sfruttando lo stesso Arduino mediante 3 pin digitali, sui 3 pin si comporrà il numero binario corrispondente all’ingresso analogico Y scelto.
A titolo di esempio, ricordando che con tre bit possiamo rappresentare tutti i numeri tra 0 e 7 (2^0 = 1; 2^1 = 2; 2^2 = 4):
Se A0 = 1, A1 = 1 e A2 = 0 allora l’uscita selezionata sarà la Y3
(2^1 + 2^1 + 2^0 = 2 + 1 + 0 = 3)
Se A0 = 1, A1 = 0 e A2 = 1 allora l’uscita selezionata sarà la Y5
(2^1 + 2^0 + 2^2 = 2 + 0 + 4 = 5)
Per chiarirne il funzionamento analizziamo le due modalità operative:
Input: lettura di segnali analogici presenti sugli ingressi Y del 4051
Output: invio di un segnale analogico su una delle 8 uscite Y del 4051
4051 usato come multiplexer con Arduino
Lettura di segnali analogici presenti sugli ingressi Y del 4051Continua a leggere→