- Material requerit
- Funcionament d'un sensor de so
- Diagrama del circuit del sensor de so
- Diagrama del circuit de la font d’aigua musical
- Programació Arduino Nano per Dancing Fountain
Hi ha diverses fonts d’aigua que esquitxen incondicionalment aigua amb alguns efectes d’il·luminació interessants. Així doncs, vaig estar pensant en dissenyar una font d’aigua innovadora que pogués respondre a la música externa i ruixar aigua segons els ritmes de la música. No sona interessant?
La idea bàsica d’aquesta Font d’Aigua Arduino és agafar una entrada de qualsevol font de so externa com ara mòbils, iPod, PC, etc., provar el so i dividir-lo a diferents rangs de voltatge i, a continuació, utilitzar la sortida per activar diversos relés. Primer hem utilitzat un mòdul de sensor de so basat en micròfon de condensador per actuar a la font de so per dividir els sons en diferents rangs de voltatge. Llavors, el voltatge s’alimentarà a l’amplificador operatiu per comparar el nivell de so amb un límit concret. El rang de tensió més alt correspondrà a un interruptor de relé activat que comprèn una font d’aigua musical que funciona als ritmes i ritmes de la cançó. Així doncs, aquí estem construint aquesta font musical amb Arduino i sensor de so.
Material requerit
- Arduino Nano
- Mòdul de sensor de so
- Mòdul de relé de 12V
- Bomba de CC
- LEDs
- Connexió de cables
- Tauler Vero o tauler de pa
Funcionament d'un sensor de so

El mòdul de sensor de so és una simple placa electrònica basada en un micròfon electret que s’utilitza per detectar el so extern de l’entorn. Es basa en l’ amplificador de potència LM393 i un micròfon electret, es pot utilitzar per detectar si hi ha so més enllà del límit establert. La sortida del mòdul és un senyal digital que indica que el so és major o menor que el llindar.
El potenciòmetre es pot utilitzar per ajustar la sensibilitat del mòdul del sensor. La sortida del mòdul és ALTA / BAIXA quan la font de so és inferior / superior al llindar establert pel potenciòmetre. El mateix mòdul de sensor de so també es pot utilitzar per mesurar el nivell de so en decibels.
Diagrama del circuit del sensor de so

Com sabem, en un mòdul de sensor de so, el dispositiu d’entrada bàsic és el micròfon que converteix els senyals de so en senyals elèctrics. Però com la sortida de senyal elèctrica del sensor de so és tan petita en magnitud que és molt difícil d’analitzar, hem utilitzat un circuit amplificador de transistor NPN que l’amplificarà i alimentarà el senyal de sortida a l’entrada no inversora de l’Op- amplificador Aquí LM393 OPAMP s'utilitza com a comparador que compara el senyal elèctric del micròfon i el senyal de referència procedent del circuit divisor de tensió. Si el senyal d'entrada és superior al de referència, la sortida de l'OPAMP serà alta i viceversa.
Podeu seguir les seccions dels circuits d'amplificadors operatius per obtenir més informació sobre el seu funcionament.
Diagrama del circuit de la font d’aigua musical

Com es mostra al diagrama del circuit musical de la font musical anterior, el sensor de so s’alimenta amb un subministrament de 3,3 V d’Arduino Nano i el pin de sortida del mòdul del sensor de so està connectat al pin d’entrada analògic (A6) de Nano. Podeu utilitzar qualsevol pin analògic, però assegureu-vos de canviar-lo al programa. El mòdul de relé i la bomba de CC són alimentats per una font d'alimentació externa de 12VDC, tal com es mostra a la figura. El senyal d'entrada del mòdul de relé està connectat al pin de sortida digital D10 de Nano. Per a l’efecte d’il·luminació, vaig triar dos colors diferents de LED i els vaig connectar a dos pins de sortida digitals (D12, D11) de Nano.
Aquí la bomba es connecta de manera que quan es dóna un impuls HIGH a l'entrada del mòdul de relé, el contacte COM del relé es connecta al contacte NO i el corrent obté un recorregut de circuit tancat que flueix a través de la bomba cap a activar el flux d’aigua. En cas contrari, la bomba romandrà APAGADA. Els impulsos HIGH / LOW es generen des d’Arduino Nano en funció de l’entrada de so.
Després de soldar el circuit complet al perfboard, es veurà a continuació:

Aquí hem utilitzat una caixa de plàstic com a contenidor de font i mini bomba de 5 v per actuar com a font; abans hem utilitzat aquesta bomba en un robot contra incendis:

Programació Arduino Nano per Dancing Fountain
El programa complet d’aquest projecte de font d’Aigua Arduino es dóna a la part inferior de la pàgina. Però aquí només explico això per parts per a una millor comprensió:
La primera part del programa és declarar les variables necessàries per assignar els números de pin que utilitzarem als propers blocs del programa. A continuació, definiu una REF constant amb un valor que sigui el valor de referència del mòdul del sensor de so. El valor assignat 700 és el valor equivalent de bytes del senyal elèctric de sortida del sensor de so.
sensor int = A6; int redled = 12; int greenled = 11; bomba int = 10; #defineix REF 700
En la funció de configuració nul·la , hem utilitzat la funció pinMode per assignar la direcció de dades INPUT / OUTPUT dels pins. Aquí el sensor es pren com a INPUT i tots els altres dispositius s’utilitzen com a OUTPUT.
void setup () { pinMode (sensor, INPUT); pinMode (redled, OUTPUT); pinMode (en verd, OUTPUT); pinMode (bomba, OUTPUT); }
Dins del bucle infinit, s'anomena la funció analogRead , que llegeix el valor analògic d'entrada del pin del sensor i l'emmagatzema en un sensor_value variable.
int sensor_value = analogRead (sensor);
A la part final s’utilitza un bucle if-else per comparar el senyal analògic d’entrada amb el valor de referència. Si és més gran que la referència, tots els pins de sortida reben una sortida ALTA perquè tots els LED i la bomba estiguin activats, en cas contrari, tot queda apagat. Aquí també hem donat un retard de 70 mil·lisegons per diferenciar el temps ON / OFF del relé.
if (sensor_value> REF) { digitalWrite (greenled, HIGH); digitalWrite (redled, HIGH); digitalWrite (pump, HIGH); retard (70); } else { digitalWrite (en verd, BAIX); digitalWrite (vermell, BAIX); digitalWrite (bomba, BAIX); retard (70); }


Així funciona aquesta font d’aigua controlada per Arduino, a continuació es mostra el codi complet amb un vídeo de treball.
