Difference between revisions of "Vaixell musical"

From Edutec Wiki
Jump to: navigation, search
Line 139: Line 139:
 
[[File:Vaixell14.png|RTENOTITLE]]
 
[[File:Vaixell14.png|RTENOTITLE]]
  
== Bitbot.cat ==
+
 
 
+
Aquest és un article del programa [https://bitbot.cat/ '''Bitbot.cat'''], podeu consultar la resta d'articles a:
+
 
+
*[[Recursos_formació_BitBot|Formació presencial '''Bitbot.cat''']]
+
*[[Bitbot|Formació semipresencial '''Bitbot.cat''']]
+
 
+
'''Bitbot.cat''' és un programa implusat per la Secretaria de Telecomunicacions, Ciberseguretat i Societat Digital de la '''Generalitat de Catalunya''', en col·laboració amb el Departament d’Ensenyament, que neix amb l’objectiu d’impulsar la millora de les competències digitals del jovent i promoure el creixement de les vocacions tecnològiques.
+
 
+
Una de les accions que es proposa aconseguir és la capacitació de monitores i monitors per a conduir i desenvolupar '''activitats educatives de lleure en els camps de la robòtica i la programació''', per tal d’anar formalitzant aquesta oferta amb '''monitores i monitors certificats'''.
+

Revision as of 16:22, 21 May 2019

Introducció

Aquesta activitat proposa una sèrie d'elements interactius per tocar notes musicals utilitzant diferents instruments. Les melodies es guarden i es reprodueixen mitjançant l'ús de llistes i missatges de Scratch. Per fer-ho més interactiu, cada objecte pot establir un instrument musical diferent.

Dibuixar l'escenari i els objectes

Per practicar en la creació d'escenaris i objectes es pot començar a treballar amb el projecte des de zero. Si el temps per desenvolupar la pràctica està limitat també es pot preparar una plantilla predissenyada. Hi ha una plantilla disponible, per Scratch 2.0, en aquesta adreça.

S'hi veu una escena on hi ha un vaixell sobre el mar i un sol amb els seus raigs. Cada raig de sol és un objecte diferent i quan s'hi clica toca i guarda una nota musical. Per tocar les notes (do, re, mi, fa, sol, la, si) són necessaris set raigs de sol, un per nota. Es poden afegir més objectes, com ara un ocell.

RTENOTITLE

Una proposta de funcionament és la següent:

  • Quan es fa clic a un raig del sol, aquest reproduirà una nota i la guardarà en una llista per a la seva posterior reproducció.
  • Quan es cliqui al centre del sol, s'esborren totes les notes de la llista.
  • Quan es cliqui el vaixell es reprodueix la melodia guardada.
  • El mar i l'ocell fan canviar l'instrument musical.

Tocar les notes musicals

Es comença realitzant la programació per un raig de sol i, una vegada estigui acabada, el codi es copia als altres raigs, arrossegant-ho sobre les icones de l'objecte. Cal no oblidar canviar la nota musical de cada objecte, altrament tots tocaran la mateixa nota, per exemple el do.

A Scratch 2.0, els blocs per tocar notes musicals es poden trobar a la categoria "Sons", en color violeta. A Scratch 3.0 cal afegir l'extensió "Música". Per cada raig s'ha d'establir l'instrument a tocar i la nota. Clicant al bloc sobre el valor de la nota apareix un teclat que ens ajuda a identificar les notes.

RTENOTITLE

 

 

 

 

 

 

 

 

 

 

Les notes musicals estan indicades segons el sistema anglosaxó. Pot ser útil tenir a mà una equivalència de la notació anglosaxona a la llatina:

Vaixell Equivalències notes musicals.png

La segona part del bloc "toca la nota..." indica el temps durant el qual sonarà la nota. Això permet fer corxeres, negres, blanques, etc. fent variar aquest temps, com per exemple posant 0.25, 0.5 i 0.75 pulsacions respectivament. A la categoria "Música" hi ha blocs específics per a veure, fixar i modificar el tempo de la melodia.

Ressaltar un objecte en ser clicat

A banda de tocar la nota, es pot realitzar algun efecte visual quan l'objecte sigui clicat per a fer-lo sonar, com per exemple augmentar lleugerament el seu tamany, canviar el color o fer que brilli. El següent codi fa servir blocs de la categoria "Aspecte" per a augmentar la brillantor del raig mentre sona la música, amb el bloc "fixa l'efecte ... a ...", i per a que després de tocar la nota torni a l'estat original, amb el bloc "treu els efectes gràfics".

RTENOTITLE

Es poden provar diferents valors numèrics en l'efecte color o brillantor per veure quin és que millor queda. Com cada raig de sol tocarà una nota diferent, es pot decidir fer que l'efecte de color aplicat a cada un d'ells també sigui diferent, associant així un color a cada nota musical.

Efecte brillantor

L'efecte brillantor aclara l'objecte aplicant més "llum", simulant l'obertura de diafragma d'una càmera. Els raigs de sol grocs es fan més clars. Si apliques l'efecte brillantor en 0, 25, 50, 75 i 100, per exemple, el resultat és d'aquest estil:

Vaixell - Efecte brillantor.png

Efecte color

L'efecte color fa canviar el color de l'objecte. Partint, en una escala de colors, del color que l'objecte tingui en el moment que se li aplica, el canvia a un color més a la dreta a l'escaleta: més a prop si és un número més petit o un color mes allunyat (més diferent) si el número és més gran.

Vaixell - Escala de colors 0.png

Potser és més fàcil veure-ho amb un exemple:

Vaixell - Escala de colors 1.png

Vaixell - Escala de colors 3.png

Pots mirar com va canviant de color el teu raig de sol, inicialment groc, a mida que afegeixes un efecte de color amb el número cada vegada més gran. Passarà primer pels verds, després pels blaus clars, els blaus cada vegada més foscos, els liles, etc.

Guardar les notes en una llista

Per guardar les notes tocades, que formen una cançó o una composició instantània, es fa servir una llista. Una llista és un tipus especial de variable que permet tenir una sèrie de valors sota el mateix nom. Aquests valors es troben ordenats a la llista un darrere de l'altre, en principi  sempre en el mateix ordre. Per tant, es pot accedir a cada element d'aquesta llista mitjançant un índex que indica la seva posició a aquesta.

Per crear una llista nova, es pot trobar un botó l'apartat "Variables":

Vaixell - crea una llista amb Scratch.png

 

Un possible nom per donar la llista pot ser "notes".

RTENOTITLE

Per afegir una nota es fa servir el bloc "afegeix cosa a notes" que es pot trobar a "Variables":

RTENOTITLE

Les notes es poden guardar com el seu valor numèric (57 per al "do" o A segons quina notació s'utilitzi). Per reproduir la melodia només caldria accedir a cada nota seqüencialment (ho veurem més endavant) i tocar aquest número. En aquest exemple es guardaran els noms de la nota de tipus do, re, mi... com han estat anomenats els objectes raigs de sol. D'aquesta forma es pot jugar amb els noms de les notes per enviar missatges a cada raig de manera que el codi sigui més fàcil de llegir i entendre. Amb una petita variació al codi anterior per tocar les notes ja ho tenim preparat:

RTENOTITLE

 

Així, només caldrà enviar el missatge "do" per fer que soni la nota i més que s'il·lumini l'objecte que la reprodueix. Ara ja podem fer servir el bloc per afegir la nota a la llista:


RTENOTITLE

Ara si es clica sobre el raig de sol s'afegiran les notes a la llista. Per comprovar-ho es pot marcar la casella al costat de la variable, per veure com es van afegint notes a la llista.

RTENOTITLE

Activar la casella fa que es visualitzi la llista i el seu contingut en tot moment. En particular, permet anar comprovant com es va omplint de notes a mida que es toquen els raigs del sol. Desactivant-la, la llista s'omple igualment però no es veu a l'escenari. La llista tindrà un aspecte semblant a: 

RTENOTITLE

Un cop comprovat el correcte funcionament, es poden programar els altres raigs de sol de la mateixa manera, canviant tant el missatge a enviar com la respectiva nota a guardar i a reproduir. Per exemple, el raig "re" haurà de tocar la nota "re" quan rebi "re", afegir "re" a la llista i enviar a tots "re".

Reproduir les notes musicals

Ara només queda reproduir la llista de notes, per donar-li sentit al nom de l'activitat per exemple quan es clica el vaixell.

Per recórrer els elements de la llista s'ha de fer servir un bloc "repeteix ..." , que es pot trobar a la categoria "Control". Per controlar el nombre de vegades que es fa la repetició, és necessari un bloc que ens indiqui quants element hi ha a la llista. Es tracta del bloc "llargada de ..." i es pot trobar a "Variables". La construcció bàsica és la següent:

RTENOTITLE

Per accedir a cada element de la llista es fa servir el bloc "element ... de ..." de la categoria "Control". Amb aquest bloc es pot consultar quin és el valor de qualsevol element, que en aquest cas serà el nom de la nota musical. Per exemple a la llista anterior si preguntem per el segon element es retorna "mi":

RTENOTITLE

Per poder accedir a cada element de la llista cal una variable que vagi canviant en el seu valor a mida que es fa cada repetició, per exemple es pot dir "posició". Per obtenir el primer element de la llista, "posició" ha de tenir el valor 1. Cada vegada que fem el que hi ha a la repetició, el valor de "posició" ha d'avançar una posició, així anirà passant un a un per cada element fins esgotar tots els elements de la llista. El següent codi fa sonar totes notes de la llista, és a dir, la melodia que composada i guardada:

RTENOTITLE

Com els noms dels missatges corresponen als mateixos noms de les notes guardades a la llista, l'únic que s'ha de fer és recórrer la llista i enviar el missatge que hi ha a cada element de la mateixa:

RTENOTITLE