Julelys til musikk ved hjelp av Arduino: 9 trinn (med bilder)
Julelys til musikk ved hjelp av Arduino: 9 trinn (med bilder)

Video: Julelys til musikk ved hjelp av Arduino: 9 trinn (med bilder)

Video: Julelys til musikk ved hjelp av Arduino: 9 trinn (med bilder)
Video: eMMa - Engler i sne 2025, Januar
Anonim

Min kone og jeg har ønsket å lage vårt eget lys-sett-til-musikk-show de siste feriesesongene. Inspirert av de to instruksjonene nedenfor bestemte vi oss for å endelig komme i gang i år og dekorere bobilen vår. Vi ønsket en alt-i-ett-kontroller (lys OG musikk), men trengte ikke at den skulle kunne kontrolleres over internett, noe som gjorde den litt annerledes enn de to andre instruksjonene. Video kommer! Kilder jeg har brukt: Instrukserbare: Arduino Christmas Light Controllerx-box: Arduino/ioBridge internettstyrte Christas-lys og musikkshow Annet: Solid State Relays (SSR) Bruke TRIAC:

Trinn 1: Deler du trenger

SSR -rekvisita ($ 7): MOC3031 optokobler (8) Z0103 TRIAC (8)

Light Controller Supplies ($ 61): Arduino DuemilanoveWaveShield

FM -sender - Jeg lagde en (vist på bildene nedenfor), men noen vil fungere ($ 15+)

RadioShack B&M ($ 14): Wire Terminaler (3 pakker, 12 kontakter) 276-1388 kretskort 276-147 (kan bruke mindre) 330ohm motstander (2x 5-pakninger) 150ohm motstander (2x 5-pakninger)

Home Depot B&M ($ 25): 50 fot landskap/sprinklerledning (18ga, 7 leder) 079407238170 6 'strømledninger (minimum x8, for å bruke de kvinnelige 120v -kontaktene) -du kan trenge mer enn 8, avhengig av plasseringene til lysene dine; Jeg brukte 11 Clear Plastic Box (dollartreet mitt var ute, men HD hadde disse for $ 0,87)

Diverse: Loddejern (jeg bruker en butandrevet BernzOmatic fra Home Depot; dobler som varmepistol) Lodding (sterkt anbefalt: Loddepasta) Skrutrekkere (philips for WaveShield, standard for wire terminaler) Wire (for WaveShield og tilkobling til SSR-er), Jeg brukte ekstra brødbrett -jumper -ledninger jeg hadde) Diagonal Cutters Wire Strippers SD -kort (hvilken som helst størrelse, jeg brukte 64 MB) Elektrisk tape Strømkilde for Arduino (jeg brukte en ekstra drevet USB -hub jeg hadde) Varm limpistol Trådmutter (valgfritt)

Trinn 2: SSR Board

Solid State Relay Board Hvis du vil, kan du også se kopier av skjemaet mitt og tavlen i full størrelse. Jeg begynte med å plassere alle komponentene på brettet. Da jeg var fornøyd med hvordan de ble lagt ut, begynte jeg med å lodde alle elementene til brettet som ikke trengte ekstra ledning (i utgangspunktet alt annet enn bakken fra Arduino og 120v hot line). Deretter loddet jeg den felles grunnen/varme ledninger. Som du kan se fra bunnen av brettet, ser det ganske rotete ut. Når jeg var ferdig, testet jeg hver SSR separat ved å koble til 120v -strømmen og måle på tvers av nøytralen og hver bytte varm utgang mens jeg satte en 5v -kilde over Arduino -siden av brettet.

Trinn 3: Tilsett Arduino

Jeg brukte en varm limpistol for å feste Arduino -kortet til SSR -kretskortet. Hvis du bestemmer deg for å lodde en FM -sender direkte til kretskortet, kan du legge den til i den ekstra plassen nederst til venstre på bildet nedenfor. Ellers kan du også koble til en hvilken som helst generisk FM -sender.

Trinn 4: Konstruer WaveShield

Følg de gode instruksjonene på Lady Ada for å konstruere WaveShield -settet. Jeg brukte standard kontrollpinner (2 - LCS, 3 - CLK, 4 - DI, 5 - LAT, 10 - LCS). Jeg koblet også pin A0 til 1,5k motstand på R7 (se bildet nedenfor). Når du er ferdig, følger du instruksjonene her for å forberede sanger og overføre dem til SD -kortet. Plasser kortet i WaveShield når du er ferdig.

Trinn 5: Koble til SSR -ene

Jeg brukte de ekstra brødbrettgummitrådene jeg måtte koble til følgende: WaveShield (disse kan endres, men jeg brukte standardinnstillingene) D2 - LCS D3 - CLK D4 - DI D5 - LATFirst 3 SSR -kanaler D6 - Kanal 1 D7 - Kanal 2 D8 - Kanal 3 WaveShield D10 -> LCSWaveShield - SD -kort (kan ikke endres) D11 D12 D13Power Gnd [0] - SSR GroundVu Meter A0 - Koble til R7 (1,5K motstand) på WaveShield for å måle utgang fra forsterker. Gjenværende 5 SSR -kanaler A1 = D15 - Kanal 4 A2 = D16 - Kanal 5 A3 = D17 - Kanal 6 A4 = D18 - Kanal 7 A5 = D19 - Kanal 8

Trinn 6: Last opp skisse og test alt

Jeg brukte en kort lengde på liggende ledning for å teste oppsettet. Jeg koblet den svarte ledningen til den nøytrale ledningsterminalen, og hver av de seks andre lederne til de seks første SSR -varmeklemmer. I den andre enden av landskapstråden koblet jeg alle nøytralene til den svarte lederen og hver av de seks andre lederne til den varme ledningen til hver av seks kvinnelige stikkontakter (se bildet nedenfor). For å levere strøm, koblet jeg en av de seks foten mannlige strømledningene som var igjen fra høsting av hunkontaktene til 120v inngangskabler (se bildet nedenfor) Jeg brukte xmas_box.pde herfra og satte feilsøking til true mens jeg testet alt. Jeg planlegger å redigere koden når jeg får alt satt opp utenfor, men foreløpig fungerer det uten endringer. Oppdatering 2010-06-22: Jeg har lagt ved en 7-zip-fil som inneholder kode jeg kan ha brukt (i tillegg til den opprinnelige koden ovenfra). Jeg vil laste opp ny kode senere i år når jeg setter kontrolleren sammen igjen og implementerer noen av ideene jeg hadde for fremtidig utvidelse. Oppdatering 2010-12-11: Jeg har skrevet programmet på nytt ved hjelp av daphc-eksemplet fra WaveHC-biblioteket og VuMeter-koden fra xmas_box Instructable koblet ovenfor. Den vil nå spille hvilken som helst sang den finner på WaveShields SD -kort i en kontinuerlig sløyfe. Programmet er Christmas_Lights_2010.pde nedenfor. Jeg har også inkludert Christmas_Lights_2010_Channel_Test.pde som bare går gjennom alle 8 kanalene, slik at du vet at de fungerer.

Trinn 7: Legg alt i en eske

Jeg begynte med å varme lime kretskortet inn i det klare plastkaret. Jeg hadde en ekstra drevet USB -hub som lå rundt, så jeg bestemte meg for å bruke den til å drive Arduino. Jeg varmlimte strømadapteren for navet på plass og plugget den 11. 6 'skjøteledningen (den eneste som ikke ble kuttet) til den. Jeg limte også navet på plass. På den motsatte siden av skjøteledningen plugget jeg inn kretskortets 120v plugg. USB-kabelen som går til Arduino fra huben er en $ 1-forlengelsesledning fra Dollar Tree, men en hvilken som helst USB-ledning vil fungere. For å føre ledningene gjennom siden av karet, brukte jeg loddejernet mitt med spissen fjernet (effektivt en minivarmepistol) for å smelte bort plasten. Jeg brukte deretter varmt lim for å feste ledningene på plass. Jeg gjorde dette med lysets strømledninger (øverst på bildet nedenfor) og strømledningen til brettet (nederst). Jeg avsluttet det med å bruke trådmuttere for å koble strømmen til alle lysene til testledningene jeg allerede hadde koblet til (legge til ytterligere to for 7. og 8. kanal). Legg på lokket og du er klar. Bør være vanntett nok for meg, og den er beskyttet av de fremre trinnene på bobilen min.

Trinn 8: Koble til julelys

Kjør landskapskablene til alle lysene og koble de kvinnelige 120v -kontaktene. Hver kontakt er koblet til både den svarte ledningen og en av de seks fargene (en for hver kanal i kabelen). Jeg endte med å kjøre to kabellengder (for å dekke alle 8 kanalene). Du kan trenge mer enn en 120v hunkontakt per kanal. Jeg brukte to per kanal for både miniatyrtrærne og reinen min (det er ett på hver side av et sentralt juletre).

Trinn 9: Ideer for endringer

Utvidelse: Det er 3 ekstra pins på Arduino tilgjengelig for å legge til ekstra kanaler. Jeg vil sannsynligvis legge til disse tre neste år (eller gå med begge de to neste alternativene). Bruk TRIAC -er med høyere effekt, for eksempel 4A Z0405 -så lenge du bruker LED -lys, bør 1A være RIKTIG Bruk et skiftregister slik at du kan ha mer enn 11 kanaler.