Manual Imagina3dbot-Scratch2 Rev2.0a - Cat

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 46

Imagina3dBot

Activitats amb Scratch i Imagina3dBot

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 1/46

-- P. 1/46
Imagina3dBot

ÍNDEX

Introducció ............................................................................................................................. 3

Material ................................................................................................................................. 3

Eines ...................................................................................................................................... 4

Com funciona un robot? ........................................................................................................... 4

Scratch2.0 ............................................................................................................................. 5

Activitats (S2P en Mode1: cable USB connectat) ........................................................................... 6

A1.-Encendre i apagar un LED .................................................................................................... 6

A2.-Encesa d’un LED amb polsador ............................................................................................. 8

A3.-Mesura de lluminositat amb LDR (sensor de llum) ................................................................... 9

A4.-Mesura de temperatura amb NTC ( sensor de temperatura) ....................................................10

A5.-Mesura de temperatura amb graus Celsius ............................................................................11

A6.-Generació de notes musicals amb brunzidor ..........................................................................13

A7.-Control d’un joc amb Nunchuk (Wii) .....................................................................................14

A8.-Comptador automàtic parking (sensor digital infraroig)...........................................................17

A9.-Alarma d’intrusos (sensor PIR) ............................................................................................18

A10.-Mesura distàncies amb ultrasò (srf005)...............................................................................21

Activitats (S2P en Mode2: cable USB desconnectat) .....................................................................22

A11.-Control d’un motor cc (on, off, inversió gir) .........................................................................22

A12.-Control de dos motors cc ..................................................................................................25

A13.-Control d’un servomotor ..................................................................................................26

A14.-Control del robot amb infraroig ..........................................................................................27

A15.-Robot rastrejador .............................................................................................................29

A16.-Control del robot amb Bluetooth (mòbil Android) .................................................................31

A17.-Robot explorador autònom (sensor ultrasò srf005) ...............................................................33

Annex1.-Muntatge del robot Imagina3dBot .................................................................................36

Annex2.-Instal·lació dels drivers de la placa ................................................................................39

Annex3.-Programació del picaxe amb Scratch 2.0 ........................................................................40

Annex4.- Esquema electrònic de la placa Imagina ........................................................................45

Annex5.-“Pinout” 20m2 i 20x2..................................................................................................46

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 2/46

-- P. 2/46
Imagina3dBot

Introducció

En aquest manual us proposem una sèrie d’activitats relacionades amb la robòtica educativa
utilitzant el robot Imagina3dBot.

L’objectiu d’aquest manual és el de proporcionar unes activitats guiades per aprendre a


programar d’una manera divertida i engrescadora.

Tot i que el robot Imagina3dBot es pot programar en llenguatges com Diagrama de Flux i
BASIC, en aquest manual s’explicarà com fer-ho amb Scratch 2.0.

Material

El kit robot Imagina3dBot bàsic inclou:

-1 xassís imprès 3D.

-2 rodes impreses 3D

-2 juntes tòriques.

-1 “roda boja” posterior (Ref. po174)/3

-1 placa Imagina Android amb cable USB (Ref. rbl0672).

-1 accessori driver de motors (Ref. rbl0672-mot)

-1 accessori sensors de línia cny70 (Ref. rbl0672-rast)

-1 cable dupont (Ref. dup-40x10)/10

-1 porta piles pla 4xAA. (Piles no incloses).

-1 joc de visos, cargols, femelles i separadors.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 3/46

-- P. 3/46
Imagina3dBot

Eines

Per al muntatge d’aquest robot només cal un tornavís


estrella i una clau fixa plana del número 6-7.

Com funciona un robot?

Els robots funcionen d’una manera similar a nosaltres. El nostre cervell rep informació dels
nostres sentits (oïda, olfacte, gust, vista i tacte), analitza aquesta informació i dona
estímuls a les cordes vocals per tal d’emetre sons o ordres als músculs per tal que es
moguin. Els 5 sentits serien entrades d’informació i, la veu i músculs serien les sortides
sonores i motrius.

Doncs bé, en el cas del robot, un xip fa la funció del cervell. Aquest xip anomenat
microcontrolador té uns entrades d’informació on es connecten els sensors de llum (LDR),
temperatura (NTC), soroll... i també té unes sortides, on es connecten els motors,
brunzidors, LEDs...

La diferència principal és que, així com el nostre cervell ja sap el que ha de fer, perquè ho
ha anat aprenent al llarg de la nostra vida amb estímuls positius i negatius, el robot té la
seva memòria buida, és a dir, no sap el que ha de fer. Aleshores nosaltres li hem de dir el
que volem que faci segons els senyals dels sensors. D’això se’n diu programar!

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 4/46

-- P. 4/46
Imagina3dBot

Scratch 2.0

Scratch és un llenguatge de programació gràfic creat pel MIT. Està pensat per a que nens i
nenes aprenguin a programar a partir dels 6 anys.

Cada personatge (animació) té un programa associat,


on les instruccions tenen forma de trencaclosques.
Aquest fet permet aprendre a programar molt
ràpidament i d’una forma molt divertida tot creant
jocs, històries, animacions, simulacions, música, art,
mappings...

Els programes s’activen al polsar damunt de la


banderola verda i s’aturen al polsar damunt del disc

vermell.

Feu clic damunt de la imatge per veure algunes


possibilitats.

Aquestes creacions es poden publicar al lloc web del MIT


per a que tothom les pugui veure, consultar i aprendre
com estan fetes. Només cal que us registreu.

Si no heu fet funcionar mai Scratch 2.0, no us preocupeu. En


podeu aprendre pel vostre compte utilitzant les fitxes que
expliquen com començar.

En aquest manual hem fet un pas més i hem connectat


Scratch2.0 amb una placa anomenada Imagina Android-
Scratch que entre d’altres coses permet prendre mesures de
temperatura, lluminositat i controlar el printbot (robot
imprès amb tecnologia 3D) anomenat Imagina3dbot.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 5/46

-- P. 5/46
Imagina3dBot

Activitats (S2P en mode1)


Tot seguit us proposem una sèrie d’activitats per tal que aneu aprenent, pas a pas, com
funcionen els sensors del vostre robot i com donar-li “vida”.

Aquestes activitats es proposen utilitzant la placa permanentment connectada a l’ordinador


amb el cable de programació (S2P en mode1). Per més informació consulteu l’annex3.

A1.-Encendre i apagar un LED.

En aquesta primera activitat aprendrem a encendre el LED groc i apagar-lo.

Generalment totes les sortides es diuen B.x, on x és un número comprès entre 0 i 7. Per
tant la placa de control te 8 sortides disponibles.

La placa Imagina Android disposa de 3 LEDs. Aquests estan connectats a les sortides tal
com: verd (B.2), groc (B.6) i vermell (B.0).

1.-Connectem el nostre robot amb el cable de


programació havent instal·lat prèviament els drivers de la
placa Imagina Android. Consulteu l’annex1, on hi
trobareu el procés més detallat.

2.-Activem el programa S2P.exe, triem picaxe-20m2,


portCom assignat i la plantilla (Template for New Scratch
Project) per al picaxe-20m2.sb2.

3.-Llavors fem clic a DownloadCommunicator Program i


Connect.

*Podeu consular l’annex2, hi trobareu el procés més detallat.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 6/46

-- P. 6/46
Imagina3dBot

4.-Polsem el botó Open en la finestra S2P i a Més Blocs haurà aparegut una Extensió de
Picaxe, amb totes les instruccions disponibles per programar-lo, tal com:

*Recordeu que totes les entrades es referencien


per defecte com a C.x i les sortides com a B.x.

Introduïu el programa següent:

Comproveu-ne el funcionament clicant sobre la banderola verda.

Què passa si s’augmenta el temps d’espera? Fa la intermitència més ràpida? O és al revés?

Com modificaries el programa per fer que el LED groc estigués 2 segons encès i 4 apagat?.

*Heu de tenir en compte que quan es treballa amb Mode1 (cable USB connectat) la comunicació amb
l’ordinador és lenta, pel que no es recomana treballar amb temporitzacions inferiors a 1 segon. En
Mode2 (sense el cable USB connectat) aquesta limitació desapareix.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 7/46

-- P. 7/46
Imagina3dBot

A2.-Encesa d’un LED amb polsador.


En aquesta activitat volem encendre el LED groc (B.6) durant 4 segons al prémer el
polsador (C.5) de la placa.

Introduïu el programa següent:

Amb la instrucció Setup es configura


l’entrada C.5 com a entrada digital tot o res
(switch).

Comproveu-ne el funcionament.

*Si teniu la placa dels sensors de línia (ref. rbl0672-rast) connectada, assegureu-vos que teniu una
superfície negra a sota. Sinó és així, sempre estarà detectant un 1, ja que polsador i sensor dret de
línia SD comparteixen la mateixa entrada C.5.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 8/46

-- P. 8/46
Imagina3dBot

A3.-Mesura de lluminositat amb LDR

En aquesta activitat es pretén que quan es faci fosc s’encengui el LED


groc (B.6), com si fos una sonda crepuscular.

Per fer-ho utilitzarem l’entrada analògica (C.1) de la LDR (Resistor


Depenent de la Llum).

Farem que aparegui el valor del sensor a l’escenari marcant l’entrada C.1 tal com:

Introduïu el següent programa:

Amb la instrucció Setup es configura l’entrada C.1


com a entrada del tipus Analògica, que vol dir que el
senyal d’entrada serà un valor comprès entre 0 i 255
segons la llum que rebi.

Comproveu-ne el funcionament.

Com podríem fer que s’activés el LED groc a partir d’un nivell de llum més alt?

Sabries fer que canviés de color el vestit del gat amb l’encesa del LED?

Si tens dubtes i no saps com fer-ho, consulta la següent activitat.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 9/46

-- P. 9/46
Imagina3dBot

A4.-Mesura de la temperatura amb NTC

En aquesta pràctica farem un detector d’incendis de forma que s’haurà


d’encendre el LED groc (B.6) quan es superi un determinat valor del
sensor de temperatura (C.7).

El sensor de temperatura que utilitzem és del tipus analògic i s’anomena


NTC (Coeficient de Temperatura Negatiu).

Per visualitzar el valor del sensor a l’escenari cal


marcar l’entrada C.7 tal com:

En aquesta ocasió farem que el gat canviï de vestit quan es superi el valor de 95. La
temperatura es fa augmentar tocant el sensor amb els dits durant una estona.

Aneu a la pestanya vestits i pinteu de color vermell el segon vestit


que s’anomena “costume2”. També farem que mioli.

Feu clic a la pestanya Programes i introduïu el següent programa:

Amb la instrucció Setup es configura l’entrada


C.7 com a entrada del tipus Analògica, que vol
dir que el senyal d’entrada serà un valor
comprès entre 0 i 255.

Els bloc blocs de canvia el vestit els trobareu


a la categoria Aspecte (color lila) i el bloc toca
el so el trobareu a la categoria Sons (color
fúcsia).

Comproveu-ne el funcionament.

Si volem que el sistema reaccioni a menys


temperatura, què cal canviar?

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 10/46

-- P. 10/46
Imagina3dBot

A5.-Mesura de la temperatura amb graus Celsius.

Per fer que la mesura de temperatura es correspongui amb graus Celsius (ºC) haurem de
crear una variable. Una variable és un espai de la memòria on es desen valors compresos
entre 0 i 255.

Per fer-ho cal anar a la categoria Dades / clicar a Crea una Variable i li l’anomenarem
celsius.

Introduïu el programa següent:

Comproveu-ne el funcionament.

*El fet de dividir el valor del sensor C.7 entre


quatre és per convertir la mesura a graus
Celsius (ºC).

*Cal tenir present que el sensor de


temperatura NTC no és lineal. Caldria fer una
aproximació amb polinomis, fet que no es
tractarà en aquest manual.

*Si es desitja fer mesures de temperatura de


fluids y amb més precisió, cal utilizar una
sonda DS18B20 con encapsulat inox. Podeu
solicitar-nos més informació.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 11/46

-- P. 11/46
Imagina3dBot

Sabríeu modificar el programa anterior per tal de fer que canviés el fons de pantalla de
forma que quan la temperatura estigués per sota d’un valor es visualitzés gel i quan
estigués per sobre es visualitzés un desert?

Per fer-ho trieu fons de la galeria i els fons: slopes i


desert.

A la pestanya fons esborreu el fons de color blanc


backdrop1 polsant damunt la x del seu requadre.

Feu clic damunt del gat i li associeu el programa següent:

I a l’escenari li associeu el programa:

Comproveu-ne el funcionament.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 12/46

-- P. 12/46
Imagina3dBot

A6.-Generació de notes musicals amb brunzidor.

Si connectem un brunzidor a l’entrada C.3 podrem


generar melodies musicals.

Heu de tenir en compte que en mode1 (cable USB


connectat) la reproducció és força lenta.

Al fer la connexió heu de posar el pin + del


brunzidor a l’entrada C.3 i el que no està marcat al
GND, tal com es mostra a la imatge adjunta.

Per a la selecció de notes us pot ser d’utilitat la


instrucció toca la nota () durant ()pulsacions. Així podem relacionar el número que
correspon a cada nota musical.

Per començar experimentarem amb el


següent programa:

Veureu que el resultat és una mica


decebedor. El tempo és molt lent i les notes
sonen diferent de com ho fan amb el teclat
anterior.

Per tal d’experimentar amb altres tipus de sons,


proveu de canviar valors de nota i de pulsacions tal
com:

Que passa quan pugem el valor de la nota? El so és


més greu o agut? I què passa quan pugem el valor de
la pulsació? La durada del so és major o menor?

Sabries trobar el valor de play note per emular el soroll de quan la radio perd la sintonia? I
el d’un comptador de radioativitat? Prova valors compresos entre 130 i 255.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 13/46

-- P. 13/46
Imagina3dBot

A7.-Control d’un joc amb Nunchuk (Wii).

En primer lloc has de connectar la nunchuk de la


Wii a la placa tal com es mostra a la imatge.

*Atenció: cal vigilar la posició del connector, en cas


d’inversió en la posició es pot malmetre la nunchuk.

El comandament Nunchuk de la Wii disposa de


múltiples sensors integrats, tals com:

-1 joystick de dos eixos X i Y.

-2 polsadors Z i C.

-1 acceleròmetre de 3 eixos: X, Y i Z (només algunes versions).

Donat que la placa Imagina Scratch permet la connexió de la Nunchuk, et proposem un


programa per aprendre a llegir les dades dels seus sensors i visualitzar-les per pantalla.
Prèviament hauràs de crear les variables següents des de la categoria Dades:

*Hi ha dos tipus de Nunchuk: les originals (Nunchuk A) i les compatibles (Nunchuk B).

*Els valors dels botons C i Z es visualitzen en el result6. Si es polsa el botó c, result6 val 1, si es polsa
el botó z, result6 val 2 i si es polsen els dos, result6 val 3.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 14/46

-- P. 14/46
Imagina3dBot

Tot seguit et proposem la creació d’un petit joc. Es tracta de fer moure un personatge per
l’escenari amb el joystick. Carrega un nou personatge, per exemple la granota (Frog). Polsa
damunt de la “i” del personatge i indica que s’ha de moure de l’estil: . Amb aquesta
acció evitaràs que la granota vagi cap per vall quan faci un gir.

Mou la granota al centre de l’escenari i associa-li el codi que adjuntem:

Experimenta amb valors de passos diferents


per tal que la granota es desplaci a menys o
més velocitat.

* Quan el Joystick està en repòs, el valor de l’eix X


és aproximadament 128. Quan el desplacem cap a
l’esquerra tendeix a 0 i a la dreta tendeix a 255.

I si ara volguéssim que al pulsar el botó Z fes un soroll i un petit salt?

En primer lloc des de la pestanya Sons triarem un nou


so anomenat chomp.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 15/46

-- P. 15/46
Imagina3dBot

Una possible solució seria tal com:

La instrucció vés a x:0 y:0 posiciona


automàticament la granota al centre de
l’escenari cada vegada que polsem la
banderola verda.

I la instrucció llisca el que fa és moure


durant un segon la posició Y de la
granota en 200 unitats. Primer la
incrementa i després la decrementa.

*Recordeu que a l’Scratch les coordenades


de l’escenari van tal com:

Ara farem que una papallona Butterfly1 vagi d’un


costat a l’altre de l’escenari de forma que quan la
granota la toqui incrementi un comptador.

Descartarem totes les variables de la nunchuk per tal que no surtin a l’escenari i
en crearem una anomenada Marcador:

El programa que cal associar a la papallona seria tal com:

També podeu fer


que la partida
s’acabi al cap d’un
temps. De fet es
pot complicar tant
com es vulgui

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 16/46

-- P. 16/46
Imagina3dBot

A8.-Comptador automàtic parking (sensor dig. infraroig).

Per fer aquesta activitat necessitarem un sensor digital d’infraroig


ref. po1134 que connectarem a l’entrada C.3 tal com:

Aquest sensor canvia la seva sortida quan


detecta un objecte a menys de 10cm i ho fa de manera invertida, és a
dir que quan no detecta dona un 1 lògic (5 volts) i quan detecta un 0
lògic (0 volts).

Es tracta de fer un comptador automàtic dels vehicles que entren al


llarg d’un dia en el parking d’un supermercat. L’entrada es realitza
per un costat i la sortida per un altre diferent.

En primer lloc necessitem crear una variable que anomerarem vehicles:

La variable Vehicles s’ha d’inicialitzar amb el valor 0 i anar-se incrementant quan passi un
vehicle per davant del sensor (C.3=0). El programa seria tal com:

*La variable Memòria permet


diferenciar entre l’estat de detecció i el
de no detecció, és a dir , quan està
entrant un cotxe i quan no. Així evitem
que el comptador s’incrementi
contínuament durant tot el temps que
el sensor detecta un sol vehicle.

Quan no detecta cotxe posem


Memòria=0 i quan detecta Memòria=1,
així només realitza el bucle
d’incrementar una sola vegada.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 17/46

-- P. 17/46
Imagina3dBot

A9.-Alarma d’intrusos (sensor PIR)

En aquesta activitat crearem una alarma contra intrusos


utilitzant un sensor de moviment PIR ref. HC-SR501. Aquest
sensor té un abast màxim d’uns 6m segons fabricant i una
obertura de detecció de 110º.

*Un sensor PIR detecta la radiació infraroja que desprenen els


éssers vius o cossos calents.

Quan alimentem aquest sensor requereix un temps de preparació per començar a treballar de forma
adequada. S’ha d’adaptar a les condicions on s’ha instal·lat. Durant aquest temps el sensor aprèn a
reconèixer l’estat de repòs (de no moviment). Aquest període d’aprenentatge dura entre 10 i 60 segons
i és molt recomanable l’absència de persones durant el calibratge.

*Cal vigilar al fer la connexió ja que aquest sensor té dos


pins intercanviats. Consulteu l’esquema de l’esquerra.

Necessitarem de 3 cables dupont i 3 pins mascle


llargs ref. co3045 per fer la connexió.

Quan es detecti un intrús haurà de sonar l’alarma durant 5 segons. L’alarma constarà d’un
soroll tipus sirena i farà aparèixer el gat. Si no s’activa l’alarma, el gat ha d’estar amagat.

En primer lloc ens hem de descarregar el so d’una sirena.


Us el podeu descarregar del link que adjuntem:

http://www.sonidosmp3gratis.com/sounds/001105156_prev.mp3

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 18/46

-- P. 18/46
Imagina3dBot

Canvieu-li el nom per alarma.mp3 i el deseu a


l’escriptori.

Des de la pestanya so clicar Puja un so des


d’un fitxer i triem el que hem descarregat.

Tornem a la pestanya Programes i introduïm el


programa següent:

*Segurament haureu de baixar el volum del vostre


ordinador.

El resultat seria:

Per tal de fer més visual l’alarma


afegirem el personatge (animació)
d’una casa, de manera que el gat
aparegui a dins quan el sensor detecti
un intrús. Des de Nou personatge
triarem Home Button:

I el farem més gran en pantalla amb el botó Creix:

Llavors arrosseguem el gat al damunt tal com:

El personatge Home Button no té programa associat.

Si voleu podeu editar aquest personatge d’un altre color


per tal de que ressalti més. S’ha de fer des de la
pestanya Vestits.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 19/46

-- P. 19/46
Imagina3dBot

També es pot fer que quan s’activi l’alarma es canviï el vestit per un de color vermell. Per
fer-ho cal duplicar el vestit de Home Button (botó dret damunt vestit) i pintar damunt del
verd amb color vermell.

El programa que cal associar a Home Button seria tal com:

I el que cal associar al gat:

*Observeu que els dos personatges es comuniquen enviant


missatges. El gat li diu al Home Button el que ha de fer.

Aquest seria el resultat final del programa:

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 20/46

-- P. 20/46
Imagina3dBot

A10.-Mesura distàncies amb ultrasò (srf005)

Si disposem d’un ultrasò ref. srf005 podrem fer mesures de


distància directament amb Scratch2.

*El sensor ha d’estar configurat per treballar amb un pin comú per a
l’emissió i recepció.

El funcionament dels sensors d’ultrasons consisteix en emetre


un so no audible i mesurar el temps que tarda en rebotar i
tornar. Així es pot calcular la distància a que es troba l’objecte que té al davant. El rang de
mesura és de 0 a 255cm.

Per a realitzar aquesta pràctica el connectarem directament al


connector de C.3 tal com a les imatges adjuntes:

Per fer el programa


crearem prèviament
una variable
anomenada distància.
Observeu que en
aquesta ocasió li hem
posat les unitats de
centímetres al darrera
de la mesura.

Ara farem que el gat es separi d’un arbre els


mateixos passos que la distància que hi hagi
entre el sensor d’ultrasò i la nostra mà.
Afegirem l’ animació Tree1 i el col·locarem
tal com a la imatge en les coordenades de
l’escenari (0,0):

El programa que cal associar al gat és:

*Recordeu que per associar el programa al gat, la


seva animació ha d’estar seleccionada. En aquest
cas l’arbre no té programa associat.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 21/46

-- P. 21/46
Imagina3dBot

Activitats (S2P en mode2: cable USB desconnectat)


Aquestes activitats es proposen amb la placa desconnectada de l’ordinador. La desconnexió
la farem, en algunes ocasions, un cop s’hagi comprovat el seu correcte funcionament. Així el
robot no dependrà de l’ordinador i serà totalment autònom. Consulteu l’annex3.

A11.-Control d’un motor cc.

Amb la connexió del driver de motors cc (ref.


rbl0672-mot) a la placa Imagina Android-
Scratch podrem realitzar el control de dos
motors de corrent continu de fins a 2A
(Ampers).

Segurament haureu observat que hi ha unes


instruccions específiques per controlar el motor A,
com les de la imatge adjunta. També hi són pel
motor B.

En aquesta pràctica aprendrem a fer anar el motor_A,


que és on tenim connectat el motor de l’esquerra en
sentit de marxa.

Per fer anar el motor_A endavant cal que la sortida B.0


estigui activada i B.1 estigui desactivada. Aquesta
tasca la podem fer automàticament amb el bloc:

Per aturar-lo cal desactivar B.0 i B.1

I per invertir el sentit B.0 desactivada i B.1 activada.

A continuació es detallen en forma de taula els possibles moviments del motor_A:

CONTROL

Endavant Aturat Endarrere

B.0 (on) B.0 (off) B.0 (off)

MOTOR_A B.1 (off) B.1 (off) B.1 (on)

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 22/46

-- P. 22/46
Imagina3dBot

Si fem aquest programa observarem que el motor A va endavant durant un segon, es para i
torna a repetir el procés.

També es pot fer d’aquesta altra manera:

*Si el motor gira endarrere, cal intercanviar la


posició dels cables del motor_A.

Si volem que giri endarrere durant un segon, es


pari i torni a repetir el procés es faria tal com:

I si volem que el motor_A vagi una vegada endavant


i una endarrere, passant per aturar, la seqüència
seria la següent:

*La instrucció set motor A direction to invertit el que fa és


invertir la direcció en que va funcionar per última vegada el
motor.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 23/46

-- P. 23/46
Imagina3dBot

Feu el mateix pel motor B. El motor B porta associades les sortides B.2 i B.3 tal com podeu
observar a la taula resum següent.

CONTROL
MOTORS

Endavant Aturat Endarrere


B.0 (on) B.0 (off) B.0 (off)
MOTOR_A
B.1 (off) B.1 (off) B.1 (on)
(motor_esquerre)

B.2 (on) B.2 (off) B.2 (off)


MOTOR_B
B.3 (off) B.3 (off) B.3 (on)
(motor_dret)

*Si el motor B gira al revés heu de invertir el seu connector, és a dir, fer-li mitja volta.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 24/46

-- P. 24/46
Imagina3dBot

A12.-Control de dos motors cc.

En aquesta activitat farem que el robot vagi endavant i


endarrere durant un temps. Per fer-ho haurem de fer treballar
els dos motors A i B alhora.

Introduïu el programa
següent:

Comproveu el funcionament.

*Quan es fa la prova amb el cable connectat es normal que


els dos motors no es posin en marxa i s’aturin exactament
al mateix temps. Aquest retard desapareix al transmetre
el programa al robot en mode2 (desvinculat de
l’ordinador).

Per tal de conèixer tots els girs possibles que pot fer
el robot, us proposem que realitzeu els programes
següents de pivotar, ziga-zaga endavant i ziga-zaga
endarrere:

Pivota a l’esquerre: motorA=inv Pivota a la dreta: motorA=on


/motorB=on /motorB=inv

Gir a l’esquerre avançant: Gir a la dreta avançant:


motorA=off/motorB=on motorA=on/motorB=off

Gir a l’esquerre retrocedint: Gir a la dreta retrocedint:


motorA=inv/motorB=off motorA=off/motorB=inv

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 25/46

-- P. 25/46
Imagina3dBot

A13.-Control d’un servomotor.

Un servomotor és un motor especial que pot


posicionar el seu eix a un angle determinat i el pot
mantenir en aquesta posició. Per funcionar només
necessita alimentació GND, VCC (5volts) i un senyal
de control.

Els servomotors estàndard només poden girar 180º,


tot i que al mercat se’n poden trobar de 270º i de
360º (gir continu).El senyal de control que se li ha
de donar al servomotor són polsos compresos entre
0,75ms i 2,25ms de durada que es repeteixen cada
20ms.

Per calcular el pols que se li ha d'enviar al servo


per obtenir un determinat angle de
posicionament del seu eix, s'utilitza la fórmula
següent:

t=1+(angle/180)

On t representa l'amplada del pols en ms i


l'angle s'especifica en graus.

*Exemple: si volem que el servo connectat a la


sortida B.6 giri a la posició 60º, llavors
t=1+(60/180)=1,33ms i la instrucció per posicionar
el servo seria: servo B.6, 133

Per controlar servomotors amb Scratch 2.0


només és possible en mode2 i cal utilitzar
la instrucció BASIC segons l’exemple:

*Per connectar el servo a B.6 segurament


haureu d’aixecar una mica el connector del
motor_B per fer lloc.

Com a millora del programa anterior us


proposem fer que la posició del servomotor
variï segons el valor de la llum que rep el
sensor LDR (Resistor Depenent de la Llum)
connectat al pin C.1 del picaxe.

Per tal que el servo no surti de límits acotem


els seus valors entre 75(0º) i 225(180º).

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 26/46

-- P. 26/46
Imagina3dBot

A14.-Control del robot amb infraroig.


A14En aquesta activitat aprendrem a controlar el robot amb el comandament de la
televisió (ref. tvr01 o bxl-rc001), configurat amb l’estàndard Sony.

A cada botó li assignem una funció: endavant (tecla2), aturat(tecla5), endarrere (tecla8)...

Per llegir la tecla polsada del comandament ho farem amb la instrucció següent:

Aquesta instrucció s’espera a rebre un senyal d’infraroig


per l’entrada C.0, que és on tenim connectat el receptor.
Amb aquesta instrucció la tecla polsada coincideix amb la
rebuda i es desa a IR.

Podem visualitzar el seu valor a l’escenari marcant l’entrada IR tal com:

El programa que et mostrem fa anar el robot


endavant, endarrere i l’atura. Prova’l.

*Si el motor A no va endavant és perquè el port USB


no dona prou intensitat. Per solucionar-ho has de
tenir també les piles connectades.

Llavors transmet el programa al picaxe i


desconnecta el cable USB. Respon més ràpid a
les tecles del comandament? Sabries dir
perquè?

*A partir de la versió 009 del S2P, el funcionament


del comandament d’infraroig ha canviat. Heu de fer
els programes tal com aquest exemple.

Per tal d’ampliar els moviments possibles, sabries modificar el programa anterior de manera
que fes els girs detallats a la pàgina 25?

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 27/46

-- P. 27/46
Imagina3dBot

Una possible solució seria tal com:

Proveu-lo en mode2.

*En el cas que es vulgui fer anar un altre robot


amb un altre comandament, per tal que no
s’interfereixin, cal usar altres tecles com per
exemple les fletxes.

Si disposem d’un mòbil Android amb


emissor d’infraroig, podem descarregar-
nos IR REMOTE 2.0 per controlar el robot. A
IR Databases cal seleccionar Sony i
llavors teclat numèric.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 28/46

-- P. 28/46
Imagina3dBot

A15.-Rastrejador de línies (només en mode 2)


Si li posem l’accessori ref. rbl0672-rast podem fer que
el robot es comporti com un rastrejador de línies.
Aquesta placa va connectada amb quatre cables a la
placa driver rbl0672-mot de motors.

La disposició dels sensors i dels motors és la següent:

Sentit de marxa

FONS BLANC LÍNIA NEGRA


(ME)

SENSOR SENSOR
ESQUERRE DRET
C.4=SE C.5=SD

MotEsq PICAXE MotDret


(MA) 20M2 (MB)
B.0 B.2
B.1 B.3
ROBOT

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 29/46

-- P. 29/46
Imagina3dBot

Les actuacions del robot segons les deteccions dels seus sensors són:

1-Si els sensors del robot estan damunt de la línea negra detecten un 0 lògic i el robot ha
d’anar endavant, és a dir, han de funcionar els dos motors (motor_A=on i motor_B=on).

2-Si no detecta línia el sensor dret (SD), aturem el de l’esquerra (motor_A=off) i fem anar
el de la dreta (motor_B=on).

3- Si no detecta línia el sensor esquerre (SE), aturem el de la dreta (motor_B=off) i fem


anar el de l’esquerre (motor_A=on).

4- I si no detecta cap dels dos sensors ha de fer el que feia en l’instant abans de perdre
totalment la línia. Per tant no tindrem en compte aquesta opció, perquè no ha de fer res de
nou, que ja no fes abans.

El programa seria tal com aquest:

Transferiu-lo al PICAXE convertit en


BASIC i proveu-lo en una pista de
fons blanc.

*Si no us segueix bé la línia negra cal


ajustar l’alçada dels sensors CNY70.

*També heu de saber que aquests


sensors no funcionen bé quan els
incideix directament la llum del sol. Per
tant eviteu fer proves amb el vostre
robot rastrejodor on hi hagi llum solar
directe.

Una altra opció més professional


consisteix en desar els valors de c.4 i c.5
en variables, tal com:

Així durant un cicle de processament les


variables no canvien.

Podeu comprovar-ne el funcionament en


aquest vídeo:

http://youtu.be/lKnQog7zbcc

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 30/46

-- P. 30/46
Imagina3dBot

A16.-Control per Bluetooth


tt
En aquesta activitat aprendrem a controlar el nostre robot amb un mòbil
Android a través de Bluetooth.

Col·locarem el mòdul Bluetooth JY-MCU-H06 configurat a


4800 Bauds respectant les indicacions de la serigrafia de la
placa tal com en la imatge.

Al nostre robot li carregarem el següent programa:

*Els mòduls Bluetooth es venen configurats per defecte a 9600Bauds. Per fer aquesta pràctica cal
canviar-li la velocitat. El procediment s’explica a:

https://sites.google.com/site/bluetoothipicaxe/home/configuracio-modul-bluetooth

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 31/46

-- P. 31/46
Imagina3dBot

I al mòbil hi instal·larem una App anomenada Imagina3dBot que descarregarem de


GooglePlay.

El robot es pot controlar amb botons amb forma de fletxes o amb el giroscopi del mòbil
Android. Per fer la connexió només cal triar CONNEXIÓ/Adreça Mac del mòdul bluetooth del
robot/ botó CONTROL i Control per fletxes o Control orientació:

Vídeo del control amb botons tipus fletxes:


https://www.youtube.com/watch?v=SytjjWNLB7Q

Vídeo del control amb giroscopi:


https://www.youtube.com/watch?v=WJ__96BzCuQ

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 32/46

-- P. 32/46
Imagina3dBot

A17.-Robot explorador autònom


tt
En aquesta activitat equiparem al robot amb el sensor d’ultrasò srf005 i farem que funcioni
autònomament explorant el seu entorn sense xocar. Per evitar el xoc anirem fent vàries
estratègies, de la més simple a la més complicada.

Primer farem un programa que sempre vagi endavant


i que quan trobi un objecte a menys de 20cm s’aturi.
I si l’objecte desapareix ha de tornar a avançar.
Prova el següent programa:

La segona estratègia consistirà en fer que quan s’aturi giri a la dreta durant un temps
determinat i segueixi endavant. Prova’l i experimenta amb diferents temporitzacions de gir.
Ara està a dos segons.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 33/46

-- P. 33/46
Imagina3dBot

Com a tercera estratègia podríem fer que després


d’aturar-se girés fins que la distància fos més gran
de 30cm.

Per fer-ho més professional podríem fer que compti les vegades que gira cap a la dreta i
que quan sigui 5, giri altres 5 vegades però cap al costat esquerre.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 34/46

-- P. 34/46
Imagina3dBot

I finalment el programa es pot millorar fent que el robot pivoti


sobre si mateix en comptes de girar. Així si li posem un raspall a
la part del darrere tindrem una “roomba” casolana.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 35/46

-- P. 35/46
Imagina3dBot

Annex1.-Muntatge del robot Imagina3dBot


tt

Tot seguit detallem el procediment de muntatge del robot Imagina3dBot en 15 passos.

1.-Repassem que hi hagi tot el


material que s’especifica a la
pàgina3.

2.-Posem la roda “boja del


darrere”.

3.-Collem el suport del davant amb


el vis de 2,9x6,5mm.

*No cal fer excessiva força.

4.-Subjectem cada motor amb dos


visos de 2,9x25mm.

*No cal fer excessiva


força per no aixafar la
caixa reductor dels motors.

5.-Fixem el porta piles amb els


dos visos de cabota cònica daurats.

*Aixamfraneu els forats


prèviament amb el tornavís.
Així els visos no
sobresortiran del portapiles.

6.-Rosquem els 4 visos de 2,9x9,5


mm amb els separadors.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 36/46

-- P. 36/46
Imagina3dBot

7.-Collem els visos anteriors al


damunt del xassís, amb l’ajuda
d’un tornavís estrella.

*No cal fer excessiva força.

8.-Posem els cargols M3x16mm


amb les seves respectives femelles
M3 tal com a la imatge.

9.-Posem la placa dels sensors


CNY70 i la collem amb dues
femelles M3.

10.-Muntem les juntes tòriques a


les rodes.

*No han de quedar retorcides.

11.-Col·loquem les rodes a pressió


amb la cara llisa a l’exterior.

*Si costa molt entrar les rodes es


poden estovar escalfant-les
lleugerament amb un bufador d’aire
calent o assecador de cabells.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 37/46

-- P. 37/46
Imagina3dBot

12.- Inserim la placa driver de


motors al damunt de la Imagina
Android/Scratch i connectem els
motors.

*El motor_A és el de l’esquerre i el


motor_B el de la dreta, en sentit de
marxa.

13.-Connectem el porta piles.

*El cable vermell és el positiu (+) i el


negre el negatiu (-).

*Aquesta placa no porta regulador de


tensió, pel que no es pot alimentar a
més de 6V (4 piles AA).

14.-Connectem els pins de la placa


driver: VCC, GND, SD i SE, amb
els de la placa sensors que es
diuen igual. La connexió la farem
amb cables dupont.

*Els cables d’un i altre extrem han de


tenir el mateix nom.

15.-Finalment ja tenim el robot


construït. Ara toca programar-lo.
Consulteu l’índex.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 38/46

-- P. 38/46
Imagina3dBot

Annex2.-Instal·lació dels drivers de la placa


tt
La placa Imagina Android porta un port USB que necessita de drivers per a comunicar-se
amb l’ordinador. En la majoria d’ocasions n’hi ha prou amb endollar la placa a l’ordinador si
aquest té Windows7 o WinXP i accés a Internet. Pot tardar varis minuts.

Si no ens reconeix la placa és important que sapiguem quin sistema operatiu és el nostre i
de quants bits és. Si utilitzem Windows podem consultar-ho fent clic amb el botó dret
damunt de la icona “El Meu Ordinador”/Propietats.

En aquests enllaços trobarem drivers per Windows, Linux(32bits) i Mac.

-Drivers per a Windows versió 32 bits


-Drivers per a Windows versió 64 bits (*es recomana utilitzar sempre el de 32 bits)
-Drivers per a altres versions Windows, Linux(només 32 bits) i Max OS X

Quan els tingueu descarregats executeu l’arxiu executable (.exe), en el cas de Windows.

*Si us avisa de que es requereix “Permisos d’elevació”, heu de fer Shift+botó dret damunt de l’arxiu
.exe i fer clic damunt de “Executar com Administrador” . Així tindreu privilegis d’administrador per
poder instal·lar-lo.

Quan endolleu la placa Imagina Android/Scratch us dirà quin portCOM se li ha assignat.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 39/46

-- P. 39/46
Imagina3dBot

Annex3-Programació del picaxe: mode1 i mode2


tt
 Preparació

1.-Descarregar i instal·lar AdobeAIRInstaller.exe


http://get.adobe.com/air/

2.- Descarregar l’Scratch 2.0 i instal·lar-lo:


Scratch.mit.edu

3.-Descarregar el programa de comunicacions S2P:


S2P for Windows
*També hi ha les versions per Mac i Linux.

 Utilització Mode 1 (amb cable)

1.- Executar S2P.exe per fer la instal·lació.

2.-Seleccionar el tipus de xip PICAXE que utilitzem (picaxe20m2) i el portCom (COM1,


COM2, COM3...) on tenim el cable de programació picaxe (microUSB...) endollat a
l’ordinador.

Si es desconneix el PortCom cal fer clic a “Open Device Manager” i a “Ports” i apareixerà al
final de tot (per exemple COM2). També va bé fer Refresh per fer
aparèixer els ports nous.

3.-Triar la plantilla (Template for New Scratch Project) segons el model de


picaxe o de placa que utilitzarem. Nosaltres utilitzarem el picaxe-20m2.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 40/46

-- P. 40/46
Imagina3dBot

4.-Clicar a “Download Communicator Program” per transmetre el programa de


comunicacions al picaxe (firmware).

*Si us surt error consulteu pàg. 33.

5.-Fer clic a Connect (finestra S2P) i s’establirà l’enllaç entre Scratch2 i el Picaxe.
L’indicador canvia de groc a verd.

6.-Executar Scratch2 fent clic a Open. Així carregarà el bloc d’instruccions de Picaxe.

7.- A “Més Blocs” hi trobareu totes les instruccions per llegir entrades i activar sortides del
Picaxe.

Podeu fer un petit programa de comprovació tal com:

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 41/46

-- P. 41/46
Imagina3dBot

Al prémer la banderola verda la sortida B.0 farà intermitència en intervals d’un segon. Això
també farà moure endavant el motor_A del nostre robot.

 Utilització Mode 2 (sense cable)

8.- Si ara interessa traspassar aquest programa al Picaxe per treballar desconnectat de
l’Scratch2, cal desar-lo primer en format sb2 ( per exemple intermitent.sb2). Recordeu
aturar l’execució del programa!

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 42/46

-- P. 42/46
Imagina3dBot

9.-Fer clic a “Disconnect” de l’aplicatiu S2P.

10.- En l’aplicatiu SP2 passar al “Mode 2 – Remote Run (Convert Scratch to PICAXE
BASIC)”. Fer clic a Program i triar l’arxiu d’Scratch que hem desat anteriorment anomenat
intermitent.sb2, Open i OK.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 43/46

-- P. 43/46
Imagina3dBot

11.-Automàticament es tradueix el programa Scratch2.0 a BASIC i s’envia al Picaxe. Fer OK


per acabar.

12.-Desconnectar el cable de programació i veure com segueix fent intermitència la sortida


B.0 i el motor_A.

*Recordeu que en el cas de la Imagina Android o Scratch quan es desconnecta el cable USB cal
alimentar-la amb piles.

Amb aquest sistema es pot programar qualsevol xip picaxe dels models m2 o x2. Els altres
models més vells no ho permeten. Per tant la programació ja no depèn de la placa, sinó del
model Picaxe que li posem.

*Per més informació consulteu: http://www.picaxe.com/Software/Third-Party/Scratch/

Solucions a possibles problemes coneguts

*Si no us comunica la placa amb S2P encara que li hagi assignat un port COM,
significa que teniu el picaxe “penjat” i cal fer-li un reset. Aleshores, per fer un
reset, heu de treure el pont “jumper” (veure imatge adjunta) i polsar Download
Comunicator Program al mateix temps que torneu a posar el “jumper”.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 44/46

-- P. 44/46
Imagina3dBot

Annex4.-Esquema electrònic Imagina Android.


tt

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 45/46

-- P. 45/46
Imagina3dBot

Annex5.-“Pinout” PICAXE-20M2 I 20X2.


tt

Aquí trobareu el que pot fer cadascun dels pins dels picaxe 20m2 i 20x2.

INNOVA DIDACTIC – Activitats amb Imagina3dBot-Rev 2.0a- P. 46/46

-- P. 46/46

You might also like