Es posible añadir el sentido del oído a su microcontrolador conectándolo a un micrófono. El micrófono recoge las vibraciones del aire y las transforma en una señal eléctrica que puede ser analizada y procesada mediante un algoritmo. En este tutorial veremos cómo detectar un nivel de sonido usando el microcontrolador.
Equipo
- Computador
- Arduino UNO
- Cable USB A macho a B macho
- Micrófono
Principio de funcionamiento
El sensor utilizado en este tutorial es un micrófono de condensador eléctrico. Se compone de dos placas, una fija y otra móvil. Las vibraciones del aire se transforman en un desplazamiento del diafragma móvil que crea una variación del potencial eléctrico detectado por el sensor y que envía una señal eléctrica al microcontrolador.
Hay varios modelos de micrófonos con diferentes sensibilidades para detectar sonidos más fuertes o más silenciosos. Un modelo puede ser más adecuado que otro dependiendo de lo que se quiera hacer. Asegúrese de revisar la documentación del módulo.
Esquema
El micrófono requiere baja potencia y puede ser alimentado directamente en el pin 5V del Arduino. Devuelve un valor analógico que será enviado a una entrada analógica del microcontrolador. Según el modelo utilizado, el módulo dispone de un potenciómetro para ajustar la sensibilidad del micrófono.
- AUD al pin A0
- Vcc al pin 5V
- GND al pin GND
Código
Para medir el nivel de sonido, usamos la función AnalogRead() como para la mayoría de los sensores analógicos.
//Parameters const int micPin = A0; //Variables int micVal = 0; void setup() { //Init Serial USB Serial.begin(9600); Serial.println(F("Initialize System")); //Init Microphone pinMode(micPin, INPUT); } void loop() { readMicrophone(); } void readMicrophone( ) { /* function readMicrophone */ ////Test routine for Microphone micVal = analogRead(micPin); Serial.print(F("mic val ")); Serial.println(micVal); if (micVal > 600) { Serial.println("mic detected"); } }
Resultado
Una vez que el código ha sido cargado en el microcontrolador debería ver el valor analógico cambiar de acuerdo con el ruido ambiental. Intenta aplaudir, chasquear los dedos o hablar para ver cómo se comporta el micrófono. Esto le permitirá determinar el nivel necesario para desencadenar una acción.
Solicitudes
- Activar una lámpara con un aplauso de las manos
- Crear una alarma activada por ruido
Fuentes
- https://www.arduino.cc/reference/en/language/functions/analog-io/analogread/
- Gestión de sensores con Arduino
Encuentre otros tutoriales y ejemplos en el generador de código automático
Arquitecto de Código