Very Simple Control Protocol
بہت آسان کنٹرول پروٹوکول (وی ایس سی پی) ایک مفت آٹومیشن پروٹوکول ہے جو ہر طرح کے آٹومیشن ٹاسک کے لیے موزوں ہے جہاں بلڈنگ یا ہوم آٹومیشن پر بنیادی توجہ دی جاتی ہے۔ اس کا بنیادی فائدہ یہ ہے کہ ہر وی ایس سی پی نوڈ دوسرے نوڈس کے تقسیم شدہ نیٹ ورک کا حصہ ہونے کے ناطے مکمل طور پر خود مختار کام کر سکتا ہے۔ وی ایس سی پی جسمانی پرت سے آزاد ہے (مثال کے طور پر۔ سی اے این بس، ایتھرنیٹ، آر ایس-485، آر ایس-232، می وائی) انفرادی نوڈس کو جوڑ کر آٹومیشن نیٹ ورک بس بناتی ہے۔ بس میں نوڈس ریڈنگ سوئچز، کنٹرولنگ لائٹنگ، بلائنڈز، ونڈوز یا انفارمیشن ڈسپلے، براڈکاسٹنگ فزیکل پیمائش (جیسے۔ درجہ حرارت، روشنی، بجلی کی کھپت وغیرہ۔ )، ملٹی میڈیا کنٹرول، چوری-یا فائر الارم، وغیرہ۔ پروٹوکول (لیول I) کا ایک ذیلی سیٹ ہے جو CAN بس اور وسائل سے محدود مائکرو کنکولر کے مطابق ہے۔ پروٹوکول لیول II ایتھرنیٹ (یو ڈی پی، ٹی سی پی اور اپنے ایتھرنیٹ قسم کے را ایتھرنیٹ) اور وائرلیس فزیکل تہوں کے لیے ڈیزائن کیا گیا ہے۔ سبھی ایک ہی مشترکہ میسج فیلڈز اور فریم ورک کا اشتراک کرتے ہیں اور گیٹ وے کے ذریعے جڑے جا سکتے ہیں۔ ایونٹ وی ایس سی پی واقعات پر مبنی ہے۔ ہر بار جب کوئی واقعہ پیش آتا ہے تو اسے دوسرے تمام نوڈس کی طرف نشر کیا جاتا ہے۔ نیٹ ورک پر موجود ہر نوڈ ایونٹ وصول کرے گا اور فیصلہ کرے گا کہ اس ایونٹ کو ہینڈل کرنے کی ضرورت ہے یا نہیں۔ خاکہ میں دی گئی مثال بٹن کو دبانے کی وضاحت کرتی ہے۔ اس کے نتیجے میں نوڈ 1 بس پر ایک ایونٹ میسج بھیجے گا جس میں بٹن دبانے کی اطلاع دی جائے گی۔ نوڈ 2 پیغام وصول کرتا ہے لیکن فیصلہ کرتا ہے کہ اس بٹن کو نوڈ 2 کے لیے ایونٹ کو متحرک نہیں کرنا چاہیے۔ نوڈ 3 پیغام وصول کرتا ہے اور فیصلہ کرتا ہے کہ اس بٹن کو لیمپ 2 کو آن کرنے کے لیے متحرک کرنا چاہیے۔ ہر طرح کی چیزوں کے ہونے کے واقعات ہو سکتے ہیں: ایک واقعہ بٹن دبایا جا سکتا ہے، موجودگی سینسر کو متحرک کیا جا سکتا ہے، یا غروب آفتاب ہو سکتا ہے۔ واقعات کو وقتا فوقتا بھی بھیجا جا سکتا ہے، مثال کے طور پر ہر منٹ درجہ حرارت پڑھنا۔ وی ایس سی پی بہت سے واقعات کی پیش گوئی کرتا ہے جو ہو سکتے ہیں۔ ان واقعات کو کلاسوں اور اقسام میں بیان کیا گیا ہے۔ موصولہ ایونٹ کو سنبھالا جانا چاہیے یا نہیں اس کا تعین فیصلہ میٹرکس یا ڈی ایم کے ذریعے مختصر طور پر کیا جاتا ہے۔ اس کے علاوہ ڈی ایم کی مزید وضاحت کی گئی ہے۔ ایونٹ کلاس اور ٹائپ ایونٹس کو کلاسوں میں منظم کیا جاتا ہے۔ کلاس ان واقعات کا مجموعہ ہے جو کسی نہ کسی طرح ایک دوسرے سے تعلق رکھتے ہیں۔ الارم، پیمائش، کنٹرول، معلومات وغیرہ کے لیے کلاسیں ہیں۔ فی الحال وی ایس سی پی تقریبا 25 کلاسوں کی وضاحت کرتا ہے، لیکن اس میں بہت سی مزید کلاسوں کے لیے گنجائش ہے۔ ہر کلاس کو اپنی باری پر اقسام میں تقسیم کیا جاتا ہے۔ ایک قسم مزید کلاس کے اندر ایونٹ کی وضاحت کرتی ہے۔ مثال کے طور پر، کلاس 20 (0x14) کے واقعات معلومات کے واقعات ہیں۔ اس کلاس میں ایک ذیلی قسم 1 (0x01) بٹن ہوتا ہے جو بٹن دبانے کا اشارہ کرتا ہے۔ اسی انفارمیشن کلاس میں سگنل آن، آف، بیلو لمٹ وغیرہ کی اقسام بھی ہیں۔ اسی طرح کلاس کی پیمائش میں سگنل درجہ حرارت، کرنٹ، وولٹیج وغیرہ کی اقسام ہیں۔ ان تمام کلاسوں اور اقسام کی وضاحت ہونے سے نوڈس ایک ہی زبان بولتے ہیں۔ پری ڈیفائن کلاسز اور اقسام کی مکمل فہرست کے لیے وی ایس سی پی ویکی دیکھیں۔ وی ایس سی پی ایونٹ ڈیٹاگرام ڈھانچہ وہ واقعات جو نشر کیے جاتے ہیں ان میں متعدد فیلڈز ہوتے ہیں جو مل کر ایک وی ایس سی پی ڈیٹاگرام بناتے ہیں۔ ان فیلڈز کو فزیکل لیئر پر کس طرح نقشہ بنایا جاتا ہے اس کی وضاحت کئی فزیکل لیئر پروٹوکول جیسے کہ سی اے این، ایتھرنیٹ، ٹی سی پی وغیرہ کے لیے کی جاتی ہے۔ دوسروں کے لیے اس کی وضاحت ابھی تک نہیں کی گئی ہے، لیکن عام طور پر ان شعبوں کو فزیکل لیئر پروٹوکول پر نقشہ بنانا مشکل نہیں ہے۔ VSCP پروٹوکول کی 2 سطحیں ہیں جنہیں LEVEL I اور LEVEL II کہا جاتا ہے۔ وہ دونوں بنیادی طور پر ایک ہی پروٹوکول ہیں لیکن مختلف شعبوں کے سائز میں مختلف ہیں۔ لیول I کا مقصد زیادہ محدود وسائل والے نوڈس پر چلانا ہے اور فیلڈز کو تھوڑا زیادہ قدامت پسندانہ طور پر بیان کیا گیا ہے۔ سطح I درحقیقت سطح II کا ایک ذیلی مجموعہ ہے، اور ایک مناسب گیٹ وے کے ساتھ واقعات سطح I اور II نیٹ ورک کے درمیان منتقل ہو سکتے ہیں۔ لیول II کا مقصد ان نوڈس پر چلانا ہے جن میں وسائل کی بہت کم رکاوٹیں ہیں اور پیغام کے بڑے سائز سے آسانی سے نمٹ سکتے ہیں۔ فیصلہ میٹرکس جب کسی نوڈ کے ذریعے واقعات موصول ہوتے ہیں تو نوڈ کو اس بات کا تعین کرنے کی ضرورت ہوتی ہے کہ آیا اسے اس واقعہ کی بنیاد پر کسی کام کو انجام دینے کی ضرورت ہے یا نہیں۔ یہ مختصر طور پر فیصلہ میٹرکس یا ڈی ایم کا جائزہ لے کر کیا جاتا ہے۔ ڈی ایم میٹرکس متعدد آئی ایف۔ تھین۔ حالات سے بنا ہے۔ ایسی ہر آئی ایف/تھین حالت کو لائن کہا جاتا ہے اور متعدد لائنیں فیصلہ میٹرکس بناتی ہیں۔ آنے والے پیغام کی کلاس اور قسم کا اندازہ ہمیشہ ڈی ایم لائن کے ذریعے کیا جاتا ہے۔ کلاس اور ٹائپ کی تشخیص پہلے کلاس/ٹائپ کو ماسک کے ذریعے پاس کرکے اور پھر فلٹر سے موازنہ کرکے کی جاتی ہے۔ یہ طریقہ متعدد کلاس/اقسام کو ڈی ایم کی 1 لائن کے لیے درست شرط کو متحرک کرنے کی اجازت دیتا ہے۔ ڈی ایم لائن (سینڈر جی یو آئی ڈی، زون، سب زون) کے لیے دیگر شرائط کا اختیاری طور پر جائزہ لیا جاتا ہے۔ اگر ڈی ایم لائن درست ہے تو عمل انجام دیا جاتا ہے۔ ایکٹیون کے ساتھ ایک ایکٹیون پیرامیٹرز ہوتے ہیں۔ ایک مثال ایکشن ہوگی: ٹرن آن ریلے 6 کے ساتھ 6 ایکشن پیرامیٹر ہے۔ وصول کنندہ نوڈ کے ذریعہ کون سی حرکتیں ممکن ہیں اس کا تعین نوڈ کے ڈیزائن سے ہی ہوتا ہے۔ یہ فرم ویئر ڈویلپر پر منحصر ہے کہ وہ اس بات کی وضاحت کرے کہ کون سے اقدامات انجام دیے جا سکتے ہیں۔ اس کے بعد ایم ڈی ایف فائل میں ممکنہ عمل کو دستاویزی شکل دینے تک (بعد میں دیکھیں) ترتیب ایس ڈبلیو کو معلوم ہو جائے گا کہ اس عمل کو کیسے منتخب کیا جائے۔ ڈی ایم کو مناسب نوڈ کنفیگریشن رجسٹر ترتیب دے کر تبدیل کیا جا سکتا ہے۔ ایسا کرنے کا ایک آسان طریقہ یہ ہے کہ وی ایس سی پی ورکس کنفیگریشن ایس ڈبلیو کا استعمال کیا جائے۔ ڈیٹا پے لوڈ بھیجے جانے والے ایونٹ میں ڈیٹا پے لوڈ بھی لے جا سکتا ہے۔ اس پے لوڈ کا مواد اور تنظیم ایونٹ کی کلاس اور قسم پر منحصر ہے۔ مثال کے طور پر، کلاس 10 (پیمائش) اور ٹائپ 6 (درجہ حرارت) کا واقعہ اپنے پے لوڈ میں درجہ حرارت کا ڈیٹا (بائٹ 0، ڈگری یا سیلسیس کے ذریعے طے شدہ کوڈنگ کے ساتھ) لے جائے گا۔ ایک بٹن ایونٹ اپنے ڈیٹا پے لوڈ میں بٹن اور بٹن زون/سب زون کے بارے میں معلومات لے گا۔ ہر کلاس/قسم کے لیے ڈیٹا فارمیٹنگ کا تعین سپیک میں کیا جاتا ہے، براہ کرم تفصیلات کے لیے ویکی سے مشورہ کریں۔ زون/سب زون کچھ (کافی کچھ) واقعات اپنے ڈیٹا پے لوڈ میں فیلڈ زون اور فیلڈ سب زون پر مشتمل ہوتے ہیں۔ یہ فعالیت نوڈس کی گروہ بندی کو ممکن بنانے کے لیے موجود ہے۔ مثال کے طور پر ہم اس بات کا تعین کر سکتے ہیں کہ ایک مخصوص لیمپ کو کنٹرول کرنے والے تمام بٹن ایک ہی گروپ کا حصہ ہیں۔ یہ بعض منظرناموں کے لیے ڈی ایم کو آسان بناتا ہے۔ ہر بٹن کے لیے لیمپ نوڈ کے طور پر ایک ڈی ایم لائن رکھنے کے بجائے (1 لائن فی بٹن: اگر بٹن x تو ٹرن آن لیمپ) ہمارے پاس صرف 1 ڈی ایم لائن ہو سکتی ہے جس میں کہا گیا ہے کہ آئی ایف (زون میچ) پھر ٹرن آن لیمپ۔ ایک سے زیادہ نوڈ سوئچز کو گروپ کا حصہ بنانا نوڈس کو ترتیب دے کر کیا جاتا ہے، نوڈ کا فرم ویئر اس فعالیت کی حمایت کرے گا۔ وی ایس سی پی نوڈ کو ترتیب دینا ایک نوڈ کو اپنے فنکشن کو انجام دینے سے پہلے مناسب طریقے سے ترتیب دینے کی ضرورت ہے۔ ہر وی ایس سی پی نوڈ اپنے فنکشن کے مطابق ترتیب شدہ رجسٹروں کا اپنا سیٹ فراہم کرتا ہے۔ بٹن نوڈ میں بٹنوں سے تعلق رکھنے والے زون/ذیلی زون کو ترتیب دینے کا کچھ امکان ہوگا۔ درجہ حرارت کے نوڈ میں محرک اقدار مقرر کرنے کا کچھ امکان ہوتا ہے۔ ڈی ایم کو ترتیب دینا بھی نوڈ کو ترتیب دینے کا حصہ ہے۔ کنفیگریشن رجسٹر نوڈ کی تشکیل رجسٹر پر لکھ کر کی جاتی ہے۔ ہر (لیول I) نوڈ 256 رجسٹروں تک رسائی فراہم کرتا ہے۔ سب سے زیادہ 128 رجسٹر وی ایس سی پی کے بنیادی افعال کے لیے مخصوص ہیں۔ ان 128 رجسٹروں میں ہمیں نوڈ جی یو آئی ڈی، عرفی نام، ایم ڈی ایف اور پیجنگ رجسٹر جیسی اشیاء ملتی ہیں۔ نچلے 128 رجسٹر ایپلی کیشن کے مخصوص استعمال کے لیے مفت ہیں۔ اگر 128 رجسٹر کافی نہیں ہیں تو 16 بٹ پیجنگ کا امکان ہے۔ یہ ایپلیکیشن کے استعمال کے لیے 65536 x 128 8 بٹ رجسٹروں کی اجازت دیتا ہے۔ ان رجسٹروں کو لکھنا/پڑھنا کلاس 0 ایونٹس کا استعمال کرتے ہوئے کیا جاتا ہے۔ کلاس 0 ایونٹس وی ایس سی پی پروٹوکول فعالیت کے پیغامات ہیں جن کا مقصد نوڈس کو ترتیب دینے اور ان کا انتظام کرنا ہے۔ ماڈیول تفصیل فائل کا سراغ لگانا کہ کون سا رجسٹر کس مقصد کو پورا کرتا ہے، خاص طور پر درخواست کے مخصوص رجسٹر کے لیے ایک چیلنج ہو سکتا ہے۔ لیکن یہ وہ جگہ ہے جہاں ماڈیول کی تفصیل کی فائل یا ایم ڈی ایف آتی ہے۔ ایم ڈی ایف فائل ایک مشین سے پڑھنے کے قابل ایکس ایم ایل فائل ہے جو ماڈیول کے ہر رجسٹر کے فنکشن کو بیان کرتی ہے، اس رجسٹر کے لیے ترتیب کے اختیارات دیتی ہے، وغیرہ۔ یہ فائل کنفیگریشن سافٹ ویئر (وی ایس سی پی ورکس) کے ذریعے ماڈیول کے لیے مخصوص کنفیگریشن آپشنز کو دکھانے کے لیے استعمال ہوتی ہے۔ ایم ڈی ایف فائل کو نوڈ پر ہی محفوظ کیا جا سکتا ہے اور وہاں سے وی ایس سی پی ورکس کے ذریعے حاصل کیا جا سکتا ہے، لیکن زیادہ عام طور پر ایم ڈی ایف فائل ایک ایکس ایم ایل فائل ہوگی جسے ویب سرور پر کہیں ہوسٹ کیا جائے گا۔ اس کے بعد نوڈ کو صرف وی ایس سی پی ورکس کو مطلع کرنے کی ضرورت ہوتی ہے جہاں (یو آر ایل) ایکس ایم ایل فائل مل سکتی ہے۔ یہ یو آر ایل وی ایس سی پی ریزروڈ رجسٹروں 0xE0-0xFF میں موجود ہے۔ وی ایس سی پی ورکس وی ایس سی پی ورکس نوڈس کو ترتیب دینے اور ان کا انتظام کرنے کے لیے پی سی (لینکس اور ونڈوز) پر مبنی ٹول ہے۔ وی ایس سی پی ورکس ایم ڈی ایف فائل کو خود بخود تجزیہ کرکے ان رجسٹروں کو انسانی پڑھنے کے قابل شکل میں پیش کرنے والے رجسٹروں کو پڑھنے/ترتیب دینے کی اجازت دیتا ہے۔ وی ایس سی پی ورکس فیصلہ میٹرکس سیٹ کرنے کے لیے وزارڈز بھی فراہم کرتا ہے۔ اگر وی ایس سی پی پروٹوکول ہے تو وی ایس سی پی اینڈ فرینڈز کا استعمال سافٹ ویئر اے پی آئی، اسکیما اور وی ایس سی پی کے ارد گرد بنائی گئی تجریدی پرت کو نام دینے کے لیے کیا جاتا ہے۔ وی ایس سی پی اور فرینڈز ایسے ڈرائیوروں کا استعمال کرتے ہوئے میراث کے آلات کی پرتوں پر مشتمل تجریدوں کی اجازت دیتے ہیں جو انہیں وی ایس سی پی آلات کی طرح دکھاتے ہیں۔ اس کا مطلب ہے کہ کسی بھی ڈیوائس کو وی ایس سی پی اینڈ فرینڈز فریم ورک کے ذریعے کنٹرول اور نگرانی کی جا سکتی ہے۔ وی ایس سی پی اینڈ فرینڈز چار عام آئی او ٹی اور ایم ٹو ایم مسائل کو حل کرتا ہے۔ یکساں ڈیوائس کی ترتیب۔ خود مختار/تقسیم شدہ ڈیوائس کی فعالیت۔ ڈیوائس فرم ویئر کو اپ ڈیٹ/برقرار رکھنے کا یکساں طریقہ۔ حوالہ جات بیرونی روابط وی ایس سی پی پروجیکٹ وی ایس سی پی اسپیسیفیکیشن وی ایس سی پی دستاویزات وی ایس سی پی ماڈیولز کا ہوم پیج