Tabla de contenido:

Máquina de ruido Arduino: 4 pasos
Máquina de ruido Arduino: 4 pasos

Video: Máquina de ruido Arduino: 4 pasos

Video: Máquina de ruido Arduino: 4 pasos
Video: CÓMO ELIMINAR EL RUIDO ELÉCTRICO o ELECTRÓNICO 2024, Noviembre
Anonim
Máquina de ruido Arduino
Máquina de ruido Arduino
Máquina de ruido Arduino
Máquina de ruido Arduino
Máquina de ruido Arduino
Máquina de ruido Arduino

Encontré un pequeño altavoz mientras derribaba un viejo PC. para reciclar y pensé en ver cómo sonaba el uso de la función Arduino Tone (). Comencé con un potenciómetro de 10Ω para controlar el tono y comencé a hacer algo de ruido. La función Tone () usa un patrón de pulso simple. Enciende y apaga el sonido a diferentes frecuencias en un patrón de onda cuadrada. Tenía otros dos potenciómetros por ahí, así que los agregué y los usé para controlar la duración del tono. Uno para controlar la duración del tono y otro para controlar el espacio silencioso entre los tonos. Básicamente está usando otro patrón de onda cuadrada pero a una frecuencia mucho más baja. Puede lograr una buena variedad de ruido con este circuito. También funciona bien con un zumbador piezoeléctrico, pero carece de la respuesta de graves de un altavoz.

Paso 1: Piezas que necesitará

Arduino Uno

Protoboard y cables de puente

1 altavoz pequeño o zumbador piezoeléctrico

1 interruptor de botón

3 potenciómetros de 10 Ω

1 resistencia de 22Ω

1 resistencia de 10 kΩ

Paso 2: construye el circuito

Construye el circuito
Construye el circuito

Conecte la placa de pruebas a su pin Arduino 5V y GND. Coloque el interruptor de botón en el extremo derecho o izquierdo de la placa de pruebas y conéctelo a 5V y a tierra usando la resistencia de 10kΩ. Conecte un cable del circuito del interruptor al pin 2 de su Arduino.

En el otro lado de la placa, configure el circuito de altavoz / piezo a 5v y conecte a tierra usando la resistencia de 220Ω. Esta resistencia controla la corriente controlando así el volumen; puede probar diferentes resistencias aquí para un volumen mayor o menor.

Coloque sus potenciómetros en el centro de la placa de pruebas, dando suficiente espacio para jugar con las perillas. Cada olla deberá estar conectada a 5V y tierra y los pines centrales de cada uno deben estar conectados a los pines analógicos A0, A1 y A2

Paso 3: el código

Un potenciómetro o potenciómetro es una resistencia variable que cuando se conecta a un Arduino devolverá un valor entre 0 y 1023. Usaremos la función map () para cambiar estos valores para satisfacer nuestras propias necesidades. La función map () toma cinco argumentos y en nuestro caso necesitamos volver a mapear el rango entre 220 y 2200 para producir un sonido audible razonable.

La función se parece a esto:

mapa (bote, 0, 1023, 220, 2200);

Puede jugar con los dos últimos valores para tonos de frecuencia más altos y más bajos, solo tenga cuidado de no molestar a su perro.

Noise_Machine.ino

/ * Máquina de ruido mediante tres potenciómetros conectados a entradas analógicas
y un altavoz piezoeléctrico o pequeño. Un pulsador enciende el ruido, los potenciómetros
controlar el tono usando la función Arduino tone (), y dos retardos
valores que controlan la duración de cada tono y la duración entre
cada tono. Los potenciómetros dan valores analógicos que se cambian
usando la función map () en rangos más grandes o más pequeños para adaptarse a su
Gustos musicales.
Este código es de dominio público.
Matt Thomas 2019-05-04
*/
constint buttonPin = 2; // Pin de pulsador 2
hablante constante = 9; // Altavoz o piezo en el pin 9
int buttonState = 0; // Variables para el botón
int potZero; // y potenciómetros
int potOne;
int potTwo;
voidsetup () {
pinMode (9, SALIDA); // Pin de salida de altavoz / piezo
}
voidloop () {
buttonState = digitalRead (buttonPin); // Leer el estado del botón
potZero = analogRead (A0); // Variables para leer los valores analógicos
potOne = analogRead (A1);
potTwo = analogRead (A2);
int htz = map (potZero, 0, 1023, 0, 8800); // Asignar las lecturas analógicas en
int alto = mapa (potOne, 0, 1023, 0, 100); // nuevos rangos de números y crear
int low = map (potTwo, 0, 1023, 0, 100); // nuevas variables
if (buttonState == HIGH) {// Si se presiona el botón …
tono (altavoz, htz); // Sonido encendido
retraso (alto); // Duración del tono
noTone (altavoz); // Sonido apagado
retraso (bajo); // Tiempo hasta el siguiente tono
} demás {
noTone (altavoz); // No hay tono si se suelta el botón
}
}

ver rawNoise_Machine.ino alojado con ❤ por GitHub

Paso 4: el final

Así que eso es todo lo que hay que hacer. Juegue con los valores en el código, agregue más ollas / botones y vea qué más puede controlar. Avísame si he cometido algún error y espero que disfrutes de la música.

Recomendado: