Нанотик NanoLib C++ програмчлал

Бүтээгдэхүүний мэдээлэл
Үзүүлэлтүүд
- Бүтээгдэхүүний нэр: NanoLib
- Програмчлал Хэл: C++
- Бүтээгдэхүүний хувилбар: 1.3.0
- Хэрэглэгчийн гарын авлагын хувилбар: 1.4.2
NanoLib номын сан нь Nanotec хянагчдад зориулсан хяналтын программ хангамжийг програмчлахад зориулагдсан. Энэ нь хяналтын програмуудыг хөгжүүлэхэд туслах хэрэглэгчийн интерфэйс, үндсэн функцууд, харилцааны номын сангуудаар хангадаг.
Бүтээгдэхүүнийг ашиглах заавар
- Эхлэхээсээ өмнө:
- Таны систем гарын авлагад заасан техник хангамжийн шаардлагыг хангаж байгаа эсэхийг шалгаарай. Энэхүү бүтээгдэхүүний зорилтот хэрэглэгчдэд Nanotec хянагчдад зориулсан хяналтын программ хангамжийг бий болгохыг зорьж буй хөгжүүлэгчид багтана.
- Эхлэх:
- NanoLib-г ашиглаж эхлэхийн тулд дараах алхмуудыг дагана уу.
- NanoLib-ийг төсөлдөө импортлох замаар эхэл.
- Шаардлагатай бол төслийн тохиргоогоо тохируулна уу.
- NanoLib функцуудыг нэгтгэхийн тулд төслөө бүтээгээрэй.
- Төсөл бий болгох:
- Та Windows болон Линуксийн орчинд хоёуланд нь төсөл үүсгэж болно. Платформ тус бүрийн гарын авлагад заасан зааврыг дагана уу.
- Ангиуд / функцүүдийн лавлагаа:
- Програмчлалын хяналтын программ хангамжийн NanoLib-д байдаг анги, функцүүдийн талаарх дэлгэрэнгүй гарын авлагыг хэрэглэгчийн гарын авлагаас үзнэ үү.
Түгээмэл асуултууд
- А: NanoLib-ийн зорилго юу вэ?
- A: NanoLib нь Nanotec хянагчдад зориулсан программчлалын хяналтын программ хангамжийн номын сан бөгөөд чухал функцууд болон харилцааны чадавхийг хангадаг.
- А: Би NanoLib-г хэрхэн эхлүүлэх вэ?
- A: NanoLib-ийг төсөлдөө импортлох, төслийн тохиргоог тохируулах, NanoLib-ийн онцлогуудыг ашиглахын тулд төслөө бүтээх замаар эхэл.
“`
Хэрэглэгчийн гарын авлага NanoLib
C++
Бүтээгдэхүүний 1.3.0 хувилбарт хүчинтэй
Хэрэглэгчийн гарын авлагын хувилбар: 1.4.2
Зорилго, конвенцуудыг баримтжуулах
Энэхүү баримт бичиг нь NanoLib номын сангийн тохиргоо, ашиглалтыг тайлбарласан бөгөөд Nanotec хянагчдад зориулсан өөрийн удирдлагын программ хангамжийг програмчлах бүх анги, функцуудын лавлагааг агуулсан болно. Бид дараах үсгийн төрлийг ашигладаг.
Доогуур зураастай текст нь хөндлөн лавлагаа эсвэл гипер холбоосыг тэмдэглэнэ.
Example 1: NanoLibAccessor дээрх нарийн зааврыг Тохиргоо хэсгээс үзнэ үү. Жишээ ньample 2: Ixxat драйверийг суулгаж, CAN-USB адаптерийг холбоно уу. Налуу текст нь: Энэ нь нэрлэгдсэн объект, цэсийн зам / зүйл, таб / гэсэн үг юм. file нэр эсвэл (шаардлагатай бол) гадаад хэл дээрх илэрхийлэл.
Example 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 гэх мэт).
Courier код блок эсвэл програмчлалын командыг тэмдэглэдэг. Жишээ ньample 1: Bash-ээр дамжуулан хуваалцсан объектуудыг хуулахын тулд sudo make install руу залгана; дараа нь ldconfig руу залгана уу. Жишээ ньample 2: NanoLib дахь бүртгэлийн түвшинг өөрчлөхийн тулд дараах NanoLibAccessor функцийг ашиглана уу:
// ***** C++ хувилбар *****
хүчингүй болсон setLoggingLevel(LogLevel түвшин);
Тод текст нь чухал ач холбогдолтой үгсийг тус тусад нь онцолж өгдөг. Эсвэл хаалтанд оруулсан анхаарлын тэмдэг нь чухал(!)-ийн ач холбогдлыг онцолж өгдөг.
Example 1: Өөрийгөө, бусдыг болон тоног төхөөрөмжөө хамгаал. Nanotec-ийн бүх бүтээгдэхүүнд ерөнхийдөө хамаарах манай аюулгүй байдлын ерөнхий зөвлөмжийг дагаж мөрдөөрэй.
Example 2: Өөрийгөө хамгаалахын тулд энэ бүтээгдэхүүнд хамаарах аюулгүй байдлын тусгай зөвлөмжийг дагаж мөрдөнө үү. Хамтран товших үйл үг нь хулганы хоёрдогч товчлуураар дарж контекст цэсийг нээх гэх мэтийг хэлнэ.
Example 1: дээр хамт дарна уу file, Нэрээ өөрчлөх гэснийг сонгоод нэрийг нь өөрчил file. Жишээ ньample 2: Шинж чанаруудыг шалгахын тулд дээр нь хамт дарна уу file болон Properties-г сонгоно уу.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
4
Эхлэхээсээ өмнө
Та NanoLib-г ашиглаж эхлэхээсээ өмнө компьютерээ бэлдэж, зориулалтын болон номын сангийн хязгаарлалтын талаар мэдээлэл аваарай.
2.1 Систем ба техник хангамжийн шаардлага

АНХААРУУЛГА 32 битийн ажиллагаа эсвэл зогссон системээс үүссэн доголдол! 64 битийн системийг ашигла, байнга засварлана. 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 эсвэл админ зөвшөөрөл
Ethernet ачаалагчтай харилцах
Linux / Ubuntu 20.04 LTS-ээс 24 хүртэл (бүгд x64 болон arm64)
Цөмийн толгой ба libpopt-dev пакет Profinet DCP: CAP_NET_ADMIN болон CAP_NET_RAW чадвар-
CANopen: Ixxat ECI драйвер эсвэл Peak PCAN-USB адаптер EtherCat: CAP_NET_ADMIN, CAP_NET_RAW болон
CAP_SYS_NICE чадвар АМРАХ: CAP_NET_ADMIN Eth-тэй харилцах чадвар
ernet ачаалагч (мөн санал болгож буй: CAP_NET_RAW)
Хэл, fieldbus адаптер, кабель
C++ GCC 7 ба түүнээс дээш (Linux)
EtherCAT: Ethernet кабель VCP / USB төв: одоо жигд USB USB масс хадгалах: USB кабель REST: Ethernet кабель CANopen: Ixxat USB-to-CAN V2; На-
notec ZK-USB-CAN-1, Peak PCANUSB адаптер arm64 дээр Ubuntu-д Ixxat дэмжлэг байхгүй
Modbus RTU: Nanotec ZK-USB-RS485-1 эсвэл түүнтэй адилтгах адаптер; Виртуал ком порт дээрх USB кабель (VCP)
Modbus TCP: Бүтээгдэхүүний мэдээллийн хуудасны дагуу Ethernet кабель
2.2 Зориулалт ба үзэгчид
NanoLib нь үйлдвэрлэлийн өргөн хүрээний хэрэглээнд Nanotec хянагчуудыг ажиллуулах, харилцах, зөвхөн зохих чадвартай програмистуудад зориулагдсан програмын номын сан, програм хангамжийн бүрэлдэхүүн хэсэг юм.
Бодит цагийн ажиллах чадваргүй техник хангамж (PC) болон үйлдлийн системээс шалтгаалан NanoLib нь олон тэнхлэгт синхрон хөдөлгөөн хийх шаардлагатай эсвэл ерөнхийдөө цаг хугацааны мэдрэмжтэй програмуудад ашиглах боломжгүй юм.
Ямар ч тохиолдолд та NanoLib-ийг аюулгүй байдлын бүрэлдэхүүн хэсэг болгон бүтээгдэхүүн эсвэл системд нэгтгэж болохгүй. Эцсийн хэрэглэгчдэд хүргэхдээ та Nanotec-ийн үйлдвэрлэсэн бүрэлдэхүүн хэсэг бүхий бүтээгдэхүүн бүрд аюулгүй ашиглах, аюулгүй ажиллуулах заавар, анхааруулга зэргийг нэмж оруулах ёстой. Та Nanotec-ээс гаргасан бүх анхааруулах мэдэгдлийг эцсийн хэрэглэгч рүү дамжуулах ёстой.
2.3 Хүргэлтийн хүрээ, баталгаат хугацаа
NanoLib нь бидний татан авалтаас *.zip хавтас хэлбэрээр ирдэг webEMEA / APAC эсвэл AMERICA-д зориулсан сайт. Тохируулахын өмнө татаж авсан файлаа зохих ёсоор хадгалж, задлаарай. NanoLib багц нь:
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
5
2 Эхлэхээсээ өмнө
Интерфейсийн толгойг эх код болгон (API)
Хоёртын формат дахь номын сангийн үндсэн функцууд: нано-
Харилцааг хөнгөвчлөх номын сангууд: nanolibm_ lib.dll
[yourfieldbus].dll гэх мэт.ExampТөсөл: Жишээ ньample.sln (Visual Studio
төсөл) ба жишээлбэлample.cpp (үндсэн file)
Баталгаат хугацааны хувьд a) EMEA / APAC эсвэл AMERICA-д хамаарах манай нөхцөл, б) лицензийн бүх нөхцлийг дагаж мөрдөнө үү. Тэмдэглэл: Nanotec нь гуравдагч этгээдийн тоног төхөөрөмжийн чанар, ашиглалт, суурилуулалт, ашиглалт, ашиглалт, засвар үйлчилгээ зэрэгт хариуцлага хүлээхгүй! Аюулгүй байдлын үүднээс хүчинтэй OEM зааврыг үргэлж дагаж мөрдөөрэй.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
6
NanoLib архитектур
NanoLib-ийн модульчлагдсан программ хангамжийн бүтэц нь танд хатуу тохируулсан цөмийн эргэн тойронд чөлөөтэй тохируулах боломжтой мотор хянагч / фельдбус функцуудыг зохион байгуулах боломжийг олгодог. NanoLib нь дараах модулиудыг агуулдаг:
Хэрэглэгчийн интерфейс (API)
NanoLib цөм
Интерфэйс болон туслах ангиуд нь аль Libraries
Харилцаа холбооны сангууд Fieldbus-т зориулсан номын сангууд нь
NanoLib-ийн хоорондох API функцийн интерфейсийг хянагчийнхаа хэрэгжүүлэхэд танд хандах боломжтой
OD (объект толь бичиг)
автобусны номын сангуудтай харилцах.
үндсэн болон автобусны техник хангамж.
NanoLib үндсэн функц дээр суурилсан
ур чадвар.
3.1 Хэрэглэгчийн интерфейс
Хэрэглэгчийн интерфейс нь толгойн интерфейсээс бүрдэнэ files-ийг ашиглан хянагчийн параметрүүдэд хандах боломжтой. Ангиуд / функцийн лавлагаанд тайлбарласны дагуу хэрэглэгчийн интерфэйсийн ангиуд нь дараахь зүйлийг хийх боломжийг танд олгоно.
Техник хангамж (fieldbus адаптер) болон хянагч төхөөрөмжид холбоно уу. Хянагчийн параметрүүдийг унших/бичихийн тулд төхөөрөмжийн OD руу нэвтэрнэ үү.
3.2 NanoLib цөм
NanoLib цөм нь nanolib.lib импортын номын сантай хамт ирдэг. Энэ нь хэрэглэгчийн интерфэйсийн функцийг хэрэгжүүлдэг бөгөөд дараахь зүйлийг хариуцдаг.
Харилцаа холбооны сангуудыг ачаалах, удирдах. NanoLibAccessor дээр хэрэглэгчийн интерфэйсийн функцуудыг хангах. Энэхүү харилцааны нэвтрэх цэг нь
NanoLib цөм болон холбооны сангууд дээр хийж болох үйлдлүүдийн багцыг торгодог.
3.3 Харилцаа холбооны номын сан
nanotec.services.nanolib.dll (таны нэмэлт Plug & Drive Studio-д хэрэгтэй) гадна 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 Системээ бэлтгэ
Адаптерийн драйверуудыг суулгахаасаа өмнө эхлээд үйлдлийн системийн дагуу компьютерээ бэлтгэ. Компьютерээ Windows үйлдлийн системийнхээ дагуу бэлтгэхийн тулд C++ өргөтгөлтэй MS Visual Studio суулгана уу. Linux Bash-ээр make and gcc-г суулгахын тулд sudo apt install build-essentials руу залгана уу. Дараа нь NanoLib ашигладаг програмын CAP_NET_ADMIN, CAP_NET_RAW болон CAP_SYS_NICE боломжуудыг идэвхжүүлнэ үү: 1. sudo setcap 'cap_net_admin,cap_net_raw,cap_sys_nice+eip' гэж дуудна уу.
нэр>. 2. Зөвхөн дараа нь адаптер драйверуудаа суулгана уу.
4.2 Windows-д зориулсан Ixxat адаптер драйверийг суулгана уу
Зөвхөн зохих драйвер суулгасны дараа та Ixxat-ийн USB-to-CAN V2 адаптерийг ашиглаж болно. Виртуал холболтыг (VCP) хэрхэн идэвхжүүлэх талаар мэдэхийн тулд USB хөтчийн бүтээгдэхүүний гарын авлагыг уншина уу. 1. Windows-д зориулсан Ixxat-ийн VCI 4 драйверийг эндээс татаж аваад суулгана уу www.ixxat.com. 2. Ixxat-ийн USB-to-CAN V2 компакт адаптерийг USB-ээр компьютерт холбоно. 3. Төхөөрөмжийн менежерээр: Драйвер болон адаптер хоёулаа зохих ёсоор суулгасан/танигдсан эсэхийг шалгана уу.
4.3 Windows-д зориулсан Peak адаптер драйверийг суулгана уу
Зөвхөн зохих драйвер суулгасны дараа та Peak-ийн PCAN-USB адаптерийг ашиглаж болно. Виртуал холболтыг (VCP) хэрхэн идэвхжүүлэх талаар мэдэхийн тулд USB хөтчийн бүтээгдэхүүний гарын авлагыг уншина уу. 1. Windows төхөөрөмжийн драйверын тохиргоог татаж аваад суулгана уу (= төхөөрөмжийн драйвер, багаж хэрэгсэл, ба
APIs) -аас http://www.peak-system.com. 2. Peak-ийн PCAN-USB адаптерийг USB-ээр компьютерт холбоно. 3. Төхөөрөмжийн менежерээр: Драйвер болон адаптер хоёулаа зохих ёсоор суулгасан/танигдсан эсэхийг шалгана уу.
4.4 Linux-д зориулсан Ixxat адаптер драйверийг суулгана уу
Зөвхөн зохих драйвер суулгасны дараа та Ixxat-ийн USB-to-CAN V2 адаптерийг ашиглаж болно. Тайлбар: Бусад дэмжигдсэн адаптерууд нь sudo chmod +777/dev/ttyACM* (* төхөөрөмжийн дугаар) -аар таны зөвшөөрөл авах шаардлагатай. Виртуал холболтыг (VCP) хэрхэн идэвхжүүлэх талаар мэдэхийн тулд USB хөтчийн бүтээгдэхүүний гарын авлагыг уншина уу. 1. ECI драйвер болон демо програмд шаардлагатай программ хангамжийг суулгана уу:
sudo apt-get update apt-get суулгах libusb-1.0-0-dev libusb-0.1-4 libc6 libstdc++6 libgcc1 buildessential
2. ECI-for-Linux драйверийг www.ixxat.com сайтаас татаж авна уу. Үүнийг дараах байдлаар задлах:
eci_driver_linux_amd64.zip задлах
3. Драйверыг дараах байдлаар суулгана уу:
cd /EciLinux_amd/src/KernelModule sudo хийх суулгац-usb
4. Демо програмыг эмхэтгэн ажиллуулж драйвер амжилттай суулгасан эсэхийг шалгана уу:
cd /EciLinux_amd/src/EciDemos/ sudo make cd /EciLinux_amd/bin/release/ ./LinuxEciDemo
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
8
4 Эхлэх
4.5 Линуксд зориулсан Peak адаптер драйверийг суулгана уу
Зөвхөн зохих драйвер суулгасны дараа та Peak-ийн PCAN-USB адаптерийг ашиглаж болно. Тайлбар: Бусад дэмжигдсэн адаптерууд нь sudo chmod +777/dev/ttyACM* (* төхөөрөмжийн дугаар) -аар таны зөвшөөрөл авах шаардлагатай. Виртуал холболтыг (VCP) хэрхэн идэвхжүүлэх талаар мэдэхийн тулд USB хөтчийн бүтээгдэхүүний гарын авлагыг уншина уу. 1. Таны Линукс цөмийн толгой байгаа эсэхийг шалгана уу: ls /usr/src/linux-headers-`uname -r`. Үгүй бол суулгана уу
тэдгээрт: sudo apt-get install linux-headers-`uname -r` 2. Зөвхөн одоо л libpopt-dev багцыг суулгана уу: sudo apt-get install libpopt-dev 3. Шаардлагатай драйверын багцыг (peak-linux-driver-) татаж авна уу. xxx.tar.gz) www.peak-system.com сайтаас авна уу. 4. Үүнийг задлахын тулд: tar xzf peak-linux-driver-xxx.tar.gz 5. Савласан хавтсанд: Драйверуудыг эмхэтгэж суулгана, PCAN суурь номын сан гэх мэт: бүгдийг хийнэ.
sudo make install 6. Функцийг шалгахын тулд PCAN-USB адаптерийг залгана уу.
a) Цөмийн модулийг шалгана уу:
lsmod | grep pcan b) ... болон хуваалцсан номын сан:
ls -l /usr/lib/libpcan*
Тайлбар: Хэрэв USB3 асуудал гарвал USB2 порт ашиглана уу.
4.6 Техник хангамжаа холбоно уу
NanoLib төслийг ажиллуулахын тулд адаптераа ашиглан тохирох Nanotec хянагчийг компьютерт холбоно уу. 1. Тохиромжтой кабелиар адаптераа хянагчтай холбоно уу. 2. Адаптерийн мэдээллийн хуудасны дагуу адаптерийг компьютерт холбоно уу. 3. Тохиромжтой тэжээлийн эх үүсвэр ашиглан хянагчийг асаана уу. 4. Шаардлагатай бол Nanotec хянагчийн холбооны тохиргоог бүтээгдэхүүний гарын авлагад заасны дагуу өөрчил.
4.7 NanoLib-г ачаална уу
Түргэн бөгөөд хялбар үндсэн ойлголтуудыг эхлүүлэхийн тулд та манай экс-г ашиглаж болно (гэхдээ хэрэггүй).ample төсөл. 1. Бүс нутгаасаа хамааран: Манайхаас NanoLib програмыг татаж авна уу webEMEA / APAC эсвэл AMERICA-д зориулсан сайт. 2. Багцыг задлах files / хавтаснууд болон нэг сонголтыг сонгоно уу: Хурдан бөгөөд хялбар үндсэн мэдээллийг авахын тулд: Хуучин файлыг эхлүүлэхийг үзнэ үүample төсөл. Windows-д дэвшилтэт тохируулга хийх бол: Өөрийн Windows төслөө үүсгэх хэсгийг үзнэ үү. Линукс дээр ахисан түвшний тохиргоо хийх бол: Өөрийн Линукс төслөө үүсгэхийг үзнэ үү.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
9
Эксийг эхлүүлж байнаample төсөл
NanoLib-г зохих ёсоор ачаалснаар эксample төсөл нь Nanotec хянагчтай NanoLib-ийн хэрэглээг харуулж байна. Тайлбар: Алхам бүрийн хувьд өгөгдсөн жишээн дэх тайлбарample код нь ашигласан функцуудыг тайлбарлана. эксample төсөл нь дараахь зүйлсээс бүрдэнэ: `*_functions_example.*' files, NanoLib интерфэйсийн хэрэгжүүлэлтүүдийг агуулсан `*_callback_example.*' files, янз бүрийн буцаан дуудлагын хэрэгжилтийг агуулсан (скан хийх, өгөгдөл болон
бүртгэл) `цэс_*.*' file, цэсийн логик, кодыг агуулсан Example.* file, энэ нь үндсэн програм бөгөөд цэсийг үүсгэж, ашигласан бүх параметрүүдийг эхлүүлэх Sampler_example.* file, энэ нь өмнөхийг агуулсанample хэрэгжилт нь sampхэрэглээ. Та илүү ихийг олж болноampnanotec.com сайтын Мэдлэгийн санд байгаа янз бүрийн үйлдлийн горимд зориулсан зарим хөдөлгөөний командуудтай. Бүгдийг Windows эсвэл Linux дээр ашиглах боломжтой.
Visual Studio-той Windows-д 1. Ex-ийг нээнэ үүample.sln file. 2. Эксийг нээample.cpp. 3. Эксийг эмхэтгэж ажиллуулampкод.
Linux-д Bash-ээр дамжуулан 1. Эх сурвалжийг задлах file, задалсан контент бүхий хавтас руу очно уу. Гол нь file эксийн хувьдampл байна
example.cpp. 2. Bash-д:
а. Хуваалцсан объектуудыг хуулж, ldconfig руу залгахын тулд "sudo make install". б. Туршилтыг гүйцэтгэх боломжтой болгохын тулд "бүгдийг" хийнэ үү. 3. Хогийн савны хавтсанд гүйцэтгэх боломжтой экс файл байнаample file. Bash-аар: Гаралтын хавтас руу очоод ./ex гэж бичнэ үүample. Хэрэв ямар нэгэн алдаа гарахгүй бол таны хуваалцсан объектуудыг зохих ёсоор суулгасан бөгөөд таны номын сан ашиглахад бэлэн байна. Хэрэв алдаа гарвал ./example: Хуваалцсан сангуудыг ачаалах явцад гарсан алдаа: libnanolib.so: хуваалцсан объектыг нээж чадахгүй байна file: Тийм биш file эсвэл лавлах, хуваалцсан объектуудын суулгалт амжилтгүй болсон. Энэ тохиолдолд дараагийн алхмуудыг дагана уу. 4. /usr/local/lib дотор шинэ хавтас үүсгэ (админы эрх шаардлагатай). Bash-д ингэж бичнэ үү:
sudo mkdir /usr/local/lib/nanotec
5. Бүх хуваалцсан объектуудыг зипээс хуулж ав filelib хавтас:
./lib/*.so /usr/local/lib/nanotec/ суулгана уу.
6. Зорилтот хавтасны агуулгыг дараахаас шалгана уу:
ls -al /usr/local/lib/nanotec/
Энэ нь хуваалцсан объектыг жагсаах ёстой filelib хавтаснаас s. 7. Энэ хавтас дээр ldconfig-г ажиллуулна уу:
sudo ldconfig /usr/local/lib/nanotec/
эксample нь CLI програм хэлбэрээр хэрэгжсэн бөгөөд цэсийн интерфейсээр хангадаг. Цэсийн оруулгууд нь контекст дээр суурилсан бөгөөд контекстийн төлөвөөс хамааран идэвхжүүлэх эсвэл идэвхгүй болгох болно. Тэд танд хянагчтай ажиллах ердийн ажлын урсгалын дагуу номын сангийн төрөл бүрийн функцуудыг сонгож, гүйцэтгэх боломжийг санал болгож байна: 1. Компьютерт холбогдсон техник хангамж (адаптер) байгаа эсэхийг шалгаж, тэдгээрийг жагсаана уу. 2. Адаптертай холболт хийх. 3. Холбогдсон хянагч төхөөрөмжүүдийг автобусанд сканнердах. 4. Төхөөрөмжтэй холбогдоно уу.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
10
5 Эксийг эхлүүлэхample төсөл
5. Номын сангийн нэг буюу хэд хэдэн функцийг турших: Удирдлагын объектын толь бичигт унших/бичих, програм хангамжийг шинэчлэх, NanoJ программыг байршуулах, ажиллуулах, моторыг ажиллуулж, тааруулах, бүртгэлийг тохируулах, ашиглахampлэр.
6. Эхлээд төхөөрөмж рүү, дараа нь адаптер руу холболтыг хаа.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
11
Өөрийн Windows төслийг бий болгох
NanoLib-г ашиглахын тулд өөрийн Windows төслийг үүсгэж, эмхэтгэж, ажиллуул.
6.1 NanoLib импортлох
NanoLib толгойг импортлох files болон MS Visual Studio-ээр дамжуулан номын сангууд.
1. Visual Studio програмыг нээнэ үү. 2. Create new project > Console App C++ > Next-ээр дамжуулан: Төслийн төрлийг сонгоно. 3. Төсөлдөө нэр өгнө үү (энд: NanolibTest) Solution Explorer дээр төслийн хавтас үүсгэнэ үү. 4. Finish-г сонгоно уу. 5. Цонхнуудыг нээнэ үү file Explorer-г сонгоод шинээр үүсгэсэн төслийн хавтас руу очно уу. 6. inc болон lib гэсэн хоёр шинэ хавтас үүсгэ. 7. NanoLib багц хавтасыг нээнэ үү. 8. Тэндээс: Толгой хэсгийг хуулна files-г оруулах фолдероос өөрийн төслийн хавтас inc болон бүх .lib болон .dll руу оруулна уу
files шинэ төслийн хавтас lib руу оруулна уу. 9. Төслийн хавтасныхаа бүтцийг шалгах, жишээ ньampле:
Бүтцийн хувьд ect хавтас:
. NanolibTest inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result_od_entry.hpp lib nanolibm_canopen.dll nanolib.dll … nanolib.lib NanolibTest.cpp NanolibTest.vcxproj NanolibTest.filcproj NanolibTest. NanolibTest.vcxproj.user NanolibTest.sln
6.2 Төслөө тохируулна уу
NanoLib төслүүдийг тохируулахын тулд MS Visual Studio дээрх Solution Explorer програмыг ашиглана уу. Тайлбар: NanoLib-ийг зөв ажиллуулахын тулд Visual C++ төслийн тохиргооноос хувилбарын (дибаг биш!) тохиргоог сонгоно уу; дараа нь уг төслийг C++ дахин хуваарилагдах VC ажиллах хугацаатай [2022] бүтээж, холбоно уу.
1. Шийдэл Explorer дээр: Төслийн хавтас руу очно уу (энд: NanolibTest). 2. Контекст цэсийг нээхийн тулд хавтас дээр дарна уу. 3. Properties-г сонгоно уу. 4. Бүх тохиргоо болон Бүх платформуудыг идэвхжүүл. 5. C/C++-г сонгоод Add Include Directories руу орно. 6. Оруулах: $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) 7. Linker-ийг сонгоод Нэмэлт номын сангийн лавлах руу орно. 8. Insert: $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) 9. Linker-ийг өргөтгөж, Input-ыг сонгоно. 10.Нэмэлт хамаарлууд руу ороод: nanolib.lib;%(AdditionalDependencies) оруулна уу 11.ОК-оор баталгаажуулна уу.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
12
6 Өөрийн Windows төслийг бий болгох
12. Configuration > C++ > Language > Language Standard > ISO C++17 Standard руу ороод хэлний стандартыг C++17 (/std:c++17) болгож тохируулна уу.
6.3 Төслөө бүтээ
MS Visual Studio дээр NanoLib төслөө бүтээгээрэй. 1. Үндсэн *.cpp-г нээнэ үү file (энд: nanolib_example.cpp) болон шаардлагатай бол кодыг засварлана. 2. Build > Configuration Manager-г сонго. 3. Active solution платформуудыг x64 болгож өөрчил. 4. Close-оор баталгаажуулна уу. 5. Build > Build solution-г сонгоно. 6. Алдаа байхгүй юу? Таны эмхэтгэлийн гаралт зохих ёсоор тайлагнаж байгаа эсэхийг шалгана уу:
1>—— Цэвэрлэгээ эхлүүлсэн: Төсөл: NanolibTest, Тохиргоо: Дибаг x64 —–========== Цэвэр: 1 амжилттай, 0 амжилтгүй болсон, 0 алгассан ==========
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
13
7 Өөрийн Линукс төслийг бий болгох
7 Өөрийн Линукс төслийг бий болгох
NanoLib-г ашиглахын тулд өөрийн Линукс төслийг үүсгэж, эмхэтгэж, ажиллуул. 1. Задлуулсан NanoLib суулгацын хэрэгсэлд: Нээлттэй /nanotec_nanolib. 2. tar.gz доторх бүх хуваалцсан объектуудыг ол file. 3. Нэг сонголтыг сонгоно уу: Либ бүрийг Make програмаар суулгана ууfile эсвэл гараар.
7.1 Хуваалцсан объектуудыг Make програмаар суулганаfile
Make ашиглахfile Linux Bash-ийн тусламжтайгаар бүх үндсэн *.so-г автоматаар суулгана fileс. 1. Via Bash: Make-г агуулсан хавтас руу очно ууfile. 2. Хуваалцсан объектуудыг дараах байдлаар хуулна:
sudo make install 3. Баталгаажуулах:
ldconfig
7.2 Хуваалцсан объектуудыг гараар суулгана
*.so бүгдийг суулгахын тулд Bash ашиглана уу fileNanoLib-ийн s-ийг гараар. 1. Via Bash: /usr/local/lib дотор шинэ хавтас үүсгэнэ. 2. Админы эрх шаардлагатай! Төрөл:
sudo mkdir /usr/local/lib/nanotec 3. Заалагдсан суулгалтын багц хавтас руу өөрчил. 4. Либ фолдероос хуваалцсан бүх объектыг хуулах:
./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/
7.3 Төслөө үүсгэ
Хуваалцсан объектуудыг суулгаснаар: Linux NanoLib-дээ шинэ төсөл үүсгэнэ үү. 1. Via Bash: Шинэ төслийн хавтас үүсгэнэ үү (энд: NanoLibTest):
mkdir NanoLibTest cd NanoLibTest
2. Толгой хэсгийг хуулна уу files оруулах хавтас руу (энд: inc) -ээр дамжуулан: mkdir inc cp / FILE IS>/nanotec_nanolib/inc/*.hpp inc
3. Үндсэн хэсгийг үүсгэ file (NanoLibTest.cpp) дамжуулан: #include “accessor_factory.hpp” #include
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
14
7 Өөрийн Линукс төслийг бий болгох
int main(){ nlc::NanoLibAccessor *accessor = getNanoLibAccessor();
nlc::ResultBusHwIds үр дүн = accessor->listAvailableBusHardware();
if(result.hasError()) { std::cout << result.getError() << std::endl; }
else{ std::cout << “Амжилт” << std::endl; }
хандагчийг устгах; буцаах 0; }
4. Төслийн хавтасныхаа бүтцийг шалгах:

. NanoLibTest
inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result.hpp NanoLibTest.cpp
7.4 Төслөө эмхэтгэж турших
Linux NanoLib-ээ Bash ашиглан ашиглахад бэлэн болго.
1. Via Bash: Үндсэнийг эмхэтгэнэ file дамжуулан:
g++ -Wall -Wextra -pedantic -I./inc -c NanoLibTest.cpp -o NanoLibTest
2. Гүйцэтгэх файлыг дараах холбоосоор холбоно уу:
g++ -Wall -Wextra -pedantic -I./inc -o тест NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
3. Тестийн программыг дараах байдлаар ажиллуулна уу:
./туршилт
4. Таны Bash зохих ёсоор мэдээлж байгаа эсэхийг шалгана уу:
амжилт
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
15
8 Ангиуд / функцүүдийн лавлагаа
8 Ангиуд / функцүүдийн лавлагаа
NanoLib-ийн хэрэглэгчийн интерфэйсийн ангиуд болон тэдгээрийн гишүүн функцуудын жагсаалтыг эндээс олоорой. Функцийн ердийн тайлбар нь товч танилцуулга, функцийн тодорхойлолт, параметр / буцах жагсаалтаас бүрдэнэ.
ExampleFunction () Функц юу хийдгийг товчхон хэлнэ.
virtual void 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 () Боломжтой fieldbus техник хангамжийг жагсаахын тулд энэ функцийг ашиглана уу.
virtual ResultBusHwIds nlc::NanoLibAccessor::listAvailableBusHardware ()
ResultBusHwIds-ийг буцаана
Fieldbus ID массивыг хүргэдэг.
openBusHardwareWithProtocol () Автобусны техник хангамжийг холбохын тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (BusHardwareId const & busHwId, BusHardwareOptions const & busHwOpt)
Параметрүүд busHwId busHwOpt
ResultVoid-г буцаана
Нээх талбар автобусыг зааж өгнө. Fielbus нээх сонголтуудыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
isBusHardwareOpen () Энэ функцийг ашиглан таны фельдбус техник хангамжийн холболт нээлттэй байгаа эсэхийг шалгана уу.
virtual ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (const BusHardwareId & busHwId, const BusHardwareOptions & busHwOpt)
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
16
8 Ангиуд / функцүүдийн лавлагаа
Параметрүүд BusHardwareId Үнэнийг буцаана
худлаа
Нээх талбар тус бүрийг зааж өгнө. Техник хангамж нээлттэй байна. Техник хангамж хаалттай байна.
getProtocolSpecificAccessor () Энэ функцийг ашиглан протоколд тусгайлан туслах объектыг авна.
virtual ResultVoid nlc::NanoLibAccessor::getProtocolSpecificAccessor (BusHardwareId const & busHwId)
Параметрүүд busHwId Үр дүнг буцаана
Холболтыг авах талбарыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
getProfinetDCP () Profinet DCP интерфейсийн лавлагааг буцаахын тулд энэ функцийг ашиглана уу.
виртуал ProfinetDCP & getProfinetDCP ()
ProfinetDCP-г буцаана
авахSamplerInterface () s-ийн лавлагааг авахын тулд энэ функцийг ашиглана ууampинтерфейс.
виртуал СamplerInterface & getSamplerInterface ()
С буцаанаampинтерфэйс
s-д хамаарнаampинтерфейсийн анги.
setBusState () Энэ функцийг ашиглан автобусны протоколын төлөвийг тохируулна уу.
virtual ResultVoid nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & state)
Параметрийн busHwId төлөв
ResultVoid-г буцаана
Нээх талбар автобусыг зааж өгнө. Автобусны тусгай төлөвийг мөрийн утга болгон оноодог. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
scanDevices () Сүлжээнд байгаа төхөөрөмжүүдийг хайхдаа энэ функцийг ашиглана уу.
virtual ResultDeviceIds nlc::NanoLibAccessor::scanDevices (const BusHardwareId & busHwId, NlcScanBusCallback* буцаан дуудах)
Параметрүүд busHwId буцаан залгах
ResultDeviceIds IOError-г буцаана
Скан хийх талбар автобусыг зааж өгнө. NlcScanBusCallback-ийн явцыг хянах. Төхөөрөмжийн ID массивыг хүргэдэг. Төхөөрөмж олдсонгүй гэж мэдэгдэнэ.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
17
8 Ангиуд / функцүүдийн лавлагаа
нэмэлт төхөөрөмж ()
NanoLib-ийн дотоод төхөөрөмжийн жагсаалтад deviceId-ээр тодорхойлсон автобусны төхөөрөмжийг нэмж, төхөөрөмжид зориулсан гар утас буцаахын тулд энэ функцийг ашиглана уу.
virtual ResultDeviceHandle nlc::NanoLibAccessor::addDevice (DeviceId const & deviceId)
Parameters deviceId нь ResultDeviceHandle-ийг буцаана
Жагсаалтад нэмэх төхөөрөмжийг зааж өгнө. Төхөөрөмжийн бариулыг өгдөг.
connectDevice () Төхөөрөмжийг төхөөрөмжөөр холбохын тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::connectDevice (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultVoid-г буцаана
IOError
NanoLib ямар автобусны төхөөрөмжид холбогдохыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна. Төхөөрөмж олдсонгүй гэж мэдэгдэнэ.
getDeviceName () Төхөөрөмжийн нэрийг deviceHandle-ээр авахын тулд энэ функцийг ашиглана уу.
virtual ResultString nlc::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultString-г буцаана
NanoLib ямар автобусны төхөөрөмжид нэр өгөхийг зааж өгнө. Төхөөрөмжийн нэрийг тэмдэгт мөр болгон хүргэдэг.
getDeviceProductCode () Төхөөрөмжийн бүтээгдэхүүний кодыг deviceHandle-ээр авахын тулд энэ функцийг ашиглана уу.
virtual ResultInt nlc::NanoLibAccessor::getDeviceProductCode (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultInt-ийг буцаана
NanoLib ямар автобусны төхөөрөмжид бүтээгдэхүүний кодыг авахыг зааж өгнө. Бүтээгдэхүүний кодыг бүхэл тоогоор илэрхийлнэ.
getDeviceVendorId () Төхөөрөмжийн үйлдвэрлэгчийн ID-г deviceHandle-ээр авахын тулд энэ функцийг ашиглана уу.
virtual ResultInt nlc::NanoLibAccessor::getDeviceVendorId (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultInt-ийг буцаана
Нөөц боломжгүй
NanoLib нь ямар автобусны төхөөрөмжид борлуулагчийн ID-г авахыг зааж өгнө. Борлуулагчийн ID-г бүхэл тоогоор өгдөг. Өгөгдөл олдохгүй байгааг мэдэгдэнэ.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
18
8 Ангиуд / функцүүдийн лавлагаа
getDeviceId () NanoLib дотоод жагсаалтаас тодорхой төхөөрөмжийн ID-г авахын тулд энэ функцийг ашиглана уу.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceId (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultDeviceId-г буцаана
NanoLib ямар автобусны төхөөрөмжид төхөөрөмжийн ID-г авахыг зааж өгнө. Төхөөрөмжийн ID-г өгдөг.
getDeviceIds () NanoLib дотоод жагсаалтаас бүх төхөөрөмжийн ID-г авахын тулд энэ функцийг ашиглана уу.
virtual ResultDeviceIds nlc::NanoLibAccessor::getDeviceIds ()
ResultDeviceIds-ийг буцаана
Төхөөрөмжийн ID жагсаалтыг хүргэж байна.
getDeviceUid () Төхөөрөмжийн өвөрмөц ID-г (96 бит / 12 байт) deviceHandle-ээр авахын тулд энэ функцийг ашиглана уу.
virtual ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultArrayByte-ийг буцаана
Нөөц боломжгүй
NanoLib ямар автобусны төхөөрөмжид өвөрмөц ID авахыг зааж өгнө. Өвөрмөц ID-г байт массив хэлбэрээр хүргэдэг. Өгөгдөл олдохгүй байгааг мэдэгдэнэ.
getDeviceSerialNumber () Төхөөрөмжийн серийн дугаарыг deviceHandle-ээр авахын тулд энэ функцийг ашиглана уу.
virtual ResultString NanolibAccessor::getDeviceSerialNumber (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultString-г буцаана
Нөөц боломжгүй
NanoLib ямар автобусны төхөөрөмжид серийн дугаар авахыг зааж өгнө. Сериал дугаарыг мөр болгон хүргэдэг. Өгөгдөл олдохгүй байгааг мэдэгдэнэ.
getDeviceHardwareGroup () Энэ функцийг ашиглан автобусны төхөөрөмжийн техник хангамжийн бүлгийг deviceHandle-ээр авна уу.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareGroup (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultInt-ийг буцаана
NanoLib ямар автобусны төхөөрөмжид техник хангамжийн бүлгийг авахыг зааж өгнө.
Техник хангамжийн бүлгийг бүхэл тоо болгон өгдөг.
getDeviceHardwareVersion () Энэ функцийг ашиглан автобусны төхөөрөмжийн техник хангамжийн хувилбарыг deviceHandle-ээр авна уу.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareVersion (DeviceHandle const deviceHandle)
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
19
8 Ангиуд / функцүүдийн лавлагаа
Төхөөрөмжийн бариулын параметрүүд
Буцах
ResultString нөөц боломжгүй
NanoLib ямар автобусны төхөөрөмжид зориулж техник хангамжийн хувилбарыг авахыг зааж өгнө. Төхөөрөмжийн нэрийг тэмдэгт мөр болгон хүргэдэг. Өгөгдөл олдохгүй байгааг мэдэгдэнэ.
getDeviceFirmwareBuildId () Энэ функцийг ашиглан автобусны төхөөрөмжийн програм хангамжийн ID-г deviceHandle-ээр авна уу.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceFirmwareBuildId (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultString-г буцаана
NanoLib ямар автобусны төхөөрөмжид зориулж програм хангамжийн ID-г авдаг болохыг зааж өгнө.
Төхөөрөмжийн нэрийг тэмдэгт мөр болгон хүргэдэг.
getDeviceBootloaderVersion () DeviceHandle-ээр автобусны төхөөрөмжийн ачаалагч хувилбарыг авахын тулд энэ функцийг ашиглана уу.
virtual ResultInt nlc::NanoLibAccessor::getDeviceBootloaderVersion (DeviceHandle const deviceHandle)
Төхөөрөмжийн бариулын параметрүүд
Буцах
ResultInt Resource боломжгүй
NanoLib ямар автобусны төхөөрөмжид ачаалагчийн хувилбарыг авахыг зааж өгнө. Ачаалагчийн хувилбаруудыг бүхэл тоогоор өгдөг. Өгөгдөл олдохгүй байгааг мэдэгдэнэ.
getDeviceBootloaderBuildId () Энэ функцийг ашиглан автобусны төхөөрөмжийн ачаалагчийн ID-г deviceHandle-ээр авна уу.
virtual ResultDeviceId nlc::NanoLibAccessor:: (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultString-г буцаана
NanoLib ямар автобусны төхөөрөмжид ачаалагчийн ID-г авахыг зааж өгнө.
Төхөөрөмжийн нэрийг тэмдэгт мөр болгон хүргэдэг.
rebootDevice () Төхөөрөмжийг төхөөрөмжөөр дахин ачаалахын тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::rebootDevice (const DeviceHandle deviceHandle)
Parameters deviceHandle ResultVoid-г буцаана
Дахин ачаалах талбар автобусыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
getDeviceState () Төхөөрөмжийн протоколын төлөвийг авахын тулд энэ функцийг ашиглана уу.
virtual ResultString nlc::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)
Төхөөрөмжийн бариулын параметрүүд
NanoLib ямар автобусны төхөөрөмжид төлөвийг авахыг зааж өгнө.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
20
8 Ангиуд / функцүүдийн лавлагаа
ResultString-г буцаана
Төхөөрөмжийн нэрийг тэмдэгт мөр болгон хүргэдэг.
setDeviceState () Төхөөрөмжийн протоколын төлөвийг тохируулахын тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::setDeviceState (const DeviceHandle deviceHandle, const std::string & state)
Төхөөрөмжийн бариулын төлөвийн параметрүүд
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжид төлөвийг тохируулахыг зааж өгнө. Автобусны тусгай төлөвийг мөрийн утга болгон оноодог. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
getConnectionState ()
Төхөөрөмжийн гарчиг (= Салгагдсан, Холбогдсон, ХолбогдсонАчаалагч)-аар тодорхой төхөөрөмжийн хамгийн сүүлд мэдэгдэж буй холболтын төлөвийг авахын тулд энэ функцийг ашиглана уу.
virtual ResultConnectionState nlc::NanoLibAccessor::getConnectionState (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultConnectionState-ийг буцаана
NanoLib ямар автобусны төхөөрөмжид холболтын төлөвийг авахыг зааж өгнө.
Холболтын төлөвийг өгдөг (= Салгагдсан, Холбогдсон, ХолбогдсонBootloader).
checkConnectionState ()
Зөвхөн хамгийн сүүлд мэдэгдэж байсан төлөв нь Салгагдаагүй тохиолдолд: Энэ функцийг ашиглан тодорхой төхөөрөмжийн холболтын төлөвийг deviceHandle болон горимд хамаарах хэд хэдэн үйлдлийг шалгах замаар шалгаж, шинэчлэх боломжтой.
virtual ResultConnectionState nlc::NanoLibAccessor::checkConnectionState (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultConnectionState-ийг буцаана
NanoLib ямар автобусны төхөөрөмж холболтын төлөвийг шалгахыг зааж өгнө.
Холболтын төлөвийг өгдөг (= Салгагдаагүй).
assignObjectDictionary () Энэ гарын авлагын функцийг ашиглан deviceHandle-д бие даан объектын толь бичиг (OD) оноож өгнө үү.
virtual ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)
Parameters deviceHandle objectDictionary
ResultObjectDictionary-г буцаана
NanoLib нь OD-г ямар автобусны төхөөрөмжид өгөхийг зааж өгнө. Объект толь бичгийн шинж чанарыг харуулна.
autoAssignObjectDictionary ()
Энэхүү автоматжуулалтыг ашиглан NanoLib-д объектын толь бичгийг (OD) deviceHandle-д оноохыг зөвшөөрнө үү. Тохиромжтой OD олж, ачаалах үед NanoLib үүнийг төхөөрөмжид автоматаар хуваарилдаг. Тэмдэглэл: Хэрэв тохирох OD аль хэдийн объектын санд ачаалагдсан бол NanoLib нь илгээсэн лавлахыг скан хийхгүйгээр автоматаар ашиглах болно.
virtual ResultObjectDictionary nlc::NanoLibAccessor::autoAssignObjectDictionary (DeviceHandle const deviceHandle, const std::string & lectionariesLocationPath)
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
21
8 Ангиуд / функцүүдийн лавлагаа
Төхөөрөмжийн бариулын параметрүүд
Буцах
толь бичигБайршлын зам Үр дүнObjectDictionary
NanoLib нь аль автобусны төхөөрөмжид тохирох OD-г автоматаар скан хийхийг зааж өгнө. OD лавлах замыг зааж өгнө. Объектын толь бичгийн шинж чанарыг харуулна.
getAssignedObjectDictionary ()
Объект толь бичгийг төхөөрөмжид төхөөрөмжид хуваарилахын тулд энэ функцийг ашиглана уу.
virtual ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (DeviceHandle const төхөөрөмж)
Бариул)
Parameters deviceHandle ResultObjectDictionary-г буцаана
NanoLib ямар автобусны төхөөрөмжид зориулагдсан OD авахыг зааж өгнө. Объект толь бичгийн шинж чанарыг харуулна.
getObjectDictionaryLibrary () Энэ функц нь OdLibrary лавлагааг буцаана.
виртуал OdLibrary& nlc::NanoLibAccessor::getObjectDictionaryLibrary ()
OdLibrary&-г буцаана
OD номын сан болон түүний объектын толь бичгүүдийг бүхэлд нь нээнэ.
setLoggingLevel () Энэ функцийг ашиглан шаардлагатай бүртгэлийн дэлгэрэнгүй мэдээллийг (мөн лог file хэмжээ). Өгөгдмөл түвшин нь Мэдээлэл юм.
virtual void nlc::NanoLibAccessor::setLoggingLevel (LogLevel түвшин)
Параметрийн түвшин
Дараах бүртгэлийн дэлгэрэнгүй мэдээллийг авах боломжтой.
0 = Мөр 1 = Дибаг 2 = Мэдээлэл 3 = Анхааруулах 4 = Алдаа 5 = Чухал 6 = Унтраах
Хамгийн доод түвшин (хамгийн том бүртгэл file); боломжтой бүх нарийн ширийн зүйлийг бүртгэхээс гадна програм хангамжийг эхлүүлэх / зогсоох. Бүртгэлийн дибаг хийх мэдээлэл (= завсрын үр дүн, илгээсэн эсвэл хүлээн авсан контент гэх мэт) Өгөгдмөл түвшин; мэдээллийн мессежийг бүртгэдэг. Гарсан асуудлуудыг бүртгэдэг боловч одоогийн алгоритмыг зогсоохгүй. Алгоритмыг зогсоосон ноцтой бэрхшээлийг бүртгэдэг. Хамгийн дээд түвшин (хамгийн жижиг бүртгэл file); бүртгэлийг унтраадаг; цаашид бүртгэл огт байхгүй. Бүртгэл огт байхгүй.
setLoggingCallback ()
Энэ функцийг ашиглан буцаан залгах заагч ба бүртгэлийн модулийг (= номын сан) тохируулахдаа ашиглана уу (хэрэглэгч өөрөө биш).
virtual void nlc::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* буцаан дуудах, const nlc::LogModule & logModule)
Параметрүүд *буцах logModule
Буцах залгах заагчийг тохируулна. Таны номын сан руу буцах дуудлагыг (логгер биш!) тааруулна.
0 = NanolibCore 1 = NanolibCANopen 2 = NanolibModbus 3 = NanolibEtherCAT
Зөвхөн NanoLib-ийн цөмд зориулсан буцаан дуудлагыг идэвхжүүлдэг. Зөвхөн CANopen-ийн буцаан дуудлагыг идэвхжүүлдэг. Зөвхөн Modbus-ийн буцаан дуудлагыг идэвхжүүлдэг. Зөвхөн EtherCAT-ийн буцаан дуудлагыг идэвхжүүлдэг.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
22
8 Ангиуд / функцүүдийн лавлагаа
4 = NanolibRest 5 = NanolibUSB
Зөвхөн REST-д зориулсан буцаан дуудлагыг идэвхжүүлдэг. Зөвхөн USB-ээр залгах үйлдлийг идэвхжүүлдэг.
unsetLoggingCallback () Бүртгэлийн буцаан залгах заагчийг цуцлахын тулд энэ функцийг ашиглана уу.
virtual void nlc::NanoLibAccessor::unsetLoggingCallback ()
readNumber () Энэ функцийг ашиглан объектын толь бичгээс тоон утгыг уншина уу.
virtual ResultInt nlc::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parameters deviceHandle odIndex
ResultInt-г буцаана
NanoLib ямар автобусны төхөөрөмжөөс уншихыг зааж өгнө. Унших (дэд) индексийг зааж өгнө. Тайлбарлагдаагүй тоон утгыг өгдөг (гарын үсэг зурсан, гарын үсэг зураагүй, 16.16 битийн утгыг засах боломжтой).
readNumberArray () Энэ функцийг объектын толь бичгээс тоон массивуудыг уншихад ашиглана.
virtual ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t индекс)
Төхөөрөмжийн бариулын индексийн параметрүүд
ResultArrayInt-ийг буцаана
NanoLib ямар автобусны төхөөрөмжөөс уншихыг зааж өгнө. Массив объектын индекс. Бүхэл тооны массивыг өгдөг.
readBytes () Энэ функцийг объектын толь бичгээс дурын байт (домайн объектын өгөгдөл) уншихад ашиглана уу.
virtual ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parameters deviceHandle odIndex
ResultArrayByte-г буцаана
NanoLib ямар автобусны төхөөрөмжөөс уншихыг зааж өгнө. Унших (дэд) индексийг зааж өгнө. Байтын массивыг хүргэдэг.
readString () Энэ функцийг объектын лавлахаас мөрүүдийг уншихад ашиглана.
virtual ResultString nlc::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parameters deviceHandle odIndex
ResultString-г буцаана
NanoLib ямар автобусны төхөөрөмжөөс уншихыг зааж өгнө. Унших (дэд) индексийг зааж өгнө. Төхөөрөмжийн нэрийг тэмдэгт мөр болгон хүргэдэг.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
23
8 Ангиуд / функцүүдийн лавлагаа
writeNumber () Энэ функцийг ашиглан объектын санд тоон утгыг бичнэ үү.
virtual ResultVoid nlc::NanoLibAccessor::writeNumber (const DeviceHandle deviceHandle, int64_t утга, const OdIndex odIndex, unsigned int bitLength)
Parameters deviceHandle утга odIndex bitLength
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмж рүү бичихийг зааж өгнө. Тайлбарлагдаагүй утга (гарын үсэг зурсан, гарын үсэг зураагүй, засах боломжтой 16.16). Унших (дэд) индексийг зааж өгнө. Битийн урт. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
writeBytes () Объектийн лавлах руу дурын байт (домайн объектын өгөгдөл) бичихийн тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::writeBytes (const DeviceHandle deviceHandle, const std::vector) & өгөгдөл, const OdIndex odIndex)
Parameters deviceHandle data odIndex
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмж рүү бичихийг зааж өгнө. Байт вектор / массив. Унших (дэд) индексийг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
Програм хангамжийг байршуулах ()
Удирдлагын программыг шинэчлэхийн тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::uploadFirmware (const DeviceHandle deviceHandle, const std::vector) & fwData, NlcDataTransferCallback* буцаан дуудлага)
Parameters deviceHandle fwData NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжийг шинэчлэхийг зааж өгнө. Програм хангамжийн өгөгдлийг агуулсан массив. Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
FirmwareFromFile ()
Энэ функцийг ашиглан хянагчийн программыг байршуулж шинэчилнэ үү file.
virtual ResultVoid nlc::NanoLibAccessor::uploadFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & үнэмлэхүйFileЗам, NlcDataTransferCallback* буцаан дуудах)
Төхөөрөмжийн бариул үнэмлэхүй параметрүүдFileЗам NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжийг шинэчлэхийг зааж өгнө. хүрэх зам file програм хангамжийн өгөгдлийг агуулсан (std::string). Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
24
8 Ангиуд / функцүүдийн лавлагаа
ачаалагч ачаалагч ()
Хянагч ачаалагчаа шинэчлэхийн тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloader (const DeviceHandle deviceHandle, const std::vector) & btData, NlcDataTransferCallback* буцаан дуудах)
Parameters deviceHandle btData NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжийг шинэчлэхийг зааж өгнө. Ачаалагчийн өгөгдлийг агуулсан массив. Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
uploadBootloaderFromFile ()
Энэ функцийг ашиглан хянагчийн ачаалагчийг байршуулж шинэчилнэ үү file.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileЗам, NlcDataTransferCallback* буцаан дуудах)
Parameters deviceHandle bootloaderAbsoluteFileЗам NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжийг шинэчлэхийг зааж өгнө. хүрэх зам file ачаалагчийн өгөгдлийг агуулсан (std::string). Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
UploaderFirmware ()
Удирдлагын ачаалагч болон програм хангамжийг шинэчлэхийн тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmware (const DeviceHandle deviceHandle, const std::vector) & btData, const std::вектор & fwData, NlcDataTransferCallback* буцаан дуудлага)
Parameters deviceHandle btData fwData NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжийг шинэчлэхийг зааж өгнө. Ачаалагчийн өгөгдлийг агуулсан массив. Програм хангамжийн өгөгдлийг агуулсан массив. Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
UploaderFirmwareFromFile ()
Энэ функцийг ашиглан өөрийн хянагч ачаалагч болон програм хангамжийг байршуулж шинэчилнэ үү files.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileЗам, const std::string & үнэмлэхүйFileЗам, NlcDataTransferCallback* буцаан дуудах)
Parameters deviceHandle bootloaderAbsoluteFileЗам үнэмлэхүйFileЗам NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжийг шинэчлэхийг зааж өгнө. хүрэх зам file ачаалагчийн өгөгдлийг агуулсан (std::string). хүрэх зам file програм хангамжийн өгөгдлийг агуулсан (uint8_t). Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
25
8 Ангиуд / функцүүдийн лавлагаа
uploadNanoJ ()
Энэхүү нийтийн функцийг ашиглан NanoJ програмыг хянагчдаа байршуулна уу.
virtual ResultVoid nlc::NanoLibAccessor::uploadNanoJ (DeviceHandle const deviceHandle, std::вектор) const & vmmData, NlcDataTransferCallback* буцаан дуудах)
Parameters deviceHandle vmmData NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмж рүү байршуулахыг зааж өгнө. NanoJ өгөгдөл агуулсан массив. Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
uploadNanoJFromFile ()
Энэ нийтийн функцийг ашиглан NanoJ программыг өөрийн удирдлагад байршуулж болно file.
virtual ResultVoid nlc::NanoLibAccessor::uploadNanoJFromFile (const DeviceHandle deviceHandle, const std::string & үнэмлэхүйFileЗам, NlcDataTransferCallback* буцаан дуудах)
Төхөөрөмжийн бариул үнэмлэхүй параметрүүдFileЗам NlcDataTransferCallback
ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмж рүү байршуулахыг зааж өгнө. хүрэх зам file NanoJ өгөгдлийг агуулсан (std::string). Өгөгдлийн явц хянагч. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
disconnectDevice () Төхөөрөмжөө төхөөрөмжийн бариулаар салгахын тулд энэ функцийг ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::disconnectDevice (DeviceHandle const deviceHandle)
Parameters deviceHandle ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжөөс салгахыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
removeDevice () Энэ функцийг ашиглан төхөөрөмжөө NanoLib-ийн дотоод төхөөрөмжийн жагсаалтаас устгана уу.
virtual ResultVoid nlc::NanoLibAccessor::removeDevice (const DeviceHandle deviceHandle)
Parameters deviceHandle ResultVoid-г буцаана
NanoLib ямар автобусны төхөөрөмжийг устгахыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
closeBusHardware () Энэ функцийг өөрийн фэйдбус техник хангамжаас салгахын тулд ашиглана уу.
virtual ResultVoid nlc::NanoLibAccessor::closeBusHardware (BusHardwareId const & busHwId)
Параметрүүд busHwId Үр дүнг буцаана
Салгах талбар автобусыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
26
8 Ангиуд / функцүүдийн лавлагаа
8.2 BusHardwareId
Автобусны техник хангамжийг нэг нэгээр нь таних эсвэл өөр өөр автобусны техник хэрэгслийг бие биенээсээ ялгахын тулд энэ ангийг ашиглана уу. Энэ анги нь (үүсгэснээс хойш өөрчлөгдөөгүй тохируулагч функцгүй) мөн дараах мэдээллийг агуулна.
Техник хангамж (= адаптерийн нэр, сүлжээний адаптер гэх мэт) Ашиглах протокол (= Modbus TCP, CANopen гэх мэт) Автобусны техник хангамжийн тодорхойлогч (= сериал портын нэр, MAC ээлтэй нэр
хаяг гэх мэт)
BusHardwareId () [1/3] Шинэ автобусны техник хангамжийн ID объект үүсгэдэг бүтээгч.
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 байршлын мэдээлэл). Ээлтэй нэр (= AdapterName (Порт) гэх мэт).
BusHardwareId () [2/3] Нэмэлт техник хангамжийн тодорхойлогчийн сонголттой шинэ автобусны техник хангамжийн ID объект үүсгэдэг бүтээгч.
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 байршлын мэдээлэл). Ээлтэй нэр (= AdapterName (Порт) гэх мэт).
BusHardwareId () [3/3] Одоо байгаа busHardwareId-г хуулдаг бүтээгч.
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
Параметрүүд busHardwareId
Хуулбарлах автобусны техник хангамжийн ID-г нэрлэнэ.
тэнцүү () Шинэ автобусны техник хангамжийн ID-г одоо байгаатай харьцуулна.
bool nlc::BusHardwareId:: тэнцүү (BusHardwareId const ба бусад) const
Бусад параметрүүд Үнэнийг буцаана
Ижил ангийн өөр нэг объект. Хэрэв хоёулаа бүх утгаараа тэнцүү байвал.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
27
8 Ангиуд / функцүүдийн лавлагаа
худлаа
Хэрэв утгууд өөр байвал.
getBusHardware () Автобусны техник хангамжийн мөрийг уншина.
std::string nlc::BusHardwareId::getBusHardware () const
Мөрийг буцаана
getHardwareSpecifier () Автобусны техник хангамжийн тодорхойлогч мөрийг уншина (= сүлжээний нэр гэх мэт).
std::string nlc::BusHardwareId::getHardwareSpecifier () const
Мөрийг буцаана
getExtraHardwareSpecifier () Автобусны нэмэлт техник хангамжийн тодорхойлогч мөрийг (= MAC хаяг гэх мэт) уншина.
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () const
Мөрийг буцаана
getName () Автобусны тоног төхөөрөмжийн ээлтэй нэрийг уншина.
std::string nlc::BusHardwareId::getName () const
Мөрийг буцаана
getProtocol () Автобусны протоколын мөрийг уншина.
std::string nlc::BusHardwareId::getProtocol () const
Мөрийг буцаана
toString () Автобусны техник хангамжийн ID-г мөр болгон буцаана.
std::string nlc::BusHardwareId::toString () const
Мөрийг буцаана
8.3 Автобусны тоног төхөөрөмжийн сонголтууд
Энэ ангиас автобусны техник хангамжийг нээхэд шаардлагатай бүх сонголтуудыг мөрүүдийн түлхүүр утгын жагсаалтаас олоорой.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
28
8 Ангиуд / функцүүдийн лавлагаа
BusHardwareOptions () [1/2] Шинэ автобусны техник хангамжийн сонголтын объектыг байгуулна.
nlc::BusHardwareOptions::BusHardwareOptions () Түлхүүр-утга хос нэмэхийн тулд addOption () функцийг ашиглана уу.
BusHardwareOptions () [2/2] Түлхүүр утгын газрын зураг аль хэдийн бэлэн болсон автобусны техник хангамжийн сонголтуудын шинэ объектыг байгуулна.
nlc::BusHardwareOptions::BusHardwareOptions (std::map) const & сонголтууд)
Параметрийн сонголтууд
Автобусны техник хэрэгслийг ажиллуулах сонголт бүхий газрын зураг.
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-г үзнэ үү
тэнцүү () BusHardwareOptions-ийг одоо байгаа хувилбаруудтай харьцуулна.
bool nlc::BusHardwareOptions:: тэнцүү (BusHardwareOptions const болон бусад) const
Бусад параметрүүд Үнэнийг буцаана
худлаа
Ижил ангийн өөр нэг объект. Хэрэв нөгөө объект нь бүгд ижил сонголттой бол. Хэрэв нөгөө объект өөр өөр түлхүүр эсвэл утгатай бол.
getOptions () Бүх нэмсэн түлхүүр-утга хосыг уншина.
std :: газрын зураг nlc::BusHardwareOptions::getOptions () const
Мөрийн газрын зургийг буцаана
toString () Бүх түлхүүр / утгыг мөр болгон буцаана.
std::string nlc::BusHardwareId::toString () const
Мөрийг буцаана
8.4 BusHwOptionsDefault
Энэхүү өгөгдмөл тохиргооны сонголтын ангилал нь дараах нийтийн шинж чанаруудтай:
Хувилбар: 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
BAUD_RATE_1000K = "1000k" BAUD_RATE_800K = "800k" BAUD_RATE_500K = "500k" BAUD_RATE_250K = "250k" BAUD_RATE_125K = "125k" BAUD_100R "BAUD_100R50." 50к” BAUD_RATE_20K = “20к” BAUD_RATE_10K = “10k” BAUD_RATE_5K = “5к”
8.6 CanBus
Дараах нийтийн шинж чанаруудтай өгөгдмөл тохиргооны сонголтуудын анги:
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 = “ЭХЛҮҮЛЭХ” ЗОГСООХ = “ЗОГСООХ” ҮЙЛ АЖИЛЛАГААНЫ УРЬДЧИЛСАН = “ҮЙЛ АЖИЛЛАГААНЫ ӨМНӨХ” 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 = "ҮЙЛ АЖИЛЛАГААНЫ ӨМНӨХ"
const std::string EXCLUSIVE_LOCK_TIMEOUT_OP- Онцгой түгжээг авахын тулд миллисекундээр хугацаа дуусна
TION_NAME = "Хуваалцсан түгжээний хугацаа хэтэрсэн"
сүлжээ (анхдагч = 500 мс).
const unsigned int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = “500”
const std::string SHARED_LOCK_TIMEOUT_OPTION_ Хуваалцсан түгжээг авахын тулд миллисекундэд хугацаа хэтэрсэн байна
NAME = "Хуваалцсан түгжээний хугацаа дууссан"
сүлжээ (анхдагч = 250 мс).
const unsigned int DEFAULT_SHARED_LOCK_TIMEOUT = "250"
const std::string READ_TIMEOUT_OPTION_NAME = Унших үйлдлийг миллисекундээр дуусгах хугацаа (өгөгдмөл
"Унших хугацаа"
= 700 мс).
const unsigned int DEFAULT_READ_TIMEOUT = “700”
const std::string WRITE_TIMEOUT_OPTION_NAME = бичих үйлдэлд миллисекундээр хугацаа хэтэрсэн (өгөгдмөл
"Бичих хугацаа дуусах"
= 200 мс).
const unsigned int DEFAULT_WRITE_TIMEOUT = “200”
const std::string READ_WRITE_ATTEMPTS_OPTION_ Унших, бичих хамгийн их оролдлого (тэг бус утга)
НЭР = "Унших/бичих оролдлого"
зөвхөн; анхдагч = 5).
const unsigned int DEFAULT_READ_WRITE_ATTEMPTS = "5"
const std::string CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME = "Сүлжээний төлөвийн оролдлогыг өөрчлөх"
Сүлжээний төлөвийг өөрчлөх оролдлогын хамгийн их тоо (зөвхөн тэг биш утгууд; анхдагч = 10).
const unsigned 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 бүтэц
Энэ бүтэц нь EtherCAT slave/сүлжээний төлөвүүдийг дараах нийтийн шинж чанаруудад мөрийн утга болгон агуулна. Тайлбар: Асаах үеийн өгөгдмөл төлөв нь PRE_OPERATIONAL; NanoLib нь бодит цагийн бус үйлдлийн системд найдвартай "ҮЙЛ АЖИЛЛАГАА" төлөвийг хангаж чадахгүй:
const std::string const std::string const std::string const std::string const std::string const std::string
ҮГҮЙ = "ҮГҮЙ" INIT = "INIT" PRE_PERATIONAL = "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-д зориулсан бүх мэдээллийг дараах олон нийтийн шинж чанаруудаар агуулна.
const std::string
ADAPTER_BUS_NUMBER_OPTIONS_NAME = "ixxat адаптерийн автобусны дугаар"
const IxxatAdapterBusNumber адаптерBusNumber = IxxatAdapterBusNumber ()
8.12 IxxatAdapterBusNumber
Энэ бүтэц нь Ixxat usb-to-can-д зориулсан автобусны дугаарыг дараах нийтийн шинж чанаруудаар агуулна.
const std::string const std::string const std::string const std::string
BUS_NUMBER_0_DEFAULT = "0" BUS_NUMBER_1 = "1" BUS_NUMBER_2 = "2" BUS_NUMBER_3 = "3"
8.13 оргил
Энэхүү бүтэц нь Peak usb-to-can-ийн бүх мэдээллийг дараах олон нийтийн шинж чанаруудаар агуулна.
const std::string
ADAPTER_BUS_NUMBER_OPTIONS_NAME = "адаптерийн автобусны оргил дугаар"
const PeakAdapterBusNumber адаптерBusNumber = PeakAdapterBusNumber ()
8.14 PeakAdapterBusNumber
Энэ бүтэц нь дараах нийтийн шинж чанаруудаар Peak usb-to-can-д зориулсан автобусны дугаарыг агуулна.
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string
BUS_NUMBER_1_DEFAULT = std::to_string (PCAN_USBBUS1) BUS_NUMBER_2 = std::to_string (PCAN_USBBUS2) BUS_NUMBER_3 = std::to_string (PCAN_USBBUS3) BUS_NUMBER_4 = std::to_string (PCAN_USBBUS4) NUMBER:US_dst (PCAN_USBBUS5) BUS_NUMBER_5 = std::to_string (PCAN_USBBUS6) BUS_NUMBER_6 = std::to_string (PCAN_USBBUS7) BUS_NUMBER_7 = std::to_string (PCAN_USBBUS8) BUS_NUMBER_8 = std::to_string (PCAN_USBBUS9) BUS_NUMBER_9 = std::to_USBBUS10 (PCAN_USBBUS10) std::to_string (PCAN_USBBUS11) BUS_NUMBER_11 = std::to_string (PCAN_USBBUS12) BUS_NUMBER_12 = std::to_string (PCAN_USBBUS13) BUS_NUMBER_13 = std::to_string (PCAN_USBBUS14)dd:_std::to_string (PCAN_USBBUS14) BUS_NUMBER_15 = std::to_string (PCAN_USBBUS15) BUS_NUMBER_16 = std::to_string (PCAN_USBBUS16)
8.15 Төхөөрөмжийн бариул
Энэ анги нь автобусанд байгаа төхөөрөмжийг удирдах бариул бөгөөд дараах нийтийн гишүүн функцуудтай.
DeviceHandle () DeviceHandle (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 авах () const
8.16 Төхөөрөмжийн дугаар
Автобус дээрх төхөөрөмжүүдийг таних, ялгахын тулд энэ ангиллыг ашиглана уу:
Техник хангамжийн адаптер танигч
Төхөөрөмжийн танигч
Тодорхойлолт
Төхөөрөмжийн ID / тайлбарын утгуудын утга нь автобуснаас хамаарна. Жишээ ньample, CAN автобус нь бүхэл тооны ID-г ашиглаж болно.
DeviceId () [1/3] Шинэ төхөөрөмжийн ID объектыг байгуулна.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId_, unsigned int deviceId_, std::string const & description_)
Параметрүүд busHardwareId_ deviceId_ description_
Автобусны танигч. Индекс; автобусанд хамаарах (= CANopen зангилааны ID гэх мэт). Тодорхойлолт (хоосон байж болно); автобусанд хамаарна.
DeviceId () [2/3] Өргөтгөсөн ID сонголт бүхий шинэ төхөөрөмжийн ID объектыг байгуулна.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId, unsigned int deviceId_, std::string const & description_ std::вектор const & extraId_, std::string const & extraStringId_)
Параметрүүд busHardwareId_ deviceId_ description_ extraId_ extraStringId_
Автобусны танигч. Индекс; автобусанд хамаарах (= CANopen зангилааны ID гэх мэт). Тодорхойлолт (хоосон байж болно); автобусанд хамаарна. Нэмэлт ID (хоосон байж болно); утга нь автобуснаас хамаарна. Нэмэлт мөр ID (хоосон байж болно); утга нь автобуснаас хамаарна.
DeviceId () [3/3] Төхөөрөмжийн ID объектын хуулбарыг бүтээдэг.
nlc::DeviceId::DeviceId (DeviceId const &)
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
33
8 Ангиуд / функцүүдийн лавлагаа
Төхөөрөмжийн дугаар_ параметр
Хуулбарлах төхөөрөмжийн ID.
тэнцүү () Шинэ зүйлийг одоо байгаа объектуудтай харьцуулна.
bool nlc::DeviceId:: тэнцүү (DeviceId const болон бусад) const
Буль буцаана
getBusHardwareId () Автобусны техник хангамжийн ID-г уншина.
BusHardwareId nlc::DeviceId::getBusHardwareId () const
BusHardwareId-г буцаана
getDescription () Төхөөрөмжийн тайлбарыг уншина (ашиглагдаагүй байж магадгүй).
std::string nlc::DeviceId::getDescription () const
Мөрийг буцаана
getDeviceId () Төхөөрөмжийн ID-г уншина (ашиглагдаагүй байж магадгүй).
unsigned int nlc::DeviceId::getDeviceId () const
Гараагүй int-г буцаана
toString () Объектыг мөр болгон буцаана.
std::string nlc::DeviceId::toString () const
Мөрийг буцаана
getExtraId () Төхөөрөмжийн нэмэлт ID-г уншина (ашиглагдаагүй байж болно).
const std::вектор &getExtraId () const
Векторыг буцаана
Нэмэлт ID-н вектор (хоосон байж болно); утга нь автобуснаас хамаарна.
getExtraStringId () Төхөөрөмжийн нэмэлт мөрийн ID-г уншина (ашиглагдаагүй байж болно).
std::string getExtraStringId () const
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
34
8 Ангиуд / функцүүдийн лавлагаа
Мөрийг буцаана
Нэмэлт мөрийн ID (хоосон байж болно); утга нь автобуснаас хамаарна.
8.17 LogLevelConverter
Энэ анги нь таны бүртгэлийн түвшинг мөр болгон буцаана. статик std::string toString (nlc::LogLevel logLevel)
8.18 LogModule Хөрвүүлэгч
Энэ анги нь таны номын санд зориулсан лог modulesetLoggingLevel ()-г мөр болгон буцаана.
статик std::string
toString (nlc::LogModule logModule)
статик std::string toString (nlc::LogModule logModule)
8.19 Object Dictionary
Энэ анги нь хянагчийн объектын толь бичгийг төлөөлдөг бөгөөд дараах нийтийн гишүүн функцуудтай: getDeviceHandle ()
virtual ResultDeviceHandle getDeviceHandle () const Үр дүнг буцаанаDeviceHandle
getObject () virtual ResultObjectSubEntry getObject (OdIndex const odIndex) ResultObjectSubEntry-ийг буцаана
getObjectEntry () виртуал ResultObjectEntry getObjectEntry (uint16_t индекс)
ResultObjectEntry-ийг буцаана
Объектын шинж чанарын талаар мэдээлэл өгнө.
getXmlFile() Virtual ResultString getXml гэж нэрлэнэ үүFileНэр () const
ResultString-г буцаана
XML-г буцаана file мөр болгон нэр.
readNumber () virtual ResultInt readNumber (OdIndex const odIndex) Үр дүнг буцаана
readNumberArray () virtual ResultArrayInt readNumberArray (uint16_t const индекс)
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
35
8 Ангиуд / функцүүдийн лавлагаа
ResultArrayInt readString буцаана ()
virtual ResultString readString (OdIndex const odIndex) Үр дүнг буцаана. ResultVoid writeBytes () virtual ResultVoid writeBytes (OdIndex const OdIndex, std::вектор)
const & data) ResultVoid холбоотой холбоосуудыг буцаана OdIndex
8.20 ObjectEntry
Энэ анги нь объектын толь бичгийн объектын оруулгыг илэрхийлдэг бөгөөд дараах статик хамгаалагдсан шинж чанар болон нийтийн гишүүн функцуудтай:
статик nlc::ObjectSubEntry invalidObject
getName () Объектын нэрийг мөр болгон уншина.
virtual std::string getName () const
getPrivate () Объект хувийнх эсэхийг шалгана.
virtual bool getPrivate () const
getIndex () Объектын индексийн хаягийг уншина.
virtual uint16_t getIndex () const
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
36
8 Ангиуд / функцүүдийн лавлагаа
getDataType () Объектийн өгөгдлийн төрлийг уншина.
virtual nlc::ObjectEntryDataType getDataType () const
getObjectCode () Объект кодыг уншина:
Null Deftype Defstruct Var Array Record
0x00 0x05 0x06 0x07 0x08 0x09
virtual nlc::ObjectCode getObjectCode () const
getObjectSaveable () Объектыг хадгалах боломжтой эсэхийг шалгана (дэлгэрэнгүйг бүтээгдэхүүний гарын авлагаас үзнэ үү): APPLICATION, COMMUNICATION, DRIVE, MISC_CONFIG, MODBUS_RTU, NO, TUNING, CUSTOMER, ETHERNET, CANOPEN, VERIFY1020, UNKABLETY_NOWN
virtual nlc::ObjectSaveable getObjectSaveable () const
getMaxSubIndex () Энэ объектын дэмждэг дэд индексүүдийн тоог уншина.
virtual uint8_t getMaxSubIndex () const
getSubEntry () виртуал nlc::ObjectSubEntry & getSubEntry (uint8_t дэд индекс)
Мөн ObjectSubEntry-г үзнэ үү.
8.21 ObjectSubEntry
Энэ анги нь объектын толь бичгийн объектын дэд оруулга (дэд индекс) бөгөөд дараах нийтийн гишүүн функцуудтай:
getName () Объектын нэрийг мөр болгон уншина.
virtual std::string getName () const
getSubIndex () Дэд индексийн хаягийг уншина.
virtual uint8_t getSubIndex () const
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
37
8 Ангиуд / функцүүдийн лавлагаа
getDataType () Объектийн өгөгдлийн төрлийг уншина.
virtual nlc::ObjectEntryDataType getDataType () const
getSdoAccess () Дэд индекст SDO-ээр хандах боломжтой эсэхийг шалгана:
Зөвхөн унших
1
Зөвхөн бичих
2
Унших бичих
3
Хандалтгүй
0
virtual nlc::ObjectSdoAccessAttribute getSdoAccess () const
getPdoAccess () Дэд индексийг PDO-р ашиглах боломжтой/зураглах боломжтой эсэхийг шалгана:
Tx
1
Rx
2
TxRx
3
Үгүй
0
virtual nlc::ObjectPdoAccessAttribute getPdoAccess () const
getBitLength () Дэд индексийн уртыг шалгана.
virtual uint32_t getBitLength () const
getDefaultValueAsNumeric () Тоон өгөгдлийн төрлүүдийн дэд индексийн анхдагч утгыг уншина.
virtual ResultInt getDefaultValueAsNumeric (std::string const & key) const
getDefaultValueAsString () Мөр өгөгдлийн төрлүүдийн дэд индексийн анхдагч утгыг уншина.
virtual ResultString getDefaultValueAsString (std::string const & key) const
getDefaultValues () Дэд индексийн анхдагч утгуудыг уншина.
виртуал std :: газрын зураг getDefaultValues () const
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
38
8 Ангиуд / функцүүдийн лавлагаа
readNumber () Дэд индексийн тоон бодит утгыг уншина.
virtual ResultInt readNumber () const
readString () Дэд индексийн мөрийн бодит утгыг уншина.
virtual ResultString readString () const
readBytes () Дэд индексийн бодит утгыг байтаар уншина.
virtual ResultArrayByte readBytes () const
writeNumber () Дэд индекст тоон утгыг бичнэ.
virtual ResultVoid writeNumber (const int64_t утга) const
writeBytes () Дэд индекс дэх утгыг байтаар бичнэ.
virtual ResultVoid 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 () const
uint16_t-г буцаана
getSubindex () Дэд индексийг уншина (0x00-аас 0xFF хүртэл)
uint8_t nlc::OdIndex::getSubIndex () const
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
39
8 Ангиуд / функцүүдийн лавлагаа
uint8_t-г буцаана
toString () Индекс болон дэд индексийг мөр болгон буцаана. Анхдагч мөр 0xIIII: 0xSS дараах байдлаар уншина:
I = 0x0000-аас 0xFFFF хүртэлх индекс
S = 0x00-аас 0xFF хүртэлх дэд индекс
std::string nlc::OdIndex::toString () const
0xIIII:0xSS-г буцаана
Өгөгдмөл мөрийн дүрслэл
8.23 OdLibrary
XML-ээс ObjectDictionary ангийн жишээг үүсгэхийн тулд энэхүү програмчлалын интерфейсийг ашиглана уу. assignObjectDictionary-ийн тусламжтайгаар та өвөрмөц байдлаар үүсгэгдсэн танигчийн ачаар жишээ бүрийг тодорхой төхөөрөмжтэй холбож болно. Ийнхүү үүсгэсэн ObjectDictionary тохиолдлуудыг индексээр хандахын тулд OdLibrary объектод хадгалдаг. ODLibrary анги нь ObjectDictionary зүйлсийг дараахаас ачаалдаг file эсвэл массив, тэдгээрийг хадгалдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getObjectDictionaryCount () virtual uint32_t getObjectDictionaryCount () const
getObjectDictionary () виртуал ResultObjectDictionary getObjectDictionary (uint32_t odIndex)
ResultObjectDictionary-г буцаана
addObjectDictionaryFromFile ()
virtual ResultObjectDictionary addObjectDictionaryFromFile (std :: string const & абсолют XmlFileЗам)
ResultObjectDictionary-г буцаана
addObjectDictionary ()
virtual ResultObjectDictionary addObjectDictionary (std :: vector const & odXmlData, const std::string &xmlFileЗам = std::string ())
ResultObjectDictionary-г буцаана
8.24 OdTypesHelper
Дараах нийтийн гишүүн функцүүдээс гадна энэ анги нь захиалгат өгөгдлийн төрлүүдийг агуулдаг. Тайлбар: Өөрийнхөө өгөгдлийн төрлийг шалгахын тулд od_types.hpp доторх ObjectEntryDataType ангиллыг хайж олоорой.
uintToObjectCode () Тэмдэглэгдээгүй бүхэл тоог объектын код руу хөрвүүлдэг:
Null Deftype
0x00 0x05
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
40
8 Ангиуд / функцүүдийн лавлагаа
Var массивын бичлэгийг устгах
0x06 0x07 0x08 0x09
статик ObjectCode uintToObjectCode (тэмдэглэгдээгүй int objectCode)
isNumericDataType () Өгөгдлийн төрөл тоон шинжтэй эсэхийг мэдээлнэ.
статик bool нь NumericDataType (ObjectEntryDataType dataType)
isDefstructIndex () Объект нь тодорхойлолтын бүтцийн индекс мөн эсэхийг мэдээлнэ.
статик bool isDefstructIndex (uint16_t typeNum)
isDeftypeIndex () Объект нь тодорхойлолтын төрлийн индекс мөн эсэхийг мэдээлнэ.
статик bool ньDeftypeIndex (uint16_t typeNum)
isComplexDataType () Өгөгдлийн төрөл нь нарийн төвөгтэй эсэхийг мэдээлнэ.
статик bool нь ComplexDataType (ObjectEntryDataType dataType)
uintToObjectEntryDataType () Тэмдэггүй бүхэл тоог OD өгөгдлийн төрөл болгон хувиргана.
sstatic ObjectEntryDataType uintToObjectEntryDataType (uint16_t objectDataType)
objectEntryDataTypeToString () OD өгөгдлийн төрлийг мөр болгон хувиргана.
статик std::string objectEntryDataTypeToString (ObjectEntryDataType odDataType)
stringToObjectEntryDatatype () Боломжтой бол мөрийг OD өгөгдлийн төрөл болгон хувиргана. Үгүй бол UNKNOWN_DATATYPE-г буцаана.
статик ObjectEntryDataType stringToObjectEntryDatatype (std::string dataTypeString)
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
41
8 Ангиуд / функцүүдийн лавлагаа
objectEntryDataTypeBitLength () Объект оруулах өгөгдлийн төрлийн битийн уртыг мэдээлнэ.
статик uint32_t objectEntryDataTypeBitLength (ObjectEntryDataType const & dataType)
8.25 RESTfulBus бүтэц
Энэ бүтэц нь RESTful интерфэйсийн (Ethernet-ээр) холболтын тохиргооны сонголтуудыг агуулдаг. Энэ нь дараах олон нийтийн шинж чанаруудыг агуулдаг:
const std::string const unsigned long const std::string const unsigned урт const std::string const тэмдэггүй урт
CONNECT_TIMEOUT_OPTION_NAME = “АМРАЛТЫН ХОЛБОГДОЛЫН ХУГАЦАА” DEFAULT_CONNECT_TIMEOUT = 200 REQUEST_TIMEOUT_OPTION_NAME = “ЗАМРАХ ХҮСЭЛТИЙН ХУГАЦАА” DEFAULT_REQUEST_TIMEOUT = 200 RESPONSE_TIMEOUT_OPTION_NAME: Хариулт нь DEFAULT_TIMEOUT_OPTION_NAME = 750
8.26 ProfinetDCP
Линукс дээр дуудлага хийх програмд CAP_NET_ADMIN болон CAP_NET_RAW боломжууд хэрэгтэй. Идэвхжүүлэхийн тулд: sudo setcap 'cap_net_admin,cap_net_raw+eip' ./executable. Windows дээр ProfinetDCP интерфэйс нь WinPcap (4.1.3 хувилбараар туршсан) эсвэл Npcap (1.60 ба 1.30 хувилбараар туршсан) ашигладаг. Энэ нь динамикаар ачаалагдсан wpcap.dll номын санг дараах дарааллаар хайдаг (Тэмдэглэл: одоогийн Win10Pcap дэмжлэг байхгүй):
1. Nanolib.dll лавлах 2. Windows системийн лавлах SystemRoot%System32 3. Npcap суулгах лавлах SystemRoot%System32Npcap 4. Орчны зам
Энэ анги нь Profinet DCP интерфэйсийг төлөөлдөг бөгөөд дараах олон нийтийн гишүүн функцуудтай:
getScanTimeout () Төхөөрөмжийн скан хийх завсарлагааны талаар мэдээлнэ (анхдагч = 2000 мс).
virtual uint32_t nlc::ProfinetDCP::getScanTimeout () const
setScanTimeout () Төхөөрөмжийн скан хийх хугацааг тохируулна (анхдагч = 2000 мс).
virtual void nlc::setScanTimeout (uint32_t timeoutMsec)
getResponseTimeout () Тохируулах, дахин тохируулах болон анивчих үйлдлүүдийн төхөөрөмжийн хариу өгөх хугацаа дууссан тухай мэдээлнэ (анхдагч = 1000 мс).
virtual uint32_t nlc::ProfinetDCP::getResponseTimeout () const
setResponseTimeout () Төхөөрөмжийг тохируулах, дахин тохируулах, анивчих үйлдлүүдэд хариу өгөх хугацаа дууссан тухай мэдээлнэ (анхдагч = 1000 мс).
виртуал хүчингүй nlc::ProfinetDCP::setResponseTimeout (uint32_t timeoutMsec)
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
42
8 Ангиуд / функцүүдийн лавлагаа
isServiceAvailable ()
Profinet DCP үйлчилгээний боломжтой эсэхийг шалгахын тулд энэ функцийг ашиглана уу.
Сүлжээний адаптерийн хүчинтэй байдал / олдоц Windows: WinPcap / Npcap боломжтой Linux: CAP_NET_ADMIN / CAP_NET_RAW боломжууд
virtual ResultVoid nlc::ProfinetDCP::isServiceAvailable (const BusHardwareId & busHardwareId)
Параметрүүд BusHardwareId Үнэнийг буцаана
худлаа
Profinet DCP үйлчилгээний техник хангамжийн ID-г шалгах. Үйлчилгээ авах боломжтой. Үйлчилгээ боломжгүй байна.
scanProfinetDevices () Profinet төхөөрөмжүүд байгаа эсэхийг техник хангамжийн автобусанд скан хийхийн тулд энэ функцийг ашиглана уу.
virtual ResultProfinetDevices scanProfinetDevices (const BusHardwareId & busHardwareId)
Параметрүүд BusHardwareId Үр дүнг буцаанаProfinetDevices
Нээх талбар тус бүрийг зааж өгнө. Техник хангамж нээлттэй байна.
setupProfinetDevice () Дараах төхөөрөмжийн тохиргоог хийнэ:
Төхөөрөмжийн нэр
IP хаяг
Сүлжээний маск
Өгөгдмөл гарц
virtual ResultVoid nlc::setupProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice struct & profinetDevice, bool savePermanent)
resetProfinetDevice () Төхөөрөмжийг зогсоож, үйлдвэрийн тохиргоонд нь буцаана.
virtual ResultVoid nlc::resetProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)
blinkProfinetDevice () Profinet төхөөрөмжид Profinet LED-ээ анивчуулж эхлэх команд өгнө.
virtual ResultVoid nlc::blinkProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice &profinetDevice)
validateProfinetDeviceIp () Төхөөрөмжийн IP хаягийг шалгахын тулд энэ функцийг ашиглана уу.
Virtual ResultVoid validateProfinetDeviceIp (const BusHardwareId &busHardwareId, const ProfinetDevice & profinetDevice)
Параметрүүд BusHardwareId ProfinetDevice
Шалгах техник хангамжийн ID-г зааж өгнө. Баталгаажуулах Profinet төхөөрөмжийг заана.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
43
8 Ангиуд / функцүүдийн лавлагаа
ResultVoid-г буцаана
8.27 ProfinetDevice бүтэц
Profinet төхөөрөмжийн өгөгдөл нь дараах олон нийтийн шинж чанартай:
std::string std::string std::array< uint8_t, 6 > uint32_t uint32_t uint32_t
төхөөрөмжийн нэр төхөөрөмжVendor macAddress ipAddress netMask defaultGateway
MAC хаягийг 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
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 () const
8.28.1 Үр дүн хүчингүй
Хэрэв функц хүчингүй болбол NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд болон хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
ResultVoid () Дараах функцууд нь яг хүчингүй үр дүнг тодорхойлоход тусална.
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_)
ResultVoid (Үр дүн ба үр дүн)
8.28.2 Үр дүнInt
Хэрэв функц бүхэл тоо буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол бүхэл тооны үр дүнг буцаана.
int64_t getResult () const
int64_t-г буцаана
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
45
8 Ангиуд / функцүүдийн лавлагаа
ResultInt () Дараах функцууд нь яг бүхэл үр дүнг тодорхойлоход тусална.
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 ResultString
Хэрэв функц нь мөрийг буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол мөрийн үр дүнг уншина.
const std::string nlc::ResultString::getResult () const
const мөрийг буцаана
ResultString () Дараах функцууд нь яг мөрийн үр дүнг тодорхойлоход тусална.
ResultString (std::string const & message, bool hasError_)
ResultString (NlcErrorCode const & errCode, std::string const & errorString_)
ResultString (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultString (Үр дүн ба үр дүн)
8.28.4 ResultArrayByte
Хэрэв функц нь байт массивыг буцаавал NanoLib танд энэ ангийн жишээг илгээнэ. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол байт векторыг уншина.
const std::вектор nlc::ResultArrayByte::getResult () const
const векторыг буцаана
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
46
8 Ангиуд / функцүүдийн лавлагаа
ResultArrayByte () Дараах функцууд нь яг байт массивын үр дүнг тодорхойлоход тусална:
ResultArrayByte (std :: vector const & үр дүн_)
ResultArrayByte (std::string const & errorString_)
ResultArrayByte (NlcErrorCode const & errCode, std::string const & алдаа String_)
ResultArrayByte (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayByte (Үр дүн ба үр дүн)
8.28.5 ResultArrayInt
Хэрэв функц бүхэл тооны массив буцаавал NanoLib танд энэ ангийн жишээг илгээнэ. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол бүхэл тоо векторыг уншина.
const std::вектор nlc::ResultArrayInt::getResult () const
const векторыг буцаана
ResultArrayInt () Дараах функцууд нь бүхэл тооны массивын үр дүнг тодорхойлоход тусална.
ResultArrayInt (std :: vector const & үр дүн_)
ResultArrayInt (std::string const & errorString_)
ResultArrayInt (NlcErrorCode const & errCode, std::string const & алдаа String_)
ResultArrayInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayInt (Үр дүн ба үр дүн)
8.28.6 Үр дүнBusHwIds
Хэрэв функц нь автобусны техник хангамжийн ID массивыг буцаавал NanoLib танд энэ ангийн жишээг илгээнэ. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол автобус-техник хангамж-ID векторыг уншина.
const std::вектор nlc::ResultBusHwIds::getResult () const
Параметрүүд const вектор
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
47
8 Ангиуд / функцүүдийн лавлагаа
ResultBusHwIds () Дараах функцууд нь автобус-техник хангамж-ID-массивын үр дүнг яг тодорхойлоход тусална:
ResultBusHwIds (std :: vector const & үр дүн_)
ResultBusHwIds (std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultBusHwIds (Үр дүн ба үр дүн)
8.28.7 ResultDeviceId
Хэрэв функц нь төхөөрөмжийн ID-г буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол төхөөрөмжийн ID векторыг уншина.
DeviceId nlc::ResultDeviceId::getResult () const
const векторыг буцаана
ResultDeviceId () Дараах функцууд нь төхөөрөмжийн ID үр дүнг яг тодорхойлоход тусална:
ResultDeviceId (DeviceId const & үр дүн_)
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 ResultDeviceIds
Хэрэв функц нь төхөөрөмжийн ID массивыг буцаавал NanoLib танд энэ ангийн жишээг илгээнэ. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол төхөөрөмжийн ID векторыг буцаана.
DeviceId nlc::ResultDeviceIds::getResult () const
const векторыг буцаана
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
48
8 Ангиуд / функцүүдийн лавлагаа
ResultDeviceIds () Дараах функцууд нь төхөөрөмжийн ID-массивын үр дүнг яг тодорхойлоход тусална:
ResultDeviceIds (std :: vector const & үр дүн_)
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 ResultDeviceHandle
Хэрэв функц нь төхөөрөмжийн бариулын утгыг буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол төхөөрөмжийн бариулыг уншина.
DeviceHandle nlc::ResultDeviceHandle::getResult () const
DeviceHandle-г буцаана
ResultDeviceHandle () Дараах функцууд нь төхөөрөмжийн бариулын үр дүнг яг тодорхойлоход тусална:
ResultDeviceHandle (DeviceHandle const & result_)
ResultDeviceHandle (std::string const & errorString_)
ResultDeviceHandle (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceHandle (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultDeviceHandle (Үр дүн ба үр дүн)
8.28.10 ResultObjectDictionary
Хэрэв функц нь объектын толь бичгийн агуулгыг буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол төхөөрөмжийн ID векторыг уншина.
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 ResultConnectionState
Хэрэв функц нь төхөөрөмжийн холболтын төлөвийн мэдээллийг буцаавал NanoLib танд энэ ангийн жишээг илгээнэ. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол төхөөрөмжийн бариулыг уншина.
DeviceConnectionStateInfo nlc::ResultConnectionState::getResult () const
DeviceConnectionStateInfo Connected / Disconnected / ConnectedBootloader буцаана
ResultConnectionState () Дараах функцууд нь яг холболтын төлөвийн үр дүнг тодорхойлоход тусална:
ResultConnectionState (DeviceConnectionStateInfo const & result_)
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 ResultObjectEntry
Хэрэв функц нь объектын оруулгыг буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
50
8 Ангиуд / функцүүдийн лавлагаа
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол төхөөрөмжийн ID векторыг буцаана.
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 ResultObjectSubEntry
Хэрэв функц нь объектын дэд оруулгыг буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол төхөөрөмжийн ID векторыг буцаана.
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 Үр дүнProfinetDevices
Хэрэв функц нь Profinet төхөөрөмжийг буцаавал NanoLib танд энэ ангийн жишээг илгээдэг. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
51
8 Ангиуд / функцүүдийн лавлагаа
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол Profinet төхөөрөмжийн векторыг уншина.
const std::вектор & getResult () const
ResultProfinetDevices () Дараах функцууд нь яг Profinet төхөөрөмжүүдийг тодорхойлоход тусална.
ResultProfinetDevices (const std::vector & profinetDevices)
ResultProfinetDevices (const Үр дүн ба үр дүн)
ResultProfinetDevices (const std::string &errorText, NlcErrorCode errorCode = NlcErrorCode::GeneralError, uint32_t extendedErrorCode = 0)
8.28.15 Үр дүнampleDataArray
Хэрэв функц нь дараах байдлаар буцаж байвал NanoLib танд энэ ангийн жишээг илгээдэгample өгөгдлийн массив. Анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () Хэрэв функцийн дуудлага амжилттай болсон бол өгөгдлийн массивыг уншина.
const std::вектор <SampleData> & getResult () const
Үр дүнSampleDataArray () Дараах функцууд нь яг Profinet төхөөрөмжүүдийг тодорхойлоход тусална.
Үр дүнSampleDataArray (const std::вектор <SampleData> & dataArray)
Үр дүнSampleDataArray (const std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)
Үр дүнSampleDataArray (const ResultSampleDataArray болон бусад)
Үр дүнSampleDataArray (үр дүн ба үр дүн)
8.28.16 Үр дүнamplerState
Хэрэв функц нь дараах байдлаар буцаж байвал NanoLib танд энэ ангийн жишээг илгээдэгampler state. Энэ анги нь үр дүнгийн ангиас нийтийн функцууд / хамгаалагдсан шинж чанаруудыг өвлөн авдаг бөгөөд дараах нийтийн гишүүн функцуудтай:
getResult () s-г уншинаampХэрэв функцийн дуудлага амжилттай болсон бол төлөвийн вектор.
SamplerState getResult () const
С буцаанаamplerState>
Тохируулаагүй / Тохируулсан / Бэлэн / Ажиллаж байна / Дууссан / Амжилтгүй / Цуцлагдсан
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
52
8 Ангиуд / функцүүдийн лавлагаа
Үр дүнSamplerState () Дараах функцууд нь яг s-г тодорхойлоход тусалнаampбайдал.
Үр дүнSamplerState (const SampТөрийн муж)
Үр дүнSamplerState (const std::string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t
өргөтгөсөнErrorCode = 0)
Үр дүнSamplerState (const ResultSamplerState ба бусад)
Үр дүнSamplerState (const Үр дүн ба үр дүн)
8.29 NlcErrorCode
Хэрэв ямар нэг зүйл буруу болвол үр дүнгийн ангиуд энэ тоололд жагсаасан алдааны кодуудын аль нэгийг мэдээлдэг.
Алдааны код Амжилтын ЕрөнхийАлдаа Автобус Боломжгүй ХарилцааАлдааны ПротоколАлдаа
ODБайхгүй ODIInvalidAccess ODTypeТохиролгүй ҮйлдэлТохирсон ҮйлдэлДэмжигдээгүйInvalidOperation
InvalidArguments Access Denied ResourceNotResource боломжгүй Санах ойн хугацаа дууссаны алдаа
C: Ангилал D: Тодорхойлолт R: Шалтгаан C: Байхгүй. Д: Алдаа байхгүй. R: Үйл ажиллагаа амжилттай дууссан.
C: Тодорхойгүй. D: Тодорхойгүй алдаа. R: Өөр ангилалд багтахгүй бүтэлгүйтэл.
С: Автобус. D: Техник хангамжийн автобус байхгүй. R: Автобус байхгүй, тасарсан эсвэл гэмтэлтэй.
C: Харилцаа холбоо. D: Харилцаа холбоо нь найдваргүй. R: Гэнэтийн өгөгдөл, буруу CRC, хүрээ эсвэл паритын алдаа гэх мэт.
C: Протокол. D: Протоколын алдаа. R: Дэмжигдээгүй протоколын сонголт, төхөөрөмжийн дэмжигдээгүй протокол, протокол дахь алдаа (SDO сегментийн синхрончлолын бит) гэх мэтийн дараа хариу өгөх. R: Дэмжигдээгүй протокол (сонголт) эсвэл протокол дахь алдаа (SDO гэх мэт) -ийн хариу эсвэл төхөөрөмжийн тайлан сегментийн синхрончлолын бит) гэх мэт R: Дэмжигдээгүй протокол (сонголтууд) эсвэл протокол дахь алдаа (SDO сегментийн синхрончлолын бит гэх мэт) гэх мэт.
C: Объектын толь бичиг. D: OD хаяг байхгүй байна. R: Объектын толь бичигт ийм хаяг байхгүй.
C: Объектын толь бичиг. D: OD хаяг руу нэвтрэх эрх буруу байна. R: Зөвхөн унших боломжтой хаягаар бичих эсвэл зөвхөн бичих хаягаас уншихыг оролдоорой.
C: Объектын толь бичиг. D: Төрөл таарахгүй байна. R: Мөрийг тоо гэж үзэхийн тулд утгыг заасан төрөл рүү хөрвүүлээгүй.
C: Өргөдөл. D: Процессыг зогсоосон. R: Програмын хүсэлтээр үйл явц таслагдана. Автобус сканнердах гэх мэт буцаан залгах функцээр зөвхөн үйл ажиллагааны тасалдлыг буцаана.
C: Нийтлэг. D: Процесс дэмжигдээгүй. R: Техник хангамжийн автобус / төхөөрөмжийн дэмжлэг байхгүй.
C: Нийтлэг. D: Одоогийн нөхцөл байдалд процесс буруу эсвэл одоогийн аргументтай хүчингүй. R: Аль хэдийн холбогдсон автобус / төхөөрөмжүүдийг дахин холбох оролдлого. Аль хэдийн салгагдсан хүмүүсийг салгах оролдлого. Програм хангамжийн горимд ачаалагчийг ажиллуулах оролдлого эсвэл эсрэгээр.
C: Нийтлэг. D: Аргумент хүчингүй. R: Буруу логик эсвэл синтакс.
C: Нийтлэг. D: Хандалтыг хориглосон. R: Хүссэн үйлдлийг гүйцэтгэх эрх, чадвар дутмаг.
C: Нийтлэг. D: Заасан зүйл олдсонгүй. R: Техник хангамжийн автобус, протокол, төхөөрөмж, төхөөрөмж дээрх OD хаяг, эсвэл file олдсонгүй.
C: Нийтлэг. D: Заасан зүйл олдсонгүй. R: завгүй, байхгүй, таслагдах эсвэл согог.
C: Нийтлэг. D: Санах ой хангалтгүй. R: Энэ тушаалыг боловсруулахад санах ой хэтэрхий бага байна.
C: Нийтлэг. D: Процессын хугацаа дууссан. R: Хугацаа дууссаны дараа буцна уу. Хугацаа нь төхөөрөмжийн хариу өгөх хугацаа, хуваалцсан эсвэл онцгой нөөцөд хандах хугацаа эсвэл автобус / төхөөрөмжийг тохирох төлөвт шилжүүлэх хугацаа байж болно.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
53
8 Ангиуд / функцүүдийн лавлагаа
8.30 NlcCallback
Энэ буцаан дуудлагын эх анги нь дараах нийтийн гишүүн функцтэй: буцаан дуудах ()
виртуал үр дүнVoid дуудлага ()
Буцах
Үр дүн хүчингүй болсон
8.31 NlcDataTransferCallback
Өгөгдөл дамжуулах (програм хангамжийн шинэчлэл, NanoJ байршуулах гэх мэт) энэ буцааж дуудлагын ангиллыг ашиглана уу. 1. Програм хангамжийн байршуулалтын хувьд: Тусгай дуудлагын аргаар үүнийг өргөтгөх "хамтарсан анги"-ыг тодорхойл.
хэрэгжилт. 2. NanoLibAccessor.uploadFirmware () дуудлагад "хамтарсан ангийн" жишээг ашиглана уу. Үндсэн анги нь өөрөө дараах нийтийн гишүүн функцтэй.
буцаан дуудах () виртуал Үр дүнVoid дуудлага (nlc::DataTransferInfo мэдээлэл, int32_t өгөгдөл)
Буцах
Үр дүн хүчингүй болсон
8.32 NlcScanBusCallback
Автобус скан хийхдээ энэ буцаан дуудлагын ангиллыг ашиглана уу. 1. Тусгай дуудлагын аргын хэрэгжилтээр үүнийг өргөтгөх "хамтарсан анги"-ыг тодорхойлно уу. 2. NanoLibAccessor.scanDevices () дуудлагад "хамтарсан ангийн" жишээг ашиглана уу. Үндсэн анги нь өөрөө дараах нийтийн гишүүн функцтэй.
буцааж залгах ()
virtual ResultVoid дуудлага (nlc::BusScanInfo мэдээлэл, std::вектор) const & devicesFound, int32_t data)
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 Сampинтерфэйс
Энэ ангийг ашиглан s-г тохируулах, эхлүүлэх, зогсоохampler, эсвэл s авахampled өгөгдөл болон авчрахampler-ийн төлөв эсвэл сүүлчийн алдаа. Анги нь дараах нийтийн гишүүний үүргийг гүйцэтгэдэг.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
54
8 Ангиуд / функцүүдийн лавлагаа
тохируулах () гэж тохируулнаampлэр.
virtual ResultVoid nlc :: SamplerInterface::configure (const DeviceHandle deviceHandle, const SamplerConfiguration & samplerТохиргоо)
Параметрүүд [in] deviceHandle [in] samplerТохиргоо
ResultVoid-г буцаана
s-г ямар төхөөрөмжөөр тохируулахыг зааж өгнөampler for. Тохиргооны шинж чанаруудын утгыг зааж өгнө. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
getData () s-г авнаampудирдсан өгөгдөл.
виртуал үр дүнampleDataArray nlc::SamplerInterface::getData (const DeviceHandle deviceHandle)
Параметрүүд [in] deviceHandle Үр дүнг буцаанаampleDataArray
Ямар төхөөрөмжид өгөгдөл авахыг зааж өгнө.
s-г хүргэж байнаampled өгөгдөл, хэрэв s бол хоосон массив байж болноamplerNotify эхлэх үед идэвхтэй байна.
getLastError () дараах байдлаар авнаampлерийн сүүлчийн алдаа.
virtual ResultVoid nlc :: SamplerInterface::getLastError (const DeviceHandle deviceHandle)
ResultVoid-г буцаана
Хүчингүй функц ажиллаж байгааг баталгаажуулна.
getState () дараах байдлаар авнаampлерийн байдал.
виртуал үр дүнamplerState nlc::SamplerInterface::getState (const DeviceHandle deviceHandle)
Үр дүнг буцаанаamplerState
s-г хүргэж байнаampбайдал.
эхлэх () дараах байдлаар эхэлнэampлэр.
virtual ResultVoid nlc :: SamplerInterface::start (const DeviceHandle deviceHandle, SamplerNotify* samplerNotify, int64_t applicationData)
Параметрүүд [in] deviceHandle [in] SampПрограмын өгөгдөлд lerNotify
ResultVoid-г буцаана
s-г ямар төхөөрөмжөөс эхлүүлэхийг зааж өгнөampler for.
Ямар нэмэлт мэдээллийг мэдээлэхийг зааж өгнө (nullptr байж болно).
Сонголт: Аппликейшнтэй холбоотой өгөгдлийг (хэрэглэгчийн тодорхойлсон 8 битийн массив утга / төхөөрөмжийн ID / индекс эсвэл огнооны цаг, хувьсагчийн / функцын заагч гэх мэт) s руу шилжүүлнэ.amplerNotify.
Хүчингүй функц ажиллаж байгааг баталгаажуулна.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
55
8 Ангиуд / функцүүдийн лавлагаа
зогсоох () гэж зогсдогampлэр.
virtual ResultVoid nlc :: SamplerInterface::stop (const DeviceHandle deviceHandle)
Параметрүүд [in] deviceHandle ResultVoid-г буцаана
s-г зогсоох ямар төхөөрөмжийг зааж өгнөampler for. Хүчингүй функц ажиллаж байгааг баталгаажуулна.
8.35 СamplerТохиргооны бүтэц
Энэ бүтэц нь s өгөгдлийг агуулдагampler-ийн тохиргооны сонголтууд (статик эсвэл үгүй).
Нийтийн шинж чанарууд
std::вектор tracked Addresses
12 хүртэлх OD хаяг нь s байх ёстойampудирдсан.
uint32_t
хувилбар
Бүтцийн хувилбар.
uint32_t
үргэлжлэх хугацаа Миллисекунд
Sampling үргэлжлэх хугацаа нь мс, 1-ээс 65535 хүртэл
uint16_t
хугацааМиллисекунд
Sampms-ээр үргэлжлэх хугацаа.
uint16_t
numberOfSamples
Sampхэмжээ.
uint16_t
preTriggerNumberOfSamples
Samples урьдчилсан гох хэмжээ.
боол
Програм хангамжийн хэрэгжилтийг ашиглах
Програм хангамжийн хэрэгжилтийг ашиглах.
боол
NewFWS ашиглан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_BIT_TOGGLE = TC_0 TC_GREATER_OR_EQUAL = 15x0 TC_LESS = 16x0 TC_LESS_OR_eQUAL = 17x0 TC_eQUAL = 18x0 TC_NOT_EQUAL = 19x0A TC_ONE_EDGE = 1x0B TC_MULTI_EXGEC = triger in, Og
SamplerTrigger
SamplerTrigger
гэж эхлүүлэх гохampлэр?
Статик нийтийн шинж чанарууд
статик constexpr size_t SAMPLER_CONFIGURATION_VERSION = 0x01000000 static constexpr size_t MAX_TRACKED_ADDRESSES = 12
8.36 СamplerNotify
s-г идэвхжүүлэхийн тулд энэ ангийг ашиглана ууampгэж эхлэх үед мэдэгдлүүдampler. Анги нь дараах нийтийн гишүүн функцтэй.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
56
8 Ангиуд / функцүүдийн лавлагаа
мэдэгдэх ()
Мэдэгдлийн оруулгыг хүргэж байна.
virtual void nlc ::SamplerNotify::notify (const ResultVoid & lastError, const SamplerState samplerState, const std::vector <SampleData> & sampleDatas, int64_t applicationData)
Параметрүүд [in] lastError [in] samplerState
[in] сampleDatas [in] applicationData
s үед хамгийн сүүлд гарсан алдааг мэдээлнэampлинг. s-г мэдээлдэгampМэдэгдлийн үеийн байдал: Тохируулаагүй / Тохируулсан / Бэлэн / Ажиллаж байна / Дууссан / Амжилтгүй / Цуцлагдсан. s-г мэдээлдэгampled-өгөгдлийн массив. Аппликешнд зориулсан өгөгдлийг мэдээлдэг.
8.37 СampleData бүтэц
Энэ бүтэц нь s-г агуулдагampудирдсан өгөгдөл.
uin64_t давталтын дугаар
0-ээс эхэлж, зөвхөн давтагдах горимд нэмэгддэг.
std::вектор<SampledValues> s-ийн массивыг агуулнаampудирдсан утгууд.
8.38 СampledValue бүтэц
Энэ бүтэц нь s-г агуулдагampудирдсан утгууд.
in64_t утга uin64_t CollectTimeMsec
Хянагдсан OD хаягийн утгыг агуулна.
s-тэй харьцуулахад цуглуулах хугацааг миллисекундээр агуулнаampэхлэл.
8.39 СamplerTrigger бүтэц
Энэ бүтэц нь s-ийн гох тохиргоог агуулдагampлэр.
SamplerTriggerНөхцөл байдал
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_GREA0 = 15x0 TC_GREATER_OR_EQUAL = 16x0 TC_LESS = 17x0 TC_LESS_OR_eQUAL = 18x0 TC_eQUAL = 19x0 TC_NOT_QUAL = 1x0A TC_ONE_EDGE = 1x0B TC_MULTI_EDGE = 1
Триггерийн OdIndex (хаяг).
Нөхцөлийн утга эсвэл битийн дугаар (бит тэгээс эхлэн).
8.40 Цуваа бүтэц
Эндээс өөрийн цуваа холболтын сонголтууд болон дараах олон нийтийн шинж чанаруудыг олоорой:
const std::string const SerialBaudRate
BAUD_RATE_OPTIONS_NAME = "цуваа дамжуулах хурд" baudRate = Цуваа дамжуулах хурдны бүтэц
Хувилбар: 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
BAUD_RATE_7200 = "7200" BAUD_RATE_9600 = "9600" BAUD_RATE_14400 = "14400" BAUD_RATE_19200 = "19200" BAUD_RATE_38400 = "38400" ATE_56000BA56000 57600 = "57600" BAUD_RATE_115200 = "115200" BAUD_RATE_128000 = "128000" BAUD_RATE_256000 = "256000"
8.42 SerialParity бүтэц
Эндээс өөрийн цуваа паритын сонголтууд болон дараах нийтийн шинж чанаруудыг олоорой:
const std::string const std::string const std::string const std::string const std::string
NONE = "байхгүй" SOdd = "сондгой" EVEN = "тэгш" MARK = "тэмдэг" ЗАЙ = "зай"
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
58
9 Лицензүүд
9 Лицензүүд
NanoLib API интерфэйсийн толгой болон өмнөхample эх кодыг Creative Commons Attribution 3.0 Unported License (CC BY) дагуу Nanotec Electronic GmbH & Co. KG лицензтэй. Хоёртын форматаар хангагдсан номын сангийн хэсгүүд (үндсэн болон фельдбус холбооны номын сан) нь Creative Commons AttributionNoDerivatives 4.0 Олон улсын лицензийн (CC BY ND) дагуу лицензтэй.
Creative Commons
Дараах хүний унших боломжтой хураангуй нь лиценз(үүд)-ийг орлохгүй. Та холбогдох лицензийг creativecommons.org болон доорх холбоосоос олж болно. Та чөлөөтэй:
CC BY 3.0
Хуваалцах: Баруун тийшээ харна уу. Дасан зохицох: Дасан зохицох, хувиргах, дээр нь бүтээх
ямар ч зориулалттай материал, тэр ч байтугай арилжааны зориулалтаар .
CC BY-ND 4.0
Хуваалцах: Материалыг дурын хэрэгсэл эсвэл форматаар хуулж, дахин тараана.
Дараах лицензийн нөхцлийг дагаж мөрдвөл лиценз олгогч дээрх эрх чөлөөг цуцалж чадахгүй.
CC BY 3.0
CC BY-ND 4.0
Атрибут: Та зохих кредитийг өгөх ёстой, Атрибут: Зүүнээс харна уу. Гэхдээ: Энэ холбоосыг оруулна уу
Лицензийн холбоосыг өгч, хэрэв байгаа бол
бусад лиценз.
өөрчлөлтүүд хийгдсэн. Та үүнийг аль ч тохиолдолд хийж болно
Дериватив байхгүй: Хэрэв та дахин найруулах, хувиргах эсвэл бүтээх юм бол
боломжийн байдлаар, гэхдээ ямар ч байдлаар биш
материал дээр та тарааж болохгүй
лиценз олгогч таныг эсвэл таны хэрэглээг зөвшөөрч байна.
өөрчлөгдсөн материал.
Нэмэлт хязгаарлалт байхгүй: Та хэрэглэхгүй байж болно Нэмэлт хязгаарлалт байхгүй: Зүүнээс харна уу. хууль эрх зүйн нэр томъёо буюу технологийн арга хэмжээ
лицензээр бусдыг ямар нэгэн зүйл хийхийг хязгаарлах
зөвшөөрлүүд.
Тайлбар: Та олон нийтийн домэйн дэх материалын элементүүдийн лицензийг дагаж мөрдөх шаардлагагүй, эсвэл холбогдох үл хамаарах зүйл, хязгаарлалтаар ашиглахыг зөвшөөрдөг.
Жич: Баталгаа өгөхгүй. Тусгай зөвшөөрөл нь танд зориулалтын дагуу ашиглахад шаардлагатай бүх зөвшөөрлийг өгөхгүй байж магадгүй юм. Жишээ ньample, сурталчилгаа, хувийн нууц, ёс суртахууны эрх зэрэг бусад эрхүүд нь таны материалыг хэрхэн ашиглахыг хязгаарлаж болзошгүй.
Хувилбар: doc 1.4.2 / NanoLib 1.3.0
59
Дардас, холбоо барих, хувилбарууд
©2024 Nanotec Electronic GmbH & Co.KGKapellenstr.685622 Feldkirchen ГерманУтас.+49(0) 89 900 686-0Факс+49(0)89 900 686-50 info@nanotec.dewww.nanotec.com Бүх эрх хуулиар хамгаалагдсан. Алдаа, орхигдуулсан, техникийн болон агуулгын өөрчлөлтийг мэдэгдэлгүйгээр хийх боломжтой. Иш татсан брэнд/бүтээгдэхүүн нь эзэмшигчийнх нь худалдааны тэмдэг бөгөөд ийм байдлаар авч үзэх ёстой. Жинхэнэ хувилбар.
Баримт бичиг 1.4.2 2024.12 1.4.1 2024.10 1.4.0 2024.09 1.3.3 2024.07
1.3.2 2024.05 1.3.1 2024.04 1.3.0 2024.02
1.2.2 2022.09 1.2.1 2022.08 1.2.0 2022.08
+ Нэмэгдсэн > Өөрчлөгдсөн # Тогтмол > Өгөгдсөн өмнөх хувилбарын дахин ажилamples.
+ NanoLib Modbus: Modbus VCP-д төхөөрөмж түгжих механизм нэмэгдсэн. # NanoLib Core: Тогтмол холболтын төлөвийг шалгана. # 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булийн утгыг удирдсан.
+ Бүх платформд зориулсан Java 11 дэмжлэг. + Бүх платформд зориулсан Python 3.11/3.12 дэмжлэг. + Бүртгэлийн шинэ дуудлагын интерфейс (жишээ ньamples). + NanoLib Logger-д зориулсан буцаан дуудлагын систем. > Логгерийг 1.12.0 хувилбар руу шинэчил. > NanoLib модулиуд Сampler: Nanotec хянагч v24xx програм хангамжийг одоо дэмжээрэй. > NanoLib модулиуд Сampler: s-д ашигласан бүтцийн өөрчлөлтampтохиргоо. > NanoLib модулиуд Сampler: Үргэлжилсэн горим нь төгсгөлгүй гэсэн утгатай ижил утгатай; гох нөхцөлийг нэг удаа шалгана; s-ийн тооamples нь 0 байх ёстой. > NanoLib модулиуд Sampler: Програм хангамжийн горимд өгөгдөл цуглуулдаг урсгалын ердийн тэргүүлэх чиглэл. > NanoLib модулиуд Сampler: Бэлэн ба ажиллаж байгаа төлөв хоорондын шилжилтийг илрүүлэхийн тулд дахин бичсэн алгоритм. # NanoLib Core: Нэг автобусны техник хангамжийг ашиглан 0 ба түүнээс дээш төхөөрөмжийг хаахад дахин хандалтын зөрчил (0000005xC2) байхгүй болно. # NanoLib Core: Линукс дээр PEAK адаптер залгахад сегментчилсэн алдаа гарахгүй. # NanoLib модулиуд Сampler: Зөв sampпрограм хангамжийн горимд led-утга унших. # NanoLib модулиуд Сampler: 502X: 04-ийн зөв тохиргоо. # NanoLib модулиуд Сampler: Буферийг сувагтай зөв холих. # NanoLib-Canopen: Бат бөх байх, бага дамжуулах хурдаар зөв скан хийх зорилгоор CAN-ийн хугацааг нэмэгдүүлсэн. # NanoLib-Modbus: Тусгай төхөөрөмжүүдэд зориулсан VCP илрүүлэх алгоритм (USB-DA-IO).
+ EtherCAT дэмжлэг.
+ Төслөө тохируулах хэсэгт VS төслийн тохиргооны талаар анхаарна уу.
+ getDeviceHardwareGroup (). + getProfinetDCP (isServiceAvailable). + getProfinetDCP (validateProfinetDeviceIp). + autoAssignObjectDictionary (). + getXmlFileНэр (). + const std::string & xmlFileaddObjectDictionary дахь зам (). + авах SamplerInterface ().
Бүтээгдэхүүн 1.3.0 1.2.1 1.2.0 1.1.3
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-д алдааны код ResourceUnailable. > firmware UploadFromFile одоо FirmwareFrom-г байршуулна ууFile (). > firmware Upload () одоо програм хангамжийг () байршуулна уу. > bootloaderUploadFromFile () одоо BootloaderFrom-г байршуулна ууFile (). > bootloaderUpload () одоо ачаалагчийг () байршуулна. > bootloaderFirmwareUploadFromFile () BootloaderFirmwareFrom-г байршуулахFile (). > bootloaderFirmwareUpload () одоо ачаалагчFirmware-г () байршуулна. > nanojUploadFromFile () одоо NanoJFrom-г байршуулна ууFile (). > nanojUpload () одоо uploadNanoJ (). > objectDictionaryLibrary () одоо ObjectDictionaryLibrary () авна. > String_String_Map одоо StringStringMap. > NanoLib-Common: listAvailableBusHardware болон openBusHardwareWithProtocol-ийг Ixxat адаптертай хурдан гүйцэтгэх. > NanoLib-CANopen: автобусны техник хангамжийн сонголтууд хоосон бол өгөгдмөл тохиргоог ашиглана (1000k baudrate, Ixxat автобусны дугаар 0). > NanoLib-RESTful: npcap/winpcap драйвер байгаа бол Windows дээр Ethernet ачаалагчтай холбогдох админы зөвшөөрөл хуучирсан. # NanoLib-CANopen: автобусны техник хангамж одоо хоосон сонголттойгоор осолгүй нээгддэг. # NanoLib-Common: openBusHardwareWithProtocol () одоо санах ой алдагдсангүй.
+ Linux ARM64 дэмжлэг. + USB масс хадгалах / REST / Profinet DCP дэмжлэг. + CheckConnectionState (). + getDeviceBootloaderVersion (). + ResultProfinetDevices. + NlcErrorCode (NanotecExceptions-г орлуулсан). + NanoLib Modbus: USB-д нэгдсэн VCP / USB төв. > Modbus TCP сканнер нь үр дүнг харуулна. < Modbus TCP холбооны хоцролт тогтмол хэвээр байна.
+ Илүү ObjectEntryDataType (цогцолбор ба мэргэжлийнfile- тусгай). + ConnectDevice () болон scanDevices () аль нь ч олдохгүй бол IOError буцна. + CanOpen / Modbus-ийн нэрлэсэн хугацаа ердөө 100 мс.
+ Modbus дэмжлэг (VCP-ээр дамжуулан USB Hub). + Өөрийн Линукс төслийг бий болгох бүлэг. + extraHardwareSpecifier-аас BusHardwareId (). + DeviceId () руу extraId_ болон extraStringId_.
+ 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
Баримт бичиг / нөөц
![]() |
Нанотик NanoLib C++ програмчлал [pdf] Хэрэглэгчийн гарын авлага NanoLib C програмчлал, Си програмчлал, програмчлал |

