فهرست مطالب:

روشنایی خودکار با استفاده از DMX و Perl: 6 مرحله
روشنایی خودکار با استفاده از DMX و Perl: 6 مرحله

تصویری: روشنایی خودکار با استفاده از DMX و Perl: 6 مرحله

تصویری: روشنایی خودکار با استفاده از DMX و Perl: 6 مرحله
تصویری: والواشر برنامه پذیر عجب نمایی برای شما خلق میکنه حتما استفاده کن 2024, جولای
Anonim
نورپردازی خودکار با استفاده از DMX و Perl
نورپردازی خودکار با استفاده از DMX و Perl
نورپردازی خودکار با استفاده از DMX و Perl
نورپردازی خودکار با استفاده از DMX و Perl
نورپردازی خودکار با استفاده از DMX و Perl
نورپردازی خودکار با استفاده از DMX و Perl

چرا چراغ های خود را اتوماتیک می کنید؟ خوب ، صادقانه بگویم ، اکثر خانه های من اتوماتیک هستند ، بنابراین به نظر می رسید که کار بدیهی است. مزایای زیادی در اتوماسیون بخش هایی از خانه شما وجود دارد ، به ویژه روشنایی فقط زندگی را آسان تر می کند ، چراغ هایی که هنگام ورود به اتاق روشن می شوید بهتر از روشن کردن آنهاست! ….و چون خودشان را روشن می کنند ، خودشان را هم خاموش می کنند ، بنابراین نمی توانید فراموش کنید! امیدوارم اطلاعات کافی در اینجا برای اکثر افراد وجود داشته باشد ، اما اگر (مانند من) عاشق جزئیات هستید ، اطلاعات بیشتری را در صفحه من پیدا خواهید کرد

مرحله 1: نصب

نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی

خوب ، اجازه دهید از خود کلیدهای روشنایی شروع کنیم.

هر اتاق یا دارای دو عدد (دو چراغ) و یا یک کنترل کننده دیمر است که روی دیوار نصب شده است. تصاویر زیر واحدهای کنترل کننده کم نور را که روی دیوار نصب شده است نشان می دهد ، خواهید دید که آنها هنوز ناتمام هستند ، من نمی توانم دستگیره های مناسب را پیدا کنم ، مانند دکمه های سفید ساده ای که در یک دیمر استاندارد دریافت می کنید ، بنابراین تا زمانی که من آن را انجام دهم ، هیچکدام نیستند این "واحدهای کنترلی" دقیقاً شبیه صفحات استاندارد خالی کننده بریتانیایی با مقاومت های متغیر است که از جلو بیرون می آیند ، و این به این دلیل است که آنها هستند! در زیر تعدادی از تصاویر نمای داخلی این واحدها آمده است: ابتدا دیمر تک. همچنین متوجه خواهید شد که یک دستگاه سیاه کوچک در پایین دستگاه وجود دارد: این یک سنسور دما است که من برای کنترل گرمایش از آن استفاده می کنم ، از همان محفظه ای که واحدهای کم نورتر و عملکرد کابل کشی یکسان استفاده می کند ، اما آنها دو سیستم مجزا هستند واحدهای دو نفره در داخل کمی شلوغ تر هستند ، اما در اصل فقط دو نفره در یک جعبه هستند.

مرحله 2: کابل کشی

کابل کشی
کابل کشی
کابل کشی
کابل کشی

این واحدهای کنترل دیمر با استفاده از کابل کابل Cat5e به کمد زیر طبقه من متصل می شوند ، جایی که بقیه کیت در آن قرار دارد.

واحدهای کنترل (همانطور که در تصاویر بالا مشاهده می کنید) می توانید با جدا کردن دوشاخه RJ45 از کانکتور به راحتی از دیوار جدا شوید. هر مکان کم نورتر در خانه دارای یک بار اجرا Cat5e است و همه خانه به زیر پله ها برمی گردد. خود واحدها به سادگی به عنوان یک پتانسیومتر عمل می کنند ، مقاومت های متغیر دارای 3 پایه هستند که از جلو به نظر می رسند ، سمت چپ زمین گیر است ، قسمت میانی (برف پاک کن) خروجی است و سمت راست 10 ولت DC دریافت می کند. توجه داشته باشید که از آستین های کوچک کننده و یک تکه اپوکسی برای نگه داشتن همه چیز در محل استفاده می شود ، این باعث می شود که واحد قابل اطمینان تری پیدا کنم اتصال آنها به این ترتیب به این معنی است که وقتی آنها را در جهت عقربه های ساعت از خاموش به روشن روشن می کنید ، ولتاژ روی ساق پای میانی به تدریج از 0 ولت به 10 ولت افزایش می یابد - این وسیله برای کنترل دستی دیمرها استفاده می شود. در اینجا تصاویری از نحوه پایان دادن به کابل کنترل دیمر در زیر پله ها آمده است ، من از کابل استاندارد Cat5e در کل استفاده کردم زیرا ارزان و با کیفیت است ، همچنین از فیوزها و اتصالات RJ45 به دلایل مشابه استفاده کرده ام ، این سیستم روشنایی هیچ ندارد برای انجام اترنت ، tcp-ip یا موارد مشابه ، من فقط از کابل و اتصال دهنده هایی که معمولاً با این نوع چیزها مرتبط هستند استفاده می کنم. در تصویر بالا ، هر سیم وصله زرد نشان دهنده یک محل کنترل دیمر است ، من از سوکت های دیواری RJ45 به عنوان وسیله ای برای اتصال این قطعات cat5e به دیمرها و برد کنترل سنسور دما استفاده کرده ام. دیمرها خود 4 واحد هستند که از سیگنال DMX و 0-10v برای کنترل خروجی خود پشتیبانی می کنند. من در ابتدا خیلی خوب توضیح ندادم ، بنابراین در اینجا اطلاعات بیشتری در مورد نحوه کار سیگنال 0-10v و DMX وجود دارد. تنظیم سیگنال 0-10 ولت (یعنی تنظیمات واحد کنترل کم نور) (در صورت روشن بودن) تنظیم DMX را لغو می کند. این ایده آل نیست ، زیرا به این معنی است که می توانید به اشتباه چراغ ها را روشن بگذارید ، زیرا روشن کردن دیمر تا انتها باعث روشن ماندن نور می شود. با این حال ، ما در واقع از کنترل های کم نور به صورت دستی استفاده نمی کنیم ، چراغها به طور خودکار روشن می شوند اگر بیرون تاریک باشد (سنسور نور در باغ وجود دارد) و اگر کسی در اتاق باشد (سنسورهای PIR به سرور می گویند اگر این است) بنابراین هرگز نیازی به روشن کردن چراغ روی خود نیست! مشکل احتمالی دیگر این است که اگر سیستم چراغ را روشن می کند و شما در واقع می خواهید آن را خاموش کنید ، خاموش کردن کنترل کننده دیمر نیز هیچ تاثیری نخواهد داشت. در حقیقت ، رک های کم نور دارای سوئیچ های پیکربندی هستند ، در صورت بروز مشکل در سرور که کاری را که دوست نداشتم انجام می دادم ، یا می توانم یکی از سوئیچ های DIP را روی رک قرار دهم ، یا سیم DMX را جدا کنم! ! امیدوارم این موضوع اکنون منطقی تر باشد.

مرحله 3: قفسه های Dimmer

قفسه های دیمر
قفسه های دیمر
قفسه های دیمر
قفسه های دیمر
قفسه های دیمر
قفسه های دیمر

دستگاه های کم نور سیگنال 0-10v را روی یک کانکتور DIN 5 پین می گیرند (1 پین در حالت اتصال زمین است ، 4 پین دیگر 4 کانال را نشان می دهد) و سیگنال DMX را روی یک کانکتور 3 پین XLR می گیرند. دستگاه های DMX را می توان با زنجیر دیزی متصل کرد زیرا هر کدام دارای شناسه خاص خود هستند ، اگر به تصویر بالا دقت کنید می توانید یک کابل نارنجی (سیگنال 0-10 ولت) ، یک کابل بنفش (پیوند زنجیره ای DMX) و یک کابل زرد (DMX از کنترلر DMX)

در اینجا چند تصویر دیگر از قفسه های کم نورتر مشاهده می کنید: در جلوی قفسه می توانید یک بسته کابل 1 میلی متری T&E را مشاهده کنید که هر یک از آنها به مکان روشنایی متفاوتی در سراسر خانه می رود. به سادگی این کابل از کم نور مستقیم به چراغ در سقف می رود ، این امر سیم کشی هر یک از اتصالات نور را بسیار آسان می کند ، زیرا فقط یک کابل مجزا برای مبارزه وجود دارد. این کابل ها با استفاده از اتصالات نر IEC (نسخه نر سربی کتری) به قفسه های کم نور متصل می شوند.

مرحله 4: تبدیل سریال به DMX

تبدیل سریال به DMX
تبدیل سریال به DMX
تبدیل سریال به DMX
تبدیل سریال به DMX
تبدیل سریال به DMX
تبدیل سریال به DMX

سیگنال های DMX برای کنترل دیمرها از واحدی که در تصویر بالا آمده است می آید. این دستگاه یک سیگنال RS232 (سریال) از سرور اتوماسیون خانه من می گیرد و آن را به پروتکل DMX تبدیل می کند. این به من اجازه می دهد تا روشنایی را در کل خانه به طور خودکار کنترل کنم ، و به این معنی است که شما در واقع مجبور نیستید از واحدهای کنترل کم نور در هر اتاق استفاده کنید ، این واقعاً تمام نقطه خودکار روشنایی است ، من در هر اتاق سنسور دارم (استاندارد سنسورهای PIR امنیتی) که توسط سیستم اتوماسیون خانه من تحت نظارت هستند ، اگر حرکت تشخیص داده شود ، سرور یک سیگنال سریال به کنترل کننده DMX می فرستد تا چراغ های آن اتاق و غیره را روشن کند …

علاوه بر این به این معنی است که می توانید چراغ های خود را از طریق اینترنت ، از طریق SMS ، IVR و غیره کار کنید. این می تواند مفید باشد. سرانجام تصویری از قسمت پشت سرور که به رابط DMX متصل می شود ، از این سرور برای کنترل رابط DMX استفاده می شود. …. بیشتر در مورد آن در بخش نرم افزار زیر.

مرحله 5: نرم افزار

نرم افزار
نرم افزار
نرم افزار
نرم افزار
نرم افزار
نرم افزار

تمام دیگر اتوماسیون های خانگی من (امنیت ، گرمایش ، برق ، دوربین مدار بسته و غیره) با استفاده از perl (بد در قسمت ها) نوشته شده است. این پروژه نورپردازی هیچ تفاوتی ندارد ، اگرچه اولین تلاش های من در استفاده از خدمات وب را نشان می دهد. برای خدمات وب که از Apache 2.x و ماژول Soap:: Lite برای perl استفاده کرده ام ، برای صحبت کردن سریال با کنترلر DMX ، از ماژول perl Device:: SerialPort استفاده کرده ام. کل سیستم تحت Redhat Linux اجرا می شود. من خدمات وب را از برنامه واقعی اتوماسیون خانگی خود به این صورت صدا می زنم: (توجه داشته باشید که این بخشی از یک برنامه بسیار بزرگتر است) if ($ epoch - $ in11_lastmove> 600 && $ in11_lastmove <$ in23_lastmove && $ kitchenlights == 1) {& send_lights_soap (1 ، 0) ؛ $ kitchenlights = 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 ؛ SOAP:: Transport:: HTTP:: CGI -> dispatch_to ('Lights') -> دسته؛ # تماس به عنوان -> uri ('https://192.168.101.172/Lights') # -> پروکسی ('https://192.168.101.172/cgi-bin/lights') # -> ارسال ("" ، "") چراغ های بسته ؛ sub send {use Device:: SerialPort؛ my $ port = Device:: SerialPort-> new ("/dev/ttyS0") ؛ $ port-> baudrate (9600) ؛ $ port-> برابری ("هیچ")؛ $ port-> دست دادن ("هیچ")؛ $ port-> پایگاه داده (8)؛ $ port-> stopbits (1)؛ $ port-> read_char_time (0) ؛ $ port-> read_const_time (1) ؛ my (کلاس $ ، $ کانال ، $ شدت) =_ ؛ # ارسال داده از $ port-> نوشتن (بسته "C" ، $ channel) ؛ $ port-> نوشتن (بسته "C" ، $ شدت) ؛ خواب (1) ؛ $ port-> close ()؛ return "تمام شد! من از $ class با کانال chn $ و شدت $ inten استفاده کردم"؛ } کد نسبتاً ساده ، مطمئنم که موافق هستید و از همه مهمتر ، زیرا خدمات وب را اجرا می کند ، می توانم این گره ها را در سراسر شبکه پخش کنم و به راحتی با آنها تماس بگیرم. علاوه بر این ممکن است متوجه شده باشید که مانند اکثر افرادی که من RFC1918 به شبکه خود خطاب کرده ام ، اما با یک قانون NAT مناسب ، این سرویس ها را می توان به راحتی از هر جایی با اتصال به اینترنت فراخوانی کرد ، بدین معنی که من می توانم روشنایی ، گرمایش و غیره را کنترل کنم. در هر کجا (حتی GPRS یا تلفن 3G!)

مرحله 6: نتیجه گیری

نتیجه گیری
نتیجه گیری

خوب ، امیدوارم از کارهایی که انجام داده ام لذت برده باشید ، من عاشق چراغ های اتوماتیک خود هستم!

موفق باشید اگر تصمیم دارید کاری مشابه انجام دهید. اگر به اطلاعات بیشتری از این نیاز دارید ، صفحه من را در www.yourmissus.com/lighting/ بررسی کنید

توصیه شده: