Octubre 10, 2014

Lego Mindstorms EV3 mitjançant Scratch

Posted in Uncategorized a 3:52 pm per Victor

Scratch és un llenguatge de programació desenvolupat a l’MIT que està pensat per a que els nens aprenguin a programar. És molt fàcil d’aprendre, i els nens ràpidament i fàcil fan les primeres passes en el món de la informàtica i la programació.

El Lego mindstorms és una plataforma per realitzar robots i altres eines mecàniques, desenvolupat per Lego molt interessant, però que té un sistema de programació una mica més complicat de cara a que els nens li puguin aprendre i divertir-se fàcilment.

Si teniu la versió NXT de Lego Mintdstorms, esteu de sort, doncs hi ha una aplicació anomenada Enchanting, que permet programar els robots Lego Mindstorms NXT amb la sintaxi d’Scratch.

¿I que passa amb els que ens hem decidit per la darrera versió dels Mindstorms, la EV3? Doncs que no hi ha res gaire definitiu… Però si, que no sigui definitiu, no vol dir que no es pugui treballar i a continuació miraré d’explicar les passes a seguir per a poder treballar mitjançant Scratch amb el Lego Mindstorms EV3.

Per a aconseguir-ho hem de tenir el següent material:

I fer 3 coses:

A. Descarregar un firmware pel nostre “ladrillo” de Lego Mindstorms EV3

B. Descarregar les extensions de Lego EV3 per Scratch Offline v. 2.X

C. Descarregar la versió 2.X d’Scratch Offline

Anem pas per pas:

A – Descarregar el firmware pel ladrillo de Lego Mindstorms EV3 (aka leJOS)

  1. Ens farà falta una tarja microSD i tenir un adaptador per a poder-la connectar a l’ordinador.
  2. Descarreguem la versió de leJOS per a EV3: http://www.lejos.org/ev3.php
  3. Si donem a downloads, ens portarà cap a: http://sourceforge.net/projects/lejos/files/lejos-EV3/
  4. Descarreguem la darrera versió que hagi disponible (en el moment d’escriure aquesta entrada, és la 0.8.1-beta)
  5. Per a poder fer servir el leJOS hem de descarregar 2 coses de Java (ens haurem de registrar a la web d’Oracle):
    1. Java SE 7 JDK (la versió 8 no serveix):  http://www.oracle.com/technetwork/java/javase/downloads/index.html
      • Un cop descarregat el Java SE 7 JDK, l’hem d’instal·lar al nostre ordinador
      • Es convenient instal·lar-ho a la ruta per defecte
    2. Java JRE for ARM processor: http://www.oracle.com/technetwork/java/embedded/downloads/javase/javaseemeddedev3-1982511.html (si la ruta no existeix, amb l’aplicació de leJOS EV 3 ens indicarà d’on descarregar-lo)
  6. Posem la tarja microSD (amb l’adaptador) a l’ordinador
  7. Executem el Setup de leJOS EV3
    1. Ens demana on tenim el java SDK 7 (li indiquem la ruta si l’hem canviat)
    2. Quan acaba, ens assegurem de que tingui seleccionada la opció “Launch EV3SDCard utility
    3. Donem a Finish
    4. A la pantalla que s’obre hem d’indicar:
      1. Select SD drive (escollim la unitat corresponent a la SD i pulsem Refresh)
      2. Zip file -> No el toquem. El valor per defecte hauria de ser correcte
      3. JRE – > Indiquem on hem descarregat el fitxer ejre-7u60-fcs-b19-linux-arm-sflt-headless-07_may_2014.tar.gz (pot canviar des de que s’ha escrit aquesta entrada)
    5. Seleccionem “Create
    6. Es posarà a preparar la SD i quan doni el missatge de que ha acabat aquest pas ja està.
    7. La barra de progrés en el meu cas es va quedar al 93% quan va sortir el missatge. Tot va funcionar correctament.
  8. Treiem la microSD de l’ordinador.
  9. Posem la microSD al ladrillo Lego Mindstorms EV3 (ha d’estar apagar previament)
  10. Encenem el ladrillo i esperem. S’estarà una bona estona (uns 10 ó 15 minuts) preparant la SD. Paciència. Al següent vídeo es pot veure el procés complet: http://www.youtube.com/watch?v=NyoF0Ws6SkY&t=5m18s&feature=player_embedded
  11. Quan acabi el proces no s’ha de treure la microSD!!!
  12. El ladrillo rebotarà i un minut aproximadament després ja tindrem leJOS EV3 instal·lat al nostre Mindstorms EV3
  13. Si volem tornar al S.O. anterior, només hem d’apagar el ladrillo, treure la SD i encendre’l. Tot estarà com anteriorment.

B. Descarregar les extensions de Lego EV3 per Scratch Offline v. 2.X

  1. Posem el Dongle WiFi al nostre ladrillo Mindstorms EV3, i el configurem des del ladrillo carregat amb leJOS per a que es connecti al mateix punt WiFi al que es connecta el nostre ordinador (altrament no es veuran).
  2. Ens esperem a que el ladrillo tingui una IP assignada. És convenient fer un ping des del nostre ordinador a la IP que se li ha assignat, per assegurar-nos que hi ha connectivitat.
  3. Descarregarem l’extensió per Scratch des de: https://github.com/koen-dejonghe/ev3-scratch-helper-app
  4. Fixem-nos que a la dreta hi ha la opció Download per descarregar un fitxer.zip
  5. Descomprimir el zip
  6. Obrim el Símbolo del sistema (Todos los programas/Accesorios/Símbolo del sistema).
  7. Anem a la carpeta on hem descomprimit el zip (cd c:….)
  8. Executem la següent comanda: gradlew.bat bootRun
  9. Farà unes operacions i veurem que indica que ha trobat el ladrillo i es quedarà en un prompt de l’estil: Building 50%>
  10. Deixem la finestra oberta, i ja estem preparats per connectar-nos des de Scratch

C. Descarregar la versió 2.X d’Scratch Offline

  1. Descarregarem Scratch 2.X (la X variarà en funció de la versió que hi hagi operativa en aquell moment) de http://scratch.mit.edu/scratch2download/
  2. Instal·lem i executem Scratch
  3. Ara hem de carregar les extensions de Lego Mindstorms EV3 per a Scratch:
    1. Apretant la tecla Shift, seleccionem amb el ratolí la opció File del menú d’Scratch i veurem la opció “Import experimental HTTP extension“.
      • Si no apretem la tecla Shift, aquesta opció no apareixerà!!!
    2. Clickem la opció Import experimental HTTP extension i seleccionem el fitxer ev3-helper-app.s2e que està al directori on hem descomprimit el fitxer Zip del pas B i aquí hem d’anar a “scratch/en/extensions“.
  4. Si ho hem fet tot bé, a l’apartat “More Blocks” del llenguatge d’Scratch veurem la opció “EV3HelperApp”.
  5. Ara es tracta de fer servir la imaginació i posar-se a programar el nostre Lego Mindstorms EV3 des d’Scratch

Si es vol provar una aplicació, l’autor de l’extensió ha posat una demo per scratch a “scratch/en/demos” que es diu scratchcar i que si la carreguem, al pulsar la tecla “g” ens pemetrà moure el robot amb els cursors, sempre que tinguessim els motors connectats als ports A i B del ladrillo

Advertisements

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out / Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out / Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out / Canvia )

Google+ photo

Esteu comentant fent servir el compte Google+. Log Out / Canvia )

Connecting to %s

%d bloggers like this: