2. Salidas de Echidna
Acuérdate de poner en modo Sensor
Nota: Acuérdate en toda esta sección de poner la Echidna en modo Sensor, es decir Echidna no trabaja en modo MkyMky
Todos los programas de este curso se encuentran en este repositorio: https://github.com/JavierQuintana/Echidna
MONTAJE 2 Luces psicodélicas
LED RGB
Ya hemos visto las luces LED con el semáforo, ahora vamos a ver el LED RGB
Está conectado a las salidas digitales D5, D6 y D9 y si te fijas, en el Arduino tienen el símbolo ~ ¿Qué significa esto? Que son señales PWM. Si has leído ¿Qué es un Arduino? habrás leído que es una señal digital pero los pulsos pueden variar su ancho de tal manera que la media puede ser una tensión entre 0 y 5V, que se gobiernan con esta instrucción:
Donde 0 sería 0V y el valor 255 sería el valor máximo de tensión que en nuestro caso es 5V aunque puede ser otra tensión si se alimenta Arduino con una alimentación externa Vin.
PROPUESTA MONTAJE 2 LUCES PSICODÉLICAS
Vamos a realizar un programa con Scratch que se iluminen todas las luces de colores de forma aleatoria, además vamos a poner un fondo, un personaje y música para que parezca una discoteca.
Solución con EchinaScratch
Borramos el Sprite del gato y el fondo blanco, y añadimos un Sprite y fondo más acorde al enunciado, en la captura hemos elegido el Sprite predefinido Cassy Dance y fondo Spotlight
Vamos a crear un bloque que encienda las luces RGB al azar, además de las otras
El bloque tendría este aspecto
- El bloque rojo es la cabecera del bloque AZAR-LUCES
- La instrucción encender RGB con intensidades para cada color, un número aleatorio entre 0 y 255
- Encender la luz roja al azar
- Si la variable aleatoria 0-1 es un 1 enciende, sino apaga
- Idem para la naranja
- Idem para la verde
falta pues el programa principal que llama al bloque anterior, espera 500ms y pasa al siguiente disfraz del sprite y fondo
También en paralelo que suene la música dancearround
El resultado
Lo tienes en MONTAJE2-LUCESPSICODELICAS.sb3 dentro del repositorio https://github.com/JavierQuintana/Echidna
Solución con mBlock
Programa para el objeto y para el fondo
Y para el Arduino
El programa entero está en el siguiente enlace : https://planet.mblock.cc/project/3228239
El resultado es el siguiente vídeo, está realizado con mBlock3 pero es el mismo efecto:
MONTAJE 3 Timbre
Enunciado
Queremos que hagas un programa en el Echidna que si se pulsa SL que suene el buzzer y si pulso SL que suene un tono
Ojo, sube el volumen, girando el potenciómetro hacia la derecha
Lo puedes oir o por el buzzer o por el jack de audio
Solución con EchidnaScratch
El programa lo tienes en el repositorio https://github.com/JavierQuintana/Echidna
Esta es la equivalencia entre notas y la nomenclatura Midi :
NOTA | MIDI |
A | LA |
B | SI |
C | DO |
D | RE |
E | MI |
F | FA |
G | SOL |
Solución con mBlock
Con mBlock no tiene instrucciones específicas para Echidna luego inventaremos un poco los tonos
- Cuando se pulsa D2 suene una onda cuadrada de 282Hz o sea una duración 0.035 segundos (0.0175seg el bajo y 0.0175seg el alto).
- Si se pulsa el botón D3 que suene el tono C4 que es aproximadamente esa frecuencia.
El programa lo tienes aquí https://planet.mblock.cc/project/3228713
OJO no se puede hacer "en vivo" hay que cargarlo en el ordenador. La instrucción toca nota no permite utilizar Arduino en vivo
OJO sube el volumen del potenciómetro
El resultado es este vídeo:
Si pulsamos D2 el sonido es más agudo que pulsando D3 que corresponde a la nota C4 ¿Por qué? Porque la señal es cuadrada.
BrainFad = pedo mental
Bueno una explicación más rigurosa de por qué la señal es más aguda con señales cuadras es lo siguiente:
Los cálculos del tiempo de subida y bajada tiempo=0.00175s calculados anteriormente están bien hechos ¿por qué no reproduce bien el tono de la nota C4? por esto:
No es lo mismo una onda analógica sinusoidal de 282 Hz que una onda digital cuadrada que es lo que se reproduce en la salida digital D10
¿Y por qué se oye más agudo? Vamos a fijarnos en una transición por ejemplo la de bajada de 5V a 0V ¿A qué se parece más esa transición?
Evidentemente a la segunda, y esa pendiente tan vertical corresponde más a ondas agudas:
Por lo tanto se oye más agudo, por eso es.
Ya sé que el anterior razonamiento, si lo lee algún físico, le producirá un rechinar de dientes, así que para ellos la explicación formal es que una onda cuadrada, según la transformada de Fourier, reproduce armónicos de orden superior, incluso infinitos si fuese perfecta.
via GIPHY