3rd Robotic Workshop

24 01 2015

Enguany la visita anual dels companys holandesos de l’Udens College, organitzada pel departament d’Anglès de l’institut, va coincidir amb la Setmana Europea de la Robòtica. Aquesta va estar la nostra activitat: la tercera edició del Tecno-Logic Robotic Workshop  :-)

L’activitat va estar dissenyada i comandada pels Robotic Masters 4ESO David Ch, Kevin L, Kiko M i Pablo C, ajudats pels “becaris” 3ESO Helena B, Lidia P, Xavi J i JRamon E i els col·laboradors Igor T i Sergio M. Tots plegats van aconseguir que en una hora 8 holandesos i els seus respectius acompanyants bellvitgencs de 1r de Batxillerat muntessin i programessin 4 robots NXT per què responguessin al so, al contacte i a la distància. El vídeo recull el resum de l’activitat, amenitzat per David Guetta -Memories-, les fotos estan allotjades a Flickr.

RoboticsWorkshop





IBprinters3D

21 12 2014

… I si fem una impressora 3D? Així va començar fa gairebé un any, sense tenir molt clar si érem capaços d’enfrontar-nos al repte però sabent que volíem fer-ho, el darrer Treball de Recerca Tecno-Lògic: IBprinters3D. Repte superat! 

El procés ha estat llarg, tant els alumnes com la tutora hem après un munt de coses (tècniques i socials), ens hem adonat que és cert això de la Revolució Maker,  que com diu Obijuan: “La información y el conocimiento es la clave de todo. Esa es la razón por la que soy un forme defensor de los movimientos de hardware y software libre: para que todos tengamos acceso a la información …”

La impressora de IBprinters3D es diu IB-3PO, és una RepRap Prusa i3 filla de la BCN3D de l’Ateneu de Fabricació Digital les Corts, fruit de la recerca, la perseverança, la imaginació i l’ajut de moltes persones, especialment de la comunitat Clone Wars.

Hem entés el valor de compartir la informació, per això hem documentat el treball al site ibprinters3d per tal que qualsevol pugui treure’n profit, inclús pugui seguir els nostres passos i fer-se la seva impressora 3D.

Malauradament, tot i l’ajut excepcional en la darrera part del treball de Héctor Esteller, col·laborador de l’Ateneu de Fabricació les Corts, a hores d’ara IB-3PO encara no imprimeix amb precisió. Aquesta és la part més difícil: ajustar la velocitat dels motors al firmware, la potència dels controladors, la tensió de les corretges, … Però no importa, això se solucionarà.

IB-3PO es quedarà a l’institut, aquest va ser el compromís en acceptar l’ajut econòmic de l’AMPA que sumat als diners aconseguits mitjançant un sorteig ens va permetre comprar les proteïnes de IB-3PO. A partir d’ara, els Tecno-Lògics Bellvitge imprimirem en 3D!





BellBots NXT v.1415. Resum 1r trimestre

21 12 2014

Tornem a fer descobrir la robòtica als Tecno-Lògics 3ESO amb Lego NXT + Enchanting, software lliure i gratuït que utilitza la interfície gràfica de Scratch sobre el llenguatge de programació LeJOS. El vídeo recull el resum del treballat durant el primer trimestre per 20 alumnes amb 4 robots:

Fins ara hem aprés, mitjançant petits reptes de descoberta, a controlar els paràmetres dels quals depèn la navegació dels robots, i a utilitzar estructures bàsiques de programació per fer que reaccionin segons les condicions de l’entorn: resposta al contacte, control de la distància amb sensor d’ultrasons i reconeixement de línies a terra amb sensor de llum.

Com a repte final del trimestre ens vam proposar un seguidor de línia des de l’aula de Tecnologia fins a la cantina de l’institut: 25 m de línia blanca sobre terra fosc que el robot va trigar en recórrer 5 minuts. Repte superat!

El material d’aprenentatge dels alumnes està allotjat enguany a https://sites.google.com/site/bellbotg, lloc que va creixent sobre la marxa.

Enguany hem creat un bloc: http://bellbotg.blogspot.com.es compartit amb la resta de Tecno-Lògics Bellvitge, en què els alumnes expliquen els reptes proposats i com els han solucionat.





Control remot de S4A amb App Inventor

8 11 2014

Tot i què S4A no carrega cap programa a l’Arduino i només permet la comunicació entre dispositius connectats en xarxa local, podem controlar l’execució d’un programa en S4A des del mòbil, inclús des d’una pàgina web. Aquesta és la nostra proposta per encendre i apagar un LED:

El procés és simple un cop descobert i consta de 3 fases:
1. Creació del programa S4A amb instruccions associades a la recepció de missatges
2. Activació dels sensors remots en S4A
3. Creació d’una aplicació amb App Inventor des de la qual enviar els missatges a l’S4A

El programa S4A
Les instruccions a executar des de l’app han d’estar associades a la recepció de missatges. Aquest és el nostre programa de prova, amb dues funcions per encendre o apagar un LED connectat al pin 10 d’Arduino en funció de l’estat d’un sensor. Així, el LED s’encendrà o s’apagarà quan el programa rebi el missatge llumON o llumOFF, sigui des del mateix S4A o des de l’app.

appS4A02

Activació dels sensors remots
El protocol de sensors remots és una funció que permet l’interacció entre Scratch i altres programes. Aquesta comunicació es fa a través del port 42001 de l’ordinador via TCP/IP, el protocol de comunicació per Internet, i s’activa des del menu Editar / Host de Xarxa de S4A, que a més ens mostra l’adreça IP de l’ordinador.

SR01

Sintaxi de l’enviament de missatges
De la mateixa manera que amb el bloc Envia a tots de Scratch fem que s’executi el codi dins la funció Al rebre, podem definir URLs que continguin la instrucció d’enviament d’aquest mateix missatge.
Així, l’execució serà la mateixa si enviem el missatge des del mateix programa, des d’un navegador d’Internet o des d’una app mòbil.

Missatges

http:// indica que es tracta d’una URL
192.168.1.12 és l’adreça IP de l’ordinador amb el programa S4A funcionant
42001 és el port de comunicació
broadcast és la funció d’enviament de missatges
llumON: el valor de la funció broadcast és el nom del missatge a enviar, que ha de coincidir amb el del programa en S4A

L’aplicació amb App Inventor
Aquests són els components mínims que necessitem per encendre i apagar el LED:

appS4A01

UserInterface/ListPicker
És un botó que en ser clicat mostrarà una llista amb els noms dels dispositius amb els que ens pugui interessar connectar el mòbil per executar l’app.
Al pannel Blocks de l’App Inventor definim com elements de la ListPicker els noms dels dispositius, dins d’una llista.

appS4A03

Un cop haguem seleccionat el dispositiu, caldrà assignar-li la seva adreça IP (la podem obtenir des de l’S4A). Nosaltres hem creat una variable que hem anomenat IP, i l’hem inicialitzat a zero. El valor d’aquesta variable serà la IP del dispositiu seleccionat.

appS4A04

Enviament de missatges mitjançant botons
El BotoEncen, en ser clicat, ha d’enviar el missatge: http://IP:42001/broadcast=llumON.
Per fer l’acció de l’enviament hem utilitzat un component de conectivitat ViewViewer, que pot executar accions html en un frame, sense necessitat d’obrir el navegador i perdre la pantalla de l’app.
A la programació del botó només cal definir la crida al WebWiewer en clicar-lo, així com la URL: el missatge a enviar. Com que aquest missatge conté dades de diferent naturalessa (text + variable IP) cal un bloc de text Join per treballar amb tots ells a l’hora.

appS4A05

La programació del BotoApaga és exactament la mateixa que la del BotoEncen. L’únic que canvia és el nom del missatge a enviar, en aquest cas: llumOFF.

appS4A06

A partir d’aquí, amb una mica d’imaginació es pot complicar i perfeccionar l’app amb més botons, enllaços, diferents pantalles, etiquetes informatives, …
Aquestes són les pantalles de la nostra, inspirada en la proposada per l’ex-alumne Tecno-Lògic J. Santiago al seu Treball de Recerca en Domòtica amb Arduino controlat per Scratch for Arduino, i gràcies a l’ajuda de Victor Casado, membre de l’equip de desenvolupament de S4A.
Clicant sobre la imatge podeu descarregar l’arxiu .aia de l’aplicació

DomoS4A





Inserir codi Arduino al bloc

26 10 2014

La nostra participació al projecte Tecnologies Creatives. Impulsem la Robòtica ens impideix enguany descobrir Arduino amb el llenguatge gràfic Scratch for Arduino a 4t d’ESO, amb algun pro i bastants contres.

Entre d’altres pegues … com podem compartir els nostres codis al bloc de manera comprensible? Copiant el codi des de l’IDE Arduino i engantxant directament a l’editor del bloc es crea un desordre que no entenem ni els propis creadors :-(

Després de molt pensar i investigar, resulta que la solució és ben senzilla !!!
Al menu Editar de l’IDE hi ha una opció que copia tot el codi del programa en fomat HTML …

CopiarCodiArduino

Ara només cal enganxar-lo a l’editor del bloc. Aixó sí, a la vista d’edició en HTML (vista Text als blocs de wordpress.com, com aquest).

Aquest és el resultat, d’alló més professional … :-)

/* Blink */

int led = 13;  // pin de connexió LED
int temps = 1000;  // temps d'intermitència

void setup()
{
    pinMode(led,OUTPUT);  // el pin especificat és una sortida digital
}

void loop()
{
    digitalWrite(led,HIGH);  // treu 5V pel pin especificat (encén el Led)
    delay(temps);  // durant el temps especificat
    digitalWrite(led,LOW);  // treu 0V pel pin especificat (apaga el Led)
    delay(temps);  // durant el temps especificat
}

Resulta que tot el codi HTML del codi Arduino queda colocat entre les etiquetes <pre> </pre> La resta de codi HTML es refereix als colors del text. Si trec aquestes etiquetes el resultat és potser menys professional però per al meu gust més amable*:

/* Blink */

int led = 13;  // pin de connexió LED
int temps = 1000;  // temps d’intermitència

void setup()
{
  pinMode(led,OUTPUT);  // el pin especificat és una sortida digital
}

void loop()
{
  digitalWrite(led,HIGH);  // treu 5V pel pin especificat (encén el Led)
  delay(temps);  // durant el temps especificat
  digitalWrite(led,LOW);  // treu 0V pel pin especificat (apaga el Led)
  delay(temps);  // durant el temps especificat
}

* A Blogger (els blocs dels meus alumnes) passa tot el contrari: el codi HTML amb les etiquetes <pre></pre> queda bé, però treient aquestes etiquetes, perd tot el format.





Arduino + S4A. Hello world via Bluetooth

17 07 2014

Gràcies a Arduino i a Scrath for Arduino els Tecno-Lògics ens introduïm en la computació física de manera creativa, però sempre amb cables USB pel mig. Aquesta “limitació” ha portat de cap a la profe durant molt de temps, però al final el mòdul Bluetooth ha estat dominat!
Abans que se m’oblidi cap detall deixo aqui la meva xuleta de com ho he aconseguit:

El mòdul Bluetooth HC-06 utilitzat, comprat a e-bay >>>

Connexions HC-06 –> Arduino:
HC-06 RXD –> Arduino Pin 1 (TXD)
HC-06 TXD –> Arduino Pin 0 (RXD)
HC-06 GND –> Arduino GND
HC-06 VCC –> Arduino +5V
Els pins 0 (RXD), 1 (TXD) són els que utilitza Arduino per comunicar-se amb el PC (enviar i rebre dades)

Sincronització del HC-06 amb el PC
Un cop connectat a l’Arduino i aquest a l’ordinador via USB per alimentar-lo l’he sincronitzat amb el PC a través de l’administrador de dispositius Bluetooth del Windows.

Configuració del HC-06
Aquest ha estat el punt més liós: el mòdul Bluetooth està configurat per treballar a 6.900 bps, però segons Victor Casado, de l’equip de desenvolupament de S4A, tant l’S4A com el firmware estan configurats en 38.400 bps. Així doncs, cal canviar la configuració del HC-06.
Després de molts intents frustrants, ho he aconseguit gràcies al tutorial de Erick Rodriguez al bloc Ingeniería en Mantenimiento Industrial amb un sketch que permet canviar la configuració de diferents paràmetres del HC-06 mitjançant l’enviament de comandaments AT a través de la placa Arduino. Aixó si, desconnectant el bluetooth abans de carregar l’sketch a l’Arduino i tornant-lo a connectar dins del temps fixat.

Comprovació del funcionament
A l’administrador de dispositius del windows he mirat quin port COM ha assignat al mòdul Bluetooth. En executar l’S4A he aturat la cerca automàtica de la placa, he especificat el port COM corresponent i … la taula de sensors ha començar a ballar!!!
Per assegurar-me he canviat l’alimentació USB per 4 piles AA (6V) amb el resultat que mostra el vídeo:





BellBots Arduino v.1314

6 07 2014

Els Tecno-Lògics de 1r Batxillerat hem dedicat 1 h/setmana durant 2 trimestres a fer un robot amb Arduino. El resultat potser no sigui molt espectacular, però és que aquest ha estat el primer contacte dels alumnes amb la robòtica, l’electrònica i la programació, i el primer contacte de la profe amb la programació amb codi Arduino. Estem satisfets, ens hem sortit!!!

Hem aconseguit controlar l’estat de dos LEDs i dels servomotors de rotació contínua de les rodes amb la llibreria Servo d’Arduino, creant una única funció en què els paràmetres dels quals depèn la navegació (sentit de gir de cada servo) apareixen com a variables i afegint a aquesta funció l’estat dels leds també com a variable:

Hem aconseguit l’estat ON/OFF del programa amb un únic botó, creant una variable amb valor inicial 1, que cada cop que premem el botó canvia el seu valor al valor anterior * -1, de manera que quan valgui 1 l’estat sigui OFF i quan valgui -1 l’estat sigui ON:

Hem aconseguit que el robot eviti els obstacles, afegint un sensor d’ultrasons. La primera idea va ser acoblar el sensor a un servo per tal que quan trobi un obstacle decideixi cap a on girar en funció de la distància detectada a cada banda, però no ens vam sortir i ens vam conformar en fer-lo canviar de direcció de manera fixa. Tenim dues versions: la de la profe, amb el sensor mirant cap avall, és capaç de desplaçar-se per sobre d’una taula, detectar el borde i canviar de direcció; la dels alumnes és capaç de canviar de direcció quan troba un obstacle al davant. El programa és el mateix en tots dos casos, l’única diferència està en la condició del canvi de comportament: la relació distància detectada pel sensor / llindar de distància establert:

Aixó és tot el que ha donat de si aquest curs. El proper pretenem perfeccionar el comportament dels nostres BellBots i donar-los forma definitiva dissenyant i imprimint en 3D un xassís digne!

La nostra seqüencia d’aprenentatge ha quedat reflectida al site TicTecBellBot-G i a aquest bloc amb l’etiqueta BellBot Arduino 13-14. El programa definitiu es pot descarregar des d’aquí








Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 28 seguidores

A %d blogueros les gusta esto: