Indice del libro

Mbot2[1] è un robot adatto all'apprendimento educativo della robotica, la capacità di programmare macchine ad eseguire compiti. Mbot2 è programmabile sia con una interfaccia derivato da Scratch, a blocchi, sia in Python, un linguaggio di programmazione testuale. Per programmare Mbot2 sono disponibili software appositi per windows, macOS, IOS e android. Pur non essendo disponibile un software apposito per linux e possibile programmare Mbot2 utilizzando con Chrome l' interfaccia web online mblock[2].

mbot2
mbot2


mbot2
mbot2

Per far riconoscere al nostro pc Mbot2 è necessario installare e far girare mLink. Le istruzioni per installare mLink su windows, macOS e linux si trovano sul sito di mblock nella guida rapida.[3].


Per l'installazione e il funzionamento su Ubuntu 20.04 e 22.04 sono necessarie alcune accortezze Software libero a scuola/Mbot2#Collegare Mbot2 con linux (via USB)

Guida rapidissima all'uso (via USB) modifica

 
CyberPi Mbot2

Se i collegamenti funzionano si collega il CyberPi, a sua volta connessa al Mbot2, al pc. Si va sull'interfaccia di programmazione con Chrome, si connette il CyberPie a Mblock5 attraverso Mboclk5 lo si programma con i blocchi oppure in Python. Una volta preparato il programma

 
CyberPi Mbot2


Android app per Mbot2 modifica

Guidare il mbot2 modifica

Con Makeblock, installabile dal Play Store, è piuttosto semplice connettere via bluetooth e poi guidare il Mbot2 come se fosse una macchinina radiocomandata.

Sensori e attività con Mbot2 modifica

Ultrasonic Sensor 2 modifica

Sul muso del mbot2 è presente un sensore ad ultrasuoni che permette di misurare la distanza degli oggetti e di conseguenza di programmare delle azioni.

Quad RGB Sensor modifica

Il [sensore RGB è posto sotto alla parte anteriore del mbot2, svolge le funzioni del sensore seguilinea, distinguendo il colore di sfondo da quello di una linea di percorso, di fatto distinguendo il bianco, dello sfondo, che respinge la luce, dal nero, della linea, che invece la assorbe. Alla funzione seguilinea il sensore RGB aggiunge la capacità di riconoscere i colori, distingue il rosso, il verde, il blu, altri colori ed anche colori personalizzati. E' quindi in grado di sapere quando si trova su una parte del fondo colorata e riconosce il colore, cosa che permette di far discendere da questo input altri comandi.

La guida al sensore RGB permette di comprenderne il funzionamento con maggiori dettagli.

Sotto al muso del mbot2 trova posto il sensore RGB con quattro rilevatori:

  • R2 esterno a destra
  • R1 interno destro
  • L1 interno sinistro
  • L2 esterno a sinistra

Vicino ai sensori trovano posto dei led a più colori che servono ad illuminare la superficie sotto al robot, sul sito education makeblock sono visibili immagini del sensore

Per la funzione seguilinea sulla faccia superiore del robot in centro c'è un piccolo pulsante che permette di far riconoscere e ricordare al sensore RGB il colore di sfondo e della linea. Per attivare questa funzione si deve fare un doppio click sul pulsante: il sensore Quad RGB inizierà ad esaminare lo sfondo e la linea. Si comincia mettendo il robot sullo sfondo e premendo due volte il pulsante. Quando i LED che indicano lo stato che segue la linea lampeggiano velocemente, il robot va fatto scorrere manualmente da un lato all'altro sopra lo sfondo e la linea finché i LED non smetteranno di lampeggiare. Ci vogliono circa 2,5 secondi. I valori dei parametri ottenuti vengono memorizzati automaticamente. Se l'apprendimento fallisce, i LED lampeggiano lentamente ed è necessario ricominciare l'apprendimento.

Questa procedura è riportata in inglese sulla guida.


Nelle prove effettuate il sensore si è rivelato funzionante in modo reattivo se il codice viene caricato sul CiberPi, mentre le reazioni sono meno veloci in modalità live.

Collegare Mbot2 con linux (via USB) modifica

Con linux (Ubuntu) mbt2 si collega solo tramite USB e, purtroppo, non via bluetooth, come possibile per win, mac e android; inoltre si deve usare il browser Chrome per programmare con mblock. Il collegamento USB ci permette comunque di utilizzare la modalità Live, anche se il filo di collegamento impone alcune limitazioni. Per collegare Mbot2 - CiberPi al pc si deve innanzitutto installare mlink.


Installare mlink modifica

Una volta scaricato il file deb di mLink dal sito di mblock lo si può installare con l'interfaccia grafica, ad esempio gDebi, o con il comando

sudo dpkg -i mLink-1.2.0-amd64.deb

Può capitare che l'installazione non vada a buon fine per la mancanza di alcune dipendenze. La cosa si può risolvere usando il comando

sudo apt -f install

Seguendo le istruzioni dalla guida nel sito mLink va lanciato prima di aprire Chrome sul sito web che permette di programmare Mbot2. Per lanciare mLink in una finestra di terminale si deve dare il comando

sudo mblock-mlink start

Collegare Mblock5 a CyberPi(Mbot2) modifica

Una volta lanciato mLink, collegato il Mbot2 via cavo usb, e aperta la pagina su Chrome per la programmazione si deve collegare l'interfaccia di programmazione con Mbot2 attraverso CyberPi.

Potrebbe accadere che il collegamento tra interfaccia web Mblock5 e CyberPi non vada a buon fine. Questo potrebbe essere causato dal fatto che il deviceID di CyberPi

Bus 001 Device 016: ID 1a86:7523 QinHeng Electronics CH340 serial converter

che da terminale si può trovare con il comando

lsusb

sia già occupato dalla predisposizione di ubuntu per alcuni modelli di tastiere Braille.[4]

Si può verificare questo fatto con il comando

sudo dmesg

in un terminale che dovrebbe segnalare il fatto che il CyberPi viene automaticamente disconnesso dopo il riconoscimento

usbserial: USB Serial support registered for ch341-uart
ch341 1-4.1:1.0: ch341-uart converter detected
usb 1-4.1: ch341-uart converter now attached to ttyUSB0
ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0

Per risolvere il problema rinunciando al supporto della tastiera Braille in questione si devono andare a commentare rendendole non funzionanti le righe di avvio automatico nelle regole udev con il comando

find /usr/lib/udev/rules.d -name *brltty.rules

si individua il file

/usr/lib/udev/rules.d/85-brltty.rules

che deve essere editato

sudo gedit /usr/lib/udev/rules.d/85-brltty.rules

gedit è il comando per lanciare un editor di testo e può essere sostituito da un altro editor, pluma, vi, nano, 85 è il numero della regola udev per le tastiere braille ma potrebbe non essere la stessa.

Una volta aperto il file si devono individuare le righe

# Device: 1A86:7523
# Baum [NLS eReader Zoomax (20 cells)]
ENV{PRODUCT}=="1a86/7523/*", ENV{BRLTTY_BRAILLE_DRIVER}="bm", GOTO="brltty_usb_run"

Che devono essere commentate aggiungendo #:

# Device: 1A86:7523
# Baum [NLS eReader Zoomax (20 cells)]
# ENV{PRODUCT}=="1a86/7523/*", ENV{BRLTTY_BRAILLE_DRIVER}="bm", GOTO="brltty_usb_run"

Si deve poi salvare e far ripartire il pc.


Note modifica

  1. https://education.makeblock.com/mbot2/
  2. https://ide.makeblock.com/
  3. https://www.mblock.cc/doc/en/part-one-basics/mlink-quick-start-guide.html
  4. https://unix.stackexchange.com/questions/670636/unable-to-use-usb-dongle-based-on-usb-serial-converter-chip

Tutorial modifica


Video tutorial modifica

Collegamenti esterni modifica