Cargando...
 

Historial: mBlock en LliureX 16.

Previsualización de la versión: 10

Versions
-LliureX 16

1. Introducció

 

L'mBlock és un entorn de programació molt bàsic pensat per a robots i plaques de MakeBlock; té el gran avantatge de que recollir tot el necessari per a fer els primers passos en el món de la programació. Tant si disposem d'un robot mBot amb totes les extensions, com si tan sols volem programar una placa amb Arduino, l'mBlock ens proporcionarà totes les eines necessàries per a poder treballar.

L'mBlock està basat en el llenguatge de programació Scratch, per la qual cosa resulta fàcil i intuïtiu a l'hora de programar. A més, un avantatge important que presenta respecte d'altres entorns és que es poden traduir els blocs de Scratch a C directament. Això és interessant si volem introduir C a l'alumnat que ja ha vist Scratch.

 

2. Instal·lació de l'mBlock

 

Per a instal·lar l'mBlock podem descarregar-nos el paquet d'instal·lació des del web página web. En el nostre cas descarregarem la versió per a Linux. Una vegada descarregat haurem de descomprimir el paquet per a poder iniciar el programa.

 

1 Mblock

 

Iniciem el programa fent doble clic sobre l'executable mBlock.

3. Entorn de l'mBlock

 

Només iniciar l'mBlock apareixerà la pantalla següent:

 
2 Mblock

 

El programa pot canviar l'entorn segons les nostres necessitats. Per a això, anem al menú Edita i trobarem les opcions següents:

 

Opció Detalls
Amaga l'escenari Si no necessitem l'escenari podem llevar-lo.
Escenari xicotet És el mateix entorn però l'escenari es redueix per a tindre més espai per als nostres blocs.
Mode turbo Accelera el dibuixat de l'escenari.
Mode Arduino Amb el mode Arduino podem traduir el nostre programa en Scratch a C i carregar-lo directament a l'Arduino.

 

Tenim també el menú Idioma Fitxer en què podem triar l'idioma i guardar i obrir projectes.


4. Carrega el microprogramari

 

D'acord amb el que volem fer haurem de triar un tipus de microprogramari diferent, aleshores anem al menú Plaques i triem el model de placa o robot que utilitzem.

 

4 Mblock


 

Una vegada tenim definida la placa, hem de definir com s'ha de connectar al robot. Per a això, anem al menú Connecta > Port sèrie i podem veure com apareix el port /dev/ttyUSB0. Si no apareix és perquè no ha detectat l'USB, això pot ser perquè no hem connectat correctament l'USB o perquè no tenim permisos per a escriure-hi.

Aleshores apareixeran tots els dispositius que tenim connectats. Seleccionem el port en què tenim connectat el dispositiu que volem programar (en aquest cas /dev/ttyUSB0)

 

6 Mblock

 

Podem veure que no podem seleccionar Actualitza el microprogramari, quan hàgem seleccionat l'USB eixes opcions ja podran ser escollides. Podem comprovar que s'ha connectat a la placa si en el nom de la finestra ens apareix la paraula "Connectat".

 

7 Mblock

 

Ara hem d'actualitzar el firmware de la placa. EL firmware ens servirà per a poder executar els blocs sense necessitat de tenir que carregar-lo a la nostra placa. Cosa molt útil quan tractem de depurar el programa que estem construint. Li donem a actualitzar firmware, i quan acabe de carregar-lo ens apareixerà una finestra que ens avisarà de que el firmware ja està actualitzat.

Ara ka podrem començar a programar la nostra placa.

 

4. MakeBlock

En funció del fimware que escollisques te van a aparèixer unes funcions, així, per exemple si escollim el firmware per a fer un projecte en mBot ens apareixeran totes les funcions corresponents al Robot mBot. Per a poder veure les funcions hem de polsar en el botó Robot. Aquest ens carregarà tots els mòduls de mBot.

 

5 Mblock

 

Igualment podrem fer el mateix amb tots els robot derivats de mBot, com el mBot Ranger, també podem utilitzar el MakeBlock Me Orion (que és una placa ja preparada amb el xip ATMEGA per a utilitzar els connectors RJ25 de MakeBlock) així com el Mega Pi, que és altre dispositiu de MakeBlock per a poder controlar diversos motors.

Com podràs veure, en tots ells és necessari realitzar una xicoteta inversió econòmica en les plaques. Si disposem ja de Arduino UNO als nostres centres també podem optar d'adquirir un shield  ME UNO Shield (un shield és una placa que s'integra perfectament en la placa Arduino UNO i està dissenyada per a aquesta) per a poder utilitzar els components de MakeBlock.

El gran avantatge que tenen aquest tipus de plaques és que muntat un projecte amb diferents components es torna pràcticament trivial, ja sols hi ha que anar connectant connectors RJ25.

 

5. Programant un mBot (seguidor de línia negra)

 

Per a començar a programar un mBot, hem d'haver carregat prèviament el firmware del mBot.

Abans de començar a programar qualsevol dispositiu hem de definir clarament que volem que faja. Així definirem les següents condicions:

  • El robot seguirà una línia negra i quan surta de la mateixa tornarà altra vegada a la línia.
  • Quan es trobe cap obstacle el robot pararà.

Una vegada tinguem definit què volem que faja, hem de veure com ho implementem. Per a implementar-ho utilitzarem els dos sensors que detecten clar/obscur, un a la dreta i l'altre a l'esquerra i el sensor d'ultrasons que tenim davant del mBot:

 

9 Mblock

 

Ens quedaria un diagrama de blocs com el següent:

 

Digrama MBlock Va   Page 1

Que implementaríem en Scratch d'aquesta manera:

10 Mblock

 

Una de les opcions a les quals podem treure profit a l'hora de programa en mBot, és la de crear blocs en mBlock (com funiona quan programem). En el nostre cas hem creat dos blocs per a facilitar la nostra programació un poc. Hi ha que tenir en compte a quins ports estan connectats els diferents sensors.

En aquest cas hem canviat un parell de coses i afegit una funció sirena després d'implementar el diagrama. Podem descarregar el programa exemple  d'ací .

Depuració i càrrega del programa

 

Una vegada tinguem el programa fet podem anar provant si tenim el firmware del mBot carregar a la nostra placa, per a això simplement polsem sobre qualsevol bloc i veurem com apareix un contorn groc en el programa. això significa que està funcionant:

 
11 Mblock

 

Tanmateix, també podem conèixer l'estat d'un sensor arrastrant un bloc solt on el llegisca específicament del sensor i polsar sobre ell. Al polsar sobre ell en donarà l'estat del sensor:

 

12 Mblock
13 Mblock

 

Una vegada ja hagem depurat el programa i ens hagem assegurat de que tot funciona correctament, podem carregar el programa a la nostra placa. Així, haurem d'anar a Editar > Modo Arduino i podrem veure el codi en C.

 

14 Mblock

 

Li donem a Pujar Arxiu i es carregarà el programa a la nostra placa, de manera que ha podrem desconnectar de l'ordinador per a poder utilitzar el robot de manera autònoma.

 

6. Arduino en mBlock

 

El mBlock en Arduino s'utilitza de manera similar que en mBot. La principal diferència és que no existeixen tants blocs per a Arduino com per  a mBlock. Per a començar a programar en Arduino, la primera cosa que hem de fer es carregar el firmware per a la nostra placa Arduino, en el nostre cas Arduino UNO.

Una vegada tinguem carregar el firmware ha podem programar en arduino. Hem de tindre en compte que podem treballar en Arduino de dues maneres, una de les maneres és utilitzant el firmware de mBlock i altra és en mode Arduino.

En el nostre exemple anem a crear un programa amb 4 posadors i 4 leds, dos dels leds els encenem amb dos polsadors i els altre dos amb dos botons que controlarem l'escenari de treball, els quals faran moure el panda cap avant i girar.

Per a entrar en cada figura de l'escenari hem de fer doble click sobre la figura. El codi que té cada figura és el següent. El primer de tots és el codi de l'escenari principal.

 
18 Mblock

 

Per a fer funcionar el codi simplement hem de fer click en una dels blocs de l'escenari i veurem com els blocs s'il·luminen. Així mateix, podem depurar el programa o analitzar el funcionament de les entrades i sortides simplement fent click sobre algun altre bloc. D'aquesta manera ens donarà el resultat d'aquesta entrada.

 

19 Mblock  

És possible que només necessitem programar l'Arduino per a controlar algún procés, i no ens siga necessari utilitzar l'escenari. Per a això anem a Editar > Mode Arduino i veurem que ens apareix un entorn sense escenari. És més, totes les opcions per a interactuar amb l'escenari estan deshabilitades. El programa que creem llavor serà traduït automàticament a C i carregar-lo directament a Arduino. D'aquesta manera tindrem un programa autònom sense necessitat de tenir un cable usb enganxat al nostre Arduino.

A més, si necessitem funcionalitat que no tenim en el mBlock, podem editar el programa amb el IDE d'Arduino.


20 Mblock

 

7. Problemes comuns

 

Podem trobar-nos amb la situació que no puguem escriure al nostre port perquè el nostre usuari no té permisos d'escriptura al port USB. Un exemple d'això és poder accedir al port com a sudoer però no com amb altre usuari.

Per a donar permisos als usuaris podem executar els següents comandaments al terminal:

sudo usermod -G dialout -a NOM_USUARI sudo usermod -G tty -a NOM_USUARI

 

Historial

Avanzado
Información Versión
2020-11-19 09:09 juanma 27
Ver
2020-11-04 16:15 juanma 26
Ver
2019-11-20 12:49 juanra 25
Ver
2017-06-20 10:11 pilar 24
Ver
2017-06-20 10:08 pilar 23
Ver
2017-06-20 10:02 pilar 22
Ver
2017-06-20 09:41 pilar 21
Ver
2017-06-20 09:31 pilar 20
Ver
2017-06-20 09:25 pilar 19
Ver
2017-06-20 09:22 pilar 18
Ver
2017-06-20 09:20 pilar 17
Ver
2017-06-20 09:08 pilar 16
Ver
2017-06-20 09:06 pilar 15
Ver
2017-06-19 14:53 pilar 14
Ver
2017-06-19 14:52 pilar 13
Ver
2017-06-19 14:19 pilar 12
Ver
2017-06-19 14:07 pilar 11
Ver
2017-06-19 13:51 pilar 10
Ver
2017-06-05 12:24 alviboi 9
Ver
2017-06-05 12:21 alviboi 8
Ver
2017-06-05 12:14 alviboi 7
Ver
2017-05-04 09:47 alviboi 6
Ver
2017-05-04 09:46 alviboi 5
Ver
2017-04-18 14:09 alviboi 4
Ver
2017-04-18 14:08 alviboi 3
Ver
  • «
  • 1 (actual)
  • 2