नैनोटिक नैनोलिब सी++ प्रोग्रामिंग
उत्पाद की जानकारी
विशेष विवरण
- प्रोडक्ट का नाम: नैनोलिब
- प्रोग्रामिंग भाषा: सी++
- उत्पाद संस्करण: 1.3.0
- उपयोगकर्ता मैनुअल संस्करण: 1.4.2
नैनोलिब लाइब्रेरी को नैनोटेक नियंत्रकों के लिए नियंत्रण सॉफ़्टवेयर प्रोग्रामिंग के लिए डिज़ाइन किया गया है। यह नियंत्रण अनुप्रयोगों के विकास को सुविधाजनक बनाने के लिए एक उपयोगकर्ता इंटरफ़ेस, कोर कार्यक्षमता और संचार लाइब्रेरी प्रदान करता है।
उत्पाद उपयोग निर्देश
- आपके शुरू करने से पहले:
- सुनिश्चित करें कि आपका सिस्टम मैनुअल में निर्दिष्ट हार्डवेयर आवश्यकताओं को पूरा करता है। इस उत्पाद के लिए लक्षित दर्शकों में नैनोटेक नियंत्रकों के लिए नियंत्रण सॉफ़्टवेयर बनाने के इच्छुक डेवलपर्स शामिल हैं।
- शुरू करना:
- नैनोलिब का उपयोग शुरू करने के लिए, इन चरणों का पालन करें:
- अपने प्रोजेक्ट में NanoLib को आयात करके प्रारंभ करें।
- अपनी परियोजना सेटिंग्स को आवश्यकतानुसार कॉन्फ़िगर करें.
- नैनोलिब कार्यात्मकता को शामिल करने के लिए अपनी परियोजना बनाएं।
- परियोजनाएँ बनाना:
- आप विंडोज और लिनक्स दोनों वातावरणों के लिए प्रोजेक्ट बना सकते हैं। प्रत्येक प्लेटफ़ॉर्म के लिए मैनुअल में दिए गए विशिष्ट निर्देशों का पालन करें।
- कक्षाएं / कार्य संदर्भ:
- प्रोग्रामिंग नियंत्रण सॉफ्टवेयर के लिए नैनोलिब में उपलब्ध कक्षाओं और कार्यों पर विस्तृत मार्गदर्शन के लिए उपयोगकर्ता मैनुअल देखें।
पूछे जाने वाले प्रश्न
- प्रश्न: नैनोलिब का उद्देश्य क्या है?
- A: नैनोलिब नैनोटेक नियंत्रकों के लिए प्रोग्रामिंग नियंत्रण सॉफ्टवेयर की एक लाइब्रेरी है, जो आवश्यक कार्यात्मकताएं और संचार क्षमताएं प्रदान करती है।
- प्रश्न: मैं नैनोलिब के साथ कैसे शुरुआत कर सकता हूं?
- A: अपने प्रोजेक्ट में NanoLib को आयात करके, प्रोजेक्ट सेटिंग्स को कॉन्फ़िगर करके, और NanoLib सुविधाओं का उपयोग करने के लिए अपने प्रोजेक्ट का निर्माण करके आरंभ करें।
“`
उपयोगकर्ता मैनुअल NanoLib
सी++
उत्पाद संस्करण 1.3.0 के साथ मान्य
उपयोगकर्ता मैनुअल संस्करण: 1.4.2
दस्तावेज़ का उद्देश्य और परंपराएँ
यह दस्तावेज़ नैनोलिब लाइब्रेरी के सेटअप और उपयोग का वर्णन करता है और इसमें नैनोटेक नियंत्रकों के लिए अपने स्वयं के नियंत्रण सॉफ़्टवेयर को प्रोग्रामिंग करने के लिए सभी वर्गों और कार्यों का संदर्भ शामिल है। हम निम्नलिखित टाइपफेस का उपयोग करते हैं:
रेखांकित पाठ एक क्रॉस संदर्भ या हाइपरलिंक को चिह्नित करता है।
Exampचरण 1: NanoLibAccessor पर सटीक निर्देशों के लिए, सेटअप देखें। उदाहरणampले 2: Ixxat ड्राइवर स्थापित करें और CAN-to-USB एडाप्टर कनेक्ट करें। इटैलिक टेक्स्ट का अर्थ है: यह एक नामित ऑब्जेक्ट, एक मेनू पथ / आइटम, एक टैब / है file नाम या (यदि आवश्यक हो) एक विदेशी भाषा अभिव्यक्ति।
Exampचरण 1: चुनें File > नया > खाली दस्तावेज़ पर जाएँ। टूल टैब खोलें और टिप्पणी चुनें।ampले 2: यह दस्तावेज़ उपयोगकर्ताओं (= Nutzer; usuario; utente; utilisateur; utente आदि) को विभाजित करता है:
- तृतीय-पक्ष उपयोगकर्ता (= ड्रिट्नटज़र; टेरसेरो यूसुरियो; टेरसेरो यूटेंटे; टियर यूटिलिसेटर; टेरज़ो यूटेंटे आदि)। - अंतिम उपयोक्ता (= एंडनुट्ज़र; यूसुआरियो फ़ाइनल; यूटेंटे फ़ाइनल; यूटेंटेअर फ़ाइनल; यूटेंटे फ़िनाले आदि)।
कूरियर कोड ब्लॉक या प्रोग्रामिंग कमांड को चिह्नित करता है।ampचरण 1: Bash के माध्यम से, साझा ऑब्जेक्ट की प्रतिलिपि बनाने के लिए sudo make install को कॉल करें; फिर ldconfig को कॉल करें। उदाहरणampचरण 2: NanoLib में लॉगिंग स्तर बदलने के लिए निम्नलिखित NanoLibAccessor फ़ंक्शन का उपयोग करें:
// ***** सी++ संस्करण *****
शून्य setLoggingLevel(LogLevel स्तर);
बोल्ड टेक्स्ट महत्वपूर्ण महत्व के अलग-अलग शब्दों पर जोर देता है। वैकल्पिक रूप से, ब्रैकेटेड विस्मयादिबोधक चिह्न महत्वपूर्ण(!) महत्व पर जोर देते हैं।
Exampचरण 1: खुद को, दूसरों को और अपने उपकरणों को सुरक्षित रखें। हमारे सामान्य सुरक्षा नोटों का पालन करें जो आम तौर पर सभी नैनोटेक उत्पादों पर लागू होते हैं।
Exampले 2: अपनी सुरक्षा के लिए, इस विशिष्ट उत्पाद पर लागू होने वाले विशिष्ट सुरक्षा नोटों का भी पालन करें। क्रिया को-क्लिक का अर्थ है संदर्भ मेनू आदि खोलने के लिए द्वितीयक माउस कुंजी के माध्यम से क्लिक करना।
Exampले 1: पर सह-क्लिक करें file, नाम बदलें का चयन करें, और नाम बदलें file. भूतपूर्वampले 2: गुणों की जांच करने के लिए, पर सह-क्लिक करें file और गुण चुनें.
संस्करण: doc 1.4.2 / NanoLib 1.3.0
4
आपके शुरू करने से पहले
नैनोलिब का उपयोग शुरू करने से पहले, अपने पीसी को तैयार करें और इच्छित उपयोग और लाइब्रेरी की सीमाओं के बारे में जानकारी प्राप्त करें।
2.1 सिस्टम और हार्डवेयर आवश्यकताएँ
32-बिट संचालन या बंद सिस्टम से खराबी की सूचना! 64-बिट सिस्टम का उपयोग करें और उसका निरंतर रखरखाव करें। OEM बंद करने और ~निर्देशों का पालन करें।
नैनोलिब 1.3.0 कैनोपेन, मोडबस आरटीयू (वर्चुअल कॉम पोर्ट पर यूएसबी भी), मोडबस टीसीपी, ईथरकैट और प्रोफिनेट के साथ सभी नैनोटेक उत्पादों का समर्थन करता है। पुराने नैनोलिब्स के लिए: इंप्रिंट में चेंजलॉग देखें। केवल आपके जोखिम पर: लीगेसी-सिस्टम उपयोग। नोट: यदि आपको FTDI-आधारित USB एडाप्टर का उपयोग करते समय समस्या आती है, तो विलंबता को यथासंभव कम करने के लिए मान्य OEM निर्देशों का पालन करें।
आवश्यकताएँ (64-बिट सिस्टम अनिवार्य)
Windows 10 या 11 w/ Visual Studio 2019 संस्करण 16.8 या बाद का संस्करण और Windows SDK 10.0.20348.0 (संस्करण 2104) या बाद का संस्करण
C++ पुनर्वितरणयोग्य 2017 या उच्चतर CANopen: Ixxat VCI या PCAN मूल ड्राइवर (वैकल्पिक) EtherCat मॉड्यूल / Profinet DCP: Npcap या WinPcap RESTful मॉड्यूल: Npcap, WinPcap, या व्यवस्थापक अनुमति
ईथरनेट बूटलोडर्स के साथ संवाद करें
लिनक्स w/ उबंटू 20.04 LTS से 24 (सभी x64 और arm64)
कर्नेल हेडर और libpopt-dev पैकेट Profinet DCP: CAP_NET_ADMIN और CAP_NET_RAW क्षमता-
संबंध CANopen: Ixxat ECI ड्राइवर या पीक PCAN-USB एडाप्टर EtherCat: CAP_NET_ADMIN, CAP_NET_RAW और
CAP_SYS_NICE क्षमताएं RESTful: CAP_NET_ADMIN Eth- के साथ संवाद करने की क्षमता
ernet बूटलोडर्स (यह भी अनुशंसित: CAP_NET_RAW)
भाषा, फील्डबस एडाप्टर, केबल
C++ GCC 7 या उच्चतर (Linux)
ईथरकैट: ईथरनेट केबल वीसीपी / यूएसबी हब: अब एक समान यूएसबी यूएसबी मास स्टोरेज: यूएसबी केबल रेस्ट: ईथरनेट केबल कैनओपन: आईएक्सएक्सएटी यूएसबी-टू-कैन वी2; ना-
नोटेक ZK-USB-CAN-1, पीक PCANUSB एडाप्टर arm64 पर Ubuntu के लिए कोई Ixxat समर्थन नहीं
मोडबस आरटीयू: नैनोटेक जेडके-यूएसबी-आरएस485-1 या समकक्ष एडाप्टर; वर्चुअल कॉम पोर्ट (वीसीपी) पर यूएसबी केबल
मोडबस टीसीपी: उत्पाद डेटाशीट के अनुसार ईथरनेट केबल
2.2 इच्छित उपयोग और दर्शक
नैनोलिब एक प्रोग्राम लाइब्रेरी और सॉफ्टवेयर घटक है, जो औद्योगिक अनुप्रयोगों की एक विस्तृत श्रृंखला में नैनोटेक नियंत्रकों के संचालन और उनके साथ संचार के लिए है तथा केवल कुशल प्रोग्रामरों के लिए है।
वास्तविक समय में अक्षम हार्डवेयर (पीसी) और ऑपरेटिंग सिस्टम के कारण, नैनोलिब उन अनुप्रयोगों में उपयोग के लिए नहीं है जिनमें तुल्यकालिक बहु-अक्षीय गति की आवश्यकता होती है या जो आमतौर पर समय के प्रति संवेदनशील होते हैं।
किसी भी स्थिति में आप नैनोलिब को किसी उत्पाद या सिस्टम में सुरक्षा घटक के रूप में एकीकृत नहीं कर सकते। अंतिम उपयोगकर्ताओं को डिलीवरी करते समय, आपको नैनोटेक द्वारा निर्मित घटक वाले प्रत्येक उत्पाद में सुरक्षित उपयोग और सुरक्षित संचालन के लिए संबंधित चेतावनी नोटिस और निर्देश जोड़ने होंगे। आपको नैनोटेक द्वारा जारी सभी चेतावनी नोटिस सीधे अंतिम उपयोगकर्ता तक पहुँचाने होंगे।
2.3 डिलीवरी और वारंटी का दायरा
नैनोलिब हमारे डाउनलोड से *.zip फ़ोल्डर के रूप में आता है webEMEA / APAC या AMERICA के लिए साइट। सेटअप से पहले अपने डाउनलोड को विधिवत स्टोर करें और अनज़िप करें। नैनोलिब पैकेज में शामिल हैं:
संस्करण: doc 1.4.2 / NanoLib 1.3.0
5
2 शुरू करने से पहले
स्रोत कोड के रूप में इंटरफ़ेस हेडर (API)
बाइनरी प्रारूप में लाइब्रेरी के रूप में मुख्य कार्य: नैनो-
संचार को सुगम बनाने वाली लाइब्रेरी: nanolibm_ lib.dll
[yourfieldbus].dll आदि.Exampपरियोजना: पूर्वample.sln (विजुअल स्टूडियो
परियोजना) और पूर्वample.cpp (मुख्य file)
वारंटी के दायरे के लिए, कृपया a) EMEA / APAC या AMERICA के लिए हमारे नियम और शर्तों और b) सभी लाइसेंस शर्तों का पालन करें। नोट: नैनोटेक तीसरे पक्ष के उपकरणों की दोषपूर्ण या अनुचित गुणवत्ता, हैंडलिंग, स्थापना, संचालन, उपयोग और रखरखाव के लिए उत्तरदायी नहीं है! उचित सुरक्षा के लिए, हमेशा मान्य OEM निर्देशों का पालन करें।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
6
नैनोलिब वास्तुकला
नैनोलिब की मॉड्यूलर सॉफ्टवेयर संरचना आपको एक सख्त पूर्व-निर्मित कोर के आसपास स्वतंत्र रूप से अनुकूलन योग्य मोटर नियंत्रक / फील्डबस फ़ंक्शन की व्यवस्था करने देती है। नैनोलिब में निम्नलिखित मॉड्यूल शामिल हैं:
उपयोगकर्ता इंटरफ़ेस (एपीआई)
नैनोलिब कोर
इंटरफ़ेस और सहायक कक्षाएं जो लाइब्रेरीज़ जो
संचार पुस्तकालय फील्डबस-विशिष्ट पुस्तकालय जो
आपके नियंत्रक तक पहुंच आपको एपीआई कार्यक्षमता को लागू करने के लिए नैनोलिब के बीच इंटरफेस करती है
ओडी (ऑब्जेक्ट डिक्शनरी)
बस पुस्तकालयों के साथ बातचीत करें।
कोर और बस हार्डवेयर.
नैनोलिब कोर फ़ंक्शन पर आधारित-
राष्ट्रीयताएं.
3.1 उपयोगकर्ता इंटरफ़ेस
उपयोगकर्ता इंटरफ़ेस में हेडर इंटरफ़ेस शामिल है fileआप नियंत्रक पैरामीटर तक पहुँचने के लिए उपयोग कर सकते हैं। क्लासेस / फ़ंक्शन संदर्भ में वर्णित उपयोगकर्ता इंटरफ़ेस क्लासेस आपको यह करने की अनुमति देते हैं:
हार्डवेयर (फील्डबस एडाप्टर) और कंट्रोलर डिवाइस दोनों से कनेक्ट करें। कंट्रोलर पैरामीटर पढ़ने/लिखने के लिए डिवाइस के OD तक पहुँचें।
3.2 नैनोलिब कोर
नैनोलिब कोर आयात लाइब्रेरी nanolib.lib के साथ आता है। यह उपयोगकर्ता इंटरफ़ेस कार्यक्षमता को लागू करता है और इसके लिए जिम्मेदार है:
संचार लाइब्रेरीज़ को लोड करना और प्रबंधित करना। NanoLibAccessor में उपयोगकर्ता इंटरफ़ेस कार्यक्षमताएँ प्रदान करना। यह संचार प्रवेश बिंदु de-
यह उन कार्यों का एक सेट निर्धारित करता है जिन्हें आप नैनोलिब कोर और संचार लाइब्रेरी पर निष्पादित कर सकते हैं।
3.3 संचार पुस्तकालय
nanotec.services.nanolib.dll (आपके वैकल्पिक प्लग एंड ड्राइव स्टूडियो के लिए उपयोगी) के अतिरिक्त, NanoLib निम्नलिखित संचार लाइब्रेरी प्रदान करता है:
nanolibm_canopen.dll nanolibm_modbus.dll
nanolibm_ethercat.dll nanolibm_restful-api.dll
nanolibm_usbmmsc.dll nanolibm_profinet.dll
सभी लाइब्रेरीज़ कोर और कंट्रोलर के बीच एक हार्डवेयर एब्स्ट्रेक्शन लेयर रखती हैं। कोर उन्हें स्टार्टअप पर निर्दिष्ट प्रोजेक्ट फ़ोल्डर से लोड करता है और संबंधित प्रोटोकॉल द्वारा कंट्रोलर के साथ संचार स्थापित करने के लिए उनका उपयोग करता है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
7
शुरू करना
अपने ऑपरेटिंग सिस्टम के लिए नैनोलिब को कैसे सेटअप करें और आवश्यकतानुसार हार्डवेयर को कैसे कनेक्ट करें, यह पढ़ें।
4.1 अपना सिस्टम तैयार करें
एडाप्टर ड्राइवर स्थापित करने से पहले, अपने पीसी को ऑपरेटिंग सिस्टम के साथ पहले तैयार करें। अपने विंडोज ओएस के साथ पीसी को तैयार करने के लिए, C++ एक्सटेंशन के साथ MS Visual Studio स्थापित करें। Linux Bash द्वारा make और gcc स्थापित करने के लिए, sudo apt install build-essentials को कॉल करें। फिर NanoLib का उपयोग करने वाले एप्लिकेशन के लिए CAP_NET_ADMIN, CAP_NET_RAW, और CAP_SYS_NICE क्षमताओं को सक्षम करें: 1. sudo setcap 'cap_net_admin,cap_net_raw,cap_sys_nice+eip' को कॉल करें
नाम>. 2. उसके बाद ही, अपने एडाप्टर ड्राइवर स्थापित करें।
4.2 विंडोज के लिए Ixxat एडाप्टर ड्राइवर स्थापित करें
केवल उचित ड्राइवर इंस्टॉलेशन के बाद, आप Ixxat के USB-to-CAN V2 एडाप्टर का उपयोग कर सकते हैं। वर्चुअल कॉम्पॉर्ट (VCP) को सक्रिय करने के तरीके जानने के लिए USB ड्राइव के उत्पाद मैनुअल को पढ़ें। 1. विंडोज के लिए Ixxat के VCI 4 ड्राइवर को डाउनलोड और इंस्टॉल करें www.ixxat.com2. Ixxat के USB-to-CAN V2 कॉम्पैक्ट एडाप्टर को USB के माध्यम से PC से कनेक्ट करें। 3. डिवाइस मैनेजर द्वारा: जाँच करें कि क्या ड्राइवर और एडाप्टर दोनों विधिवत इंस्टॉल/पहचाने गए हैं।
4.3 विंडोज के लिए पीक एडाप्टर ड्राइवर स्थापित करें
उचित ड्राइवर इंस्टॉलेशन के बाद ही, आप पीक के PCAN-USB एडाप्टर का उपयोग कर सकते हैं। वर्चुअल कॉम्पॉर्ट (VCP) को सक्रिय करने के तरीके जानने के लिए USB ड्राइव के उत्पाद मैनुअल को पढ़ें। 1. विंडोज डिवाइस ड्राइवर सेटअप (= डिवाइस ड्राइवर, टूल और के साथ इंस्टॉलेशन पैकेज) डाउनलोड करें और इंस्टॉल करें
एपीआई) से http://www.peak-system.com2. पीक के PCAN-USB एडाप्टर को USB के माध्यम से PC से कनेक्ट करें। 3. डिवाइस मैनेजर द्वारा: जाँच करें कि क्या ड्राइवर और एडाप्टर दोनों विधिवत स्थापित/पहचाने गए हैं।
4.4 Linux के लिए Ixxat एडाप्टर ड्राइवर स्थापित करें
केवल उचित ड्राइवर इंस्टॉलेशन के बाद, आप Ixxat के USB-to-CAN V2 एडाप्टर का उपयोग कर सकते हैं। नोट: अन्य समर्थित एडाप्टर को sudo chmod +777/dev/ttyACM* (* डिवाइस नंबर) द्वारा आपकी अनुमति की आवश्यकता होती है। वर्चुअल कॉम्पॉर्ट (VCP) को सक्रिय करने के तरीके के बारे में जानने के लिए USB ड्राइव के उत्पाद मैनुअल को पढ़ें। 1. ECI ड्राइवर और डेमो एप्लिकेशन के लिए आवश्यक सॉफ़्टवेयर इंस्टॉल करें:
sudo apt-get update apt-get install libusb-1.0-0-dev libusb-0.1-4 libc6 libstdc++6 libgcc1 buildessential
2. www.ixxat.com से ECI-for-Linux ड्राइवर डाउनलोड करें। इसे इस प्रकार अनज़िप करें:
eci_driver_linux_amd64.zip अनज़िप करें
3. ड्राइवर को इस प्रकार स्थापित करें:
cd /EciLinux_amd/src/KernelModule sudo make install-usb
4. डेमो एप्लिकेशन को संकलित और प्रारंभ करके सफल ड्राइवर इंस्टॉलेशन की जांच करें:
cd /EciLinux_amd/src/EciDemos/ sudo make cd /EciLinux_amd/bin/release/ ./LinuxEciDemo
संस्करण: doc 1.4.2 / NanoLib 1.3.0
8
4 आरंभ करना
4.5 लिनक्स के लिए पीक एडाप्टर ड्राइवर स्थापित करें
केवल उचित ड्राइवर स्थापना के बाद, आप पीक के PCAN-USB एडाप्टर का उपयोग कर सकते हैं। नोट: अन्य समर्थित एडाप्टर को sudo chmod +777/dev/ttyACM* (* डिवाइस नंबर) द्वारा आपकी अनुमति की आवश्यकता होती है। वर्चुअल कॉम्पॉर्ट (VCP) को सक्रिय करने के लिए USB ड्राइव के उत्पाद मैनुअल को पढ़ें। 1. जांचें कि क्या आपके लिनक्स में कर्नेल हेडर हैं: ls /usr/src/linux-headers-`uname -r`। यदि नहीं, तो इंस्टॉल करें
उन्हें: sudo apt-get install linux-headers-`uname -r` 2. अब, libpopt-dev पैकेट स्थापित करें: sudo apt-get install libpopt-dev 3. www.peak-system.com से आवश्यक ड्राइवर पैकेज (peak-linux-driver-xxx.tar.gz) डाउनलोड करें। 4. इसे अनपैक करने के लिए, उपयोग करें: tar xzfpeak-linux-driver-xxx.tar.gz 5. अनपैक किए गए फ़ोल्डर में: ड्राइवर, PCAN बेस लाइब्रेरी, आदि को संकलित और स्थापित करें: make all
sudo make install 6. फ़ंक्शन की जांच करने के लिए, PCAN-USB एडाप्टर को प्लग करें।
क) कर्नेल मॉड्यूल की जाँच करें:
lsmod | grep pcan b) … और साझा लाइब्रेरी:
एलएस -l /usr/lib/libpcan*
नोट: यदि USB3 समस्या हो तो USB2 पोर्ट का उपयोग करें।
4.6 अपना हार्डवेयर कनेक्ट करें
नैनोलिब परियोजना को चलाने में सक्षम होने के लिए, अपने एडाप्टर का उपयोग करके पीसी से एक संगत नैनोटेक नियंत्रक को कनेक्ट करें। 1. एक उपयुक्त केबल द्वारा, अपने एडाप्टर को नियंत्रक से कनेक्ट करें। 2. एडाप्टर डेटा शीट के अनुसार एडाप्टर को पीसी से कनेक्ट करें। 3. उपयुक्त बिजली आपूर्ति का उपयोग करके नियंत्रक को चालू करें। 4. यदि आवश्यक हो, तो उत्पाद मैनुअल में दिए गए निर्देशों के अनुसार नैनोटेक नियंत्रक की संचार सेटिंग्स को बदलें।
4.7 नैनोलिब लोड करें
त्वरित और आसान बुनियादी बातों के साथ पहली शुरुआत के लिए, आप हमारे पूर्व का उपयोग कर सकते हैं (लेकिन नहीं करना चाहिए)ample परियोजना। 1. अपने क्षेत्र के आधार पर: हमारे से NanoLib डाउनलोड करें webEMEA / APAC या अमेरिका के लिए साइट। 2. पैकेज को अनज़िप करें files / फ़ोल्डर्स पर जाएँ और एक विकल्प चुनें: त्वरित और आसान मूल बातों के लिए: ex शुरू करना देखेंample प्रोजेक्ट। Windows में उन्नत अनुकूलन के लिए: अपना स्वयं का Windows प्रोजेक्ट बनाना देखें। Linux में उन्नत अनुकूलन के लिए: अपना स्वयं का Linux प्रोजेक्ट बनाना देखें।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
9
पूर्व शुरू करनाampले प्रोजेक्ट
नैनोलिब विधिवत लोड होने के साथ, एक्सampयह प्रोजेक्ट आपको नैनोटेक कंट्रोलर के साथ नैनोलिब के उपयोग के बारे में बताता है। नोट: प्रत्येक चरण के लिए, दिए गए उदाहरण में टिप्पणियाँ दी गई हैंampले कोड उपयोग किए गए कार्यों की व्याख्या करता है।ample परियोजना में शामिल हैं: `*_functions_exampले.*' files, जिसमें NanoLib इंटरफ़ेस फ़ंक्शन के लिए कार्यान्वयन शामिल हैं `*_callback_exampले.*' files, जिसमें विभिन्न कॉलबैक (स्कैन, डेटा और) के लिए कार्यान्वयन शामिल हैं
लॉगिंग) `menu_*.*' file, जिसमें मेनू लॉजिक और कोड शामिल हैampले.* file, जो मुख्य प्रोग्राम है, मेनू बनाता है और सभी प्रयुक्त पैरामीटर्स को आरंभीकृत करता हैampler_exampले.* file, जिसमें पूर्व शामिल हैampएस के लिए ले कार्यान्वयनampअधिक उपयोग. आप अधिक उदाहरण पा सकते हैंampnanotec.com पर नॉलेज बेस में विभिन्न ऑपरेशन मोड के लिए कुछ मोशन कमांड के साथ लेस। सभी विंडोज या लिनक्स में उपयोग करने योग्य हैं।
विज़ुअल स्टूडियो के साथ विंडोज़ में 1. Ex खोलेंampएल.एस.एल.एन.ई file. 2. एक्स खोलेंample.cpp. 3. ex को संकलित करें और चलाएँampकोड
लिनक्स में बैश के माध्यम से 1. स्रोत को अनज़िप करें file, अनज़िप्ड सामग्री वाले फ़ोल्डर पर जाएँ। file पूर्व के लिएampले है
example.cpp. 2. बैश में, कॉल करें:
a. साझा ऑब्जेक्ट की प्रतिलिपि बनाने और ldconfig को कॉल करने के लिए “sudo make install”। b. परीक्षण निष्पादन योग्य बनाने के लिए “make all”। 3. bin फ़ोल्डर में एक निष्पादन योग्य ex होता हैample file. bash द्वारा: आउटपुट फ़ोल्डर पर जाएं और ./ex टाइप करेंampयदि कोई त्रुटि नहीं होती है, तो आपके साझा किए गए ऑब्जेक्ट अब विधिवत इंस्टॉल हो गए हैं, और आपकी लाइब्रेरी उपयोग के लिए तैयार है। यदि त्रुटि ./ex पढ़ती हैample: साझा लाइब्रेरीज़ लोड करते समय त्रुटि: libnanolib.so: साझा ऑब्जेक्ट नहीं खोला जा सकता file: ऐसा कुछ नही file या निर्देशिका, साझा ऑब्जेक्ट की स्थापना विफल रही। इस मामले में, अगले चरणों का पालन करें। 4. /usr/local/lib के भीतर एक नया फ़ोल्डर बनाएँ (व्यवस्थापक अधिकारों की आवश्यकता है)। बैश में, इस प्रकार टाइप करें:
सुडो mkdir /usr/local/lib/nanotec
5. ज़िप फ़ाइल से सभी साझा ऑब्जेक्ट कॉपी करें file's lib फ़ोल्डर:
./lib/*.so /usr/local/lib/nanotec/ स्थापित करें
6. लक्ष्य फ़ोल्डर की सामग्री की जाँच करें:
ls -al /usr/स्थानीय/lib/nanotec/
इसमें साझा ऑब्जेक्ट की सूची होनी चाहिए files को lib फ़ोल्डर से निकालें। 7. इस फ़ोल्डर पर ldconfig चलाएँ:
सुडो ldconfig /usr/local/lib/nanotec/
भूतपूर्वample को CLI एप्लीकेशन के रूप में कार्यान्वित किया जाता है और यह एक मेनू इंटरफ़ेस प्रदान करता है। मेनू प्रविष्टियाँ संदर्भ आधारित हैं और संदर्भ स्थिति के आधार पर सक्षम या अक्षम की जाएंगी। वे आपको नियंत्रक को संभालने के लिए विशिष्ट वर्कफ़्लो का पालन करते हुए विभिन्न लाइब्रेरी फ़ंक्शन चुनने और निष्पादित करने की संभावना प्रदान करते हैं: 1. कनेक्टेड हार्डवेयर (एडेप्टर) के लिए पीसी की जाँच करें और उन्हें सूचीबद्ध करें। 2. एडाप्टर से कनेक्शन स्थापित करें। 3. कनेक्टेड कंट्रोलर डिवाइस के लिए बस को स्कैन करें। 4. डिवाइस से कनेक्ट करें।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
10
5 एक्स की शुरुआतampले प्रोजेक्ट
5. लाइब्रेरी के एक या अधिक कार्यों का परीक्षण करें: नियंत्रक के ऑब्जेक्ट शब्दकोष से/में पढ़ें/लिखें, फर्मवेयर अपडेट करें, नैनोजे प्रोग्राम अपलोड करें और चलाएं, मोटर को चलाएं और उसे ट्यून करें, लॉगिंग/लॉगिंग को कॉन्फ़िगर करें और उसका उपयोग करेंampलेर।
6. कनेक्शन बंद करें, पहले डिवाइस का, फिर एडाप्टर का।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
11
अपना स्वयं का विंडोज प्रोजेक्ट बनाना
नैनोलिब का उपयोग करने के लिए अपना स्वयं का विंडोज प्रोजेक्ट बनाएं, संकलित करें और चलाएं।
6.1 नैनोलिब आयात करें
नैनोलिब हेडर आयात करें fileएमएस विजुअल स्टूडियो के माध्यम से s और लाइब्रेरीज़।
1. Visual Studio खोलें। 2. नया प्रोजेक्ट बनाएँ > कंसोल ऐप C++ > अगला: प्रोजेक्ट प्रकार चुनें। 3. अपने प्रोजेक्ट को नाम दें (यहाँ: NanolibTest) ताकि सॉल्यूशन एक्सप्लोरर में प्रोजेक्ट फ़ोल्डर बनाया जा सके। 4. समाप्त चुनें। 5. विंडो खोलें file explorer पर जाएँ और नए बनाए गए प्रोजेक्ट फ़ोल्डर पर जाएँ। 6. दो नए फ़ोल्डर बनाएँ, inc और lib। 7. NanoLib पैकेज फ़ोल्डर खोलें। 8. वहाँ से: हेडर कॉपी करें files को include फ़ोल्डर से अपने प्रोजेक्ट फ़ोल्डर inc और सभी .lib और .dll में ले जाएँ
files को अपने नए प्रोजेक्ट फ़ोल्डर lib में ले जाएँ। 9. अपने प्रोजेक्ट फ़ोल्डर की उचित संरचना की जाँच करें, उदाहरण के लिएampपर:
उचित संरचना के लिए ect फ़ोल्डर:
. NanolibTest inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result_od_entry.hpp lib nanolibm_canopen.dll nanolib.dll … nanolib.lib NanolibTest.cpp NanolibTest.vcxproj NanolibTest.vcxproj.filters NanolibTest.vcxproj.user NanolibTest.sln
6.2 अपना प्रोजेक्ट कॉन्फ़िगर करें
नैनोलिब प्रोजेक्ट सेट अप करने के लिए MS Visual Studio में सॉल्यूशन एक्सप्लोरर का उपयोग करें। नोट: सही नैनोलिब ऑपरेशन के लिए, Visual C++ प्रोजेक्ट सेटिंग्स में रिलीज़ (डीबग नहीं!) कॉन्फ़िगरेशन चुनें; फिर C++ रीडिस्ट्रिब्यूटेबल्स के VC रनटाइम के साथ प्रोजेक्ट बनाएँ और लिंक करें [2022]।
1. समाधान एक्सप्लोरर में: अपने प्रोजेक्ट फ़ोल्डर पर जाएँ (यहाँ: NanolibTest)। 2. संदर्भ मेनू खोलने के लिए फ़ोल्डर पर सह-क्लिक करें। 3. गुण चुनें। 4. सभी कॉन्फ़िगरेशन और सभी प्लेटफ़ॉर्म सक्रिय करें। 5. C/C++ चुनें और अतिरिक्त सम्मिलित निर्देशिकाएँ पर जाएँ। 6. डालें: $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) 7. लिंकर चुनें और अतिरिक्त लाइब्रेरी निर्देशिकाएँ पर जाएँ। 8. डालें: $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) 9. लिंकर बढ़ाएँ और इनपुट चुनें। 10. अतिरिक्त निर्भरताएँ पर जाएँ और डालें: nanolib.lib;%(AdditionalDependencies) 11. OK के ज़रिए पुष्टि करें।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
12
6 अपना स्वयं का विंडोज प्रोजेक्ट बनाना
12.कॉन्फ़िगरेशन > C++ > भाषा > भाषा मानक > ISO C++17 मानक पर जाएं और भाषा मानक को C++17 (/std:c++17) पर सेट करें।
6.3 अपना प्रोजेक्ट बनाएं
MS Visual Studio में अपना NanoLib प्रोजेक्ट बनाएँ। 1. मुख्य *.cpp खोलें file (यहाँ: nanolib_example.cpp) पर जाएँ और यदि आवश्यक हो तो कोड संपादित करें। 2. बिल्ड > कॉन्फ़िगरेशन मैनेजर चुनें। 3. सक्रिय समाधान प्लेटफ़ॉर्म को x64 में बदलें। 4. बंद करके पुष्टि करें। 5. बिल्ड > बिल्ड समाधान चुनें। 6. कोई त्रुटि नहीं? जाँचें कि क्या आपका संकलन आउटपुट विधिवत रिपोर्ट करता है:
1>—— सफ़ाई शुरू हुई: प्रोजेक्ट: नैनोलिबटेस्ट, कॉन्फ़िगरेशन: डीबग x64 —–========== सफ़ाई: 1 सफल, 0 असफल, 0 छोड़ा गया ==========
संस्करण: doc 1.4.2 / NanoLib 1.3.0
13
7 अपना खुद का लिनक्स प्रोजेक्ट बनाना
7 अपना खुद का लिनक्स प्रोजेक्ट बनाना
NanoLib का उपयोग करने के लिए अपना खुद का Linux प्रोजेक्ट बनाएं, संकलित करें और चलाएँ। 1. अनज़िप्ड NanoLib इंस्टॉलेशन किट में: खोलें /nanotec_nanolib. 2. tar.gz में सभी साझा ऑब्जेक्ट खोजें file. 3. एक विकल्प चुनें: प्रत्येक लाइब्रेरी को मेक के साथ स्थापित करेंfile या हाथ से.
7.1 मेक के साथ साझा ऑब्जेक्ट्स स्थापित करेंfile
उपयोग करेंfile लिनक्स बैश के साथ सभी डिफ़ॉल्ट *.so को स्वचालित रूप से इंस्टॉल करने के लिए file1. बैश के माध्यम से: मेक वाले फ़ोल्डर पर जाएँfile. 2. साझा की गई वस्तुओं को इस प्रकार कॉपी करें:
sudo make install 3. पुष्टि करें:
एलडीकॉन्फिग
7.2 साझा ऑब्जेक्ट्स को हाथ से स्थापित करें
सभी *.so को स्थापित करने के लिए Bash का उपयोग करें fileNanoLib के s को मैन्युअल रूप से बनाएँ। 1. Bash के माध्यम से: /usr/local/lib के भीतर एक नया फ़ोल्डर बनाएँ। 2. व्यवस्थापक अधिकार आवश्यक हैं! टाइप करें:
sudo mkdir /usr/local/lib/nanotec 3. अनज़िप्ड इंस्टॉलेशन पैकेज फ़ोल्डर में बदलें। 4. lib फ़ोल्डर से सभी साझा ऑब्जेक्ट को इस प्रकार कॉपी करें:
./nanotec_nanolib/lib/*.so /usr/local/lib/nanotec/ स्थापित करें 5. लक्ष्य फ़ोल्डर की सामग्री की जाँच करें:
ls -al /usr/local/lib/nanotec/ 6. जाँच करें कि lib फ़ोल्डर से सभी साझा ऑब्जेक्ट सूचीबद्ध हैं या नहीं। 7. इस फ़ोल्डर पर ldconfig चलाएँ:
सुडो ldconfig /usr/local/lib/nanotec/
7.3 अपना प्रोजेक्ट बनाएं
अपने साझा ऑब्जेक्ट्स को स्थापित करने के बाद: अपने Linux NanoLib के लिए एक नया प्रोजेक्ट बनाएँ। 1. Bash के माध्यम से: एक नया प्रोजेक्ट फ़ोल्डर बनाएँ (यहाँ: NanoLibTest) इसके माध्यम से:
mkdir नैनोलिबटेस्ट सीडी नैनोलिबटेस्ट
2. हेडर कॉपी करें files को एक सम्मिलित फ़ोल्डर में (यहाँ: inc) इस प्रकार से: mkdir inc cp / FILE IS>/nanotec_nanolib/inc/*.hpp inc
3. एक मुख्य बनाएं file (NanoLibTest.cpp) के माध्यम से: #include “accessor_factory.hpp” #include
संस्करण: doc 1.4.2 / NanoLib 1.3.0
14
7 अपना खुद का लिनक्स प्रोजेक्ट बनाना
int मुख्य(){ nlc::NanoLibAccessor *accessor = getNanoLibAccessor();
nlc::ResultBusHwIds परिणाम = accessor->listAvailableBusHardware();
यदि(परिणाम.hasError()) { std::cout << परिणाम.getError() << std::endl; }
अन्यथा{ std::cout << “सफलता” << std::endl; }
एक्सेसर हटाएँ; 0 लौटाएँ; }
4. उचित संरचना के लिए अपने प्रोजेक्ट फ़ोल्डर की जाँच करें:
. नैनोलिबटेस्ट
inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result.hpp NanoLibTest.cpp
7.4 अपनी परियोजना संकलित करें और उसका परीक्षण करें
अपने Linux NanoLib को Bash के माध्यम से उपयोग के लिए तैयार करें।
1. बैश के माध्यम से: मुख्य संकलित करें file के जरिए:
g++ -वॉल -वेक्स्ट्रा -पेडैंटिक -I./inc -c नैनोलिबटेस्ट.cpp -o नैनोलिबटेस्ट
2. निष्पादनयोग्य फ़ाइलों को एक साथ लिंक करें:
g++ -Wall -Wextra -pedantic -I./inc -o टेस्ट NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
3. परीक्षण कार्यक्रम को इस प्रकार चलाएं:
।/परीक्षा
4. जांचें कि क्या आपका बैश विधिवत रिपोर्ट करता है:
सफलता
संस्करण: doc 1.4.2 / NanoLib 1.3.0
15
8 कक्षाएं / फ़ंक्शन संदर्भ
8 कक्षाएं / फ़ंक्शन संदर्भ
यहाँ नैनोलिब के उपयोगकर्ता इंटरफ़ेस क्लासेस और उनके सदस्य फ़ंक्शन की सूची देखें। फ़ंक्शन के सामान्य विवरण में संक्षिप्त परिचय, फ़ंक्शन परिभाषा और पैरामीटर / रिटर्न सूची शामिल होती है:
ExampleFunction () आपको संक्षेप में बताता है कि फ़ंक्शन क्या करता है।
आभासी शून्य nlc::NanoLibAccessor::ExampleFunction (Param_a const & param_a, Param_b const & param_B)
पैरामीटर param_a param_b
परिणाम शून्य लौटाता है
यदि आवश्यक हो तो अतिरिक्त टिप्पणी। यदि आवश्यक हो तो अतिरिक्त टिप्पणी।
8.1 नैनोलिबएक्सेसर
इंटरफ़ेस क्लास का उपयोग नैनोलिब में प्रवेश बिंदु के रूप में किया जाता है। एक सामान्य वर्कफ़्लो इस तरह दिखता है:
1. NanoLibAccessor.listAvailableBusHardware () के साथ हार्डवेयर के लिए स्कैनिंग करके शुरू करें। 2. BusHardwareOptions () के साथ संचार सेटिंग्स सेट करें। 3. NanoLibAccessor.openBusHardwareWithProtocol () के साथ हार्डवेयर कनेक्शन खोलें। 4. NanoLibAccessor.scanDevices () के साथ जुड़े उपकरणों के लिए बस को स्कैन करें। 5. NanoLibAccessor.addDevice () के साथ एक डिवाइस जोड़ें। 6. NanoLibAccessor.connectDevice () के साथ डिवाइस से कनेक्ट करें। 7. ऑपरेशन खत्म करने के बाद, NanoLibAccessor.disconnectDevice () के साथ डिवाइस को डिस्कनेक्ट करें। 8. NanoLibAccessor.removeDevice () के साथ डिवाइस को हटाएँ। 9. NanoLibAccessor.closeBusHardware () के साथ हार्डवेयर कनेक्शन को बंद करें।
NanoLibAccessor में निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन हैं:
listAvailableBusHardware () उपलब्ध फील्डबस हार्डवेयर को सूचीबद्ध करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultBusHwIds nlc::NanoLibAccessor::listAvailableBusHardware ()
ResultBusHwIds लौटाता है
एक फ़ील्डबस आईडी सरणी प्रदान करता है.
openBusHardwareWithProtocol () बस हार्डवेयर को कनेक्ट करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (BusHardwareId const & busHwId, BusHardwareOptions const & busHwOpt)
पैरामीटर busHwId busHwOpt
परिणाम शून्य लौटाता है
खोलने के लिए फ़ील्डबस निर्दिष्ट करता है। फ़ील्डबस खोलने के विकल्प निर्दिष्ट करता है। पुष्टि करता है कि कोई शून्य फ़ंक्शन चलाया गया है।
isBusHardwareOpen () इस फ़ंक्शन का उपयोग यह जाँचने के लिए करें कि आपका फ़ील्डबस हार्डवेयर कनेक्शन खुला है या नहीं।
वर्चुअल ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (const BusHardwareId & busHwId, const BusHardwareOptions & busHwOpt)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
16
8 कक्षाएं / फ़ंक्शन संदर्भ
पैरामीटर BusHardwareId true लौटाता है
असत्य
प्रत्येक फ़ील्डबस को खोलने के लिए निर्दिष्ट करता है। हार्डवेयर खुला है। हार्डवेयर बंद है।
getProtocolSpecificAccessor () प्रोटोकॉल-विशिष्ट एक्सेसर ऑब्जेक्ट प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::getProtocolSpecificAccessor (BusHardwareId const & busHwId)
पैरामीटर busHwId ResultVoid लौटाता है
एक्सेसर प्राप्त करने के लिए फ़ील्डबस निर्दिष्ट करता है। पुष्टि करता है कि void फ़ंक्शन चलाया गया है।
getProfinetDCP () Profinet DCP इंटरफ़ेस का संदर्भ वापस करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ProfinetDCP और getProfinetDCP ()
ProfinetDCP लौटाता है
जाताamplerInterface () s का संदर्भ प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करेंampलेर इंटरफ़ेस.
आभासी एसamplerइंटरफ़ेस और getSampलेरइंटरफ़ेस ()
रिटर्न एसamplerइंटरफ़ेस
एस को संदर्भित करता हैampler इंटरफ़ेस वर्ग.
setBusState () बस-प्रोटोकॉल-विशिष्ट स्थिति सेट करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & state)
पैरामीटर busHwId स्थिति
परिणाम शून्य लौटाता है
खोलने के लिए फ़ील्डबस निर्दिष्ट करता है। स्ट्रिंग मान के रूप में बस-विशिष्ट स्थिति निर्दिष्ट करता है। पुष्टि करता है कि शून्य फ़ंक्शन चलाया गया है।
scanDevices () नेटवर्क में डिवाइसों को स्कैन करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultDeviceIds nlc::NanoLibAccessor::scanDevices (const BusHardwareId & busHwId, NlcScanBusCallback* कॉलबैक)
पैरामीटर busHwId कॉलबैक
ResultDeviceIds IOError लौटाता है
स्कैन करने के लिए फ़ील्डबस निर्दिष्ट करता है। NlcScanBusCallback प्रगति ट्रेसर। डिवाइस आईडी सरणी प्रदान करता है। सूचित करता है कि कोई डिवाइस नहीं मिली है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
17
8 कक्षाएं / फ़ंक्शन संदर्भ
डिवाइस जोडे ()
इस फ़ंक्शन का उपयोग deviceId द्वारा वर्णित बस डिवाइस को NanoLib की आंतरिक डिवाइस सूची में जोड़ने के लिए, तथा उसके लिए deviceHandle लौटाने के लिए करें।
वर्चुअल ResultDeviceHandle nlc::NanoLibAccessor::addDevice (DeviceId const & deviceId)
पैरामीटर deviceId ResultDeviceHandle लौटाता है
सूची में जोड़ने के लिए डिवाइस निर्दिष्ट करता है। डिवाइस हैंडल डिलीवर करता है।
connectDevice () डिवाइसहैंडल द्वारा डिवाइस को कनेक्ट करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::connectDevice (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल रिटर्न रिजल्टवॉयड
आईओत्रुटि
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस से कनेक्ट होता है। पुष्टि करता है कि शून्य फ़ंक्शन चलाया गया है। सूचित करता है कि कोई डिवाइस नहीं मिली है।
getDeviceName () डिवाइसहैंडल द्वारा डिवाइस का नाम प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultString nlc::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultString लौटाता है
निर्दिष्ट करता है कि NanoLib किस बस डिवाइस के लिए नाम प्राप्त करता है। डिवाइस नामों को स्ट्रिंग के रूप में वितरित करता है।
getDeviceProductCode () डिवाइसहैंडल द्वारा डिवाइस का उत्पाद कोड प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultInt nlc::NanoLibAccessor::getDeviceProductCode (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultInt लौटाता है
यह निर्दिष्ट करता है कि NanoLib किस बस डिवाइस के लिए उत्पाद कोड प्राप्त करता है। उत्पाद कोड को पूर्णांक के रूप में वितरित करता है।
getDeviceVendorId () डिवाइसहैंडल द्वारा डिवाइस विक्रेता आईडी प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultInt nlc::NanoLibAccessor::getDeviceVendorId (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultInt लौटाता है
संसाधन अनुपलब्ध
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए विक्रेता आईडी प्राप्त करता है। विक्रेता आईडी को पूर्णांक के रूप में वितरित करता है। सूचित करता है कि कोई डेटा नहीं मिला है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
18
8 कक्षाएं / फ़ंक्शन संदर्भ
getDeviceId () NanoLib आंतरिक सूची से किसी विशिष्ट डिवाइस की आईडी प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultDeviceId nlc::NanoLibAccessor::getDeviceId (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultDeviceId लौटाता है
निर्दिष्ट करता है कि NanoLib किस बस डिवाइस के लिए डिवाइस ID प्राप्त करता है। डिवाइस ID प्रदान करता है।
getDeviceIds () NanoLib आंतरिक सूची से सभी डिवाइसों की आईडी प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultDeviceIds nlc::NanoLibAccessor::getDeviceIds ()
ResultDeviceIds लौटाता है
डिवाइस आईडी सूची प्रदान करता है.
getDeviceUid () डिवाइसहैंडल द्वारा डिवाइस की विशिष्ट आईडी (96 बिट / 12 बाइट्स) प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultArrayByte लौटाता है
संसाधन अनुपलब्ध
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए अद्वितीय आईडी प्राप्त करता है। बाइट सरणी के रूप में अद्वितीय आईडी प्रदान करता है। सूचित करता है कि कोई डेटा नहीं मिला है।
getDeviceSerialNumber () डिवाइसहैंडल द्वारा डिवाइस का सीरियल नंबर प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultString NanolibAccessor::getDeviceSerialNumber (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultString लौटाता है
संसाधन अनुपलब्ध
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए सीरियल नंबर प्राप्त करता है। सीरियल नंबर को स्ट्रिंग के रूप में डिलीवर करता है। सूचित करता है कि कोई डेटा नहीं मिला है।
getDeviceHardwareGroup () डिवाइसहैंडल द्वारा बस डिवाइस के हार्डवेयर समूह को प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareGroup (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultInt लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए हार्डवेयर समूह प्राप्त करता है।
हार्डवेयर समूहों को पूर्णांक के रूप में वितरित करता है।
getDeviceHardwareVersion () डिवाइसहैंडल द्वारा बस डिवाइस का हार्डवेयर संस्करण प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareVersion (DeviceHandle const deviceHandle)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
19
8 कक्षाएं / फ़ंक्शन संदर्भ
पैरामीटर डिवाइसहैंडल
रिटर्न
परिणामस्ट्रिंग संसाधनअनुपलब्ध
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए हार्डवेयर संस्करण प्राप्त करता है। डिवाइस नामों को स्ट्रिंग के रूप में वितरित करता है। सूचित करता है कि कोई डेटा नहीं मिला है।
getDeviceFirmwareBuildId () डिवाइसहैंडल द्वारा बस डिवाइस की फर्मवेयर बिल्ड आईडी प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultDeviceId nlc::NanoLibAccessor::getDeviceFirmwareBuildId (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultString लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए फर्मवेयर बिल्ड आईडी प्राप्त करता है।
डिवाइस नाम को स्ट्रिंग के रूप में वितरित करता है.
getDeviceBootloaderVersion () डिवाइसहैंडल द्वारा बस डिवाइस के बूटलोडर संस्करण को प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultInt nlc::NanoLibAccessor::getDeviceBootloaderVersion (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल
रिटर्न
परिणामपूर्णसंसाधनअनुपलब्ध
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए बूटलोडर संस्करण प्राप्त करता है। बूटलोडर संस्करणों को पूर्णांक के रूप में वितरित करता है। सूचित करता है कि कोई डेटा नहीं मिला है।
getDeviceBootloaderBuildId () डिवाइसहैंडल द्वारा बस डिवाइस के बूटलोडर बिल्ड आईडी प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultDeviceId nlc::NanoLibAccessor:: (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल ResultString लौटाता है
यह निर्दिष्ट करता है कि NanoLib किस बस डिवाइस के लिए बूटलोडर बिल्ड ID प्राप्त करता है।
डिवाइस नाम को स्ट्रिंग के रूप में वितरित करता है.
rebootDevice () डिवाइसहैंडल द्वारा डिवाइस को रीबूट करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::rebootDevice (const DeviceHandle deviceHandle)
पैरामीटर डिवाइसहैंडल रिटर्न रिजल्टवॉयड
रीबूट करने के लिए फ़ील्डबस निर्दिष्ट करता है। पुष्टि करता है कि void फ़ंक्शन चलाया गया है।
getDeviceState () डिवाइस-प्रोटोकॉल-विशिष्ट स्थिति प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultString nlc::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए स्थिति प्राप्त करता है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
20
8 कक्षाएं / फ़ंक्शन संदर्भ
ResultString लौटाता है
डिवाइस नाम को स्ट्रिंग के रूप में वितरित करता है.
setDeviceState () डिवाइस-प्रोटोकॉल-विशिष्ट स्थिति सेट करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::setDeviceState (const DeviceHandle deviceHandle, const std::string & state)
पैरामीटर डिवाइसहैंडल स्थिति
परिणाम शून्य लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए स्थिति निर्धारित करता है। स्ट्रिंग मान के रूप में बस-विशिष्ट स्थिति निर्दिष्ट करता है। पुष्टि करता है कि शून्य फ़ंक्शन चलाया गया है।
getConnectionState ()
डिवाइसहैंडल (= डिस्कनेक्टेड, कनेक्टेड, कनेक्टेडबूटलोडर) द्वारा किसी विशिष्ट डिवाइस की अंतिम ज्ञात कनेक्शन स्थिति प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें
वर्चुअल ResultConnectionState nlc::NanoLibAccessor::getConnectionState (DeviceHandle const deviceHandle)
पैरामीटर डिवाइस हैंडल रिटर्न रिजल्ट कनेक्शन स्टेट
निर्दिष्ट करता है कि NanoLib किस बस डिवाइस के लिए कनेक्शन स्थिति प्राप्त करता है।
एक कनेक्शन स्थिति प्रदान करता है (= डिस्कनेक्टेड, कनेक्टेड, कनेक्टेडबूटलोडर).
चेककनेक्शनस्टेट ()
केवल तभी जब अंतिम ज्ञात स्थिति डिस्कनेक्टेड न हो: डिवाइसहैंडल द्वारा किसी विशिष्ट डिवाइस की कनेक्शन स्थिति की जांच करने और संभवतः उसे अपडेट करने के लिए तथा कई मोड-विशिष्ट परिचालनों का परीक्षण करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultConnectionState nlc::NanoLibAccessor::checkConnectionState (DeviceHandle const deviceHandle)
पैरामीटर डिवाइस हैंडल रिटर्न रिजल्ट कनेक्शन स्टेट
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस के लिए कनेक्शन स्थिति की जांच करता है।
एक कनेक्शन स्थिति प्रदान करता है (= डिस्कनेक्ट नहीं)।
असाइनऑब्जेक्टडिक्शनरी () डिवाइसहैंडल को स्वयं एक ऑब्जेक्ट डिक्शनरी (OD) असाइन करने के लिए इस मैनुअल फ़ंक्शन का उपयोग करें।
वर्चुअल ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)
पैरामीटर डिवाइसहैंडल ऑब्जेक्टडिक्शनरी
ResultObjectDictionary लौटाता है
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस को OD असाइन करता है। ऑब्जेक्ट डिक्शनरी के गुण दिखाता है।
ऑटोअसाइनऑब्जेक्टडिक्शनरी ()
इस स्वचालितता का उपयोग करके NanoLib को डिवाइसहैंडल को ऑब्जेक्ट डिक्शनरी (OD) असाइन करने दें। उपयुक्त OD को खोजने और लोड करने पर, NanoLib स्वचालित रूप से इसे डिवाइस को असाइन कर देता है। नोट: यदि ऑब्जेक्ट लाइब्रेरी में पहले से ही कोई संगत OD लोड है, तो NanoLib सबमिट की गई निर्देशिका को स्कैन किए बिना स्वचालित रूप से इसका उपयोग करेगा।
वर्चुअल ResultObjectDictionary nlc::NanoLibAccessor::autoAssignObjectDictionary (DeviceHandle const deviceHandle, const std::string & dictionariesLocationPath)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
21
8 कक्षाएं / फ़ंक्शन संदर्भ
पैरामीटर डिवाइसहैंडल
रिटर्न
शब्दकोशस्थानपथपरिणामऑब्जेक्टशब्दकोश
निर्दिष्ट करता है कि किस बस डिवाइस के लिए नैनोलिब स्वचालित रूप से उपयुक्त OD के लिए स्कैन करेगा। OD निर्देशिका के लिए पथ निर्दिष्ट करता है। ऑब्जेक्ट डिक्शनरी के गुण दिखाता है।
getAssignedऑब्जेक्टडिक्शनरी ()
डिवाइसहैंडल द्वारा डिवाइस को निर्दिष्ट ऑब्जेक्ट डिक्शनरी प्राप्त करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (DeviceHandle const डिवाइस
सँभालना)
पैरामीटर डिवाइसहैंडल रिटर्न रिजल्टऑब्जेक्टडिक्शनरी
निर्दिष्ट करता है कि NanoLib किस बस डिवाइस के लिए निर्दिष्ट OD प्राप्त करता है। ऑब्जेक्ट डिक्शनरी के गुण दिखाता है।
getObjectDictionaryLibrary () यह फ़ंक्शन एक OdLibrary संदर्भ लौटाता है।
वर्चुअल OdLibrary& nlc::NanoLibAccessor::getObjectDictionaryLibrary ()
OdLibrary& लौटाता है
संपूर्ण OD लाइब्रेरी और उसके ऑब्जेक्ट शब्दकोशों को खोलता है।
setLoggingLevel () आवश्यक लॉग विवरण (और लॉग) सेट करने के लिए इस फ़ंक्शन का उपयोग करें file आकार). डिफ़ॉल्ट स्तर जानकारी है.
वर्चुअल void nlc::NanoLibAccessor::setLoggingLevel (LogLevel स्तर)
पैरामीटर स्तर
निम्नलिखित लॉग विवरण संभव हैं:
0 = ट्रेस 1 = डीबग 2 = जानकारी 3 = चेतावनी 4 = त्रुटि 5 = गंभीर 6 = बंद
निम्नतम स्तर (सबसे बड़ा लॉग file); किसी भी संभव विवरण को लॉग करता है, साथ ही सॉफ्टवेयर स्टार्ट/स्टॉप को भी लॉग करता है। डिबग जानकारी को लॉग करता है (= अंतरिम परिणाम, भेजी या प्राप्त की गई सामग्री, आदि) डिफ़ॉल्ट स्तर; सूचनात्मक संदेशों को लॉग करता है। ऐसी समस्याओं को लॉग करता है जो घटित हुई थीं लेकिन वर्तमान एल्गोरिदम को नहीं रोकेंगी। केवल गंभीर समस्या को लॉग करता है जिसने एल्गोरिदम को रोक दिया। उच्चतम स्तर (सबसे छोटा लॉग file); लॉगिंग बंद कर देता है; आगे कोई लॉगिंग नहीं होती। कोई लॉगिंग नहीं होती।
सेटलॉगिंगकॉलबैक ()
इस फ़ंक्शन का उपयोग उस कॉलबैक के लिए लॉगिंग कॉलबैक पॉइंटर और लॉग मॉड्यूल (= लाइब्रेरी) सेट करने के लिए करें (लॉगर के लिए नहीं)।
वर्चुअल void nlc::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* कॉलबैक, const nlc::LogModule & logModule)
पैरामीटर * कॉलबैक लॉगमॉड्यूल
कॉलबैक पॉइंटर सेट करता है। कॉलबैक (लॉगर नहीं!) को आपकी लाइब्रेरी में ट्यून करता है।
0 = नैनोलिबकोर 1 = नैनोलिबकैनोपन 2 = नैनोलिबमोडबस 3 = नैनोलिबइथरकैट
केवल NanoLib के कोर के लिए कॉलबैक सक्रिय करता है। केवल CANopen कॉलबैक सक्रिय करता है। केवल Modbus कॉलबैक सक्रिय करता है। केवल EtherCAT कॉलबैक सक्रिय करता है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
22
8 कक्षाएं / फ़ंक्शन संदर्भ
4 = नैनोलिबरेस्ट 5 = नैनोलिबयूएसबी
REST-only कॉलबैक सक्रिय करता है। USB-only कॉलबैक सक्रिय करता है।
unsetLoggingCallback () लॉगिंग कॉलबैक पॉइंटर को रद्द करने के लिए इस फ़ंक्शन का उपयोग करें।
आभासी शून्य nlc::NanoLibAccessor::unsetLoggingCallback ()
readNumber () ऑब्जेक्ट शब्दकोश से संख्यात्मक मान पढ़ने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultInt nlc::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)
पैरामीटर डिवाइसहैंडल odIndex
ResultInt लौटाता है
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस से पढ़ता है। पढ़ने के लिए (उप-) इंडेक्स निर्दिष्ट करता है। एक अव्याख्यात्मक संख्यात्मक मान प्रदान करता है (हस्ताक्षरित, अहस्ताक्षरित, फिक्स16.16 बिट मान हो सकते हैं)।
readNumberArray () ऑब्जेक्ट शब्दकोश से संख्यात्मक सरणियाँ पढ़ने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t index)
पैरामीटर डिवाइसहैंडल इंडेक्स
ResultArrayInt लौटाता है
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस से पढ़ता है। सरणी ऑब्जेक्ट इंडेक्स। एक पूर्णांक सरणी प्रदान करता है।
readBytes () ऑब्जेक्ट डिक्शनरी से मनमाने बाइट्स (डोमेन ऑब्जेक्ट डेटा) पढ़ने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)
पैरामीटर डिवाइसहैंडल odIndex
ResultArrayByte लौटाता है
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस से पढ़ता है। पढ़ने के लिए (उप-) इंडेक्स निर्दिष्ट करता है। एक बाइट सरणी प्रदान करता है।
readString () ऑब्जेक्ट निर्देशिका से स्ट्रिंग्स पढ़ने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultString nlc::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)
पैरामीटर डिवाइसहैंडल odIndex
ResultString लौटाता है
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस से पढ़ता है। पढ़ने के लिए (उप-) इंडेक्स निर्दिष्ट करता है। डिवाइस नामों को स्ट्रिंग के रूप में वितरित करता है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
23
8 कक्षाएं / फ़ंक्शन संदर्भ
writeNumber () इस फ़ंक्शन का उपयोग ऑब्जेक्ट निर्देशिका में संख्यात्मक मान लिखने के लिए करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::writeNumber (const DeviceHandle deviceHandle, int64_t value, const OdIndex odIndex, unsigned int bitLength)
पैरामीटर डिवाइसहैंडल मान odIndex बिटलेंथ
परिणाम शून्य लौटाता है
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस पर लिखता है। असंबद्ध मान (हस्ताक्षरित, अहस्ताक्षरित, फिक्स 16.16 हो सकता है)। पढ़ने के लिए (उप-) इंडेक्स निर्दिष्ट करता है। बिट में लंबाई। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
writeBytes () इस फ़ंक्शन का उपयोग ऑब्जेक्ट निर्देशिका में मनमाने बाइट्स (डोमेन ऑब्जेक्ट डेटा) लिखने के लिए करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::writeBytes (const DeviceHandle deviceHandle, const std::vector & डेटा, const OdIndex odIndex)
पैरामीटर डिवाइसहैंडल डेटा odIndex
परिणाम शून्य लौटाता है
निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस पर लिखता है। बाइट वेक्टर / सरणी। पढ़ने के लिए (उप-) इंडेक्स निर्दिष्ट करता है। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
अपलोडफर्मवेयर ()
अपने नियंत्रक फर्मवेयर को अद्यतन करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadFirmware (const DeviceHandle deviceHandle, const std::vector & fwData, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल fwData NlcDataTransferCallback
परिणाम शून्य लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस को अपडेट करता है। फर्मवेयर डेटा युक्त सरणी। एक डेटा प्रगति ट्रेसर। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
अपलोडफर्मवेयरसेFile ()
अपने नियंत्रक फर्मवेयर को अपलोड करके अपडेट करने के लिए इस फ़ंक्शन का उपयोग करें file.
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadFirmwareFromFile (const डिवाइसहैंडल डिवाइसहैंडल, const std::string और निरपेक्षFileपथ, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल निरपेक्षFileपथ NlcDataTransferCallback
परिणाम शून्य लौटाता है
निर्दिष्ट करता है कि नैनोलिब कौन सी बस डिवाइस अपडेट करता है। file फ़र्मवेयर डेटा (std::string) युक्त। एक डेटा प्रगति ट्रेसर। पुष्टि करता है कि एक void फ़ंक्शन चलाया गया है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
24
8 कक्षाएं / फ़ंक्शन संदर्भ
अपलोडबूटलोडर ()
अपने नियंत्रक बूटलोडर को अद्यतन करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadBootloader (const DeviceHandle deviceHandle, const std::vector & btData, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल btData NlcDataTransferCallback
परिणाम शून्य लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस को अपडेट करता है। बूटलोडर डेटा युक्त सरणी। एक डेटा प्रगति ट्रेसर। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
अपलोडबूटलोडरसेFile ()
अपने नियंत्रक बूटलोडर को अपलोड करके अपडेट करने के लिए इस फ़ंक्शन का उपयोग करें file.
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadBootloaderFromFile (const डिवाइसहैंडल डिवाइसहैंडल, const std::string और बूटलोडरएब्सोल्यूटFileपथ, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल बूटलोडरएब्सोल्यूटFileपथ NlcDataTransferCallback
परिणाम शून्य लौटाता है
निर्दिष्ट करता है कि नैनोलिब कौन सी बस डिवाइस अपडेट करता है। file बूटलोडर डेटा (std::string) युक्त। एक डेटा प्रगति ट्रेसर। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
अपलोडबूटलोडरफर्मवेयर ()
अपने नियंत्रक बूटलोडर और फ़र्मवेयर को अद्यतन करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmware (const DeviceHandle deviceHandle, const std::vector & btData, const std::vector & fwData, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल btData fwData NlcDataTransferCallback
परिणाम शून्य लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस को अपडेट करता है। बूटलोडर डेटा युक्त सरणी। फर्मवेयर डेटा युक्त सरणी। एक डेटा प्रगति ट्रेसर। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
अपलोडबूटलोडरफर्मवेयरसेFile ()
अपने नियंत्रक बूटलोडर और फर्मवेयर को अपलोड करके अपडेट करने के लिए इस फ़ंक्शन का उपयोग करें files.
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmwareFromFile (const डिवाइसहैंडल डिवाइसहैंडल, const std::string और बूटलोडरएब्सोल्यूटFileपथ, const std::string और निरपेक्षFileपथ, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल बूटलोडरएब्सोल्यूटFileपथ निरपेक्षFileपथ NlcDataTransferCallback
परिणाम शून्य लौटाता है
निर्दिष्ट करता है कि नैनोलिब कौन सी बस डिवाइस अपडेट करता है। file बूटलोडर डेटा (std::string) युक्त। file फ़र्मवेयर डेटा (uint8_t) युक्त। एक डेटा प्रगति ट्रेसर। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
25
8 कक्षाएं / फ़ंक्शन संदर्भ
अपलोडनैनोजे ()
अपने नियंत्रक पर NanoJ प्रोग्राम को अपडेट करने के लिए इस सार्वजनिक फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadNanoJ (DeviceHandle const deviceHandle, std::vector const & vmmData, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल vmmData NlcDataTransferCallback
परिणाम शून्य लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस पर अपलोड करता है। नैनोजे डेटा युक्त सरणी। एक डेटा प्रगति अनुरेखक। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
अपलोडNanoJFromFile ()
NanoJ प्रोग्राम को अपने कंट्रोलर पर अपलोड करने के लिए इस सार्वजनिक फ़ंक्शन का उपयोग करें file.
वर्चुअल ResultVoid nlc::NanoLibAccessor::uploadNanoJFromFile (const डिवाइसहैंडल डिवाइसहैंडल, const std::string और निरपेक्षFileपथ, NlcDataTransferCallback* कॉलबैक)
पैरामीटर डिवाइसहैंडल निरपेक्षFileपथ NlcDataTransferCallback
परिणाम शून्य लौटाता है
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस पर अपलोड करता है। file नैनोजे डेटा (std::string) युक्त। एक डेटा प्रगति अनुरेखक। पुष्टि करता है कि एक शून्य फ़ंक्शन चलाया गया है।
डिस्कनेक्टडिवाइस () डिवाइसहैंडल द्वारा अपने डिवाइस को डिस्कनेक्ट करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::disconnectDevice (DeviceHandle const deviceHandle)
पैरामीटर डिवाइसहैंडल रिटर्न रिजल्टवॉयड
यह निर्दिष्ट करता है कि नैनोलिब किस बस डिवाइस से डिस्कनेक्ट होता है। पुष्टि करता है कि शून्य फ़ंक्शन चलाया गया है।
removeDevice () अपने डिवाइस को NanoLib की आंतरिक डिवाइस सूची से हटाने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::removeDevice (const DeviceHandle deviceHandle)
पैरामीटर डिवाइसहैंडल रिटर्न रिजल्टवॉयड
यह निर्दिष्ट करता है कि कौन सी बस डिवाइस NanoLib हटाता है। पुष्टि करता है कि void फ़ंक्शन चलाया गया है।
closeBusHardware () अपने फील्डबस हार्डवेयर से डिस्कनेक्ट करने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid nlc::NanoLibAccessor::closeBusHardware (BusHardwareId const & busHwId)
पैरामीटर busHwId ResultVoid लौटाता है
वह फ़ील्डबस निर्दिष्ट करता है जिससे डिस्कनेक्ट करना है। पुष्टि करता है कि void फ़ंक्शन चलाया गया है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
26
8 कक्षाएं / फ़ंक्शन संदर्भ
8.2 बसहार्डवेयरआईडी
इस क्लास का उपयोग बस हार्डवेयर को एक-एक करके पहचानने या अलग-अलग बस हार्डवेयर को एक-दूसरे से अलग करने के लिए करें। यह क्लास (बिना सेटर फ़ंक्शन के जो निर्माण से अपरिवर्तनीय हो) निम्न के बारे में भी जानकारी रखती है:
हार्डवेयर (= एडाप्टर नाम, नेटवर्क एडाप्टर आदि) उपयोग करने के लिए प्रोटोकॉल (= मोडबस टीसीपी, कैनओपन आदि) बस हार्डवेयर विनिर्देशक (= सीरियल पोर्ट नाम, मैक फ्रेंडली नाम
पता आदि)
BusHardwareId () [1/3] कंस्ट्रक्टर जो एक नया बस हार्डवेयर आईडी ऑब्जेक्ट बनाता है.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & name_)
पैरामीटर बसहार्डवेयर_ प्रोटोकॉल_ हार्डवेयरस्पेसिफायर_ अतिरिक्तहार्डवेयरस्पेसिफायर_ नाम_
हार्डवेयर प्रकार (= ZK-USB-CAN-1 आदि)। बस संचार प्रोटोकॉल (= CANopen आदि)। हार्डवेयर का विनिर्देशक (= COM3 आदि)। हार्डवेयर का अतिरिक्त विनिर्देशक (जैसे, USB स्थान जानकारी)। एक अनुकूल नाम (= AdapterName (Port) आदि)।
BusHardwareId () [2/3] कंस्ट्रक्टर जो एक नया बस हार्डवेयर आईडी ऑब्जेक्ट बनाता है, जिसमें अतिरिक्त हार्डवेयर स्पेसिफायर का विकल्प होता है।
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & extraHardwareSpecifier_, std::string const & name_)
पैरामीटर बसहार्डवेयर_ प्रोटोकॉल_ हार्डवेयरस्पेसिफायर_ अतिरिक्तहार्डवेयरस्पेसिफायर_ नाम_
हार्डवेयर प्रकार (= ZK-USB-CAN-1 आदि)। बस संचार प्रोटोकॉल (= CANopen आदि)। हार्डवेयर का विनिर्देशक (= COM3 आदि)। हार्डवेयर का अतिरिक्त विनिर्देशक (जैसे, USB स्थान जानकारी)। एक अनुकूल नाम (= AdapterName (Port) आदि)।
BusHardwareId () [3/3] कंस्ट्रक्टर जो मौजूदा busHardwareId की प्रतिलिपि बनाता है.
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
पैरामीटर busHardwareId
कॉपी करने के लिए बस हार्डवेयर आईडी का नाम बताता है।
equals () नए बस हार्डवेयर आईडी की तुलना मौजूदा बस हार्डवेयर आईडी से करता है।
bool nlc::BusHardwareId::equals (BusHardwareId const और अन्य) const
पैरामीटर अन्य सत्य लौटाता है
उसी वर्ग का दूसरा ऑब्जेक्ट। यदि दोनों सभी मानों में समान हैं।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
27
8 कक्षाएं / फ़ंक्शन संदर्भ
असत्य
यदि मान भिन्न हों.
getBusHardware () बस हार्डवेयर स्ट्रिंग को पढ़ता है।
std::string nlc::BusHardwareId::getBusHardware () const
स्ट्रिंग लौटाता है
getHardwareSpecifier () बस हार्डवेयर के विनिर्देशक स्ट्रिंग (= नेटवर्क नाम आदि) को पढ़ता है।
std::string nlc::BusHardwareId::getHardwareSpecifier () const
स्ट्रिंग लौटाता है
getExtraHardwareSpecifier () बस अतिरिक्त हार्डवेयर के विनिर्देशक स्ट्रिंग (= MAC पता आदि) को पढ़ता है।
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () स्थिरांक
स्ट्रिंग लौटाता है
getName () बस हार्डवेयर का अनुकूल नाम पढ़ता है।
std::string nlc::BusHardwareId::getName () const
स्ट्रिंग लौटाता है
getProtocol () बस प्रोटोकॉल स्ट्रिंग को पढ़ता है।
std::string nlc::BusHardwareId::getProtocol () const
स्ट्रिंग लौटाता है
toString () बस हार्डवेयर आईडी को एक स्ट्रिंग के रूप में लौटाता है।
std::स्ट्रिंग nlc::BusHardwareId::toString () const
स्ट्रिंग लौटाता है
8.3 बसहार्डवेयरविकल्प
इस वर्ग में, स्ट्रिंग्स की कुंजी-मान सूची में, बस हार्डवेयर को खोलने के लिए आवश्यक सभी विकल्प खोजें।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
28
8 कक्षाएं / फ़ंक्शन संदर्भ
BusHardwareOptions () [1/2] एक नया बस हार्डवेयर विकल्प ऑब्जेक्ट का निर्माण करता है.
nlc::BusHardwareOptions::BusHardwareOptions () कुंजी-मान जोड़े जोड़ने के लिए addOption () फ़ंक्शन का उपयोग करें।
BusHardwareOptions () [2/2] कुंजी-मूल्य मैप के साथ पहले से ही एक नया बस हार्डवेयर विकल्प ऑब्जेक्ट का निर्माण करता है।
nlc::BusHardwareOptions::BusHardwareOptions (std::map कॉन्स्ट और विकल्प)
पैरामीटर विकल्प
बस हार्डवेयर के संचालन हेतु विकल्पों सहित एक मानचित्र।
addOption () अतिरिक्त कुंजियाँ और मान बनाता है.
शून्य nlc::BusHardwareOptions::addOption (std::string const & key, std::string const & value)
पैरामीटर कुंजी मान
Exampले: BAUD_RATE_OPTIONS_NAME, bus_hw_options_ डिफ़ॉल्ट देखें
Exampले: BAUD_RATE_1000K, bus_hw_options_defaults देखें
equals () BusHardwareOptions की तुलना मौजूदा से करता है।
bool nlc::BusHardwareOptions::equals (BusHardwareOptions const & अन्य) const
पैरामीटर अन्य सत्य लौटाता है
असत्य
उसी क्लास का दूसरा ऑब्जेक्ट। यदि दूसरे ऑब्जेक्ट में सभी विकल्प एक जैसे हैं। यदि दूसरे ऑब्जेक्ट में अलग-अलग कुंजियाँ या मान हैं।
getOptions () सभी जोड़े गए कुंजी-मान युग्मों को पढ़ता है।
std::मानचित्र nlc::BusHardwareOptions::getOptions () const
स्ट्रिंग मैप लौटाता है
toString () सभी कुंजियों / मानों को एक स्ट्रिंग के रूप में लौटाता है।
std::स्ट्रिंग nlc::BusHardwareId::toString () const
स्ट्रिंग लौटाता है
8.4 BusHwOptionsडिफ़ॉल्ट
इस डिफ़ॉल्ट कॉन्फ़िगरेशन विकल्प वर्ग में निम्नलिखित सार्वजनिक विशेषताएँ हैं:
संस्करण: doc 1.4.2 / NanoLib 1.3.0
29
8 कक्षाएं / फ़ंक्शन संदर्भ
const CanBus const Serial const RESTfulBus const EtherCATBus
canBus = CanBus () सीरियल = सीरियल () रेस्टफुलबस = RESTfulBus() ईथरकैटबस = ईथरकैटबस()
8.5 कैनबॉडरेट
संरचना जिसमें निम्नलिखित सार्वजनिक विशेषताओं में CAN बस बॉडरेट शामिल हैं:
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string
BAUD_RATE_1000K = “1000k” BAUD_RATE_800K = “800k” BAUD_RATE_500K = “500k” BAUD_RATE_250K = “250k” BAUD_RATE_125K = “125k” BAUD_RATE_100K = “100k” BAUD_RATE_50K = “50k” BAUD_RATE_20K = “20k” BAUD_RATE_10K = “10k” BAUD_RATE_5K = “5k”
8.6 कैनबस
निम्नलिखित सार्वजनिक विशेषताओं के साथ डिफ़ॉल्ट कॉन्फ़िगरेशन विकल्प वर्ग:
const std::string const CanBaudRate const Ixxat
BAUD_RATE_OPTIONS_NAME = “कैन एडॉप्टर बॉड दर” baudRate = CanBaudRate () ixxat = Ixxat ()
8.7 कैनओपनएनएमटीसर्विस
NMT सेवा के लिए, इस संरचना में निम्नलिखित सार्वजनिक विशेषताओं में स्ट्रिंग मानों के रूप में CANopen NMT स्थितियाँ शामिल हैं:
const std::string const std::string const std::string const std::string const std::string
प्रारंभ = “प्रारंभ” रोकें = “रोकें” पूर्व_संचालन = “पूर्व_संचालन” रीसेट = “रीसेट” रीसेट_संचार = “रीसेट_संचार”
8.8 कैनओपनएनएमटीस्टेट
इस संरचना में निम्नलिखित सार्वजनिक विशेषताओं में स्ट्रिंग मानों के रूप में CANopen NMT स्थितियाँ शामिल हैं:
const std::string const std::string const std::string const std::string const std::string
रोका गया = “रोका गया” पूर्व_संचालन = “पूर्व_संचालन” परिचालन = “संचालन” आरंभीकरण = “आरंभीकरण” अज्ञात = “अज्ञात”
8.9 ईथरकैटबस संरचना
इस संरचना में निम्नलिखित सार्वजनिक विशेषताओं में EtherCAT संचार कॉन्फ़िगरेशन विकल्प शामिल हैं:
संस्करण: doc 1.4.2 / NanoLib 1.3.0
30
8 कक्षाएं / फ़ंक्शन संदर्भ
const std::string NETWORK_FIRMWARE_STATE_OP- नेटवर्क स्थिति को फर्मवेयर मोड के रूप में माना जाता है। स्वीकार्य
TION_NAME = “नेटवर्क फ़र्मवेयर स्थिति”
मान (डिफ़ॉल्ट = PRE_OPERATIONAL):
EtherCATState::PRE_OPERATIONAL EtherCATState::SAFE_OPERATIONAL EtherCATState::OPERATIONAL
const std::string DEFAULT_NETWORK_FIRMWARE_ STATE = “PRE_OPERATIONAL”
const std::string EXCLUSIVE_LOCK_TIMEOUT_OP- अनन्य लॉक प्राप्त करने के लिए मिलीसेकंड में समय समाप्ति
TION_NAME = “साझा लॉक टाइमआउट”
नेटवर्क (डिफ़ॉल्ट = 500 एमएस).
const unsigned int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = “500”
const std::string SHARED_LOCK_TIMEOUT_OPTION_ साझा लॉक प्राप्त करने के लिए मिलीसेकंड में समय समाप्ति
नाम = “साझा लॉक टाइमआउट”
नेटवर्क (डिफ़ॉल्ट = 250 एमएस).
const अहस्ताक्षरित int DEFAULT_SHARED_LOCK_TIMEOUT = “250”
const std::string READ_TIMEOUT_OPTION_NAME = पढ़ने के ऑपरेशन के लिए मिलीसेकंड में टाइमआउट (डिफ़ॉल्ट
"समय से पढने की समय सीमा समाप्त"
= 700 एमएस).
const अहस्ताक्षरित int DEFAULT_READ_TIMEOUT = “700”
const std::string WRITE_TIMEOUT_OPTION_NAME = लेखन ऑपरेशन के लिए मिलीसेकंड में टाइमआउट (डिफ़ॉल्ट
“लेखन समय समाप्त”
= 200 एमएस).
const अहस्ताक्षरित int DEFAULT_WRITE_TIMEOUT = “200”
const std::string READ_WRITE_ATTEMPTS_OPTION_ अधिकतम पढ़ने या लिखने का प्रयास (गैर-शून्य मान
नाम = “पढ़ें/लिखें प्रयास”
केवल; डिफ़ॉल्ट = 5).
const अहस्ताक्षरित int DEFAULT_READ_WRITE_ATTEMPTS = “5”
const std::string CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME = “नेटवर्क स्थिति प्रयास बदलें”
नेटवर्क स्थिति को बदलने के प्रयासों की अधिकतम संख्या (केवल गैर-शून्य मान; डिफ़ॉल्ट = 10).
const अहस्ताक्षरित int DEFAULT_CHANGE_NETWORK_ STATE_ATTEMPTS = “10”
const std::string PDO_IO_ENABLED_OPTION_NAME डिजिटल इनपुट के लिए PDO प्रोसेसिंग को सक्षम या अक्षम करता है
= “पीडीओ आईओ सक्षम”
आउटपुट (“केवल सत्य” या “असत्य”; डिफ़ॉल्ट = “सत्य”)।
const std::string DEFAULT_PDO_IO_ENABLED = “सत्य”
8.10 ईथरकैटस्टेट संरचना
इस संरचना में निम्नलिखित सार्वजनिक विशेषताओं में स्ट्रिंग मानों के रूप में EtherCAT स्लेव / नेटवर्क स्थितियाँ शामिल हैं। नोट: पावर ऑन होने पर डिफ़ॉल्ट स्थिति PRE_OPERATIONAL है; NanoLib किसी गैर-रीयलटाइम ऑपरेटिंग सिस्टम में कोई विश्वसनीय “OPERATIONAL” स्थिति प्रदान नहीं कर सकता है:
const std::string const std::string const std::string const std::string const std::string const std::string
कोई नहीं = “कोई नहीं” INIT = “INIT” PRE_OPERATIONAL = “PRE_OPERATIONAL” BOOT = “BOOT” SAFE_OPERATIONAL = “SAFE_OPERATIONAL” OPERATIONAL = “OPERATIONAL”
संस्करण: doc 1.4.2 / NanoLib 1.3.0
31
8 कक्षाएं / फ़ंक्शन संदर्भ
8.11 इक्सैट
यह संरचना निम्नलिखित सार्वजनिक विशेषताओं में Ixxat usb-to-can के लिए सभी जानकारी रखती है:
const std::स्ट्रिंग
ADAPTER_BUS_NUMBER_OPTIONS_NAME = “ixxat एडाप्टर बस नंबर”
const IxxatAdapterBusNumber एडाप्टरBusNumber = IxxatAdapterBusNumber ()
8.12 IxxatAdapterBusNumber
यह संरचना निम्नलिखित सार्वजनिक विशेषताओं में Ixxat usb-to-can के लिए बस संख्या रखती है:
const std::string const std::string const std::string const std::string
BUS_NUMBER_0_DEFAULT = “0” BUS_NUMBER_1 = “1” BUS_NUMBER_2 = “2” BUS_NUMBER_3 = “3”
8.13 पीक
यह संरचना निम्नलिखित सार्वजनिक विशेषताओं में पीक usb-to-can के लिए सभी जानकारी रखती है:
const std::स्ट्रिंग
ADAPTER_BUS_NUMBER_OPTIONS_NAME = “पीक एडाप्टर बस नंबर”
const पीकएडाप्टरबसनंबर एडाप्टरबसनंबर = पीकएडाप्टरबसनंबर ()
8.14 पीकएडाप्टरबसनंबर
यह संरचना निम्नलिखित सार्वजनिक विशेषताओं में पीक usb-to-can के लिए बस संख्या रखती है:
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string
BUS_NUMBER_1_DEFAULT = std::to_string (PCAN_USBBUS1) BUS_NUMBER_2 = std::to_string (PCAN_USBBUS2) BUS_NUMBER_3 = std::to_string (PCAN_USBBUS3) BUS_NUMBER_4 = std::to_string (PCAN_USBBUS4) BUS_NUMBER_5 = std::to_string (PCAN_USBBUS5) BUS_NUMBER_6 = std::to_string (PCAN_USBBUS6) BUS_NUMBER_7 = std::to_string (PCAN_USBBUS7) BUS_NUMBER_8 = std::to_string (PCAN_USBBUS8) BUS_NUMBER_9 = std::to_string (PCAN_USBBUS9) BUS_NUMBER_10 = std::to_string (PCAN_USBBUS10) BUS_NUMBER_11 = std::to_string (PCAN_USBBUS11) BUS_NUMBER_12 = std::to_string (PCAN_USBBUS12) BUS_NUMBER_13 = std::to_string (PCAN_USBBUS13) BUS_NUMBER_14 = std::to_string (PCAN_USBBUS14) BUS_NUMBER_15 = std::to_string (PCAN_USBBUS15) BUS_NUMBER_16 = std::to_string (PCAN_USBBUS16)
8.15 डिवाइस हैंडल
यह वर्ग बस पर किसी डिवाइस को नियंत्रित करने के लिए एक हैंडल का प्रतिनिधित्व करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं।
डिवाइसहैंडल () डिवाइसहैंडल (uint32_t हैंडल)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
32
8 कक्षाएं / फ़ंक्शन संदर्भ
equals () स्वयं की तुलना किसी दिए गए डिवाइस हैंडल से करता है।
bool बराबर (डिवाइसहैंडल const अन्य) const (uint32_t हैंडल)
toString () डिवाइस हैंडल का एक स्ट्रिंग प्रतिनिधित्व लौटाता है।
std::स्ट्रिंग toString () const
get () डिवाइस हैंडल लौटाता है.
uint32_t प्राप्त करें () स्थिर
8.16 डिवाइसआईडी
बस पर उपकरणों की पहचान करने और उनमें अंतर करने के लिए इस वर्ग का उपयोग करें (निर्माण के बाद से अपरिवर्तनीय):
हार्डवेयर एडाप्टर पहचानकर्ता
डिवाइस पहचानकर्ता
विवरण
डिवाइस आईडी / विवरण मान का अर्थ बस पर निर्भर करता है। उदाहरण के लिएampले, एक CAN बस पूर्णांक आईडी का उपयोग कर सकता है।
DeviceId () [1/3] एक नई डिवाइस आईडी ऑब्जेक्ट का निर्माण करता है.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId_, unsigned int deviceId_, std::string const & description_)
पैरामीटर busHardwareId_ deviceId_ description_
बस का पहचानकर्ता। एक सूचकांक; बस के अधीन (= CANopen नोड आईडी आदि)। एक विवरण (खाली हो सकता है); बस के अधीन।
DeviceId () [2/3] विस्तारित ID विकल्पों के साथ एक नया डिवाइस ID ऑब्जेक्ट बनाता है.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId, unsigned int deviceId_, std::string const & description_ std::vector const और extraId_, std::string const और extraStringId_)
पैरामीटर busHardwareId_ deviceId_ description_ extraId_ extraStringId_
बस का पहचानकर्ता। एक सूचकांक; बस के अधीन (= CANopen नोड आईडी आदि)। एक विवरण (खाली हो सकता है); बस के अधीन। एक अतिरिक्त आईडी (खाली हो सकता है); अर्थ बस पर निर्भर करता है। अतिरिक्त स्ट्रिंग आईडी (खाली हो सकता है); अर्थ बस पर निर्भर करता है।
DeviceId () [3/3] डिवाइस आईडी ऑब्जेक्ट की एक प्रतिलिपि बनाता है.
nlc::DeviceId::DeviceId (DeviceId const &)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
33
8 कक्षाएं / फ़ंक्शन संदर्भ
पैरामीटर deviceId_
वह डिवाइस आईडी जिससे कॉपी करना है.
equals () नए ऑब्जेक्ट की तुलना मौजूदा ऑब्जेक्ट से करता है।
bool nlc::DeviceId::equals (DeviceId const और अन्य) const
बूलियन लौटाता है
getBusHardwareId () बस हार्डवेयर आईडी पढ़ता है।
बसहार्डवेयरआईडी nlc::DeviceId::getBusHardwareId () const
BusHardwareId लौटाता है
getDescription () डिवाइस विवरण पढ़ता है (संभवतः अप्रयुक्त)।
std::string nlc::DeviceId::getDescription () const
स्ट्रिंग लौटाता है
getDeviceId () डिवाइस आईडी (संभवतः अप्रयुक्त) पढ़ता है।
अहस्ताक्षरित int nlc::DeviceId::getDeviceId () const
अहस्ताक्षरित int लौटाता है
toString () ऑब्जेक्ट को स्ट्रिंग के रूप में लौटाता है।
std::स्ट्रिंग nlc::DeviceId::toString () const
स्ट्रिंग लौटाता है
getExtraId () डिवाइस की अतिरिक्त आईडी पढ़ता है (अप्रयुक्त हो सकती है)।
const std::vector &getExtraId () स्थिर
रिटर्न वेक्टर
अतिरिक्त अतिरिक्त आईडी का एक वेक्टर (खाली हो सकता है); अर्थ बस पर निर्भर करता है।
getExtraStringId () डिवाइस की अतिरिक्त स्ट्रिंग आईडी पढ़ता है (अप्रयुक्त हो सकती है)।
std::string getExtraStringId() स्थिरांक
संस्करण: doc 1.4.2 / NanoLib 1.3.0
34
8 कक्षाएं / फ़ंक्शन संदर्भ
स्ट्रिंग लौटाता है
अतिरिक्त स्ट्रिंग आईडी (रिक्त हो सकती है); अर्थ बस पर निर्भर करता है।
8.17 लॉगलेवलकनवर्टर
यह क्लास आपके लॉग स्तर को एक स्ट्रिंग के रूप में लौटाता है। static std::string toString (nlc::LogLevel logLevel)
8.18 लॉगमॉड्यूलकनवर्टर
यह क्लास आपके लाइब्रेरी-विशिष्ट लॉग modulesetLoggingLevel () को एक स्ट्रिंग के रूप में लौटाता है।
स्थिर std::स्ट्रिंग
toString (nlc::LogModule लॉगमॉड्यूल)
स्थिर std::स्ट्रिंग toString (nlc::LogModule logModule)
8.19 ऑब्जेक्ट डिक्शनरी
यह वर्ग नियंत्रक के ऑब्जेक्ट शब्दकोश का प्रतिनिधित्व करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन हैं: getDeviceHandle ()
वर्चुअल ResultDeviceHandle getDeviceHandle () const ResultDeviceHandle लौटाता है
getObject () वर्चुअल ResultObjectSubEntry getObject (OdIndex const odIndex) ResultObjectSubEntry लौटाता है
getObjectEntry () वर्चुअल ResultObjectEntry getObjectEntry (uint16_t इंडेक्स)
ResultObjectEntry लौटाता है
किसी वस्तु के गुणों के बारे में जानकारी देता है।
getXmlFileनाम () वर्चुअल ResultString getXmlFileनाम () const
ResultString लौटाता है
XML लौटाता है file नाम को एक स्ट्रिंग के रूप में लिखें.
readNumber () वर्चुअल ResultInt readNumber (OdIndex const odIndex) ResultInt लौटाता है
readNumberArray () वर्चुअल ResultArrayInt readNumberArray (uint16_t const index)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
35
8 कक्षाएं / फ़ंक्शन संदर्भ
ResultArrayInt readString () लौटाता है
वर्चुअल ResultString readString (OdIndex const odIndex) ResultString readBytes () लौटाता है वर्चुअल ResultArrayByte readBytes (OdIndex const odIndex) ResultArrayByte writeNumber () लौटाता है वर्चुअल ResultVoid writeNumber (OdIndex const odIndex, const int64_t value) ResultVoid writeBytes () लौटाता है वर्चुअल ResultVoid writeBytes (OdIndex const OdIndex, std::vector
const & data) ResultVoid लौटाता है संबंधित लिंक OdIndex
8.20 ऑब्जेक्ट एंट्री
यह वर्ग ऑब्जेक्ट शब्दकोश की ऑब्जेक्ट प्रविष्टि का प्रतिनिधित्व करता है, इसमें निम्नलिखित स्थिर संरक्षित विशेषता और सार्वजनिक सदस्य फ़ंक्शन होते हैं:
स्थिर nlc::ऑब्जेक्टसबएंट्री अमान्यऑब्जेक्ट
getName () ऑब्जेक्ट का नाम स्ट्रिंग के रूप में पढ़ता है।
वर्चुअल std::स्ट्रिंग getName () const
getPrivate () जाँचता है कि क्या ऑब्जेक्ट निजी है.
वर्चुअल bool getPrivate () const
getIndex () ऑब्जेक्ट इंडेक्स का पता पढ़ता है।
वर्चुअल uint16_t getIndex () const
संस्करण: doc 1.4.2 / NanoLib 1.3.0
36
8 कक्षाएं / फ़ंक्शन संदर्भ
getDataType () ऑब्जेक्ट का डेटा प्रकार पढ़ता है।
वर्चुअल nlc::ObjectEntryDataType getDataType () const
getObjectCode () ऑब्जेक्ट कोड पढ़ता है:
नल डेफटाइप डेफस्ट्रक्चर वार एरे रिकॉर्ड
0x00 0x05 0x06 0x07 0x08 0x09
वर्चुअल nlc::ऑब्जेक्टकोड getObjectCode () const
getObjectSaveable () जाँचता है कि क्या ऑब्जेक्ट सहेजने योग्य है और इसकी श्रेणी क्या है (अधिक विवरण के लिए उत्पाद मैनुअल देखें): एप्लिकेशन, संचार, ड्राइव, MISC_CONFIG, MODBUS_RTU, नहीं, ट्यूनिंग, ग्राहक, ईथरनेट, कैनोपेन, VERIFY1020, UNKNOWN_SAVEABLE_TYPE
वर्चुअल nlc::ObjectSaveable getObjectSaveable () const
getMaxSubIndex () इस ऑब्जेक्ट द्वारा समर्थित उपसूचकांकों की संख्या पढ़ता है।
वर्चुअल uint8_t getMaxSubIndex () const
getSubEntry () वर्चुअल nlc::ObjectSubEntry और getSubEntry (uint8_t subIndex)
ऑब्जेक्ट सबएंट्री भी देखें.
8.21 ऑब्जेक्ट सबएंट्री
यह वर्ग ऑब्जेक्ट शब्दकोश की ऑब्जेक्ट उप-प्रविष्टि (सबइंडेक्स) का प्रतिनिधित्व करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getName () ऑब्जेक्ट का नाम स्ट्रिंग के रूप में पढ़ता है।
वर्चुअल std::स्ट्रिंग getName () const
getSubIndex () उपसूचकांक का पता पढ़ता है।
वर्चुअल uint8_t getSubIndex () const
संस्करण: doc 1.4.2 / NanoLib 1.3.0
37
8 कक्षाएं / फ़ंक्शन संदर्भ
getDataType () ऑब्जेक्ट का डेटा प्रकार पढ़ता है।
वर्चुअल nlc::ObjectEntryDataType getDataType () const
getSdoAccess () जाँचता है कि क्या उपसूचकांक SDO के माध्यम से पहुँच योग्य है:
केवल पढ़ने के लिए
1
केवल लिखें
2
पढेंलिखें
3
तक पहुँच नहीं
0
वर्चुअल nlc::ObjectSdoAccessAttribute getSdoAccess () const
getPdoAccess () जाँचता है कि क्या उपसूचकांक PDO के माध्यम से पहुँच योग्य/मैप करने योग्य है:
Tx
1
Rx
2
टीएक्सआरएक्स
3
नहीं
0
वर्चुअल nlc::ObjectPdoAccessAttribute getPdoAccess () const
getBitLength () उपसूचकांक लंबाई की जाँच करता है।
वर्चुअल uint32_t getBitLength () const
getDefaultValueAsNumeric () संख्यात्मक डेटा प्रकारों के लिए उपसूचकांक का डिफ़ॉल्ट मान पढ़ता है।
वर्चुअल ResultInt getDefaultValueAsNumeric (std::string const & key) const
getDefaultValueAsString () स्ट्रिंग डेटा प्रकारों के लिए उपसूचकांक का डिफ़ॉल्ट मान पढ़ता है।
वर्चुअल ResultString getDefaultValueAsString (std::string const & key) const
getDefaultValues () उपसूचकांक के डिफ़ॉल्ट मानों को पढ़ता है।
वर्चुअल std::map getDefaultValues () स्थिर
संस्करण: doc 1.4.2 / NanoLib 1.3.0
38
8 कक्षाएं / फ़ंक्शन संदर्भ
readNumber () उपसूचकांक का संख्यात्मक वास्तविक मान पढ़ता है।
वर्चुअल ResultInt readNumber () const
readString () उपसूचकांक का स्ट्रिंग वास्तविक मान पढ़ता है।
वर्चुअल ResultString readString () const
readBytes () उपसूचकांक का वास्तविक मान बाइट्स में पढ़ता है।
वर्चुअल ResultArrayByte readBytes () const
writeNumber () उपसूचकांक में एक संख्यात्मक मान लिखता है।
वर्चुअल ResultVoid writeNumber (const int64_t मान) const
writeBytes () उपसूचकांक में बाइट्स में मान लिखता है।
वर्चुअल ResultVoid writeBytes (std::vector) const और डेटा) const
8.22 ओडीइंडेक्स
ऑब्जेक्ट डायरेक्टरी इंडेक्स / सब-इंडेक्स को लपेटने और खोजने के लिए इस क्लास (निर्माण से अपरिवर्तनीय) का उपयोग करें। डिवाइस के OD में 65535 (0xFFFF) पंक्तियाँ और 255 (0xFF) कॉलम होते हैं; असंतत पंक्तियों के बीच अंतराल के साथ। अधिक विवरण के लिए CANopen मानक और अपने उत्पाद मैनुअल देखें।
OdIndex () एक नया OdIndex ऑब्जेक्ट का निर्माण करता है.
nlc::OdIndex::OdIndex (uint16_t इंडेक्स, uint8_t सबइंडेक्स)
पैरामीटर इंडेक्स सबइंडेक्स
0 से 65535 तक (0xFFFF) सहित 0 से 255 तक (0xFF) सहित
getIndex () सूचकांक को पढ़ता है (0x0000 से 0xFFFF तक).
uint16_t nlc::OdIndex::getIndex () const
uint16_t लौटाता है
getSubindex () उप-सूचकांक पढ़ता है (0x00 से 0xFF तक)
uint8_t nlc::OdIndex::getSubIndex () const
संस्करण: doc 1.4.2 / NanoLib 1.3.0
39
8 कक्षाएं / फ़ंक्शन संदर्भ
uint8_t लौटाता है
toString () इंडेक्स और सबइंडेक्स को स्ट्रिंग के रूप में लौटाता है। डिफ़ॉल्ट स्ट्रिंग 0xIIII:0xSS इस प्रकार है:
I = 0x0000 से 0xFFFF तक सूचकांक
S = उप-सूचकांक 0x00 से 0xFF तक
std::स्ट्रिंग nlc::OdIndex::toString () const
0xIIII:0xSS लौटाता है
डिफ़ॉल्ट स्ट्रिंग प्रतिनिधित्व
8.23 ओडलाइब्रेरी
XML से ObjectDictionary क्लास के इंस्टेंस बनाने के लिए इस प्रोग्रामिंग इंटरफ़ेस का उपयोग करें। फिर आप असाइनऑब्जेक्टडिक्शनरी द्वारा, प्रत्येक इंस्टेंस को एक विशिष्ट डिवाइस से बांध सकते हैं, जो कि विशिष्ट रूप से बनाए गए पहचानकर्ता के कारण होता है। इस प्रकार बनाए गए ObjectDictionary इंस्टेंस को इंडेक्स द्वारा एक्सेस किए जाने के लिए OdLibrary ऑब्जेक्ट में संग्रहीत किया जाता है। ODLibrary क्लास ObjectDictionary आइटम को लोड करता है file या सरणी, उन्हें संग्रहीत करता है, और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getObjectDictionaryCount () वर्चुअल uint32_t getObjectDictionaryCount () const
getObjectDictionary () वर्चुअल ResultObjectDictionary getObjectDictionary (uint32_t odIndex)
ResultObjectDictionary लौटाता है
addऑब्जेक्टडिक्शनरीफ्रॉमFile ()
वर्चुअल ResultObjectDictionary addObjectDictionaryFromFile (std::string const और absoluteXmlFileपथ)
ResultObjectDictionary लौटाता है
addऑब्जेक्टडिक्शनरी ()
वर्चुअल ResultObjectDictionary addObjectDictionary (std::vector const & odXmlडेटा, const std::string &xmlFileपथ = std::string ())
ResultObjectDictionary लौटाता है
8.24 ओडीटाइप्सहेल्पर
निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन के अलावा, इस क्लास में कस्टम डेटा प्रकार शामिल हैं। नोट: अपने कस्टम डेटा प्रकारों की जाँच करने के लिए, od_types.hpp में enum क्लास ObjectEntryDataType देखें।
uintToObjectCode () अहस्ताक्षरित पूर्णांकों को ऑब्जेक्ट कोड में परिवर्तित करता है:
नल डेफटाइप
0x00 0x05
संस्करण: doc 1.4.2 / NanoLib 1.3.0
40
8 कक्षाएं / फ़ंक्शन संदर्भ
डिफ्रैक्ट वार ऐरे रिकॉर्ड
0x06 0x07 0x08 0x09
स्थिर ऑब्जेक्ट कोड uintToObjectCode (अहस्ताक्षरित int ऑब्जेक्ट कोड)
isNumericDataType () यह सूचित करता है कि डेटा प्रकार संख्यात्मक है या नहीं।
स्थिर bool isNumericDataType (ऑब्जेक्टEntryDataType डेटाटाइप)
isDefstructIndex () सूचित करता है कि कोई ऑब्जेक्ट परिभाषा संरचना सूचकांक है या नहीं।
स्टेटिक बूल isDefstructIndex (uint16_t typeNum)
isDeftypeIndex () यह सूचित करता है कि कोई ऑब्जेक्ट परिभाषा प्रकार सूचकांक है या नहीं।
स्टेटिक बूल isDeftypeIndex (uint16_t typeNum)
isComplexDataType () यह सूचित करता है कि डेटा प्रकार जटिल है या नहीं।
स्थिर bool isComplexDataType (ऑब्जेक्टEntryDataType डेटाटाइप)
uintToObjectEntryDataType () अहस्ताक्षरित पूर्णांकों को OD डेटा प्रकार में परिवर्तित करता है।
sstatic ऑब्जेक्टEntryDataType uintToObjectEntryDataType (uint16_t ऑब्जेक्टDataType)
objectEntryDataTypeToString () OD डेटा प्रकार को स्ट्रिंग में परिवर्तित करता है।
स्थिर std::स्ट्रिंग objectEntryDataTypeToString (ObjectEntryDataType odDataType)
stringToObjectEntryDatatype () यदि संभव हो तो स्ट्रिंग को OD डेटा प्रकार में परिवर्तित करता है। अन्यथा, UNKNOWN_DATATYPE लौटाता है।
स्थिर ऑब्जेक्ट एंट्रीडेटाटाइप स्ट्रिंग टू ऑब्जेक्ट एंट्रीडेटाटाइप (std::string डेटाटाइपस्ट्रिंग)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
41
8 कक्षाएं / फ़ंक्शन संदर्भ
objectEntryDataTypeBitLength () ऑब्जेक्ट प्रविष्टि डेटा प्रकार की बिट लंबाई की जानकारी देता है।
स्थिर uint32_t objectEntryDataTypeBitLength (ObjectEntryDataType const & dataType)
8.25 RESTfulBus संरचना
इस संरचना में RESTful इंटरफ़ेस (ईथरनेट पर) के लिए संचार कॉन्फ़िगरेशन विकल्प शामिल हैं। इसमें निम्नलिखित सार्वजनिक विशेषताएँ शामिल हैं:
const std::string const अहस्ताक्षरित लंबा const std::string const अहस्ताक्षरित लंबा const std::string const अहस्ताक्षरित लंबा
CONNECT_TIMEOUT_OPTION_NAME = “RESTful कनेक्ट टाइमआउट” DEFAULT_CONNECT_TIMEOUT = 200 REQUEST_TIMEOUT_OPTION_NAME = “RESTful अनुरोध टाइमआउट” DEFAULT_REQUEST_TIMEOUT = 200 RESPONSE_TIMEOUT_OPTION_NAME = “RESTful प्रतिक्रिया टाइमआउट” DEFAULT_RESPONSE_TIMEOUT = 750
8.26 प्रोफिनेटडीसीपी
लिनक्स के तहत, कॉलिंग एप्लिकेशन को CAP_NET_ADMIN और CAP_NET_RAW क्षमताओं की आवश्यकता होती है। सक्षम करने के लिए: sudo setcap 'cap_net_admin,cap_net_raw+eip' ./executable. विंडोज में, ProfinetDCP इंटरफ़ेस WinPcap (संस्करण 4.1.3 के साथ परीक्षण किया गया) या Npcap (संस्करण 1.60 और 1.30 के साथ परीक्षण किया गया) का उपयोग करता है। यह इस प्रकार गतिशील रूप से लोड की गई wpcap.dll लाइब्रेरी को निम्न क्रम में खोजता है (नोट: कोई वर्तमान Win10Pcap समर्थन नहीं):
1. Nanolib.dll निर्देशिका 2. विंडोज सिस्टम निर्देशिका SystemRoot%System32 3. Npcap स्थापना निर्देशिका SystemRoot%System32Npcap 4. पर्यावरण पथ
यह वर्ग एक प्रोफिनेट डीसीपी इंटरफ़ेस का प्रतिनिधित्व करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन हैं:
getScanTimeout () डिवाइस स्कैन टाइमआउट (डिफ़ॉल्ट = 2000 ms) के बारे में सूचित करता है।
वर्चुअल uint32_t nlc::ProfinetDCP::getScanTimeout () const
setScanTimeout () डिवाइस स्कैन टाइमआउट सेट करता है (डिफ़ॉल्ट = 2000 ms).
वर्चुअल void nlc::setScanTimeout (uint32_t timeoutMsec)
getResponseTimeout () सेटअप, रीसेट और ब्लिंक ऑपरेशन के लिए डिवाइस प्रतिक्रिया टाइमआउट की सूचना देता है (डिफ़ॉल्ट = 1000 ms)।
वर्चुअल uint32_t nlc::ProfinetDCP::getResponseTimeout () const
setResponseTimeout () सेटअप, रीसेट और ब्लिंक ऑपरेशन के लिए डिवाइस प्रतिक्रिया टाइमआउट की सूचना देता है (डिफ़ॉल्ट = 1000 ms)।
वर्चुअल void nlc::ProfinetDCP::setResponseTimeout (uint32_t timeoutMsec)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
42
8 कक्षाएं / फ़ंक्शन संदर्भ
सेवा उपलब्ध है ()
Profinet DCP सेवा उपलब्धता की जांच करने के लिए इस फ़ंक्शन का उपयोग करें।
नेटवर्क एडाप्टर वैधता / उपलब्धता Windows: WinPcap / Npcap उपलब्धता Linux: CAP_NET_ADMIN / CAP_NET_RAW क्षमताएँ
वर्चुअल रिजल्टVoid nlc::ProfinetDCP::isServiceAvailable (const BusHardwareId & BusHardwareId)
पैरामीटर BusHardwareId true लौटाता है
असत्य
जाँच करने के लिए Profinet DCP सेवा की हार्डवेयर आईडी। सेवा उपलब्ध है। सेवा अनुपलब्ध है।
scanProfinetDevices () इस फ़ंक्शन का उपयोग Profinet डिवाइस की उपस्थिति के लिए हार्डवेयर बस को स्कैन करने के लिए करें।
वर्चुअल ResultProfinetDevices स्कैनProfinetDevices (const BusHardwareId और busHardwareId)
पैरामीटर BusHardwareId रिटर्न ResultProfinetDevices
प्रत्येक फ़ील्डबस को खोलने के लिए निर्दिष्ट करता है। हार्डवेयर खुला है।
setupProfinetDevice () निम्नलिखित डिवाइस सेटिंग्स स्थापित करता है:
डिवाइस का नाम
आईपी पता
नेटवर्क मास्क
डिफ़ॉल्ट गेटवे
वर्चुअल ResultVoid nlc::setupProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice struct & profinetDevice, bool savePermanent)
resetProfinetDevice () डिवाइस को रोकता है और इसे फ़ैक्टरी डिफ़ॉल्ट पर रीसेट करता है।
वर्चुअल ResultVoid nlc::resetProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)
blinkProfinetDevice () Profinet डिवाइस को उसके Profinet LED को ब्लिंक करना शुरू करने के लिए आदेश देता है।
वर्चुअल ResultVoid nlc::blinkProfinetDevice (const BusHardwareId और busHardwareId, const ProfinetDevice और profinetDevice)
validProfinetDeviceIp () डिवाइस का IP पता जांचने के लिए इस फ़ंक्शन का उपयोग करें।
वर्चुअल ResultVoid validProfinetDeviceIp (const BusHardwareId &busHardwareId, const ProfinetDevice & profinetDevice)
पैरामीटर BusHardwareId ProfinetDevice
जाँच करने के लिए हार्डवेयर ID निर्दिष्ट करता है। मान्य करने के लिए Profinet डिवाइस निर्दिष्ट करता है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
43
8 कक्षाएं / फ़ंक्शन संदर्भ
परिणाम शून्य लौटाता है
8.27 प्रोफिनेटडिवाइस संरचना
प्रोफिनेट डिवाइस डेटा में निम्नलिखित सार्वजनिक विशेषताएं हैं:
std::string std::string std::array<uint8_t, 6>uint32_t uint32_t uint32_t
डिवाइस नाम डिवाइस विक्रेता मैक एड्रेस आईपी एड्रेस नेटमास्क डिफ़ॉल्ट गेटवे
MAC पता macAddress = {xx, xx, xx, xx, xx, xx} प्रारूप में सरणी के रूप में प्रदान किया जाता है; जबकि आईपी पता, नेटवर्क मास्क और गेटवे सभी को बड़े एंडियन हेक्स संख्याओं के रूप में व्याख्या किया जाता है, जैसे:
आईपी पता: 192.168.0.2 नेटवर्क मास्क: 255.255.0.0 गेटवे: 192.168.0.1
0xC0A80002 0xFFFF0000 0xC0A80001
8.28 परिणाम कक्षाएं
इन क्लासों के “वैकल्पिक” रिटर्न मानों का उपयोग करके जाँच करें कि फ़ंक्शन कॉल सफल हुआ या नहीं, और विफलता के कारणों का भी पता लगाएँ। सफल होने पर, hasError () फ़ंक्शन गलत रिटर्न करता है। getResult () द्वारा, आप प्रकार (ResultInt आदि) के अनुसार परिणाम मान पढ़ सकते हैं। यदि कोई कॉल विफल हो जाती है, तो आप getError () द्वारा कारण पढ़ सकते हैं।
संरक्षित विशेषताएँ
स्ट्रिंग NlcErrorCode uint32_t
errorString त्रुटि कोड exErrorCode
इसके अलावा, इस वर्ग में निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन भी हैं:
hasError () फ़ंक्शन कॉल की सफलता को पढ़ता है।
bool nlc::Result::hasError () const
रिटर्न
सत्य असत्य
कॉल विफल। मान पढ़ने के लिए getError () का उपयोग करें। कॉल सफल। मान पढ़ने के लिए getResult () का उपयोग करें।
getError () फ़ंक्शन कॉल विफल होने पर कारण पढ़ता है।
const std::string nlc::Result::getError () const
const स्ट्रिंग लौटाता है
संस्करण: doc 1.4.2 / NanoLib 1.3.0
44
8 कक्षाएं / फ़ंक्शन संदर्भ
परिणाम () निम्नलिखित फ़ंक्शन सटीक परिणाम परिभाषित करने में सहायता करते हैं:
परिणाम (std::string const & errorString_)
परिणाम (NlcErrorCode const & errCode, std::string const & errorString_)
परिणाम (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
परिणाम (परिणाम const & परिणाम)
getErrorCode () NlcErrorCode पढ़ें।
NlcErrorCode getErrorCode () स्थिरांक
getExErrorCode () uint32_t getExErrorCode () const
8.28.1 परिणाम शून्य
यदि फ़ंक्शन void लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन और संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
ResultVoid () निम्नलिखित फ़ंक्शन सटीक void परिणाम को परिभाषित करने में सहायता करते हैं:
परिणाम शून्य (std::string const &errorString_)
ResultVoid (NlcErrorCode const & errCode, std::string const & errorString_)
ResultVoid (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
परिणाम शून्य (परिणाम स्थिरांक और परिणाम)
8.28.2 परिणामइंट
यदि फ़ंक्शन पूर्णांक लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रहा तो पूर्णांक परिणाम लौटाता है।
int64_t getResult () स्थिर
int64_t लौटाता है
संस्करण: doc 1.4.2 / NanoLib 1.3.0
45
8 कक्षाएं / फ़ंक्शन संदर्भ
ResultInt () निम्नलिखित फ़ंक्शन सटीक पूर्णांक परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामइंट (int64_t परिणाम_)
ResultInt (std::string const & errorString_)
ResultInt (NlcErrorCode const & errCode, std::string const & errorString_)
परिणाम पूर्णांक (NlcErrorCode स्थिरांक और errCode, स्थिरांक uint32_t exErrCode, std::string स्थिरांक और errorString_)
ResultInt (परिणाम const और परिणाम)
8.28.3 परिणामस्ट्रिंग
यदि फ़ंक्शन स्ट्रिंग लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रही तो स्ट्रिंग परिणाम पढ़ता है।
const std::string nlc::ResultString::getResult () const
const स्ट्रिंग लौटाता है
ResultString () निम्नलिखित फ़ंक्शन सटीक स्ट्रिंग परिणाम को परिभाषित करने में सहायता करते हैं:
ResultString (std::string const & message, bool hasError_)
परिणामस्ट्रिंग (NlcErrorCode const & errCode, std::string const & errorString_)
परिणामस्ट्रिंग (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultString (परिणाम const और परिणाम)
8.28.4 परिणामअरेबाइट
यदि फ़ंक्शन बाइट ऐरे लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रही तो बाइट वेक्टर को पढ़ता है।
const std::vector nlc::ResultArrayByte::getResult () const
const वेक्टर लौटाता है
संस्करण: doc 1.4.2 / NanoLib 1.3.0
46
8 कक्षाएं / फ़ंक्शन संदर्भ
ResultArrayByte () निम्नलिखित फ़ंक्शन सटीक बाइट सरणी परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामArrayByte (std::vector const और परिणाम_)
ResultArrayByte (std::string const & errorString_)
ResultArrayByte (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayByte (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayByte (परिणाम const और परिणाम)
8.28.5 परिणामArrayInt
यदि फ़ंक्शन पूर्णांक सरणी लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रही तो पूर्णांक वेक्टर को पढ़ता है।
const std::vector nlc::ResultArrayInt::getResult () const
const वेक्टर लौटाता है
ResultArrayInt () निम्नलिखित फ़ंक्शन सटीक पूर्णांक सरणी परिणाम को परिभाषित करने में सहायता करते हैं:
ResultArrayInt(std::vector) const और परिणाम_)
ResultArrayInt (std::string const & errorString_)
ResultArrayInt (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayInt (परिणाम const और परिणाम)
8.28.6 परिणामबसएचडब्लूआईडीएस
यदि फ़ंक्शन बस हार्डवेयर आईडी सरणी लौटाता है, तो नैनोलिब आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रही तो बस-हार्डवेयर-आईडी वेक्टर को पढ़ता है।
const std::vector nlc::ResultBusHwIds::getResult () const
पैरामीटर const वेक्टर
संस्करण: doc 1.4.2 / NanoLib 1.3.0
47
8 कक्षाएं / फ़ंक्शन संदर्भ
ResultBusHwIds () निम्नलिखित फ़ंक्शन सटीक बस-हार्डवेयर-आईडी-सरणी परिणाम को परिभाषित करने में सहायता करते हैं:
ResultBusHwIds(std::vector) const और परिणाम_)
ResultBusHwIds (std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultBusHwIds (परिणाम const और परिणाम)
8.28.7 परिणामडिवाइसआईडी
यदि फ़ंक्शन डिवाइस आईडी लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रहा तो डिवाइस आईडी वेक्टर को पढ़ता है।
डिवाइसआईडी nlc::ResultDeviceId::getResult () const
const वेक्टर लौटाता है
ResultDeviceId () निम्नलिखित फ़ंक्शन सटीक डिवाइस आईडी परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामडिवाइसआईडी (डिवाइसआईडी स्थिरांक और परिणाम_)
ResultDeviceId (std::string const & errorString_)
ResultDeviceId (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceId (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string errorString_)
ResultDeviceId (परिणाम स्थिरांक और परिणाम)
8.28.8 परिणामडिवाइसआईडी
यदि फ़ंक्शन डिवाइस आईडी सरणी लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () फ़ंक्शन कॉल सफल होने पर डिवाइस आईडी वेक्टर लौटाता है।
डिवाइसआईडी nlc::ResultDeviceIds::getResult () const
const वेक्टर लौटाता है
संस्करण: doc 1.4.2 / NanoLib 1.3.0
48
8 कक्षाएं / फ़ंक्शन संदर्भ
ResultDeviceIds () निम्नलिखित फ़ंक्शन सटीक डिवाइस-आईडी-सरणी परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामडिवाइसआईडी(std::vector const और परिणाम_)
ResultDeviceIds (std::string const & errorString_)
ResultDeviceIds (NlcErrorCode const & errCode, std::string const & errorString_)
परिणामडिवाइसआईडी (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultDeviceIds (परिणाम const और परिणाम)
8.28.9 परिणामडिवाइसहैंडिल
यदि फ़ंक्शन डिवाइस हैंडल का मान लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रही तो डिवाइस हैंडल को पढ़ता है।
डिवाइसहैंडल nlc::ResultDeviceHandle::getResult () const
डिवाइसहैंडिल लौटाता है
ResultDeviceHandle () निम्नलिखित फ़ंक्शन सटीक डिवाइस हैंडल परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामडिवाइसहैंडिल (डिवाइसहैंडिल const & परिणाम_)
ResultDeviceHandle (std::string const & errorString_)
ResultDeviceHandle (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceHandle (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultDeviceHandle (परिणाम const और परिणाम)
8.28.10 रिजल्टऑब्जेक्टडिक्शनरी
यदि फ़ंक्शन किसी ऑब्जेक्ट डिक्शनरी की सामग्री लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रहा तो डिवाइस आईडी वेक्टर को पढ़ता है।
const nlc::ऑब्जेक्टडिक्शनरी और nlc::ResultObjectDictionary::getResult () const
संस्करण: doc 1.4.2 / NanoLib 1.3.0
49
8 कक्षाएं / फ़ंक्शन संदर्भ
रिटर्न
स्थिर वेक्टर
ResultObjectDictionary () निम्नलिखित फ़ंक्शन सटीक ऑब्जेक्ट शब्दकोश परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामऑब्जेक्टडिक्शनरी (nlc::ऑब्जेक्टडिक्शनरी const & result_)
ResultObjectDictionary (std::string const & errorString_)
ResultObjectDictionary (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectDictionary (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectDictionary (परिणाम const और परिणाम)
8.28.11 परिणाम कनेक्शन स्थिति
यदि फ़ंक्शन डिवाइस-कनेक्शन-स्थिति जानकारी लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रही तो डिवाइस हैंडल को पढ़ता है।
डिवाइस कनेक्शन स्टेट इन्फ़ो nlc::ResultConnectionState::getResult () const
DeviceConnectionStateInfo कनेक्टेड / डिस्कनेक्टेड / कनेक्टेडबूटलोडर लौटाता है
ResultConnectionState () निम्नलिखित फ़ंक्शन सटीक कनेक्शन स्थिति परिणाम को परिभाषित करने में सहायता करते हैं:
परिणाम कनेक्शन स्थिति (डिवाइस कनेक्शन स्थिति जानकारी स्थिरांक और परिणाम_)
परिणाम कनेक्शन स्थिति (std::string const & errorString_)
परिणाम कनेक्शन स्थिति (NlcErrorCode const & errCode, std::string const & errorString_)
परिणाम कनेक्शन स्थिति (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultConnectionState (परिणाम const और परिणाम)
8.28.12 परिणामऑब्जेक्टप्रविष्टि
यदि फ़ंक्शन ऑब्जेक्ट प्रविष्टि लौटाता है, तो NanoLib आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
संस्करण: doc 1.4.2 / NanoLib 1.3.0
50
8 कक्षाएं / फ़ंक्शन संदर्भ
getResult () फ़ंक्शन कॉल सफल होने पर डिवाइस आईडी वेक्टर लौटाता है।
nlc::ऑब्जेक्टएंट्री const& nlc::ResultObjectEntry::getResult () const
const ObjectEntry लौटाता है
ResultObjectEntry () निम्नलिखित फ़ंक्शन सटीक ऑब्जेक्ट प्रविष्टि परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामऑब्जेक्टप्रविष्टि (nlc::ऑब्जेक्टप्रविष्टि const & परिणाम_)
परिणामऑब्जेक्टप्रविष्टि (std::string const & errorString_)
ResultObjectEntry (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectEntry (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectEntry (परिणाम const और परिणाम)
8.28.13 परिणामऑब्जेक्टसबएंट्री
यदि फ़ंक्शन ऑब्जेक्ट सब-एंट्री लौटाता है, तो NanoLib आपको इस क्लास का एक इंस्टेंस भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () फ़ंक्शन कॉल सफल होने पर डिवाइस आईडी वेक्टर लौटाता है।
nlc::ObjectSubEntry const और nlc::ResultObjectSubEntry::getResult () const
const ObjectSubEntry लौटाता है
ResultObjectSubEntry () निम्नलिखित फ़ंक्शन सटीक ऑब्जेक्ट उप-प्रविष्टि परिणाम को परिभाषित करने में सहायता करते हैं:
परिणामऑब्जेक्टसबएंट्री (nlc::ऑब्जेक्टएंट्री const & result_)
ResultObjectSubEntry (std::string const & errorString_)
ResultObjectSubEntry (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectSubEntry (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectSubEntry (परिणाम const और परिणाम)
8.28.14 रिजल्टप्रोफिनेटडिवाइस
यदि फ़ंक्शन प्रोफ़िनेट डिवाइस लौटाता है, तो नैनोलिब आपको इस क्लास का एक उदाहरण भेजता है। यह क्लास परिणाम क्लास से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताएँ प्राप्त करता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
संस्करण: doc 1.4.2 / NanoLib 1.3.0
51
8 कक्षाएं / फ़ंक्शन संदर्भ
getResult () यदि फ़ंक्शन कॉल सफल रहा तो Profinet डिवाइस वेक्टर को पढ़ता है।
const std::vector & getResult () स्थिर
ResultProfinetDevices () निम्नलिखित फ़ंक्शन सटीक Profinet डिवाइस को परिभाषित करने में सहायता करते हैं।
ResultProfinetDevices (const std::vector & प्रोफिनेटडिवाइस)
ResultProfinetDevices (const परिणाम और परिणाम)
ResultProfinetDevices (const std::string &errorText, NlcErrorCode errorCode = NlcErrorCode::GeneralError, uint32_t विस्तारितErrorCode = 0)
8.28.15 परिणामampलेडाटाअर्रे
यदि फ़ंक्शन इस प्रकार लौटाता है तो NanoLib आपको इस क्लास का एक उदाहरण भेजता हैample डेटा सरणी। वर्ग परिणाम वर्ग से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताओं को विरासत में लेता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () यदि फ़ंक्शन कॉल सफल रही तो डेटा सरणी को पढ़ता है।
const std::vector <SampleData> और getResult () const
परिणामampleDataArray () निम्नलिखित फ़ंक्शन सटीक Profinet डिवाइस को परिभाषित करने में सहायता करते हैं।
परिणामampleDataArray(const std::vector <SampleData> और डेटाअरे)
परिणामampleDataArray (const std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)
परिणामampleDataArray(const परिणामSampleDataArray और अन्य)
परिणामampleDataArray (const परिणाम और परिणाम)
8.28.16 परिणामamplerराज्य
यदि फ़ंक्शन इस प्रकार लौटाता है तो NanoLib आपको इस क्लास का एक उदाहरण भेजता हैampler स्थिति.यह वर्ग परिणाम वर्ग से सार्वजनिक फ़ंक्शन / संरक्षित विशेषताओं को विरासत में लेता है और इसमें निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन होते हैं:
getResult () परिणाम पढ़ता हैampयदि फ़ंक्शन कॉल सफल रहा तो ler स्टेट वेक्टर.
SamplerState getResult () const
रिटर्न एसamplerState>
अनकॉन्फ़िगर / कॉन्फ़िगर / तैयार / चल रहा / पूर्ण / विफल / रद्द
संस्करण: doc 1.4.2 / NanoLib 1.3.0
52
8 कक्षाएं / फ़ंक्शन संदर्भ
परिणामamplerState () निम्नलिखित फ़ंक्शन सटीक s को परिभाषित करने में सहायता करते हैंampलेर राज्य.
परिणामamplerState(const एसamplerState राज्य)
परिणामamplerState (const std::string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t
विस्तारितत्रुटिकोड = 0)
परिणामamplerState(const परिणामSamplerState और अन्य)
परिणामamplerState (const परिणाम और परिणाम)
8.29 एनएलसीत्रुटि कोड
यदि कुछ गलत हो जाता है, तो परिणाम वर्ग इस गणना में सूचीबद्ध त्रुटि कोडों में से एक की रिपोर्ट करता है।
त्रुटि कोड सफल सामान्यत्रुटि बसअनुपलब्ध संचारत्रुटि प्रोटोकॉलत्रुटि
ODDoesNotExist ODInvalidAccess ODTypeMismatch OperationAborted OperationNotSupported InvalidOperation
अमान्य तर्क पहुँच अस्वीकृत संसाधन नहीं मिला संसाधन अनुपलब्ध आउटऑफ़मेमोरी टाइमआउटत्रुटि
C: श्रेणी D: विवरण R: कारण C: कोई नहीं. D: कोई त्रुटि नहीं. R: ऑपरेशन सफलतापूर्वक पूरा हुआ.
C: अनिर्दिष्ट। D: अनिर्दिष्ट त्रुटि। R: विफलता जो किसी अन्य श्रेणी में फिट नहीं होती।
C: बस। D: हार्डवेयर बस उपलब्ध नहीं है। R: बस मौजूद नहीं है, कट-ऑफ है या ख़राब है।
C: संचार। D: संचार अविश्वसनीय। R: अप्रत्याशित डेटा, गलत CRC, फ़्रेम या पैरिटी त्रुटियाँ, आदि।
C: प्रोटोकॉल। D: प्रोटोकॉल त्रुटि। R: असमर्थित प्रोटोकॉल विकल्प के बाद प्रतिक्रिया, डिवाइस रिपोर्ट असमर्थित प्रोटोकॉल, प्रोटोकॉल में त्रुटि (मान लें, SDO सेगमेंट सिंक बिट), आदि। R: असमर्थित प्रोटोकॉल (विकल्प) या प्रोटोकॉल में त्रुटियों (मान लें, SDO सेगमेंट सिंक बिट), आदि के लिए प्रतिक्रिया या डिवाइस रिपोर्ट। R: असमर्थित प्रोटोकॉल (विकल्प) या प्रोटोकॉल में त्रुटि (मान लें, SDO सेगमेंट सिंक बिट), आदि।
C: ऑब्जेक्ट शब्दकोश. D: OD पता मौजूद नहीं है. R: ऑब्जेक्ट शब्दकोश में ऐसा कोई पता नहीं है.
C: ऑब्जेक्ट शब्दकोश। D: OD पते तक पहुँच अमान्य। R: केवल पढ़ने के लिए लिखने का प्रयास, या केवल लिखने के लिए पते से पढ़ने का प्रयास।
C: ऑब्जेक्ट शब्दकोश। D: प्रकार बेमेल। R: निर्दिष्ट प्रकार में अपरिवर्तित मान, जैसे कि स्ट्रिंग को संख्या के रूप में मानने का प्रयास।
C: एप्लीकेशन। D: प्रक्रिया निरस्त। R: एप्लीकेशन अनुरोध द्वारा प्रक्रिया में कटौती। केवल कॉलबैक फ़ंक्शन द्वारा ऑपरेशन में व्यवधान आने पर ही रिटर्न करता है, जैसे कि बस-स्कैनिंग से।
C: सामान्य. D: प्रक्रिया असमर्थित. R: कोई हार्डवेयर बस / डिवाइस समर्थन नहीं.
C: सामान्य। D: वर्तमान संदर्भ में प्रक्रिया गलत है, या वर्तमान तर्क के साथ अमान्य है। R: पहले से कनेक्ट की गई बसों/डिवाइसों को फिर से जोड़ने का प्रयास। पहले से डिस्कनेक्ट किए गए लोगों को डिस्कनेक्ट करने का प्रयास। फ़र्मवेयर मोड में बूटलोडर ऑपरेशन का प्रयास या इसके विपरीत।
C: सामान्य। D: तर्क अमान्य। R: ग़लत तर्क या वाक्यविन्यास।
C: सामान्य। D: पहुँच अस्वीकृत है। R: अनुरोधित कार्रवाई करने के लिए अधिकारों या क्षमताओं का अभाव।
C: सामान्य. D: निर्दिष्ट आइटम नहीं मिला. R: हार्डवेयर बस, प्रोटोकॉल, डिवाइस, डिवाइस पर OD पता, या file नहीं मिला था।
C: सामान्य। D: निर्दिष्ट आइटम नहीं मिला। R: व्यस्त, अस्तित्वहीन, कट-ऑफ या दोष।
C: सामान्य. D: अपर्याप्त मेमोरी. R: इस आदेश को संसाधित करने के लिए बहुत कम मेमोरी.
C: सामान्य। D: प्रक्रिया का समय समाप्त हो गया। R: समय समाप्त होने के बाद वापस लौटें। टाइमआउट डिवाइस प्रतिक्रिया समय, साझा या अनन्य संसाधन पहुँच प्राप्त करने का समय या बस / डिवाइस को उपयुक्त स्थिति में स्विच करने का समय हो सकता है।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
53
8 कक्षाएं / फ़ंक्शन संदर्भ
8.30 एनएलसीकॉलबैक
कॉलबैक के लिए इस पैरेंट क्लास में निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन है: कॉलबैक ()
वर्चुअल ResultVoid कॉलबैक ()
रिटर्न
परिणामशून्य
8.31 एनएलसीडेटाट्रांसफरकॉलबैक
डेटा ट्रांसफ़र (फ़र्मवेयर अपडेट, नैनोजे अपलोड आदि) के लिए इस कॉलबैक क्लास का उपयोग करें। 1. फ़र्मवेयर अपलोड के लिए: कस्टम कॉलबैक विधि के साथ इसे विस्तारित करते हुए एक "सह-क्लास" परिभाषित करें
कार्यान्वयन। 2. NanoLibAccessor.uploadFirmware () कॉल में “सह-वर्ग” के उदाहरणों का उपयोग करें। मुख्य वर्ग में स्वयं निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन है:
कॉलबैक () वर्चुअल ResultVoid कॉलबैक (nlc::DataTransferInfo जानकारी, int32_t डेटा)
रिटर्न
परिणामशून्य
8.32 एनएलसीस्कैनबसकॉलबैक
बस स्कैनिंग के लिए इस कॉलबैक क्लास का उपयोग करें। 1. कस्टम कॉलबैक विधि कार्यान्वयन के साथ इसे विस्तारित करने वाला एक "सह-क्लास" परिभाषित करें। 2. NanoLibAccessor.scanDevices () कॉल में "सह-क्लास" के इंस्टेंस का उपयोग करें। मुख्य वर्ग में ही निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन है।
वापस बुलाओ ()
वर्चुअल ResultVoid कॉलबैक (nlc::BusScanInfo जानकारी, std::vector const & devicesFound, int32_t डेटा)
परिणाम शून्य लौटाता है
8.33 एनएलसीलॉगिंगकॉलबैक
कॉलबैक लॉग करने के लिए इस कॉलबैक क्लास का उपयोग करें। 1. एक क्लास को परिभाषित करें जो इस क्लास को कस्टम कॉलबैक विधि कार्यान्वयन के साथ विस्तारित करता है 2. NanoLibAccessor द्वारा कॉलबैक सेट करने के लिए इसके इंस्टेंस के लिए पॉइंटर का उपयोग करें >
लॉगिंग कॉलबैक सेट करें (…).
वर्चुअल शून्य कॉलबैक (const std::string & payload_str, const std::string & formatted_str, const std::string & logger_name, const unsigned int log_level, const std::uint64_t time_since_epoch, const size_t thread_id)
8.34 एसamplerइंटरफ़ेस
इस वर्ग का उपयोग सॉफ्टवेयर को कॉन्फ़िगर करने, शुरू करने और रोकने के लिए करेंampler, या पाने के लिएampडेटा का नेतृत्व किया और के रूप में लानेampler की स्थिति या अंतिम त्रुटि। इस वर्ग में निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन हैं।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
54
8 कक्षाएं / फ़ंक्शन संदर्भ
configure () इस प्रकार कॉन्फ़िगर करता हैampलेर।
वर्चुअल ResultVoid nlc::SamplerInterface::configure (const डिवाइसहैंडल deviceHandle, const Samplerकॉन्फ़िगरेशन और sampलेरकॉन्फ़िगरेशन)
पैरामीटर [in] डिवाइसहैंडल [in] samplerकॉन्फ़िगरेशन
परिणाम शून्य लौटाता है
निर्दिष्ट करता है कि किस डिवाइस पर कॉन्फ़िगरेशन करना हैampler for. कॉन्फ़िगरेशन विशेषताओं के मान निर्दिष्ट करता है। पुष्टि करता है कि void फ़ंक्शन चलाया गया है।
getData () डेटा प्राप्त करता हैampडेटा का नेतृत्व किया.
आभासी परिणामampleDataArray एनएलसी::एसamplerInterface::getData (const डिवाइसहैंडल डिवाइसहैंडल)
पैरामीटर [in] डिवाइसहैंडल परिणाम लौटाता हैampलेडाटाअर्रे
यह निर्दिष्ट करता है कि डेटा किस डिवाइस के लिए प्राप्त किया जाए.
एस वितरित करता हैampएलईडी डेटा, जो एक खाली सरणी हो सकता है अगरamplerNotify प्रारंभ पर सक्रिय है.
getLastError () इस प्रकार प्राप्त होता हैampलर की अंतिम त्रुटि.
वर्चुअल ResultVoid nlc::SamplerInterface::getLastError (const डिवाइसहैंडल डिवाइसहैंडल)
परिणाम शून्य लौटाता है
पुष्टि करता है कि void फ़ंक्शन चलाया गया है.
getState () इस प्रकार प्राप्त होता हैampलर की स्थिति.
आभासी परिणामamplerState एनएलसी::एसamplerInterface::getState (const डिवाइसहैंडल डिवाइसहैंडल)
परिणाम लौटाता हैamplerराज्य
एस वितरित करता हैampलेर राज्य.
प्रारंभ () इस प्रकार प्रारंभ होता हैampलेर।
वर्चुअल ResultVoid nlc::SamplerInterface::start (const डिवाइसहैंडल डिवाइसहैंडल, एसamplerNotify* एसamplerNotify, int64_t applicationData)
पैरामीटर [in] डिवाइसहैंडल [in] SamplerNotify [में] applicationData
परिणाम शून्य लौटाता है
निर्दिष्ट करता है कि कौन सा डिवाइस एस शुरू करना हैampके लिए.
निर्दिष्ट करता है कि कौन सी वैकल्पिक जानकारी रिपोर्ट करनी है (nullptr हो सकती है).
विकल्प: अनुप्रयोग-संबंधी डेटा (मूल्य / डिवाइस आईडी / इंडेक्स की उपयोगकर्ता-परिभाषित 8-बिट सरणी, या दिनांक-समय, चर / फ़ंक्शन का पॉइंटर, आदि) को s पर अग्रेषित करता है।amplerNotify.
पुष्टि करता है कि void फ़ंक्शन चलाया गया है.
संस्करण: doc 1.4.2 / NanoLib 1.3.0
55
8 कक्षाएं / फ़ंक्शन संदर्भ
स्टॉप () रुकता हैampलेर।
वर्चुअल ResultVoid nlc::SamplerInterface::stop (const डिवाइसहैंडल डिवाइसहैंडल)
पैरामीटर [in] डिवाइसहैंडल ResultVoid लौटाता है
निर्दिष्ट करता है कि कौन सा डिवाइस एस को रोकेगाampler for. पुष्टि करता है कि void फ़ंक्शन चलाया गया है.
8.35 एसamplerकॉन्फ़िगरेशन संरचना
इस संरचना में डेटा शामिल हैampler के कॉन्फ़िगरेशन विकल्प (स्थिर या नहीं)
सार्वजनिक विशेषताएँ
std::वेक्टर ट्रैक किए गए पते
अधिकतम 12 OD पते दर्ज किए जाने हैंampएलईडी।
uint32_t
संस्करण
एक संरचना का संस्करण.
uint32_t
अवधिमिलीसेकंड
Sampलिंग अवधि एमएस में, 1 से 65535 तक
uint16_t
अवधिमिलीसेकंड
Sampलिंग अवधि एमएस में.
uint16_t
संख्याampलेस
Sampकम राशि.
uint16_t
प्रीट्रिगरनंबरऑफएसampलेस
Sampलेस प्री-ट्रिगर राशि.
बूल
सॉफ्टवेयर कार्यान्वयन का उपयोग करना
सॉफ्टवेयर कार्यान्वयन का उपयोग करें.
बूल
उपयोगNewFWSamplerImplementation उन डिवाइसों के लिए FW कार्यान्वयन का उपयोग करें जिनमें
FW संस्करण v24xx या नया.
Sampलेरमोड
तरीका
सामान्य, दोहरावदार या निरंतरampलिंग।
SamplerTriggerCondition ट्रिगरकंडीशन
ट्रिगर शर्तें शुरू करें: TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0x14 TC_GREATER = 0x15 TC_GREATER_OR_EQUAL = 0x16 TC_LESS = 0x17 TC_LESS_OR_EQUAL = 0x18 TC_EQUAL = 0x19 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE = 0x1C, OdIndex, ट्रिगरवैल्यू
Sampलेरट्रिगर
Sampलेरट्रिगर
एक ट्रिगर के रूप में शुरू करने के लिएampलेर?
स्थैतिक सार्वजनिक विशेषताएँ
स्थिर constexpr size_t एसAMPLER_CONFIGURATION_VERSION = 0x01000000 स्थिर constexpr size_t MAX_TRACKED_ADDRESSES = 12
8.36 एसamplerNotify
इस वर्ग का उपयोग सक्रिय करने के लिए करेंampजब आप शुरू करते हैं तो ler सूचनाएंampler. वर्ग में निम्नलिखित सार्वजनिक सदस्य फ़ंक्शन है.
संस्करण: doc 1.4.2 / NanoLib 1.3.0
56
8 कक्षाएं / फ़ंक्शन संदर्भ
सूचित करें ()
एक अधिसूचना प्रविष्टि वितरित करता है.
आभासी शून्य nlc::SamplerNotify::notify (const ResultVoid और lastError, const Samplerराज्य एसamplerState, const std::vector <SampleData> & sampleDatas, int64_t एप्लिकेशनडेटा)
पैरामीटर [in] lastError [in] samplerराज्य
[में] एसampleDatas [में] applicationData
रिपोर्ट करता है कि अंतिम त्रुटि तब हुई जबampलिंग. रिपोर्ट एसampअधिसूचना समय पर फ़ाइल की स्थिति: अनकॉन्फ़िगर / कॉन्फ़िगर / तैयार / चल रहा / पूर्ण / विफल / रद्द। रिपोर्ट करता हैampled-data array. अनुप्रयोग-विशिष्ट डेटा की रिपोर्ट करता है।
8.37 एसampleData संरचना
इस संरचना में s शामिल हैampडेटा का नेतृत्व किया.
uin64_t पुनरावृति संख्या
0 से शुरू होता है और केवल दोहराव मोड में बढ़ता है।
std::वेक्टर<एसampledValues> इसमें s की सरणी शामिल हैampमूल्यों का नेतृत्व किया.
8.38 एसampledValue संरचना
इस संरचना में s शामिल हैampमूल्यों का नेतृत्व किया.
in64_t मान uin64_t CollectTimeMsec
इसमें ट्रैक किए गए OD पते का मान शामिल होता है.
इसमें संग्रहण समय को मिलीसेकंड में दर्शाया गया है, जो सेकंड के सापेक्ष हैampले शुरुआत.
8.39 एसamplerTrigger संरचना
इस संरचना में s की ट्रिगर सेटिंग्स शामिल हैंampलेर।
SamplerTriggerCondition स्थिति
OdIndex uin32_t मान
ट्रिगर स्थिति:TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0x14 TC_GREATER = 0x15 TC_GREATER_OR_EQUAL = 0x16 TC_LESS = 0x17 TC_LESS_OR_EQUAL = 0x18 TC_EQUAL = 0x19 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE = 0x1C
ट्रिगर का OdIndex (पता).
स्थिति मान या बिट संख्या (बिट शून्य से प्रारंभ).
8.40 सीरियल संरचना
यहां अपने धारावाहिक संचार विकल्प और निम्नलिखित सार्वजनिक विशेषताएं खोजें:
const std::string const SerialBaudRate
BAUD_RATE_OPTIONS_NAME = “सीरियल बॉड दर” baudRate =SerialBaudRate संरचना
संस्करण: doc 1.4.2 / NanoLib 1.3.0
57
8 कक्षाएं / फ़ंक्शन संदर्भ
const std::string const सीरियलपैरिटी
PARITY_OPTIONS_NAME = “सीरियल पैरिटी” पैरिटी = SerialParity संरचना
8.41 सीरियलबॉडरेट संरचना
यहां अपनी धारावाहिक संचार बॉड दर और निम्नलिखित सार्वजनिक विशेषताएं खोजें:
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string
BAUD_RATE_7200 = “7200” BAUD_RATE_9600 = “9600” BAUD_RATE_14400 = “14400” BAUD_RATE_19200 = “19200” BAUD_RATE_38400 = “38400” BAUD_RATE_56000 = “56000” BAUD_RATE_57600 = “57600” BAUD_RATE_115200 = “115200” BAUD_RATE_128000 = “128000” BAUD_RATE_256000 = “256000”
8.42 सीरियल पैरिटी संरचना
यहां अपने सीरियल पैरिटी विकल्प और निम्नलिखित सार्वजनिक विशेषताएं खोजें:
const std::string const std::string const std::string const std::string const std::string
कोई नहीं = “कोई नहीं” विषम = “विषम” सम = “सम” चिह्न = “चिह्नित करें” स्थान = “स्थान”
संस्करण: doc 1.4.2 / NanoLib 1.3.0
58
9 लाइसेंस
9 लाइसेंस
नैनोलिब एपीआई इंटरफ़ेस हेडर और एक्सampस्रोत कोड को नैनोटेक इलेक्ट्रॉनिक जीएमबीएच एंड कंपनी केजी द्वारा क्रिएटिव कॉमन्स एट्रिब्यूशन 3.0 अनपोर्टेड लाइसेंस (सीसी बाय) के तहत लाइसेंस प्राप्त है। बाइनरी प्रारूप (कोर और फील्डबस संचार लाइब्रेरी) में प्रदान किए गए लाइब्रेरी पार्ट्स क्रिएटिव कॉमन्स एट्रिब्यूशननोडेरिवेटिव्स 4.0 इंटरनेशनल लाइसेंस (सीसी बाय एनडी) के तहत लाइसेंस प्राप्त हैं।
क्रिएटिव कॉमन्स
निम्नलिखित मानव-पठनीय सारांश लाइसेंस(ओं) का स्थान नहीं लेगा। आप संबंधित लाइसेंस creativecommons.org पर पा सकते हैं और नीचे लिंक किया गया है। आप स्वतंत्र हैं:
सीसी बाय 3.0
साझा करें: सही देखें। अनुकूलन करें: रीमिक्स करें, रूपांतरित करें, और आगे बढ़ें
किसी भी उद्देश्य के लिए सामग्री, यहां तक कि व्यावसायिक रूप से भी।
सीसी बाय-एनडी 4.0
साझा करें: किसी भी माध्यम या प्रारूप में सामग्री की प्रतिलिपि बनाएँ और पुनर्वितरित करें।
जब तक आप निम्नलिखित लाइसेंस शर्तों का पालन करते हैं, लाइसेंसकर्ता उपरोक्त स्वतंत्रताओं को रद्द नहीं कर सकता:
सीसी बाय 3.0
सीसी बाय-एनडी 4.0
श्रेय: आपको उचित श्रेय देना होगा, श्रेय: बाईं ओर देखें। लेकिन: इस पर एक लिंक प्रदान करें
लाइसेंस के लिए लिंक प्रदान करें, और बताएं कि क्या
अन्य लाइसेंस.
परिवर्तन किए गए हैं। आप ऐसा किसी भी तरीके से कर सकते हैं
कोई व्युत्पन्न नहीं: यदि आप रीमिक्स, रूपांतरण, या निर्माण करते हैं
उचित तरीके से, लेकिन किसी भी तरह से नहीं जो सुझाव दे-
सामग्री पर, आप वितरित नहीं कर सकते
इसका मतलब है कि लाइसेंसकर्ता आपका या आपके उपयोग का समर्थन करता है।
संशोधित सामग्री.
कोई अतिरिक्त प्रतिबंध नहीं: आप कोई अतिरिक्त प्रतिबंध नहीं लागू कर सकते हैं: बाईं ओर देखें। कानूनी शर्तें या तकनीकी उपाय जो कानूनी रूप से
दूसरों को लाइसेंस के तहत कुछ भी करने से रोकें
परमिट.
नोट: आपको सार्वजनिक डोमेन में सामग्री के तत्वों के लिए लाइसेंस का अनुपालन करना आवश्यक नहीं है या जहां आपके उपयोग को लागू अपवाद या सीमा द्वारा अनुमति दी गई है।
नोट: कोई वारंटी नहीं दी गई है। हो सकता है कि लाइसेंस आपको आपके इच्छित उपयोग के लिए आवश्यक सभी अनुमतियाँ न दे। उदाहरण के लिएampहालाँकि, प्रचार, गोपनीयता या नैतिक अधिकार जैसे अन्य अधिकार आपके द्वारा सामग्री के उपयोग को सीमित कर सकते हैं।
संस्करण: doc 1.4.2 / NanoLib 1.3.0
59
छाप, संपर्क, संस्करण
©2024 नैनोटेक इलेक्ट्रॉनिक GmbH & Co.KGKapellenstr.685622 फ़ेल्डकिर्चेनजर्मनीटेल.+49(0) 89 900 686-0फ़ैक्स+49(0)89 900 686-50 info@nanotec.dewww.nanotec.com सभी अधिकार सुरक्षित हैं। त्रुटि, चूक, तकनीकी या सामग्री में बिना किसी सूचना के परिवर्तन संभव है। उद्धृत ब्रांड/उत्पाद उनके स्वामियों के ट्रेडमार्क हैं और उन्हें उसी तरह से माना जाना चाहिए। मूल संस्करण।
दस्तावेज़ 1.4.2 2024.12 1.4.1 2024.10 1.4.0 2024.09 1.3.3 2024.07
1.3.2 2024.05 1.3.1 2024.04 1.3.0 2024.02
1.2.2 2022.09 1.2.1 2022.08 1.2.0 2022.08
+ जोड़ा गया > परिवर्तित # ठीक किया गया > प्रदान किए गए उदाहरण का पुनः कार्यampलेस.
+ नैनोलिब मोडबस: मोडबस वीसीपी के लिए डिवाइस लॉकिंग मैकेनिज्म जोड़ा गया। # नैनोलिब कोर: कनेक्शन स्थिति जांच को ठीक किया गया। # नैनोलिब कोड: बस हार्डवेयर संदर्भ हटाने को ठीक किया गया।
+ NanoLib-CANopen: पीक PCAN-USB एडाप्टर (IPEH-002021/002022) के लिए समर्थन।
> नैनोलिब कोर: लॉगिंग कॉलबैक इंटरफ़ेस बदला गया (लॉगलेवल को लॉगमॉड्यूल द्वारा प्रतिस्थापित किया गया)। # नैनोलिब लॉगर: कोर और मॉड्यूल के बीच अलगाव को सही किया गया है। # मोडबस टीसीपी: एफडब्ल्यू4 के लिए फर्मवेयर अपडेट को ठीक किया गया। # ईथरकैट: कोर5 के लिए नैनोजे प्रोग्राम अपलोड को ठीक किया गया। # ईथरकैट: कोर5 के लिए फर्मवेयर अपडेट को ठीक किया गया।
# मोडबस आरटीयू: फर्मवेयर अपडेट के दौरान कम बॉड दरों के साथ समय संबंधी समस्याओं को ठीक किया गया। # रेस्टफुल: नैनोजे प्रोग्राम अपलोड को ठीक किया गया।
# नैनोलिब मॉड्यूल एसampler: s का सही वाचनampबूलियन मान का नेतृत्व किया.
+ सभी प्लेटफॉर्म के लिए जावा 11 सपोर्ट। + सभी प्लेटफॉर्म के लिए पायथन 3.11/3.12 सपोर्ट। + नया लॉगिंग कॉलबैक इंटरफ़ेस (उदाहरण देखें)ampलेस). + नैनोलिब लॉगर के लिए कॉलबैक सिंक. > लॉगर को संस्करण 1.12.0 पर अपडेट करें. > नैनोलिब मॉड्यूल एसampler: अब Nanotec नियंत्रक फर्मवेयर v24xx के लिए समर्थन. > NanoLib मॉड्यूल एसampler: संरचना में परिवर्तन s के लिए उपयोग किया जाता हैampler कॉन्फ़िगरेशन. > NanoLib मॉड्यूल एसampनिरंतर मोड अंतहीन का पर्याय है; ट्रिगर स्थिति एक बार जाँची जाती है; ट्रिगर की संख्याamples 0 होना चाहिए. > NanoLib मॉड्यूल एसampler: फर्मवेयर मोड में डेटा एकत्रित करने वाले थ्रेड के लिए सामान्य प्राथमिकता। > नैनोलिब मॉड्यूल एसampler: रेडी और रनिंग स्थिति के बीच संक्रमण का पता लगाने के लिए पुनर्लिखित एल्गोरिथ्म। # नैनोलिब कोर: एक ही बस हार्डवेयर का उपयोग करके 0 या अधिक डिवाइस बंद करने पर अब कोई एक्सेस उल्लंघन (0000005xC2) नहीं होगा। # नैनोलिब कोर: लिनक्स के तहत PEAK एडाप्टर को जोड़ने पर अब कोई सेगमेंटेशन फॉल्ट नहीं होगा। # नैनोलिब मॉड्यूल एसampler: सही sampफर्मवेयर मोड में एलईडी-वैल्यू रीडिंग। # नैनोलिब मॉड्यूल एसampler: 502X:04 का सही कॉन्फ़िगरेशन. # नैनोलिब मॉड्यूल एसampler: चैनलों के साथ बफर्स का सही मिश्रण। # NanoLib-Canopen: कम बॉडरेट पर मजबूती और सही स्कैनिंग के लिए CAN टाइमआउट में वृद्धि। # NanoLib-Modbus: विशेष उपकरणों (USB-DA-IO) के लिए VCP डिटेक्शन एल्गोरिदम।
+ ईथरकैट समर्थन.
+ अपने प्रोजेक्ट को कॉन्फ़िगर करें में VS प्रोजेक्ट सेटिंग्स पर नोट करें।
+ getDeviceHardwareGroup (). + getProfinetDCP (isServiceAvailable). + getProfinetDCP (validateProfinetDeviceIp). + autoAssignObjectDictionary (). + getXmlFileनाम (). + const std::string & xmlFileaddObjectDictionary () में पथ. + getSampलेरइंटरफ़ेस ().
उत्पाद 1.3.0 1.2.1 1.2.0 1.1.3
1.1.2 1.1.1 1.1.0
1.0.1 (बी349) 1.0.0 (बी344) 1.0.0 (बी341)
संस्करण: doc 1.4.2 / NanoLib 1.3.0
60
10 छाप, संपर्क, संस्करण
दस्तावेज़
1.1.2 2022.03 1.1.1 2021.11 1.1.0 2021.06 1.0.1 2021.06 1.0.0 2021.05
+ जोड़ा गया > परिवर्तित # ठीक किया गया + rebootDevice (). + getDeviceBootloaderVersion (), ~VendorId (), ~HardwareVersion (), ~SerialNumber, और ~Uid के लिए त्रुटि कोड ResourceUnavailable. > FirmwareUploadFromFile अब अपलोड करेंफर्मवेयरसेFile (). > फर्मवेयरअपलोड () अब फर्मवेयर (). > बूटलोडरअपलोडफ्रॉम अपलोड करेंFile () अब अपलोड करेंबूटलोडरसेFile (). > bootloaderUpload () अब अपलोड करेंBootloader (). > bootloaderFirmwareUploadFromFile () अपलोड करने के लिएबूटलोडरफर्मवेयरसेFile (). > bootloaderFirmwareUpload () अब अपलोड करेंBootloaderFirmware (). > nanojUploadFromFile () अब अपलोड करेंNanoJFromFile (). > nanojUpload () अब uploadNanoJ (). > objectDictionaryLibrary () अब getObjectDictionaryLibrary (). > String_String_Map अब StringStringMap. > NanoLib-Common: Ixxat एडाप्टर के साथ listAvailableBusHardware और openBusHardwareWithProtocol का तेज़ निष्पादन. > NanoLib-CANopen: डिफ़ॉल्ट सेटिंग्स का उपयोग किया जाता है (1000k बॉडरेट, Ixxat बस संख्या 0) यदि बस हार्डवेयर विकल्प खाली हैं. > NanoLib-RESTful: यदि npcap / winpcap ड्राइवर उपलब्ध है, तो Windows के तहत ईथरनेट बूटलोडर्स के साथ संचार के लिए व्यवस्थापक अनुमति अप्रचलित है. # NanoLib-CANopen: बस हार्डवेयर अब खाली विकल्पों के साथ क्रैशलेस खुलता है. # NanoLib-Common: openBusHardwareWithProtocol () अब मेमोरी लीक के बिना.
+ Linux ARM64 समर्थन. + USB मास स्टोरेज / REST / Profinet DCP समर्थन. + checkConnectionState (). + getDeviceBootloaderVersion (). + ResultProfinetDevices. + NlcErrorCode (NanotecExceptions को प्रतिस्थापित). + NanoLib Modbus: VCP / USB हब USB से एकीकृत. > Modbus TCP स्कैनिंग परिणाम लौटाता है. < Modbus TCP संचार विलंबता स्थिर रहती है.
+ अधिक ObjectEntryDataType (जटिल और प्रोfile- विशिष्ट). + IOError लौटाता है यदि connectDevice () और scanDevices () में कोई नहीं मिलता. + CanOpen / Modbus के लिए केवल 100 ms नाममात्र टाइमआउट.
+ Modbus समर्थन (साथ ही VCP के माध्यम से USB हब)। + अध्याय अपना स्वयं का Linux प्रोजेक्ट बनाना। + extraHardwareSpecifier को BusHardwareId () में बदलना। + extraId_ और extraStringId_ को DeviceId () में बदलना।
+ setBusState (). + getDeviceBootloaderBuildId (). + getDeviceFirmwareBuildId (). + getDeviceHardwareVersion (). # बगफिक्स.
संस्करण.
उत्पाद
0.8.0 0.7.1 0.7.0 0.5.1 0.5.1
संस्करण: doc 1.4.2 / NanoLib 1.3.0
61
दस्तावेज़ / संसाधन
![]() |
नैनोटिक नैनोलिब सी++ प्रोग्रामिंग [पीडीएफ] उपयोगकर्ता पुस्तिका नैनोलिब सी प्रोग्रामिंग, सी प्रोग्रामिंग, प्रोग्रामिंग |