Social Icons

dilluns, 30 de desembre del 2013

Dibuixant

A l'equip1 de cara a la exhibició de Nadal es va proposar fer que el robot pugues realitzar nombres. Després d'una pluja d'idees es va proposar que portes un llapis i que dibuixes el nombre de vegades que havíem pitjat el polsador. Aquest és l'interior d'aquest repte:

El primer aspecte que cal tenir en compte és que sigui capaç de comptar quantes vegades s'ha pitjat el polsador. S'ha establit una variable de manera que cada vegada que es pitjes li sumes +1 i que aquest valor fos el que s'ha de dibuixar. 
La variable té el nom de "rot". Primerament s'observa que se li assigna el valor 0 i dins del bucle es llegirà, se li sumarà 1 i es tornarà a escriure cada vegada que el polsador tingui una senyal

Un inconvenient és quanta estona ha de estar comprovant el nombre de pulsacions. Si només ho comproves un cop com a molt es podria polsar una vegada, i si s'establis un temps determinat o no tindries prou temps per fer per exemple 30pulsacions i si en fessis una s'estaria molta estona a realitzar l'acció. L'opció ha set que el temps a esperar fos 3 segons des de la última pulsació, de manera que és té aquest marge de temps per fer cada pulsació. La manera d'introduir-ho és que amb cada pulsació a part de sumar a la variable es renicii el cronòmetre i hi hagi un bloc que compari si el temps és major de 3.
Cada vegada es renicia el cronòmetre
Sempre es va comprovant si el temps és més gran de 3segons, si ho és es deixa de repetir el bucle amb l'opció interrumpir el bucle. També se li pot assignar una informació visual com és el cas de les llums, quan hagin passat els tres segons es mostraran vermells
El nombre de pulsacions també es pot veure a la pantalla mitjançant un bloc que mostra el nombre associat a la variable.

Si el temps és major s'atura el bucle que estava comprovant el nombre de pulsacions i salta al següent bloc. Ara només cal llegir el valor de la variable i associar-lo amb tots els possibles nombres. Primerament s'ha realitzat de manera més simple amb un so. A la condició existeix un mode numèric on per cada valor que rep realitza una acció diferent. La variable s'introdueix al lector d'aquesta condició.
valor de la variable introduit al interruptor
Ara només cal relacionar cada valor amb el so existent al programa per cada nombre. 

Si el valor és 0 el so que es repruirà sera Zero
Al programa només existeixen els sons del 0 al 9. Per realitzar els nombres més grans de zero primer s'identifiquen amb un >10 i si és verdader es reprodueix primer el nombre 1 i després es resta 10 al valor i al ser un nombre del 0 al 9 ja es pot reproduir exactament com s'ha explicat abans.

A continuació ve la part més artística. S'ha de muntar el robot d'una manera que pugui sostenir un llapis i pugui aixecar i abaixar. Aquest braç va controlat amb el servomotor mitjà i col·loca el llapis en posició perquè ratlli.

    


Per aconseguir que el robot dibuixi un número amb aquesta eina s'ha de baixar la palanca i llavors programar els motors de les rodes perquè al moure's el robot el traç del llapis sigui un nombre. 
A cada nombre que s'hagi pitjat al polsador li correspon la respectiva configuració.

Com a exemple els vídeos del robot dibuixant els números 1, 2, 4 i 9:














Cap comentari:

Publica un comentari a l'entrada