Non ci sono prodotti a carrello.
Costruisci la tua Smart Car e programmala con micro:bit
micro:bit รจ una piccola scheda progettata dalla BBC come oggetto finalizzato a sviluppare le capacitร logiche, e le competenze, nel campo della programmazione dei computer, nei giovani che frequentano i primi cicli della scuola.
Lโiniziativa รจ stata coronata da successo e diversi produttori hanno sviluppato e commercializzato dispositivi aggiuntivi per ampliare le possibilitร offerte dal micro:bit.
La Smart Car con micro:bit ci ha particolarmente incuriosito, in quanto permette di sperimentare unโampia gamma di situazioni tipiche di ciรฒ che viene definito “physical computing” utilizzando un unico kit di costo contenuto.
Tra le opportunitร di sperimentazione, per quanto riguarda il micro:bit utilizzato singolarmente, possiamo elencare:
โข la gestione di una matrice di LED 5 x 5;
โข lโutilizzo di un accelerometro in grado di rilevare e riconoscere diversi tipi di movimento come lo scuotimento, le rotazioni e la caduta libera;
โข lโutilizzo di una bussola elettronica in grado di rilevare lโorientamento e la rotazione in gradi rispetto al Nord. Un’ulteriore possibilitร potrebbe essere lโutilizzo come rilevatore di metalli (magnetici);
โข l’utilizzo di due pulsanti sia singolarmente che premuti in contemporanea;
โข l’utilizzo del modulo Bluetooth Smart Technology che permette di connettere il micro:bit con altri dispositivi dotati della stessa tecnologia, come altri micro:bit, PC, smartphone, kit Bluetooth, tablet e fotocamere;
โข l’utilizzo del modulo a radio frequenza per la comunicazione tra due o piรน micro:bit;
โข la misura della temperatura ambiente utilizzando il termometro integrato;
โข la possibilitร di comunicazione via bus I2C ed SPI.
Lโassociazione con la scheda di espansione permette le seguenti funzionalitร aggiuntive:
โข la comunicazione di comandi per mezzo di un telecomando ad infrarossi;
โข la generazione di note e melodie musicali utilizzando il buzzer cablato sulla scheda di espansione;
โข la gestione multicolore di due LED RGB da 10 mm;
โข la gestione multicolore di ulteriori tre LED RGB;
โข sulla scheda sono replicati i pin che fanno riferimento ai bus seriale, I2C ed SPI;
โข sulla scheda sono inoltre replicati i pin delle periferiche del micro:bit non utilizzate dalla scheda di espansione. In particolare i pin P4, P5, P6, P7, P10;
โข lโalimentazione da batteria agli Ioni di Litio con circuito di ricarica integrato nella scheda di espansione.
Le ulteriori funzionalitร sono fruibili in modo ottimale assemblando completamente il kit โrobotโ che include i motori, le ruote ed il sensote ad ultrasuoni. In questa configurazione sono accessibili le ulteriori funzionalitร :
โข il controllo dei motori;
โข l’utilizzo dei sensori frontali (agli infrarossi e agli ultrasoni) per il controllo dellโambiente circostante. Questi permettono di sperimentare funzionalitร come evitare ostacoli e seguire oggetti;
โข l’utilizzo dei sensori inferiori, agli infrarossi, per programmare un inseguitore di linea.
Infine, come ultima ciliegina, il tutto รจ controllabile per mezzo di una app per smartphone Android. In alternativa alla app รจ utilizzabile lโambiente di sviluppo standard JavaScript Blocks Editor.
I componenti della Smart Car con micro:bit
In Fig. 1 riportiamo la descrizione dei pin del connettore del micro:bit mentre in Fig. 2 riportiamo il layout della scheda di espansione con lโindicazione dei dispositivi montati sulla scheda e la loro disposizione sulla stessa.
Alcune note sulla scheda di espansione del rover per micro:bit:
โข il connettore per lโalimentazione e la ricarica della batteria non รจ utilizzabile per programmare il micro:bit. Lโoperazione di programmazione del micro:bit deve essere eseguita collegando il cavo USB, proveniente dal PC, direttamente al connettore USB presente sul micro:bit;
โข la ricarica della batteria รจ garantita dallโintegrato LTC4056, appositamente progettato per la ricarica ed il mantenimento in carica degli elementi agli Ioni di Litio. Lo stato di carica della batteria รจ indicato da due LED: il LED CHA (indicatore di carica in corso) rosso ed il LED END di colore verde che indica che la carica รจ terminata;
โข Lโintegrato PCA9685, un driver PWM a 16 canali, pilotato tramite bus I2C, interfaccia tutti i device che richiedono un segnale PWM per essere pilotati, tra i quali i due motori in corrente continua, i due LED da 10 mm, i sensori di linea, le uscite per i servocomandi aggiuntivi e per il sensore allโinfrarosso per evitare gli ostacoli. Nella Tabella 1 diamo unโindicazione di quali pin dellโintegrato PCA9685 fanno capo ai diversi sensori ed attuatori, mentre in Tabella 2 sono elencati i collegamenti ai pin del micro:bit.
Costruzione della Smart Car con micro:bit
Il piccolo robot didattico viene fornito in forma di kit parzialmente assemblato. La scheda di espansione รจ completamente montata mentre gli altri componenti devono essere montati prima dellโutilizzo. In questo modo non รจ necessario eseguire saldature. Tenete presente che nella confezione della Smart Car, distribuita da Futura Elettronica, รจ compreso il micro:bit.
La confezione, visibile in Fig. 3, contiene i seguenti componenti:
โข 1 x scheda micro:bit;
โข 1 x scheda espansione micro:bit;
โข 1 x sensore a ultrasuoni con cavo
di collegamento;
โข 2 x motori;
โข 1 x piastra di supporto per il sensore
a ultrasuoni;
โข 2 x pneumatici;
โข 1 x cavo micro usb;
โข 1 x controllo remoto a infrarossi;
โข 1 x cacciavite;
โข 4 x M3*40 colonnine in rame;
โข 2 x M2*10 colonnine in rame;
โข 2 x supporti sensore ultrasuoni;
โข 1 x batteria al litio;
โข 1 x manuale di istruzioni;
โข 1 x ruotino omnidirezionale;
โข 2 x supporti motore;
โข viti e dadi.
Fig. 4 – Schema di montaggio della Smart Car.
Nella Fig. 4 รจ visibile lo schema di montaggio che prevede le seguenti operazioni:
1. Montaggio dei motori utilizzando gli specifici supporti bianchi e le viti da 2x6mm e relativi dadi (viti dalla parte della scheda di supporto e dadi dalla parte dei supporti motore). Collegate i cavi dei motori agli appositi connettori a fianco degli stessi facendo attenzione al verso di collegamento;
2. Una volta montati i motori inserite le due ruote sugli assi dei motori esercitando la pressione necessaria (senza esagerare);
3. Posizionate il ruotino omnidirezionale e fissatelo con due viti da 2x6mm e relativi dadi (viti dalla parte della scheda di supporto e dadi dalla parte del ruotino);
4. Montate le quattro colonnine in ottone da 3x40mm che forniranno il supporto per il sensore ad ultrasuoni. Fissate le viti dalla parte del telaio. Poi posizionate la basetta di supporto superiore con la parte piรน lunga rivolta verso le ruote della Smart Car. Fissate le due viti posteriori da 3x8mm. Posizionate le due flange di sostegno del sensore a infrarossi e fissatele alla basetta e alle colonnine anteriori con due viti 3x8mm.
5. Collegate il cavo al sensore ad ultrasuoni;
6. Fate passare il cavo nel foro rettangolare della basetta di supporo.
Collegatelo al connettore sulla scheda di espansione ed infine fissate il sensore ad ultrasuoni alle due flange con le viti da 3x8mm e relativi dadi. Viti inserite dalla parte anteriore e dadi dalla parte delle flange;
7. Verificate che il deviatore di alimentazione sia in posizione “spento”, ovvero con la levetta verso il connettore della batteria. Posizionate la batteria sul suo alloggiamento e collegate i cavi al corrispondente connettore, di fianco al deviatore di accensione, facendo attenzione al verso. Collegate i cavi dei motori agli appositi connettori a fianco degli stessi facendo attenzione, anche in questo caso, al verso di collegamento;
8. Inserite il micro:bit nellโapposito connettore, con i LED rossi rivolti verso la parte anteriore della Smart Car, quella con il ruotino. Le ruote di trazione sono nella parte posteriore.
In Fig. 5 รจ visibile lโaspetto finale della Smart Car con le relative dimensioni. Una volta completato lโassemblaggio, come prima operazione รจ opportuno eseguire una ricarica della batteria. Collegate un alimentatore da 5V con connettore micro USB (quello dei telefonini), al connettore โCHARGEโ della scheda di supporto, con il deviatore nella posizione di spento. Si accenderร il LED rosso che indica che la batteria รจ in carica. La fine della carica verrร indicata dallo spegnimento del LED rosso e dallโaccensione di quello verde di fine carica. Ora siamo pronti per la prima programmazione della Smart Car.
Programmazione ed utilizzo della Smart Car con micro:bit
Sono disponibili diversi ambienti per la programmazione del micro:bit, la caratteristica della maggior parte di questi รจ la loro disponibilitร via web, senza necessitร di installare software sul proprio PC. Dopo aver caricato nella cache del browser le applet degli ambienti di sviluppo, รจ possibile scrivere i propri programmi anche in assenza di un collegamento internet. Per i dispositivi mobili, come tablet e smartphone, oltre che gli ambienti web sopra citati sono disponibili anche โappโ gratuite scaricabili dagli store dei provider.
Prima di iniziare dobbiamo collegare il micro:bit al nostro PC utilizzando il cavo USB incluso nella confezione. Una volta collegato, micro:bit dovrebbe venire riconosciuto immediatamente come una memoria di massa USB. Nel caso di Windows XP verrร richiesto di installare il relativo driver. Ora collegatevi al sito di riferimento di micro:bit
Nella pagina principale cliccate sul pulsante โLetโs Codeโ e vi troverete nella pagina che elenca i diversi ambienti di programmazione. Per programmare il micro:bit in modo da poter interagire con la scheda di espansione della Smart Car dobbiamo utilizzare lโambiente di sviluppo Javascript Block Editor, un ambiente di sviluppo a blocchi che si ispira alla soluzione adottata da Scratch.
Javascript BLOCK EDITOR per micro:bit
Come Scratch รจ molto semplice da usare ma non รจ un giocattolo. Permette di approfondire la programmazione strutturata e la gestione di eventi.
Il metodo di composizione di un programma consiste nello scegliere i blocchi che rappresentano le istruzioni, trascinarli nel pannello dellโeditor, configurarli nelle parti personalizzabili ed โincastrarliโ in modo corretto. In questa operazione si รจ facilitati dalla forma dei blocchi. I blocchi si connettono solo se sono compatibili e le forme corrispondono. Chiaramente questo meccanismo non garantisce che la logica che si va a realizzare sia formalmente corretta, almeno dal punto di vista sintattico. Anche in questo ambiente di sviluppo vi sono blocchi molto โespressiviโ, come quello disponibile per configurare il display a LED.
Una volta terminata la fase di programmazione รจ possibile eseguire il codice, appena scritto, in ambiente di simulazione, per eseguire i test di correttezza, prima di trasferire il codice stesso sul micro:bit fisico. Per attivare lโambiente di simulazione si deve cliccare sullโicona โRestart the simulationโ, quella centrale in basso a sinistra. Una volta entrati nellโambiente di simulazione possiamo provare le diverse funzionalitร .
Dopo aver aperto lโambiente di sviluppo, per iniziare a programmare la Smart Car, รจ necessario arricchire lโambiente di sviluppo stesso con lโestensione al Javascript Block Editor per la Smart Car. Per far questo cliccate sulla voce โAdvancedโ del menu laterale a sinistra, che riassume le librerie di blocchi di programmazione disponibili. In fondo alla tendina cliccate sulla voce โAdd Packageโ come visibile in Fig. 6.
Si apre la finestra visibile in Fig. 7. In questa finestra inserite lโindirizzo:ย https://github.com/lzty634158/yahboom_mbit_enย che punta al repository GitHub che contiene la libreria di blocchi specializzata per la Smart Car.
Una volta inserito lโindirizzo cliccate sullโicona di ricerca che, come risultato, vi visualizzerร la libreria โmbitโ. Cliccatevi sopra ed i blocchi verranno aggiunti alla barra del menu laterale (Fig. 8).
Una breve nota sul funzionamento della libreria. Alcuni blocchi presenti nella libreria facilitano la programmazione dei LED e dei sensori, fornendo unโinterfaccia a piรน alto livello rispetto a quella che richiede lโimpostazione dei singoli pin. Il valore aggiunto della libreria รจ quello di offrire diversi blocchi di controllo, come appunto quelli per lโimpostazione dei LED e per il controllo dei motori, che interfacciano i singoli pin di generazione PWM dellโintegrato PCA9685. Questa impostazione permette di ampliare di molto le funzionalitร disponibili nel micro:bit usato da solo e di semplificarne, nel contempo, al massimo, lโutilizzo.
Come primo esempio di utilizzo, abbiamo scelto unโapplicazione, tra quelle disponibili sul sito di tutoring della Smart Car, che permette di comandare il funzionamento del โrobottinoโ utilizzando il telecomando a infrarossi.
Scorrete la pagina fino alla Sezione “3 โ Robot lessons”. Cliccate sulla voce โ3.9 โ Infrared Controlโ.
Nella pagina che si apre potete eseguire il download del codice del progetto stesso.
Ora, dalla finestra di programmazione, caricate il programma nellโambiente di sviluppo, cliccando sullโicona a forma di cartelletta e scegliendo poi il programma โmicrobit-Lesson-9-Infrared-control.hexโ del quale avete appena eseguito il download come visibile in Fig. 9. Cliccate sul pultante โGo aheadโ per continuare.
Data la quantitร di documentazione disponibile per lโambiente Scratch ci limitiamo a suggerirvi solo alcune modifiche al programma che avete aperto per limitare la velocitร della Smart Car.
In tutti i blocchi dove vedete impostata la velocitร a โ255โ modificate i valori come visibile in Fig. 10, in modo da limitare la velocitร della Smart Car, il valore di velocitร 255, che viene poi trasformato nel duty cicle assegnato al PWM di controllo dei motori, la rende un oggetto incontrollabile. Con lโoccasione riordinate anche i blocchi in modo da renderne piรน โฆ razionale la disposizione. Un esempio รจ visibile in Fig. 10. Fatto?
Eseguite il download del programma, una volta in una vostra cartella in modo da avere un backup e poi, successivamente, nel file system del micro:bit, che dovrebbe apparirvi tra le memorie di massa del vostro PC con la sua letterina di identificazione. Ricordate di collegare il cavo USB proveniente dal vostro Pc al connettore USB del micro:bit e non a quello della scheda di espansione, altrimenti non si carica nulla.
Alla fine del download, scollegate il cavo USB e prendete il telecomando. La prima volta dovete togliere la protezione della batteria, altrimenti โฆ niente infrarossi.
Una breve descrizione delle funzioni del telecomando รจ visibile in Fig. 11.
Il tasto โ1โ spegne tutti i LED eventualmente accesi.
Il tasto “2”, col disegno della lampadina, accende i LED RGB con luce bianca.
I tasti “4” (โ+โ) e “5” (โ-โ) permettono di accendere i LED con luce, rispettivamente verde e rossa.
I tasti del blocco “2”, permettono di pilotare il movimento dalla Smart Car. Il significato dei tasti รจ intuibile dai disegni di riferimento.
I tasti del blocco “6”, da zero a nove, invece, permettono di presentare sul display a matrice di LED diverse configurazioni di disegni.
Accendete la Smart Car con il deviatore di alimentazione. Attendete la partenza del programma e โฆ buon divertimento. Ovviamente questa รจ solo la base sulla quale potete iniziare a sperimentare, modificando questo o gli altri programmi di esempio.