CAN बस के ऊपर एक नेटवर्क लेयर का चयन करना


10

मैं एक औद्योगिक स्वचालन एप्लिकेशन में CAN बस का उपयोग करने की योजना बना रहा हूं, हालांकि मुझे नेटवर्क परत को लागू करने का तरीका तय करने में मुश्किल समय हो रहा है। क्या किसी व्यक्ति के पास उच्च परत प्रोटोकॉल के लिए कैन का उपयोग करने के लिए कोई अनुशंसाएं हैं जो संदेश आईडी कैसे असाइन करें और डेटा पैकेट कैसे प्रारूपित करें? क्या मुझे अपनी स्वामित्व नेटवर्क परत विकसित करनी चाहिए या कैनोपेन जैसे मौजूदा मानक को लागू करना चाहिए?

जवाबों:


7

आप निश्चित रूप से एक मानक नेटवर्क परत चुनना चाहेंगे। मैंने कुछ ऐसे मामले देखे हैं जहां लोगों ने अपने रोल किए हैं, और अक्सर प्रोटोकॉल अक्षम होता है, और अंत में यह समय की बर्बादी है। एक सिद्ध नेटवर्क परत एक अंतर्निहित डिवाइस के साथ नेटवर्किंग में आपके सामने आने वाली अधिकांश समस्याओं को हल करने के लिए बुनियादी कार्यक्षमता प्रदान करती है, और जो आपको अंत में कीमती समय और धन बचाएगी।

कैनोपेन के साथ मेरी परिचित है, इसलिए मैं यहां थोड़ा स्पष्टीकरण दूंगा और यह तय करने में आपकी मदद कर सकता है कि आप जिस रास्ते से जाना चाहते हैं। यदि यह आपको क्या करने की आवश्यकता नहीं है, तो मैं कुछ और देखूंगा।

कैनोपेन बहुत डेटा केंद्रित है। सभी कैनोपेन स्लेव नोड्स (आप मास्टर नोड से नियंत्रित चीजें, जैसे सेंसर या मोटर ड्राइवर) एक शब्दकोश प्रदान करते हैं जिसमें सभी कॉन्फ़िगरेशन, नियंत्रण और डेटा-अधिग्रहण डेटा होते हैं जिन्हें आपको अपना काम करने के लिए पढ़ने / लिखने की आवश्यकता होती है। फिर आप एसडीओ (सेवा डेटा ऑब्जेक्ट) तंत्र के माध्यम से इन ऑब्जेक्ट्स को व्यक्तिगत रूप से पढ़ / लिख सकते हैं, या समय-समय पर इन ऑब्जेक्ट्स को पीडीओ (निर्माता डेटा ऑब्जेक्ट) तंत्र के माध्यम से संदेश भेज सकते हैं। स्टार्टअप, शटडाउन, और रीसेट, और दिल की धड़कन / नोड-खराबी का पता लगाने के लिए NMT सेवाओं, साथ ही एक नोड आईडी असाइनमेंट सेवा (यदि आप इसे उपयोग करना चाहते हैं) से प्रदान की जाती हैं। एम्बेडेड CANOpen लाइब्रेरी का उपयोग करके एक उपकरण को कार्यान्वित करने के लिए, आप मूल रूप से एक ऑब्जेक्ट शब्दकोश सेटअप करते हैं, पीडीओ को समय-समय पर डेटा अपडेट भेजने / प्राप्त करने के लिए सेटअप करते हैं, और उन डेटा प्रविष्टियों के आधार पर व्यवहार करने वाला उपयोगकर्ता कोड लिखें। कैनोपेन प्रदान करने वाली अन्य चीजें हैं, लेकिन यह इसका बड़ा हिस्सा है। अधिक जानकारी के लिए इस पुस्तक को पढ़ें।


पुस्तक माइक्रोप्लेन नामक कैनोपेन के कार्यान्वयन के बारे में बात करती है। कैनोपेन का आप किस कार्यान्वयन का उपयोग करते हैं?
mjh2007

1
@ mjh2007 - हमने अपना स्वयं का रोल किया, क्योंकि इसे एक अन्य प्रोटोकॉल के साथ संयोजन में उपयोग करने की आवश्यकता थी।
जे। पोलफर


7

मैं GM कारों पर CAN बस का उपयोग करने के लिए कोड लिखता हूं, जो ज्यादातर मालिकाना नेटवर्क परत का उपयोग करता है। क्या आपने ओपनकैन में देखा है? मैं एक खुला मानक चुनूँगा जैसे कि CANOpen या यहाँ तक कि OpenCAN। यह वास्तव में आपके स्वचालन वातावरण में नियंत्रण और लचीलेपन के स्तर पर निर्भर करता है।


7
वहाँ एक OpenCAN और साथ ही CANOpen है? aiggh! भयानक नामकरण।
जेसन एस

1
@ जेसन, मैं माइक्रोसॉफ्ट को दोष देता हूं।
कोर्तुक

5

बहुत अच्छे उत्तर मिले हैं। मुझे नहीं पता कि आप किस माइक्रो का उपयोग करते हैं, लेकिन यहां माइक्रोचिप से कुछ जानकारी के लिंक दिए गए हैं।

J1939 पुस्तकालय

डिवाइसनेट ™ ग्रुप 2 दास कैन के साथ PIC18 के लिए

क्या खोल सकते हैं

उनमें से प्रत्येक में कोड और एक बुनियादी डेटाशीट है जो आपको बताती है कि आपको उन्हें लागू करने की क्या आवश्यकता है।


1
वास्तव में मैं माइक्रोचिप का उपयोग करता हूं इसलिए यह बहुत उपयोगी है। धन्यवाद!
mjh2007 12

1
उन सभी pic18 के लिए कर रहे हैं। ऐसा लगता है कि कैनोपेन के साथ आपके पास एक मास्टर है जो दूसरों पर सेटिंग्स को संशोधित करता है, अधिकांश में मेरे कैनबस का उपयोग शामिल है, यह पूरी तरह से फिट बैठता है।
कोर्तुक

क्या आप कैनोपेन को लागू करने के लिए माइक्रोचिप लाइब्रेरी का उपयोग करते हैं?
mjh2007

1
इसे लागू करने की प्रक्रिया में, यह एक धीमी प्रक्रिया है क्योंकि इसके लिए मुझे सिस्टम में बदलाव करने के लिए कई अलग-अलग लोगों की आवश्यकता होती है। जब यह लागू होगा तो मैं आपको अपडेट करूंगा।
Kortuk

1
@ mjh2007, मैंने प्रोसेसर के लिए काम करना बंद कर दिया और छात्रों ने फैसला किया कि पिछले हार्डवेयर का उपयोग न करने और कुछ खरीदने से पहले वे बहुत सहज थे। फिर भी उस प्रोफेसर की परियोजना पर कोई प्रगति नहीं हुई, लेकिन ऐसा तब होता है जब एक प्रोफेसर को पता नहीं होता है कि क्या चल रहा है और बस लोगों को साल में एक बार सब कुछ बदलने की अनुमति देता है।
कोरटुक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.