تشریح DMX
DMX چیست؟
DMX یا DMX 512 یک روش استاندارد انتقال دیجیتالی دیتا به صورت یک طرفه می باشد که به نام پروتکل (DMX (digital multiplex نامیده می شود . این پروتکل موارد استفاده زیادی در سیستم های نور پردازی و همچنین در تجهیزات کنترلی شرکت gso دارد و شرکتهای فراوانی در دنیا از این پروتکل جهت دیمر کردن استفاده می کنند. این پروتکل در حال توسعه می تواند 512 کانال را تا هم اکنون که این مطلب نوشته می شود پشتیبانی کند که هر کانال آن می تواند مقدار عددی 0 تا 255 را در خود دیمر کند و فرامین صادر شده را برای تجهیزات، جهت اعمال خاموش و روشن شدن یا مقدار حجم یا سرعت به دستگاه ها به صورت یک طرفه ارسال کند.
تشریح DMX 512
پروتکل DMX512 اولين بار در سال 1986م توسط USITT توسعه يافت و هدف از آن کنترل کردن ديمرها ( کم و زیاد کردن نور ) با استفاده از يک واسط ديجيتالي استاندارد بود. پروتکل DMX512 يک راه حل کامل براي کنترل سيستمها نيست و روش بهتري در حال توسعه است که مبتني بر پروتکل شبکههاي کامپيوتري (TCP/IP) ميباشد. اما اين پروتکل ساده و قابل اطمينان است، براي اينکه بطور گسترده پياده سازي شده و در حال حاضر استفاده ميشود. در عمل نشان داده که بسيار انعطاف پذير ميباشد و وسايل کنترلي مختلفي مانند ديمر ها نيز از اين پروتکل استفاده ميکنند.
پروتکل DMX512 بر اساس استاندارد صنعتي واسط EIA485 طراحي شده است. جهت بر قراری ارتباط بین تجهیزات اين سيستم ازیک کابل با سه رشته سیم که یک زوج آن به هم تابيده شده و توسط يک ورقهای محافظ، روکش و در آخر توسط شیلد محافظت شده است، استفاده می کند. انتهای تمامی شبکهها بايد توسط یک مقاومت 120 اهمی که دو سيم دیتا را به هم متصل ميکند، بسته شود. استاندارد EIA485 تنها شبکههاي زنجيرهاي را پشتيباني ميکند که حداکثر 32 وسيله (گیرنده) را بتوان در يک خط دیتا ساپورت کرد و امکان استفاده بیش از 32 دستگاه گیرنده از یک خط دیتای DMX را ممکن نمی کند. هر خط دیتا ميتواند تا 1000 متر طول داشته باشد. اما در عمل بهتر است قبل از رسيدن به اين طول از تکرارکننده ای مانند آمپلی فایر dmx استفاده شود.
استاندارد های این پروتکل پيشنهاد میکند از کانکتورهاي XLR 3 Pin - XLR 5 Pin که کانکتور نري در فرستنده و کانکتور مادگي در گيرندها است، نصب و استفاده شود.
عملکرد پایه های کانکتور XLR | |||
Pin1 | شیلد | GND | |
Pin1 | سيم داخلي (آبی) | GND | |
Pin2 | سيم داخلي (سياه) | DATA (-) | |
Pin3 | سيم داخلي (سفيد) | DATA (+) |
بيتها و بايتها
حال نگاه مختصري به واسط الکتريکي مياندازيم. انتقال دادهها بر اساس پروتکل سريال غيرهمزمان با 8 بيت داده و 1 بيت آغاز و 2 بيت پايان و بدون بيت توازن ميباشد. اين دادهها يک فريم که 11 بيت است را ميسازد. طول هر بيت 4 ميکروثانيه است. در نتيجه طول هر فريم 44 ميکروثانيه ميشود و در هر ثانيه ميتوان 250000 بيت را فرستاد. دادههاي 8 بيتي به ديمر اجازه ميدهند که رنج 0 (لامپ خاموش) تا 255 (حداکثر روشنايي) را بدست آورد. ترتيت ارسال بيتها از کم ارزش به پر ارزش ميباشد.
بيت آغاز و پايان براي سنکرون کردن فرستنده و گيرنده استفاده ميشود. خط انتقال داده بالا عموما (يک) ميباشد. با رسيدن بيت آغاز، دستگاه گيرنده 8 بيت بعدي را خوانده و آنها را ديکد ميکند. سپس دستگاه گيرنده منتظر دريافت 2 بيت پايان ميشود. و پس از آن اين سيکل تکرار ميشود. بيت پايان به 2 دليل لازم ميباشد:
- خط در وضعيت بالا (يک) قرار گيرد تا بيت شروع بعدي قابل تشخيص باشد.
- فرصت کافي به دستگاه گيرنده داده شود تا دادههاي دريافت شده را پردازش کند.
دو دياگرام زير فريمهاي با مقدار0 و 255 را نشان ميدهند.
از روي 2 دياگرام فوق به خوبي معلوم ميشود که تغييرات سطح که توسط بيت آغاز و بيت پايان داده ميشود اين امکان را به دريافت کننده ميدهد که فريم را سنکرون کند.
پروتکل DMX512 تا 512 ديمر را پشتيباني ميکند( پروتکل DMX512 می تواند تا 512 کانال را پشتیبانی کند که هر کانال می تواند مقدار عددی 0 تا 255 باشد ) .
به طور مثال یک چراغ تک رنگ که با پرتکل DMX کار می کند دارای یک کانال از 512 کانال را به خود اختصاص دهد و با مقدار 0 در فریم خاموش و با مقدار 255 در فریم مانند دیاگرام بالا حداکثر روشنایی را ایجاد کند. که حجم شدت روشنایی با مقدار عددی 0 تا 255 داخل فریم رابطه مستقیم دارد و می توانیم شدت نور را در 256 استپ ( واحد) کم یا زیاد و کنترل نماییم. چراغ های رنگی RGB ( قرمز ، آبی ، سبز ) نیاز به سه کانال برای هر رنگ نور دارد که در هرکانال می توان 256 واحد با شدت نور ایجاد کند. در صورت اعمال مقدار عددی بر روی هریک از فریمها می توان 16،777،216=256*256*256 نوع طیف نوری توسط این پروتکل DMX تولید کرد.
اما تا حالا تنها يک ديمر (کانال) را بررسي کرديم. چگونه ساير ديمرها را پشتيباني کنيم که تعداد انها 512 دیمر یا کانال می باشد؟
جواب ساده است. کافي است اين پروسه را بطور پشت سر هم تکرار کنيم. اما نه به همين سادگي! چگونه تشخيص دهيم کدام فريم متعلق به کدام ديمر است؟ جواب اين سوال در DMX Packet ميباشد.
DMX512 PACKET
اين مطلب قلب استاندارد DMX512 است. يک Packet مجموعهاي از فريمهاي پشت سر هم به همراه يک سيگنال سنکرون اضافي به نام Break و Mark-after-break است. به کمک اين سيگنال ميتوان فريم اول را تشخيص داد و پشت سر آن ساير فريمها را تشخيص داد.
با بررسي زمانبندي فريمها ميتوان به اين نتيجه رسيد که حداکثر زمان پايين (صفر) بودن خط ديتا برابر با 36 ميکروثانيه (4 ميکروثانيه براي بيت آغاز و 8*4=32 ميکروثانيه براي ديتا) است. سيگنال Break به مدت 88 ميکروثانيه خط ديتا را پايين (صفر) نگه ميدارد. اين اختلاف به راحتي قابل تشخيص است و ميتوان سيگنال Break را تشخيص و عمل سنکرون Packet را انجام داد. بعد از Break بلافاصله Mark-after-break را داريم که به مدت 8 ميکروثانيه خط را بالا (يک) نگه ميدارد. اين سيگنال براي اين است که بيت آغاز فريم اول قابل تشخيص باشد. دياگرام زير به خوبي اين مطلب را نشان ميدهد.
دو مطلب هنوز باقي مانده است. يکي «کد آغاز» و ديگر «زمان بين فريم» است.
کد آغاز، يک فريم همانند ساير فريمها است با اين تفاوت که بلافاصله بعد از سيگنال Break ميآيد و نوع دادههاي Packet را تعيين ميکند. اگر مقدار اين کد صفر باشد بدين معني است که فريمهاي بعدي مقادير ديمرها را مشخص ميکند. ساير مقادير براي اين کد در پروتکل DMX512 تعريف نشده است ولي بعضي از سازندگان کدهاي ديگر را براي ارسال اطلاعات ديگر استفاده ميکنند.
نکتهاي که بايد توجه داشت اين است که با دريافت سيگنال Break، بايد از فريمهاي بعدي Packet صرف نظر کرد و نبايد منتظر آنها باشيم هر چند که به 512 فريم نرسيده باشیم. اما بايد دقت کرد که بعضي از دستگاهها براي سادگي به اين نکته توجه نميکنند! زمان بين فريم براي کاهش سرعت ارسال دادهها استفاده ميشود، چون بعضي از ديمرها با سرعت بالا نميتوانند دادهها را دريافت کنند. اين زمان ميتواند بين 0 تا يک ثانيه طول بکشد.
پروتکل DMX512 چند محدوديت بر روي زمانبندي سيگنالها قرار داده است.
خلاصه زمان بندی ها | |||
سیگنال | حداقل | حداکثر | |
Break | 88µs | 1s | |
Mark-after-break | 8µs | 1s | |
Inter-frame-time | 0µs | 1s |
نکتهاي که با توجه به زمانبندي فوق مشخص ميشود اين است که هيچگاه بيش از يک ثانيه خط ديتا به طور پيوسته صفر يا يک باقي نخواهد ماند. که در اين صورت خطا رخ داده است.
جمع بندی
براي تقسيم کردن شبکه به دو يا چند قسمت و یا انشعاب حتماً بايد از تقسيم کننده مانند اسپلیتر DMX استفاده کرد
براي مسافتهاي طولاني از تکرار کننده با نام آمپلی فایر DMX استفاده کرد. اين دستگاهها از يک طرف دادهها را بطور صحيح دريافت کرده و در طرف ديگر آن را تکرار يا پخش ميکنند.
پروتکل DMX512 تا 512 ديمر را پشتيباني ميکند( DMX512 می تواند 512 کانال را پشتیبانی کند که هر کانال می تواند مقدار عددی 0 تا 255 باشد ) .
استاندارد های این پروتکل پيشنهاد میکند از کانکتورهاي XLR 3 Pin - XLR 5 Pin که کانکتور نري در فرستنده و کانکتور مادگي در گيرندها نصب و استفاده شود.
دادههاي 8 بيتي به ديمر اجازه ميدهند که رنج 0 (لامپ خاموش) تا 255 (حداکثر روشنايي) را بدست آورد. ترتيت ارسال بيتها از کم ارزش به پر ارزش ميباشد.
جهت بر قراری ارتباط بین تجهیزات اين سيستم ازیک کابل سه رشته که یک زوج آن به هم تابيده شده و توسط يک ورقهای محافظ روکش و در آخر توسط شیلد محافظت شده است استفاده می شود.
انتهای تمامی شبکهها بايد توسط یک مقاومت 120 اهمی که دو سيم دیتا را به هم متصل ميکند بسته شود.
استاندارد های DMX شبکههاي زنجيرهاي را پشتيباني ميکند که حداکثر 32 گیرنده را ميتوان در يک خط دیتا ساپورت نماید
برای نصب تجهیزاتی بیشتر از 32 دستگاه گیرنده می توانید با اسپلیتر DMX به تعداد مورد نیاز خروجی و یا انشعاب بگیرید در روی هر خروجی می توانید 32 دستگاه DMX نصب نمایید
هر خط دیتا ميتواند در حالت رعایت استاندارد ها تا 1000 متر طول داشته باشد. اما بهتر است قبل از رسيدن به اين طول از تکرارکننده مانند آمپلی فایر dmx استفاده شود.
نظرات