Სარჩევი:

ავტომატური განათება DMX და Perl გამოყენებით: 6 ნაბიჯი
ავტომატური განათება DMX და Perl გამოყენებით: 6 ნაბიჯი

ვიდეო: ავტომატური განათება DMX და Perl გამოყენებით: 6 ნაბიჯი

ვიდეო: ავტომატური განათება DMX და Perl გამოყენებით: 6 ნაბიჯი
ვიდეო: ХВИЧА - как «Рубин» увёл у «Локо» суперталанта и сколько на нем заработает (GEORGIAN SUBS) 2024, ივლისი
Anonim
ავტომატური განათება DMX და Perl გამოყენებით
ავტომატური განათება DMX და Perl გამოყენებით
ავტომატური განათება DMX და Perl გამოყენებით
ავტომატური განათება DMX და Perl გამოყენებით
ავტომატური განათება DMX და Perl გამოყენებით
ავტომატური განათება DMX და Perl გამოყენებით

რატომ ხდება ავტომატური განათება? სიმართლე გითხრათ, ჩემი სახლის უმეტესი ნაწილი ავტომატიზირებულია, ასე რომ აშკარა იყო. ბევრი სარგებელი მოაქვს თქვენი სახლის ნაწილების ავტომატიზაციას, კერძოდ განათება მხოლოდ ცხოვრებას უადვილებს, ოთახში შესვლისას შუქები აჯობებს ვიდრე საკუთარ თავზე გადართვა! ….და რადგან ისინი ჩართულნი არიან, ისინიც გამორთულნი არიან, ასე რომ თქვენ არ შეგიძლიათ დაივიწყოთ! ვიმედოვნებთ, რომ აქ არის საკმარისი ინფორმაცია უმეტესობისთვის, მაგრამ თუ (ჩემნაირი) გიყვართ დეტალები, თქვენ ნახავთ უფრო მეტ ინფორმაციას ჩემს გვერდზე

ნაბიჯი 1: ინსტალაცია

ინსტალაცია
ინსტალაცია
ინსტალაცია
ინსტალაცია
ინსტალაცია
ინსტალაცია

კარგი, დავიწყოთ თავად შუქნიშანიდან.

თითოეულ ოთახს აქვს ორმაგი (ორი შუქი) ან ერთი მბზინავი კონტროლი კედელზე. ქვემოთ მოყვანილი სურათები აჩვენებს კედელზე დამონტაჟებულ მკრთალ საკონტროლო ერთეულებს, თქვენ ნახავთ, რომ ისინი ჯერ კიდევ დაუმთავრებელია, მე ვერ ვპოულობ შესაფერის სახელურებს, ისევე როგორც უბრალო თეთრს, რომელსაც იღებთ სტანდარტულ მბზინვარებაზე, ასე რომ სანამ არ გავაკეთებ, იქ არცერთი არ არის ეს "საკონტროლო ერთეულები" ჰგავს სტანდარტულ გაერთიანებულ სამეფოში დაფარულ ფირფიტებს ცვალებადი რეზისტენტებით, რომლებიც გამოდიან წინა მხარეს და ეს იმიტომ ხდება, რომ ისინი არიან! ქვემოთ მოცემულია რამოდენიმე სურათი, რომელიც აჩვენებს ამ ერთეულების შიდა მხარეებს: ჯერ ერთი მბზინავი. თქვენ ასევე შეამჩნევთ, რომ ერთეულის ქვედა ნაწილში არის პატარა შავი მოწყობილობა: ეს არის ტემპერატურის სენსორი, რომელსაც მე ვიყენებ გათბობის გასაკონტროლებლად, იგი იყენებს იმავე გარსს, როგორც დაბნელებული ერთეულები და იგივე გაყვანილობა კაბელებში, მაგრამ ისინი არის ორი ცალკეული სისტემა. ორმაგი ერთეული ცოტა უფრო დაკავებულია შიგნით, მაგრამ არსებითად მხოლოდ ორი სინგლი ერთ ყუთში.

ნაბიჯი 2: კაბელირება

საკაბელო
საკაბელო
საკაბელო
საკაბელო

ეს მბზინავი საკონტროლო განყოფილებები დაკავშირებულია Cat5e კაბელის გამოყენებით ჩემს ქვედა სართულის კარადაში, სადაც არის დანარჩენი ნაკრები.

