İçindekiler:

DMX ve Perl Kullanarak Otomatik Aydınlatma: 6 Adım
DMX ve Perl Kullanarak Otomatik Aydınlatma: 6 Adım

Video: DMX ve Perl Kullanarak Otomatik Aydınlatma: 6 Adım

Video: DMX ve Perl Kullanarak Otomatik Aydınlatma: 6 Adım
Video: 3- Veri Hazırlama ve Veri Önişleme 2024, Temmuz
Anonim
DMX ve Perl Kullanan Otomatik Aydınlatma
DMX ve Perl Kullanan Otomatik Aydınlatma
DMX ve Perl Kullanan Otomatik Aydınlatma
DMX ve Perl Kullanan Otomatik Aydınlatma
DMX ve Perl Kullanan Otomatik Aydınlatma
DMX ve Perl Kullanan Otomatik Aydınlatma

Neden ışıklarınızı otomatikleştirin? Dürüst olmak gerekirse, evimin çoğu otomatik, bu yüzden yapılacak en bariz şey buydu. Evinizin bölümlerini otomatikleştirmenin pek çok faydası vardır, özellikle aydınlatma sadece hayatı kolaylaştırır, bir odaya girdiğinizde ışıkların yanması, onları kendiniz açmaktan daha iyidir! ….ve kendilerini açtıkları için, kendilerini de kapatıyorlar, bu yüzden unutamazsınız! Umarım burada çoğu için yeterli bilgi vardır, ancak (benim gibi) ayrıntıları seviyorsanız, daha fazla bilgiyi https://www.yourmissus.com/lighting/Cheers-Dan sayfamda bulabilirsiniz.

Adım 1: Kurulum

Kurulum
Kurulum
Kurulum
Kurulum
Kurulum
Kurulum

Tamam, ışık anahtarlarından başlayalım.

Her odada duvara monte edilmiş bir çift (iki ışık) veya tek bir dimmer kontrolü vardır. Aşağıdaki resimler duvara monte edilmiş dimmer kontrol ünitelerini göstermektedir, hala bitmemiş olduklarını göreceksiniz, standart bir dimmerde aldığınız basit beyaz olanlar gibi uygun görünümlü düğmeler bulamıyorum, bu yüzden ben yapana kadar orada hiçbiri yok. Bu 'kontrol üniteleri', önden dışarı çıkan değişken dirençlere sahip standart Birleşik Krallık tekli körleme plakalarına benziyor ve bu yüzden öyleler! Aşağıda bu ünitelerin içini gösteren bazı resimler bulunmaktadır: Önce tekli dimmer. Ayrıca ünitenin altında küçük siyah bir cihaz olduğunu fark edeceksiniz: Bu, ısıtmayı kontrol etmek için kullandığım bir sıcaklık sensörüdür, dimmer üniteleri ile aynı muhafazayı ve aynı kablolamayı kullanır, ancak bunlar iki ayrı sistemdir. Çift üniteler içeride biraz daha meşgul, ama aslında aynı kutuda sadece iki single.

Adım 2: Kablolama

kablolama
kablolama
kablolama
kablolama

Bu dimmer kontrol üniteleri, kitin geri kalanının bulunduğu alt kat dolabıma Cat5e kabloları kullanılarak bağlanır.

Kontrol üniteleri (yukarıdaki resimlerden de görebileceğiniz gibi) RJ45 fişini konnektörden çekerek duvardan kolayca ayrılabilir. Evdeki her dimmer yeri, tek bir Cat5e koşusuna sahiptir, bunun için tüm ev merdivenlerin altına geri döndü. Ünitelerin kendileri basitçe bir potansiyometre görevi görür, değişken dirençlerin önden bakıldığında 3 bacağı vardır, en soldaki topraklanır, ortadaki (silecek) çıkıştır ve sağdaki 10 Volt DC alır. Her şeyi yerinde tutmak için ısıyla daralan makaron ve bir tutam epoksi kullanımına dikkat edin, bu daha güvenilir bir ünite sağlar. orta bacak kademeli olarak 0v'dan 10v'a yükselir - Bu, dimmer ünitelerini manuel olarak kontrol etmek için kullanılır. İşte dimmer kontrol kablolarının merdiven altında nasıl sonlandığını gösteren bazı resimler, ucuz ve kaliteli olduğu için baştan sona standart Cat5e kablo kullandım, aynı nedenlerle RJ45 fiş ve konektörler de kullandım, bu aydınlatma sisteminde hiçbir şey yok ethernet, tcp-ip veya benzerleriyle yapmak için, normalde bu tür şeylerle ilişkilendirilen kabloları ve konektörleri kullanıyorum. Yukarıdaki resimde, her sarı yama kablosu bir dimmer kontrol konumunu temsil ediyor, bu cat5e bağlantılarını hem dimmerlere hem de sıcaklık sensörü kontrol panosuna bağlamak için RJ45 duvar prizlerini kullandım. Dimmerler, çıkışlarını kontrol etmek için hem DMX hem de 0-10v sinyalini destekleyen 4 kanallı ünitelerdir. Bunu başlangıçta çok iyi açıklamadım, bu yüzden burada 0-10v sinyali ve DMX'in birlikte nasıl çalıştığı hakkında biraz daha bilgi var. 0-10v sinyalinin ayarı (yani dimmer kontrol ünitesinin ayarı) (daha parlaksa) DMX ayarını geçersiz kılar. Bu ideal değildir, çünkü dimmeri sonuna kadar açmak ışığın açık kalmasına neden olacağından, ışıkları yanlışlıkla açık bırakabileceğiniz anlamına gelir. Ancak, aslında dimmer kontrollerini manuel olarak kullanmıyoruz, hem dışarısı karanlıksa (bahçede bir ışık sensörü var) hem de odada biri varsa (PIR sensörleri sunucuya bunun olup olmadığını söyler) ışıklar otomatik olarak yanar. bu durumda) Yani ışıkları kendi başınıza açmanıza asla gerek yok! Diğer olası sorun, sistem ışığı açtıysa ve gerçekten kapatmak istediyseniz, dimmer kontrolünü kapatmanın da hiçbir etkisi olmayacaktır. Gerçekte, dimmer rafların üzerinde bir yapılandırma anahtarı vardır, sunucunun sevmediğim bir şey yaptığı bir zorlukla karşılaşırsam, raftaki DIP anahtarlarından birine hafifçe vurabilir veya DMX kablosunu çıkarabilirim! ! Umarım bu şimdi daha mantıklıdır.

Adım 3: Dimmer Rafları

Dimmer Rafları
Dimmer Rafları
Dimmer Rafları
Dimmer Rafları
Dimmer Rafları
Dimmer Rafları

Dimmer üniteleri 5 pinli bir DIN konektörü üzerinde 0-10v sinyali alır (1 pin topraktır, diğer 4 4 kanalı temsil eder) ve DMX sinyalini 3pin XLR konektörü üzerinde alırlar. DMX cihazları her birinin kendi id setine sahip olduğundan zincirleme bağlanabilir, yukarıdaki resme yakından bakarsanız turuncu bir kablo (0-10v sinyal), mor bir kablo (DMX zincirleme bağlantı) ve sarı bir kablo görebilirsiniz (DMX denetleyicisinden DMX girişi)

İşte dimmer raflarının bazı resimleri: Rafın ön tarafında bir demet 1 mm T&E kablosu görebilirsiniz, bunların her biri evin her yerinde farklı bir aydınlatma konumuna gider. Oldukça basit bir şekilde bu kablo, dimmerden doğrudan tavandaki ışık tertibatına kadar uzanır, bu, uğraşılacak tek bir kablo olduğu için herhangi bir aydınlatma tertibatının kablolamasını çok kolaylaştırır. Bu kablolar, erkek IEC konektörleri (bir su ısıtıcısı kablosunun erkek versiyonu) kullanılarak dimmer raflarına bağlanır.

Adım 4: Seriden DMX'e Dönüştürme

Seriden DMX'e Dönüştürme
Seriden DMX'e Dönüştürme
Seriden DMX'e Dönüştürme
Seriden DMX'e Dönüştürme
Seriden DMX'e Dönüştürme
Seriden DMX'e Dönüştürme

