Otros elementos hardware
Zumbador¶
Ideas básicas de sonido¶
Antes de entrar en descripciones técnicas de componentes vamos a hablar un poco del sonido, sin entrar en profundidad, y como reproducirlo con una micro:STEAMakers.
Uno de los parámetros que caracterizan a un sonido es su frecuencia de emisión, siendo la frecuencia el número de veces que se repite por unidad de tiempo (segundo). La transmisión del sonido se realiza por ondas a través en cualquier medio (sólido, líquido o gaseoso) excepto en el vacío. La frecuencia de un sonido nos indica cuantos ciclos por segundo tiene una onda.
En la imagen y la tabla siguientes vemos un dibujo con un fragmento de las teclas de un piano estando todo referido a una nota estándar, la nota "La" central que tiene una frecuencia de 440 Hz. Podemos ver la nota musical que reproduce, en las dos notaciones más comunes de los sonidos (Inglés: C D E F G A B, Alemán: C D E F G A H, Español, italiano y francés: Do Re Mi Fa Sol La Si) y además se encuentra la frecuencia que produce esa nota musical.
Otro de los parámetros que caracterizan al sonido es su nivel y en sonido se caracteriza con los decibelios (dB) que es la forma de medir la intensidad del sonido. La percepción del sonido depende de factores como la intensidad, el tiempo que dura, las frecuencias o tonos y el entorno donde estamos. Vamos a introducir brevemente como medir la intensidad del sonido.
Los decibelios (dB) son la unidad de medida de presión acústica. Medimos presión, luego estamos midiendo una fuerza y mas concretamente una fuerza por unidad de superficie. Un sonido pierde intensidad según nos alejamos de la fuente y lo hace a un ritmo de unos 6 dB cada que vez que se duplica la distancia. Vemos un ejemplo: supongamos que escuchamos un sonido de 45 dB a una distancia de un metro, cuando nos pongamos a dos metros escucharemos 39 dB, cuando estemos a 4 metros, será de 33 dB y cuando estemos a 8 metros, de 27 dB.
La escala de medida en dB no es lineal, es logaritmica porque representa mejor la forma en que sentimos los cambios de la intensidad del sonido con nuestro oido. Algunos datos para reflexionar sobre el ruido:
- El sonido se vuelve dañino para el ser humano a partir de los 75 dB.
- Alrededor de los 120 dB causa dolor. Una exposición de dos horas a 100 dB necesita un día completo para que el oido compense la exposición.
- Sonido en torno a 180 dB pueden ocasionar la muerte.
En la tabla vemos algunos ejemplos del día a día:
nivel de sonido | Percepción | Situación |
---|---|---|
0 dB | Muy bajo | Nivel de audición humano |
10 a 30 dB | Nivel bajo | Conversación tranquila. Biblioteca |
30 a 50 dB | Nivel bajo | Conversación normal. Motor frigorifico. Agua saliendo del grifo |
55 a 75 dB | Nivel considerable | Aspirador. Calle con trafico denso. Despertador. Batidora |
75 a 100 dB | Nivel alto | Sensación molesta. Atasco de tráfico. Sirena de policia |
100 a 120 dB | Muy alto | Taladro/claxon/concierto R&R = 120 dB. Interior discoteca = 110 dB |
mas de 120 dB | Dolor | Avión despegando a 25 metros. Petardo a un metro |
Una equivalencia que nos puede ayudar a familiarizarnos con esta unidad es la tabla de equivalencias entre potencias y dBm (decibelios milivatio):
P (mW) | dBm | P (mW) | dBm | P (mW) | dBm | P (mW) | dBm |
---|---|---|---|---|---|---|---|
1 | 0 | 16 | 12 | 250 | 24 | 4 W | 36 |
1.3 | 1 | 20 | 13 | 315 | 25 | 5 W | 37 |
1.6 | 2 | 25 | 14 | 400 | 26 | 6 W | 38 |
2 | 3 | 32 | 15 | 500 | 27 | 8 W | 39 |
2.5 | 4 | 40 | 16 | 630 | 28 | 10 W | 40 |
3.2 | 5 | 50 | 17 | 800 | 29 | 13 W | 41 |
4 | 6 | 64 | 18 | 1 W | 30 | 16 W | 42 |
5 | 7 | 80 | 19 | 1.3 W | 31 | 20 W | 43 |
6 | 8 | 100 | 20 | 1.6 W | 32 | 25 W | 44 |
8 | 9 | 125 | 21 | 2 W | 33 | 32 W | 45 |
10 | 10 | 158 | 22 | 2.5 W | 34 | 40 W | 46 |
13 | 11 | 200 | 23 | 3 W | 35 | 50 W | 47 |
Si observamos cuidadosamente la tabla veremos que la potencia se duplica o divide por dos, según recorramos la tabla, cada 3 dB.
Zumbador pasivo¶
Un zumbador o buzzer pasivo no es mas que un pequeño altavoz que nos sirve para convertir una señal eléctrica en una onda de sonido. Son dispositivos que no disponen de ningún tipo de electrónica interna, por lo que tenemos que proporcionar una señal eléctrica para conseguir el sonido deseado.
Normalmente (como componente) estos dispositivos se incluyen en un módulo que incorpora un transistor y una resistencia de polarización del mismo para hacer funcionar al altavoz que actúa como carga.
Un buzzer se basa en un transductor piezoeléctrico que es capaz de variar su volumen con el paso de la corriente eléctrica, fenómeno que se aprovecha para hacer vibrar la membrana del altavoz. Esquemáticamente vemos esto en la figura siguiente:
Un zumbador pasivo requiere para su funcionamiento una señal de tipo PWM para poder indicarle la frecuencia y la duración de la señal.
El aspecto de un buzzer clásico visto por ambos lados nos ayudará a distinguirlo del activo.
El que incorpora la ESP32 micro:STEAMakers es de tipo 'montaje superficial' y tiene el aspecto de la imagen siguiente:
Zumbador activo¶
Este tipo de zumbador incluye un oscilador que genera una frecuencia audible fija y que se conoce como zumbador pasivo y, en realidad, es el que de forma correcta se puede denominar como zumbador. Este es mucho mas sencillo de usar ya que basta con conectarlo a un pin digital y cuando pongamos a nivel alto este pin el zumbador generará su zumbido característico durante el tiempo que establezcamos. Con este tipo de zumbador no se pueden generar melodías.
Cuando está nuevo se distingue del zumbador pasivo o altavoz por la pegatina de protección que lo acompaña, pero esta hay que quitarla para oir el zumbido y sin ella es difícil distinguir un tipo del otro, salvo por su reverso. Es aconsejable marcar alguno de los dos cuando podemos distinguirlos, sobre todo si van a ir montados sobre una PCB. Una buena idea puede ser utilizar la propia pegatina en el lateral del mismo para distinguirlo a primera vista.
Un zumbador activo produce un tono audible fijo con tan solo aplicarle tensión.
El aspecto por ambos lados de uno típico nos ayudará a distinguirlo del pasivo.
Micrófonos¶
Un micrófono es un dispositivo de entrada que sirve para transformar ondas sonoras en energia electrica y vicerversa en procesos de grabación.
Existe multitud de tipos de micrófonos para distintas aplicaciones en las que no vamos a entrar. En el enlace tienes un amplio artículo sobre los mismos.
Existe un tipo denominado MEMs ("Microelectromechanical systems" en inglés) que también se denominan chips microfónicos y son variantes del micrófono a condensador. El diafragma sensible está grabado sobre la oblea de silicio y suelen integrarse con un amplificador incorporado.
La micro:STEAMakers tiene un micrófono integrado. Puede usarse como una entrada simple (encender luces cuando se aplaude) o tambien se puede medir la cantidad de sonido, por lo que puede hacer un medidor de nivel de ruido o sonómetro básico Tambien podemos hacer que las luces se enciendan en modo disco, al compás de la música. Un micrófono funciona como un transductor o sensor electroacústico y convierte el sonido (ondas sonoras) en una señal eléctrica para aumentar su intensidad, transmitirla y registrarla.
El micrófono está en la parte delantera de la micro:STEAMakers y tiene el aspecto que vemos en la imagen siguiente:
Un circuito de aplicación típica lo vemos a continuación. En el mismo podemos observar que la capsula microfónica incluye su propia circuiteria amplificadora.
Acelerómetro + giroscopio¶
La ESP32 micro:STEAMakers monta un chip MPU-6050 de InvenSense que es un dispositivo MEMS de 6 ejes (giroscopio + acelerómetro). El término MEMS, del inglés MicroElectroMechanical Systems, se refiere a la tecnología electromecánica de dispositivos microscópicos o sistemas microelectromecánicos.
Los dispositivos MPU-6050 combinan un giroscopio de 3 ejes y un acelerómetro de 3 ejes en el mismo chip, junto con un procesador digital (Digital Motion Processor™ o DMP) integrado, que procesa algoritmos complejos de 6 ejes. El dispositivo puede acceder a magnetómetros externos u otros sensores a través de un bus I²C maestro auxiliar, lo que permite a los dispositivos recopilar un conjunto completo de datos de sensores sin intervención del procesador del sistema.
Para un seguimiento preciso de los movimientos rápidos y lentos, el chip incorpora un giroscopio programable por el usuario con una escala completa de ±250, ±500, ±1000 y ±2000 °/seg (dps), y un acelerómetro programable por el usuario con una escala completa de ±2g, ±4g, ±8g y ±16g. Otras características son un sensor de temperatura integrado con una variación del ±1% en el rango de temperatura de funcionamiento.
En arduinoblocks se implementa el bloque del sensor con las aceleraciones y giros en los ejes X, Y y Z que vemos en la imagen siguiente:
A continuación vamos a analizar la posición de los ejes X, Y, Z con la micro:STEAMakers vista por su cara frontal con el conector USB-C en la parte superior. La forma habitual en que vemos la pantalla de LEDs RGB.
Analizando la imagen siguiente:
Fijamos la posición de los ejes que vemos en la imagen siguiente:
Tal y como vemos en la imagen siguiente, un programa en el que asignamos al plotter las aceleraciones en los tres ejes nos devuelve como resultado que cuando movemos la placa en el eje X habitual responde la aceleración en Y (marrón oscuro) y al moverlo en Y responde la de X (magenta claro). La tercera gráfica corresponde al eje Z.
Como veremos en la actividad correspondiente el problema en muy sencillo de solucionar (si no lo está en el propio IDE de programación) para que las direcciones del movimiento sean la que habitualmente utilizamos en los ejes coordenados.
En la imagen siguiente se analiza la aceleración en el eje Z:
El problema se repite cuando trabajamos con los datos de giro.
Tarjeta microSD¶
La placa ESP32 microSTEAMakers incorpora un lector de tarjetas microSD conectada mediante el bus SPI para comunicarse con el micro controlador.
El lector se conecta utilizando los pines:
- io5 - CS o Chip Select
- io23 - MOSI o Master Output Slave Input: Salida de datos del Master y entrada de datos al Esclavo.
- io19 - MISO o Master Input Slave Output: Salida de datos del Esclavo y entrada al Master.
- io18 - SCK o Clock
En la Presentación, apartado Introducción podemos apreciar la posición del lecto SD en la parte posterior de la placa. En la imagen siguiente vemos destacado el lector SD.