En aquesta lliçó presentarem la categoria de blocs «Llapis». Utilitzarem l’entrada analògica A0 del sensor so KY-038 i dibuixarem el volum d’un so en l’escenari.
Imatge | Descripció |
---|---|
Arduino Uno o compatible amb S4A i amb el firmware per S4A carregat. | |
Una protoboard | |
Cables de connexió | |
Un sensor de so KY-038 o similar |
Aquesta categoria de blocs s’utilitza quan volem pintar alguna cosa en l’escenari a partir el moviment d’un objecte. Podem utilitzar-ho, per exemple, per a marcar el recorregut que ha seguit un objecte, o per a fer gràfics i diagrames a partir dels valors que ens envie un sensor.
Per a aclarir una mica com funciona, farem un exercici molt senzill en el qual col·locarem un objecte en el centre de l’escenari diverses vegades i el mourem de manera aleatòria, de manera que vaja deixant un rastre i faça una marca en el punt en el qual acabe cada moviment.
El primer que farem serà crear una disfressa per a l’objecte i esborrar el que ve per defecte. Jo he importat una pilota de futbol.
Res més començar esborrem el que haja dibuixat prèviament en l’escenari utilitzant el bloc de “Llapis” “neteja” i fixem el gruix del traç amb el bloc “fixar grandària del llapis a …“.
Utilitzem el bloc “repeteix …“ perquè volem que l’objecte faça un nombre determinat de moviments abans de parar el programa. Posicionem l’objecte en el centre de l’escenari, utilitzem el bloc “baixar llapis” perquè comence a dibuixar i fixem el color del llapis a un número aleatori entre 0 i 200 amb el bloc “fixar color del llapis a …“.
A continuació fem que l’objecte es moga a una posició nova utilitzant el bloc de “Moviment” “lliscar en … segons a x: … y: …“, alcem el llapis amb el bloc “pujar llapis” i utilitzem el bloc “estampa” perquè deixe una marca amb la forma de l’objecte.
En acabar d’executar-se el programa tindrem alguna cosa semblant a això en l’escenari.
Utilitzarem el que hem aprés en aquesta lliçó i en la lliçó 14 per a dibuixar un gràfic amb el volum d’un so. Mesurarem el senyal que envia el sensor KY-038 pel pin A0 i la dibuixarem en l’escenari.
L’esquema electrònic i el muntatge en la Protoboard són molt senzills.
Començarem dibuixant un objecte per a dibuixar a partir d’ell. Com no volem que es note, podem, per exemple, fer un punt el més xicotet possible i del color del qual dibuixarem el gràfic.
Fixem les condicions inicials:
Ara ja podem col·locar el bloc *“per sempre” *perquè repetisca les altres accions en bucle. Comencem sumant-li 1 a la posició en x perquè en cada execució pinte el volum una mica més a la dreta en l’escenari, de manera que no es vagen solapant.
Si en aquest moment executem el programa veurem com es pinta una línia d’esquerra a dreta.
Per a saber a quin nivell de sensibilitat tenim ajustat el sensor, podem guardar en una variable el valor recollit en l’entrada analògica A0 i visualitzar-ho en l’escenari com hem aprés.
Per a dibuixar el volum en cada iteració, hem de fixar la posició en y de l’objecte a la posició anterior (que fixem a 0 en cada repetició perquè pinte sempre a respecte al punt mitjà de l’eix Y) sumant-li el valor d’A0 que hem guardat en la variable “volum”. A aqueix valor li hem de restar un valor pròxim al qual hem ajustat la sensibilitat, perquè no ens pinte una ratlla molt gruixuda quan no hi ha so.
Només ens queda fer que cada vegada que arribe al final de l’escenari, torne a començar a dibuixar des de l’esquerra. Per a això llevem el llapis fins a la posició inicial i esborrem l’escenari perquè comence a dibuixar de nou amb l’escenari en blanc.
Si ara executem el programa veurem com en parlar, xiular, bufar o fer qualsevol so en el micròfon, en l’escenari es pinta la variació en el volum.
Jo li he acostat un altaveu xicotet amb una cançó i el resultat ha sigut aquest:
Si voleu practicar una mica més podeu agafar la lliçó 16 del sensor de temperatura i, per exemple, registrar la temperatura cada cert temps utilitzant el que hem aprés i variant una miqueta el programa.