Dimmerleri kontrol etmek için DMX sinyalleri, yukarıda resmedilen üniteden gelir. Bu cihaz, ev otomasyon sunucumdan bir RS232 (seri) sinyali alır ve onu DMX protokolüne dönüştürür. Bu, evdeki aydınlatmayı otomatik olarak kontrol etmeme izin veriyor ve aslında her odadaki dimmer kontrol ünitelerini kullanmak zorunda olmadığınız anlamına geliyor, bu aslında aydınlatmayı otomatikleştirmenin tüm noktası, her odada sensörlerim var (standart ev otomasyon sistemim tarafından izlenen güvenlik PIR sensörleri), hareket algılanırsa sunucu, o odadaki ışıkları yakmak için DMX denetleyicisine seri bir sinyal gönderir vb.

Ek olarak, ışıklarınızı internet üzerinden, SMS, IVR vb. ile çalıştırabileceğiniz anlamına gelir ki bu da işinize yarayabilir. Son olarak DMX arayüzüne bağlanan sunucunun arkadan bir resmi, bu sunucu DMX arayüzünü kontrol etmek için kullanılır. …. Bununla ilgili daha fazla bilgiyi aşağıdaki yazılım bölümünde bulabilirsiniz.

Adım 5: Yazılım

Yazılım
Yazılım
Yazılım
Yazılım
Yazılım
Yazılım

Diğer tüm ev otomasyonum (güvenlik, ısıtma, güç, cctv vb.) Perl kullanılarak (parçalarda kötü) yazılmıştır. Bu aydınlatma projesi, web servislerini kullanma konusundaki ilk girişimlerimi temsil etmesine rağmen farklı değil. Web hizmetleri için Apache 2.x'i ve Perl için Soap::Lite modülünü, aslında DMX denetleyicisiyle seri iletişim kurmak için, Device::SerialPort perl modülünü kullandım. Tamamı Redhat Linux altında çalışıyor Gerçek ev otomasyon uygulamamdan web hizmetlerini şu şekilde çağırıyorum: (bunun çok daha büyük bir programın parçası olduğunu unutmayın) # On dakika boyunca hareket olmazsa ve daha yakın zamanda koridorda hareket olursa ışıklar söner # if ($epoch - $in11_lastmove > 600 && $in11_lastmove < $in23_lastmove && $kitchenlights == 1) { &send_lights_soap(1, 0); $mutfak lambaları = 0; }Çağrılan asıl alt yordam burada: 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->sonuç; } Ve bu bir web hizmeti olduğundan, gerçek seri arabirim ve web hizmeti kodu ağımdaki başka bir makinede bulunduğundan, web hizmeti kodu şöyle görünür: #!/usr/bin/perl -w SOAP::Transport:: HTTP; SABUN::Transport::HTTP::CGI -> sevk_to('Işıklar') -> tutamaç; # Farklı çağır -> uri('https://192.168.101.172/Lights') # -> proxy('https://192.168.101.172/cgi-bin/lights') # -> send("", "") paket Işıklar; alt gönder { kullan Device::SerialPort; $portum = Device::SerialPort->new("/dev/ttyS0"); $port->baudrate(9600); $port->parity("yok"); $port->handshake("yok"); $port->databits(8); $port->stopbits(1); $port->read_char_time(0); $port->read_const_time(1); benim ($sınıf, $kanal, $yoğunluk) = @_; # veriyi dışarı gönder $port->write(pack "C", $channel); $port->write(paket "C", $yoğunluk); uyku(1); $port->kapat(); return "Bitti! $sınıfını chn $channel ve inten $intensity ile kullandım"; }Oldukça basit kod, eminim kabul edersiniz ve hepsinden iyisi, web servislerini çalıştırdığı için bu düğümleri ağıma yayabilir ve onları kolayca arayabilirim. Ek olarak, çoğu kişi gibi benim de ağımı RFC1918 ile adresledim, ancak uygun bir NAT kuralı ile bu servislerin internet bağlantısı olan herhangi bir yerden kolayca çağrılabileceğini fark etmişsinizdir, yani aydınlatma, ısıtma vb. herhangi bir yerde (GPRS veya 3G telefon bile!)

6. Adım: Sonuçlar

Sonuçlar
Sonuçlar

Umarım yaptığım şeyi beğenmişsinizdir, otomatik ışıklarımı seviyorum!

Benzer bir şey yapmaya karar verirseniz iyi şanslar. Bundan daha fazla bilgiye ihtiyacınız varsa, www.yourmissus.com/lighting/ adresindeki sayfama bakın.

Önerilen: