Això funciona de manera semblant a un tocadiscos. La diferència rau en que, enlloc d’usar una agulla en un disc de vinil, fem servir tres sensors IR en línia per llegir el patró d’un disc de paper. Si ets d’aquells a qui els agrada tant la música com la tecnologia digital, t’ho passaràs genial tot creant diferents melodies per aquest projecte.
Materials
- 1 placa Arduino U
- 1 Shield Bàsica Educativa
- 1 Piezo
- 1 IRArray
- 2 cables negres
- 5 cables de colors
- Kit Binary LP
- disc de paper Binary LP
Instruccions
Codi
Pots trobar el codi a Arxiu -> Exemples -> ShieldBasicaEducativa-> Màgia -> BinaryLP
Com funciona
Els tres sensors IR a l’IRArray detecten el blanc i negre del disc de paper. Poden detectar 8 combinacions diferents d’aquests colors. Recordes com comptar en binari? Ara et serà útil. En el programa, fem servir l’ordre readBinary()
per llegir el disc i rebre un valor de l’1 al 7. Si el patró és blanc, blanc, negre, rebem un ’1′; si el patró és blanc, negre, blanc, rebem un ’2′, etc. Llavors utilitzem aquest valor per tocar una nota. Tu decideixes quina nota reproduir per cada número a la funció playNote()
. Per exemple, si rebem un ’1′ toquem NOTE_C4
i si rebem un ’2′ reproduïm NOTE_D4
. En aquest cas, estem utilitzant els tons de l’escala Do major. Mira la taula “pitches.h” per veure quins altres tons pots fer servir. Si llegim un ’0′ no sona cap nota específica; enlloc d’això, deixem que l’espai en blanc decideixi quant temps ha de ser reproduïda la nota anterior. Com més llarg sigui l’espai, més durarà la nota. Si l’última nota coincideix amb l’actual, apaguem l’altaveu durant 20 milisegon, de manera que es puguin distingir totes dues notes.
No funciona?
- Revisa les il·lustracions i comprova les teves connexions. Assegura’t que els cables estan fortament connectats.
- Corregeix l’IRArray. Mira la referència de l’IRArray.
Continua experimentant!
- Composa dues melodies diferents.
- Pensa una nova manera d’usar les lectures binàries.