यह आलेख दो औद्योगिक रोबोट, मैनिपुलेटर और मोबाइल रोबोट के नियंत्रण प्रणाली समाधानों की तुलना करता है, और उनकी विशेषताओं का परिचय देता है।
उपरोक्त वर्गीकरण एप्लिकेशन ऑब्जेक्ट पर आधारित है। इसके अलावा, बाजार में अधिक सामान्य गति नियंत्रक हैं, यानी, जो गैर-मानक उपकरणों को नियंत्रित करते हैं।
1 नियंत्रक निचला-स्तरीय समाधान 1.1 मैनिपुलेटर प्रकार मैनिपुलेटर प्रकार का नियंत्रक पहले विकसित हुआ और अपेक्षाकृत परिपक्व है। आइए मौजूदा नियंत्रण प्रणाली के निचले स्तर के समाधान पर एक नज़र डालें। 1.2 मोबाइल रोबोट प्रकार मोबाइल रोबोट का नियंत्रक अपेक्षाकृत नई दिशा का है। औद्योगिक मोबाइल रोबोट एजीवी, मानवरहित इंजीनियरिंग मशीनरी आदि के रूप में हैं। नियंत्रण प्रणाली का निचला स्तर समाधान इस प्रकार है:
1.3 तुलना
मैनिपुलेटर की सटीकता और गति स्थिरता के लिए उच्च आवश्यकताएं होती हैं, इसलिए गणना राशि बड़ी होती है और चक्र छोटा होता है, जो आम तौर पर मोबाइल रोबोट की तुलना में परिमाण के 1 से 2 ऑर्डर अधिक होता है। मोबाइल रोबोट में आमतौर पर सिंक्रनाइज़ेशन सटीकता के लिए उच्च आवश्यकताएं नहीं होती हैं, और उनका कॉन्फ़िगरेशन अपेक्षाकृत कम होता है।
मैनिपुलेटर आमतौर पर एक निश्चित क्षेत्र में काम करता है, और इसका नियंत्रक आमतौर पर चेसिस में रखा जाता है, इसलिए सुरक्षा स्तर अधिक नहीं होता है, आमतौर पर IP20। मोबाइल रोबोटों को वॉटरप्रूफिंग और डस्टप्रूफिंग की आवश्यकता होती है क्योंकि उन्हें बार-बार, विशेष रूप से बाहरी इंजीनियरिंग मशीनरी को स्थानांतरित करने की आवश्यकता होती है, इसलिए उन्हें वॉटरप्रूफिंग और डस्टप्रूफिंग पर विचार करने की आवश्यकता होती है। उनका सुरक्षा स्तर अधिक है, आम तौर पर IP67।
2 CoDeSys का परिचय 2.1 CoDeSys की संरचना
आप पाएंगे कि कई रोबोट नियंत्रण सॉफ़्टवेयर CoDeSys की सहायता से कार्यान्वित किए जाते हैं, तो CoDeSys क्या है?
CoDeSys एक सशुल्क सॉफ्ट पीएलसी विकास सॉफ्टवेयर है। सीधे शब्दों में कहें तो इसमें दो भाग होते हैं: डेवलपमेंट सिस्टम और रनटाइम सिस्टम। डेवलपमेंट सिस्टम प्रोग्रामिंग के लिए उपयोग किया जाने वाला सॉफ्टवेयर इंटरफ़ेस है (बिल्कुल विजुअल स्टूडियो, एक्लिप्स और अन्य सॉफ्टवेयर की तरह, जिसे आईडीई भी कहा जा सकता है)। डिजाइन, डिबगिंग और पीएलसी प्रोग्रामों का संकलन सभी आईडीई में किए जाते हैं, जो वह हिस्सा है जिससे उपयोगकर्ता अक्सर निपटते हैं;
पीएलसी प्रोग्राम लिखे जाने के बाद, इसे संचालन के लिए हार्डवेयर डिवाइस में स्थानांतरित किया जाना चाहिए। हालाँकि, जनरेट किया गया पीएलसी प्रोग्राम इस समय अपने आप नहीं चल सकता है। इसे एक निश्चित सॉफ़्टवेयर वातावरण में कार्य करना चाहिए. यह वातावरण रनटाइम सिस्टम है, जो उपयोगकर्ताओं के लिए अदृश्य है।
दोनों के इंस्टॉलेशन स्थान आमतौर पर अलग-अलग होते हैं। आईडीई आम तौर पर विकास कंप्यूटर पर स्थापित होता है, और रनटाइम सिस्टम हार्डवेयर डिवाइस पर स्थित होता है जो नियंत्रण भूमिका निभाता है। दोनों आम तौर पर नेटवर्क केबल से जुड़े होते हैं, और ऑपरेशन के लिए प्रोग्राम को नेटवर्क केबल के माध्यम से रनटाइम पर डाउनलोड किया जाता है।
CoDeSys चीन में बहुत प्रसिद्ध नहीं है, लेकिन यूरोप में इसकी लंबे समय से प्रतिष्ठा है, खासकर औद्योगिक नियंत्रण के क्षेत्र में। कई रोबोट कंपनियाँ जिनका हमने ऊपर उल्लेख किया है, इसके उत्पादों का उपयोग करती हैं, जैसे कि KEBA, बेकहॉफ, गूगोल और लगभग सभी मोबाइल रोबोट नियंत्रक निर्माता।
CoDeSys को डिज़ाइन करने वाली कंपनी 3S, केवल सॉफ़्टवेयर बेचती है, हार्डवेयर नहीं। हार्डवेयर सर्किट को उपयोगकर्ता द्वारा डिज़ाइन किया जाना चाहिए, और 3S रनटाइम सिस्टम को ग्राहक के हार्डवेयर में पोर्ट करने के लिए जिम्मेदार है। रनटाइम सिस्टम हार्डवेयर पर नग्न रूप से चल सकता है, लेकिन यह आमतौर पर ऑपरेटिंग सिस्टम पर चलता है, और ऑपरेटिंग सिस्टम को कॉन्फ़िगर करना भी ग्राहक का काम है।
यदि ग्राहक की आवश्यकता है, तो CoDeSys की IDE को ग्राहक के लोगो और उपस्थिति को बदलने के लिए अनुकूलित किया जा सकता है, यही कारण है कि आप पाएंगे कि विभिन्न निर्माताओं के विकास प्लेटफ़ॉर्म अलग दिखते हैं, लेकिन शैलियाँ अपेक्षाकृत समान हैं।
बेशक, उपयोगकर्ता अन्य आईडीई का भी उपयोग कर सकते हैं। उदाहरण के लिए, बेकहॉफ माइक्रोसॉफ्ट के विजुअल स्टूडियो का उपयोग करता है, जबकि कंपाइलर के पीछे कर्नेल और फ़ंक्शन लाइब्रेरी अभी भी CoDeSys के समाधान का उपयोग करते हैं।
CoDeSys के रनटाइम में मजबूत अनुकूलन क्षमता है और यह अधिकांश ऑपरेटिंग सिस्टम और हार्डवेयर चिप आर्किटेक्चर का समर्थन करता है।
2.2 कोडेसिस रनटाइम सिद्धांत
CoDeSys का IDE भाग मुफ़्त है, और इसका अनुभव लेने के लिए आप इसे इसकी आधिकारिक वेबसाइट से डाउनलोड कर सकते हैं। वास्तविक चार्ज रनटाइम सिस्टम रनटाइम सिस्टम है।
अपने डिज़ाइन की शुरुआत में, CoDeSys ने फ़ंक्शंस को कई घटक मॉड्यूल में विभाजित किया, जैसे बस प्रोटोकॉल स्टैक, विज़ुअल इंटरफ़ेस, मोशन कंट्रोल, सुरक्षा नियंत्रण इत्यादि। उपयोगकर्ता बिल्डिंग ब्लॉक्स जैसे अपने स्वयं के सिस्टम को बनाने के लिए आवश्यक मॉड्यूल चुन सकते हैं, और अंत में एक अनुकूलित नियंत्रण सॉफ़्टवेयर प्लेटफ़ॉर्म बनाएं।
कुछ उपयोगकर्ता जो सॉफ्ट पीएलसी में नए हैं, वे इस हिस्से से अपरिचित महसूस कर सकते हैं, लेकिन वास्तव में यह डिज़ाइन विधि बहुत आम है। उदाहरण के लिए, MATLAB Simulink का रियल-टाइम टूलबॉक्स (रियल-टाइम) इस तरह से काम करता है। उपयोगकर्ता सिमुलिंक के ग्राफ़िकल इंटरफ़ेस में खींचकर और छोड़ कर नियंत्रण प्रोग्राम डिज़ाइन करते हैं, और फिर उन्हें चलाने के लिए वास्तविक हार्डवेयर पर डाउनलोड करते हैं। आप इसके बारे में यहां जान सकते हैं.
बेकहॉफ की तरह इस्तेमाल का एक ऐसा तरीका भी है. उपयोगकर्ता ट्विनकैट आईडीई में प्रोग्राम करते हैं और फिर उन्हें बेकहॉफ के नियंत्रक पर डाउनलोड करते हैं। दरअसल, कंट्रोलर में एक रनटाइम पहले से इंस्टॉल होता है। सीमेंस STEP7 भी एक IDE है, और इसके PLC का रनटाइम भी मेल खाता है।
उपयोगकर्ता द्वारा लिखा गया PLC प्रोग्राम हमारे कंप्यूटर में मौजूद एप्लिकेशन की तरह होता है। यह रनटाइम सिस्टम पर चलता है, और रनटाइम सिस्टम ऑपरेटिंग सिस्टम पर चलता है।
रनटाइम सिस्टम एप्लिकेशन और ऑपरेटिंग सिस्टम के बीच स्थित होता है। अतः इसे मिडलवेयर कहा जा सकता है। रोबोट सॉफ़्टवेयर में, ROS, OROCOS (रियल-टाइम टूलकिट), आदि समान स्थिति में हैं।
सीएनसी मशीन टूल्स की तरह रोबोट नियंत्रण के लिए वास्तविक समय के प्रदर्शन की आवश्यकता होती है, इसलिए हम जो ऑपरेटिंग सिस्टम चुनते हैं वह अधिमानतः एक वास्तविक समय ऑपरेटिंग सिस्टम (आरटीओएस) होता है। दुर्भाग्य से, जिन ऑपरेटिंग सिस्टम का हम अक्सर उपयोग करते हैं वे रीयल-टाइम नहीं हैं, जैसे कि विंडोज़ और लिनक्स। लेकिन सौभाग्य से, किसी ने उन्हें संशोधित किया है, यानी वास्तविक समय के पैच जोड़े हैं।
आम तौर पर उपयोग किए जाने वाले रीयल-टाइम ऑपरेटिंग सिस्टम में शामिल हैं: VxWorks, QNX, Windows RTX, Xenomai, RT Linux, Linux RTAI, WinCE, μC/OS, SylixOs, आदि। यह ध्यान में रखते हुए कि Windows और Linux ऑपरेटिंग सिस्टम के कई उपयोगकर्ता हैं, CoDeSys ने लॉन्च किया है उपयोगकर्ताओं को संशोधन की परेशानी से बचाने के लिए एक संबंधित वास्तविक समय पैच (आरटीई)।
CoDeSys रनटाइम के बारे में अधिक जानकारी के लिए, आप आधिकारिक दस्तावेज़ [गणित प्रसंस्करण त्रुटि] [1] [2] [1] [2] पढ़ सकते हैं।
2.3 CoDeSys के नुकसान
CoDeSys हमारे नियंत्रक विकास में सुविधा लाता है और हमें शुरुआत से शुरू करने की परेशानी से बचाता है। हालाँकि, CoDeSys जैसे व्यावसायिक सॉफ़्टवेयर पर आधारित हमारे स्वयं के नियंत्रक उत्पादों को विकसित करने में कई नुकसान भी हैं:
(1) अंतर्निहित एल्गोरिदम खुला नहीं है
CoDeSys द्वारा एकीकृत गति नियंत्रण घटक और बस प्रोटोकॉल स्टैक सभी संक्षिप्त हैं। उपयोगकर्ता अपने आंतरिक विवरणों को नहीं समझ सकते हैं, न ही वे अपनी विशिष्ट आवश्यकताओं के अनुसार उन्हें अनुकूलित और अनुकूलित कर सकते हैं। वे उन्हें केवल सरलता से ही बुला सकते हैं। उपयोगकर्ता केवल CoDeSys प्लेटफ़ॉर्म पर भरोसा कर सकते हैं और उन्हें अपनी स्वयं की मुख्य तकनीक बनाने में कठिनाई होती है।
(2) सीमित कार्य और विस्तार करना कठिन
मशीन विजन, कृत्रिम बुद्धिमत्ता और स्वायत्त ड्राइविंग द्वारा प्रस्तुत नई प्रौद्योगिकियां अब तेजी से आगे बढ़ रही हैं, जबकि औद्योगिक नियंत्रण में कई प्रौद्योगिकियां अभी भी 20 साल पुरानी हैं। एक उदाहरण के रूप में मोबाइल रोबोट में नेविगेशन दृश्य को लेते हुए, दृष्टि या लेजर पर आधारित नेविगेशन विधि को बड़ी मात्रा में डेटा एकत्र करने और इसे संसाधित करने की आवश्यकता होती है, जिसमें बहुत सारी मैट्रिक्स गणना शामिल होती है।
अब पीएलसी केवल पिछड़े एक-आयामी डिजिटल गणना कर सकता है, जिससे जटिल एल्गोरिदम को लागू करना मुश्किल हो जाता है। कृत्रिम बुद्धिमत्ता समुदाय की ओपन सोर्स शैली के विपरीत, औद्योगिक नियंत्रण समुदाय एक दूसरे के लिए बंद है। कोई भी अपनी स्वयं की फ़ंक्शन लाइब्रेरी खोलने को तैयार नहीं है। बहुत कम ओपन सोर्स फ़ंक्शन लाइब्रेरीज़ (OSCAT) हैं। यहां तक कि सबसे बुनियादी फ़िल्टरिंग एल्गोरिदम और मैट्रिक्स गणना को भी शुरुआत से लिखना पड़ता है। इसके अलावा, अंतर्राष्ट्रीय मानकों द्वारा प्रदान किए गए बुनियादी कार्य बहुत सीमित हैं और बिल्कुल भी नए परिदृश्यों के अनुकूल नहीं हो सकते हैं। इन्हें तत्काल विस्तार की जरूरत है.
(3) अद्यतन करना कठिन है
CoDeSys पर पूर्ण निर्भरता के कारण, ग्राहकों के स्वयं के उत्पाद हार्डवेयर के उन्नयन को अनुकूलित और ट्रांसप्लांट करने की आवश्यकता होती है, जिसके परिणामस्वरूप लागत में वृद्धि होती है।
3 मुक्त स्रोत समाधान
वर्तमान में, कुछ ओपन सोर्स नियंत्रण प्रणाली समाधान हैं, जैसे बेरेमिज़, ओरोकोस, ओपनपीएलसी, ओपनआरटीएम और ओआरसीए।
रोबोट नियंत्रक विकसित करना एक भारी काम है। प्रदर्शन आवश्यकताओं की एक श्रृंखला को स्पष्ट किया जाना चाहिए, जिनमें से पहला वास्तविक समय प्रदर्शन है।
वास्तविक समय का प्रदर्शन आम तौर पर औद्योगिक रोबोटों के लिए आवश्यक है, लेकिन सेवा या मनोरंजन रोबोटों के लिए जरूरी नहीं है। आम लोगों के लिए "वास्तविक समय के प्रदर्शन" को तेज़ प्रसंस्करण या प्रतिक्रिया गति के रूप में समझना आसान है, लेकिन वास्तव में "वास्तविक समय के प्रदर्शन" का अर्थ समय में "नियतिवाद" है। उदाहरण के लिए, वास्तविक समय ऑपरेटिंग सिस्टम (आरटीओएस) में रुकावट प्रतिक्रिया या प्रक्रिया स्विचिंग का विलंब समय एक समय सीमा के भीतर होना चाहिए।
जो ऑपरेटिंग सिस्टम हम आमतौर पर उपयोग करते हैं (विंडोज़, लिनक्स) वे वास्तविक समय के ऑपरेटिंग सिस्टम नहीं हैं, क्योंकि वे थ्रूपुट के लिए डिज़ाइन किए गए हैं और यह गारंटी नहीं दे सकते कि प्रत्येक घटना को एक निश्चित सीमा के भीतर संसाधित किया जाता है। उदाहरण के लिए, मानक ईथरनेट की ट्रांसमिशन गति वास्तविक समय के औद्योगिक ईथरनेट की तुलना में बहुत तेज है, लेकिन यह वास्तविक समय भी नहीं है, क्योंकि यह यह गारंटी भी नहीं दे सकता है कि डेटा एक निश्चित समय के भीतर प्रसारित होता है।
वास्तविक समय को समझना कठिन नहीं है, लेकिन रोबोट के किन कार्यों को वास्तविक समय में चलाने की आवश्यकता है? रोबोट की प्रदर्शन आवश्यकताओं (1ms या 10ms) के अनुसार प्रोग्राम चलाने के लिए समय अंतराल कैसे निर्धारित करें? क्या वास्तविक समय हार्डवेयर या सॉफ़्टवेयर पर निर्भर करता है?
वास्तविक समय (एआरएम या एक्स86, लिनक्स आरटीएआई या वीएक्सवर्क्स) के आधार पर विशिष्ट हार्डवेयर और सॉफ्टवेयर कैसे चुनें? इंटरनेट पर इस पहलू पर गहन चर्चा का अभाव है, और प्रमुख रोबोट निर्माता अपने परीक्षण और प्रयोगात्मक परिणामों का खुलासा नहीं करेंगे। ऐसा लगता है कि यह पहलू मुख्य रूप से अनुभव और परीक्षण और त्रुटि पर निर्भर करता है।
यहां मैं केवल कुछ संकेतक प्रदान कर सकता हूं। वर्तमान में, औद्योगिक रोबोट हथियारों का नियंत्रण चक्र लगभग 1ms है, और उच्च-प्रदर्शन सर्वो ड्राइव के स्थिति लूप का नियंत्रण चक्र 125 [गणित प्रसंस्करण त्रुटि] म्यू sμs तक पहुंच सकता है। PLCopen सर्वो और गति नियंत्रण के लिए कुछ मानकों को परिभाषित करता है, जिसमें प्रोग्रामिंग भाषा, बुनियादी गति नियंत्रण फ़ंक्शन ब्लॉक, इनपुट और आउटपुट इंटरफेस के पैरामीटर आदि शामिल हैं। [गणित प्रसंस्करण त्रुटि] ^{[3]}
[3] विशिष्ट कार्यान्वयन कोड विवरण विभिन्न निर्माताओं द्वारा प्रदान किए जाते हैं।





