ন্যানোটিক ন্যানোলিব সি++ প্রোগ্রামিং
পণ্য তথ্য
স্পেসিফিকেশন
- পণ্যের নাম: ন্যানোলিব
- প্রোগ্রামিং ভাষা: সি++
- পণ্য সংস্করণ: 1.3.0
- ব্যবহারকারীর ম্যানুয়াল সংস্করণ: 1.4.2
ন্যানোলিব লাইব্রেরিটি ন্যানোটেক কন্ট্রোলারদের জন্য প্রোগ্রামিং কন্ট্রোল সফটওয়্যারের জন্য ডিজাইন করা হয়েছে। এটি নিয়ন্ত্রণ অ্যাপ্লিকেশনগুলির বিকাশকে সহজতর করার জন্য একটি ব্যবহারকারী ইন্টারফেস, মূল কার্যকারিতা এবং যোগাযোগ লাইব্রেরি সরবরাহ করে।
পণ্য ব্যবহারের নির্দেশাবলী
- আপনি শুরু করার আগে:
- নিশ্চিত করুন যে আপনার সিস্টেমটি ম্যানুয়ালটিতে উল্লেখিত হার্ডওয়্যার প্রয়োজনীয়তা পূরণ করে। এই পণ্যের জন্য উদ্দিষ্ট দর্শকদের মধ্যে ন্যানোটেক কন্ট্রোলারদের জন্য নিয়ন্ত্রণ সফ্টওয়্যার তৈরি করতে আগ্রহী ডেভেলপাররাও অন্তর্ভুক্ত।
- শুরু করা:
- NanoLib ব্যবহার শুরু করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
- আপনার প্রকল্পে NanoLib আমদানি করে শুরু করুন।
- প্রয়োজন অনুযায়ী আপনার প্রকল্পের সেটিংস কনফিগার করুন।
- NanoLib কার্যকারিতা অন্তর্ভুক্ত করে আপনার প্রকল্প তৈরি করুন।
- প্রকল্প তৈরি:
- আপনি উইন্ডোজ এবং লিনাক্স উভয় পরিবেশের জন্যই প্রকল্প তৈরি করতে পারেন। প্রতিটি প্ল্যাটফর্মের জন্য ম্যানুয়ালটিতে প্রদত্ত নির্দিষ্ট নির্দেশাবলী অনুসরণ করুন।
- ক্লাস / ফাংশন রেফারেন্স:
- প্রোগ্রামিং কন্ট্রোল সফটওয়্যারের জন্য NanoLib-এ উপলব্ধ ক্লাস এবং ফাংশন সম্পর্কে বিস্তারিত নির্দেশিকা পেতে ব্যবহারকারীর ম্যানুয়ালটি দেখুন।
FAQs
- প্রশ্ন: ন্যানোলিবের উদ্দেশ্য কী?
- A: ন্যানোলিব হল ন্যানোটেক কন্ট্রোলারদের জন্য প্রোগ্রামিং কন্ট্রোল সফটওয়্যারের একটি লাইব্রেরি, যা প্রয়োজনীয় কার্যকারিতা এবং যোগাযোগ ক্ষমতা প্রদান করে।
- প্রশ্ন: আমি কিভাবে NanoLib দিয়ে শুরু করতে পারি?
- A: আপনার প্রকল্পে NanoLib আমদানি করে, প্রকল্প সেটিংস কনফিগার করে এবং NanoLib বৈশিষ্ট্যগুলি ব্যবহার করার জন্য আপনার প্রকল্প তৈরি করে শুরু করুন।
"`
ব্যবহারকারী ম্যানুয়াল NanoLib
সি++
পণ্য সংস্করণ 1.3.0 এর সাথে বৈধ
ব্যবহারকারীর ম্যানুয়াল সংস্করণ: 1.4.2
নথির লক্ষ্য এবং নিয়মাবলী
এই ডকুমেন্টটি NanoLib লাইব্রেরির সেটআপ এবং ব্যবহার বর্ণনা করে এবং ন্যানোটেক কন্ট্রোলারের জন্য আপনার নিজস্ব কন্ট্রোল সফ্টওয়্যার প্রোগ্রাম করার জন্য সমস্ত ক্লাস এবং ফাংশনগুলির একটি রেফারেন্স রয়েছে। আমরা নিম্নলিখিত টাইপফেস ব্যবহার করি:
আন্ডারলাইন করা টেক্সট একটি ক্রস রেফারেন্স বা হাইপারলিঙ্ক চিহ্নিত করে।
Exampলে 1: NanoLibAccessor এর সঠিক নির্দেশাবলীর জন্য, সেটআপ দেখুন। যেমনampপদক্ষেপ 2: Ixxat ড্রাইভার ইনস্টল করুন এবং CAN-to-USB অ্যাডাপ্টারের সাথে সংযোগ করুন। ইটালিক টেক্সট মানে: এটি একটি নামকৃত বস্তু, একটি মেনু পাথ/আইটেম, একটি ট্যাব / file নাম বা (যদি প্রয়োজন হয়) একটি বিদেশী ভাষার অভিব্যক্তি।
Exampলে 1: নির্বাচন করুন File > নতুন > ফাঁকা নথি। টুল ট্যাব খুলুন এবং মন্তব্য নির্বাচন করুন। যেমনample 2: এই নথিটি ব্যবহারকারীদের (= Nutzer; usuario; utente; utilisateur; utente ইত্যাদি) থেকে বিভক্ত করে:
– তৃতীয় পক্ষের ব্যবহারকারী (= Drittnutzer; tercero usuario; terceiro utente; tiers utilisateur; terzo utente ইত্যাদি)। - শেষ ব্যবহারকারী (= Endnutzer; usuario final; utente final; utilisateur final; utente finale ইত্যাদি)।
কুরিয়ার কোড ব্লক বা প্রোগ্রামিং কমান্ড চিহ্নিত করে। যেমনampলে 1: বাশের মাধ্যমে, শেয়ার করা বস্তুগুলি অনুলিপি করতে সুডো মেক ইনস্টল করুন; তারপর ldconfig কল করুন। যেমনampলে 2: NanoLib এ লগিং লেভেল পরিবর্তন করতে নিম্নলিখিত NanoLibAccessor ফাংশনটি ব্যবহার করুন:
// ***** C++ ভেরিয়েন্ট *****
void setLoggingLevel(LogLevel level);
বোল্ড টেক্সট সমালোচনামূলক গুরুত্বের পৃথক শব্দের উপর জোর দেয়। বিকল্পভাবে, বন্ধনীযুক্ত বিস্ময়বোধক চিহ্নগুলি সমালোচনামূলক(!) গুরুত্বের উপর জোর দেয়।
Exampলে 1: নিজেকে, অন্যদের এবং আপনার সরঞ্জাম রক্ষা করুন। আমাদের সাধারণ নিরাপত্তা নোটগুলি অনুসরণ করুন যা সাধারণত সমস্ত Nanotec পণ্যের জন্য প্রযোজ্য।
Exampপদক্ষেপ 2: আপনার নিজের সুরক্ষার জন্য, এই নির্দিষ্ট পণ্যের জন্য প্রযোজ্য নির্দিষ্ট সুরক্ষা নোটগুলিও অনুসরণ করুন। সহ-ক্লিক করার ক্রিয়াটির অর্থ একটি প্রসঙ্গ মেনু ইত্যাদি খোলার জন্য সেকেন্ডারি মাউস কী-এর মাধ্যমে ক্লিক করা।
Exampলে 1: সহ-ক্লিক করুন file, পুনঃনামকরণ নির্বাচন করুন, এবং পুনঃনামকরণ করুন file। প্রাক্তনample 2: বৈশিষ্ট্য পরীক্ষা করতে, সহ-ক্লিক করুন file এবং বৈশিষ্ট্য নির্বাচন করুন।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
4
আপনি শুরু করার আগে
আপনি NanoLib ব্যবহার শুরু করার আগে, আপনার পিসি প্রস্তুত করুন এবং উদ্দেশ্যমূলক ব্যবহার এবং লাইব্রেরির সীমাবদ্ধতা সম্পর্কে নিজেকে জানান।
2.1 সিস্টেম এবং হার্ডওয়্যার প্রয়োজনীয়তা
৩২-বিট অপারেশন বা বন্ধ সিস্টেমের কারণে ত্রুটির বিজ্ঞপ্তি! ৬৪-বিট সিস্টেম ব্যবহার করুন এবং ধারাবাহিকভাবে রক্ষণাবেক্ষণ করুন। OEM বিচ্ছিন্নতা এবং ~নির্দেশাবলী পর্যবেক্ষণ করুন।
NanoLib 1.3.0 CANopen, Modbus RTU (ভার্চুয়াল কম পোর্টে USB), Modbus TCP, EtherCat এবং Profinet সহ সমস্ত Nanotec পণ্য সমর্থন করে। পুরোনো NanoLibs এর জন্য: ইমপ্রিন্টে চেঞ্জলগ দেখুন। শুধুমাত্র আপনার ঝুঁকিতে: লিগ্যাসি-সিস্টেম ব্যবহার। দ্রষ্টব্য: FTDI-ভিত্তিক USB অ্যাডাপ্টার ব্যবহার করার সময় যদি আপনি সমস্যার সম্মুখীন হন তবে ল্যাটেন্সি যতটা সম্ভব কম সেট করতে বৈধ OEM নির্দেশাবলী অনুসরণ করুন।
প্রয়োজনীয়তা (64-বিট সিস্টেম বাধ্যতামূলক)
Windows 10 অথবা 11, 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, অথবা অ্যাডমিনের অনুমতি
ইথারনেট বুটলোডারের সাথে যোগাযোগ করুন
উবুন্টু ২০.০৪ LTS থেকে ২৪ পর্যন্ত লিনাক্স (সমস্ত x৬৪ এবং arm৬৪)
কার্নেল হেডার এবং libpopt-dev প্যাকেট Profinet DCP: CAP_NET_ADMIN এবং CAP_NET_RAW abili-
CANopen টাই করে: Ixxat ECI ড্রাইভার অথবা Peak PCAN-USB অ্যাডাপ্টার EtherCat: CAP_NET_ADMIN, CAP_NET_RAW এবং
CAP_SYS_NICE ক্ষমতা বিশ্রাম: CAP_NET_ADMIN ইথ-এর সাথে যোগাযোগ করার ক্ষমতা
ernet বুটলোডার (এছাড়াও প্রস্তাবিত: CAP_NET_RAW)
ভাষা, ফিল্ডবাস অ্যাডাপ্টার, কেবল
C++ GCC 7 বা উচ্চতর (লিনাক্স)
ইথারক্যাট: ইথারনেট কেবল VCP / USB হাব: এখন অভিন্ন USB USB ভর স্টোরেজ: USB কেবল REST: ইথারনেট কেবল CANopen: Ixxat USB-to-CAN V2; Na-
notec ZK-USB-CAN-1, Peak PCANUSB অ্যাডাপ্টার arm64-এ উবুন্টুর জন্য কোনও Ixxat সাপোর্ট নেই
মডবাস আরটিইউ: ন্যানোটেক জেডকে-ইউএসবি-আরএস৪৮৫-১ বা সমতুল্য অ্যাডাপ্টার; ভার্চুয়াল কম পোর্টে (ভিসিপি) ইউএসবি কেবল
মডবাস টিসিপি: পণ্য ডেটাশিট অনুসারে ইথারনেট কেবল
2.2 উদ্দেশ্য ব্যবহার এবং শ্রোতা
NanoLib হল একটি প্রোগ্রাম লাইব্রেরি এবং সফ্টওয়্যার উপাদান যা ন্যানোটেক নিয়ন্ত্রকদের বিস্তৃত শিল্প অ্যাপ্লিকেশনে এবং শুধুমাত্র যথাযথভাবে দক্ষ প্রোগ্রামারদের জন্য পরিচালনা এবং যোগাযোগের জন্য।
রিয়েল-টাইম অক্ষম হার্ডওয়্যার (পিসি) এবং অপারেটিং সিস্টেমের কারণে, ন্যানোলিব এমন অ্যাপ্লিকেশনগুলিতে ব্যবহারের জন্য নয় যেগুলির সিঙ্ক্রোনাস মাল্টি-অক্ষ চলাচলের প্রয়োজন হয় বা সাধারণত সময়-সংবেদনশীল।
কোনও অবস্থাতেই আপনি কোনও পণ্য বা সিস্টেমে ন্যানোলিবকে সুরক্ষা উপাদান হিসেবে একীভূত করতে পারবেন না। শেষ ব্যবহারকারীদের কাছে পৌঁছে দেওয়ার সময়, আপনাকে ন্যানোটেক-নির্মিত উপাদান সহ প্রতিটি পণ্যের সাথে নিরাপদ ব্যবহার এবং নিরাপদ পরিচালনার জন্য সংশ্লিষ্ট সতর্কতা বিজ্ঞপ্তি এবং নির্দেশাবলী যুক্ত করতে হবে। আপনাকে অবশ্যই ন্যানোটেক-প্রদত্ত সমস্ত সতর্কতা বিজ্ঞপ্তি সরাসরি শেষ ব্যবহারকারীর কাছে পৌঁছে দিতে হবে।
2.3 ডেলিভারি এবং ওয়ারেন্টির সুযোগ
NanoLib আমাদের ডাউনলোড থেকে একটি *.zip ফোল্ডার হিসাবে আসে webEMEA/APAC বা আমেরিকার জন্য সাইট। সেটআপ করার আগে আপনার ডাউনলোডটি যথাযথভাবে সঞ্চয় করুন এবং আনজিপ করুন। NanoLib প্যাকেজে রয়েছে:
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
5
2 শুরু করার আগে Before
সোর্স কোড (API) হিসেবে ইন্টারফেস হেডার
বাইনারি ফর্ম্যাটে লাইব্রেরি হিসেবে মূল কাজ: ন্যানো-
যোগাযোগ সহজতর করে এমন লাইব্রেরি: nanolibm_ lib.dll
[yourfieldbus].dll ইত্যাদি।Exampপ্রকল্প: প্রাক্তনample.sln (ভিজ্যুয়াল স্টুডিও)
প্রকল্প) এবং প্রাক্তনample.cpp (প্রধান file)
ওয়ারেন্টির পরিধির জন্য, অনুগ্রহ করে ক) EMEA / APAC অথবা AMERICA এর জন্য আমাদের শর্তাবলী এবং খ) সমস্ত লাইসেন্স শর্তাবলী অনুসরণ করুন। দ্রষ্টব্য: তৃতীয় পক্ষের সরঞ্জামের ত্রুটিপূর্ণ বা অনুপযুক্ত গুণমান, পরিচালনা, ইনস্টলেশন, পরিচালনা, ব্যবহার এবং রক্ষণাবেক্ষণের জন্য ন্যানোটেক দায়ী নয়! যথাযথ সুরক্ষার জন্য, সর্বদা বৈধ OEM নির্দেশাবলী অনুসরণ করুন।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
6
ন্যানোলিব আর্কিটেকচার
NanoLib এর মডুলার সফ্টওয়্যার কাঠামো আপনাকে একটি কঠোরভাবে পূর্ব-নির্মিত কোরের চারপাশে অবাধে কাস্টমাইজযোগ্য মোটর কন্ট্রোলার/ফিল্ডবাস ফাংশনগুলি সাজাতে দেয়। NanoLib নিম্নলিখিত মডিউল রয়েছে:
ইউজার ইন্টারফেস (API)
ন্যানোলিব কোর
ইন্টারফেস এবং হেল্পার ক্লাস কোন লাইব্রেরি কোনটি
যোগাযোগ লাইব্রেরি ফিল্ডবাস-নির্দিষ্ট লাইব্রেরি যা
NanoLib-এর মধ্যে আপনার কন্ট্রোলারের API কার্যকারিতা ডো ইন্টারফেসে আপনাকে অ্যাক্সেস করতে পারে
OD (অবজেক্ট অভিধান)
বাস লাইব্রেরির সাথে যোগাযোগ করুন।
কোর এবং বাস হার্ডওয়্যার।
NanoLib কোর ফাংশনের উপর ভিত্তি করে-
জাতীয়তা
3.1 ইউজার ইন্টারফেস
ইউজার ইন্টারফেস হেডার ইন্টারফেস নিয়ে গঠিত files ব্যবহার করে আপনি কন্ট্রোলার প্যারামিটার অ্যাক্সেস করতে পারেন। ক্লাস / ফাংশন রেফারেন্সে বর্ণিত ইউজার ইন্টারফেস ক্লাসগুলি আপনাকে এগুলি করতে দেয়:
হার্ডওয়্যার (ফিল্ডবাস অ্যাডাপ্টার) এবং কন্ট্রোলার ডিভাইস উভয়ের সাথেই সংযোগ করুন। কন্ট্রোলার প্যারামিটারগুলি পড়তে/লিখতে ডিভাইসের OD অ্যাক্সেস করুন।
3.2 NanoLib কোর
NanoLib কোরটি import লাইব্রেরি nanolib.lib এর সাথে আসে। এটি ইউজার ইন্টারফেস কার্যকারিতা বাস্তবায়ন করে এবং এর জন্য দায়ী:
যোগাযোগ লাইব্রেরি লোড এবং পরিচালনা করা। NanoLibAccessor-এ ব্যবহারকারী ইন্টারফেসের কার্যকারিতা প্রদান করা। এই যোগাযোগের প্রবেশ বিন্দুটি
ন্যানোলিব কোর এবং কমিউনিকেশন লাইব্রেরিতে আপনি চালাতে পারেন এমন এক সেট অপারেশনকে জরিমানা করে।
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
শুরু হচ্ছে
আপনার অপারেটিং সিস্টেমের জন্য কীভাবে যথাযথভাবে NanoLib সেট আপ করবেন এবং কীভাবে প্রয়োজন অনুসারে হার্ডওয়্যার সংযোগ করবেন তা পড়ুন।
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. শুধুমাত্র তারপর, আপনার অ্যাডাপ্টার ড্রাইভার ইনস্টল করুন.
৪.২ উইন্ডোজের জন্য Ixxat অ্যাডাপ্টার ড্রাইভার ইনস্টল করুন
শুধুমাত্র ড্রাইভার ইনস্টল করার পরে, আপনি Ixxat এর USB-to-CAN V2 অ্যাডাপ্টার ব্যবহার করতে পারবেন। ভার্চুয়াল কমপোর্ট (VCP) সক্রিয় করার পদ্ধতি জানতে USB ড্রাইভের পণ্য ম্যানুয়ালটি পড়ুন। 1. উইন্ডোজের জন্য Ixxat এর VCI 4 ড্রাইভার ডাউনলোড এবং ইনস্টল করুন। www.ixxat.com২. Ixxat এর USB-to-CAN V2 কমপ্যাক্ট অ্যাডাপ্টারটি USB এর মাধ্যমে পিসিতে সংযুক্ত করুন। ৩. ডিভাইস ম্যানেজারের মাধ্যমে: ড্রাইভার এবং অ্যাডাপ্টার উভয়ই যথাযথভাবে ইনস্টল/স্বীকৃত কিনা তা পরীক্ষা করুন।
৪.৩ উইন্ডোজের জন্য পিক অ্যাডাপ্টার ড্রাইভার ইনস্টল করুন
শুধুমাত্র ড্রাইভার ইনস্টল করার পরে, আপনি পিকের PCAN-USB অ্যাডাপ্টার ব্যবহার করতে পারেন। ভার্চুয়াল কমপোর্ট (VCP) সক্রিয় করার পদ্ধতি জানতে USB ড্রাইভের পণ্য ম্যানুয়ালটি পড়ুন। 1. উইন্ডোজ ডিভাইস ড্রাইভার সেটআপ (= ডিভাইস ড্রাইভার, সরঞ্জাম এবং
API গুলি) থেকে http://www.peak-system.com২. পিকের PCAN-USB অ্যাডাপ্টারটি USB এর মাধ্যমে পিসিতে সংযুক্ত করুন। ৩. ডিভাইস ম্যানেজারের মাধ্যমে: ড্রাইভার এবং অ্যাডাপ্টার উভয়ই যথাযথভাবে ইনস্টল/স্বীকৃত কিনা তা পরীক্ষা করুন।
৪.৪ লিনাক্সের জন্য 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
২. www.ixxat.com থেকে ECI-for-Linux ড্রাইভারটি ডাউনলোড করুন। এটি আনজিপ করুন:
eci_driver_linux_amd64.zip আনজিপ করুন
৩. ড্রাইভারটি এর মাধ্যমে ইনস্টল করুন:
cd /EciLinux_amd/src/KernelModule sudo make install-usb
৪. ডেমো অ্যাপ্লিকেশনটি কম্পাইল করে এবং শুরু করে সফল ড্রাইভার ইনস্টলেশন পরীক্ষা করুন:
cd /EciLinux_amd/src/EciDemos/ sudo তৈরি করুন cd /EciLinux_amd/bin/release/ ./LinuxEciDemo
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
8
4 শুরু করা
৪.৫ লিনাক্সের জন্য পিক অ্যাডাপ্টার ড্রাইভার ইনস্টল করুন
শুধুমাত্র ড্রাইভার ইনস্টল করার পরে, আপনি পিকের PCAN-USB অ্যাডাপ্টার ব্যবহার করতে পারবেন। দ্রষ্টব্য: অন্যান্য সমর্থিত অ্যাডাপ্টারগুলির জন্য sudo chmod +777/dev/ttyACM* (* ডিভাইস নম্বর) এর মাধ্যমে আপনার অনুমতি প্রয়োজন। ভার্চুয়াল কমপোর্ট (VCP) সক্রিয় করতে হবে কিনা / কীভাবে তা জানতে USB ড্রাইভের পণ্য ম্যানুয়ালটি পড়ুন। 1. আপনার লিনাক্সে কার্নেল হেডার আছে কিনা তা পরীক্ষা করুন: ls /usr/src/linux-headers-`uname -r`। যদি না থাকে, তাহলে ইনস্টল করুন
them: 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 xzf peak-linux-driver-xxx.tar.gz 5. আনপ্যাক করা ফোল্ডারে: ড্রাইভার, PCAN বেস লাইব্রেরি ইত্যাদি কম্পাইল এবং ইনস্টল করুন: সব তৈরি করুন
sudo make install 6. ফাংশনটি পরীক্ষা করতে, PCAN-USB অ্যাডাপ্টারটি প্লাগ ইন করুন।
ক) কার্নেল মডিউলটি পরীক্ষা করুন:
lsmod | grep pcan b) … এবং ভাগ করা লাইব্রেরি:
ls -l /usr/lib/libpcan*
দ্রষ্টব্য: যদি USB3 সমস্যা দেখা দেয়, তাহলে একটি USB2 পোর্ট ব্যবহার করুন।
4.6 আপনার হার্ডওয়্যার সংযুক্ত করুন
একটি NanoLib প্রকল্প চালাতে সক্ষম হতে, আপনার অ্যাডাপ্টার ব্যবহার করে একটি সামঞ্জস্যপূর্ণ Nanotec কন্ট্রোলার পিসিতে সংযুক্ত করুন। 1. একটি উপযুক্ত তারের মাধ্যমে, আপনার অ্যাডাপ্টারটি কন্ট্রোলারের সাথে সংযুক্ত করুন। 2. অ্যাডাপ্টারের ডেটা শিট অনুসারে অ্যাডাপ্টারটিকে পিসিতে সংযুক্ত করুন। 3. উপযুক্ত পাওয়ার সাপ্লাই ব্যবহার করে কন্ট্রোলারটি চালু করুন। 4. প্রয়োজনে, পণ্য ম্যানুয়াল অনুসারে Nanotec কন্ট্রোলারের যোগাযোগ সেটিংস পরিবর্তন করুন।
4.7 NanoLib লোড করুন
দ্রুত এবং সহজ মৌলিক বিষয়গুলির সাথে প্রথম শুরু করার জন্য, আপনি আমাদের প্রাক্তন ব্যবহার করতে পারেন (কিন্তু অবশ্যই করবেন না)ampলে প্রকল্প। 1. আপনার অঞ্চলের উপর নির্ভর করে: আমাদের থেকে NanoLib ডাউনলোড করুন webEMEA/APAC বা আমেরিকার জন্য সাইট। 2. প্যাকেজ আনজিপ করুন files / ফোল্ডার এবং একটি বিকল্প নির্বাচন করুন: দ্রুত এবং সহজ মৌলিক বিষয়গুলির জন্য: প্রাক্তন শুরু করা দেখুনample প্রকল্প। উইন্ডোজে উন্নত কাস্টমাইজেশনের জন্য: আপনার নিজস্ব উইন্ডোজ প্রকল্প তৈরি করা দেখুন। লিনাক্সে উন্নত কাস্টমাইজেশনের জন্য: আপনার নিজস্ব লিনাক্স প্রকল্প তৈরি করা দেখুন।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
9
প্রাক্তন শুরুampলে প্রকল্প
NanoLib যথাযথভাবে লোড করে, প্রাক্তনample প্রজেক্ট আপনাকে একটি Nanotec কন্ট্রোলারের সাথে NanoLib ব্যবহারের মাধ্যমে দেখায়। দ্রষ্টব্য: প্রতিটি পদক্ষেপের জন্য, প্রদত্ত প্রাক্তনে মন্তব্যample কোড ব্যবহৃত ফাংশন ব্যাখ্যা. প্রাক্তনampপ্রকল্পটিতে রয়েছে: `*_functions_exampলে.*' files, যা NanoLib ইন্টারফেসের জন্য বাস্তবায়ন ধারণ করে `*_callback_ex ফাংশন করেampলে.*' files, যা বিভিন্ন কলব্যাকের জন্য বাস্তবায়ন ধারণ করে (স্ক্যান, ডেটা এবং
লগিং) `মেনু_*.*' file, যার মধ্যে মেনু লজিক থাকে এবং Ex কোড থাকেampলে।* file, যা মূল প্রোগ্রাম, মেনু তৈরি করে এবং সমস্ত ব্যবহৃত প্যারামিটারগুলি শুরু করে Sampler_ex সম্পর্কেampলে।* file, যার মধ্যে প্রাক্তন রয়েছেamps এর জন্য le বাস্তবায়নampler ব্যবহার। আপনি আরও ex খুঁজে পেতে পারেনampnanotec.com-এর নলেজ বেসে বিভিন্ন অপারেশন মোডের জন্য কিছু মোশন কমান্ড সহ। সবই উইন্ডোজ বা লিনাক্সে ব্যবহারযোগ্য।
ভিজ্যুয়াল স্টুডিও ১ সহ উইন্ডোজে। এক্স খুলুনample.sln file২. এক্স খুলুনample.cpp. 3. ex কম্পাইল এবং রান করুনampকোড।
লিনাক্সে ব্যাশের মাধ্যমে ১. সোর্সটি আনজিপ করুন file, আনজিপ করা কন্টেন্ট সহ ফোল্ডারে নেভিগেট করুন। প্রধান file প্রাক্তনের জন্যample হয়
example.cpp. 2. ব্যাশে, কল করুন:
a. "sudo make install" লিখে শেয়ার করা অবজেক্টগুলো কপি করে ldconfig কল করুন। b. টেস্ট এক্সিকিউটেবল তৈরি করতে "make all" লিখে। 3. bin ফোল্ডারে একটি এক্সিকিউটেবল ex থাকেample file. bash দ্বারা: আউটপুট ফোল্ডারে যান এবং ./ex টাইপ করুনampযদি কোনও ত্রুটি না ঘটে, তাহলে আপনার শেয়ার করা বস্তুগুলি এখন যথাযথভাবে ইনস্টল করা আছে এবং আপনার লাইব্রেরি ব্যবহারের জন্য প্রস্তুত। যদি ত্রুটিটি ./ex পড়েample: শেয়ার্ড লাইব্রেরি লোড করার সময় ত্রুটি: libnanolib.so: শেয়ার্ড অবজেক্ট খুলতে পারছি না file: এমন না। file অথবা ডিরেক্টরিতে, শেয়ার্ড অবজেক্টের ইনস্টলেশন ব্যর্থ হয়েছে। এই ক্ষেত্রে, পরবর্তী পদক্ষেপগুলি অনুসরণ করুন। 4. /usr/local/lib এর মধ্যে একটি নতুন ফোল্ডার তৈরি করুন (অ্যাডমিন অধিকার প্রয়োজন)। bash-এ, এইভাবে টাইপ করুন:
sudo mkdir /usr/local/lib/ন্যানোটেক
৫. জিপ থেকে সকল শেয়ার করা বস্তু কপি করুন fileএর lib ফোল্ডার:
./lib/*.so /usr/local/lib/nanotec/ ইনস্টল করুন
৬. লক্ষ্য ফোল্ডারের বিষয়বস্তু পরীক্ষা করুন:
ls -al /usr/local/lib/nanotec/
এটিতে ভাগ করা বস্তুর তালিকা থাকা উচিত filelib ফোল্ডার থেকে s। ৭. এই ফোল্ডারে ldconfig চালান:
sudo ldconfig /usr/local/lib/nanotec/
প্রাক্তনample একটি CLI অ্যাপ্লিকেশন হিসেবে বাস্তবায়িত এবং একটি মেনু ইন্টারফেস প্রদান করে। মেনু এন্ট্রিগুলি প্রসঙ্গ ভিত্তিক এবং প্রসঙ্গ অবস্থার উপর নির্ভর করে সক্রিয় বা নিষ্ক্রিয় করা হবে। এগুলি আপনাকে একটি নিয়ামক পরিচালনা করার জন্য সাধারণ কর্মপ্রবাহ অনুসরণ করে বিভিন্ন লাইব্রেরি ফাংশন নির্বাচন এবং সম্পাদন করার সম্ভাবনা প্রদান করে: 1. সংযুক্ত হার্ডওয়্যার (অ্যাডাপ্টার) জন্য পিসি পরীক্ষা করুন এবং তাদের তালিকাভুক্ত করুন। 2. একটি অ্যাডাপ্টারের সাথে সংযোগ স্থাপন করুন। 3. সংযুক্ত নিয়ামক ডিভাইসের জন্য বাস স্ক্যান করুন। 4. একটি ডিভাইসের সাথে সংযোগ করুন।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
10
5 প্রাক্তন শুরুampলে প্রকল্প
৫. এক বা একাধিক লাইব্রেরি ফাংশন পরীক্ষা করুন: কন্ট্রোলারের অবজেক্ট ডিকশনারি থেকে/এ পড়ুন/লেখুন, ফার্মওয়্যার আপডেট করুন, একটি NanoJ প্রোগ্রাম আপলোড করুন এবং চালান, মোটরটি চালু করুন এবং এটি টিউন করুন, লগিং/গুলি কনফিগার করুন এবং ব্যবহার করুন।ampলির
৬. প্রথমে ডিভাইসের সাথে সংযোগ বন্ধ করুন, তারপর অ্যাডাপ্টারের সাথে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
11
আপনার নিজস্ব উইন্ডোজ প্রকল্প তৈরি করা
NanoLib ব্যবহার করার জন্য আপনার নিজস্ব উইন্ডোজ প্রজেক্ট তৈরি করুন, কম্পাইল করুন এবং চালান।
৬.১ ন্যানোলিব আমদানি করুন
NanoLib হেডারটি আমদানি করুন fileএমএস ভিজ্যুয়াল স্টুডিওর মাধ্যমে লাইব্রেরি এবং ডেটা সংরক্ষণ।
১. ভিজ্যুয়াল স্টুডিও খুলুন। ২. নতুন প্রজেক্ট তৈরি করুন > কনসোল অ্যাপ C++ > পরবর্তী: একটি প্রজেক্টের ধরণ নির্বাচন করুন। ৩. সলিউশন এক্সপ্লোরারে একটি প্রজেক্ট ফোল্ডার তৈরি করতে আপনার প্রজেক্টের নাম দিন (এখানে: NanolibTest)। ৪. Finish নির্বাচন করুন। ৫. উইন্ডোজ খুলুন file এক্সপ্লোরারে যান এবং নতুন তৈরি প্রজেক্ট ফোল্ডারে যান। 6. দুটি নতুন ফোল্ডার তৈরি করুন, inc এবং lib। 7. NanoLib প্যাকেজ ফোল্ডারটি খুলুন। 8. সেখান থেকে: হেডারটি কপি করুন। fileঅন্তর্ভুক্ত ফোল্ডার থেকে আপনার প্রকল্প ফোল্ডার inc এবং সমস্ত .lib এবং .dll-এ s
fileআপনার নতুন প্রোজেক্ট ফোল্ডার lib-এ s. 9. আপনার প্রোজেক্ট ফোল্ডারে সঠিক কাঠামো পরীক্ষা করুন, উদাহরণস্বরূপampLe:
যথাযথ কাঠামোর জন্য 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
৬.২ আপনার প্রকল্পটি কনফিগার করুন
NanoLib প্রকল্পগুলি সেট আপ করতে MS Visual Studio-তে Solution Explorer ব্যবহার করুন। দ্রষ্টব্য: সঠিক NanoLib অপারেশনের জন্য, Visual C++ প্রকল্প সেটিংসে রিলিজ (ডিবাগ নয়!) কনফিগারেশন নির্বাচন করুন; তারপর C++ পুনর্বণ্টনযোগ্যগুলির VC রানটাইমের সাথে প্রকল্পটি তৈরি করুন এবং লিঙ্ক করুন [2022]।
১. সলিউশন এক্সপ্লোরারে: আপনার প্রোজেক্ট ফোল্ডারে যান (এখানে: NanolibTest)। ২. কনটেক্সট মেনু খুলতে ফোল্ডারটিতে কো-ক্লিক করুন। ৩. প্রোপার্টিজ নির্বাচন করুন। ৪. সমস্ত কনফিগারেশন এবং সমস্ত প্ল্যাটফর্ম সক্রিয় করুন। ৫. C/C++ নির্বাচন করুন এবং অতিরিক্ত অন্তর্ভুক্ত ডিরেক্টরিগুলিতে যান। ৬. সন্নিবেশ করুন: $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) ৭. Linker নির্বাচন করুন এবং অতিরিক্ত লাইব্রেরি ডিরেক্টরিগুলিতে যান। ৮. সন্নিবেশ করুন: $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) ৯. Linker প্রসারিত করুন এবং ইনপুট নির্বাচন করুন। ১০. অতিরিক্ত নির্ভরতাগুলিতে যান এবং সন্নিবেশ করুন: nanolib.lib;%(AdditionalDependencies) ১১. ঠিক আছে এর মাধ্যমে নিশ্চিত করুন।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
12
৬ আপনার নিজস্ব উইন্ডোজ প্রকল্প তৈরি করা
১২. Configuration > C++ > Language > Language Standard > ISO C++12 Standard এ যান এবং ল্যাঙ্গুয়েজ স্ট্যান্ডার্ডটি C++17 (/std:c++17) এ সেট করুন।
৬.৩ আপনার প্রকল্প তৈরি করুন
MS Visual Studio তে আপনার NanoLib প্রজেক্ট তৈরি করুন। ১. মূল *.cpp খুলুন। file (এখানে: nanolib_example.cpp) এবং প্রয়োজনে কোডটি সম্পাদনা করুন। 2. Build > Configuration Manager নির্বাচন করুন। 3. Active solution platforms কে x64 এ পরিবর্তন করুন। 4. Close এর মাধ্যমে নিশ্চিত করুন। 5. Build > Build solution নির্বাচন করুন। 6. কোন ত্রুটি নেই? আপনার কম্পাইল আউটপুট যথাযথভাবে রিপোর্ট করে কিনা তা পরীক্ষা করুন:
1>—— পরিষ্কার শুরু: প্রকল্প: ন্যানোলিবটেস্ট, কনফিগারেশন: ডিবাগ x64 —–============ পরিষ্কার: 1 সফল হয়েছে, 0 ব্যর্থ হয়েছে, 0 বাদ দেওয়া হয়েছে ===========
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
13
৭ আপনার নিজস্ব লিনাক্স প্রকল্প তৈরি করা
৭ আপনার নিজস্ব লিনাক্স প্রকল্প তৈরি করা
NanoLib ব্যবহার করার জন্য আপনার নিজস্ব Linux প্রকল্প তৈরি করুন, কম্পাইল করুন এবং চালান। 1. আনজিপ করা NanoLib ইনস্টলেশন কিটে: খুলুন /nanotec_nanolib. 2. tar.gz-এ সমস্ত শেয়ার করা বস্তু খুঁজুন file৩. একটি বিকল্প নির্বাচন করুন: প্রতিটি lib একটি Make দিয়ে ইনস্টল করুনfile অথবা হাতে।
৭.১ মেক দিয়ে শেয়ার করা অবজেক্টগুলি ইনস্টল করুনfile
মেক ব্যবহার করুনfile লিনাক্স ব্যাশের সাহায্যে সমস্ত ডিফল্ট *.so স্বয়ংক্রিয়ভাবে ইনস্টল করা যাবে files. 1. Bash এর মাধ্যমে: make ধারণকারী ফোল্ডারে যানfile২. শেয়ার করা বস্তুগুলি এর মাধ্যমে অনুলিপি করুন:
sudo make install 3. এর মাধ্যমে নিশ্চিত করুন:
ldconfig
৭.২ ভাগ করা জিনিসপত্র হাতে ইনস্টল করুন
সমস্ত *.so ইনস্টল করতে একটি Bash ব্যবহার করুন fileNanoLib এর s ম্যানুয়ালি। 1. Bash এর মাধ্যমে: /usr/local/lib এর মধ্যে একটি নতুন ফোল্ডার তৈরি করুন। 2. অ্যাডমিন অধিকার প্রয়োজন! প্রকার:
sudo mkdir /usr/local/lib/nanotec ৩. আনজিপ করা ইনস্টলেশন প্যাকেজ ফোল্ডারে পরিবর্তন করুন। ৪. lib ফোল্ডার থেকে সমস্ত শেয়ার করা বস্তু কপি করুন:
./nanotec_nanolib/lib/*.so /usr/local/lib/nanotec/ ইনস্টল করুন 5. লক্ষ্য ফোল্ডারের বিষয়বস্তু পরীক্ষা করুন:
ls -al /usr/local/lib/nanotec/ 6. lib ফোল্ডার থেকে সমস্ত শেয়ার করা বস্তু তালিকাভুক্ত কিনা তা পরীক্ষা করুন। 7. এই ফোল্ডারে ldconfig চালান:
sudo ldconfig /usr/local/lib/nanotec/
৭.৩ আপনার প্রকল্প তৈরি করুন
আপনার শেয়ার করা অবজেক্ট ইনস্টল করে: আপনার লিনাক্স ন্যানোলিবের জন্য একটি নতুন প্রজেক্ট তৈরি করুন। ১. ব্যাশের মাধ্যমে: একটি নতুন প্রজেক্ট ফোল্ডার তৈরি করুন (এখানে: ন্যানোলিবটেস্ট) এর মাধ্যমে:
mkdir ন্যানোলিবটেস্ট সিডি ন্যানোলিবটেস্ট
2. হেডারটি কপি করুন files কে একটি অন্তর্ভুক্ত ফোল্ডারে (এখানে: inc) mkdir inc cp / এর মাধ্যমে পাঠান। FILE IS>/nanotec_nanolib/inc/*.hpp inc
৩. একটি প্রধান তৈরি করুন file (NanoLibTest.cpp) এর মাধ্যমে: #include “accessor_factory.hpp” #include
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
14
৭ আপনার নিজস্ব লিনাক্স প্রকল্প তৈরি করা
int main(){ nlc::NanoLibAccessor *অ্যাক্সেসর = getNanoLibAccessor();
nlc::ResultBusHwIds ফলাফল = অ্যাক্সেসর->তালিকা উপলব্ধবাসহার্ডওয়্যার();
যদি(result.hasError()) { std::cout << result.getError() << std::endl; }
অন্যথায়{ std::cout << “সাফল্য” << std::endl; }
অ্যাক্সেসর মুছে ফেলুন; 0 ফেরত দিন; }
৪. আপনার প্রকল্প ফোল্ডারে সঠিক কাঠামো আছে কিনা তা পরীক্ষা করুন:
. ন্যানোলিবটেস্ট
inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result.hpp NanoLibTest.cpp
৭.৪ আপনার প্রকল্পটি কম্পাইল এবং পরীক্ষা করুন
আপনার লিনাক্স ন্যানোলিবকে ব্যাশের মাধ্যমে ব্যবহারের জন্য প্রস্তুত করুন।
১. ব্যাশের মাধ্যমে: মূল কম্পাইল করুন file মাধ্যমে:
g++ -ওয়াল -ওয়েক্সট্রা -পেডান্টিক -I./inc -c NanoLibTest.cpp -o NanoLibTest
2. এক্সিকিউটেবলকে একসাথে লিঙ্ক করুন এর মাধ্যমে:
g++ -ওয়াল -ওয়েক্সট্রা -পেডান্টিক -I./inc -o পরীক্ষা NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
৩. পরীক্ষা প্রোগ্রামটি এর মাধ্যমে চালান:
./পরীক্ষা
৪. আপনার Bash যথাযথভাবে রিপোর্ট করছে কিনা তা পরীক্ষা করুন:
সাফল্য
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
15
8 ক্লাস / ফাংশন রেফারেন্স
8 ক্লাস / ফাংশন রেফারেন্স
এখানে NanoLib এর ইউজার ইন্টারফেস ক্লাস এবং তাদের সদস্য ফাংশনগুলির একটি তালিকা খুঁজুন। একটি ফাংশনের সাধারণ বিবরণে একটি সংক্ষিপ্ত ভূমিকা, ফাংশনের সংজ্ঞা এবং একটি প্যারামিটার/রিটার্ন তালিকা অন্তর্ভুক্ত থাকে:
ExampleFunction () ফাংশনটি কী করে তা আপনাকে সংক্ষেপে বলে।
ভার্চুয়াল অকার্যকর nlc::NanoLibAccessor::ExampleFunction (Param_a const & param_a, Param_b const & param_B)
পরামিতি param_a param_b
ResultVoid প্রদান করে
প্রয়োজনে অতিরিক্ত মন্তব্য করুন। প্রয়োজনে অতিরিক্ত মন্তব্য করুন।
8.1 NanoLibAccessor
ইন্টারফেস ক্লাস NanoLib এ এন্ট্রি পয়েন্ট হিসাবে ব্যবহৃত হয়। একটি সাধারণ কর্মপ্রবাহ এই মত দেখায়:
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 প্রদান করে
একটি ফিল্ডবাস আইডি অ্যারে সরবরাহ করে।
openBusHardwareWithProtocol () বাস হার্ডওয়্যার সংযোগ করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::ওপেনবাসহার্ডওয়্যারউইথপ্রোটোকল (বাসহার্ডওয়্যারআইডি কনস্ট এবং বাসএইচডব্লিউআইডি, বাসহার্ডওয়্যারঅপশনস কনস্ট এবং বাসএইচডব্লিউঅপ্ট)
পরামিতি busHwId busHwOpt
ResultVoid প্রদান করে
খোলার জন্য ফিল্ডবাস নির্দিষ্ট করে। ফিল্ডবাস খোলার বিকল্পগুলি নির্দিষ্ট করে৷ নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
isBusHardwareOpen () আপনার ফিল্ডবাস হার্ডওয়্যার সংযোগ খোলা আছে কিনা তা পরীক্ষা করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::ওপেনবাসহার্ডওয়্যারউইথপ্রোটোকল (কনস্ট বাসহার্ডওয়্যারআইডি এবং বাসএইচডব্লিউআইডি, কনস্ট বাসহার্ডওয়্যারঅপশন এবং বাসএইচডব্লিউঅপ্ট)
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
16
8 ক্লাস / ফাংশন রেফারেন্স
পরামিতি BusHardwareId সত্য প্রদান করে
মিথ্যা
খোলার জন্য প্রতিটি ফিল্ডবাস নির্দিষ্ট করে। হার্ডওয়্যার খোলা আছে। হার্ডওয়্যার বন্ধ।
getProtocolSpecificAccessor () প্রোটোকল-নির্দিষ্ট অ্যাক্সেসর অবজেক্ট পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::গেটপ্রোটোকলস্পেসিফিকঅ্যাক্সেসর (বাসহার্ডওয়্যারআইডি কনস্ট এবং বাসএইচডব্লিউআইডি)
পরামিতি busHwId ফলাফলVoid প্রদান করে
অ্যাক্সেসর পেতে ফিল্ডবাস নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
getProfinetDCP () Profinet DCP ইন্টারফেসে একটি রেফারেন্স ফেরত দিতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল প্রোফিনেটডিসিপি এবং গেটপ্রোফিনেটডিসিপি ()
ProfinetDCP প্রদান করে
getS সম্পর্কেamplerInterface () s এর রেফারেন্স পেতে এই ফাংশনটি ব্যবহার করুনampler ইন্টারফেস।
ভার্চুয়াল এসamplerInterface & getS সম্পর্কেamplerইন্টারফেস ()
রিটার্ন এসamplerইন্টারফেস
এস বোঝায়ampler ইন্টারফেস ক্লাস।
setBusState () বাস-প্রটোকল-নির্দিষ্ট অবস্থা সেট করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & state)
পরামিতি busHwId অবস্থা
ResultVoid প্রদান করে
খোলার জন্য ফিল্ডবাস নির্দিষ্ট করে। স্ট্রিং মান হিসাবে একটি বাস-নির্দিষ্ট অবস্থা বরাদ্দ করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
scanDevices () নেটওয়ার্কে ডিভাইসগুলির জন্য স্ক্যান করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসআইডিএস এনএলসি::ন্যানোলিবঅ্যাক্সেসর::স্ক্যানডিভাইস (কনস্ট বাসহার্ডওয়্যারআইডি এবং বাসএইচডব্লিউআইডি, এনএলসিস্ক্যানবাসকলব্যাক* কলব্যাক)
পরামিতি busHwId কলব্যাক
ResultDeviceIds IOError প্রদান করে
স্ক্যান করার জন্য ফিল্ডবাস নির্দিষ্ট করে। NlcScanBusCallback অগ্রগতি ট্রেসার। একটি ডিভাইস আইডি অ্যারে প্রদান করে। একটি ডিভাইস পাওয়া যায়নি যে অবহিত.
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
17
8 ক্লাস / ফাংশন রেফারেন্স
অ্যাডডিভাইস ()
NanoLib এর অভ্যন্তরীণ ডিভাইস তালিকায় deviceId দ্বারা বর্ণিত একটি বাস ডিভাইস যোগ করতে এবং এর জন্য deviceHandle ফেরত দিতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসহ্যান্ডেল nlc::NanoLibAccessor::addDevice (ডিভাইসআইডি কনস্ট এবং ডিভাইসআইডি)
পরামিতি deviceId ফলাফলডিভাইসহ্যান্ডেল প্রদান করে
তালিকায় যোগ করার জন্য ডিভাইসটি নির্দিষ্ট করে। একটি ডিভাইস হ্যান্ডেল প্রদান করে।
connectDevice () deviceHandle দ্বারা একটি ডিভাইস সংযোগ করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::কানেক্টডিভাইস (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফলVoid প্রদান করে
IOError সম্পর্কে
NanoLib কোন বাস ডিভাইসের সাথে সংযোগ করে তা নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে। একটি ডিভাইস পাওয়া যায়নি যে অবহিত.
getDeviceName () deviceHandle দ্বারা একটি ডিভাইসের নাম পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টস্ট্রিং nlc::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফল স্ট্রিং প্রদান করে
NanoLib কোন বাস ডিভাইসের নাম পেয়েছে তা নির্দিষ্ট করে। একটি স্ট্রিং হিসাবে ডিভাইসের নাম প্রদান করে।
getDeviceProductCode () deviceHandle দ্বারা একটি ডিভাইসের পণ্য কোড পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টইন্ট এনএলসি::ন্যানোলিবঅ্যাক্সেসর::গেটডিভাইসপ্রোডাক্টকোড (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
পরামিতি ডিভাইসহ্যান্ডেল রিটার্নস ফলাফল
NanoLib কোন বাস ডিভাইসের জন্য পণ্য কোড পায় তা নির্দিষ্ট করে। একটি পূর্ণসংখ্যা হিসাবে পণ্য কোড প্রদান করে.
getDeviceVendorId () deviceHandle দ্বারা ডিভাইস ভেন্ডর আইডি পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল ResultInt nlc::NanoLibAccessor::getDeviceVendorId (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
পরামিতি ডিভাইসহ্যান্ডেল রিটার্নস ফলাফল
রিসোর্সঅনুপলব্ধ
NanoLib কোন বাস ডিভাইসের জন্য বিক্রেতা আইডি পায় তা নির্দিষ্ট করে। একটি পূর্ণসংখ্যা হিসাবে বিক্রেতা আইডি প্রদান করে। কোন তথ্য পাওয়া যায়নি যে অবহিত.
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
18
8 ক্লাস / ফাংশন রেফারেন্স
getDeviceId () NanoLib অভ্যন্তরীণ তালিকা থেকে একটি নির্দিষ্ট ডিভাইসের আইডি পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসআইডি এনএলসি::ন্যানোলিবঅ্যাক্সেসর::গেটডিভাইসআইডি (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফল ডিভাইস আইডি প্রদান করে
NanoLib কোন বাস ডিভাইসের জন্য ডিভাইস ID পায় তা নির্দিষ্ট করে। একটি ডিভাইস আইডি প্রদান করে।
getDeviceIds () NanoLib অভ্যন্তরীণ তালিকা থেকে সমস্ত ডিভাইসের আইডি পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসআইডিএস এনএলসি::ন্যানোলিবঅ্যাক্সেসর::গেটডিভাইসআইডিএস ()
ResultDeviceIds প্রদান করে
একটি ডিভাইস আইডি তালিকা প্রদান করে।
getDeviceUid () ডিভাইসহ্যান্ডেল দ্বারা একটি ডিভাইসের অনন্য আইডি (96 বিট / 12 বাইট) পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফল অ্যারেবাইট প্রদান করে
রিসোর্সঅনুপলব্ধ
NanoLib কোন বাস ডিভাইসের জন্য অনন্য আইডি পায় তা নির্দিষ্ট করে। একটি বাইট অ্যারে হিসাবে অনন্য আইডি প্রদান করে। কোন তথ্য পাওয়া যায়নি যে অবহিত.
getDeviceSerialNumber () deviceHandle দ্বারা একটি ডিভাইসের সিরিয়াল নম্বর পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টস্ট্রিং ন্যানোলিবঅ্যাক্সেসর::গেটডিভাইসসিরিয়ালনম্বার (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফল স্ট্রিং প্রদান করে
রিসোর্সঅনুপলব্ধ
NanoLib কোন বাস ডিভাইসের জন্য সিরিয়াল নম্বর পায় তা নির্দিষ্ট করে। একটি স্ট্রিং হিসাবে সিরিয়াল নম্বর প্রদান করে। কোন তথ্য পাওয়া যায়নি যে অবহিত.
getDeviceHardwareGroup () ডিভাইসহ্যান্ডেল দ্বারা বাস ডিভাইসের হার্ডওয়্যার গ্রুপ পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসআইডি এনএলসি::ন্যানোলিবঅ্যাক্সেসর::গেটডিভাইসহার্ডওয়্যারগ্রুপ (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
পরামিতি ডিভাইসহ্যান্ডেল রিটার্নস ফলাফল
NanoLib কোন বাস ডিভাইসের জন্য হার্ডওয়্যার গ্রুপ পায় তা নির্দিষ্ট করে।
একটি পূর্ণসংখ্যা হিসাবে হার্ডওয়্যার গ্রুপ সরবরাহ করে।
getDeviceHardwareVersion () deviceHandle দ্বারা বাস ডিভাইসের হার্ডওয়্যার সংস্করণ পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসআইডি এনএলসি::ন্যানোলিবঅ্যাক্সেসর::গেটডিভাইসহার্ডওয়্যারভার্সন (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
19
8 ক্লাস / ফাংশন রেফারেন্স
প্যারামিটার ডিভাইস হ্যান্ডেল
রিটার্নস
রেজাল্টস্ট্রিং রিসোর্স অনুপলব্ধ৷
NanoLib কোন বাস ডিভাইসের জন্য হার্ডওয়্যার সংস্করণ পায় তা নির্দিষ্ট করে। একটি স্ট্রিং হিসাবে ডিভাইসের নাম প্রদান করে। কোন তথ্য পাওয়া যায়নি যে অবহিত.
getDeviceFirmwareBuildId () ডিভাইসহ্যান্ডেল দ্বারা বাস ডিভাইসের ফার্মওয়্যার বিল্ড আইডি পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসআইডি nlc::NanoLibAccessor::getDeviceFirmwareBuildId (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফল স্ট্রিং প্রদান করে
NanoLib কোন বাস ডিভাইসের জন্য ফার্মওয়্যার বিল্ড আইডি পায় তা নির্দিষ্ট করে।
একটি স্ট্রিং হিসাবে ডিভাইসের নাম প্রদান করে।
getDeviceBootloaderVersion () ডিভাইসহ্যান্ডেল দ্বারা বাস ডিভাইসের বুটলোডার সংস্করণ পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টইন্ট এনএলসি::ন্যানোলিবঅ্যাক্সেসর::গেটডিভাইসবুটলোডারভার্সন (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইস হ্যান্ডেল
রিটার্নস
ResultInt রিসোর্স অনুপলব্ধ৷
NanoLib কোন বাস ডিভাইসের জন্য বুটলোডার সংস্করণ পায় তা নির্দিষ্ট করে। একটি পূর্ণসংখ্যা হিসাবে বুটলোডার সংস্করণ প্রদান করে। কোন তথ্য পাওয়া যায়নি যে অবহিত.
getDeviceBootloaderBuildId () ডিভাইসহ্যান্ডেল দ্বারা বাস ডিভাইসের বুটলোডার বিল্ড আইডি পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টডিভাইসআইডি এনএলসি::ন্যানোলিবঅ্যাক্সেসর:: (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফল স্ট্রিং প্রদান করে
NanoLib কোন বাস ডিভাইসের জন্য বুটলোডার বিল্ড আইডি পায় তা নির্দিষ্ট করে।
একটি স্ট্রিং হিসাবে ডিভাইসের নাম প্রদান করে।
rebootDevice () deviceHandle দ্বারা ডিভাইসটি পুনরায় বুট করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::রিবুটডিভাইস (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফলVoid প্রদান করে
রিবুট করার জন্য ফিল্ডবাস নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
getDeviceState () ডিভাইস-প্রোটোকল-নির্দিষ্ট অবস্থা পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টস্ট্রিং nlc::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)
প্যারামিটার ডিভাইস হ্যান্ডেল
NanoLib কোন বাস ডিভাইসের জন্য অবস্থা পায় তা নির্দিষ্ট করে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
20
8 ক্লাস / ফাংশন রেফারেন্স
ResultString প্রদান করে
একটি স্ট্রিং হিসাবে ডিভাইসের নাম প্রদান করে।
setDeviceState () ডিভাইস-প্রোটোকল-নির্দিষ্ট অবস্থা সেট করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::সেটডিভাইসস্টেট (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল, কনস্ট স্টডি::স্ট্রিং এবং স্টেট)
প্যারামিটার ডিভাইস হ্যান্ডেল অবস্থা
ResultVoid প্রদান করে
NanoLib কোন বাস ডিভাইসের জন্য স্টেট সেট করে তা নির্দিষ্ট করে। স্ট্রিং মান হিসাবে একটি বাস-নির্দিষ্ট অবস্থা বরাদ্দ করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
সংযোগ অবস্থা ()
deviceHandle (= Disconnected, Connected, ConnectedBootloader) দ্বারা একটি নির্দিষ্ট ডিভাইসের শেষ পরিচিত সংযোগ অবস্থা পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টকানেকশনস্টেট nlc::NanoLibAccessor::getConnectionState (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
পরামিতি ডিভাইসহ্যান্ডেল ফলাফল সংযোগ রাজ্য প্রদান করে
NanoLib কোন বাস ডিভাইসের জন্য সংযোগের অবস্থা পায় তা নির্দিষ্ট করে।
একটি সংযোগ অবস্থা প্রদান করে (= সংযোগ বিচ্ছিন্ন, সংযুক্ত, সংযুক্ত বুটলোডার)।
চেককানেকশনস্টেট ()
শুধুমাত্র যদি শেষ জানা অবস্থাটি সংযোগ বিচ্ছিন্ন না থাকে: deviceHandle দ্বারা এবং বেশ কয়েকটি মোড-নির্দিষ্ট ক্রিয়াকলাপ পরীক্ষা করে একটি নির্দিষ্ট ডিভাইসের সংযোগ অবস্থা পরীক্ষা করতে এবং সম্ভবত আপডেট করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টকানেকশনস্টেট nlc::NanoLibAccessor::checkConnectionState (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
পরামিতি ডিভাইসহ্যান্ডেল ফলাফল সংযোগ রাজ্য প্রদান করে
NanoLib কোন বাস ডিভাইসের জন্য সংযোগের অবস্থা পরীক্ষা করে তা নির্দিষ্ট করে।
একটি সংযোগ অবস্থা প্রদান করে (= সংযোগ বিচ্ছিন্ন নয়)।
assignObjectDictionary () এই ম্যানুয়াল ফাংশনটি ব্যবহার করুন একটি অবজেক্ট ডিকশনারী (OD) আপনার নিজের থেকে ডিভাইসহ্যান্ডলে বরাদ্দ করতে।
ভার্চুয়াল ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)
পরামিতি ডিভাইস হ্যান্ডেল অবজেক্ট ডিকশনারি
ResultObjectDictionary ফেরত দেয়
NanoLib কোন বাস ডিভাইসে OD বরাদ্দ করে তা নির্দিষ্ট করে। একটি বস্তু অভিধানের বৈশিষ্ট্য দেখায়।
autoAssignObjectDictionary ()
এই স্বয়ংক্রিয়তা ব্যবহার করুন 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 ক্লাস / ফাংশন রেফারেন্স
প্যারামিটার ডিভাইস হ্যান্ডেল
রিটার্নস
অভিধান অবস্থানপথ ফলাফল অবজেক্ট ডিকশনারি
কোন বাস ডিভাইসের জন্য NanoLib স্বয়ংক্রিয়ভাবে উপযুক্ত OD এর জন্য স্ক্যান করবে তা নির্দিষ্ট করে। OD ডিরেক্টরির পথ নির্দিষ্ট করে। একটি বস্তু অভিধানের বৈশিষ্ট্য দেখায়।
getAssignedObjectDictionary () সম্পর্কে
deviceHandle দ্বারা একটি ডিভাইসে নির্ধারিত অবজেক্ট ডিকশনারি পেতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইস)
হাতল)
প্যারামিটার ডিভাইসহ্যান্ডল ফলাফল অবজেক্ট ডিকশনারি প্রদান করে
NanoLib কোন বাস ডিভাইসের জন্য নির্ধারিত OD পায় তা নির্দিষ্ট করে। একটি বস্তু অভিধানের বৈশিষ্ট্য দেখায়।
getObjectDictionaryLibrary () এই ফাংশনটি একটি OdLibrary রেফারেন্স প্রদান করে।
ভার্চুয়াল OdLibrary& nlc::NanoLibAccessor::getObjectDictionaryLibrary ()
ওডলাইব্রেরি ফেরত দেয়
সম্পূর্ণ OD লাইব্রেরি এবং এর অবজেক্ট ডিকশনারী খোলে।
setLoggingLevel () প্রয়োজনীয় লগ বিবরণ সেট করতে এই ফাংশনটি ব্যবহার করুন (এবং লগ file আকার)। ডিফল্ট স্তর হল তথ্য।
ভার্চুয়াল void nlc::NanoLibAccessor::setLoggingLevel (লগলেভেল লেভেল)
পরামিতি স্তর
নিম্নলিখিত লগ বিবরণ সম্ভব:
0 = ট্রেস 1 = ডিবাগ 2 = তথ্য 3 = সতর্ক 4 = ত্রুটি 5 = জটিল 6 = বন্ধ
সর্বনিম্ন স্তর (সবচেয়ে বড় লগ file); যেকোনো সম্ভাব্য বিশদ লগ, প্লাস সফ্টওয়্যার শুরু/স্টপ। লগ ডিবাগ তথ্য (= অন্তর্বর্তী ফলাফল, প্রেরিত বা প্রাপ্ত সামগ্রী, ইত্যাদি) ডিফল্ট স্তর; তথ্যমূলক বার্তা লগ করে। লগ সমস্যা যা ঘটেছে কিন্তু বর্তমান অ্যালগরিদম বন্ধ করবে না। লগ শুধুমাত্র গুরুতর সমস্যা যে অ্যালগরিদম বন্ধ করেনি. সর্বোচ্চ স্তর (সবচেয়ে ছোট লগ file); লগিং বন্ধ করে দেয়; আর কোন লগ এ সব. কোন লগিং এ সব.
সেটলগিং কলব্যাক ()
এই ফাংশনটি ব্যবহার করে একটি লগিং কলব্যাক পয়েন্টার এবং সেই কলব্যাকের জন্য লগ মডিউল (= লাইব্রেরি) সেট করুন (লগারের জন্য নয়)।
ভার্চুয়াল void nlc::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* কলব্যাক, const nlc::LogModule & logModule)
পরামিতি *কলব্যাক লগমডিউল
একটি কলব্যাক পয়েন্টার সেট করে। আপনার লাইব্রেরিতে কলব্যাক (লগার নয়!) টিউন করে।
০ = ন্যানোলিবকোর ১ = ন্যানোলিবক্যানওপেন ২ = ন্যানোলিবমডবাস ৩ = ন্যানোলিবইথারক্যাট
NanoLib-এর শুধুমাত্র কোরের জন্য একটি কলব্যাক সক্রিয় করে। একটি CANopen-only কলব্যাক সক্রিয় করে। একটি Modbus-only কলব্যাক সক্রিয় করে। একটি EtherCAT-only কলব্যাক সক্রিয় করে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
22
8 ক্লাস / ফাংশন রেফারেন্স
৪ = ন্যানোলিবরেস্ট ৫ = ন্যানোলিবইউএসবি
একটি REST-কেবল কলব্যাক সক্রিয় করে। একটি USB-কেবল কলব্যাক সক্রিয় করে।
unsetLoggingCallback () লগিং কলব্যাক পয়েন্টার বাতিল করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল অকার্যকর nlc::NanoLibAccessor::unsetLoggingCallback ()
readNumber () বস্তুর অভিধান থেকে একটি সংখ্যাসূচক মান পড়তে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল ResultInt nlc::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)
প্যারামিটার ডিভাইস হ্যান্ডেল odIndex
ফলাফল প্রদান করে
NanoLib কোন বাস ডিভাইস থেকে পড়ে তা নির্দিষ্ট করে। যেটি থেকে পড়তে হবে (উপ-) সূচকটি নির্দিষ্ট করে। একটি ব্যাখ্যাহীন সাংখ্যিক মান প্রদান করে (স্বাক্ষরিত, স্বাক্ষরবিহীন, 16.16 বিট মান ঠিক করা যেতে পারে)।
readNumberArray () অবজেক্ট অভিধান থেকে সংখ্যাসূচক অ্যারে পড়তে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t index)
প্যারামিটার ডিভাইস হ্যান্ডেল সূচক
ResultArrayInt প্রদান করে
NanoLib কোন বাস ডিভাইস থেকে পড়ে তা নির্দিষ্ট করে। অ্যারে অবজেক্ট ইনডেক্স। একটি পূর্ণসংখ্যা অ্যারে প্রদান করে।
readBytes () অবজেক্ট অভিধান থেকে ইচ্ছামত বাইট (ডোমেন অবজেক্ট ডেটা) পড়তে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)
প্যারামিটার ডিভাইস হ্যান্ডেল odIndex
ResultArrayByte প্রদান করে
NanoLib কোন বাস ডিভাইস থেকে পড়ে তা নির্দিষ্ট করে। যেটি থেকে পড়তে হবে (উপ-) সূচকটি নির্দিষ্ট করে। একটি বাইট অ্যারে প্রদান করে।
readString () অবজেক্ট ডিরেক্টরি থেকে স্ট্রিং পড়তে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টস্ট্রিং nlc::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)
প্যারামিটার ডিভাইস হ্যান্ডেল odIndex
ResultString প্রদান করে
NanoLib কোন বাস ডিভাইস থেকে পড়ে তা নির্দিষ্ট করে। যেটি থেকে পড়তে হবে (সাব-) সূচকটি নির্দিষ্ট করে। একটি স্ট্রিং হিসাবে ডিভাইসের নাম প্রদান করে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
23
8 ক্লাস / ফাংশন রেফারেন্স
writeNumber () অবজেক্ট ডিরেক্টরিতে সাংখ্যিক মান লিখতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::লেখার নম্বর (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল, int64_t মান, কনস্ট ওডিনডেক্স ওডিনডেক্স, স্বাক্ষরবিহীন ইন্ট বিটদৈর্ঘ্য)
প্যারামিটার ডিভাইস হ্যান্ডেল মান odIndex বিট দৈর্ঘ্য
ResultVoid প্রদান করে
NanoLib কোন বাস ডিভাইসে লেখে তা নির্দিষ্ট করে। ব্যাখ্যাহীন মান (স্বাক্ষরিত, স্বাক্ষরবিহীন, 16.16 ফিক্স করা যেতে পারে)। যেটি থেকে পড়তে হবে (উপ-) সূচকটি নির্দিষ্ট করে। বিট মধ্যে দৈর্ঘ্য. নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
writeBytes () অবজেক্ট ডিরেক্টরিতে নির্বিচারে বাইট (ডোমেন অবজেক্ট ডেটা) লিখতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::রাইটিংবাইটস (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল, কনস্ট স্টাডি::ভেক্টর) & ডেটা, কনস্ট ওডিনডেক্স ওডিনডেক্স)
প্যারামিটার ডিভাইস হ্যান্ডেল ডেটা odIndex
ResultVoid প্রদান করে
NanoLib কোন বাস ডিভাইসে লেখে তা নির্দিষ্ট করে। বাইট ভেক্টর/অ্যারে। যেটি থেকে পড়তে হবে (সাব-) সূচকটি নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
আপলোড ফার্মওয়্যার ()
আপনার কন্ট্রোলার ফার্মওয়্যার আপডেট করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::আপলোডফার্মওয়্যার (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল, কনস্ট স্টাডি::ভেক্টর) & fwData, NlcDataTransferCallback* কলব্যাক)
প্যারামিটার ডিভাইস হ্যান্ডেল fwData NlcDataTransferCallback
ResultVoid প্রদান করে
কোন বাস ডিভাইস NanoLib আপডেট করে তা নির্দিষ্ট করে। ফার্মওয়্যার ডেটা ধারণকারী অ্যারে। একটি ডেটা অগ্রগতি ট্রেসার। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
আপলোড ফার্মওয়্যার থেকেFile ()
আপনার কন্ট্রোলার ফার্মওয়্যার আপলোড করে আপডেট করতে এই ফাংশনটি ব্যবহার করুন file.
ভার্চুয়াল ফলাফলভয়াদ এনএলসি::ন্যানোলিবঅ্যাক্সেসর::আপলোডফার্মওয়্যারথেকেFile (const DeviceHandle deviceHandle, const std::string & absolute)Fileপাথ, NlcDataTransferCallback* কলব্যাক)
পরামিতি ডিভাইস হ্যান্ডেল পরমFileপাথ NlcDataTransferCallback
ResultVoid প্রদান করে
কোন বাস ডিভাইস NanoLib আপডেট করে তা নির্দিষ্ট করে। যাওয়ার পথ file ফার্মওয়্যার ডেটা ধারণকারী (std::string)। একটি ডেটা প্রোগ্রেস ট্রেসার। নিশ্চিত করে যে একটি void ফাংশন চালু হয়েছে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
24
8 ক্লাস / ফাংশন রেফারেন্স
আপলোড বুটলোডার ()
আপনার কন্ট্রোলার বুটলোডার আপডেট করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::আপলোডবুটলোডার (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল, কনস্ট স্টাডি::ভেক্টর) & btData, NlcDataTransferCallback* কলব্যাক)
প্যারামিটার ডিভাইস হ্যান্ডেল btData NlcDataTransferCallback
ResultVoid প্রদান করে
কোন বাস ডিভাইস NanoLib আপডেট করে তা নির্দিষ্ট করে। বুটলোডার ডেটা ধারণকারী অ্যারে। একটি ডেটা অগ্রগতি ট্রেসার। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
আপলোড বুটলোডার থেকেFile ()
আপনার কন্ট্রোলার বুটলোডার আপলোড করে আপডেট করতে এই ফাংশনটি ব্যবহার করুন file.
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::আপলোডবুটলোডারফ্রমFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsolute)Fileপাথ, NlcDataTransferCallback* কলব্যাক)
প্যারামিটার ডিভাইস হ্যান্ডেল বুটলোডার পরমFileপাথ NlcDataTransferCallback
ResultVoid প্রদান করে
কোন বাস ডিভাইস NanoLib আপডেট করে তা নির্দিষ্ট করে। যাওয়ার পথ file বুটলোডার ডেটা (std::string) ধারণ করে। একটি ডেটা প্রোগ্রেস ট্রেসার। নিশ্চিত করে যে একটি void ফাংশন চালু হয়েছে।
আপলোডবুটলোডারফার্মওয়্যার ()
আপনার কন্ট্রোলার বুটলোডার এবং ফার্মওয়্যার আপডেট করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::আপলোডবুটলোডারফার্মওয়্যার (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল, কনস্ট স্টাডি::ভেক্টর & btData, const std::vector & fwData, NlcDataTransferCallback* কলব্যাক)
প্যারামিটার ডিভাইস হ্যান্ডেল btData fwData NlcDataTransferCallback
ResultVoid প্রদান করে
কোন বাস ডিভাইস NanoLib আপডেট করে তা নির্দিষ্ট করে। বুটলোডার ডেটা ধারণকারী অ্যারে। ফার্মওয়্যার ডেটা ধারণকারী অ্যারে। একটি ডেটা অগ্রগতি ট্রেসার। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
আপলোড বুটলোডার ফার্মওয়্যার থেকেFile ()
আপলোড করে আপনার নিয়ামক বুটলোডার এবং ফার্মওয়্যার আপডেট করতে এই ফাংশনটি ব্যবহার করুন files.
ভার্চুয়াল ফলাফলভয়াবহ nlc::NanoLibঅ্যাক্সেসর::আপলোডবুটলোডারফার্মওয়্যারথেকেFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsolute)Fileপাথ, কনস্ট std::স্ট্রিং এবং অ্যাবসোলিউটFileপাথ, NlcDataTransferCallback* কলব্যাক)
প্যারামিটার ডিভাইস হ্যান্ডেল বুটলোডার পরমFileপথ পরমFileপাথ NlcDataTransferCallback
ResultVoid প্রদান করে
কোন বাস ডিভাইস NanoLib আপডেট করে তা নির্দিষ্ট করে। যাওয়ার পথ file বুটলোডার ডেটা (std::string) ধারণকারী। এর পথ file ফার্মওয়্যার ডেটা (uint8_t) ধারণকারী। একটি ডেটা অগ্রগতি ট্রেসার। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
25
8 ক্লাস / ফাংশন রেফারেন্স
আপলোড ন্যানোজে ()
আপনার কন্ট্রোলারে NanoJ প্রোগ্রামটি আপলোড করতে এই পাবলিক ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::আপলোডন্যানোজে (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল, স্টাডি::ভেক্টর) (const & vmmData, NlcDataTransferCallback* কলব্যাক)
প্যারামিটার ডিভাইস হ্যান্ডেল vmmData NlcDataTransferCallback
ResultVoid প্রদান করে
NanoLib কোন বাস ডিভাইসে আপলোড করে তা নির্দিষ্ট করে। NanoJ ডেটা ধারণকারী অ্যারে। একটি ডেটা অগ্রগতি ট্রেসার। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
NanoJFrom আপলোড করুনFile ()
আপনার কন্ট্রোলারে NanoJ প্রোগ্রামটি আপলোড করতে এই পাবলিক ফাংশনটি ব্যবহার করুন file.
ভার্চুয়াল ফলাফলভয়াদ এনএলসি::ন্যানোলিবঅ্যাক্সেসর::আপলোডন্যানোজেথেকেFile (const DeviceHandle deviceHandle, const std::string & absolute)Fileপাথ, NlcDataTransferCallback* কলব্যাক)
পরামিতি ডিভাইস হ্যান্ডেল পরমFileপাথ NlcDataTransferCallback
ResultVoid প্রদান করে
NanoLib কোন বাস ডিভাইসে আপলোড করে তা নির্দিষ্ট করে। যাওয়ার পথ file NanoJ ডেটা ধারণকারী (std::string)। একটি ডেটা প্রোগ্রেস ট্রেসার। নিশ্চিত করে যে একটি void ফাংশন চালু হয়েছে।
disconnectDevice () deviceHandle দ্বারা আপনার ডিভাইস সংযোগ বিচ্ছিন্ন করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::ডিসকানেক্টডিভাইস (ডিভাইসহ্যান্ডেল কনস্ট ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফলVoid প্রদান করে
NanoLib কোন বাস ডিভাইস থেকে সংযোগ বিচ্ছিন্ন করে তা নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
removeDevice () NanoLib এর অভ্যন্তরীণ ডিভাইস তালিকা থেকে আপনার ডিভাইসটি সরাতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::রিমুভডিভাইস (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল)
প্যারামিটার ডিভাইসহ্যান্ডেল ফলাফলVoid প্রদান করে
কোন বাস ডিভাইস NanoLib ডিলিস্ট করে তা নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
closeBusHardware () আপনার ফিল্ডবাস হার্ডওয়্যার থেকে সংযোগ বিচ্ছিন্ন করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ন্যানোলিবঅ্যাক্সেসর::ক্লোজবাসহার্ডওয়্যার (বাসহার্ডওয়্যারআইডি কনস্ট এবং বাসএইচডব্লিউআইডি)
পরামিতি busHwId ফলাফলVoid প্রদান করে
সংযোগ বিচ্ছিন্ন করার জন্য ফিল্ডবাস নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
26
8 ক্লাস / ফাংশন রেফারেন্স
8.2 BusHardwareId
একটি বাস হার্ডওয়্যার একে অপরের থেকে সনাক্ত করতে বা একে অপরের থেকে বিভিন্ন বাস হার্ডওয়্যারকে আলাদা করতে এই ক্লাসটি ব্যবহার করুন। এই শ্রেণীতে (সৃষ্টি থেকে অপরিবর্তনীয় সেটার ফাংশন ব্যতীত) এছাড়াও তথ্য ধারণ করে:
হার্ডওয়্যার (= অ্যাডাপ্টারের নাম, নেটওয়ার্ক অ্যাডাপ্টার ইত্যাদি) ব্যবহার করার জন্য প্রোটোকল (= Modbus TCP, CANopen ইত্যাদি) বাস হার্ডওয়্যার স্পেসিফায়ার (= সিরিয়াল পোর্টের নাম, MAC বন্ধুত্বপূর্ণ নাম
ঠিকানা ইত্যাদি)
BusHardwareId () [1/3] কনস্ট্রাক্টর যা একটি নতুন বাস হার্ডওয়্যার আইডি অবজেক্ট তৈরি করে।
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & name_)
পরামিতি busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
হার্ডওয়্যারের ধরন (= ZK-USB-CAN-1 ইত্যাদি)। বাস যোগাযোগ প্রোটোকল (= CANopen ইত্যাদি)। একটি হার্ডওয়্যারের স্পেসিফায়ার (= COM3 ইত্যাদি)। হার্ডওয়্যারের অতিরিক্ত স্পেসিফায়ার (বলুন, USB অবস্থানের তথ্য)। একটি বন্ধুত্বপূর্ণ নাম (= অ্যাডাপ্টারের নাম (পোর্ট) ইত্যাদি)।
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_)
পরামিতি busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
হার্ডওয়্যারের ধরন (= ZK-USB-CAN-1 ইত্যাদি)। বাস যোগাযোগ প্রোটোকল (= CANopen ইত্যাদি)। একটি হার্ডওয়্যারের স্পেসিফায়ার (= COM3 ইত্যাদি)। হার্ডওয়্যারের অতিরিক্ত স্পেসিফায়ার (বলুন, USB অবস্থানের তথ্য)। একটি বন্ধুত্বপূর্ণ নাম (= অ্যাডাপ্টারের নাম (পোর্ট) ইত্যাদি)।
BusHardwareId () [3/3] কনস্ট্রাক্টর যেটি একটি বিদ্যমান busHardwareId কপি করে।
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
পরামিতি busHardwareId
যে বাস হার্ডওয়্যার আইডি থেকে কপি করতে হবে তার নাম দেয়।
সমান () একটি নতুন বাস হার্ডওয়্যার আইডি বিদ্যমানগুলির সাথে তুলনা করে।
bool nlc::BusHardwareId::equals (BusHardwareId const & other) const
অন্যান্য পরামিতি সত্য রিটার্ন
একই শ্রেণীর আরেকটি বস্তু। যদি উভয়ই সকল মানের সমান হয়।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
27
8 ক্লাস / ফাংশন রেফারেন্স
মিথ্যা
যদি মানগুলি ভিন্ন হয়।
getBusHardware () বাস হার্ডওয়্যার স্ট্রিং পড়ে।
std::string nlc::BusHardwareId::getBusHardware () কনস্ট
স্ট্রিং প্রদান করে
getHardwareSpecifier () বাস হার্ডওয়্যারের স্পেসিফায়ার স্ট্রিং (= নেটওয়ার্ক নাম ইত্যাদি) পড়ে।
std::string nlc::BusHardwareId::getHardwareSpecifier () const
স্ট্রিং প্রদান করে
getExtraHardwareSpecifier () বাসের অতিরিক্ত হার্ডওয়্যারের স্পেসিফায়ার স্ট্রিং (= MAC ঠিকানা ইত্যাদি) পড়ে।
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () const
স্ট্রিং প্রদান করে
getName () বাস হার্ডওয়্যারের বন্ধুত্বপূর্ণ নামটি পড়ে শোনায়।
std::string nlc::BusHardwareId::getName () কনস্ট
স্ট্রিং প্রদান করে
getProtocol () বাস প্রোটোকল স্ট্রিং পড়ে।
std::string nlc::BusHardwareId::getProtocol () কনস্ট
স্ট্রিং প্রদান করে
toString() বাস হার্ডওয়্যার আইডিকে স্ট্রিং হিসেবে ফেরত পাঠায়।
std::string nlc::BusHardwareId::toString () কনস্ট
স্ট্রিং প্রদান করে
8.3 BusHardware অপশন
এই ক্লাসে, স্ট্রিংগুলির একটি কী-মান তালিকায়, একটি বাস হার্ডওয়্যার খোলার জন্য প্রয়োজনীয় সমস্ত বিকল্প খুঁজুন।
সংস্করণ: 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 () অতিরিক্ত কী এবং মান তৈরি করে।
void nlc::BusHardwareOptions::addOption (std::string const & key, std::string const & value)
পরামিতি কী মান
Example: BAUD_RATE_OPTIONS_NAME, bus_hw_options_ ডিফল্ট দেখুন
Example: BAUD_RATE_1000K, bus_hw_options_defaults দেখুন
সমান () বিদ্যমানগুলির সাথে BusHardware অপশনের তুলনা করে।
bool nlc::BusHardwareOptions::equals (BusHardwareOptions const & other) const
অন্যান্য পরামিতি সত্য রিটার্ন
মিথ্যা
একই শ্রেণীর আরেকটি বস্তু। যদি অন্য অবজেক্টে ঠিক একই অপশন থাকে। যদি অন্য বস্তুর বিভিন্ন কী বা মান থাকে।
getOptions () যোগ করা সমস্ত কী-মান জোড়া পড়ে।
স্ট্যান্ডার্ড::মানচিত্র nlc::BusHardwareOptions::getOptions () কনস্ট
স্ট্রিং মানচিত্র প্রদান করে
toString () একটি স্ট্রিং হিসাবে সমস্ত কী / মান প্রদান করে।
std::string nlc::BusHardwareId::toString () কনস্ট
স্ট্রিং প্রদান করে
8.4 BusHwOptions ডিফল্ট
এই ডিফল্ট কনফিগারেশন বিকল্প ক্লাসে নিম্নলিখিত সর্বজনীন বৈশিষ্ট্য রয়েছে:
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
29
8 ক্লাস / ফাংশন রেফারেন্স
const CanBus const Serial const RESTfulBus const EtherCATBus
canBus = CanBus () সিরিয়াল = সিরিয়াল () restfulBus = RESTfulBus() ethercatBus = EtherCATBus()
8.5 CanBaudRate
নিম্নোক্ত সর্বজনীন বৈশিষ্ট্যগুলিতে 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
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_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 CanOpenNmtService
NMT পরিষেবার জন্য, এই কাঠামোতে নিম্নলিখিত পাবলিক অ্যাট্রিবিউটে স্ট্রিং মান হিসাবে CANopen NMT স্টেট রয়েছে:
const std::string const std::string const std::string const std::string const std::string
START = “শুরু” STOP = “STOP” PRE_OPERATIONAL = “PRE_OPERATIONAL” RESET = “RESET” RESET_COMMUNICATION = “RESET_COMMUNICATION”
8.8 CanOpenNmtState
এই স্ট্রাকটে নিম্নলিখিত পাবলিক অ্যাট্রিবিউটে স্ট্রিং মান হিসাবে CANopen NMT স্টেট রয়েছে:
const std::string const std::string const std::string const std::string const std::string
স্টপড = "স্টপড" প্রি_অপারেশনাল = "প্রি_অপারেশনাল" অপারেশনাল = "অপারেশনাল" ইনিশিয়ালাইজেশন = "শুরু করা" অজানা = "অজানা"
8.9 EtherCATBus কাঠামো
এই স্ট্রাকটে নিম্নলিখিত সর্বজনীন বৈশিষ্ট্যগুলিতে EtherCAT যোগাযোগ কনফিগারেশন বিকল্প রয়েছে:
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
30
8 ক্লাস / ফাংশন রেফারেন্স
const std::string NETWORK_FIRMWARE_STATE_OP- নেটওয়ার্ক অবস্থাকে ফার্মওয়্যার মোড হিসেবে বিবেচনা করা হবে। গ্রহণযোগ্য
TION_NAME = “নেটওয়ার্ক ফার্মওয়্যারের অবস্থা”
মান (ডিফল্ট = PRE_OPERATIONAL):
EtherCATSstate::PRE_OPERATIONAL EtherCATSstate::SAFE_OPERATIONAL EtherCATSstate::OPERATIONAL
const std::string DEFAULT_NETWORK_FIRMWARE_STATE = “PRE_OPERATIONAL”
const std::string EXCLUSIVE_LOCK_TIMEOUT_OP- এক্সক্লুসিভ লক অন অর্জনের জন্য মিলিসেকেন্ডে টাইমআউট
TION_NAME = “শেয়ার্ড লক টাইমআউট”
নেটওয়ার্ক (ডিফল্ট = 500 ms)।
const আনসাইনড int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = "500"
const std::string SHARED_LOCK_TIMEOUT_OPTION_ টাইমআউট মিলিসেকেন্ডে শেয়ার্ড লক অন অর্জন করতে
NAME = “শেয়ার্ড লক টাইমআউট”
নেটওয়ার্ক (ডিফল্ট = 250 ms)।
const স্বাক্ষরবিহীন int DEFAULT_SHARED_LOCK_TIMEOUT = "250"
const std::string READ_TIMEOUT_OPTION_NAME = একটি পঠন অপারেশনের জন্য মিলিসেকেন্ডে সময়সীমা (ডিফল্ট)
"পড়ার সময়সীমা শেষ"
= ৭০০ মিলিসেকেন্ড)।
const আনসাইনড int DEFAULT_READ_TIMEOUT = “700”
const std::string WRITE_TIMEOUT_OPTION_NAME = লেখার অপারেশনের জন্য মিলিসেকেন্ডে সময়সীমা (ডিফল্ট)
"লেখার সময়সীমা শেষ"
= ৭০০ মিলিসেকেন্ড)।
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 প্রক্রিয়াকরণ সক্ষম বা অক্ষম করে
= “PDO IO সক্রিয়”
আউটপুট (শুধুমাত্র "সত্য" বা "ফলস"; ডিফল্ট = "সত্য")।
const std::string DEFAULT_PDO_IO_ENABLED = "সত্য"
8.10 EtherCATSstate struct
এই স্ট্রাকটে নিম্নলিখিত পাবলিক অ্যাট্রিবিউটে স্ট্রিং মান হিসাবে EtherCAT স্লেভ/নেটওয়ার্ক স্টেট রয়েছে। দ্রষ্টব্য: পাওয়ার চালু থাকা ডিফল্ট অবস্থা হল PRE_OPERATIONAL; NanoLib একটি অ-রিয়েলটাইম অপারেটিং সিস্টেমে কোন নির্ভরযোগ্য "পরিচালনামূলক" অবস্থা প্রদান করতে পারে না:
const std::string const std::string const std::string const std::string const std::string const std::string const std::string
NONE = "NONE" INIT = "INIT" PRE_OPERATIONAL = "PRE_OPERATIONAL" BOOT = "BOOT" SAFE_OPERATIONAL = "SAFE_OPERATIONAL" অপারেশনাল = "পরিচালনামূলক"
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
31
8 ক্লাস / ফাংশন রেফারেন্স
8.11 Ixxat
এই কাঠামোটিতে নিম্নলিখিত পাবলিক বৈশিষ্ট্যগুলিতে Ixxat usb-to-can এর সমস্ত তথ্য রয়েছে:
কনস্ট স্টডি::স্ট্রিং
ADAPTER_BUS_NUMBER_OPTIONS_NAME = "ixxat অ্যাডাপ্টার বাস নম্বর"
const IxxatAdapterBusNumber adapterBusNumber = 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 শিখর
এই স্ট্রাক্টটিতে নিম্নলিখিত পাবলিক অ্যাট্রিবিউটগুলিতে পিক ইউএসবি-টু-ক্যানের সমস্ত তথ্য রয়েছে:
কনস্ট স্টডি::স্ট্রিং
ADAPTER_BUS_NUMBER_OPTIONS_NAME = "পিক অ্যাডাপ্টার বাস নম্বর"
কনস্ট পিকএডাপ্টারবাসনম্বার অ্যাডাপ্টারবাসনম্বার = পিকএডাপ্টারবাসনম্বার ()
৮.১৪ পিকঅ্যাডাপ্টারবাসনম্বার
এই স্ট্রাক্টটি নিম্নলিখিত পাবলিক বৈশিষ্ট্যগুলিতে পিক ইউএসবি-টু-ক্যানের জন্য বাস নম্বর ধারণ করে:
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 ক্লাস / ফাংশন রেফারেন্স
সমান () একটি প্রদত্ত ডিভাইস হ্যান্ডেলের সাথে নিজেকে তুলনা করে।
bool সমান (DeviceHandle const other) const (uint32_t হ্যান্ডেল)
toString () ডিভাইস হ্যান্ডেলের একটি স্ট্রিং উপস্থাপনা প্রদান করে।
std::string toString () const
get() ডিভাইস হ্যান্ডেলটি ফেরত দেয়।
uint32_t () কনস্ট পাবেন
8.16 ডিভাইস আইডি
বাসে ডিভাইসগুলি সনাক্ত করতে এবং আলাদা করতে এই ক্লাসটি ব্যবহার করুন (সৃষ্টি থেকে অপরিবর্তনীয় নয়)
হার্ডওয়্যার অ্যাডাপ্টার শনাক্তকারী
ডিভাইস শনাক্তকারী
বর্ণনা
ডিভাইস আইডি / বর্ণনা মানগুলির অর্থ বাসের উপর নির্ভর করে। প্রাক্তন জন্যample, একটি 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) কনস্ট এবং এক্সট্রাআইডি_, স্টাডি::স্ট্রিং কনস্ট এবং এক্সট্রাস্ট্রিংআইডি_)
প্যারামিটার busHardwareId_ deviceId_ description_ extraId_ extraStringId_
বাসের শনাক্তকারী। একটি সূচক; বাসের উপর নির্ভর করে (= ক্যানোপেন নোড আইডি ইত্যাদি)। একটি বর্ণনা (খালি হতে পারে); বাসের উপর নির্ভর করে। একটি অতিরিক্ত আইডি (খালি হতে পারে); অর্থ বাসের উপর নির্ভর করে। অতিরিক্ত স্ট্রিং আইডি (খালি হতে পারে); অর্থ বাসের উপর নির্ভর করে।
DeviceId () [3/3] একটি ডিভাইস আইডি অবজেক্টের একটি অনুলিপি তৈরি করে।
nlc::DeviceId::DeviceId (ডিভাইস আইডি কনস্ট &)
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
33
8 ক্লাস / ফাংশন রেফারেন্স
প্যারামিটার ডিভাইসআইডি_
ডিভাইস আইডি থেকে কপি করতে হবে।
সমান () বিদ্যমান বস্তুর সাথে নতুনের তুলনা করে।
bool nlc::DeviceId::equals (DeviceId const & other) const
বুলিয়ান ফেরত দেয়
getBusHardwareId () বাস হার্ডওয়্যার আইডি পড়ে।
BusHardwareId nlc::DeviceId::getBusHardwareId () কনস্ট
BusHardwareId ফেরত দেয়
getDescription () ডিভাইসের বিবরণ পড়ে (হয়তো অব্যবহৃত)।
std::string nlc::DeviceId::getDescription () const
স্ট্রিং প্রদান করে
getDeviceId () ডিভাইস আইডি পড়ে (হয়তো অব্যবহৃত)।
স্বাক্ষরবিহীন int nlc::DeviceId::getDeviceId () const
স্বাক্ষরবিহীন int ফেরত দেয়
toString () বস্তুটিকে একটি স্ট্রিং হিসাবে ফেরত দেয়।
std::string nlc::DeviceId::toString () কনস্ট
স্ট্রিং প্রদান করে
getExtraId () ডিভাইসের অতিরিক্ত আইডি পড়ে (অব্যবহৃত হতে পারে)।
কনস্ট স্টাডি::ভেক্টর &getExtraId () কনস্ট
ভেক্টর ফেরত দেয়
অতিরিক্ত অতিরিক্ত ID এর একটি ভেক্টর (খালি হতে পারে); মানে বাসের উপর নির্ভর করে।
getExtraStringId () ডিভাইসের অতিরিক্ত স্ট্রিং আইডি পড়ে (অব্যবহৃত হতে পারে)।
std::string getExtraStringId () const
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
34
8 ক্লাস / ফাংশন রেফারেন্স
স্ট্রিং প্রদান করে
অতিরিক্ত স্ট্রিং আইডি (খালি হতে পারে); মানে বাসের উপর নির্ভর করে।
8.17 লগলেভেল কনভার্টার
এই ক্লাসটি আপনার লগ লেভেলকে স্ট্রিং হিসেবে রিটার্ন করে। static std::string toString (nlc::LogLevel logLevel)
৮.১৮ লগমডিউল কনভার্টার
এই ক্লাসটি আপনার লাইব্রেরি-নির্দিষ্ট লগ modulesetLoggingLevel() কে একটি স্ট্রিং হিসেবে ফেরত পাঠায়।
স্ট্যাটিক std::string
toString (nlc::LogModule logModule)
স্ট্যাটিক std::string toString (nlc::LogModule logModule)
8.19 অবজেক্ট ডিকশনারি
এই শ্রেণীটি একটি কন্ট্রোলারের একটি অবজেক্ট ডিকশনারি উপস্থাপন করে এবং এতে নিম্নলিখিত পাবলিক সদস্য ফাংশন রয়েছে: getDeviceHandle ()
ভার্চুয়াল রেজাল্টডিভাইসহ্যান্ডেল getDeviceHandle () const রেজাল্টডিভাইসহ্যান্ডেল ফেরত দেয়
getObject() ভার্চুয়াল ResultObjectSubEntry getObject (OdIndex const odIndex) ResultObjectSubEntry প্রদান করে
getObjectEntry () ভার্চুয়াল ResultObjectEntry getObjectEntry (uint16_t index)
ResultObjectEntry ফেরত দেয়
একটি বস্তুর বৈশিষ্ট্য সম্পর্কে অবহিত করে।
getXmlFileনাম () ভার্চুয়াল রেজাল্টস্ট্রিং getXmlFileনাম () স্থির
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 () প্রদান করে
ভার্চুয়াল রেজাল্টস্ট্রিং রিডস্ট্রিং (ওডিইন্ডেক্স কনস্ট ওডিইন্ডেক্স) রিজাল্টস্ট্রিং রিডাইন্স করে
const & data) ফলাফল প্রদান করে Void সম্পর্কিত লিঙ্ক OdIndex
8.20 অবজেক্ট এন্ট্রি
এই ক্লাসটি অবজেক্ট ডিকশনারির একটি অবজেক্ট এন্ট্রি উপস্থাপন করে, এতে নিম্নলিখিত স্ট্যাটিক সুরক্ষিত বৈশিষ্ট্য এবং পাবলিক সদস্য ফাংশন রয়েছে:
স্ট্যাটিক nlc::ObjectSubEntry invalidObject
getName () একটি স্ট্রিং হিসাবে অবজেক্টের নাম পড়ে।
ভার্চুয়াল std::string getName () const
getPrivate () বস্তুটি ব্যক্তিগত কিনা তা পরীক্ষা করে।
ভার্চুয়াল বুল গেটপ্রাইভেট () কনস্ট
getIndex () অবজেক্ট ইনডেক্সের ঠিকানা পড়ে।
ভার্চুয়াল uint16_t getIndex () কনস্ট
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
36
8 ক্লাস / ফাংশন রেফারেন্স
getDataType () অবজেক্টের ডাটা টাইপ পড়ে।
ভার্চুয়াল nlc::ObjectEntryDataType getDataType () const
getObjectCode () অবজেক্ট কোড পড়ে:
Null Deftype Defstruct Var অ্যারে রেকর্ড
0x00 0x05 0x06 0x07 0x08 0x09
ভার্চুয়াল এনএলসি::অবজেক্টকোড getObjectCode () কনস্ট
getObjectSaveable () বস্তুটি সংরক্ষণযোগ্য কিনা তা পরীক্ষা করে এবং এটির বিভাগ (আরো বিশদ বিবরণের জন্য পণ্যের ম্যানুয়াল দেখুন): আবেদন, যোগাযোগ, ড্রাইভ, MISC_CONFIG, MODBUS_RTU, NO, TUNING, CUSTOMER, ETHERNET, CANOPEN, VERIFYUNKVYPEAWY1020
ভার্চুয়াল nlc::ObjectSaveable getObjectSaveable () const
getMaxSubIndex () এই অবজেক্ট দ্বারা সমর্থিত সাবইন্ডেক্সের সংখ্যা পড়ে।
ভার্চুয়াল uint8_t getMaxSubIndex () কনস্ট
getSubEntry () ভার্চুয়াল nlc::ObjectSubEntry এবং getSubEntry (uint8_t সাবইনডেক্স)
ObjectSubEntry আরও দেখুন।
8.21 অবজেক্ট সাব-এন্ট্রি
এই শ্রেণীটি অবজেক্ট অভিধানের একটি অবজেক্ট সাব-এন্ট্রি (সাব-এন্ট্রি) প্রতিনিধিত্ব করে এবং নিম্নলিখিত পাবলিক সদস্য ফাংশন রয়েছে:
getName () একটি স্ট্রিং হিসাবে অবজেক্টের নাম পড়ে।
ভার্চুয়াল std::string getName () const
getSubIndex () সাবইনডেক্সের ঠিকানা পড়ে।
ভার্চুয়াল uint8_t getSubIndex () কনস্ট
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
37
8 ক্লাস / ফাংশন রেফারেন্স
getDataType () অবজেক্টের ডাটা টাইপ পড়ে।
ভার্চুয়াল nlc::ObjectEntryDataType getDataType () const
getSdoAccess () SDO এর মাধ্যমে সাবইনডেক্স অ্যাক্সেসযোগ্য কিনা তা পরীক্ষা করে:
শুধুমাত্র পঠনযোগ্য
1
শুধু লিখুন
2
ReadWrite
3
প্রবেশধিকার নেই
0
ভার্চুয়াল nlc::ObjectSdoAccessAttribute getSdoAccess () const
getPdoAccess () PDO এর মাধ্যমে সাবইনডেক্স অ্যাক্সেসযোগ্য/ম্যাপযোগ্য কিনা তা পরীক্ষা করে:
Tx
1
Rx
2
TxRx
3
না
0
ভার্চুয়াল nlc::ObjectPdoAccessAttribute getPdoAccess () const
getBitLength () সাবইনডেক্সের দৈর্ঘ্য পরীক্ষা করে।
ভার্চুয়াল uint32_t getBitLength () const
getDefaultValueAsNumeric () সাংখ্যিক ডেটা প্রকারের জন্য সাবইনডেক্সের ডিফল্ট মান পড়ে।
ভার্চুয়াল রেজাল্টইন্ট getDefaultValueAsNumeric (std::string const & key) const
getDefaultValueAsString () স্ট্রিং ডেটা প্রকারের জন্য সাবইনডেক্সের ডিফল্ট মান পড়ে।
ভার্চুয়াল রেজাল্টস্ট্রিং getDefaultValueAsString (std::string const & key) const
getDefaultValues () সাবইনডেক্সের ডিফল্ট মানগুলি পড়ে।
ভার্চুয়াল std::map ডিফল্ট ভ্যালু () কনস্ট
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
38
8 ক্লাস / ফাংশন রেফারেন্স
readNumber () সাবইনডেক্সের সংখ্যাসূচক প্রকৃত মান পড়ে।
ভার্চুয়াল রেজাল্টইন্ট রিডনম্বর () কনস্ট
readString () সাবইনডেক্সের স্ট্রিং এর প্রকৃত মান পড়ে।
ভার্চুয়াল রেজাল্টস্ট্রিং রিডস্ট্রিং () কনস্ট
readBytes () বাইটে সাবইনডেক্সের প্রকৃত মান পড়ে।
ভার্চুয়াল রেজাল্টঅ্যারেবাইট রিডবাইটস () কনস্ট
writeNumber () সাবইনডেক্সে একটি সংখ্যাসূচক মান লেখে।
ভার্চুয়াল রেজাল্টভয়েড লেখার নম্বর (const int64_t মান) const
writeBytes () বাইটে সাবইনডেক্সে একটি মান লেখে।
ভার্চুয়াল রেজাল্টভয়েড রাইটবাইটস (std::vector) (const & data) (const)
8.22 OdIndex
অবজেক্ট ডিরেক্টরি সূচক / উপ-সূচকগুলি মোড়ানো এবং সনাক্ত করতে এই শ্রেণীটি (সৃষ্টি থেকে অপরিবর্তনীয়) ব্যবহার করুন। একটি ডিভাইসের 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 () কনস্ট
uint16_t ফেরত দেয়
getSubindex () সাব-ইনডেক্স পড়ে (0x00 থেকে 0xFF পর্যন্ত)
uint8_t nlc::OdIndex::getSubIndex () কনস্ট
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
39
8 ক্লাস / ফাংশন রেফারেন্স
uint8_t ফেরত দেয়
toString () একটি স্ট্রিং হিসাবে সূচী এবং সাবইনডেক্স প্রদান করে। স্ট্রিং ডিফল্ট 0xIIII:0xSS নিম্নরূপ পড়ে:
I = 0x0000 থেকে 0xFFFF পর্যন্ত সূচক
S = 0x00 থেকে 0xFF পর্যন্ত উপ-সূচক
std::string nlc::OdIndex::toString () const
0xIIII:0xSS প্রদান করে
ডিফল্ট স্ট্রিং প্রতিনিধিত্ব
8.23 ওডলাইব্রেরি
XML থেকে ObjectDictionary ক্লাসের উদাহরণ তৈরি করতে এই প্রোগ্রামিং ইন্টারফেসটি ব্যবহার করুন। assignObjectDictionary দ্বারা, আপনি একটি স্বতন্ত্রভাবে তৈরি শনাক্তকারীর কারণে প্রতিটি উদাহরণকে একটি নির্দিষ্ট ডিভাইসে আবদ্ধ করতে পারেন। এইভাবে তৈরি করা অবজেক্ট ডিকশনারি ইনস্ট্যান্সগুলি সূচী দ্বারা অ্যাক্সেস করার জন্য OdLibrary অবজেক্টে সংরক্ষণ করা হয়। ODLibrary ক্লাস থেকে ObjectDictionary আইটেম লোড হয় file বা অ্যারে, সেগুলি সঞ্চয় করে এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getObjectDictionaryCount () ভার্চুয়াল uint32_t getObjectDictionaryCount () const
getObjectDictionary () ভার্চুয়াল ResultObjectDictionary getObjectDictionary (uint32_t odIndex)
ResultObjectDictionary ফেরত দেয়
AddObjectDictionaryFromFile ()
ভার্চুয়াল ResultObjectDictionary addObjectDictionaryFromFile (std::string const এবং absoluteXml)Fileপথ)
ResultObjectDictionary ফেরত দেয়
অ্যাডঅবজেক্ট ডিকশনারি ()
ভার্চুয়াল ResultObjectDictionary addObjectDictionary (std::vector) কনস্ট এবং odXmlData, কনস্ট std::string &xmlFileপথ = std::string ())
ResultObjectDictionary ফেরত দেয়
8.24 OdTypesHelper
নিম্নলিখিত পাবলিক মেম্বার ফাংশনগুলি ছাড়াও, এই ক্লাসে কাস্টম ডেটা টাইপ রয়েছে। দ্রষ্টব্য: আপনার কাস্টম ডেটা টাইপগুলি পরীক্ষা করতে, 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 () একটি ডেটা টাইপ সাংখ্যিক কিনা তা জানায়।
স্ট্যাটিক বুল isNumericDataType (অবজেক্টএন্ট্রিডেটাটাইপ ডেটাটাইপ)
isDefstructIndex () অবজেক্ট যদি একটি সংজ্ঞা কাঠামো সূচক বা না হয় তা জানায়।
স্ট্যাটিক বুল isDefstructIndex (uint16_t typeNum)
isDeftypeIndex () একটি অবজেক্ট একটি সংজ্ঞা টাইপ ইনডেক্স কিনা তা জানায়।
স্ট্যাটিক বুল isDeftypeIndex (uint16_t typeNum)
isComplexDataType () একটি ডেটা টাইপ জটিল কিনা তা জানায়।
স্ট্যাটিক বুল isComplexDataType (অবজেক্টএন্ট্রিডেটাটাইপ ডেটাটাইপ)
uintToObjectEntryDataType () স্বাক্ষরবিহীন পূর্ণসংখ্যাকে OD ডেটা টাইপে রূপান্তর করে।
sstatic ObjectEntryDataType uintToObjectEntryDataType (uint16_t objectDataType)
objectEntryDataTypeToString () OD ডেটা টাইপকে স্ট্রিংয়ে রূপান্তর করে।
স্ট্যাটিক std::string objectEntryDataTypeToString (অবজেক্টএন্ট্রিডেটাটাইপ odDataType)
stringToObjectEntryDatatype () সম্ভব হলে স্ট্রিংকে ওডি ডেটা টাইপে রূপান্তর করে। অন্যথায়, UNKNOWN_DATATYPE ফেরত দেয়।
স্ট্যাটিক অবজেক্টএন্ট্রিডেটাটাইপ স্ট্রিংটুঅবজেক্টএন্ট্রিডেটাটাইপ (std::string ডেটাটাইপস্ট্রিং)
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
41
8 ক্লাস / ফাংশন রেফারেন্স
objectEntryDataTypeBitLength () অবজেক্ট এন্ট্রি ডেটা টাইপের বিট দৈর্ঘ্যের উপর তথ্য দেয়।
স্ট্যাটিক uint32_t অবজেক্টএন্ট্রিডেটাটাইপবিটলেংথ (অবজেক্টএন্ট্রিডেটাটাইপ কনস্ট এবং ডেটাটাইপ)
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 Request টাইমআউট" DEFAULT_REQUEST_TIMEOUT = 200 RESPONSE_TIMEOUT_OPTION_NAME = 750 RESPONSE_TIMEOUT_OPTION_NAME "RESTful timeout" XNUMX
8.26 ProfinetDCP
Linux এর অধীনে, কলিং অ্যাপ্লিকেশনটির প্রয়োজন 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. পরিবেশ পথ
এই ক্লাসটি একটি Profinet DCP ইন্টারফেস প্রতিনিধিত্ব করে এবং নিম্নলিখিত পাবলিক সদস্য ফাংশন আছে:
getScanTimeout () একটি ডিভাইস স্ক্যান টাইমআউট সম্পর্কে তথ্য দেয় (ডিফল্ট = 2000 ms)।
ভার্চুয়াল uint32_t nlc::ProfinetDCP::getScanTimeout () কনস্ট
setScanTimeout () একটি ডিভাইস স্ক্যান টাইমআউট সেট করে (ডিফল্ট = 2000 ms)।
ভার্চুয়াল অকার্যকর nlc::setScanTimeout (uint32_t টাইমআউটMsec)
getResponseTimeout () সেটআপ, রিসেট এবং ব্লিঙ্ক অপারেশন (ডিফল্ট = 1000 ms) এর জন্য একটি ডিভাইসের প্রতিক্রিয়া সময়সীমা সম্পর্কে অবহিত করে।
ভার্চুয়াল uint32_t nlc::ProfinetDCP::getResponseTimeout () কনস্ট
setResponseTimeout () সেটআপ, রিসেট এবং ব্লিঙ্ক অপারেশন (ডিফল্ট = 1000 ms) এর জন্য একটি ডিভাইসের প্রতিক্রিয়া সময়সীমা সম্পর্কে অবহিত করে।
ভার্চুয়াল অকার্যকর nlc::ProfinetDCP::setResponseTimeout (uint32_t টাইমআউটMsec)
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
42
8 ক্লাস / ফাংশন রেফারেন্স
isService Available ()
Profinet DCP পরিষেবা উপলব্ধতা পরীক্ষা করতে এই ফাংশনটি ব্যবহার করুন৷
নেটওয়ার্ক অ্যাডাপ্টারের বৈধতা / প্রাপ্যতা উইন্ডোজ: WinPcap / Npcap প্রাপ্যতা লিনাক্স: CAP_NET_ADMIN / CAP_NET_RAW ক্ষমতা
ভার্চুয়াল রেজাল্টভয়েড nlc::ProfinetDCP::isService Available (const BusHardwareId এবং busHardwareId)
পরামিতি BusHardwareId সত্য প্রদান করে
মিথ্যা
Profinet DCP পরিষেবার হার্ডওয়্যার আইডি চেক করতে। সেবা পাওয়া যায়। সেবা অনুপলব্ধ।
scanProfinetDevices () Profinet ডিভাইসের উপস্থিতির জন্য হার্ডওয়্যার বাস স্ক্যান করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টপ্রোফিনেটডিভাইস স্ক্যানপ্রোফিনেটডিভাইস (কনস্ট বাসহার্ডওয়্যারআইডি এবং বাসহার্ডওয়্যারআইডি)
পরামিতি BusHardwareId ResultProfinetDevices প্রদান করে
খোলার জন্য প্রতিটি ফিল্ডবাস নির্দিষ্ট করে। হার্ডওয়্যার খোলা আছে।
setupProfinetDevice () নিম্নলিখিত ডিভাইস সেটিংস স্থাপন করে:
ডিভাইসের নাম
আইপি ঠিকানা
নেটওয়ার্ক মাস্ক
ডিফল্ট গেটওয়ে
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::সেটআপপ্রোফিনেটডিভাইস (কনস্ট BusHardwareId এবং busHardwareId, কনস্ট ProfinetDevice স্ট্রাক্ট এবং profinetDevice, bool savePermanent)
resetProfinetDevice () ডিভাইসটি বন্ধ করে এবং ফ্যাক্টরি ডিফল্টে পুনরায় সেট করে।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::রিসেটপ্রোফিনেটডিভাইস (কনস্ট্যান্ট বাসহার্ডওয়্যারআইডি এবং বাসহার্ডওয়্যারআইডি, কনস্ট্যান্ট প্রোফিনেটডিভাইস এবং প্রোফিনেটডিভাইস)
blinkProfinetDevice () Profinet ডিভাইসটিকে তার Profinet LED ব্লিঙ্ক করা শুরু করার নির্দেশ দেয়।
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::ব্লিঙ্কপ্রোফিনেটডিভাইস (কনস্ট্যান্ট বাসহার্ডওয়্যারআইডি এবং বাসহার্ডওয়্যারআইডি, কনস্ট্যান্ট প্রোফিনেটডিভাইস এবং প্রোফিনেটডিভাইস)
validateProfinetDeviceIp () ডিভাইসের আইপি ঠিকানা চেক করতে এই ফাংশনটি ব্যবহার করুন।
ভার্চুয়াল রেজাল্টভয়েড ভ্যালিডেটপ্রোফিনেটডিভাইসআইপি (কনস্ট বাসহার্ডওয়্যারআইডি এবং বাসহার্ডওয়্যারআইডি, কনস্ট প্রোফিনেটডিভাইস এবং প্রোফিনেটডিভাইস)
পরামিতি BusHardwareId ProfinetDevice
চেক করার জন্য হার্ডওয়্যার আইডি নির্দিষ্ট করে। যাচাই করার জন্য Profinet ডিভাইস নির্দিষ্ট করে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
43
8 ক্লাস / ফাংশন রেফারেন্স
ResultVoid প্রদান করে
8.27 ProfinetDevice struct
Profinet ডিভাইসের ডেটাতে নিম্নলিখিত সর্বজনীন বৈশিষ্ট্য রয়েছে:
std::string std::string std::array< uint8_t, 6 > uint32_t uint32_t uint32_t
ডিভাইসের নাম ডিভাইসবিক্রেতা ম্যাকঠিকানা আইপিঠিকানা নেটমাস্ক ডিফল্টগেটওয়ে
ম্যাক অ্যাড্রেস বিন্যাসে অ্যারে হিসাবে দেওয়া হয় macAddress = {xx, xx, xx, xx, xx, xx}; যেখানে IP ঠিকানা, নেটওয়ার্ক মাস্ক এবং গেটওয়ে সবই বড় এন্ডিয়ান হেক্স সংখ্যা হিসাবে ব্যাখ্যা করা হয়, যেমন:
IP ঠিকানা: 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 errorCode exErrorCode
এছাড়াও, এই শ্রেণীর নিম্নলিখিত পাবলিক সদস্য ফাংশন আছে:
hasError () একটি ফাংশন কলের সাফল্য পড়ে।
bool nlc::result::hasError () const
রিটার্নস
সত্য মিথ্যা
ব্যর্থ কল। মান পড়তে getError () ব্যবহার করুন। সফল কল. মান পড়তে getResult() ব্যবহার করুন।
getError () একটি ফাংশন কল ব্যর্থ হলে কারণটি পড়ে।
const std::string nlc::result::getError () 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_)
ফলাফল (ফলাফল নির্ধারণ এবং ফলাফল)
getErrorCode () NlcErrorCode পড়ুন।
NlcErrorCode getErrorCode () const
getExErrorCode () uint32_t getExErrorCode () কনস্ট
8.28.1 ফলাফলশূন্য
NanoLib আপনাকে এই শ্রেণীর একটি উদাহরণ পাঠায় যদি ফাংশনটি বাতিল করে দেয়। ক্লাসটি ফলাফল শ্রেণী থেকে পাবলিক ফাংশন এবং সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
ResultVoid () নিম্নলিখিত ফাংশন সঠিক অকার্যকর ফলাফল সংজ্ঞায়িত করতে সাহায্য করে:
ফলাফল অকার্যকর (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 ফলাফল () স্থির করে
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_)
ResultInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultInt (ফলাফল নির্ধারণ এবং ফলাফল)
8.28.3 রেজাল্টস্ট্রিং
ফাংশন একটি স্ট্রিং প্রদান করলে NanoLib আপনাকে এই শ্রেণীর একটি উদাহরণ পাঠায়। ক্লাসটি ফলাফল শ্রেণী থেকে পাবলিক ফাংশন/সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult () কোনো ফাংশন কল সফল হলে স্ট্রিং ফলাফল পড়ে।
const std::string nlc::ResultString::getResult () const
কনস্ট স্ট্রিং প্রদান করে
ResultString () সঠিক স্ট্রিং ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
ResultString (std::string const & message, bool hasError_)
রেজাল্টস্ট্রিং (NlcErrorCode const & errCode, std::string const & errorString_)
রেজাল্টস্ট্রিং (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: স্ট্রিং const & errorString_)
রেজাল্টস্ট্রিং (ফলাফল কনস্ট এবং রেজাল্ট)
8.28.4 ResultArrayByte
যদি ফাংশনটি একটি বাইট অ্যারে ফেরত দেয় তাহলে NanoLib আপনাকে এই ক্লাসের একটি ইনস্ট্যান্স পাঠাবে। ক্লাসটি রেজাল্ট ক্লাস থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult() যদি কোনও ফাংশন কল সফল হয় তবে বাইট ভেক্টরটি পড়ে।
কনস্ট স্টাডি::ভেক্টর nlc::ResultArrayByte::getResult () কনস্ট
const ভেক্টর প্রদান করে
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
46
8 ক্লাস / ফাংশন রেফারেন্স
ResultArrayByte () সঠিক বাইট অ্যারে ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
ResultArrayByte (std::vector) (নির্ধারণ এবং ফলাফল_)
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 (ফলাফল কনস্ট এবং ফলাফল)
8.28.5 ResultArrayInt
যদি ফাংশনটি একটি পূর্ণসংখ্যা অ্যারে প্রদান করে তাহলে NanoLib আপনাকে এই ক্লাসের একটি উদাহরণ পাঠাবে। ক্লাসটি ফলাফল ক্লাস থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult() যদি কোনও ফাংশন কল সফল হয় তবে পূর্ণসংখ্যা ভেক্টরটি পড়ে।
কনস্ট স্টাডি::ভেক্টর nlc::ResultArrayInt::getResult () কনস্ট
const ভেক্টর প্রদান করে
ResultArrayInt () সঠিক পূর্ণসংখ্যা অ্যারে ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
ResultArrayInt (std::vector) (নির্ধারণ এবং ফলাফল_)
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 (ফলাফলের স্থিরতা এবং ফলাফল)
8.28.6 ResultBusHwIds
যদি ফাংশনটি একটি বাস হার্ডওয়্যার আইডি অ্যারে ফেরত দেয় তাহলে NanoLib আপনাকে এই ক্লাসের একটি উদাহরণ পাঠাবে। ক্লাসটি রেজাল্ট ক্লাস থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকারসূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult () যদি কোনও ফাংশন কল সফল হয় তবে bus-hardware-ID ভেক্টরটি পড়ে।
কনস্ট স্টাডি::ভেক্টর nlc::ResultBusHwIds::getResult () কনস্ট
পরামিতি const ভেক্টর
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
47
8 ক্লাস / ফাংশন রেফারেন্স
ResultBusHwIds () সঠিক বাস-হার্ডওয়্যার-আইডি-অ্যারে ফলাফল সংজ্ঞায়িত করতে নিম্নলিখিত ফাংশন সাহায্য করে:
ResultBusHwIds (std::vector) (নির্ধারণ এবং ফলাফল_)
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 (ফলাফল নির্ধারণ এবং ফলাফল)
8.28.7 ফলাফল ডিভাইস আইডি
যদি ফাংশনটি একটি ডিভাইস আইডি ফেরত দেয় তাহলে NanoLib আপনাকে এই ক্লাসের একটি ইনস্ট্যান্স পাঠাবে। ক্লাসটি রেজাল্ট ক্লাস থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult () কোনো ফাংশন কল সফল হলে ডিভাইস আইডি ভেক্টর পড়ে।
DeviceId nlc::ResultDeviceId::getResult () কনস্ট
কনস্ট ভেক্টর প্রদান করে
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() যদি কোনও ফাংশন কল সফল হয় তবে ডিভাইস আইডি ভেক্টর ফেরত পাঠায়।
DeviceId nlc::ResultDeviceIds::getResult () কনস্ট
কনস্ট ভেক্টর প্রদান করে
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
48
8 ক্লাস / ফাংশন রেফারেন্স
ResultDeviceIds () সঠিক ডিভাইস-আইডি-অ্যারে ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
রেজাল্টডিভাইসআইডি (std::vector) (নির্ধারণ এবং ফলাফল_)
ResultDeviceIds (std::string const এবং errorString_)
ResultDeviceIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultDeviceIds (ফলাফল কনস্ট এবং ফলাফল)
8.28.9 ফলাফল ডিভাইস হ্যান্ডেল
যদি ফাংশনটি ডিভাইস হ্যান্ডেলের মান ফেরত দেয়, তাহলে NanoLib আপনাকে এই ক্লাসের একটি ইনস্ট্যান্স পাঠাবে। ক্লাসটি রেজাল্ট ক্লাস থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং এতে নিম্নলিখিত পাবলিক সদস্য ফাংশন রয়েছে:
getResult () কোনো ফাংশন কল সফল হলে ডিভাইস হ্যান্ডেল পড়ে।
DeviceHandle nlc::ResultDeviceHandle::getResult () কনস্ট
ডিভাইসহ্যান্ডেল ফেরত দেয়
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_)
রেজাল্টডিভাইসহ্যান্ডেল (ফলাফল কনস্ট এবং ফলাফল)
8.28.10 ফলাফল অবজেক্ট ডিকশনারি
NanoLib আপনাকে এই শ্রেণীর একটি উদাহরণ পাঠায় যদি ফাংশনটি একটি বস্তু অভিধানের বিষয়বস্তু প্রদান করে। ক্লাসটি ফলাফল শ্রেণী থেকে পাবলিক ফাংশন/সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult () কোনো ফাংশন কল সফল হলে ডিভাইস আইডি ভেক্টর পড়ে।
const nlc::ObjectDictionary & nlc::ResultObjectDictionary::getResult () const
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
49
8 ক্লাস / ফাংশন রেফারেন্স
রিটার্নস
const ভেক্টর
ResultObjectDictionary () সঠিক বস্তু অভিধানের ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
ResultObjectDictionary (nlc::ObjectDictionary 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 (ফলাফল কনস্ট এবং ফলাফল)
8.28.11 ফলাফল সংযোগ রাজ্য
যদি ফাংশনটি একটি ডিভাইস-সংযোগ-স্টেট তথ্য প্রদান করে তাহলে NanoLib আপনাকে এই শ্রেণীর একটি উদাহরণ পাঠায়। ক্লাসটি ফলাফল শ্রেণী থেকে পাবলিক ফাংশন/সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult () কোনো ফাংশন কল সফল হলে ডিভাইস হ্যান্ডেল পড়ে।
DeviceConnectionStateInfo nlc::ResultConnectionState::getResult () const
DeviceConnectionStateInfo কানেক্টেড / ডিসকানেক্টেড / কানেক্টেড বুটলোডার ফেরত দেয়
ResultConnectionState () সঠিক সংযোগ অবস্থার ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
রেজাল্টকানেকশনস্টেট (ডিভাইসকানেকশনস্টেটইনফো কনস্ট এবং রেজাল্ট_)
ResultConnectionState (std::string const & errorString_)
ResultConnectionState (NlcErrorCode const & errCode, std::string const & errorString_)
ResultConnectionState (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultConnectionState (ফলাফলের স্থিরতা এবং ফলাফল)
8.28.12 ফলাফল অবজেক্ট এন্ট্রি
যদি ফাংশনটি কোনও অবজেক্ট এন্ট্রি ফেরত দেয়, তাহলে NanoLib আপনাকে এই ক্লাসের একটি ইনস্ট্যান্স পাঠাবে। ক্লাসটি রেজাল্ট ক্লাস থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং এতে নিম্নলিখিত পাবলিক সদস্য ফাংশন রয়েছে:
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
50
8 ক্লাস / ফাংশন রেফারেন্স
getResult() যদি কোনও ফাংশন কল সফল হয় তবে ডিভাইস আইডি ভেক্টর ফেরত পাঠায়।
nlc::ObjectEntry const& nlc::ResultObjectEntry::getResult () const
const ObjectEntry প্রদান করে
ResultObjectEntry () সঠিক অবজেক্ট এন্ট্রি ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
ResultObjectEntry (nlc::ObjectEntry const & result_)
ResultObjectEntry (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 (ফলাফলের গঠন এবং ফলাফল)
8.28.13 ResultObject SubEntry
যদি ফাংশনটি একটি অবজেক্ট সাব-এন্ট্রি ফেরত দেয় তাহলে NanoLib আপনাকে এই ক্লাসের একটি ইনস্ট্যান্স পাঠাবে। ক্লাসটি রেজাল্ট ক্লাস থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলি উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult() যদি কোনও ফাংশন কল সফল হয় তবে ডিভাইস আইডি ভেক্টর ফেরত পাঠায়।
nlc::ObjectSubEntry const & nlc::ResultObjectSubEntry::getResult () const
const ObjectSubEntry প্রদান করে
ResultObjectSubEntry () সঠিক অবজেক্ট সাব-এন্ট্রি ফলাফল নির্ধারণে নিম্নলিখিত ফাংশন সাহায্য করে:
ResultObjectSubEntry (nlc::ObjectEntry 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 (ফলাফলের গঠন এবং ফলাফল)
8.28.14 ResultProfinetDevices
যদি ফাংশনটি একটি Profinet ডিভাইস ফেরত দেয় তাহলে NanoLib আপনাকে এই শ্রেণীর একটি উদাহরণ পাঠায়। ক্লাসটি ফলাফল শ্রেণী থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলিকে উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
51
8 ক্লাস / ফাংশন রেফারেন্স
getResult () একটি ফাংশন কল সফল হলে Profinet ডিভাইস ভেক্টর পড়ে।
কনস্ট স্টাডি::ভেক্টর & getResult () স্থির
ResultProfinetDevices () নিম্নলিখিত ফাংশন সঠিক Profinet ডিভাইস সংজ্ঞায়িত করতে সাহায্য করে।
ResultProfinetDevices (const std::vector) & প্রোফিনেট ডিভাইস)
ResultProfinetDevices (const Result & result)
ResultProfinetDevices (const std::string &errorText, NlcErrorCode errorCode = NlcErrorCode::GeneralError, uint32_t extendedErrorCode = 0)
8.28.15 ফলাফলampleDataArray
NanoLib আপনাকে এই শ্রেণীর একটি উদাহরণ পাঠায় যদি ফাংশনটি হিসাবে ফিরে আসেampলে ডেটা অ্যারে। ক্লাসটি ফলাফল শ্রেণী থেকে পাবলিক ফাংশন / সুরক্ষিত বৈশিষ্ট্যগুলিকে উত্তরাধিকার সূত্রে পায় এবং নিম্নলিখিত পাবলিক সদস্য ফাংশনগুলি রয়েছে:
getResult () কোনো ফাংশন কল সফল হলে ডেটা অ্যারে পড়ে।
কনস্ট স্টেড::ভেক্টর <এসampleData> & getResult () const
ফলাফলampleDataArray () নিম্নলিখিত ফাংশন সঠিক Profinet ডিভাইস সংজ্ঞায়িত করতে সাহায্য করে।
ফলাফলampleDataArray (const std::vector < SampleData> & dataArray)
ফলাফলampleDataArray (const std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)
ফলাফলampleDataArray (const ResultsS) সম্পর্কেampleDataArray এবং অন্যান্য)
ফলাফলampleDataArray (const ফলাফল এবং ফলাফল)
8.28.16 ফলাফলamplerState
NanoLib আপনাকে এই শ্রেণীর একটি উদাহরণ পাঠায় যদি ফাংশনটি হিসাবে ফিরে আসেampler রাষ্ট্র
getResult () s পড়েampler স্টেট ভেক্টর যদি একটি ফাংশন কল সফল হয়।
SamplerState getResult () const
রিটার্ন এসamplerState>
আনকনফিগার করা / কনফিগার করা / প্রস্তুত / চলমান / সম্পূর্ণ / ব্যর্থ / বাতিল
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
52
8 ক্লাস / ফাংশন রেফারেন্স
ফলাফলamplerState () সঠিক s সংজ্ঞায়িত করতে নিম্নলিখিত ফাংশন সাহায্য করেampler রাষ্ট্র.
ফলাফলamplerState (const S)amplerState রাজ্য)
ফলাফলamplerState (const std::string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t
এক্সটেন্ডেড এররকোড = ০)
ফলাফলamplerState (const ResultsS)amplerState এবং অন্যান্য)
ফলাফলamplerState (const ফলাফল এবং ফলাফল)
8.29 NlcErrorCode
যদি কিছু ভুল হয়ে যায়, ফলাফল শ্রেণীগুলি এই গণনায় তালিকাভুক্ত ত্রুটি কোডগুলির একটি রিপোর্ট করে।
ত্রুটি কোড সফলতা সাধারণ ত্রুটি বাস অনুপলব্ধ যোগাযোগ ত্রুটি প্রোটোকল ত্রুটি
ODDoesNotExist ODINvalidAccess ODTypeMismatch OperationAborted OperationNotSupported InvalidOperation
InvalidArguments Access Denied ResourceNotFound Resource অনুপলব্ধ OutOfMemory TimeOutError
C: বিভাগ D: বর্ণনা R: কারণ C: কোনোটিই নয়। ডি: কোন ত্রুটি নেই। আর: অপারেশন সফলভাবে সম্পন্ন হয়েছে।
সি: অনির্দিষ্ট। D: অনির্দিষ্ট ত্রুটি। R: ব্যর্থতা যা অন্য কোন বিভাগে ফিট করে না।
গ: বাস। D: হার্ডওয়্যার বাস উপলব্ধ নেই। আর: বাসের অস্তিত্ব নেই, কেটে গেছে বা ত্রুটি।
সি: যোগাযোগ। D: যোগাযোগ অবিশ্বস্ত। R: অপ্রত্যাশিত ডেটা, ভুল CRC, ফ্রেম বা প্যারিটি ত্রুটি ইত্যাদি।
সি: প্রোটোকল। ডি: প্রোটোকল ত্রুটি। R: অসমর্থিত প্রোটোকল বিকল্পের পরে প্রতিক্রিয়া, ডিভাইস রিপোর্ট অসমর্থিত প্রোটোকল, প্রোটোকলে ত্রুটি (বলুন, এসডিও সেগমেন্ট সিঙ্ক বিট), ইত্যাদি। সেগমেন্ট সিঙ্ক বিট, ইত্যাদি। R: অসমর্থিত প্রোটোকল (বিকল্প) বা প্রোটোকলের ত্রুটি (বলুন, SDO সেগমেন্ট সিঙ্ক বিট)
C: অবজেক্ট ডিকশনারি। D: OD অ্যাড্রেস অস্তিত্বহীন। R: অবজেক্ট ডিকশনারিতে এরকম কোনও অ্যাড্রেস নেই।
C: বস্তুর অভিধান। D: OD ঠিকানায় অ্যাক্সেস অবৈধ। R: শুধুমাত্র-পঠন-পাঠন, বা শুধুমাত্র-লেখা ঠিকানা থেকে পড়ার চেষ্টা।
C: বস্তুর অভিধান। D: টাইপ অমিল। R: একটি স্ট্রিংকে একটি সংখ্যা হিসাবে বিবেচনা করার প্রয়াসে, নির্দিষ্ট টাইপে মান পরিবর্তন করা হয়নি।
সি: আবেদন। D: প্রক্রিয়া বাতিল করা হয়েছে। R: আবেদন অনুরোধ দ্বারা প্রক্রিয়া কাটা. শুধুমাত্র কলব্যাক ফাংশন দ্বারা অপারেশন বাধার উপর রিটার্ন, বলুন, বাস-স্ক্যানিং থেকে.
সি: সাধারণ। D: প্রক্রিয়া অসমর্থিত। আর: কোন হার্ডওয়্যার বাস / ডিভাইস সমর্থন নেই।
সি: সাধারণ। D: বর্তমান প্রেক্ষাপটে প্রক্রিয়া ভুল, বা বর্তমান যুক্তি সহ অবৈধ। R: ইতিমধ্যে সংযুক্ত বাস/ডিভাইসের সাথে পুনরায় সংযোগ করার প্রচেষ্টা। ইতিমধ্যে সংযোগ বিচ্ছিন্ন করা একটি সংযোগ বিচ্ছিন্ন প্রচেষ্টা. ফার্মওয়্যার মোডে বা তদ্বিপরীত একটি বুটলোডার অপারেশন প্রচেষ্টা।
সি: সাধারণ। D: যুক্তি অবৈধ। R: ভুল যুক্তি বা বাক্য গঠন।
সি: সাধারণ। D: অ্যাক্সেস অস্বীকৃত। R: অনুরোধকৃত অপারেশন সম্পাদন করার অধিকার বা ক্ষমতার অভাব।
সি: সাধারণ। D: নির্দিষ্ট আইটেম পাওয়া যায়নি. R: হার্ডওয়্যার বাস, প্রোটোকল, ডিভাইস, ডিভাইসে OD ঠিকানা, বা file পাওয়া যায়নি।
সি: সাধারণ। D: নির্দিষ্ট আইটেম পাওয়া যায়নি. R: ব্যস্ত, অস্তিত্বহীন, কাটা বন্ধ বা ত্রুটি।
সি: সাধারণ। D: অপর্যাপ্ত স্মৃতি। R: এই কমান্ডটি প্রক্রিয়া করার জন্য খুব কম মেমরি।
সি: সাধারণ। D: প্রক্রিয়ার সময় শেষ। R: টাইম-আউট মেয়াদ শেষ হওয়ার পরে ফিরে যান। টাইমআউট হতে পারে ডিভাইসের প্রতিক্রিয়ার সময়, ভাগ করা বা একচেটিয়া রিসোর্স অ্যাক্সেস পাওয়ার সময়, অথবা বাস/ডিভাইসটিকে একটি উপযুক্ত অবস্থায় পরিবর্তন করার সময়।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
53
8 ক্লাস / ফাংশন রেফারেন্স
8.30 Nlc কলব্যাক
কলব্যাকের জন্য এই প্যারেন্ট ক্লাসে নিম্নলিখিত পাবলিক মেম্বার ফাংশন রয়েছে: কলব্যাক ()
ভার্চুয়াল ফলাফলভয়েড কলব্যাক ()
রিটার্নস
ফলাফলশূন্য
8.31 NlcDataTransferCallback
ডেটা ট্রান্সফারের জন্য এই কলব্যাক ক্লাসটি ব্যবহার করুন (ফার্মওয়্যার আপডেট, ন্যানোজে আপলোড ইত্যাদি)। ১. ফার্মওয়্যার আপলোডের জন্য: একটি "কো-ক্লাস" সংজ্ঞায়িত করুন যা একটি কাস্টম কলব্যাক পদ্ধতির মাধ্যমে এটিকে প্রসারিত করে।
বাস্তবায়ন। ২. NanoLibAccessor.uploadFirmware () কলগুলিতে "co-class's" ইনস্ট্যান্সগুলি ব্যবহার করুন। প্রধান ক্লাসে নিম্নলিখিত পাবলিক সদস্য ফাংশন রয়েছে:
কলব্যাক () ভার্চুয়াল রেজাল্টভয়েড কলব্যাক (nlc::DataTransferInfo তথ্য, int32_t ডেটা)
রিটার্নস
ফলাফলশূন্য
8.32 NlcScanBusCallback
বাস স্ক্যানিংয়ের জন্য এই কলব্যাক ক্লাসটি ব্যবহার করুন। ১. একটি কাস্টম কলব্যাক পদ্ধতি বাস্তবায়নের মাধ্যমে এটিকে প্রসারিত করে এমন একটি "কো-ক্লাস" সংজ্ঞায়িত করুন। ২. NanoLibAccessor.scanDevices () কলগুলিতে "কো-ক্লাসের" উদাহরণগুলি ব্যবহার করুন। প্রধান ক্লাসটিতে নিজেই নিম্নলিখিত পাবলিক সদস্য ফাংশন রয়েছে।
কলব্যাক ()
ভার্চুয়াল রেজাল্টভয়েড কলব্যাক (nlc::BusScanInfo তথ্য, std::vector (const & devices পাওয়া গেছে, int32_t ডেটা)
ResultVoid প্রদান করে
8.33 NlcLoggingCallback
কলব্যাক লগিং করার জন্য এই কলব্যাক ক্লাস ব্যবহার করুন। 1. একটি শ্রেণী সংজ্ঞায়িত করুন যা একটি কাস্টম কলব্যাক পদ্ধতি বাস্তবায়নের মাধ্যমে এই শ্রেণীটিকে প্রসারিত করে 2. NanoLibAccessor দ্বারা একটি কলব্যাক সেট করার জন্য এর দৃষ্টান্তগুলিতে একটি পয়েন্টার ব্যবহার করুন >
setLoggingCallback (...)।
ভার্চুয়াল অকার্যকর কলব্যাক (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ইন্টারফেস
s কনফিগার করতে, শুরু করতে এবং বন্ধ করতে এই ক্লাসটি ব্যবহার করুনampler, বা এস পেতেampled ডাটা এবং হিসাবে আনয়নampler এর অবস্থা বা শেষ ত্রুটি। ক্লাসের নিম্নলিখিত পাবলিক সদস্য ফাংশন আছে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
54
8 ক্লাস / ফাংশন রেফারেন্স
configure () হিসাবে কনফিগার করেampলির
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::এসamplerInterface::configure (const DeviceHandle deviceHandle, const S)amplerকনফিগারেশন এবং গুলিampler কনফিগারেশন)
পরামিতি [in] deviceHandle [in] sampler কনফিগারেশন
ResultVoid প্রদান করে
কোন ডিভাইসটি s কনফিগার করতে হবে তা নির্দিষ্ট করেampজন্য ler. কনফিগারেশন বৈশিষ্ট্যের মান নির্দিষ্ট করে। নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
getData () s পায়ampনেতৃত্বাধীন তথ্য।
ভার্চুয়াল ফলাফলampleDataArray nlc::S সম্পর্কেamplerInterface::getData (const DeviceHandle deviceHandle)
প্যারামিটার [ইন] ডিভাইস হ্যান্ডেল ফলাফল প্রদান করেampleDataArray
কোন ডিভাইসের জন্য ডেটা পেতে হবে তা নির্দিষ্ট করে।
এস বিতরণ করেampled ডেটা, যা একটি খালি অ্যারে হতে পারে যদি s হয়amplerNotify শুরুতে সক্রিয়।
getLastError () হিসাবে পায়ampler এর শেষ ত্রুটি.
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::এসamplerInterface::getLastError (const DeviceHandle deviceHandle)
ResultVoid প্রদান করে
নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
getState () হিসাবে পায়ampler এর অবস্থা।
ভার্চুয়াল ফলাফলamplerState nlc::SamplerInterface::getState (কনস্ট ডিভাইসহ্যান্ডেল ডিভাইসহ্যান্ডেল)
ফলাফল এসamplerState
এস বিতরণ করেampler রাষ্ট্র.
start () হিসাবে শুরু হয়ampলির
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::এসamplerInterface::start (const DeviceHandle deviceHandle, S)amplerNotify* s সম্পর্কেamplerNotify, int64_t অ্যাপ্লিকেশন ডেটা)
প্যারামিটার [ইন] ডিভাইস হ্যান্ডেল [ইন] এসamplerNotify [in] অ্যাপ্লিকেশন ডেটা
ResultVoid প্রদান করে
কোন ডিভাইসে s শুরু করতে হবে তা নির্দিষ্ট করেampজন্য ler.
কোন ঐচ্ছিক তথ্য রিপোর্ট করতে হবে তা নির্দিষ্ট করে (nullptr হতে পারে)।
বিকল্প: অ্যাপ্লিকেশন-সম্পর্কিত ডেটা (একটি ব্যবহারকারী-সংজ্ঞায়িত 8-বিট অ্যারে এর মান / ডিভাইস আইডি / সূচক, বা একটি তারিখ সময়, একটি ভেরিয়েবলের / ফাংশনের পয়েন্টার, ইত্যাদি) s এ ফরোয়ার্ড করেamplerনোটিফাই।
নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
55
8 ক্লাস / ফাংশন রেফারেন্স
stop () স্টপ হিসাবেampলির
ভার্চুয়াল রেজাল্টভয়েড এনএলসি::এসamplerInterface::stop (const DeviceHandle deviceHandle)
পরামিতি [in] deviceHandle ResultVoid
কোন ডিভাইসে s বন্ধ করতে হবে তা নির্দিষ্ট করেampজন্য ler. নিশ্চিত করে যে একটি অকার্যকর ফাংশন চালানো হয়েছে।
8.35 এসamplerConfiguration struct
এই struct তথ্য s রয়েছেampler এর কনফিগারেশন বিকল্প (স্ট্যাটিক বা না)।
পাবলিক বৈশিষ্ট্য
std:: ভেক্টর ট্র্যাক করা ঠিকানা
12টি পর্যন্ত OD ঠিকানা হতে হবেampএলইডি.
uint32_t
সংস্করণ
একটি কাঠামোর সংস্করণ।
uint32_t
সময়কাল মিলিসেকেন্ড
Sampling সময়কাল ms, 1 থেকে 65535 পর্যন্ত
uint16_t
পিরিয়ড মিলিসেকেন্ড
Sampms মধ্যে ling সময়কাল.
uint16_t
numberOfSampলেস
Sampলেস পরিমাণ।
uint16_t
preTriggerNumberOfSampলেস
Sampলেস প্রাক-ট্রিগার পরিমাণ।
bool
সফটওয়্যার ইমপ্লিমেন্টেশন ব্যবহার করে
সফ্টওয়্যার বাস্তবায়ন ব্যবহার করুন।
bool
নিউএফডাব্লুএস ব্যবহার করেamplerImplementation একটি সহ ডিভাইসের জন্য FW বাস্তবায়ন ব্যবহার করুন
FW সংস্করণ v24xx বা নতুন।
SamplerMode
মোড
স্বাভাবিক, পুনরাবৃত্তিমূলক বা ক্রমাগত sampলিং।
SamplerTriggerCondition triggerCondition
শুরুর ট্রিগার শর্ত: 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, triggerValue
SamplerTrigger
SamplerTrigger
একটি ট্রিগার হিসাবে শুরুampলার?
স্ট্যাটিক পাবলিক বৈশিষ্ট্য
স্ট্যাটিক কনস্টেক্সপ্র সাইজ_টি এসAMPLER_CONFIGURATION_VERSION = 0x01000000 স্ট্যাটিক কনস্টেক্সপ্র সাইজ_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 S)amplerState samplerState, const std::vector < SampleData> & sampleDatas, int64_t অ্যাপ্লিকেশন ডেটা)
পরামিতি [in] lastError [in] samplerState
[in] সেampleDatas [in] অ্যাপ্লিকেশন ডেটা
শেষ ত্রুটিটি রিপোর্ট করে যখন sampling এস রিপোর্টampবিজ্ঞপ্তির সময় ler স্থিতি: আনকনফিগার করা / কনফিগার করা / প্রস্তুত / চলমান / সম্পূর্ণ / ব্যর্থ / বাতিল। এস রিপোর্টampled-ডেটা অ্যারে। অ্যাপ্লিকেশন-নির্দিষ্ট ডেটা রিপোর্ট করে।
8.37 এসampleData কাঠামো
এই struct s রয়েছেampনেতৃত্বাধীন তথ্য।
uin64_t পুনরাবৃত্তি সংখ্যা
0 এ শুরু হয় এবং শুধুমাত্র পুনরাবৃত্তিমূলক মোডে বৃদ্ধি পায়।
std::vector<Samp<Values> s এর অ্যারে ধারণ করেampনেতৃত্বাধীন মান।
8.38 এসampledValue struct
এই struct s রয়েছেampনেতৃত্বাধীন মান।
in64_t মান uin64_t CollectTimeMsec
একটি ট্র্যাক করা OD ঠিকানার মান রয়েছে৷
s-এর তুলনায় মিলিসেকেন্ডে সংগ্রহের সময় ধারণ করেample শুরু
8.39 এসamplerTrigger struct
এই স্ট্রাকটে 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 SerialParity
PARITY_OPTIONS_NAME = “সিরিয়াল প্যারিটি” প্যারিটি = সিরিয়ালপ্যারিটি স্ট্রাকচার
8.41 SerialBaudRate কাঠামো
এখানে আপনার সিরিয়াল কমিউনিকেশন বড রেট এবং নিম্নলিখিত পাবলিক বৈশিষ্ট্যগুলি খুঁজুন:
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
BAUD_RATE_7200 = "7200" BAUD_RATE_9600 = "9600" BAUD_RATE_14400 = "14400" BAUD_RATE_19200 = "19200" BAUD_RATE_38400 = "38400" BAUD_RATE_56000 "AUD_RATE_56000" 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
NONE = "কোনটিই" ODD = "বিজোড়" ইভেন = "জোড়" মার্ক = "মার্ক" স্পেস = "স্পেস"
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
58
9 লাইসেন্স
9 লাইসেন্স
NanoLib API ইন্টারফেস হেডার এবং এক্সample সোর্স কোড ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন 3.0 আনপোর্টেড লাইসেন্স (CC BY) এর অধীনে Nanotec Electronic GmbH & Co. KG দ্বারা লাইসেন্সপ্রাপ্ত। বাইনারি বিন্যাসে (কোর এবং ফিল্ডবাস কমিউনিকেশন লাইব্রেরি) সরবরাহ করা লাইব্রেরির অংশগুলি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন নোডেরিভেটিভস 4.0 ইন্টারন্যাশনাল লাইসেন্স (CC BY ND) এর অধীনে লাইসেন্সপ্রাপ্ত।
ক্রিয়েটিভ কমন্স
নিম্নলিখিত মানব-পাঠযোগ্য সারাংশ লাইসেন্স(গুলি) নিজেই প্রতিস্থাপন করবে না। আপনি creativecommons.org এ সংশ্লিষ্ট লাইসেন্স খুঁজে পেতে পারেন এবং নিচে লিঙ্ক করা আছে। আপনি স্বাধীন:
সিসি বাই ৩.০
শেয়ার করুন: ডানদিকে দেখুন। মানিয়ে নিন: রিমিক্স করুন, রূপান্তর করুন এবং এর উপর তৈরি করুন
কোনো উদ্দেশ্যে উপাদান, এমনকি বাণিজ্যিকভাবে।
সিসি বাই-এনডি ৪.০
শেয়ার করুন: কপি করুন এবং কোনো মাধ্যম বা বিন্যাসে উপাদান পুনরায় বিতরণ করুন.
যতক্ষণ না আপনি নিম্নলিখিত লাইসেন্সের শর্তাবলী মেনে চলেন ততক্ষণ লাইসেন্সদাতা উপরের স্বাধীনতাগুলি প্রত্যাহার করতে পারবেন না:
সিসি বাই ৩.০
সিসি বাই-এনডি ৪.০
অ্যাট্রিবিউশন: আপনাকে অবশ্যই উপযুক্ত ক্রেডিট দিতে হবে, অ্যাট্রিবিউশন: বামে দেখুন। কিন্তু: এটির একটি লিঙ্ক প্রদান করুন
লাইসেন্সের একটি লিঙ্ক প্রদান করুন, এবং যদি নির্দেশ করে
অন্য লাইসেন্স।
পরিবর্তন করা হয়েছিল। আপনি যে কোনো এটি করতে পারেন
কোনো ডেরিভেটিভ নেই: আপনি যদি রিমিক্স করেন, রূপান্তর করেন বা তৈরি করেন
যুক্তিসঙ্গত পদ্ধতিতে, কিন্তু কোনভাবেই যে প্রস্তাবিত নয়-
উপাদান উপর, আপনি বিতরণ নাও হতে পারে
ইঙ্গিত দেয় যে লাইসেন্সদাতা আপনাকে বা আপনার ব্যবহার অনুমোদন করে।
পরিবর্তিত উপাদান।
কোন অতিরিক্ত নিষেধাজ্ঞা নেই: আপনি প্রয়োগ করতে পারবেন না কোন অতিরিক্ত নিষেধাজ্ঞা নেই: বাম দেখুন। আইনি শর্তাবলী বা প্রযুক্তিগত ব্যবস্থা যা আইনগতভাবে
লাইসেন্স থেকে অন্যদের কিছু করতে বাধা দিন
অনুমতি
দ্রষ্টব্য: আপনাকে পাবলিক ডোমেনে উপাদানের উপাদানগুলির জন্য লাইসেন্স মেনে চলতে হবে না বা যেখানে আপনার ব্যবহার একটি প্রযোজ্য ব্যতিক্রম বা সীমাবদ্ধতা দ্বারা অনুমোদিত।
দ্রষ্টব্য: কোন ওয়ারেন্টি দেওয়া হয়নি। লাইসেন্স আপনাকে আপনার উদ্দেশ্যে ব্যবহারের জন্য প্রয়োজনীয় সমস্ত অনুমতি নাও দিতে পারে। প্রাক্তন জন্যampলে, অন্যান্য অধিকার যেমন প্রচার, গোপনীয়তা, বা নৈতিক অধিকার আপনি উপাদান ব্যবহার কিভাবে সীমিত করতে পারে.
সংস্করণ: doc 1.4.2 / NanoLib 1.3.0
59
ছাপ, যোগাযোগ, সংস্করণ
©২০২৪ ন্যানোটেক ইলেকট্রনিক জিএমবিএইচ অ্যান্ড কোং কেজিক্যাপেলেনস্ট্র.৬৮৫৬২২ ফেল্ডকির্চেনজার্মানিটেল.+৪৯(০) ৮৯ ৯০০ ৬৮৬-০ফ্যাক্স+৪৯(০)৮৯ ৯০০ ৬৮৬-৫০ info@nanotec.dewww.nanotec.com সর্বস্বত্ব সংরক্ষিত। ত্রুটি, বাদ পড়া, প্রযুক্তিগত বা বিষয়বস্তু পরিবর্তন নোটিশ ছাড়াই সম্ভব। উদ্ধৃত ব্র্যান্ড/পণ্যগুলি তাদের মালিকদের ট্রেডমার্ক এবং সেভাবেই বিবেচিত হবে। মূল সংস্করণ।
ডকুমেন্ট ১.৪.২ ২০২৪.১২ ১.৪.১ ২০২৪.১০ ১.৪.০ ২০২৪.০৯ ১.৩.৩ ২০২৪.০৭
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 Modbus: Modbus VCP-এর জন্য ডিভাইস লকিং মেকানিজম যোগ করা হয়েছে। # NanoLib কোর: সংযোগের অবস্থা ঠিক করা হয়েছে। # NanoLib কোড: বাস হার্ডওয়্যার রেফারেন্স অপসারণ সংশোধন করা হয়েছে।
+ NanoLib-CANopen: পিক PCAN-USB অ্যাডাপ্টারের জন্য সমর্থন (IPEH-002021/002022)।
> NanoLib Core: লগিং কলব্যাক ইন্টারফেস পরিবর্তিত হয়েছে (LogLevel LogModule দ্বারা প্রতিস্থাপিত হয়েছে)। # NanoLib Logger: কোর এবং মডিউলের মধ্যে বিচ্ছেদ সংশোধন করা হয়েছে। # Modbus TCP: FW4 এর জন্য স্থির ফার্মওয়্যার আপডেট। # EtherCAT: Core5 এর জন্য স্থির NanoJ প্রোগ্রাম আপলোড। # EtherCAT: Core5 এর জন্য স্থির ফার্মওয়্যার আপডেট।
# Modbus RTU: ফার্মওয়্যার আপডেটের সময় কম বড রেট সহ নির্দিষ্ট সময়ের সমস্যা। # আরামদায়ক: স্থির NanoJ প্রোগ্রাম আপলোড।
# NanoLib মডিউল এসampler: s এর সঠিক পড়াampনেতৃত্বাধীন বুলিয়ান মান।
+ সমস্ত প্ল্যাটফর্মের জন্য জাভা 11 সমর্থন। + সমস্ত প্ল্যাটফর্মের জন্য পাইথন 3.11/3.12 সমর্থন। + নতুন লগিং কলব্যাক ইন্টারফেস (প্রাক্তন দেখুনampলেস)। + NanoLib লগারের জন্য কলব্যাক সিঙ্ক। > লগার 1.12.0 সংস্করণে আপডেট করুন। > NanoLib মডিউল এসampler: Nanotec কন্ট্রোলার ফার্মওয়্যার v24xx-এর জন্য এখন সমর্থন। > NanoLib মডিউল এসampler: s এর জন্য ব্যবহৃত কাঠামোর পরিবর্তনampler কনফিগারেশন। > NanoLib মডিউল এসampler: অবিচ্ছিন্ন মোড অন্তহীন এর সমার্থক; ট্রিগার অবস্থা একবার পরীক্ষা করা হয়; s সংখ্যাamples অবশ্যই 0 হতে হবে। > NanoLib মডিউল এসampler: থ্রেডের জন্য স্বাভাবিক অগ্রাধিকার যা ফার্মওয়্যার মোডে ডেটা সংগ্রহ করে। > NanoLib মডিউল এসampler: প্রস্তুত এবং চলমান অবস্থার মধ্যে রূপান্তর সনাক্ত করতে পুনরায় লেখা অ্যালগরিদম। # NanoLib কোর: একই বাস হার্ডওয়্যার ব্যবহার করে 0 বা তার বেশি ডিভাইস বন্ধ করার ক্ষেত্রে আর অ্যাক্সেস লঙ্ঘন (0000005xC2) হবে না। # ন্যানোলিব কোর: লিনাক্সের অধীনে একটি পিক অ্যাডাপ্টার সংযুক্ত করার ক্ষেত্রে আর কোনও সেগমেন্টেশন ফল্ট নেই৷ # NanoLib মডিউল এসampler: সঠিক sampফার্মওয়্যার মোডে led- ভ্যালু রিডিং। # NanoLib মডিউল এসampler: 502X:04 এর সঠিক কনফিগারেশন। # NanoLib মডিউল এসampler: চ্যানেলের সাথে বাফারের সঠিক মিশ্রণ। # NanoLib-Canopen: নিম্ন বউড্রেটে দৃঢ়তা এবং সঠিক স্ক্যানিংয়ের জন্য CAN সময়সীমা বৃদ্ধি করা হয়েছে। # NanoLib-Modbus: বিশেষ ডিভাইসের জন্য VCP সনাক্তকরণ অ্যালগরিদম (USB-DA-IO)।
+ ইথারক্যাট সাপোর্ট।
+ আপনার প্রকল্প কনফিগার করুন-এ VS প্রকল্প সেটিংসের উপর নোট করুন।
+ getDeviceHardwareGroup (). + getProfinetDCP (সার্ভিস উপলব্ধ). + getProfinetDCP (ProfinetDeviceIp যাচাই করুন). + autoAssignObjectDictionary (). + getXmlFileনাম (). + const std::string & xmlFileaddObjectDictionary () এর পথ। + getSamplerইন্টারফেস ()।
পণ্য ১০.০০ ৭.০০ ১.৫০ ৩৪.০০
1.1.2 1.1.1 1.1.0
1.0.1 (B349) 1.0.0 (B344) 1.0.0 (B341)
সংস্করণ: 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
+ যোগ করা হয়েছে > পরিবর্তন করা হয়েছে # সংশোধন করা হয়েছে + রিবুটডিভাইস ()। + ত্রুটি কোড রিসোর্সঅনুপলব্ধ getDeviceBootloaderVersion (), ~VendorId (), ~HardwareVersion (), ~SerialNumber, এবং ~Uid এর জন্য। > firmwareUploadFromFile এখন আপলোড করুনফার্মওয়্যারথেকেFile (). > ফার্মওয়্যারআপলোড () এখন আপলোডফার্মওয়্যার (). > বুটলোডারআপলোডফ্রমFile () এখন আপলোড করুনবুটলোডারফ্রমFile (). > বুটলোডারআপলোড () এখন আপলোড করুনবুটলোডার (). > বুটলোডারফার্মওয়্যারআপলোডফ্রমFile () আপলোড করতেবুটলোডারফার্মওয়্যারথেকেFile (). > বুটলোডারফার্মওয়্যারআপলোড () এখন আপলোডবুটলোডারফার্মওয়্যার (). > ন্যানোজআপলোডফ্রমFile () এখন আপলোড করুনNanoJFromFile (). > nanojUpload () এখন uploadNanoJ (). > objectDictionaryLibrary () এখন getObjectDictionaryLibrary (). > String_String_Map এখন StringStringMap. > NanoLib-Common: Ixxat অ্যাডাপ্টারের সাহায্যে listAvailableBusHardware এবং openBusHardwareWithProtocol দ্রুত সম্পাদন করা হচ্ছে। > NanoLib-CANopen: বাস হার্ডওয়্যার অপশন খালি থাকলে ডিফল্ট সেটিংস ব্যবহৃত হয় (1000k baudrate, Ixxat বাস নম্বর 0)। > NanoLib-RESTful: npcap / winpcap ড্রাইভার উপলব্ধ থাকলে উইন্ডোজের অধীনে ইথারনেট বুটলোডারের সাথে যোগাযোগের জন্য অ্যাডমিন অনুমতি অপ্রচলিত। # 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-নির্দিষ্ট)। + connectDevice() এবং scanDevices() কোনটি না পেলে IOError রিটার্ন। + CanOpen/Modbus এর জন্য মাত্র 100 ms নামমাত্র সময়সীমা।
+ মডবাস সাপোর্ট (প্লাস ভিসিপির মাধ্যমে ইউএসবি হাব)। + অধ্যায় আপনার নিজস্ব লিনাক্স প্রকল্প তৈরি করা। + এক্সট্রাহার্ডওয়্যারস্পেসিফায়ার থেকে বাসহার্ডওয়্যারআইডি ()। + এক্সট্রাআইডি_ এবং এক্সট্রাস্ট্রিংআইডি_ থেকে ডিভাইসআইডি ()।
+ 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
দলিল/সম্পদ
![]() |
ন্যানোটিক ন্যানোলিব সি++ প্রোগ্রামিং [পিডিএফ] ব্যবহারকারী ম্যানুয়াল ন্যানোলিব সি প্রোগ্রামিং, সি প্রোগ্রামিং, প্রোগ্রামিং |