MQTT, BACnet IP & Modbus TCP: কম্প্যাক্টে মাল্টি-প্রোটোকল যোগাযোগ Ethernet PLC

একটি DIN-রেল মডিউল ক্লাউডের সাথে MQTT, ভবনের সাথে BACnet এবং মেশিনগুলোর সাথে Modbus TCP কথা বলছে। এই বাক্যটি গেটওয়ে পূর্ণ একটি প্যানেল বর্ণনা করতে ব্যবহৃত হত। এটি এখন একটি একক ইথারনেট-সক্ষম কম্প্যাক্ট CPU বর্ণনা করে, এবং xLogic প্ল্যাটফর্মে মাল্টি-প্রোটোকল গল্পটি একটি মার্কেটিং স্লাইড নয় — এটি ফার্মওয়্যারে, ম্যানুয়াল সংশোধনগুলির মধ্যে নথিভুক্ত: V1.04 থেকে MQTT, V1.57 থেকে BACnet, প্রথম দিন থেকে Modbus।

রক্ষণাবেক্ষণের দুঃস্বপ্ন তৈরি না করে এটি ব্যবহার করার উপায় এখানে রয়েছে।

প্রোটোকল ম্যাপ

প্রতিটি প্রোটোকলের একটি স্বাভাবিক শ্রোতা রয়েছে, এবং কৌশল হল তাদের আলাদা রাখা:

  • Modbus TCP— মেশিনের মেঝে: VFDs, HMIs, SCADA, অন্যান্য PLCs। নির্ধারিত, রেজিস্টার-ভিত্তিক, সর্বজনীন শিল্প হাত মেলানো
  • MQTT— ক্লাউড: একটি ব্রোকারে টেলিমেট্রি প্রকাশ করুন, ড্যাশবোর্ডগুলি সাবস্ক্রাইব করে। ইভেন্ট-চালিত, NAT-বন্ধুত্বপূর্ণ, অস্থির নেটওয়ার্কের জন্য তৈরি
  • BACnet— বিল্ডিং: প্ল্যান্ট রুম, AHUs, BMS হেড-এন্ড। সম্পত্তি শিল্পের স্বদেশী ভাষা

একটি CPU তিনটি শ্রোতার সেবা করা মানে মেশিন নির্মাতা, সুবিধা ব্যবস্থাপক এবং ক্লাউড ড্যাশবোর্ড একই ডিভাইস দেখে — প্রত্যেকেই তাদের নিজস্ব ভাষায়, তাদের মধ্যে কেউ কনভার্টার বক্সের প্রয়োজন নেই।

বাস্তব ভবন: ছোট প্ল্যান্ট রুম

একটি AHU, দুটি ফ্যান-কয়েল গ্রুপ এবং একটি হিট পাম্প সহ একটি প্ল্যান্ট রুম: স্থানীয় HMI এবং VFDs এর জন্য Modbus TCP, সময়সূচী এবং অ্যালার্মের জন্য ভবনের BMS এর জন্য BACnet, দূরবর্তী ট্রেন্ডিংয়ের জন্য ক্লাউড পরিষেবার জন্য MQTT। তিনটি প্রোটোকল, একটি কন্ট্রোলার, একটি প্রোগ্রাম। BMS প্রকৌশলী জিজ্ঞাসা করলেন গেটওয়ে কে তৈরি করেছে। উত্তর — "কোন গেটওয়ে নেই" — একটি পূর্ণ পাঁচ সেকেন্ডের নীরবতা অর্জন করেছিল।

সেই নীরবতা হল পণ্য কাজ করছে।

কি আলাদা রাখতে হবে

প্রোটোকলগুলি CPU শেয়ার করতে পারে, কিন্তু তাদের ডেটা পরিকল্পনা শেয়ার করা উচিত নয়। একবার পয়েন্টগুলি ম্যাপ করুন, উদ্দেশ্যমূলকভাবে: কোন রেজিস্টারগুলি Modbus-দৃশ্যমান, কোন অবজেক্টগুলি BACnet, কোন টপিকগুলি MQTT। একটি একক পয়েন্ট ম্যাপ, একটি স্প্রেডশিটে রক্ষণাবেক্ষণ করা, ক্লাসিক ব্যর্থতা প্রতিরোধ করে — একটি রেজিস্টার নম্বর পরিবর্তিত হওয়া এবং তিনটি সিস্টেম চুপচাপ পুরানো হয়ে যাওয়া।

এবং মডেল সীমাগুলি মনে রাখবেন: BACnet/IP এবং MQTT ইথারনেট-সক্ষম CPUs প্রয়োজন। সিরিয়াল-শুধুমাত্র মডেলগুলি Modbus RTU এবং BACnet/MSTP রাখে। প্রতিশ্রুতির আগে প্রয়োজনীয়তার বিরুদ্ধে মডেলটি পরীক্ষা করুন, ক্রয় আদেশের পরে নয়।

সমর্থন কোণ যা কেউ মূল্যায়ন করে না

মাল্টি-প্রোটোকল শুধুমাত্র একটি বৈশিষ্ট্য নয়; এটি একটি বিক্রয় দরজা। টেন্ডারগুলি এখন BMS ইন্টিগ্রেশনকে স্ট্যান্ডার্ড হিসাবে, ক্লাউড সংযোগকে একটি চেকলিস্ট আইটেম হিসাবে জিজ্ঞাসা করে। একটি কন্ট্রোলার যা উভয়কে উত্তর দেয়, অতিরিক্ত কিছু ছাড়াই প্রাক-যোগ্যতা ফিল্টার অতিক্রম করে। একক-প্রোটোকল এবং মাল্টি-প্রোটোকল সংস্করণগুলির মধ্যে দাম পার্থক্য ছোট; আপনি কোন প্রকল্পে বিড করতে পারবেন তার মধ্যে পার্থক্য ছোট নয়।

পয়েন্ট ম্যাপ শৃঙ্খলা

মাল্টি-প্রোটোকল একটি আশীর্বাদ এবং একটি ফাঁদ। আশীর্বাদ: একটি CPU তিনটি সিস্টেমের সেবা করছে। ফাঁদ: তিনটি সিস্টেম সত্যের কিছুটা ভিন্ন সংস্করণ পড়ছে। সমাধানটি বিরক্তিকর এবং অ-পরিবর্তনীয় — একটি একক পয়েন্ট ম্যাপ যা প্রতিটি মান একবার তালিকাবদ্ধ করে, তার রেজিস্টার, তার BACnet অবজেক্ট এবং তার MQTT টপিক একই সারিতে।

প্রথম দিন স্প্রেডশিট শুরু করুন, প্রথম ব্লকটি তারের আগে। কলাম: মানের নাম, Modbus রেজিস্টার, BACnet অবজেক্টের ধরন এবং উদাহরণ, MQTT টপিক, ডেটা টাইপ, স্কেলিং, আপডেট হার, এবং লেখার জন্য কোন সিস্টেম কর্তৃত্বপ্রাপ্ত। শেষ কলামটি মানুষের চেয়ে বেশি গুরুত্বপূর্ণ — যখন BMS এবং ক্লাউড ড্যাশবোর্ড উভয়ই একটি সেটপয়েন্ট পরিবর্তন করতে চায়, কেউ জিততে হবে, এবং ম্যাপ বলে কে। এর ছাড়া, দুটি সিস্টেম একটি মানের জন্য লড়াই করে এবং মেশিনটি 3 AM এ অপ্রত্যাশিতভাবে আচরণ করে।

প্রোগ্রামের সাথে ম্যাপটি সংস্করণ করুন। প্রতিটি ফার্মওয়্যার পরিবর্তন, প্রতিটি যোগ করা পয়েন্ট, প্রতিটি পুনঃনামকরণ — ম্যাপ একই কমিটে আপডেট হয়। আমি এমন প্রকল্পগুলি উত্তরাধিকার সূত্রে পেয়েছি যেখানে ম্যাপটি দুই বছর পুরানো ছিল এবং তিনজনের কাছে বিভিন্ন কপি ছিল। এটি পুনর্নির্মাণ করতে একটি সপ্তাহ সময় লেগেছিল রেজিস্টার টেবিলগুলির দিকে তাকিয়ে। একটি সপ্তাহ। সেই প্রকল্পটি হবেন না।

এবং সচেতনভাবে ক্রস-প্রোটোকল পথগুলি পরীক্ষা করুন: BMS থেকে একটি সেটপয়েন্ট লিখুন, নিশ্চিত করুন যে মেশিনটি প্রতিক্রিয়া জানায়, নিশ্চিত করুন যে ক্লাউড ড্যাশবোর্ড পরিবর্তনটি দেখায়। প্রতিটি পয়েন্টের জন্য একটি এন্ড-টু-এন্ড পরীক্ষা, কমিশনিংয়ে, ম্যাপিং ত্রুটিগুলি ধরবে যখন সেগুলি মেরামত করতে সস্তা।

ফার্মওয়্যার এবং সংস্করণ বাস্তবতা

প্রোটোকল বৈশিষ্ট্যগুলি তরঙ্গ আকারে এসেছে, এবং ম্যানুয়াল সংশোধন ইতিহাস গল্পটি বলে: 4.2 তে MQTT, 4.5 এ ওয়েব সার্ভার, 6.0 এ WiFi নির্দেশাবলী, 6.2 তে BACnet, 6.2.1 এ SR-22 সমর্থন। যদি আপনি একটি মাল্টি-প্রোটোকল প্রকল্প পরিকল্পনা করছেন, তবে ফার্মওয়্যার সংস্করণ একটি বিশদ নয় — এটি একটি প্রয়োজন। দুই বছর আগে পাঠানো একটি CPU BACnet কথা বলার আগে একটি আপডেট প্রয়োজন হতে পারে, এবং আপডেটের পথ মডেলের উপর নির্ভর করে।

ফার্মওয়্যার চেককে প্রি-সেলস চেকলিস্টের অংশ করুন। অর্ডারে সংস্করণটি নোট করুন, বিতরণের সময় এটি নিশ্চিত করুন, এবং কমিশনিং শীটে এটি নথিভুক্ত করুন। এই ব্যবসায়ের সবচেয়ে ব্যয়বহুল কথোপকথন হল "এটি তা সমর্থন করা উচিত" এর পরে "এটি নয়।"

এবং প্রোটোকলগুলিকে তাদের শক্তি সম্পর্কে সৎ রাখুন। ভবনের জন্য BACnet, মেশিনগুলির জন্য Modbus, ক্লাউডের জন্য MQTT — প্রত্যেকটি তার জন্য ডিজাইন করা তারের প্রকারে। ইথারনেট CPU তিনটি একসাথে পরিচালনা করে; এটি জাদুকরীভাবে তাদের একটি প্রোটোকল তৈরি করে না, এবং এটি করা উচিত নয়। বিভাজন হল যা প্ল্যান্টকে চালিয়ে রাখে যখন ক্লাউড লিঙ্কটি ড্রপ করে — স্থানীয় Modbus এবং BACnet ট্রাফিক ইন্টারনেটের জন্য অপেক্ষা করে না।

প্রোটোকল ডকুমেন্টেশন অভ্যাস

একটি প্রোটোকল ম্যাপ ছাড়া তিন-প্রোটোকল কন্ট্রোলার একটি জাদুঘরের প্রদর্শনী। শৃঙ্খলা কমিশনিংয়ে এক ঘণ্টা খরচ করে এবং ভবন পরিবর্তিত হলে প্রতি সময় এক সপ্তাহ সঞ্চয় করে: একটি শীট যা প্রতিটি পয়েন্ট, তার Modbus রেজিস্টার, তার BACnet অবজেক্ট এবং তার MQTT টপিক তালিকাবদ্ধ করে — লেখার কর্তৃত্ব চিহ্নিত করা। শীটটি প্যানেল অঙ্কনের সাথে থাকে, প্রোগ্রামের সাথে সংস্করণ করা হয়। যখন BMS প্রকৌশলী জিজ্ঞাসা করেন "সরবরাহ তাপমাত্রা কোনটি?" উত্তরটি একটি সারি, একটি বিকেলের রেজিস্টার প্রত্নতত্ত্ব নয়।

প্রোটোকল সহ সংস্করণটি কিনুন। প্রকল্পগুলি অনুসরণ করবে।