- Kailangan ng materyal
- Paggawa ng isang Sound sensor
- Diagram ng Circuit ng Sensor ng Sound
- Diagram ng Musika Tubig na Fountain Circuit
- Programming Arduino Nano para sa Dancing Fountain
Mayroong maraming mga fountain ng tubig na kung saan ay walang kondisyon magwiwisik ng tubig na may ilang mga kagiliw-giliw na mga ilaw na epekto. Kaya't gumala ako tungkol sa pagdidisenyo ng isang makabagong fountain ng tubig na maaaring tumugon sa panlabas na musika at magwiwisik ng tubig depende sa mga beats ng musika. Hindi ba nakakainteres ito?
Ang pangunahing ideya ng Arduino Water Fountain na ito ay kumuha ng isang input mula sa anumang panlabas na mapagkukunan ng tunog tulad ng mobile, iPod, PC atbp. Ginamit muna namin ang isang module ng sensor ng tunog na batay sa condenser mic upang maisagawa ang pinagmulan ng tunog upang hatiin ang mga tunog sa iba't ibang mga saklaw ng boltahe. Pagkatapos ang boltahe ay ipakain sa op-amp upang ihambing ang antas ng tunog na may isang partikular na limitasyon. Ang mas mataas na saklaw ng boltahe ay tumutugma sa isang relay switch ON na binubuo ng isang musikal na fountain ng tubig na tumatakbo sa mga beats at ritmo ng kanta. Kaya't dito namin itinatayo ang Musical Fountain na ito gamit ang Arduino at sound sensor.
Kailangan ng materyal
- Arduino Nano
- Modyul ng sensor ng tunog
- 12V Relay Module
- DC Pump
- Mga LED
- Mga kumokonekta na mga wire
- Vero board o Breadboard
Paggawa ng isang Sound sensor
Ang module ng Sound sensor ay isang simpleng electret microphone based electronic board na ginagamit upang makaramdam ng panlabas na tunog mula sa kapaligiran. Batay ito sa LM393 power amplifier at isang electret microphone, maaari itong magamit upang makita kung mayroong anumang tunog na lampas sa itinakdang limitasyon ng threshold. Ang output module ay isang digital signal na nagpapahiwatig na ang tunog ay mas malaki o mas mababa kaysa sa threshold.
Ang potensyomiter ay maaaring magamit upang ayusin ang pagiging sensitibo ng module ng sensor. Ang output ng module ay TAAS / Mababa kapag ang pinagmulan ng tunog ay Mas Mababa / mas mataas kaysa sa threshold na itinakda ng potensyomiter. Maaari ring magamit ang parehong module ng tunog sensor para sa pagsukat ng antas ng tunog sa decibel.
Diagram ng Circuit ng Sensor ng Sound
Tulad ng nalalaman natin na sa isang module ng sound sensor, ang pangunahing aparato ng pag-input ay ang mikropono na nagpapalit ng mga signal ng tunog sa mga de-koryenteng signal. Ngunit dahil ang output ng signal ng elektrikal ng sensor ng tunog ay napakaliit ng sukat na napakahirap pag-aralan, sa gayon ay gumamit kami ng isang NPN transistor amplifier circuit na magpapalaki nito at magpapakain ng output signal sa hindi na-invert na input ng Op amp Narito ang LM393 OPAMP ay ginagamit bilang isang kumpara na naghahambing ng de-koryenteng signal mula sa mikropono at ang senyas ng sanggunian na nagmumula sa circuit ng boltahe divider. Kung ang input signal ay mas malaki kaysa sa signal ng sanggunian kung gayon ang output ng OPAMP ay magiging mataas at vice versa.
Maaari mong sundin ang mga seksyon ng Op-amp circuit upang malaman ang nalalaman tungkol sa pagtatrabaho nito.
Diagram ng Musika Tubig na Fountain Circuit
Tulad ng ipinakita sa diagram ng musikal na fountain circuit sa itaas, ang sound sensor ay pinalakas ng 3.3V supply ng Arduino Nano at ang output pin ng module ng tunog sensor ay konektado sa analog input pin (A6) ng Nano. Maaari mong gamitin ang anuman sa mga analog pin, ngunit tiyaking baguhin iyon sa programa. Ang module ng relay at DC pump ay pinalakas ng isang panlabas na 12VDC power supply tulad ng ipinakita sa figure. Ang input signal ng relay module ay konektado sa digital output pin D10 ng Nano. Para sa epekto sa pag-iilaw pinili ko ang dalawang magkakaibang kulay ng LED at ikinonekta ang mga ito sa dalawang digital output pin (D12, D11) ng Nano.
Narito ang Pump ay konektado sa isang paraan na kapag ang isang HIGH pulse ay ibinigay sa input ng Relay module, ang COM contact ng relay ay makakakonekta sa WALANG contact at ang kasalukuyang nakakakuha ng isang closed circuit path upang dumaloy sa buong bomba buhayin ang daloy ng tubig. Kung hindi man ay mananatiling OFF ang bomba. Ang NAKAKataas / Mababang pulso ay nabuo mula sa Arduino Nano depende sa input ng tunog.
Matapos ang paghihinang ng kumpletong circuit sa perfboard, magiging hitsura ito sa ibaba:
Dito ginamit namin ang isang plastik na kahon bilang lalagyan ng fountain at mini 5v pump upang kumilos bilang isang fountain, ginamit namin ang pump na ito dati sa robot na naglaban sa sunog:
Programming Arduino Nano para sa Dancing Fountain
Ang kumpletong programa ng Arduino water fountain project na ito ay ibinibigay sa ilalim ng pahina. Ngunit narito ko lamang ipinapaliwanag na sa pamamagitan ng mga bahagi para sa mas mahusay na pag-unawa:
Ang unang bahagi ng programa ay upang ideklara ang mga kinakailangang variable para sa pagtatalaga ng mga numero ng pin na gagamitin namin sa susunod na mga bloke ng programa. Pagkatapos tukuyin ang isang pare-pareho REF na may isang halaga na kung saan ay ang halaga ng sanggunian para sa module ng tunog sensor. Ang itinalagang halagang 700 ay ang bytes na katumbas na halaga ng output electrical signal ng sound sensor.
int sensor = A6; int redled = 12; int berde = 11; int pump = 10; # tukuyin ang REF 700
Sa walang bisa na pag- andar ng pag- setup ay ginamit namin ang pagpapaandar ng pinMode upang italaga ang direksyon ng data ng INPUT / OUTPUT ng mga pin. Narito ang sensor na kinuha bilang INPUT at lahat ng iba pang mga aparato ay ginagamit bilang OUTPUT.
void setup () { pinMode (sensor, INPUT); pinMode (redled, OUTPUT); pinMode (berde, OUTPUT); pinMode (pump, OUTPUT); }
Sa loob ng walang katapusang loop , ang analogRead function ay tinatawag na kung aling pagbasa ng input ng halaga ng analog mula sa sensor pin at iniimbak ito sa isang variable sensor_value .
int sensor_value = analogRead (sensor);
Sa huling bahagi ng isang if-else loop ay ginagamit upang ihambing ang input analog signal sa halaga ng Sanggunian. Kung ito ay mas malaki kaysa sa sanggunian, pagkatapos ang lahat ng mga output pin ay binibigyan ng TAAS na output upang ang lahat ng mga LED at Pump ay isinaaktibo, kung hindi man ang lahat ay mananatiling OFF. Nagbigay din kami rito ng isang pagkaantala ng 70 Milliseconds upang maibukod ang ON / OFF na oras ng Relay.
kung (sensor_value> REF) { digitalWrite (greenled, HIGH); digitalWrite (redled, HIGH); digitalWrite (pump, HIGH); pagkaantala (70); } iba pa { digitalWrite (greenled, LOW); digitalWrite (redled, LOW); digitalWrite (pump, LOW); pagkaantala (70); }
Ganito gumagana ang kinontrol ng Arduino na Water Fountain, ang kumpletong code na may gumaganang video ay ibinibigay sa ibaba.