Indholdsfortegnelse:

Automatiseret belysning ved hjælp af DMX og Perl: 6 trin
Automatiseret belysning ved hjælp af DMX og Perl: 6 trin

Video: Automatiseret belysning ved hjælp af DMX og Perl: 6 trin

Video: Automatiseret belysning ved hjælp af DMX og Perl: 6 trin
Video: Automation solopgang og solnedgang ☀️ 2024, Juli
Anonim
Automatiseret belysning ved hjælp af DMX og Perl
Automatiseret belysning ved hjælp af DMX og Perl
Automatiseret belysning ved hjælp af DMX og Perl
Automatiseret belysning ved hjælp af DMX og Perl
Automatiseret belysning ved hjælp af DMX og Perl
Automatiseret belysning ved hjælp af DMX og Perl

Hvorfor automatisere dine lys? For at være ærlig, så er det meste af mit hus automatiseret, så det virkede som en oplagt ting at gøre. Der er masser af fordele ved at automatisere dele af dit hus, især belysning gør bare livet lettere, lys tændes, når du går ind i et værelse, er bedre end at tænde dem selv! …. Og fordi de tænder sig selv, slukker de også sig selv, så du kan ikke glemme det! Forhåbentlig er der nok information her for de fleste, men hvis du (som mig) elsker detaljer, finder du mere information på min side

Trin 1: Installation

Installation
Installation
Installation
Installation
Installation
Installation

Ok, lad os starte med lyset selv.

Hvert værelse har enten en dobbelt (to lys) eller en enkelt lysdæmper kontrol på væggen. Billederne herunder viser lysdæmperens styreenheder monteret i væggen, du vil se, at de stadig er ufærdige, jeg kan ikke finde passende knapper, ligesom de enkle hvide, du får på en standarddæmper, så indtil jeg gør det, der er ingen. Disse 'styreenheder' ligner standard britiske enkeltplader med variable modstande, der stikker ud af fronten, og det er fordi det er, hvad de er! Nedenfor er nogle billeder, der viser indersiden af disse enheder: Først enkeltdæmperen. Du vil også bemærke, at der er en lille sort enhed i bunden af enheden: Dette er en temperatursensor, som jeg bruger til at styre opvarmningen, den bruger det samme kabinet som lysdæmperne og den samme kabelføring, men de er to separate systemer. De dobbelte enheder har lidt mere travlt indeni, men stort set kun to singler i samme kasse.

Trin 2: Kabelføring

Kabelføring
Kabelføring
Kabelføring
Kabelføring

Disse lysdæmperstyreenheder er tilsluttet ved hjælp af Cat5e -kabler tilbage til mit underkøbsskab, hvor resten af sættet er.

Betjeningsenhederne (som du kan se på billederne ovenfor) kan let kobles fra væggen ved at trække deres RJ45 -stik ud af stikket. Hver dimmer placering i huset har et enkelt løb af Cat5e til det hele hjem løb tilbage til under trappen. Selve enhederne fungerer simpelthen som et potentiometer, de variable modstande har 3 ben, set forfra, den til venstre er jordet, den midterste (viskeren) er output, og den højre får 10 Volt DC. Læg mærke til brugen af varmekrympemuffer og en klat epoxy til at holde alt på plads, dette giver en mere pålidelig enhed, jeg har fundet. Tilslutning til dem på denne måde betyder, at når du drejer dem med uret fra off til on, vil spændingen på mellemben stiger gradvist fra 0v til 10v - Dette bruges til at styre dæmperenheder manuelt. Her er nogle billeder af hvordan dimmerstyringskablerne slutter under trappen, jeg har brugt standard Cat5e -kabler hele vejen igennem, da det er billigt og god kvalitet, jeg har også brugt RJ45 -stik og -stik af samme årsager, dette belysningssystem har intet at gøre med ethernet, tcp-ip eller lignende, bruger jeg bare kabler og stik, der normalt er forbundet med denne slags. På billedet ovenfor repræsenterer hver gul patch -ledning en dimmer -kontrolplacering. Jeg har brugt RJ45 -stikkontakter som et middel til at forbinde disse cat5e -løb op til både dæmpere og temperaturfølerens kontrolkort. Dæmperne selv er 4 kanalenheder, der understøtter både DMX og 0-10v signal til at styre deres output. Jeg forklarede dette ikke særlig godt oprindeligt, så her er nogle flere oplysninger om, hvordan 0-10v signalet og DMX fungerer sammen. Indstillingen af 0-10v signalet (dvs. indstillingen af dæmperenheden) vil (hvis lysere) tilsidesætte DMX-indstillingen. Dette er ikke ideelt, da det betyder, at du ved en fejl kan lade lyset være tændt, da drejning af dæmperen helt op vil tvinge lyset til at blive tændt. Men vi bruger faktisk ikke dæmperkontrollerne manuelt, lysene tændes automatisk, hvis det både er mørkt udenfor (der er en lyssensor i haven), og hvis der er nogen i rummet (PIR -sensorerne fortæller serveren, om dette er tilfældet) Så der er aldrig behov for at tænde lyset på dig selv! Det andet potentielle problem er, hvis systemet tændte lyset, og du faktisk ville slukke det, ville det heller ikke have nogen effekt at skrue ned for dæmperen. I virkeligheden har lysdæmperne imidlertid en konfigurationskontakt på dem. Skulle jeg nogensinde opleve et problem, hvor serveren gjorde noget, jeg ikke kunne lide, kunne jeg enten slå en af DIP -switchene på stativet eller tage DMX -stikket ud! ! Jeg håber, at dette nu giver mere mening.

Trin 3: Dimmerstativer

Dimmerstativer
Dimmerstativer
Dimmerstativer
Dimmerstativer
Dimmerstativer
Dimmerstativer

Dæmperenhederne tager 0-10v signalet på et 5pin DIN-stik (1 pin er jordet, de andre 4 repræsenterer de 4 kanaler), og de tager DMX-signalet på et 3pin XLR-stik. DMX-enheder kan være daisy-lænket, da hver har sit eget id-sæt. Hvis du ser nøje på billedet ovenfor, kan du se et orange kabel (0-10v signal), et lilla kabel (DMX daisy chain link) og et gult kabel (DMX ind fra DMX -controlleren)

Her er nogle flere billeder af lysdæmperne: På tværs af stativets forside kan du se et bundt med 1 mm T&E -kabel, hver af disse går til en anden belysning i hele huset. Ganske enkelt løber dette kabel fra lysdæmperen lige til lysarmaturet i loftet, dette gør ledninger til alle armaturer meget lette, da der kun er et enkelt kabel at kæmpe med. Disse kabler er tilsluttet lysdæmperne ved hjælp af han -IEC -stik (den mandlige version af en kedelledning)

Trin 4: Seriel til DMX -konvertering

Konvertering fra serie til DMX
Konvertering fra serie til DMX
Konvertering fra serie til DMX
Konvertering fra serie til DMX
Konvertering fra serie til DMX
Konvertering fra serie til DMX

DMX -signalerne til styring af dæmpere kommer fra enheden på billedet ovenfor. Denne enhed tager et RS232 (serielt) signal fra min hjemmeautomatiseringsserver og konverterer det til DMX -protokollen. Dette giver mig mulighed for at styre belysningen i hele huset automatisk, og betyder, at du faktisk ikke behøver at bruge lysdæmperens styreenheder i hvert rum, dette er virkelig hele pointen med at automatisere belysningen, jeg har sensorer i hvert værelse (standard sikkerhed PIR -sensorer), der overvåges af mit hjemmeautomatiseringssystem, hvis der registreres bevægelse, sender serveren et serielt signal til DMX -controlleren for at få lysene i det rum osv …

Derudover betyder det, at du kan betjene dine lys over internettet, via SMS, IVR osv., Hvilket kan være nyttigt. Endelig et billede af bagsiden af serveren, der opretter forbindelse til DMX -grænsefladen, bruges denne server til at styre DMX -grænsefladen. …. Mere om det i softwareafsnittet herunder.

Trin 5: Software

Software
Software
Software
Software
Software
Software

Al min anden hjemmeautomatisering (sikkerhed, varme, strøm, cctv osv.) Er skrevet (dårligt i dele) ved hjælp af perl. Dette belysningsprojekt er ikke anderledes, selvom det repræsenterer mine første forsøg på at bruge webtjenester. Til webtjenesterne har jeg brugt Apache 2.x og Soap:: Lite -modulet til perl, for faktisk at tale serielt til DMX -controlleren, jeg har brugt perl -modulet Device:: SerialPort. Hele partiet kører under Redhat Linux Jeg kalder webtjenesterne fra min egentlige hjemmeautomatiseringsapplikation sådan: (bemærk at dette er en del af et meget større program) # Lyser, hvis der ikke er nogen bevægelse i ti minutter og bevægelse for nylig på gangen # hvis ($ epoke - $ in11_lastmove> 600 && $ in11_lastmove <$ in23_lastmove && $ kitchenlights == 1) {& send_lights_soap (1, 0); $ køkkenlamper = 0; } Den egentlige underprogram, der kaldes, er her: sub send_lights_soap {$ soap_response = SOAP:: Lite -> uri ('https://192.168.101.172/Lights') -> proxy ('https://192.168.101.172/cgi- bin/lights ') -> send ("$ _ [0]", "$ _ [1]"); $ res = $ soap_response-> resultat; } Og da dette er en webtjeneste, ligger den faktiske serielle grænseflade og webservicekode på en anden maskine på mit netværk, ser webtjenestekoden således ud: #!/Usr/bin/perl -w use SOAP:: Transport:: HTTP; SOAP:: Transport:: HTTP:: CGI -> dispatch_to ('Lights') -> handle; # Ring som -> uri ('https://192.168.101.172/Lights') # -> proxy ('https://192.168.101.172/cgi-bin/lights') # -> send ("", "") Pakke lys; subsend {brug enhed:: SerialPort; min $ port = Enhed:: SerialPort-> ny ("/dev/ttyS0"); $ port-> baudrate (9600); $ port-> paritet ("ingen"); $ port-> håndtryk ("ingen"); $ port-> databits (8); $ port-> stopbits (1); $ port-> read_char_time (0); $ port-> read_const_time (1); min ($ klasse, $ kanal, $ intensitet) = @_; # sende data ud $ port-> skrive (pakke "C", $ kanal); $ port-> skrive (pakke "C", $ intensitet); søvn (1); $ port-> close (); return "Udført! Jeg brugte $ class med chn $ channel og inten $ intensitet"; } Temmelig enkel kode, jeg er sikker på, at du er enig, og bedst af alt, fordi den kører webservices, kan jeg sprede disse noder ud over mit netværk og ringe til dem let. Derudover har du måske bemærket, at ligesom de fleste mennesker, jeg har RFC1918 henvendt sig til mit netværk, men med en passende NAT -regel kan disse tjenester let kaldes overalt med en internetforbindelse, hvilket betyder, at jeg kan styre min belysning, varme osv. Fra hvor som helst (selv en GPRS- eller 3G -telefon!)

Trin 6: Konklusioner

Konklusioner
Konklusioner

Nå, jeg håber, at du har nydt det, jeg har gjort, jeg elsker mine automatiserede lys!

Held og lykke, hvis du beslutter dig for at gøre noget lignende. Hvis du har brug for mere information end dette, kan du tjekke min side på www.yourmissus.com/lighting/

Anbefalede: