Índice:
Vídeo: Máquina de ruído Arduino: 4 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:35
Encontrei um minúsculo alto-falante enquanto derrubava um velho P. C. para reciclagem e pensei em como seria usar a função Arduino Tone (). Comecei com um potenciômetro de 10Ω para controlar o tom e comecei a fazer algum barulho. A função Tone () usa um padrão de pulso simples. Ele liga e desliga o som em diferentes frequências em um padrão de onda quadrada. Eu tinha outros dois potenciômetros espalhados, então eu os adicionei e usei para controlar a duração do tom. Um para controlar a duração do tom e outro para controlar o espaço silencioso entre os tons. Ele está basicamente usando outro padrão de onda quadrada, mas em uma frequência muito mais baixa. Você pode obter uma boa variedade de ruído com este circuito. Também funciona bem com uma campainha piezoelétrica, mas não tem a resposta de graves de um alto-falante.
Etapa 1: Peças de que você precisará
Arduino Uno
Placa de ensaio e fios de jumper
1 alto-falante pequeno ou campainha piezoelétrica
1 botão de pressão
3 potenciômetros de 10Ω
1 resistor de 22Ω
1 resistor de 10kΩ
Etapa 2: construir o circuito
Conecte a placa de ensaio ao pino do Arduino 5V e ao GND. Coloque a chave do botão de pressão na extremidade direita ou esquerda da placa de ensaio e conecte-a a 5 V e aterramento usando o resistor de 10kΩ. Conecte um fio do circuito da chave ao pino 2 em seu Arduino.
No outro lado da placa de ensaio, configure o circuito do alto-falante / piezo para 5v e aterre usando o resistor de 220Ω. Este resistor controla a corrente, controlando assim o volume; você pode tentar resistores diferentes aqui para volume maior ou menor.
Organize seus potenciômetros no centro da placa de ensaio, dando espaço suficiente para mexer nos botões. Cada potenciômetro precisará ser conectado a 5V e aterrado e os pinos centrais em cada um conectado aos pinos analógicos A0, A1 e A2
Etapa 3: O Código
Um potenciômetro ou potenciômetro é um resistor variável que, quando conectado a um Arduino, retornará um valor entre 0 e 1023. Usaremos a função map () para alterar esses valores para atender às nossas próprias necessidades. A função map () leva cinco argumentos e, em nosso caso, precisamos mapear novamente o intervalo entre 220 e 2200 para produzir um som audível razoável.
A função é semelhante a esta:
mapa (pote, 0, 1023, 220, 2200);
Você pode brincar com os dois últimos valores para tons de frequência mais alta e mais baixa, mas tome cuidado para não incomodar seu cão.
Noise_Machine.ino
/ * Máquina de ruído usando três potenciômetros conectados a entradas analógicas |
e um piezo ou alto-falante pequeno. Um botão liga o ruído, os potenciômetros |
controlar o tom usando a função Tom do Arduino () e dois atrasos |
valores que controlam a duração de cada tom e a duração entre |
cada tom. Os potenciômetros fornecem valores analógicos que são alterados |
usando a função map () em intervalos maiores ou menores para se adequar ao seu |
gostos musicais. |
Este código é de domínio público. |
Matt Thomas 2019-05-04 |
*/ |
constint buttonPin = 2; // Botão do pino 2 |
alto-falante constint = 9; // Alto-falante ou piezo no pino 9 |
int buttonState = 0; // Variáveis para o botão |
int potZero; // e potenciômetros |
int potOne; |
int potTwo; |
voidsetup () { |
pinMode (9, SAÍDA); // Pino de saída do alto-falante / piezo |
} |
voidloop () { |
buttonState = digitalRead (buttonPin); // Leia o estado do botão de pressão |
potZero = analogRead (A0); // Variáveis para ler os valores analógicos |
potOne = analogRead (A1); |
potTwo = analogRead (A2); |
int htz = map (potZero, 0, 1023, 0, 8800); // Mapeie as leituras analógicas em |
int alto = mapa (potOne, 0, 1023, 0, 100); // novos intervalos de números e criar |
int low = map (potTwo, 0, 1023, 0, 100); // novas variáveis |
if (buttonState == HIGH) {// Se o botão for pressionado … |
tom (alto-falante, htz); // Som ligado |
atraso (alto); // Comprimento do tom |
noTone (alto-falante); // Som desligado |
atraso (baixo); // Tempo até o próximo tom |
} outro { |
noTone (alto-falante); // Sem tom se o botão for liberado |
} |
} |
veja rawNoise_Machine.ino hospedado com ❤ por GitHub
Etapa 4: Fim
Então isso é tudo que há para fazer. Brinque com os valores no código, adicione mais potes / botões e veja o que mais você pode controlar. Avise-me se cometi algum erro e espero que goste da música.
Recomendado:
Ruído ~ Rompler / Cicada ~: 6 etapas
Ruído ~ Rompler / Cicada ~:
Sinal ou medidor de nível de ruído inseguro: 4 etapas (com imagens)
Medidor ou sinalizador de nível de ruído inseguro: Adoro observar os projetos criativos das pessoas. Ferramentas & amp modernas; a tecnologia nos dá tantas opções criativas. Eu ensino materiais pesados para alunos do ensino médio em uma escola na Nova Zelândia, então estou sempre desenvolvendo & experimentando coisas novas. Thi
Resolvendo o problema de ruído de clique na tela Apple 27 ": 4 etapas
Resolvendo o problema de ruído de clique na tela Apple 27 ": alguma vez uma de suas telas amadas começou a fazer muito barulho quando você a está usando? Isso parece acontecer depois que a tela está em uso há vários anos. Eu depurei um dos display pensando que havia um bug preso na ventoinha de resfriamento, b
Semáforo de ruído - DIY 3D impresso: 8 etapas (com fotos)
Noise Traffic Light - DIY 3D Printed: Todas as pessoas querem trabalhar em silêncio e é importante ter um bom ambiente de trabalho. O silêncio leva a um trabalho eficiente. Fizemos esse projeto para chegar a essa proposta. O semáforo de ruído consiste em um "semáforo" que controla o dB
Tela de ruído do Arduino TFT Rainbow: 5 etapas
Arduino TFT Rainbow Noise Display: criamos este projeto arco-íris usando várias técnicas de 'ruído', que criam efeitos aleatórios controlados. Ao adicionar alguma cor, um efeito de arco-íris pode ser produzido. Ele usa um Arduino Nano e um display OLED de 128x128. Exibimos os efeitos usando