საკონტროლო ერთეულები (როგორც ხედავთ ზემოთ მოყვანილი სურათებიდან) შეიძლება ადვილად გათიშოთ კედლიდან მათი RJ45 დანამატის კონექტორიდან გაყვანის გზით. სახლის თითოეულ დაბნელ ადგილს აქვს Cat5e– ის ერთჯერადი გაშვება, რომლითაც ყველა სახლი უკან კიბის ქვევით გაიქცა. თავად ერთეულები უბრალოდ მოქმედებენ როგორც პოტენომეტრი, ცვლადი რეზისტორებს აქვთ 3 ფეხი, რომლებიც იხედებიან წინ, მარცხენა არის დასაბუთებული, შუა (გამწმენდი) არის გამომავალი, ხოლო მარჯვენა იღებს 10 ვოლტს DC. შეამჩნევთ სითბოს შემცირების ყდის გამოყენებას და ეპოქსიდურ ნაკაწრებს ყველაფრის შესანარჩუნებლად, რაც უფრო საიმედო ერთეულს გახდის, რაც მე აღმოვაჩინე, რომ მათი დაკავშირება ამ გზით ნიშნავს იმას, რომ როცა საათის ისრის მიმართულებით გადააქცევ ჩართვას, ძაბვა შუა ფეხი თანდათან იზრდება 0v– დან 10v– მდე - ეს გამოიყენება ხელით მბზინავი ერთეულების გასაკონტროლებლად. აქ არის რამოდენიმე სურათი, თუ როგორ მთავრდება მბზინავი საკაბელო კიბეების ქვეშ, მე გამოვიყენე სტანდარტული Cat5e კაბელი, რადგან ეს არის იაფი და კარგი ხარისხის, მე ასევე გამოვიყენე RJ45 სანთლები და კონექტორები იმავე მიზეზების გამო, ამ განათების სისტემას არაფერი აქვს Ethernet– თან, tcp-ip– სთან ან მსგავსთან დაკავშირებით, მე უბრალოდ ვიყენებ კაბელებსა და კონექტორებს, რომლებიც ჩვეულებრივ დაკავშირებულია ამგვარ ნივთთან. ზემოთ მოცემულ სურათზე, თითოეული ყვითელი პაჩის კაბელი წარმოადგენს მკრთალის კონტროლის ადგილს, მე გამოვიყენე RJ45 კედლის ბუდეები, როგორც საშუალება ამ cat5e– ის დასაკავშირებლად როგორც გამუქების, ასევე ტემპერატურის სენსორის მართვის დაფაზე. თავად მბზინავი არის 4 არხიანი ერთეული, რომელიც მხარს უჭერს როგორც DMX ასევე 0-10v სიგნალს მათი გამომუშავების გასაკონტროლებლად. მე ეს კარგად არ ავხსენი თავდაპირველად, ასე რომ აქ არის დამატებითი ინფორმაცია იმის შესახებ, თუ როგორ მუშაობს 0-10v სიგნალი და DMX ერთად. 0-10 ვ სიგნალის დაყენება (ანუ მბზინავი კონტროლის ერთეულის პარამეტრი) (თუ უფრო ნათელია) გადალახავს DMX პარამეტრს. ეს არ არის იდეალური, რადგან ეს იმას ნიშნავს, რომ თქვენ შეგიძლიათ განათება დატოვოთ შეცდომით, რადგან დაბინდვის ბოლომდე აწევა აიძულებს შუქს დარჩეს. თუმცა, ჩვენ რეალურად არ ვიყენებთ მბზინავ კონტროლს ხელით, განათება ავტომატურად ანათებს, თუ გარეთ ორივე ბნელა (ბაღში არის სინათლის სენსორი) და თუ ვინმე ოთახშია (PIR სენსორები სერვერს ეუბნებიან, რომ ეს ასეა) ასე რომ არასოდეს არ არის საჭირო შუქების ჩართვა საკუთარ თავზე! სხვა პოტენციური პრობლემა ის არის, რომ სისტემამ შუქი აანთო და თქვენ ნამდვილად გინდოდათ მისი გამორთვა, დაბნელებული კონტროლის გამორთვაც არ იმოქმედებს. სინამდვილეში, მბზინავ თაროებს აქვთ კონფიგურაციის ჩამრთველები, თუ ოდესმე შემექმნება სირთულე, როდესაც სერვერმა გააკეთა ის, რაც მე არ მომეწონა, ან შემეძლო თაროზე გადამეტანა ერთი DIP გადამრთველი, ან გამერთო DMX ტყვიისგან! ! ვიმედოვნებ, რომ ეს ახლა უფრო აზრიანია.

ნაბიჯი 3: მბზინავი თაროები

დიმერის თაროები
დიმერის თაროები
დიმერის თაროები
დიმერის თაროები
დიმერის თაროები
დიმერის თაროები

მბზინავი ერთეულები იღებენ 0-10 ვ სიგნალს 5 პინიანი DIN კონექტორზე (1 პინი დაფქვილია, დანარჩენი 4 წარმოადგენს 4 არხს) და იღებენ DMX სიგნალს 3 პინიან XLR კონექტორზე. DMX მოწყობილობები შეიძლება იყოს მიჯაჭვული, რადგან თითოეულ მათგანს აქვს საკუთარი ID კომპლექტი, თუ კარგად დააკვირდებით სურათს, ხედავთ ნარინჯისფერ კაბელს (0-10v სიგნალი), მეწამულ კაბელს (DMX daisy chain link) და ყვითელ კაბელს (DMX DMX კონტროლერისგან)

აქ არის რამოდენიმე უფრო დაბინდული თაროების სურათი: თაროს წინა მხარეს შეგიძლიათ ნახოთ 1 მმ T&E კაბელის ნაკრები, თითოეული მათგანი მიდის სხვადასხვა განათების ადგილას მთელ სახლში. უბრალოდ ეს კაბელი ჩამქრალიდან პირდაპირ ჭერის სინათლისკენ მიდის, რაც ძალიან ამარტივებს ნებისმიერი სინათლის მოწყობილობის გაყვანილობას, რადგან არსებობს მხოლოდ ერთი კაბელი, რომელთანაც ბრძოლა შეიძლება. ეს კაბელები უკავშირდება დაბნელებულ თაროებს მამრობითი IEC კონექტორების გამოყენებით (ქვაბის ტყვიის მამრობითი ვერსია)

ნაბიჯი 4: სერიული DMX კონვერტაცია

სერიული DMX კონვერსია
სერიული DMX კონვერსია
სერიული DMX კონვერსია
სერიული DMX კონვერსია
სერიული DMX კონვერსია
სერიული DMX კონვერსია

DMX სიგნალები დიმერების გასაკონტროლებლად მოდის ზემოთ გამოსახული ერთეულიდან. ეს მოწყობილობა იღებს RS232 (სერიულ) სიგნალს ჩემი სახლის ავტომატიზაციის სერვერიდან და გარდაქმნის მას DMX პროტოკოლში. ეს მაძლევს საშუალებას გავაკონტროლო განათება მთელ სახლში ავტომატურად და ნიშნავს იმას, რომ თქვენ რეალურად არ უნდა გამოიყენოთ მბზინავი კონტროლის ერთეული თითოეულ ოთახში, ეს არის მართლაც განათების ავტომატიზაციის მთელი წერტილი, მე მაქვს სენსორები თითოეულ ოთახში (სტანდარტული უსაფრთხოების PIR სენსორები), რომელთა მონიტორინგი ხდება ჩემი სახლის ავტომატიზაციის სისტემის მიერ, თუ მოძრაობა აღმოჩენილია, მაშინ სერვერი აგზავნის სერიულ სიგნალს DMX კონტროლერთან, რომ აანთოს განათება იმ ოთახში და ა.

გარდა ამისა, ეს ნიშნავს, რომ თქვენ შეგიძლიათ გამოიყენოთ თქვენი შუქები ინტერნეტით, SMS– ით, IVR– ით და სხვა.. რაც შეიძლება სასარგებლო იყოს. დაბოლოს, სერვერის უკანა სურათი, რომელიც უკავშირდება DMX ინტერფეისს, ეს სერვერი გამოიყენება DMX ინტერფეისის გასაკონტროლებლად. …. ამის შესახებ უფრო ქვემოთ პროგრამული უზრუნველყოფის განყოფილებაში.

ნაბიჯი 5: პროგრამული უზრუნველყოფა

პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა

ჩემი სახლის სხვა ყველა ავტომატიზაცია (უსაფრთხოება, გათბობა, დენი, ვიდეოკამერა და სხვა..) დაწერილია (ნაწილობრივ ცუდად) პერლის გამოყენებით. განათების ეს პროექტი არაფრით განსხვავდება, თუმცა ის წარმოადგენს ჩემი პირველი მცდელობას ვებ სერვისების გამოყენებისას. ვებ სერვისებისთვის მე გამოვიყენე Apache 2.x და საპონი:: Lite მოდული perl– ისთვის, რომ DMX კონტროლერთან სერიულად ვისაუბრო, მე გამოვიყენე პერლის მოდული Device:: SerialPort. მთელი ნაწილი მუშაობს Redhat Linux– ის საშუალებით, მე ვუწოდებ ვებ სერვისებს ჩემი სახლის ავტომატიზაციის პროგრამიდან, ასე: (გაითვალისწინეთ, რომ ეს არის ბევრად უფრო დიდი პროგრამის ნაწილი) if ($ epoch - $ in11_lastmove> 600 && $ in11_lastmove <$ in23_lastmove && $ kitchenlights == 1) {& send_lights_soap (1, 0); $ სამზარეულოს განათება = 0; } რეალურად ქვეპროგრამას ეძახიან აქ: sub send_lights_soap {$ soap_response = SOAP:: Lite -> uri ('https://192.168.101.172/Lights') -> პროქსი ('https://192.168.101.172/cgi- bin/lights ') -> send ("$ _ [0]", "$ _ [1]"); $ res = $ soap_response-> შედეგი; } და რადგან ეს არის ვებ სერვისი, ფაქტობრივი სერიული ინტერფეისი და ვებ სერვისის კოდი მდებარეობს სხვა ქსელში ჩემს ქსელში, ვებ სერვისის კოდი ასე გამოიყურება: #!/Usr/bin/perl -w use SOAP:: Transport:: HTTP; საპონი:: ტრანსპორტი:: HTTP:: CGI -> dispatch_to ('Lights') -> სახელური; # ზარი როგორც -> uri ('https://192.168.101.172/Lights') # -> მარიონეტული ('https://192.168.101.172/cgi-bin/lights') # -> გაგზავნა ("", "") პაკეტი Lights; sub send {use Device:: SerialPort; ჩემი $ პორტი = მოწყობილობა:: SerialPort-> ახალი ("/dev/ttyS0"); $ პორტი-> ბაუდრატი (9600); $ port-> პარიტეტი ("არცერთი"); $ port-> ხელის ჩამორთმევა ("არცერთი"); $ port-> მონაცემთა ბაზები (8); $ port-> stopbits (1); $ port-> read_char_time (0); $ port-> read_const_time (1); ჩემი ($ კლასი, $ არხი, $ ინტენსივობა) = @_; # გაგზავნეთ მონაცემები $ port-> ჩაწერეთ (პაკეტი "C", $ არხი); $ port-> ჩაწერა (პაკეტი "C", $ ინტენსივობა); ძილი (1); $ port-> დახურვა (); დაბრუნება "შესრულებულია! მე გამოვიყენე $ class chn $ არხით და ინტენსივობით $"; } საკმაოდ მარტივი კოდი, დარწმუნებული ვარ დამეთანხმებით და რაც მთავარია, რადგან ის მუშაობს ვებ სერვისებზე, შემიძლია გავავრცელო ეს კვანძები ჩემს ქსელში და მარტივად დავურეკო მათ. გარდა ამისა, თქვენ შეიძლება შეამჩნიოთ, რომ ადამიანების უმეტესობის მსგავსად, მე RFC1918 მივმართე ჩემს ქსელს, მაგრამ შესაბამისი NAT წესით, ეს სერვისები ადვილად შეიძლება დარეკონ ნებისმიერი ადგილიდან ინტერნეტით, რაც იმას ნიშნავს, რომ მე შემიძლია გავაკონტროლო ჩემი განათება, გათბობა და ა. სადმე (თუნდაც GPRS ან 3G ტელეფონი!)

ნაბიჯი 6: დასკვნები

დასკვნები
დასკვნები

ისე, ვიმედოვნებ, რომ მოგეწონათ ის, რაც მე გავაკეთე, მე მიყვარს ჩემი ავტომატური განათება!

წარმატებებს გისურვებთ, თუ გადაწყვეტთ მსგავსი რამის გაკეთებას. თუ თქვენ გჭირდებათ მეტი ინფორმაცია, გადახედეთ ჩემს გვერდს www.yourmissus.com/lighting/

გირჩევთ: