Nanotic-LOGO

Nanotic NanoLib C++ Programming

Nanotic-NanoLib-C++-Programming-PRODUCT

Ulwazi lweMveliso

Iinkcukacha

  • Igama lemveliso: NanoLib
  • Ukucwangcisa Ulwimi: C++
  • Inguqulelo yeMveliso: 1.3.0
  • Uguqulelo lweNcwadana yoMsebenzisi: 1.4.2

Ithala leencwadi leNanoLib lenzelwe isoftware yolawulo lwenkqubo yabalawuli beNanotec. Ibonelela ngojongano lomsebenzisi, imisebenzi engundoqo, kunye namathala eencwadi onxibelelwano ukuququzelela uphuhliso lwezicelo zolawulo.

Imiyalelo yokusetyenziswa kwemveliso

  • Ngaphambi kokuba Uqale:
    • Qinisekisa ukuba isixokelelwano sakho siyahlangabezana neemfuno zehardware ezichazwe kwincwadana yemigaqo. Abaphulaphuli abajoliswe kulo mveliso baquka abaphuhlisi abafuna ukudala isofthiwe yokulawula abalawuli beNanotec.
  • Ndiyaqalisa:
    • Ukuqala ukusebenzisa iNanoLib, landela la manyathelo:
    • Qala ngokungenisa iNanoLib kwiprojekthi yakho.
    • Lungisa useto lweprojekthi yakho njengoko kufuneka.
    • Yakha iprojekthi yakho ukubandakanya ukusebenza kweNanoLib.
  • Ukudala iiProjekthi:
    • Unokwenza iiprojekthi zeWindows kunye neemeko zeLinux. Landela imiyalelo ethile enikwe kwincwadana yeqonga ngalinye.
  • Iiklasi / iReferensi yeMisebenzi:
    • Jonga kwincwadana yomsebenzisi ngesikhokelo esineenkcukacha kwiiklasi kunye nemisebenzi ekhoyo kwiNanoLib yesoftware yolawulo lwenkqubo.

Ii-FAQs

  • Umbuzo: Yintoni injongo yeNanoLib?
    • A: INanoLib lithala leencwadi lesoftware yolawulo lwenkqubo yabalawuli beNanotec, ebonelela ngemisebenzi ebalulekileyo kunye nobuchule bokunxibelelana.
  • Umbuzo: Ndingaqalisa njani ngeNanoLib?
    • A: Qala ngokungenisa iNanoLib kwiprojekthi yakho, uhlengahlengiso useto lweprojekthi, kunye nokwakha iprojekthi yakho ukuze usebenzise iimpawu zeNanoLib.

"`

Incwadi yomsebenzisi uNanoLib
C++

Isebenza ngoguqulelo lwemveliso 1.3.0

Uguqulelo lweNcwadana yoMsebenzisi: 1.4.2

Injongo yoxwebhu kunye nemigaqo

Olu xwebhu luchaza ukuseta kunye nokusetyenziswa kwelayibrari yeNanoLib kwaye iqulethe ireferensi kuzo zonke iiklasi kunye nemisebenzi yokucwangcisa isoftware yakho yolawulo kubalawuli beNanotec. Sisebenzisa olu hlobo lulandelayo:
Isicatshulwa esikrwelelwe umgca ngaphantsi siphawula ireferensi enqamlezileyo okanye ikhonkco.
Example 1: Ukufumana imiyalelo echanekileyo kwiNanoLibAccessor, bona uSeto. Eksample 2: Faka umqhubi we-Ixxat kwaye uqhagamshele iadaptha ye-CAN-to-USB. Okubhaliweyo okukekeleyo kuthetha: Le yinto ebizwa ngegama, indlela yemenyu / umba, isithuba / file igama okanye (ukuba kuyimfuneko) intetho yolwimi lwasemzini.
Example 1: Khetha File > Entsha > Uxwebhu olungenanto. Vula iSixhobo thebhu kwaye ukhethe Comment. Eksample 2: Olu xwebhu lwahlula abasebenzisi (= Nutzer; usuario; utente; utilisateur; utente njl.) ukusuka:
– Umsebenzisi womntu wesithathu (= Drittnutzer; tercero usuario; terceiro utente; tiers utilisateur; terzo utente njl.). – Umsebenzisi wokugqibela (= Endnutzer; usuario final; utente yokugqibela; utilisateur final; utente finale etc.).
I-Courier iphawula iibhloko zekhowudi okanye imiyalelo yenkqubo. Eksample 1: Via Bash, fowunela sudo ukwenza ufakelo ukukopa izinto ekwabelwana; emva koko fowunela ldconfig. Eksample 2: Sebenzisa umsebenzi olandelayo weNanoLibAccessor ukutshintsha inqanaba lokungena kwiNanoLib:
// ***** C++ eyahlukileyo *****
i-void setLoggingLevel(inqanaba leLogLevel);
Isicatshulwa esibhalwe ngqindilili sigxininisa amagama ngamanye abaluleke kakhulu. Kungenjalo, iimpawu zesikhuzo ezifakwe kwizibiyeli zigxininisa ukubaluleka kokubaluleka (!).
Example 1: Zikhusele, abanye kunye nezixhobo zakho. Landela amanqaku ethu okhuseleko ngokubanzi asebenza kuzo zonke iimveliso zeNanotec.
Example 2: Ngokhuseleko lwakho, kwakhona landela amanqaku okhuseleko athile asebenza kule mveliso ikhethekileyo. Isenzi sokucofa ngokudibeneyo sithetha ukucofa ngeqhosha lemouse yesibini ukuvula imenyu yentsingiselo njl.njl.
Example 1: Co-cofa kwi file, khetha Thiya kutsha, uze uthiye ngokutsha i file. Eksample 2: Ukukhangela iipropati, co-cofa kwi file kwaye ukhethe iiProphati.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

4

Ngaphambi kokuba uqale

Ngaphambi kokuba uqale ukusebenzisa iNanoLib, lungiselela iPC yakho kwaye uzazise malunga nokusetyenziswa okucetywayo kunye nemida yethala leencwadi.
2.1 Iimfuno zesistim kunye nehardware

Nanotic-NanoLib-C++-Programming-FIG- (1)
ISAZISO Ukungasebenzi kakuhle kwe-32-bit okanye inkqubo eyekiweyo! Sebenzisa, kwaye ugcine ngokuqhubekayo, inkqubo ye-64-bit. Jonga ukupheliswa kwe-OEM kunye ~ nemiyalelo.

I-NanoLib 1.3.0 isekela zonke iimveliso ze-Nanotec kunye ne-CANopen, i-Modbus RTU (kunye ne-USB kwi-virtual com port), i-Modbus TCP, i-EtherCat, kunye ne-Profinet. IiNanoLibs ezindala: Jonga utshintsho kwi-imprint. Ngomngcipheko wakho kuphela: ukusetyenziswa kwenkqubo yelifa. Qaphela: Landela imiyalelo esebenzayo ye-OEM ukuseta ukubambezeleka okuphantsi kangangoko ukuba ujongene neengxaki xa usebenzisa i-adaptha ye-USB esekwe kwi-FTDI.

Iimfuno (i-64-bit inkqubo enyanzelekileyo)
Windows 10 okanye 11 w/ Visual Studio 2019 inguqulelo 16.8 okanye kamva kunye Windows SDK 10.0.20348.0 (uguqulelo 2104) okanye kamva
C ++ redistributables 2017 okanye ngaphezulu CANopen: Ixxat VCI okanye PCAN umqhubi osisiseko (ukhetho) EtherCat module / Profinet DCP: Npcap okanye WinPcap Imodyuli RESTful: Npcap, WinPcap, okanye imvume admin ukuba
nxibelelana nge-Ethernet izilayidi zokuqala
Linux w/ Ubuntu 20.04 LTS to 24 (zonke x64 kunye nearm64)
Izihloko zeKernel kunye nepakethe ye-libpopt-dev Profinet DCP: CAP_NET_ADMIN kunye neCAP_NET_RAW abili-
izibophelelo CANopen: Ixxat ECI umqhubi okanye Peak PCAN-USB iadaptha EtherCat: CAP_NET_ADMIN, CAP_NET_RAW kunye
CAP_SYS_NICE izakhono RESTful: CAP_NET_ADMIN ukukwazi ukunxibelelana ne-Eth-
izilayishi ze-ernet (zikwacetyiswa: CAP_NET_RAW)

Ulwimi, iiadaptha zebhasi, iintambo
C++ GCC 7 okanye ngaphezulu (Linux)
I-EtherCAT: Intambo ye-Ethernet VCP / hub ye-USB: ngoku iyunifomu yokugcinwa kwe-USB yobuninzi be-USB: Intambo ye-USB REST: intambo ye-Ethernet CANopen: Ixxat USB-to-CAN V2; N / A-
notec ZK-USB-CAN-1, Peak PCANUSB iadaptha Akukho Ixxat inkxaso Ubuntu kwi arm64
I-Modbus RTU: I-Nanotec ZK-USB-RS485-1 okanye i-adapter efanayo; Intambo ye-USB kwi-virtual com port (VCP)
I-Modbus TCP: intambo ye-Ethernet ngokwedatha yemveliso

2.2 Usetyenziso olucetywayo kunye nabaphulaphuli
I-NanoLib yilayibrari yenkqubo kunye necandelo lesoftware yokusebenza, kunye nonxibelelwano kunye, nabalawuli beNanotec kuluhlu olubanzi lwezicelo zamashishini kunye nabadwelisi benkqubo abanobuchule kuphela.
Ngenxa ye-hardware yexesha langempela (i-PC) kunye nenkqubo yokusebenza, i-NanoLib ayisiyiyo yokusetyenziswa kwizicelo ezidinga i-synchronous multi-axis movement okanye ngokubanzi zithatha ixesha.
Akukho meko ungadibanisa iNanoLib njengecandelo lokhuseleko kwimveliso okanye kwinkqubo. Ekuhanjisweni kubasebenzisi bokugqibela, kufuneka ungeze izaziso ezilumkisayo ezihambelanayo kunye nemiyalelo yokusetyenziswa ngokukhuselekileyo kunye nokusebenza ngokukhuselekileyo kwimveliso nganye enecandelo le-Nanotec eyenziwe. Kufuneka udlulise zonke izaziso zesilumkiso ezikhutshwe nguNanotec ngqo kumsebenzisi wokugqibela.
2.3 Umda wokuhanjiswa kunye newaranti
INanoLib iza njenge *.zip ifolda ekukhupheni kwethu webindawo nokuba yi EMEA / APAC okanye AMERICA. Gcina ngokufanelekileyo kwaye uvule ukhuphelo lwakho lokukhuphela phambi kokuseta. Iphakheji yeNanoLib iqulethe:

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

5

2 Phambi kokuba uqale

Iiheader zeNdibaniselwano njengekhowudi yemvelaphi (API)

Imisebenzi engundoqo njengamathala eencwadi kwifomati yokubini: nano-

Amathala eencwadi aququzelela unxibelelwano: nanolibm_ lib.dll

[yourfieldbus].dll njl.

Example projekthi: Eksample.sln (Isitudiyo esibonakalayo

iprojekthi) kunye nomzample.cpp (engundoqo file)

Ngobubanzi bewaranti, nceda ujonge a) imigaqo nemiqathango ye-EMEA / APAC okanye i-AMERICA kunye b) nayo yonke imigaqo yelayisensi. Qaphela: I-Nanotec ayinabo uxanduva lomgangatho ophosakeleyo okanye ongafanelekanga, ukuphatha, ukufakwa, ukusebenza, ukusetyenziswa, kunye nokugcinwa kwezixhobo zomntu wesithathu! Ukhuseleko olufanelekileyo, soloko ulandela imiyalelo ye-OEM esebenzayo.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

6

Uyilo lweNanoLib

Ubume bemodyuli yesoftware yeNanoLib ikuvumela ukuba ucwangcise ngokukhululekileyo isilawuli semoto / imisebenzi yebhasi ejikeleze undoqo owakhelwe ngaphambili. INanoLib iqulethe ezi modyuli zilandelayo:

Ujongano lomsebenzisi (API)

Undoqo weNanoLib

Iiklasi zesiNxulumanisi kunye nabancedisi apho amathala eencwadi

Amathala eencwadi onxibelelwano Amathala eencwadi angqale kwi-Fieldbus

ukufikelela kuwe kwisilawuli sakho siphumeze ukusebenza kwe-API yenze ujongano phakathi kweNanoLib

OD (isichazi-magama sento)

nxibelelana namathala eencwadi ebhasi.

core kunye nebhasi hardware.

isiseko kwi-NanoLib core func-

izizwe.

3.1 Ujongano lomsebenzisi

Ujongano lomsebenzisi luquka ujongano olusentloko files ungasebenzisa ukufikelela kumlawuli weparameters. Iiklasi zojongano lomsebenzisi njengoko zichaziwe kwiiKlasi / ireferensi yemisebenzi ikuvumela ukuba:
Qhagamshela kuzo zombini izixhobo (i-adapter yebhasi yasendle) kunye nesixhobo somlawuli. Ukufikelela kwi-OD yesixhobo, ukufunda/ukubhala iiparamitha zolawulo.

3.2 Undoqo weNanoLib

Undoqo weNanoLib uza nelayibrari yokungenisa i-nanolib.lib. Isebenzisa ujongano lomsebenzisi kwaye inoxanduva loku:
Ukulayisha nokulawula amathala eencwadi onxibelelwano. Ukubonelela ngemisebenzi yojongano lomsebenzisi kwiNanoLibAccessor. Le ndawo yokungena yonxibelelwano de-
ihlawulisa iseti yemisebenzi onokuthi uyiphumeze kumbindi weNanoLib kunye namathala eencwadi onxibelelwano.

3.3 Amathala eencwadi onxibelelwano

Ukongeza kwi-nanotec.services.nanolib.dll (iluncedo kwiPlug yakho kunye neSitudiyo sokuQhuba), iNanoLib ibonelela ngolu nxibelelwano lulandelayo lwamathala eencwadi:

nanolibm_canopen.dll nanolibm_modbus.dll

nanolibm_ethercat.dll nanolibm_restful-api.dll

nanolibm_usbmmsc.dll nanolibm_profinet.dll

Onke amathala eencwadi abeka umaleko wokutsalwa kwehardware phakathi kondoqo kunye nomlawuli. Undoqo uyawalayisha ekuqaleni ukusuka kwifolda yeprojekthi echongiweyo kwaye uyisebenzise ukuseka unxibelelwano kunye nomlawuli ngeprotocol ehambelanayo.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

7

Ndiyaqalisa

Funda indlela yokuseta iNanoLib kwinkqubo yakho yokusebenza ngokufanelekileyo kunye nendlela yokudibanisa ihardware njengoko kufuneka.
4.1 Lungisa inkqubo yakho
Ngaphambi kokufaka abaqhubi beadaptha, lungiselela iPC yakho kunye nenkqubo yokusebenza kuqala. Ukulungiselela i-PC kunye ne-Windows OS yakho, faka i-MS Visual Studio ene-C++ izandiso. Ukufakela i-make kunye ne-gcc nge-Linux Bash, fowunela i-sudo apt install build-essentials. Yenza emva koko uvule iCAP_NET_ADMIN, CAP_NET_RAW, kunye neCAP_SYS_NICE ubuchule besicelo esisebenzisa iNanoLib: 1. Fowunela sudo setcap 'cap_net_admin,cap_net_raw,cap_sys_nice+eip'
igama>. 2. Kungoko kuphela, faka abaqhubi bakho beadaptha.
4.2 Fakela umqhubi weadaptha ye-Ixxat yeeWindows
Kuphela kusemva kokufaka umqhubi, unokusebenzisa iadaptha ye-Ixxat ye-USB-to-CAN V2. Funda incwadi yemveliso ye-USB drives ', ukufunda ukuba / indlela yokuvula i-comport yenyani (VCP). 1. Khuphela kwaye ufake i-Ixxat's VCI 4 umqhubi weWindows ukusuka www.ixxat.com. 2. Qhagamshela i-USB-to-CAN V2 iadaptha edityanisiweyo ye-Ixxat kwiPC nge-USB. 3. NgoMphathi weSixhobo: Khangela ukuba zombini umqhubi kunye neadaptha zifakwe ngokufanelekileyo / ziyaziwa.
4.3 Fakela umqhubi we-adapter ye-Peak ye-Windows
Kuphela emva kokufaka umqhubi ofanelekileyo, ungasebenzisa iadaptha ye-PCAN-USB ye-Peak's. Funda incwadi yemveliso ye-USB drives ', ukufunda ukuba / indlela yokuvula i-comport yenyani (VCP). 1. Khuphela kwaye ufake ukuseta umqhubi wesixhobo seWindows (= ipakethe yokuhlohla w/ abaqhubi besixhobo, izixhobo, kunye
APIs) ukusuka http://www.peak-system.com. 2. Qhagamshela i-adapter ye-PCAN-USB ye-Peak kwi-PC nge-USB. 3. NgoMphathi weSixhobo: Khangela ukuba zombini umqhubi kunye neadaptha zifakwe ngokufanelekileyo / ziyaziwa.
4.4 Fakela umqhubi weadaptha ye-Ixxat yeLinux
Kuphela kusemva kokufaka umqhubi, unokusebenzisa iadaptha ye-Ixxat ye-USB-to-CAN V2. Qaphela: Ezinye iiadaptha ezixhaswayo zifuna imvume yakho nge-sudo chmod +777/dev/ttyACM* (* inombolo yesixhobo). Funda incwadi yemveliso ye-USB drives ', ukufunda ukuba / indlela yokuvula i-comport yenyani (VCP). 1. Faka isoftware efunekayo kumqhubi weECI kunye nesicelo sedemo:
sudo apt-fumana uhlaziyo apt-fumana ukufaka i-libusb-1.0-0-dev libusb-0.1-4 libc6 libstdc++6 libgcc1 buildessential
2. Khuphela umqhubi we-ECI-for-Linux kwi-www.ixxat.com. Yivule nge:
unzip eci_driver_linux_amd64.zip
3. Faka umqhubi nge:
cd /EciLinux_amd/src/KernelModule sudo yenza i-install-usb
4. Khangela ufakelo lomqhubi oluyimpumelelo ngokuqulunqa kwaye uqalise isicelo sedemo:
cd /EciLinux_amd/src/EciDemos/ sudo yenza cd /EciLinux_amd/bin/release/ ./LinuxEciDemo

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

8

4 Ukuqalisa
4.5 Faka umqhubi we-adapter ye-Peak ye-Linux
Kuphela emva kokufaka umqhubi ofanelekileyo, ungasebenzisa iadaptha ye-PCAN-USB ye-Peak's. Qaphela: Ezinye iiadaptha ezixhaswayo zifuna imvume yakho nge-sudo chmod +777/dev/ttyACM* (* inombolo yesixhobo). Funda incwadi yemveliso ye-USB drives ', ukufunda ukuba / indlela yokuvula i-comport yenyani (VCP). 1. Khangela ukuba iLinux yakho ineentloko zekernel: ls /usr/src/linux-headers-`uname -r`. Ukuba akunjalo, faka
kubo: sudo apt-fumana ukufaka i-linux-headers-`uname -r` 2. Kuphela ngoku, faka ipakethe ye-libpopt-dev: sudo apt-fumana ukufaka i-libpopt-dev 3. Khuphela iphakheji yomqhubi efunekayo (peak-linux-driver-xxx.tar.gz) ukusuka www.peak-system.com. 4. Ukuyikhulula, sebenzisa: tar xzf peak-linux-driver-xxx.tar.gz 5. Kwifolda engapakishwanga: Qokelela kwaye ufake abaqhubi, ilayibrari yesiseko yePCAN, njl. njl.: yenza zonke
I-sudo yenza i-install 6. Ukujonga umsebenzi, plug iadaptha ye-PCAN-USB ngaphakathi.
a) Jonga imodyuli yekernel:
lsmod | grep pcan b) ... kunye nethala leencwadi ekwabelwana ngalo:
ls -l /usr/lib/libpcan*
Qaphela: Ukuba iingxaki ze-USB3 zenzeka, sebenzisa i-USB2 port.
4.6 Qhagamshela ihardware yakho
Ukuze ukwazi ukuqhuba iprojekthi yeNanoLib, qhagamshela isilawuli esihambelanayo seNanotec kwiPC usebenzisa iadaptha yakho. 1. Ngentambo efanelekileyo, qhagamshela i-adapter yakho kumlawuli. 2. Qhagamshela iadaptha kwiPC ngokwe-adapter data sheet. 3. Amandla kumlawuli usebenzisa umbane ofanelekileyo. 4. Ukuba kuyimfuneko, tshintsha izicwangciso zonxibelelwano zomlawuli we-Nanotec njengoko uyalelwe kwincwadana yayo yemveliso.
4.7 Layisha iNanoLib
Kwisiqalo sokuqala ngeziseko ezikhawulezayo nezilula, unga (kodwa akufuneki) usebenzise i-ex yethuample projekthi. 1. Kuxhomekeke kwingingqi yakho: Khuphela iNanoLib yethu webindawo nokuba yi EMEA / APAC okanye AMERICA. 2. Vula unzip wephakheji files / iifolda kwaye ukhethe ukhetho olunye: Kwiziseko ezikhawulezayo nezilula: Bona Ukuqala i-example projekthi. Ukulungiselela ukuqhubela phambili kwiWindows: Jonga Ukwenza eyakho iprojekthi yeWindows. Ukwenziwa ngokwezifiso okuphezulu kwiLinux: Jonga Ukwenza eyakho iprojekthi yeLinux.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

9

Ukuqala i-example projekthi

NgeNanoLib elayishwe ngokufanelekileyo, i-example projekthi ikubonisa ngokusetyenziswa kweNanoLib kunye nomlawuli weNanotec. Qaphela: Kwinyathelo ngalinye, izimvo kwi-ex enikiweyoample khowudi ichaza imisebenzi esetyenziswayo. Example projekthi iqulathe: i `*_functions_example.*' files, equlathe uphumezo lweNanoLib yojongano lwemisebenzi `*_callback_example.*' files, equlathe uphumezo lweecallbacks ezahlukeneyo (scan, data kunye
ukuloga) i`imenyu_*.*' file, equlathe ingcinga yemenyu kunye nekhowudi i Example.* file, eyona nkqubo iphambili, ukudala imenyu kunye nokuqalisa zonke iiparamitha ezisetyenzisiweyo i-Sampler_example.* file, equlethe i-exampukuphunyezwa kwesampukusetyenziswa kancinci. Ungafumana ngaphezulu exampLes, kunye neminye imiyalelo eshukumayo yeendlela ezahlukeneyo zokusebenza, kwiSiseko soLwazi kwi-nanotec.com. Zonke ziyasebenza kwiWindows okanye kwiLinux.
KwiWindows eneVisual Studio 1. Vula iExample.sln file. 2. Vula i-example.cpp. 3. Qokelela kwaye uqhube i-exampikhowudi.
Kwi-Linux nge-Bash 1. Vula imvelaphi file, yiya kwisiqulathi seefayili esinomxholo ongafakwanga uziphu. Eyona file kuba example yi
example.cpp. 2. Kwi-bash, fowunela:
a. "sudo yenza ukufaka" ukukopa izinto ekwabelwana ngazo kwaye ufowunele ldconfig. b. "yenza yonke" ukwakha uvavanyo oluphunyeziweyo. 3. Ifolda yomgqomo iqulethe i ex ephunyeziweyoample file. Nge-bash: Yiya kulawulo lwemveliso kwaye uchwetheze ./example. Ukuba akukho mpazamo yenzekayo, izinto ekwabelwana ngazo ngoku zifakwe ngokufanelekileyo, kwaye ilayibrari yakho ilungele ukusetyenziswa. Ukuba impazamo ifundeka kakuhle ./example: impazamo ngelixa ulayisha iilayibrari ekwabelwana ngazo: libnanolib.so: ayikwazi ukuvula into ekwabelwana ngayo file: Hayi enjalo file okanye ulawulo, ufakelo lwezinto ekwabelwana ngazo akuphumelelanga. Kule meko, landela la manyathelo alandelayo. 4. Yenza ifolda entsha ngaphakathi /usr/local/lib (amalungelo olawulo afunekayo). Kwi-bash, chwetheza ngolu hlobo:
sudo mkdir /usr/local/lib/nanotec
5. Khuphela zonke izinto ekwabelwana ngazo kwi-zip fileincwadi eneenkcukacha ye lib:
faka ./lib/*.so /usr/local/lib/nanotec/
6. Jonga umxholo wefolda ekujoliswe kuyo:
ls -al /usr/local/lib/nanotec/
Kufuneka idwelise into ekwabelwana ngayo files ukusuka kwifolda ye lib. 7. Sebenzisa i-ldconfig kule folda:
sudo ldconfig /usr/local/lib/nanotec/
Example iphunyezwe njengesicelo se-CLI kwaye ibonelela ngojongano lwemenyu. Amangeno emenyu asekelwe kumxholo kwaye aya kwenziwa okanye angasebenzi, ngokuxhomekeke kwimeko yemeko. Bakunika ithuba lokuba ukhethe kwaye wenze imisebenzi eyahlukeneyo yethala leencwadi ngokulandela ukuqhutywa komsebenzi oqhelekileyo wokuphatha umlawuli: 1. Jonga i-PC yehardware eqhagamshelweyo (iadaptha) kwaye uzidwelise. 2. Misela uqhagamshelo kwiadaptha. 3. Skena ibhasi kwizixhobo zokulawula eziqhagamshelweyo. 4. Qhagamshela kwisixhobo.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

10

5 Ukuqala i-example projekthi
5. Vavanya umsebenzi wethala leencwadi omnye okanye ngaphezulu: Funda/ubhale ukusuka/ukuya kwisichazi-magama sento yomlawuli, hlaziya i-firmware, ulayishe kwaye uqhube inkqubo yeNanoJ, fumana i-motor esebenzayo kwaye uyilungise, yilungise kwaye usebenzise ukugawulwa kwemithi.ampler.
6. Vala uqhagamshelwano, kuqala kwisixhobo, emva koko kwi-adapter.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

11

Ukwenza eyakho iprojekthi yeWindows

Yenza, qulunqa kwaye usebenzise iprojekthi yakho yeWindows ukusebenzisa iNanoLib.
6.1 Ngenisa iNanoLib
Ngenisa i-header ye-NanoLib filekunye namathala eencwadi nge-MS Visual Studio.
1. Vula i-Visual Studio. 2. Ngokuya Yenza iprojekthi entsha > I-Console App C++ > Okulandelayo: Khetha uhlobo lweprojekthi. 3. Xela iprojekthi yakho (apha: NanolibTest) ukwenza ifolda yeprojekthi kwiSolution Explorer. 4. Khetha Gqiba. 5. Vula iifestile file mhloli kwaye ujonge kwifolda yeprojekthi eyenziweyo entsha. 6. Yenza iifolda ezimbini ezintsha, inc kunye ne-lib. 7. Vula ifolda yephakheji yeNanoLib. 8. Ukusuka apho: Khuphela isihloko files ukusuka kulawulo oluqukayo kulawulo lwakho lweprojekthi inc kunye nazo zonke .lib kunye .dll
files kulawulo lwakho lweprojekthi entsha lib. 9. Khangela ifolda yeprojekthi yakho malunga nesakhiwo esifanelekileyo, umzekeloample:

Nanotic-NanoLib-C++-Programming-FIG- (2)ect isiqulathi seefayili solwakhiwo olufanelekileyo:
. 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.vcbxTjest. NanolibTest.vcxproj.userNanolibTest.sln
6.2 Lungisa iprojekthi yakho
Sebenzisa iSolution Explorer kwi-MS Visual Studio ukuseta iiprojekthi zeNanoLib. Qaphela: Kumsebenzi ochanekileyo weNanoLib, khetha ukukhululwa (hayi ukulungisa iimpazamo!) uqwalaselo kwiVisual C++ izicwangciso zeprojekthi; emva koko wakhe kwaye uqhagamshele iprojekthi kunye namaxesha okuqhutywa kwe-VC ye-C ++ enokuphinda ihanjiswe kwakhona [2022].
1. KwiSisombululo soMhloli: Yiya kwifolda yeprojekthi yakho (apha: NanolibTest). 2. Co-co-cofa ifolda ukuvula imenyu yentsingiselo. 3. Khetha iiPropati. 4. Vula lonke ulungelelwaniso kunye nawo Onke amaqonga. 5. Khetha i-C/C++ kwaye uye ku-Ongezelelweyo Faka ii-Directory. 6. Faka: $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) 7. Khetha i-Linki uze uye kwiiLayibrari zamaThala eeNcwadi ezongezelelweyo. 8. Faka: $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) 9. Yandisa ikhonkco kwaye ukhethe i-Input. 10.Yiya ku-Abadependencies oNgezelelweyo ufake: nanolib.lib;%(AdditionalDependencies) 11.Qinisekisa ngokusebenzisa u-OK.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

12

6 Ukudala eyakho iprojekthi yeWindows
12.Yiya kuLungiselelo > C++ > Ulwimi > uMgangatho woLwimi > ISO C++17 Standard kwaye usete umgangatho wolwimi ku-C++17 (/std:c++17).
6.3 Yakha iprojekthi yakho
Yakha iprojekthi yakho yeNanoLib kwi-MS Visual Studio. 1. Vula engundoqo *.cpp file (apha: nanolib_example.cpp) kwaye uhlele ikhowudi, ukuba kuyimfuneko. 2. Khetha Yakha > Umphathi wolungelelwaniso. 3. Guqula iiplatifti zesisombululo esisebenzayo zibe yi-x64. 4. Qinisekisa nge Vala. 5. Khetha Yakha > Yakha isisombululo. 6. Akukho mpazamo? Khangela ukuba iziphumo zakho zokuqokelela ngokufanelekileyo iingxelo:
1>—— Ucoceko luqalile: Iprojekthi: NanolibTest, Uqwalaselo: Debug x64 —–========== Coca: isi-1 siphumelele, 0 asiphumelelanga, 0 weqiwe ===========

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

13

7 Ukwenza eyakho iprojekthi yeLinux
7 Ukwenza eyakho iprojekthi yeLinux
Yenza, qulunqa kwaye usebenzise iprojekthi yakho yeLinux ukuze usebenzise iNanoLib. 1. Kwikhithi yofakelo yeNanoLib engafakwanga: Vula /nanotec_nanolib. 2. Fumana zonke izinto ekwabelwana ngazo kwi-tar.gz file. 3. Khetha ukhetho lube lunye: Faka i-lib nganye nokuba nge Yenzafile okanye ngesandla.
7.1 Fakela izinto ekwabelwana ngazo nge-Makefile
Sebenzisa iMakefile nge Linux Bash ukuhlohla ngokuzenzekela konke okungagqibekanga *.so files. 1. NgeBash: Yiya kwifolda equlethe i-makefile. 2. Khuphela izinto ekwabelwana ngazo usebenzisa:
sudo yenza ufake 3. Qinisekisa nge:
ldconfig
7.2 Fakela izinto ekwabelwana ngazo ngesandla
Sebenzisa iBash ukufaka zonke *.so files yeNanoLib ngesandla. 1. NgeBash: Yenza ifolda entsha ngaphakathi /usr/local/lib. 2. Amalungelo omlawuli ayadingeka! Uhlobo:
sudo mkdir /usr/local/lib/nanotec 3. Tshintshela kwisiqulathi seefayili sokufakela esingafakwanga. 4. Khuphela zonke izinto ekwabelwana ngazo kwi-lib folda ngokusebenzisa:
faka ./nanotec_nanolib/lib/*.so /usr/local/lib/nanotec/ 5. Jonga umxholo wefolda ekujoliswe kuyo ngokusebenzisa:
ls -al /usr/local/lib/nanotec/ 6. Khangela ukuba zonke izinto ekwabelwana ngazo ukusuka kwifolda ye-lib zidweliswe. 7. Qhuba i-ldconfig kwesi lawulo ngokusebenzisa:
sudo ldconfig /usr/local/lib/nanotec/
7.3 Yenza iprojekthi yakho
Ngezinto zakho ezabelwana ngazo ezifakiweyo: Yenza iprojekthi entsha yeLinux NanoLib yakho. 1. NgeBash: Yenza ifolda yeprojekthi entsha (apha: NanoLibTest) usebenzisa:
mkdir NanoLibTest cd NanoLibTest
2. Khuphela isihloko files ukuquka incwadi eneenkcukacha (apha: inc) nge: mkdir inc cp / FILE IS>/nanotec_nanolib/inc/*.hpp inc
3. Yenza engundoqo file (NanoLibTest.cpp) nge: #include "accessor_factory.hpp" #include

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

14

7 Ukwenza eyakho iprojekthi yeLinux
int main () { nlc :: NanoLibAccessor * accessor = getNanoLibAccessor ();
nlc::ResultBusHwIds result = accessor->listAvailableBusHardware();
ukuba(isiphumo.hasError()) {std::cout << result.getError() << std::endl; }
enye{ std:: cout << “Impumelelo” << std::endl; }
cima isincedisi; buyisela i-0; }
4. Jonga ifolda yeprojekthi yakho malunga nesakhiwo esifanelekileyo:

Nanotic-NanoLib-C++-Programming-FIG- (3)
. NanoLibTest
inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result.hpp NanoLibTest.cpp
7.4 Qokelela kwaye uvavanye iprojekthi yakho
Yenza iLinux NanoLib yakho ilungele ukusetyenziswa ngeBash.
1. NgeBash: Qokelela eyona nto iphambili file nge:
g++ -Wall -Wextra -pedantic -I./inc -c NanoLibTest.cpp -o NanoLibTest
2. Dibanisa into ephunyezwayo kunye ngokusebenzisa:
g++ -Wall -Wextra -pedantic -I./inc -o test NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
3. Qhuba inkqubo yovavanyo ngokusebenzisa:
./uvavanyo
4. Khangela ukuba iBash yakho inika ingxelo ngokufanelekileyo:
impumelelo

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

15

8 Iiklasi / ireferensi yemisebenzi

8 Iiklasi / ireferensi yemisebenzi

Fumana apha uluhlu lweeklasi zojongano lwabasebenzisi beNanoLib kunye nemisebenzi yabo yamalungu. Inkcazo eqhelekileyo yomsebenzi ibandakanya intshayelelo emfutshane, inkcazo yomsebenzi kunye neparamitha / uluhlu lokubuyisela:

ExampleFunction () Ikuxelela ngokufutshane into eyenziwa ngulo msebenzi.
i-virtual void nlc::NanoLibAccessor::ExampleFunction (Param_a const & param_a, Param_b const & param_B)

Iiparamitha param_a param_b
Ibuyisela iResultVoid

Izimvo ezongezelelweyo ukuba ziyafuneka. Izimvo ezongezelelweyo ukuba ziyafuneka.

8.1 NanoLibAccessor

Iklasi ye-interface esetyenziswa njengendawo yokungena kwiNanoLib. Umsebenzi oqhelekileyo ujongeka ngolu hlobo:
1. Qala ngokuskena ihardware ngeNanoLibAccessor.listAvailableBusHardware (). 2. Seta useto lonxibelelwano ngeBusHardwareOptions (). 3. Vula udibaniso lwehardware ngeNanoLibAccessor.openBusHardwareWithProtocol (). 4. Skena ibhasi kwizixhobo eziqhagamshelwe ngeNanoLibAccessor.scanDevices (). 5. Yongeza isixhobo ngeNanoLibAccessor.addDevice (). 6. Qhagamshela kwisixhobo ngeNanoLibAccessor.ConnectDevice (). 7. Emva kokugqiba ukusebenza, qhawula isixhobo ngeNanoLibAccessor.disconnectDevice (). 8. Susa isixhobo ngeNanoLibAccessor.removeDevice (). 9. Vala uqhagamshelwano lwehardware ngeNanoLibAccessor.closeBusHardware ().
I-NanoLibAccessor inale misebenzi ilandelayo yamalungu oluntu:

listAvailableBusHardware () Sebenzisa lo msebenzi ukudwelisa ezikhoyo kwi-hardbus hardware.
isiphumo esibonakalayoBusHwIds nlc::NanoLibAccessor::listAvailableBusHardware ()

Ibuyisela iResultBusHwIds

Ihambisa uluhlu lwe-ID yebhasi.

openBusHardwareWithProtocol () Sebenzisa lo msebenzi ukudibanisa izixhobo zebhasi.
virtual ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (BusHardwareId const & busHwId, BusHardwareOptions const & busHwOpt)

Iiparamitha busHwId busHwOpt
Ibuyisela iResultVoid

Ixela ibhasi emayivulwe. Ikhankanya iinketho zokuvula ibhasi. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

isBusHardwareOpen () Sebenzisa lo msebenzi ukujonga ukuba udibaniso lwehardware ye-fieldbus luvuliwe.
virtual ResultVoid nlc ::NanoLibAccessor::openBusHardwareWithProtocol (consst BusHardwareId & busHwId, const BusHardwareOptions & busHwOpt)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

16

8 Iiklasi / ireferensi yemisebenzi

Iiparamitha BusHardwareId Ibuyisela yinyani
bubuxoki

Ixela ibhasi nganye emayivulwe. I-Hardware ivuliwe. I-Hardware ivaliwe.

getProtocolSpecificAccessor () Sebenzisa lo msebenzi ukufumana into yofikelelo ethe ngqo yomthetho.
virtual ResultVoid nlc ::NanoLibAccessor::getProtocolSpecificAccessor (BusHardwareId const & busHwId)

Iiparamitha busHwId Ibuyisela iResultVoid

Ixela i-fieldbus yokufumana isinikezeli. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

getProfinetDCP () Sebenzisa lo msebenzi ukubuyisela ireferensi kujongano lweProfinet DCP.
yenyani ProfinetDCP & getProfinetDCP ()

Ibuyisela iProfinetDCP

getSamplerInterface () Sebenzisa lo msebenzi ukufumana ireferensi kwi sampler interface.
ebonakalayo SamplerInterface & getSamplerInterface ()

Ubuyisela u-SamplerInterface

Ibhekisa kwi-sampler interface iklasi.

setBusState () Sebenzisa lo msebenzi ukuseta ibhasi-iprothokholi-imeko ethile.
virtual ResultVoid nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & state)

Iiparamitha busHwId imo
Ibuyisela iResultVoid

Ixela ibhasi emayivulwe. Inika imeko yebhasi ethile njengexabiso lomtya. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

scanDevices () Sebenzisa lo msebenzi ukujonga izixhobo kumsebenzi womnatha.
virtual ResultDeviceIds nlc::NanoLibAccessor::scanDevices (const BusHardwareId & busHwId, NlcScanBusCallback* callback)

Iiparamitha busHwId callback
Ibuyisela iResultDeviceIds IOError

Ikhankanya ibhasi yokuskena. NlcScanBusCallback umkhondo wenkqubela phambili. Ihambisa uluhlu lweID yesixhobo. Yazisa ukuba isixhobo asifunyanwanga.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

17

8 Iiklasi / ireferensi yemisebenzi

yongezaIsixhobo ()
Sebenzisa lo msebenzi ukongeza isixhobo sebhasi esichazwe ngeID yesixhobo kuluhlu lwesixhobo sangaphakathi seNanoLib, kunye nokubuyisela isixhoboHandle kuso.
virtual ResultDeviceHandle nlc::NanoLibAccessor::addDevice (DeviceId const & deviceId)

Iiparamitha deviceId ibuyisela ResultDeviceHandle

Ixela isixhobo esizakongeza kuluhlu. Ihambisa isixhobo sokuphatha.

qhagamshelaIsixhobo () Sebenzisa lo msebenzi ukuqhagamshela isixhobo ngesixhoboHandle.
virtual ResultVoid nlc ::NanoLibAccessor::connectDevice (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultVoid
IOError

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib aqhagamsheleka kuyo. Iqinisekisa ukuba umsebenzi ongenanto usebenzile. Yazisa ukuba isixhobo asifunyanwanga.

getDeviceName () Sebenzisa lo msebenzi ukufumana igama lesixhobo ngesixhoboHandle.
virtual Resultring nlc ::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultString

Ixela ukuba yeyiphi isixhobo sebhasi iNanoLib ifumana igama layo. Ihambisa amagama esixhobo njengentambo.

getDeviceProductCode () Sebenzisa lo msebenzi ukufumana ikhowudi yemveliso yesixhobo nge-DeviceHandle.
virtual ResultInt nlc ::NanoLibAccessor::getDeviceProductCode (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultInt

Ixela ukuba yeyiphi isixhobo sebhasi iNanoLib ifumana ikhowudi yemveliso. Ihambisa iikhowudi zemveliso njengenani elipheleleyo.

getDeviceVendorId () Sebenzisa lo msebenzi ukufumana i-ID yomthengisi ngesixhoboHandle.
virtual ResultInt nlc ::NanoLibAccessor::getDeviceVendorId (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultInt
UbuncwaneAbukho

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib efumana isazisi somthengisi. Ihambisa ii-ID zomthengisi njengenani elipheleleyo. Yazisa ukuba akukho datha ifunyenweyo.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

18

8 Iiklasi / ireferensi yemisebenzi

getDeviceId () Sebenzisa lo msebenzi ukufumana i-ID yesixhobo esithile kuluhlu lwangaphakathi lweNanoLib.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceId (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultDeviceId

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib efumana isazisi sesixhobo. Ihambisa i-ID yesixhobo.

getDeviceIds () Sebenzisa lo msebenzi ukufumana i-ID yezixhobo zonke kuluhlu lwangaphakathi lweNanoLib.
virtual ResultDeviceIds nlc::NanoLibAccessor::getDeviceIds ()

Ibuyisela iResultDeviceIds

Ihambisa uluhlu lwe-ID yesixhobo.

getDeviceUid () Sebenzisa lo msebenzi ukufumana isazisi esisodwa sesixhobo (96 bit / 12 bytes) ngesixhoboHandle.
virtual ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultArrayByte
UbuncwaneAbukho

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib efumana isazisi esikhethekileyo. Ihambisa ii-ID ezizodwa njenge-byte uluhlu. Yazisa ukuba akukho datha ifunyenweyo.

getDeviceSerialNumber () Sebenzisa lo msebenzi ukufumana inombolo yothotho yesixhobo ngesixhoboHandle.
virtual ResultringNanolibAccessor::getDeviceSerialNumber (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultString
UbuncwaneAbukho

Ixela ukuba yeyiphi isixhobo sebhasi iNanoLib ifumana inombolo yesiriyali. Ihambisa amanani ethotho njengentambo. Yazisa ukuba akukho datha ifunyenweyo.

getDeviceHardwareGroup () Sebenzisa lo msebenzi ukufumana iqela leentsimbi zesixhobo sebhasi ngesixhoboHandle.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareGroup (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultInt

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib efumana iqela lehardware.
Ihambisa amaqela ehardware njengenani elipheleleyo.

getDeviceHardwareVersion () Sebenzisa lo msebenzi ukufumana uguqulelo lwehardware yesixhobo sebhasi ngesixhoboHandle.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareVersion (DeviceHandle const deviceHandle)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

19

8 Iiklasi / ireferensi yemisebenzi

Iiparamitha isixhoboHandle

Ukubuyisela

ResultString ResourceAyikho

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib efumana inguqulelo yehardware. Ihambisa amagama esixhobo njengentambo. Yazisa ukuba akukho datha ifunyenweyo.

getDeviceFirmwareBuildId () Sebenzisa lo msebenzi ukufumana i-ID ye-firmware yesixhobo sebhasi nge-DeviceHandle.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceFirmwareBuildId (IsixhoboHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultString

Icacisa ukuba yeyiphi isixhobo sebhasi uNanoLib efumana isazisi sokwakha i-firmware.
Ihambisa amagama esixhobo njengentambo.

getDeviceBooloaderVersion () Sebenzisa lo msebenzi ukufumana uguqulelo lokuqalisa isixhobo sebhasi ngesixhoboHandle.
virtual ResultInt nlc ::NanoLibAccessor::getDeviceBooloaderVersion (DeviceHandle const deviceHandle)

Iiparamitha isixhoboHandle

Ukubuyisela

ResultInt ResourceAyikho

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib efumana inguqulelo yesilayidi sokuqala. Ihambisa iinguqulelo ze-bootloader njengenani elipheleleyo. Yazisa ukuba akukho datha ifunyenweyo.

getDeviceBooloaderBuildId () Sebenzisa lo msebenzi ukufumana isazisi sokwakha isixhobo sokuqalisa sebhasi ngesixhoboHandle.
virtual ResultDeviceId nlc ::NanoLibAccessor:: (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultString

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib efumana isazisi sokwakha i-bootloader.
Ihambisa amagama esixhobo njengentambo.

rebootDevice () Sebenzisa lo msebenzi ukuphinda uqalise isixhobo ngesixhoboHandle.
virtual ResultVoid nlc ::NanoLibAccessor::rebootDevice (const DeviceHandle deviceHandle)

Iiparamitha deviceHandle Returns ResultVoid

Ikhankanya ibhasi yokuqalisa ngokutsha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

getDeviceState () Sebenzisa lo msebenzi ukufumana iprotocol-imeko ethile.
i-virtual ResultString nlc ::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)

Iiparamitha isixhoboHandle

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib ifumana urhulumente.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

20

8 Iiklasi / ireferensi yemisebenzi

Ibuyisela iResultString

Ihambisa amagama esixhobo njengentambo.

setDeviceState () Sebenzisa lo msebenzi ukuseta iprotocol-imeko ethile.
virtual ResultVoid nlc ::NanoLibAccessor::setDeviceState (const DeviceHandle deviceHandle, const std::string & state)

Iiparamitha isixhoboPhatha imo
Ibuyisela iResultVoid

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib iseta urhulumente. Inika imeko yebhasi ethile njengexabiso lomtya. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

getConnectionState ()
Sebenzisa lo msebenzi ukufumana imo yokugqibela yoqhagamshelo eyaziwayo ngesixhoboHandle (= Iqhagamshelwe, iQhagamshelwe, iQhagamshelweIBooloader)
virtual ResultionState nlc ::NanoLibAccessor::getConnectionState (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultConnectionState

Ixela ukuba sisiphi isixhobo sebhasi iNanoLib ifumana imeko yoqhagamshelo.
Ihambisa imeko yoqhagamshelo (= Iqhagamshelwe, iQhagamshelwe, iQhagamshelwe iBooloader).

khangelaUqhagamshelwanoIlizwe ()
Kuphela ukuba imo yokugqibela eyaziwayo ibingaqhawulwanga: Sebenzisa lo msebenzi ukujonga kunye nokuhlaziya imeko yoqhagamshelo lwesixhobo esithile nge-DeviceHandle kunye nokuvavanya imisebenzi emininzi ethile.
i-virtual ResultConnectionState nlc ::NanoLibAccessor::jonga iConnectionState (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultConnectionState

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib ejonga imeko yoqhagamshelo.
Ihambisa imeko yoqhagamshelo (= ayiqhawulwanga).

assignObjectDictionary () Sebenzisa lo msebenzi wesandla ukunika isichazi-magama sento (OD) kwisixhoboHamba ngokwakho.
virtual ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)

Iiparamitha isixhoboHamba intoDictionary
Ibuyisela iResultObjectDictionary

Ixela ukuba yesiphi isixhobo sebhasi uNanoLib yabela iOD kuyo. Ubonisa iimpawu zesichazi-magama sento.

autoAssignObjectDictionary ()
Sebenzisa le automatism ukuvumela iNanoLib yabele isichazi-magama sento (OD) kwisixhoboHandle. Ekufumaneni nasekulayisheni iOD efanelekileyo, iNanoLib iyabela ngokuzenzekelayo isixhobo. Qaphela: Ukuba iOD ehambelanayo sele ilayishiwe kwithala leencwadi, iNanoLib iya kuyisebenzisa ngokuzenzekelayo ngaphandle kokuskena ulawulo olungenisiweyo.
isiphumo esibonakalayoIntoObjectDictionary nlc::NanoLibAccessor::autoAssignObjectDictionary (DeviceHandle const deviceHandle, const std::string & dictionariesLocationPath)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

21

8 Iiklasi / ireferensi yemisebenzi

Iiparamitha isixhoboHandle

Ukubuyisela

izichazi-magamaLocationPath ResultObjectDictionary

Ixela ukuba sesiphi isixhobo sebhasi iNanoLib eza kuskena ngokuzenzekelayo ii-OD ezifanelekileyo. Ixela indlela eya kulawulo lweOD. Ubonisa iimpawu zesichazi-magama sento.

getAssignedObjectDictionary ()
Sebenzisa lo msebenzi ukufumana isichazi-magama sento esinikezelwe kwisixhobo ngesixhoboHandle.
virtual ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (DeviceHandle const device
Phatha)

Iiparamitha deviceHandle Returns ResultObjectDictionary

Ixela ukuba yeyiphi isixhobo sebhasi iNanoLib ifumana iOD eyabelwe yona. Ubonisa iimpawu zesichazi-magama sento.

getObjectDictionaryLibrary () Lo msebenzi ubuyisela ireferensi ye-OdLibrary.
virtual OdLibrary& nlc::NanoLibAccessor::getObjectDictionaryLibrary ()

Ibuyisela i-OdLibrary&

Ivula yonke ilayibrari yeOD kunye nezichazi-magama zayo.

setLoggingLevel () Sebenzisa lo msebenzi ukuseta iinkcukacha zelog efunekayo (kunye nelog file ubukhulu). Inqanaba elimiselweyo lulwazi.
i-nlc ye-virtual void::NanoLibAccessor::setLoggingLevel (inqanaba leLogLevel)

Inqanaba leeparamitha

Ezi nkcukacha zilandelayo zinokwenzeka:

0 = Trace 1 = Debug 2 = Ulwazi 3 = Lumkisa 4 = Impazamo 5 = Ibalulekile 6 = Cimile

Inqanaba elisezantsi (elona logi inkulu file); igcina nayiphi na inkcukacha enokwenzeka, kunye nesoftware yokuqala / yokuyeka. Ulwazi lolungiso lweelogi (= iziphumo zethutyana, umxholo othunyelwe okanye ofunyenweyo, njl.njl.) Inqanaba elihlala lihleli; logs imiyalezo yolwazi. Iingxaki zelogi ezenzekileyo kodwa aziyi kumisa i-algorithm yangoku. Ufaka nje ingxaki enkulu eye yamisa i-algorithm. Elona nqanaba liphezulu (elona logi lincinci file); ucima ukugawulwa kwemithi; akukho log ngakumbi. Akukho kugawulwa kwemithi kwaphela.

setLoggingCallback ()
Sebenzisa lo msebenzi ukuseta isalathisi sokuloga kunye nemodyuli yelog (= ilayibrari) yaloo callback (hayi yelogger ngokwayo).
virtual void nlc ::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* callback, const nlc::LogModule & logModule)

Iiparamitha *callback logModyuli

Iseta isalathisi sokufowuna. Tunes icallback (hayi logger!) kwithala lakho.

0 = NanolibCore 1 = NanolibCANopen 2 = NanolibModbus 3 = NanolibEtherCAT

Yenza ukufowuna kusebenze ngundoqo weNanoLib kuphela. Yenza i-CANopen-kuphela callback. Yenza i-callback ye-Modbus kuphela. Yenza i-callback ye-EtherCAT kuphela.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

22

8 Iiklasi / ireferensi yemisebenzi

4 = NanolibRest 5 = NanolibUSB

Yenza i-REST-kuphela callback. Ivula i-USB-kuphela callback.

unsetLoggingCallback () Sebenzisa lo msebenzi ukurhoxisa isalathisi sokuloga kwakhona.
ukungabikho kwenyani nlc ::NanoLibAccessor::unsetLoggingCallback ()

readNumber () Sebenzisa lo msebenzi ukufunda ixabiso lamanani kwisichazi-magama sento.
virtual ResultInt nlc ::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)

Iiparamitha isixhoboPhatha i-odIndex
Ibuyisela iResultInt

Ixela ukuba iNanoLib ifunda kwesiphi isixhobo sebhasi. Ikhankanya i (sub-) isalathiso sokufunda kuso. Ihambisa ixabiso elingatolikwanga lamanani (linokusayinwa, lingasayinwa, lilungise16.16 bit values).

readNumberArray () Sebenzisa lo msebenzi ukufunda uluhlu lwamanani ukusuka kwisichazi-magama sento.
virtual ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t index)

Iiparamitha isixhoboHandle index
Ibuyisela iResultArrayInt

Ixela ukuba iNanoLib ifunda kwesiphi isixhobo sebhasi. Uluhlu lwesalathiso sento. Ihambisa uluhlu olupheleleyo.

readBytes () Sebenzisa lo msebenzi ukufunda iibytes ezingafunekiyo (idatha yento yendawo yolawulo) ukusuka kwisichazi-magama sento.
virtual ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)

Iiparamitha isixhoboPhatha i-odIndex
Ibuyisela iResultArrayByte

Ixela ukuba iNanoLib ifunda kwesiphi isixhobo sebhasi. Ikhankanya i (sub-) isalathiso sokufunda kuso. Ihambisa uluhlu lwe-byte.

fundaUluhlu () Sebenzisa lo msebenzi ukufunda imitya kuluhlu lwento.
virtual ResultringNlc ::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)

Iiparamitha isixhoboPhatha i-odIndex
Ibuyisela iResultString

Ixela ukuba iNanoLib ifunda kwesiphi isixhobo sebhasi. Ikhankanya i (sub-) isalathiso sokufunda kuso. Ihambisa amagama esixhobo njengentambo.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

23

8 Iiklasi / ireferensi yemisebenzi

bhalaInombolo () Sebenzisa lo msebenzi ukubhala amaxabiso amanani kulawulo lwento.
virtual ResultVoid nlc ::NanoLibAccessor::writeNumber (const DeviceHandle deviceHandle, int64_t ixabiso, const OdIndex odIndex, unsigned int bitLength)

Iiparamitha isixhoboPhatha ixabiso le-odIndex bitLength
Ibuyisela iResultVoid

Ikhankanya isixhobo sebhasi uNanoLib abhalela kuso. Ixabiso elingachazwanga (linokusayinwa, lingasayinwa, lilungise 16.16). Ikhankanya i (sub-) isalathiso sokufunda kuso. Ubude ngebit. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

writeBytes () Sebenzisa lo msebenzi ukubhala iibytes ezingafunekiyo (idatha yento yendawo yolawulo) kulawulo lwento.
virtual ResultVoid nlc ::NanoLibAccessor::writeBytes (const DeviceHandle deviceHandle, const std::vector & data, const OdIndex odIndex)

Iiparamitha isixhoboPhatha idatha ye-odIndex
Ibuyisela iResultVoid

Ikhankanya isixhobo sebhasi uNanoLib abhalela kuso. I-Byte vector / uluhlu. Ikhankanya i (sub-) isalathiso sokufunda kuso. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

layishaFirmware ()
Sebenzisa lo msebenzi ukuhlaziya i-firmware yomlawuli wakho.
virtual ResultVoid nlc ::NanoLibAccessor::layishaFirmware (const DeviceHandle deviceHandle, const std::vector & fwData, NlcDataTransferCallback* callback)

Iiparamitha isixhoboHandle fwData NlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba sisiphi isixhobo sebhasi esihlaziywa yiNanoLib. Uluhlu oluqulethe idatha ye-firmware. Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

uploadFirmwareUkusukaFile ()
Sebenzisa lo msebenzi ukuhlaziya i-firmware yomlawuli wakho ngokuyilayisha file.
virtual ResultVoid nlc ::NanoLibAccessor::layishaIFirmwareUkusukaFile (const DeviceHandle deviceHandle, const std::string & absoluteFileIndlela, NlcDataTransferCallback* callback)

Iiparamitha isixhoboPhatha ngokupheleleyoFileIndlela yeNlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba sisiphi isixhobo sebhasi esihlaziywa yiNanoLib. Indlela eya file iqulethe idatha ye-firmware (std::string). Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

24

8 Iiklasi / ireferensi yemisebenzi

layisha iBootloader ()
Sebenzisa lo msebenzi ukuhlaziya isilawuli sokuqalisa isilawuli sakho.
virtual ResultVoid nlc ::NanoLibAccessor::uploadBooloader (const DeviceHandle deviceHandle, const std::vector & btData, NlcDataTransferCallback* callback)

Iiparamitha isixhoboHandle btData NlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba sisiphi isixhobo sebhasi esihlaziywa yiNanoLib. Uluhlu oluqulethe idatha yesilayidi sokuqala. Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

uploadBootloaderUkusukaFile ()
Sebenzisa lo msebenzi ukuhlaziya isilawuli sakho sokuqalisa ngokusifaka file.
virtual ResultVoid nlc ::NanoLibAccessor::uploadBooloaderUkusukaFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileIndlela, NlcDataTransferCallback* callback)

Iiparamitha isixhoboHamba i-bootloaderAbsoluteFileIndlela yeNlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba sisiphi isixhobo sebhasi esihlaziywa yiNanoLib. Indlela eya file iqulathe idatha yokuqalisa (std::string). Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

layishaI-BootloaderFirmware ()
Sebenzisa lo msebenzi ukuhlaziya isilawuli sakho sokuqalisa kunye ne-firmware.
virtual ResultVoid nlc ::NanoLibAccessor::uploadBooloaderFirmware (const DeviceHandle deviceHandle, const std::vector & btData, const std::vector & fwData, NlcDataTransferCallback* callback)

Iiparamitha isixhoboHandle btData fwData NlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba sisiphi isixhobo sebhasi esihlaziywa yiNanoLib. Uluhlu oluqulethe idatha yesilayidi sokuqala. Uluhlu oluqulethe idatha ye-firmware. Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

uploadBooloaderFirmwareFromFile ()
Sebenzisa lo msebenzi ukuhlaziya isilawuli se-bootloader kunye ne-firmware ngokufaka i files.
virtual ResultVoid nlc ::NanoLibAccessor::uploadBooloaderFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileIndlela, const std :: umtya & absoluteFileIndlela, NlcDataTransferCallback* callback)

Iiparamitha isixhoboHamba i-bootloaderAbsoluteFileIndlela ngokupheleleyoFileIndlela yeNlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba sisiphi isixhobo sebhasi esihlaziywa yiNanoLib. Indlela eya file iqulathe idatha yokuqalisa (std::string). Indlela eya file iqulethe idatha ye-firmware (uint8_t). Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

25

8 Iiklasi / ireferensi yemisebenzi

layishaNanoJ ()
Sebenzisa lo msebenzi woluntu ukulayisha inkqubo yeNanoJ kumlawuli wakho.
virtual ResultVoid nlc ::NanoLibAccessor::layishaNanoJ (IsixhoboHandle const deviceHandle, std::vector const & vmmData, NlcDataTransferCallback* callback)

Iiparamitha isixhoboHamba vmmData NlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba iNanoLib ilayisha kwesiphi isixhobo sebhasi. Uluhlu oluqulethe idatha yeNanoJ. Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

layishaNanoJFromFile ()
Sebenzisa lo msebenzi woluntu ukunyusa inkqubo yeNanoJ kumlawuli wakho ngokufaka ifayile file.
virtual ResultVoid nlc ::NanoLibAccessor::layishaNanoJFromFile (const DeviceHandle deviceHandle, const std::string & absoluteFileIndlela, NlcDataTransferCallback* callback)

Iiparamitha isixhoboPhatha ngokupheleleyoFileIndlela yeNlcDataTransferCallback
Ibuyisela iResultVoid

Ixela ukuba iNanoLib ilayisha kwesiphi isixhobo sebhasi. Indlela eya file iqulathe idatha yeNanoJ (std::string). Umkhondo wenkqubela yedatha. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

qhawulaIsixhobo () Sebenzisa lo msebenzi ukukhulula isixhobo sakho ngesixhoboHandle.
virtual ResultVoid nlc ::NanoLibAccessor::disconnectDevice (DeviceHandle const deviceHandle)

Iiparamitha deviceHandle Returns ResultVoid

Ixela ukuba yeyiphi isixhobo sebhasi uNanoLib aqhawula kuyo. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

susaIsixhobo () Sebenzisa lo msebenzi ukususa isixhobo sakho kuluhlu lwangaphakathi lwesixhobo seNanoLib.
virtual ResultVoid nlc ::NanoLibAccessor::removeDevice (const DeviceHandle deviceHandle)

Iiparamitha deviceHandle Returns ResultVoid

Ixela ukuba sisiphi isixhobo sebhasi esisikiweyo uNanoLib. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

closeBusHardware () Sebenzisa lo msebenzi ukukhulula uqhagamshelwano kwihardware yakho yebhasi.
virtual ResultVoid nlc::NanoLibAccessor::closeBusHardware (BusHardwareId const & busHwId)

Iiparamitha busHwId Ibuyisela iResultVoid

Ikhankanya ibhasi ekuza kuqhawulwa kuyo. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

26

8 Iiklasi / ireferensi yemisebenzi

8.2 BusHardwareId
Sebenzisa le klasi ukuchonga izixhobo zebhasi enye ukuya-enye okanye ukwahlula iihardware ezahlukeneyo zebhasi enye kwenye. Olu didi (ngaphandle kwemisebenzi yokumisela ukuba ingaguquki ukusuka ekudalweni ukuya phambili) ikwaphethe ulwazi:
I-Hardware (= igama le-adaptha, iadaptha yothungelwano njl. njl.) Umgaqo wokusetyenziswa (= I-Modbus TCP, CANopen njl.njl.) Isicacisi sesixhobo sebhasi (= igama lezibuko lothotho, igama eliLuhlobo le-MAC
idilesi njl.)

I-BusHardwareId () [1/3] Umakhi owenza into entsha ye-ID ye-hardware yebhasi.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & name_)

Iiparamitha busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_

Uhlobo lwe-Hardware (= ZK-USB-CAN-1 njl.). Iprothokholi yonxibelelwano lwebhasi (= CANopen njl.). Umcacisi wehardware (= COM3 njl.). Inkcazo eyongezelelweyo yehardware (yithi, ulwazi lwendawo ye-USB). Igama lobuhlobo (= AdapterName (Port) njl.

BusHardwareId () [2/3] Umakhi owenza into entsha ye-ID ye-hardware yebhasi, kunye nokhetho lwe-speicifier yehardware eyongezelelweyo.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & extraHardwareSpecifier_, std::string const & name_)

Iiparamitha busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_

Uhlobo lwe-Hardware (= ZK-USB-CAN-1 njl.). Iprothokholi yonxibelelwano lwebhasi (= CANopen njl.). Umcacisi wehardware (= COM3 njl.). Inkcazo eyongezelelweyo yehardware (yithi, ulwazi lwendawo ye-USB). Igama lobuhlobo (= AdapterName (Port) njl.

BusHardwareId () [3/3] Umakhi okhuphela ibus ekhoyoHardwareId.
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)

nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)

Iiparamitha busHardwareId

Inika amagama kwi-ID yehardware yebhasi ekunokukopa kuyo.

ilingana () Ithelekisa i-ID yentsimbi yebhasi entsha nezikhoyo.
bool nlc ::BusHardwareId::equals (BusHardwareId const & nezinye) const

Iiparamitha ezinye Buyisa yinyaniso

Enye into yeklasi efanayo. Ukuba zombini ziyalingana kuwo onke amaxabiso.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

27

8 Iiklasi / ireferensi yemisebenzi

bubuxoki

Ukuba amaxabiso ayahluka.

getBusHardware () Ifunda umtya wehardware webhasi.
std::string nlc::BusHardwareId::getBusHardware () const

Ibuyisela umtya

getHardwareSpecifier () Ifunda umtya wokuxela ihardware yebhasi (= igama lomnatha njl.njl.).
std::string nlc::BusHardwareId::getHardwareSpecifier () const

Ibuyisela umtya

getExtraHardwareSpecifier () Ifunda umtya webhasi eyongezelelweyo yehardware (= idilesi yeMAC njl.njl.).
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () const

Ibuyisela umtya

getName () Ufunda igama lobuhlobo lehardware yebhasi.
std::string nlc::BusHardwareId::getName () const

Ibuyisela umtya

getProtocol () Ifunda umtya weprotocol yebhasi.
std::string nlc::BusHardwareId::getProtocol () const

Ibuyisela umtya

toString () Ibuyisela i-ID yehardware yebhasi njengomtya.
std::string nlc::BusHardwareId::toString () const

Ibuyisela umtya
8.3 Iinketho zeBusHardware
Fumana kule klasi, kwi-key-value list of strings, zonke iinketho ezifunekayo ukuvula i-hardware yebhasi.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

28

8 Iiklasi / ireferensi yemisebenzi

BusHardwareOptions () [1/2] Yakha into entsha yokhetho lwentsimbi yebhasi.
nlc::Ukhetho lweBusHardware::IiBusHardwareUkhetho () Sebenzisa umsebenzi wokudibanisaUkhetho () ukongeza izibini zexabiso elingundoqo.

I-BusHardwareOptions () [2/2] Yakha into entsha yeenketho zehardware yebhasi kunye nemephu yexabiso elingundoqo esele ikhona.
nlc::BusHardwareOptions::BusHardwareOptions (std::map Const & iinketho)

Iinketho zeeparamitha

Imephu enokhetho lwezixhobo zebhasi ezisebenzayo.

addOption () Yenza izitshixo ezongezelelweyo kunye namaxabiso.
void nlc::BusHardwareOption::addOption (std::string const & key, std::string const & value)

Ixabiso elingundoqo leeparamitha

Example: BAUD_RATE_OPTIONS_NAME, bona ibus_hw_options_ okungagqibekanga
Example: BAUD_RATE_1000K, bona ibhasi_hw_options_defaults

ilingana () Ithelekisa iBusHardwareOptions kwezikhoyo.
bool nlc::BusHardwareOptions::equals (BusHardwareOptions const & nezinye) const

Iiparamitha ezinye Buyisa yinyaniso
bubuxoki

Enye into yeklasi efanayo. Ukuba enye into inazo zonke iinketho ezifanayo. Ukuba enye into inezitshixo ezahlukeneyo okanye amaxabiso.

getOptions () Ifunda zonke ezongeziweyo ezingundoqo-ixabiso lezibini.
std::maphu nlc::BusHardwareOptions::getOptions () const

Ibuyisela imephu yomtya

toString () Ibuyisela onke amaqhosha / amaxabiso njengomtya.
std::string nlc::BusHardwareId::toString () const

Ibuyisela umtya
8.4 BusHwOptionsDefault
Olu luhlu lweenketho zoqwalaselo olungagqibekanga lunazo ezi mpawu zilandelayo zoluntu:

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

29

8 Iiklasi / ireferensi yemisebenzi

const CanBus const Uthotho const RESTfulBus const EtherCATBus

canBus = CanBus () uthotho = Uthotho () restfulBus = RESTfulBus() ethercatBus = EtherCATBus()

8.5 CanBaudRate

Isakhiwo esiqulathe i-CAN bus baudrates kwezi mpawu zoluntu zilandelayo:

const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string

BAUD_RATE_1000K = “1000k” BAUD_RATE_800K = “800k” BAUD_RATE_500K = “500k” BAUD_RATE_250K = “250k” BAUD_RATE_125K = “125k” BAUD_RATE_100 BAUD_100 BAUD_50 BAUD_50 TE_20K = “20k” BAUD_RATE_10K = “10k” BAUD_RATE_5K = “5k”

8.6 ICanBus

Uluhlu lweenketho zoqwalaselo oluhlala lunezi mpawu zilandelayo:

const std:: umtya const CanBaudRate const Ixxat

BAUD_RATE_OPTIONS_NAME = “i-adapter ye-baud rate” baudRate = CanBaudRate () ixxat = Ixxat ()

8.7 CanOpenNmtService

Kwinkonzo ye-NMT, esi sakhiwo siqulathe iCANopen NMT ixela njengamaxabiso omtya kwezi mpawu zolu phawu zilandelayo:

const std::string const std::string const std::string const std::string const std::string

QALA = “QALA” YIMA = “YIMA” PRE_OPERATIONAL = “PRE_OPERATIONAL” SETHA FUTHI = “SETHA KWAKHONA” RESET_COMMUNICATION = “RESET_COMMUNICATION”

8.8 CanOpenNmtState

Esi sakhiwo siqulathe i CANopen NMT ithi njengamaxabiso omtya kwezi mpawu zilandelayo zoyelelwano:

const std::string const std::string const std::string const std::string const std::string

YEMIWA = “YIMA” PRE_OPERATIONAL = “PRE_OPERATIONAL” OPERATIONAL = “OKUSEBENZA” UKUQALISA = “UKUQALISA” OKUNGAZIWAYO = “OKUNGAZIWAYO”

8.9 Isakhiwo se-EtherCATBus

Esi sakhiwo siqulathe iinketho zoqwalaselo lonxibelelwano lwe-EtherCAT kwezi mpawu zoluntu zilandelayo:

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

30

8 Iiklasi / ireferensi yemisebenzi

const std::umtya NETWORK_FIRMWARE_STATE_OP- Ilizwe lothungelwano liphathwa njengemo ye-firmware. Yamkelekile

TION_NAME = "Isimo seFirmware yeNethiwekhi"

amaxabiso (okwendalo = PRE_OPERATIONAL):

I-EtherCATSstate::PRE_OPERATIONAL EtherCATSstate::SAFE_OPERATIONAL EtherCATSstate::OPERATIONAL

const std::umtya DEFAULT_NETWORK_FIRMWARE_ STATE = “PRE_OPERATIONAL”

const std::umtya EXCLUSIVE_LOCK_TIMEOUT_OP- Ixesha liphelile kwimilliseconds ukufumana iqhaga elikhethekileyo

TION_NAME = “Ixesha lokuvala ekwabelwana ngalo ngesitshixo”

inethiwekhi (ehlala ikho = 500 ms).

const engabhalwanga int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = “500”

const std::umtya SHARED_LOCK_TIMEOUT_OPTION_ Ixesha liphelile kwimilliseconds ukufumana iqhaga ekwabelwana ngalo

NAME = “Ixesha lokuvala ekwabelwana ngalo ngesitshixo”

inethiwekhi (ehlala ikho = 250 ms).

const engabhalwanga int DEFAULT_SHARED_LOCK_TIMEOUT = “250”

const std::umtya READ_TIMEOUT_OPTION_NAME = Ixesha liphelile kwimilliseconds yokufunda umsebenzi (okuhlala kukho

“Ixesha lokuFunda”

= 700 ms).

const engabhalwanga int DEFAULT_READ_TIMEOUT = “700”

const std::umtya WRITE_TIMEOUT_OPTION_NAME = Ixesha liphelile kwimilliseconds yomsebenzi wokubhala (okuhlala kukho

“Bhala ixesha lokuvala”

= 200 ms).

const engabhalwanga ngaphakathi DEFAULT_WRITE_TIMEOUT = “200”

const std:: umtya READ_WRITE_ATTEMPTS_OPTION_ Ubuninzi bemizamo yokufunda okanye yokubhala (amaxabiso angeyo-zero

NAME = "Iinzame zokufunda/zokubhala"

kuphela; engagqibekanga = 5).

const engabhalwanga int DEFAULT_READ_WRITE_ATTEMPTS = “5”

const std:: umtya CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME = "Tshintsha amalinge emo yenethiwekhi"

Elona nani liphezulu lokuzama ukutshintsha ubume bothungelwano (amaxabiso angengo-zero kuphela; okungagqibekanga = 10).

const engabhalwanga ngaphakathi DEFAULT_CHANGE_NETWORK_ STATE_ATTEMPTS = “10”

const std:: umtya PDO_IO_ENABLED_OPTION_NAME Yenza okanye yenze ingasebenzi inkqubo yePDO yedijithali kwi- /

= "PDO IO inikwe amandla"

iziphumo (“Yinyani” okanye “bubuxoki” kuphela; okumiselweyo = “Yinyani”).

const std:: umtya DEFAULT_PDO_IO_ENABLED = “Yinyani”

8.10 Isakhiwo se-EtherCATSstate

Esi sakhiwo siqulathe ikhoboka le-EtherCAT / amazwe womnatha njengamaxabiso omtya kwezi mpawu zilandelayo zoluntu. Qaphela: Isimo sokuhlala sisemandleni yi- PRE_OPERATIONAL; I-NanoLib ayinakubonelela ngemeko ethembekileyo "YEKUSEBENZA" kwinkqubo engeyiyo eyenyani yokusebenza:

const std::string const std::string const std::string const std::string const std::string const std::string

AYIKHO = “AYIKHO” INIT = “INIT” PRE_OPERATIONAL = “PRE_OPERATIONAL” BOOT = “BOOT” SAFE_OPERATIONAL = “SAFE_OPERATIONAL” OPERATIONAL = “IYASEBENZA”

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

31

8 Iiklasi / ireferensi yemisebenzi

8.11 Ixxat

Esi sakhiwo sigcina lonke ulwazi lwe-Ixxat usb-to-can kwezi mpawu zilandelayo zoluntu:

const std :: umtya

ADAPTER_BUS_NUMBER_OPTIONS_NAME = "inombolo yebhasi yeadaptha ye-ixxat"

const IxxatAdapterBusNumber adapterBusNumber = IxxatAdapterBusNumber ()

8.12 IxxatAdapterBusNumber

Esi sakhiwo siphethe inombolo yebhasi ye-Ixxat usb-to-can kwezi mpawu zoluntu zilandelayo:

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”

Incopho ka-8.13

Esi sakhiwo siphethe lonke ulwazi lwe-Peak usb-to-can kwezi mpawu zoluntu zilandelayo:

const std :: umtya

ADAPTER_BUS_NUMBER_OPTIONS_NAME = "inombolo yebhasi yeadaptha ephezulu"

const PeakAdapterBusNumber adapterBusNumber = PeakAdapterBusNumber ()

8.14 PeakAdapterBusNumber

Esi sakhiwo siphethe inombolo yebhasi yePeak usb-to-can kwezi mpawu zoluntu zilandelayo:

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::umtya const std::umtya

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_UST string:4to BUSD_NUMBER (PCAN_USBBUS5) (PCAN_USBBUS5) BUS_NUMBER_6 = std::to_string (PCAN_USBBUS6) BUS_NUMBER_7 = std::to_string (PCAN_USBBUS7) BUS_NUMBER_8 = std::to_string (PCAN_USBBUS8) BUS_NUMBER_9 = std::9USB_NUMBER (PCAN_USB_NUMBER) std::to_string (PCAN_USBBUS10) BUS_NUMBER_10 = std::to_string (PCAN_USBBUS11) BUS_NUMBER_11 = std::to_string (PCAN_USBBUS12) BUS_NUMBER_12 = std::to_string (PCAN_USBUS_string_to_string (PCAN_USBUSstNUMBER_13) = std:: (PCAN_USBBUS13) BUS_NUMBER_14 = std::to_string (PCAN_USBBUS14) BUS_NUMBER_15 = std::to_string (PCAN_USBBUS15)

8.15 I-DeviceHandle
Le klasi imele isiphatho sokulawula isixhobo ebhasini kwaye inale misebenzi ilandelayo yamalungu oluntu.

I-DeviceHandle () i-DeviceHandle (uint32_t handle)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

32

8 Iiklasi / ireferensi yemisebenzi

ilingana () Izithelekisa nesiphatho sesixhobo esinikiweyo.
ibool ilingana (DeviceHandle const other) const (uint32_t handle)

toString () Ibuyisela umboniso womtya wesiphatho sesixhobo.
std::umtya kuMtya () const

fumana () Ibuyisela isiphatho sesixhobo.
uint32_t fumana () const

8.16 I-DeviceId
Sebenzisa olu didi (aluguqukiyo ukusuka ekudalweni ukuya phambili) ukuchonga nokwahlula izixhobo ebhasini:

Isichongi seadaptha yehardware

Isichongi sesixhobo

Inkcazo

Intsingiselo ye-ID yesixhobo / ixabiso lenkcazo lixhomekeke kwibhasi. UmzekeloampLe, i-CAN ibhasi inokusebenzisa inani elipheleleyo le-ID.

I-DeviceId () [1/3] Yenza into entsha ye-ID yesixhobo.
nlc ::DeviceId ::DeviceId (BusHardwareId const & busHardwareId_, engatyikitywanga int deviceId_, std::string const & definition_)

Iiparamitha busHardwareId_ deviceId_ description_

Isazisi sebhasi. Isalathiso; ixhomekeke kwibhasi (= i-ID ye-CANopen node njl. njl.). Inkcazo (isenokuba ayinanto); phantsi kwebhasi.

I-DeviceId () [2/3] Yakha into ye-ID yesixhobo esitsha ngokhetho olongeziweyo lwe-ID.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId, engatyikitywanga int deviceId_, std::string const & definition_ std::vector const & extraId_, std :: umtya const & extraStringId_)

Iiparamitha busHardwareId_ deviceId_ description_ extraId_ extraStringId_

Isazisi sebhasi. Isalathiso; ixhomekeke kwibhasi (= i-ID ye-CANopen node njl. njl.). Inkcazo (isenokuba ayinanto); phantsi kwebhasi. I-ID eyongezelelweyo (inokuthi ingabi nanto); intsingiselo ixhomekeke kwibhasi. I-ID yomtya owongezelelweyo (inokuthi ingabi nanto); intsingiselo ixhomekeke kwibhasi.

I-DeviceId () [3/3] Yenza ikopi yesixhobo se-ID yesixhobo.
nlc ::DeviceId ::DeviceId (DeviceId const &)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

33

8 Iiklasi / ireferensi yemisebenzi

Iiparamitha deviceId_

I-ID yesixhobo ukukhuphela kuyo.

ilingana () Uthelekisa ezintsha kwizinto ezikhoyo.
bool nlc ::DeviceId::ilingana (DeviceId const & nezinye) const

Ibuyisela i-boolean

getBusHardwareId () Ifunda i-ID yehardware yebhasi.
BusHardwareId nlc::DeviceId::getBusHardwareId () const

Ibuyisela iBusHardwareId

getDescription () Ifunda inkcazo yesixhobo (mhlawumbi engasetyenziswanga).
std::string nlc::DeviceId::getDescription () const

Ibuyisela umtya

getDeviceId () Ifunda i-ID yesixhobo (mhlawumbi ingasetyenziswanga).
engatyikitywanga int nlc::DeviceId::getDeviceId () const

Ibuyisela int engabhalwanga

toString () Ibuyisela into njengomtya.
std::string nlc::DeviceId::toString () const

Ibuyisela umtya

getExtraId () Ifunda i-ID eyongezelelweyo yesixhobo (inokuthi ingasetyenziswa).
const std::vector &getExtraId () const

Ibuyisela i-vector

Ivektha yee-ID ezongezelelweyo (isenokungabi nanto); intsingiselo ixhomekeke kwibhasi.

getExtraStringId () Ifunda ngaphandle i-ID yomtya eyongezelelweyo yesixhobo (isenokungasetyenziswa).
std::umtya getExtraStringId () const

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

34

8 Iiklasi / ireferensi yemisebenzi

Ibuyisela umtya

I-ID yomtya eyongezelelweyo (isenokuba ayinanto); intsingiselo ixhomekeke kwibhasi.

8.17 I-LogLevelConverter

Olu didi lubuyisela inqanaba lelog yakho njengomtya. std engatshintshiyo::umtya kuMtya (nlc::LogLevel logLevel)

8.18 LogModuleConverter

Olu didi lubuyisela ilayibrari yakho yelog ethile kwimodyuli yeLoggingLevel () njengomtya.

static std :: umtya

toString (nlc::LogModule yelog yeModyuli)

std engatshintshiyo

8.19 Injongo yesichazi-magama
Olu didi lumele isichazi-magama sento yomlawuli kwaye lunemisebenzi yelungu loluntu ilandelayo: getDeviceHandle ()
virtual ResultDeviceHandle getDeviceHandle () const Returns ResultDeviceHandle

getObject () virtual ResultObjectSubEntry getObject (OdIndex const odIndex) ibuyisela iResultObjectSubEntry

getObjectEntry () virtual ResultObjectEntry getObjectEntry (uint16_t index)

Ibuyisela iResultObjectEntry

Yazisa ngeempawu zento.

fumanaXmlFileIgama () virtual ResultString getXmlFileIgama () const

Ibuyisela iResultString

Ibuyisela i-XML file igama njengentambo.

readNumber () virtual ResultInt readNumber (OdIndex const odIndex) ibuyisela iResultInt
readNumberArray () virtual ResultArrayInt readNumberArray (uint16_t const index)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

35

8 Iiklasi / ireferensi yemisebenzi
Ibuyisela iResultArrayInt readString ()
virtual ResultString readString (OdIndex const odIndex) Ibuyisela iResultString readBytes () virtual ResultArrayByte readBytes (OdIndex const odIndex) Ibuyisela ResultArrayByte writeNumber () virtual ResultVoid writeNumber (OdIndex const odInturns_Results_ResultArrayByte) writeBytes () virtual ResultVoid writeBytes (OdIndex const OdIndex, std::vector
const & data) Ibuyisela ResultVoid Related Links OdIndex
8.20 ObjectEntry
Olu didi lumele ungeniso lwento yesichazi-magama sento, lunoluphawu lulandelayo olukhuselekileyo kunye nemisebenzi yelungu loluntu:
static nlc::ObjectSubEntry invalidObject
getName () Ufunda igama laloo nto njengomtya.
virtual std :: umtya getName () const
getPrivate () Ijonga ukuba into leyo ibucala.
virtual bool getPrivate () const
getIndex () Ifunda idilesi yesalathiso sento.
virtual uint16_t getIndex () const

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

36

8 Iiklasi / ireferensi yemisebenzi

getDataType () Ifunda ngaphandle uhlobo lwedatha yento.
i-nlc ebonakalayo::Into yokuNgenaDataType getDataType () const

getObjectCode () Ifunda ikhowudi yento:

Null Deftype Defstruct Var Array Record

0x00 0x05 0x06 0x07 0x08 0x09

nlc yenyani ::Ikhowudi yeNjongo getObjectCode () const

getObjectSaveable () Ijonga ukuba into iyagcinwa kwaye luhlobo lwayo (jonga incwadi yemveliso ngeenkcukacha ezithe vetshe): APPLICATION, UNXIBELELWANO, QHUBA, MISC_CONFIG, MODBUS_RTU, NO, TUNING, CUSTOMER, ETHERNET, CANOPEN, VERIFY1020, UNKNOWN_SAVE
i-nlc yenyani ::InjongoEgcinekayo getObjectSaveable () const

getMaxSubIndex () Ifunda inani lesubindices ezixhaswa yile nto.
virtual uint8_t getMaxSubIndex () const

getSubEntry () virtual nlc ::ObjectSubEntry & getSubEntry (uint8_t subIndex)
Bona kwakhona ObjectSubEntry.
8.21 ObjectSubEntry
Olu didi lumele into engeno-ngeno (sub-index) yesichazi-magama sento kwaye inale misebenzi ilandelayo yamalungu oluntu:
getName () Ufunda igama laloo nto njengomtya.
virtual std :: umtya getName () const

getSubIndex () Ifunda idilesi yesubindex.
virtual uint8_t getSubIndex () const

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

37

8 Iiklasi / ireferensi yemisebenzi

getDataType () Ifunda ngaphandle uhlobo lwedatha yento.
i-nlc ebonakalayo::Into yokuNgenaDataType getDataType () const

getSdoAccess () Ijonga ukuba i-subindex iyafikeleleka nge-SDO:

Funda uqhubeleke

1

BhalaKuphela

2

FundaBhala

3

NoAccess

0

nlc ebonakalayo ::ObjectSdoAccessAttribute getSdoAccess () const

getPdoAccess () Ijonga ukuba isubindex iyafikeleleka/iyafakeka ngePDO:

Tx

1

Rx

2

TxRx

3

Hayi

0

nlc ebonakalayo::ObjectPdoAccessAttribute getPdoAccess () const

getBitLength () Ijonga ubude be-subindex.
virtual uint32_t getBitLength () const

getDefaultValueAsNumeric () Ifunda ixabiso elisisiseko lesalathiso samanani eentlobo zedatha yamanani.
IsiPhumo senyaniFumanaIxabiso elimiselweyoIxabisoAsNambala (std::umtya const & isitshixo) const

getDefaultValueAsString () Ifunda ixabiso elingagqibekanga le-subindex yeentlobo zedata yomtya.
Isiphetho senyaniUmtya wenyaniso getDefaultValueAsString (std::string const & key) const

getDefaultValues ​​() Ifunda amaxabiso angagqibekanga esubindex.
virtual std::maphu getDefaultValues ​​() const

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

38

8 Iiklasi / ireferensi yemisebenzi

fundaInombolo () Ufunda inani lokwenyani ixabiso lesalathiso.
i-virtual ResultInt readNumber () const

readUmtya () Ufunda umtya elona xabiso le-subindex.
virtual Resultring readString () const

readBytes () Ifunda elona xabiso lesubindex kwiibytes.
virtual ResultArrayByte readBytes () const

Bhala inani () Ubhala ixabiso lamanani kwisalathiso esingaphantsi.
virtual ResultVoid writeNumber (const int64_t ixabiso) const

writeBytes () Ubhala ixabiso kwi-subindex kwii-bytes.
i-virtual ResultVoid writeBytes (std::vector const & data) const

8.22 OdIndex
Sebenzisa olu didi (olungenakuguquguquka ukusuka ekudalweni ukuya phambili) ukusonga kunye nokukhangela into yolawulo lwezalathisi / izalathisi ezisezantsi. I-OD yesixhobo inemiqolo eyi-65535 (0xFFFF) kunye namakholomu angama-255 (0xFF); kunye nezithuba phakathi kwemiqolo eyekayo. Jonga umgangatho we-CANopen kunye nencwadana yakho yemigaqo ngeenkcukacha ezithe vetshe.
I-OdIndex () Yakha into entsha ye-OdIndex.
nlc::OdIndex::OdIndex (uint16_t index, uint8_t subIndex)

Iiparameters index subindex

Ukusuka kwi-0 ukuya kwi-65535 (0xFFFF) incl. Ukusuka kwi-0 ukuya kwi-255 (0xFF) incl.

getIndex () Ifunda isalathisi (ukusuka ku-0x0000 ukuya ku-0xFFFF).
uint16_t nlc::OdIndex::getIndex () const

Ibuyisela uint16_t

getSubindex () Ifunda isalathiso esisezantsi (ukusuka ku-0x00 ukuya ku-0xFF)
uint8_t nlc::OdIndex::getSubIndex () const

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

39

8 Iiklasi / ireferensi yemisebenzi

Ibuyisela uint8_t

toString () Ibuyisela isalathiso kunye ne-subindex njengomtya. Umtya ongagqibekanga 0xIIII:0xSS ufundeka ngolu hlobo:

I = isalathisi ukusuka ku-0x0000 ukuya ku-0xFFFF

S = isalathiso esisezantsi ukusuka ku-0x00 ukuya ku-0xFF

std::umtya nlc::OdIndex::toString () const

Ibuyisela 0xIII:0xSS

Ukumelwa komtya omiselweyo

8.23 OdLibrary
Sebenzisa olujongano lwenkqubo ukwenza imizekelo ye ObjectDictionary iklasi esuka kwi XML. Nge-assignObjectDictionary, ungabophelela umzekelo ngamnye kwisixhobo esithile ngenxa yesazisi esenziwe ngokukodwa. Imizekelo yeObjectDictionary ngoko iyilwe igcinwa kwinto ye-OdLibrary ukuze ifikelelwe ngesalathiso. Iklasi ye-ODLibrary ilayisha izinto ze-ObjectDictionary ukusuka file okanye uluhlu, uzigcine, kwaye unale misebenzi ilandelayo yamalungu oluntu:

getObjectDictionaryCount () virtual uint32_t getObjectDictionaryCount () const

getObjectDictionary () virtual ResultObjectDictionary getObjectDictionary (uint32_t odIndex)

Ibuyisela iResultObjectDictionary

addObjectDictionaryFromFile ()
virtual ResultObjectDictionary addObjectDictionaryFromFile (std::string const & absoluteXmlFileIndlela)

Ibuyisela iResultObjectDictionary

addObjectDictionary ()
Isiphumo senyaniInto yesichazi-magama yokongezaIsichazamazwi (std::vector const & odXmlData, const std::string &xmlFileIndlela = std :: umtya ())

Ibuyisela iResultObjectDictionary
8.24 OdTypesHelper
Ukongeza kule misebenzi ilandelayo yamalungu oluntu, le klasi iqulethe iindidi zedatha yesiko. Qaphela: Ukujonga iindidi zakho zedatha yesiko, khangela iklasi ye-enum ObjectEntryDataType kwi od_types.hpp.

i-uintToObjectCode () Iguqula amanani apheleleyo angatyikitywanga abe yikhowudi yento:

Null Deftype

0x00 0x05

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

40

8 Iiklasi / ireferensi yemisebenzi

Defstruct Var Array Record

0x06 0x07 0x08 0x09

NONE

isNumericDataType () Yazisa ukuba uhlobo lwedatha linamanani okanye hayi.
i-static bool yiNumericDataType (ObjectEntryDataType dataType)

isDefstructIndex () Yazisa ukuba into yinkcazo yesalathiso sesakhiwo okanye hayi.
i-static boool isDefstructIndex (uint16_t typeNum)

isDeftypeIndex () Yazisa ukuba into yinkcazelo yohlobo lwesalathiso okanye hayi.
i-static boool isDeftypeIndex (uint16_t typeNum)

isComplexDataType () Yazisa ukuba uhlobo lwedatha luntsokothile okanye alukho.
i-static bool isComplexDataType (ObjectEntryDataType dataType)

i-uintToObjectEntryDataType () Iguqula amanani angatyikitywanga abe kudidi lwedatha yeOD.
i-sstatic ObjectEntryDataType uintToObjectEntryDataType (uint16_t objectDataType)

objectEntryDataTypeToString () Guqula uhlobo lwedatha yeOD ibe ngumtya.
std emileyo:: into yomtyaEntryDataTypeToString (ObjectEntryDataType odDataType)

stringToObjectEntryDatatype () Guqula umtya kudidi lwedatha yeOD ukuba kuyenzeka. Kungenjalo, ibuyisela UNKNOWN_DATATYPE.
static ObjectEntryDataType stringToObjectEntryDatatype (std::string dataTypeString)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

41

8 Iiklasi / ireferensi yemisebenzi

objectEntryDataTypeBitLength () Yazisa kubude bebit bohlobo lwedatha yongeno.
i-static uint32_t objectEntryDataTypeBitLength (ObjectEntryDataType const & dataType)

8.25 Ulwakhiwo lwe-RESTfulBus

Esi sakhiwo siqulathe iinketho zoqwalaselo lonxibelelwano lwe-RESTful interface (ngaphaya kwe-Ethernet). Iqulethe ezi mpawu zilandelayo zoluntu:

const std::string const engatyikitywanga ende const std::string const engatyikitywanga ende const

CONNECT_TIMEOUT_OPTION_NAME = “Ixesha loQhagamshelwano eliLungileyo” DEFAULT_CONNECT_TIMEOUT = 200 REQUEST_TIMEOUT_OPTION_NAME = “ISicelo esiPhumzayo siPhelile ixesha” DEFAULT_REQUEST_TIMEOUT = 200 RESPONSE_TIMEOUT_OPTION_NAME = “RESTful Response Response Timeout” DEFAULT_TIMEOUTSRES_TIMEOUTNFA 

8.26 ProfinetDCP
Phantsi kwe-Linux, inkqubo yokufowuna ifuna iCAP_NET_ADMIN kunye neCAP_NET_RAW amandla. Ukwenza: i-sudo setcap 'cap_net_admin,cap_net_raw+eip' ./executable. Kwi-Windows, i-interface ye-ProfinetDCP isebenzisa i-WinPcap (ihlolwe nge-version 4.1.3) okanye i-Npcap (ihlolwe ngeenguqulelo ze-1.60 kunye ne-1.30). Ikhangela ilayibrari yewpcap.dll elayishwe ngamandla ngolu hlobo lulandelayo (Qaphela: akukho nkxaso yangoku yeWin10Pcap):
1. Uvimba weefayili weNanolib.dll 2. Ulawulo lwenkqubo yeWindows SystemRoot%System32 3. Uluhlu lofakelo lweNpcap SystemRoot%System32Npcap 4. Indlela yokusingqongileyo
Olu didi lumele ujongano lweNzuzo yeDCP kwaye inale misebenzi ilandelayo yamalungu oluntu:

getScanTimeout () Yazisa ngexesha lokuphuma kweskeni sesixhobo (okuhlala kukho = 2000 ms).
virtual uint32_t nlc ::ProfinetDCP ::getScanTimeout () const

setScanTimeout () Icwangcisa ixesha lokuskena isixhobo (okuhlala kukho = 2000 ms).
ukungabikho kwenyani nlc ::setScanTimeout (uint32_t timeoutMsec)

getResponseTimeout () Yazisa ngexesha lokuphela kwempendulo yesixhobo ukulungiselela ukuseta, ukuseta ngokutsha kunye nemisebenzi yokuqhwanyaza (okuhlala kukho = 1000 ms).
virtual uint32_t nlc ::ProfinetDCP ::getResponseTimeout () const

setResponseTimeout () Yazisa ngexesha lokuphela kwempendulo yesixhobo ukulungiselela ukuseta, ukuseta ngokutsha kunye nemisebenzi yokuqhwanyaza (okuhlala kukho = 1000 ms).
i-virtual void nlc::ProfinetDCP::setResponseTimeout (uint32_t timeoutMsec)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

42

8 Iiklasi / ireferensi yemisebenzi

isServiceAvailable ()
Sebenzisa lo msebenzi ukujonga ubukho benkonzo yeNzuzo yeDCP.
Ukufaneleka kweadaptha yenethiwekhi / ukufumaneka kweWindows: WinPcap / Npcap ukufumaneka kweLinux: CAP_NET_ADMIN / CAP_NET_RAW amandla
virtual ResultVoid nlc::ProfinetDCP::isServiceIyafumaneka (consst BusHardwareId & busHardwareId)

Iiparamitha BusHardwareId Ibuyisela yinyani
bubuxoki

I-Hardware ID yenkonzo yeNzuzo yeDCP yokujonga. Inkonzo iyafumaneka. Inkonzo ayifumaneki.

scanProfinetDevices () Sebenzisa lo msebenzi ukuskena ihardware yebhasi kubukho bezixhobo zeProfinet.
virtual ResultProfinetDevices scanProfinetDevices (const BusHardwareId & busHardwareId)

Iiparamitha iBusHardwareId ibuyisela iResultProfinetDevices

Ixela ibhasi nganye emayivulwe. I-Hardware ivuliwe.

setupProfinetDevice () Iseka olu lungiso lwesixhobo:

Igama lesixhobo

Idilesi ye-IP

Imaski yenethiwekhi

Isango elimiselweyo

virtual ResultVoid nlc ::setupProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice struct & profinetDevice, bool savePermanent)

phinda useteProfinetDevice () Misa isixhobo kwaye uyibuyisele kumiselo lwasefektri.
virtual ResultVoid nlc ::resetProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)

blinkProfinetDevice () Iyalela isixhobo seProfinet ukuba siqale ukuqhwanyaza iProfinet LED.
virtual ResultVoid nlc ::blinkProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice &profinetDevice)

QinisekisaProfinetDeviceIp () Sebenzisa lo msebenzi ukujonga idilesi ye-IP yesixhobo.
virtual ResultVoid validateProfinetDeviceIp (const BusHardwareId &busHardwareId, const ProfinetDevice & profinetDevice)

Iiparamitha BusHardwareId ProfinetDevice

Ixela i-ID yehardware ekufuneka ijongwe. Ikhankanya isixhobo seProfinethi esiza kuqinisekiswa.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

43

8 Iiklasi / ireferensi yemisebenzi

Ibuyisela iResultVoid

8.27 Ubume beProfinetDevice

Idatha yesixhobo seProfinet inezi mpawu zoluntu zilandelayo:

std::string std::string std::array< uint8_t, 6 > uint32_t uint32_t uint32_t

deviceName deviceVendor macAddress ipAddress netMask defaultGateway

Idilesi ye-MAC inikwe njengoluhlu kwifomathi ye-macAddress = {xx, xx, xx, xx, xx, xx}; ngelixa idilesi ye-IP, imaski yenethiwekhi kunye nesango zonke zitolikwa njengamanani amakhulu endian hex, anje:

Idilesi ye-IP: 192.168.0.2 Imaski yothungelwano: 255.255.0.0 Isango: 192.168.0.1

0xC0A80002 0xFFFF0000 0xC0A80001

8.28 Iiklasi zeziphumo

Sebenzisa "ukhetho" amaxabiso okubuya kwezi klasi ukujonga ukuba umnxeba womsebenzi ube nempumelelo okanye hayi, kwaye ufumane nezizathu zokungaphumeleli. Kwimpumelelo, i hasError () umsebenzi ubuyisela bubuxoki. Nge-getResult (), unokufunda ixabiso lesiphumo ngokohlobo ngalunye (IsiphumoInt njl.). Ukuba umnxeba awuphumeleli, ufunda isizathu nge-GetError ().

Iimpawu ezikhuselweyo

umtya weNlcErrorCode uint32_t

impazamo ngomtya wemposisoIkhowudi ye-exErrorCode

Kwakhona, le klasi inemisebenzi elandelayo yamalungu oluntu:

hasError () Ifunda impumelelo yobizo lomsebenzi.
bool nlc::Isiphumo::hasError () const

Ukubuyisela

nyani bubuxoki

Umnxeba awuphumelelanga. Sebenzisa getError () ukufunda ixabiso. Umnxeba ophumeleleyo. Sebenzisa i-getResult () ukufunda ixabiso.

getError () Ifunda isizathu ukuba umnxeba osebenzayo awuphumeleli.
const std::string nlc::Isiphumo::getError () const

Ibuyisela umtya we-const

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

44

8 Iiklasi / ireferensi yemisebenzi
isiphumo () Le misebenzi ilandelayo iyanceda ekuchazeni ezona ziphumo:
Isiphumo (std::string const & errorString_)
Isiphumo (NlcErrorCode const & errCode, std::string const & errorString_)
Isiphumo (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
Isiphumo (Isiphumo siyakha kunye nesiphumo)
getErrorCode () Funda iNlcErrorCode.
NlcErrorCode getErrorCode () const
getExErrorCode () uint32_t getExErrorCode () const
8.28.1 Isiphumo esingenanto
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela ukungabikho. Iklasi izuza njengelifa imisebenzi kawonke-wonke kunye neempawu ezikhuselweyo ukusuka kwiklasi yeziphumo kwaye inemisebenzi elandelayo yamalungu oluntu:
ResultVoid () Le misebenzi ilandelayo iyanceda ekuchazeni esona siphumo singekhoyo:
IziphumoVoid (std::string const &errorString_)
ResultVoid (NlcErrorCode const & errCode, std::string const & errorString_)
ResultVoid (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
I-ResultVoid (Isiphumo Const & nesiphumo)
8.28.2 Isiphumo
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela inani elipheleleyo. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ibuyisela isiphumo esipheleleyo ukuba umnxeba osebenzayo ube nempumelelo.
int64_t getResult () const
Ibuyisela int64_t

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

45

8 Iiklasi / ireferensi yemisebenzi
Isiphumo () Imisebenzi ilandelayo iyanceda ekuchazeni isiphumo esipheleleyo esipheleleyo:
Iziphumo (int64_t result_)
IsiphumoInt (std::string const & errorString_)
ResultInt (NlcErrorCode const & errCode, std::string const & errorString_)
ResultInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
iResultInt (Iziphumo ziyahambelana neziphumo)
8.28.3 Uluhlu lweziphumo
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela umtya. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda isiphumo somtya ukuba umnxeba womsebenzi ube nempumelelo.
const std::string nlc::ResultString::getResult () const
Ibuyisela umtya we-const
ResultString () Imisebenzi elandelayo iyanceda ekuchazeni eyona siphumo somtya:
ResultString (std::string const & message, bool hasError_)
ResultString (NlcErrorCode const & errCode, std::string const & errorString_)
ResultString (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: umtya const & errorString_)
ResultString (Isiphumo const & nesiphumo)
8.28.4 ResultArrayByte
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela uluhlu lwe-byte. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda i-byte vector ukuba umnxeba osebenzayo ube nempumelelo.
const std::vector nlc::ResultArrayByte::getResult () const
Ibuyisela i-const vector

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

46

8 Iiklasi / ireferensi yemisebenzi
ResultArrayByte () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo siluluhlu lwebyte:
IsiphumoArrayByte (std::vector const & nesiphumo_)
ResultArrayByte (std::string const & errorString_)
ResultArrayByte (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayByte (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: umtya const & errorString_)
iResultArrayByte (Isiphumo sesiphumo kunye nesiphumo)
8.28.5 ResultArrayInt
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela uluhlu olupheleleyo. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda iVektha epheleleyo ukuba umnxeba womsebenzi ube nempumelelo.
const std::vector nlc::ResultArrayInt::getResult () const
Ibuyisela i-const vector
ResultArrayInt () Le misebenzi ilandelayo iyanceda ekuchazeni kanye iziphumo zoluhlu olupheleleyo:
Isiphumo seArrayInt (std::vector const & nesiphumo_)
ResultArrayInt (std::string const & errorString_)
ResultArrayInt (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: umtya const & errorString_)
I-ResultArrayInt (Iziphumo zibandakanya kunye nesiphumo)
8.28.6 IziphumoBusHwIds
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela uluhlu lwe-ID ye-hardware yebhasi. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda i-bus-hardware-ID vector ukuba umnxeba osebenzayo ube nempumelelo.
const std::vector nlc::ResultBusHwIds::getResult () const
Iiparameters const vector

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

47

8 Iiklasi / ireferensi yemisebenzi
ResultBusHwIds () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo se-bus-hardware-ID-array:
IziphumoBusHwIds (std::vector const & nesiphumo_)
IziphumoBusHwIds (std::string const & errorString_)
IziphumoBusHwIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
I-ResultBusHwIds (Iziphumo ziyahambelana nesiphumo)
8.28.7 ResultDeviceId
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela i-ID yesixhobo. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda iVector yeID yesixhobo ukuba umnxeba osebenzayo ube nempumelelo.
DeviceId nlc::ResultDeviceId::fumanaResult () const
Ibuyisela i-const vector
ResultDeviceId () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo sesazisi sesixhobo:
ResultDeviceId (DeviceId const & result_)
ResultDeviceId (std::string const & errorString_)
ResultDeviceId (NlcErrorCode const & errCode, std::string const & errorString_)
I-ResultDeviceId (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: errorString_)
ResultDeviceId (Isiphumo const & nesiphumo)
8.28.8ResultDeviceIds
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela uluhlu lwe-ID yesixhobo. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ibuyisela iVector yeID yesixhobo ukuba umnxeba osebenzayo ube nempumelelo.
DeviceId nlc ::ResultDeviceIds::getResult () const
Ibuyisela i-const vector

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

48

8 Iiklasi / ireferensi yemisebenzi
ResultDeviceIds () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo sesixhobo seID-array:
I-ResultDeviceIds (std::vector const & nesiphumo_)
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_)
I-ResultDeviceIds (Isiphumo sibandakanya & nesiphumo)
8.28.9 ResultDeviceHandle
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela ixabiso lesiphatho sesixhobo. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda isiphatho sesixhobo ukuba umnxeba osebenzayo ube nempumelelo.
I-DeviceHandle nlc ::IsiphambekoIsixhoboIsiphumo::fumanaIsiphumo () const
Ibuyisela i-DeviceHandle
ResultDeviceHandle () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo sokuphatha isixhobo:
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 (Isiphumo Const & nesiphumo)
8.28.10 Isichazi-magama seSiphumo
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela umxholo wesichazi-magama sento. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda iVector yeID yesixhobo ukuba umnxeba osebenzayo ube nempumelelo.
const nlc::ObjectDictionary & nlc::ResultObjectDictionary::getResult () const

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

49

8 Iiklasi / ireferensi yemisebenzi

Ukubuyisela

const vector

ResultObjectDictionary () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo sesichazi-magama sento:
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 (Iziphumo zibandakanya & iziphumo)

8.28.11ResultConnectionState
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela i-device-connection-state info. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda isiphatho sesixhobo ukuba umnxeba osebenzayo ube nempumelelo.
DeviceConnectionStateInfo nlc::ResultConnectionState::fumanaResult () const

Ibuyisela iDeviceConnectionStateInfo iQhagamshelwe / Ayixhunyiwe / iQhagamshelweIBootloader

ResultConnectionState () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo soqhagamshelo lwemeko:
iResultConnectionState (DeviceConnectionStateInfo const & result_)

iResultConnectionState (std::string const & errorString_)

ResultConnectionState (NlcErrorCode const & errCode, std::string const & errorString_)

ResultConnectionState (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)

iResultConnectionState (Iziphumo zibandakanya kunye nesiphumo)

8.28.12 UkuNgena kweNjongo yeSiphumo
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela into yongeno. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

50

8 Iiklasi / ireferensi yemisebenzi
getResult () Ibuyisela iVector yeID yesixhobo ukuba umnxeba osebenzayo ube nempumelelo.
nlc::ObjectEntry const& nlc::ResultObjectEntry::getResult () const
Ibuyisela const ObjectEntry
ResultObjectEntry () Le misebenzi ilandelayo iyanceda ekuchazeni eyona siphumo songeno lwento:
iResultObjectEntry (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_)
IResultObjectEntry (Iziphumo ziyahambelana nesiphumo)
8.28.13ResultObjectSubEntry
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela into engeno olusezantsi. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ibuyisela iVector yeID yesixhobo ukuba umnxeba osebenzayo ube nempumelelo.
nlc::ObjectSubEntry const & nlc::ResultObjectSubEntry::getResult () const
Ibuyisela const ObjectSubEntry
ResultObjectSubEntry () Le misebenzi ilandelayo iyanceda ekuchazeni eyona nto ichanekileyo isiphumo songeniso olusezantsi:
IResultObjectSubEntry (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_)
IResultObjectSubEntry (Iziphumo zibandakanya & nesiphumo)
8.28.14 ResultProfinetDevices
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuyisela isixhobo seProfinethi. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

51

8 Iiklasi / ireferensi yemisebenzi

getResult () Ifunda iVector yesixhobo seProfinet ukuba umnxeba osebenzayo ube nempumelelo.
const std::vector & getResult () const

ResultProfinetDevices () Le misebenzi ilandelayo inceda ekuchazeni ezona zixhobo zeNzuzo.
IziphumoProfinetDevices (consst std::vector & profinetDevices)
I-ResultProfinetDevices (isiphumo se-const & nesiphumo)
ResultProfinetDevices (consst std::string &errorText, NlcErrorCode errorCode = NlcErrorCode::GeneralError, uint32_t extendedErrorCode = 0)
8.28.15 IziphumoampleDataArray
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuya njengeampuluhlu lwedatha. Udidi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunale misebenzi ilandelayo yamalungu oluntu:
getResult () Ifunda uluhlu lwedatha ukuba umnxeba osebenzayo ube nempumelelo.
const std::vector <SampleData> & getResult () const

IziphumoampleDataArray () Le misebenzi ilandelayo iyanceda ekuchazeni ezona zixhobo zeNzuzo.
IziphumoampleDataArray (const std::vector <SampleData> & dataArray)

IziphumoampleDataArray (consst std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)

IziphumoampleDataArray (const IziphumoampleDataArray kunye nezinye)

IziphumoampleDataArray (isiphumo seconst & nesiphumo)

8.28.16 IziphumoamplerState
I-NanoLib ikuthumela umzekelo wolu didi ukuba umsebenzi ubuya njengeampLer state.Olu didi luzuza njengelifa imisebenzi kawonke-wonke / iimpawu ezikhuselweyo ukusuka kudidi lweziphumo kwaye lunemisebenzi elandelayo yamalungu oluntu:

getResult () Ufunda i-sampler state vector ukuba umnxeba womsebenzi ube nempumelelo.
SamplerState getResult () const

Ubuyisela u-SamplerState>

Ayikhangelwanga / iMiselwe / ilungile / iyasebenza / igqityiwe / ayiphumelelanga / icinyiwe

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

52

8 Iiklasi / ireferensi yemisebenzi

IziphumoamplerState () Le misebenzi ilandelayo iyanceda ekuchazeni kanye sampler state.
IziphumoamplerState (const SamplerState state)

IziphumoamplerState (consst std::string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t
extensionErrorCode = 0)

IziphumoamplerState (const IziphumoamplerState & nezinye)

IziphumoamplerState (isiphumo se-const & nesiphumo)

8.29NlcErrorCode

Ukuba kukho into engahambanga kakuhle, iiklasi zeziphumo zibika enye yeekhowudi zeemposiso ezidweliswe kolu balo.

Ikhowudi yemposiso IMpumelelo JikeleleImpazamo iBusUnavailable CommunicationError ProtocolError
I-ODDoesAyikho ODInvalidUFikelelo lweODTypeImismatch OperationYekisiwe ayiXhaswangaUsebenziso olungasebenziyo
Iingxoxo ezingaSebenziyo zokuFikelela okwaLwa isiXhoboAsiFumananga IsiXhobo esiNgafumanekiyo.

C: Udidi D: Ingcaciso R: Isizathu C: Akukho. D: Akukho mpazamo. R: Umsebenzi ugqitywe ngempumelelo.
C: Ayichazwanga. D: Impazamo engachazwanga. R: Ukusilela okuhambelanayo nolunye udidi.
C: Ibhasi. D: Ibhasi yehardware ayifumaneki. R: Ibhasi ayikho, inqunyulwe okanye inesiphene.
C: Unxibelelwano. D: Unxibelelwano aluthembekanga. R: Idatha engalindelekanga, i-CRC engalunganga, isakhelo okanye iimpazamo zokulingana, njl.
C: Umgaqo-nkqubo. D: Impazamo yeProtocol. R: Impendulo emva kokhetho lweprothokholi olungaxhaswanga, ingxelo yesixhobo yeprotocol engaxhaswanga, impazamo kwiprothokholi (yithi, iSDO segment sync bit), njl njl. Ungqamaniso lwebit
C: Isichazi-magama sento. D: Idilesi ye-OD ayikho. R: Ayikho idilesi enjalo kwisichazi-magama sento.
C: Isichazi-magama sento. D: Ukufikelela kwidilesi yeOD ayisebenzi. R: Zama ukubhala incwadi yokufunda kuphela, okanye ukufunda ngokubhala kuphela, idilesi.
C: Isichazi-magama sento. D: Chwetheza ukungahambelani. R: Ixabiso aliguqulwanga libe kudidi olukhankanyiweyo, yithi, kumzamo wokuphatha umtya njengenani.
C: Isicelo. D: Inkqubo iyekisiwe. R: Inkqubo isikwe ngesicelo sesicelo. Ibuyisela kuphela ekusebenzeni ngokuphazanyiswa ngumsebenzi wokufowuna, yithi, ukusuka kuskena ibhasi.
C: Eqhelekileyo. D: Inkqubo ayixhaswanga. R: Akukho bhasi yehardware / inkxaso yesixhobo.
C: Eqhelekileyo. D: Inkqubo ayichanekanga kwimeko yangoku, okanye ayisebenzi ngengxoxo yangoku. R: Umzamo wokudibanisa kwakhona kwiibhasi / izixhobo esele ziqhagamshelwe. Umzamo wokuqhawula uqhagamshelwano kwezo sele ziqhawukile. Umzamo wokusebenza kwi-bootloader kwimowudi ye-firmware okanye ngokuchaseneyo.
C: Eqhelekileyo. D: Ingxoxo ayisebenzi. R: Ingqiqo engalunganga okanye i-syntax.
C: Eqhelekileyo. D: Ufikelelo lwaliwe. R: Ukunqongophala kwamalungelo okanye amandla okwenza umsebenzi oceliweyo.
C: Eqhelekileyo. D: Into ekhankanyiweyo ayifunyenwanga. R: Hardware ibhasi, protocol, isixhobo, idilesi OD kwisixhobo, okanye file ayifunyanwanga.
C: Eqhelekileyo. D: Into ekhankanyiweyo ayifunyenwanga. R: uxakekile, akakho, usikiwe okanye unesiphako.
C: Eqhelekileyo. D: Inkumbulo enganelanga. R: Inkumbulo encinci kakhulu ukuqhubekeka lo myalelo.
C: Eqhelekileyo. D: Inkqubo iphelelwe lixesha. R: Buyela emva kokuba ixesha liphelile. Ukuphelelwa lixesha isenokuba lixesha lokuphendula isixhobo, ixesha lokufumana ufikelelo ekwabelwana ngalo okanye olukhethekileyo kwisixhobo, okanye ixesha lokutshintshela ibhasi / isixhobo kwisimo esifanelekileyo.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

53

8 Iiklasi / ireferensi yemisebenzi

8.30 NlcCallback
Olu didi lwabazali lwe-callbacks lunomsebenzi olandelayo welungu loluntu: ukufowunela ()
Isiphumo senyaniVoid callback ()

Ukubuyisela

IziphumoVoid

8.31 NlcDataTransferCallback
Sebenzisa le klasi ye-callback yokudluliselwa kwedatha (uhlaziyo lwe-firmware, ukulayishwa kweNanoJ njl.). 1. Ukulayisha i-firmware: Chaza "i-co-class" eyandisa le kunye nendlela yokufowuna
ukuphunyezwa. 2. Sebenzisa imizekelo ye "co-class's" kwiNanoLibAccessor.uploadFirmware () iifowuni. Udidi oluphambili ngokwalo lunomsebenzi wamalungu oluntu alandelayo:

callback () virtual ResultVoid callback (nlc::DataTransferInfo info, int32_t data)

Ukubuyisela

IziphumoVoid

8.32 NlcScanBusCallback
Sebenzisa le klasi yokufowunela ukuskena ibhasi. 1. Chaza i-"co-class" eyandisa le ngophumezo lwendlela yokufowuna yesiko. 2. Sebenzisa imizekelo “yeklasi” kwiNanoLibAccessor.scanDevices () iifowuni. Udidi oluphambili ngokwalo lunomsebenzi wamalungu oluntu alandelayo.

buya utsale umnxeba ()
isiphumo esibonakalayoVoid callback (nlc::BusScanInfo info, std::vector i-const & izixhobo ezifunyenweyo, idatha ye-int32_t)

Ibuyisela iResultVoid
8.33 NlcLoggingCallback
Sebenzisa le klasi yokufowuna ukuze ungene kwii-callbacks. 1. Chaza iklasi eyandisa le klasi ngokusetyenziswa kwendlela yokufowuna yesiko
setLoggingCallback (…).
ukufowunelwa kwento engekhoyo (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.34SamplerInterface
Sebenzisa le klasi ukuqwalasela, qala kwaye uyeke i-sampler, okanye ukufumana u-sampled data kwaye ulande njengeampubume ler okanye impazamo yokugqibela. Iklasi inale misebenzi ilandelayo yamalungu oluntu.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

54

8 Iiklasi / ireferensi yemisebenzi

qwalasela () Qwalasela njengeampler.
virtual iResultVoid nlc::SamplerInterface :: qwalasela (const DeviceHandle deviceHandle, const SamplerUqwalaselo & samplerConfiguration)

Iiparamitha [kwi] isixhoboHamba [kwi] samplerConfiguration
Ibuyisela iResultVoid

Ixela ukuba sesiphi isixhobo sokumisela i-sampler for. Ixela amaxabiso ophawu lweempawu zoqwalaselo. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

getData () Fumana i-sampidatha ekhokelwayo.
iziphumo ezibonakalayoampleDataArray nlc::SamplerInterface ::getData (const DeviceHandle deviceHandle)

Iiparamitha [kwi] deviceHandle Returns ResultSampleDataArray

Ixela ukuba sesiphi isixhobo sokufumana idatha.
Ihambisa i-sampled data, enokuba luluhlu olungenanto ukuba sampI-lerNotify iyasebenza ekuqaleni.

getLastError () Ifumana njengeampler impazamo yokugqibela.
virtual iResultVoid nlc::SamplerInterface ::getLastError (const DeviceHandle deviceHandle)

Ibuyisela iResultVoid

Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

getState () Ifumana njengeampubume be ler.
iziphumo ezibonakalayoamplerState nlc::SamplerInterface ::getState (const DeviceHandle deviceHandle)

Ibuyisela iziphumoamplerState

Ihambisa i-sampler state.

qala () Iqala njengeampler.
virtual iResultVoid nlc::SamplerInterface :: qala (const DeviceHandle deviceHandle, SamplerNotify* samplerNotify, int64_t applicationData)

Iiparamitha [kwi] isixhoboHandle [kwi] SamplerNotify [kwi] applicationData
Ibuyisela iResultVoid

Ixela ukuba sesiphi isixhobo emasiqalise i-sampler for.
Ikhankanya ukuba loluphi ulwazi olukhethwayo lokuxela (inokuba yi-nullptr).
Ukhetho: Phambili idata enxulumene nesicelo (umsebenzisi-uchazwe ngu-8-bit uluhlu lwexabiso / isixhobo ID / index, okanye ixesha lomhla, isalathisi / umsebenzi wesalathisi, njl.njl.)amplerNotify.
Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

55

8 Iiklasi / ireferensi yemisebenzi

yeka () Ima njengeampler.
virtual iResultVoid nlc::SamplerInterface :: yima (const DeviceHandle deviceHandle)

Iiparamitha [kwi] deviceHandle Returns ResultVoid

Ixela ukuba sesiphi isixhobo sokumisa i-sampler for. Iqinisekisa ukuba umsebenzi ongenanto usebenzile.

8.35SamplerUlwakhiwo loqwalaselo

Esi sakhiwo siqulathe idatha sampiinketho zoqwalaselo ler (emile okanye hayi).

Iimpawu zoluntu

std::vector Iidilesi ezilandelelweyo

Ukuya kuthi ga kwi-12 iidilesi ze-OD zibe sampi-LED.

uint32_t

inguqulelo

Uguqulelo lwesakhiwo.

uint32_t

ixeshaMillisecond

Sampubude bexesha kwi-ms, ukusuka ku-1 ukuya ku-65535

uint16_t

ixeshaMillisecond

Sampixesha lokuhlala kwi-ms.

uint16_t

inaniOFSampLes

Sampimali encinci.

uint16_t

preTriggerNumberOfSampLes

Sampimali encinci yokuqalisa.

bool

usebenzisa iSoftwareImplementation

Sebenzisa ukuphunyezwa kwesoftware.

bool

usebenzisa iNewFWSamplerUkuphunyezwa Sebenzisa ukuphunyezwa kwe-FW kwizixhobo ezine

FW inguqulelo v24xx okanye entsha.

SamplerMode

indlela

Eqhelekileyo, ephindaphindayo okanye eqhubekayo sampulwimi.

SamplerTriggerCondition triggerCondition

Iimeko zokuqalisa: TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0xG14TER = 0x15 TC_GREATER_OR_EQUAL = 0x16 TC_LESS = 0x17 TC_LESS_OR_EQUAL = 0x18 TC_EQUAL = 0x19 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE, OMG

SamplerTrigger

SamplerTrigger

Isixhobo sokuqala njengeampler?

Iimpawu zoluntu ezizinzileyo
i-static constexpr size_t SAMPLER_CONFIGURATION_VERSION = 0x01000000 static constexpr size_t MAX_TRACKED_ADDRESSES = 12
8.36SamplerNotify
Sebenzisa le klasi ukwenza u-sampler izaziso xa uqala njengokoampler. Iklasi inalo msebenzi ulandelayo wamalungu oluntu.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

56

8 Iiklasi / ireferensi yemisebenzi

yazisa ()
Ihambisa isaziso.
ukungabikho kwenyani nlc::SamplerNotify::yazisa (consst ResultVoid & lastError, const SamplerState samplerState, const std::vector <SampleData> & sampleDatas, int64_t applicationData)

Iiparamitha [kwi] lastImposiso [kwi] samplerState
[kwi] sampleDatas [kwi] applicationData

Inika ingxelo ngempazamo yokugqibela yenzekile ngelixa sampling. Unika ingxelo sampubume be-ler ngexesha lesaziso: Ingaqwalaselwanga / iqwalaselwe / ilungile / iyasebenza / igqityiwe / ayiphumelelanga / icinyiwe. Unika ingxelo sampuluhlu lwedatha olukhokeleyo. Iingxelo zedatha yesicelo esithile.

8.37SampUlwakhiwo lweData

Esi sakhiwo siqulathe i-sampidatha ekhokelwayo.

uin64_t iterationNumber

Iqala ngo-0 kwaye inyuka kuphela kwimo ephindaphindayo.

std::vector<SampledValues> Iqulathe uluhlu luka-sampixabiso led.

8.38SampledValue struct

Esi sakhiwo siqulathe i-sampixabiso led.

in64_t ixabiso uin64_t CollectTimeMsec

Iqulethe ixabiso ledilesi ye-OD elandelelweyo.
Iqulethe ixesha lokuqokelela kwi-milliseconds, ngokumalunga ne-sampndiqale ke.

8.39SampIsakhiwo se-lerTrigger

Olu lwakhiwo luqulathe izicwangciso zetrigger ye sampler.

SamplerTriggerCondition imeko
Ixabiso le-OdIndex uin32_t

Imeko ye-trigger:TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0xG14TER = 0x15 = 0x16 TC_GREATER_OR_EQUAL = 0x17 TC_LESS = 0x18 TC_LESS_OR_EQUAL = 0x19 TC_EQUAL = 0x1 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE =
I-OdIndex ye-trigger (idilesi).
Ixabiso lomqathango okanye inani elincinci (ukuqala kwi-bit zero).

8.40 Uthotho lwesakhiwo

Fumana apha uthotho lwakho lonxibelelwano kunye nolu phawu lulandelayo loluntu:

const std:: umtya const SerialBaudRate

BAUD_RATE_OPTIONS_NAME = "uthotho lwezinga lobugwenxa" baudRate =SerialBaudRate struct

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

57

8 Iiklasi / ireferensi yemisebenzi

const std:: umtya const SerialParity

PARITY_OPTIONS_NAME = "i-serial parity" i-parity = i-SerialParity struct

8.41 Ulwakhiwo lweSerialBaudRate

Fumana apha uthotho lwakho lonxibelelwano lomyinge webhaud kunye nezi mpawu zilandelayo:

const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string

BAUD_RATE_7200 = “7200” BAUD_RATE_9600 = “9600” BAUD_RATE_14400 = “14400” BAUD_RATE_19200 = “19200” BAUD_RATE_38400 = “38400” BAUD_56000 BAUD_56000 57600 BAUD_57600 115200” BAUD_RATE_115200 = “128000” BAUD_RATE_128000 = “256000” BAUD_RATE_256000 = “XNUMX”

8.42 Ulwakhiwo lweSerialParity

Fumana apha uthotho lwakho lokukhetha kunye nolu phawu lulandelayo loluntu:

const std::string const std::string const std::string const std::string const std::string

AKUKHO = “akukho” ODD = “odd” EVEN = “even” INQAKU = “makisha” ISITHUBA = “isithuba”

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

58

9 Iilayisensi

9 Iilayisensi

NanoLib API iiheader interface kunye example khowudi yomthombo ilayisenisi yiNanotec Electronic GmbH & Co. KG phantsi kwe-Creative Commons Attribution 3.0 Ilayisensi engabhalwanga (CC BY). Iinxalenye zethala leencwadi ezibonelelwe ngefomathi yokubini (ezingundoqo kunye namathala eencwadi onxibelelwano lwebhasi) anikwe ilayisenisi phantsi kweCreative Commons AttributionNoDerivatives 4.0 International License (CC BY ND).

Creative Commons
Esi sishwankathelo silandelayo esifundekayo asiyi kuthatha indawo yephepha-mvume ngokwalo. Ungayifumana ilayisensi efanelekileyo kwi-creativecommons.org kwaye idityaniswe ngezantsi. Ukhululekile ukuba:

CC NGE-3.0
Sabelo:Bona right. Ukulungelelanisa: Hlanganisa kwakhona, uguqule, kwaye wakhe phezu kwe
izinto zayo nayiphi na injongo, nokuba kurhwebo.

CC BY-ND 4.0
Yabelana: Khuphela kwaye usasaze kwakhona izinto kuyo nayiphi na indlela okanye ifomathi.

Umntu onikwe iphepha-mvume akanako ukurhoxisa ezi nkululeko zingentla ukuba nje uthobela le migaqo ilandelayo yelayisensi:

CC NGE-3.0

CC BY-ND 4.0

Unikezelo: Kufuneka unike ikhredithi efanelekileyo, Ubunjani: Bona ngasekhohlo. Kodwa: Nika ikhonkco kule nto

nika ikhonkco kwilayisensi, kwaye ubonise ukuba

enye ilayisenisi.

kwenziwa utshintsho. Ungakwenza oko kuyo nayiphi na

Akukho ziphuma: Ukuba uyaxuba, uguqule, okanye wakhe

ngendlela efanelekileyo, kodwa hayi nangayiphi na indlela

phezu kwemathiriyeli, awunako ukusasaza i

Unika imvume yokuba umntu onikwe ilayisenisi uvumele wena okanye ukusetyenziswa kwakho.

imathiriyeli elungisiweyo.

Akukho zithintelo zongezelelweyo: Awunakusebenzisa Akukho zithintelo zongezelelweyo: Jonga ngasekhohlo. imiqathango yomthetho okanye amanyathelo zobuchwepheshe ukuba ngokusemthethweni

bathintele abanye ekwenzeni nantoni na yelayisenisi

iimvume.

Qaphela: Awunyanzelekanga ukuba uthobele ilayisenisi yezixhobo ezikwidomeyini yoluntu okanye apho ukusetyenziswa kwakho kuvunyelwe ngumkhethe osebenzayo okanye umda.
Qaphela: Akukho ziqinisekiso zinikiweyo. Ilayisensi ayinakukunika zonke iimvume eziyimfuneko kusetyenziso olucetywayo. UmzekeloampLe, amanye amalungelo afana nopapasho, ubumfihlo, okanye amalungelo okuziphatha anokunciphisa indlela oyisebenzisa ngayo loo nto.

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

59

Imprint, uqhagamshelwano, iinguqulelo

©2024 Nanotec Electronic GmbH & Co.KGKapellenstr.685622 FeldkirchenGermanyTel.+49(0) 89 900 686-0Fax+49(0)89 900 686-50 info@nanotec.dewww.nanotec.com Onke Amalungelo Agciniwe. Imposiso, ukushiyeka, ubuchwepheshe okanye umxholo utshintsho kunokwenzeka ngaphandle kwesaziso. Iibrendi/iimveliso ezicatshulweyo ziimpawu zorhwebo zabanini bazo kwaye kufuneka ziphathwe ngolo hlobo. Inguqulelo yoqobo.

Uxwebhu 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

+ Yongeziweyo > Itshintshiwe # Fixed > Sebenza kwakhona kwi-ex enikiweyoamples.
+ NanoLib Modbus: Isixhobo esongeziweyo sokutshixa isixhobo seModbus VCP. # INanoLib Core: Ujongo lwemeko yoqhagamshelo oluzinzileyo. # Ikhowudi yeNanoLib: Ukususwa kwereferensi yesixhobo sebhasi echanekileyo.
+ NanoLib-CANopen: Inkxaso yePeak PCAN-USB iadaptha (IPEH-002021/002022).
> NanoLib Core: Utshintshiselwano lokufowunelwa kwe-callback (i-LogLevel endaweni yayo yiLogModule). # NanoLib Logger: Ukwahlula phakathi kondoqo kunye neemodyuli zilungisiwe. # I-Modbus TCP: Uhlaziyo lwe-firmware olulungisiweyo lwe-FW4. # EtherCAT: Ukufakwa kwenkqubo yeNanoJ elungisiweyo yeCore5. # EtherCAT: Uhlaziyo lwe-firmware olulungisiweyo lweCore5.
# I-Modbus RTU: Imiba yexesha elimiselweyo kunye namaxabiso aphantsi e-baud ngexesha lohlaziyo lwe-firmware. # UKUPHUMULA: Ukufakwa kwenkqubo yeNanoJ elungisiweyo.
# Iimodyuli zeNanoLib Sampler: Ukufundwa ngokuchanekileyo kwesampikhokelwa amaxabiso e-boolean.
+ Inkxaso yeJava 11 kuwo onke amaqonga. + Python 3.11 / 3.12 inkxaso kuwo onke amaqonga. + Ujongano olutsha lokufowuna lokungena (jonga umzekeloampkancinci). + I-callback sinks yeNanoLib Logger. > Hlaziya iloga kwinguqulo 1.12.0. > Iimodyuli zeNanoLib Sampler: Inkxaso ngoku yeNanotec isilawuli firmware v24xx. > Iimodyuli zeNanoLib Sampler: Utshintsho kwisakhiwo esisetyenziselwa sampler uqwalaselo. > Iimodyuli zeNanoLib Sampler: Imo eqhubekayo ifana nokungenasiphelo; imeko yokuqalisa ihlolwe kanye; inani likasampngaphantsi kufuneka ibe yi-0. > Iimodyuli zeNanoLib Sampler: Ukubaluleka okuqhelekileyo kumsonto oqokelela idatha kwimo ye-firmware. > Iimodyuli zeNanoLib Sampler: I-algorithm ebhalwe ngokutsha ukubona inguqu phakathi kwemeko eLungileyo kunye neRunning. # I-NanoLib Core: Akusekho ukwaphulwa koFikelelo (0xC0000005) ekuvaleni izixhobo ezi-2 okanye ngaphezulu kusetyenziswa isixhobo esifanayo sebhasi. # I-NanoLib Core: Akusayi kubakho mpazamo yokwahlulahlula ngokuncamathisela iadaptha ye-PEAK phantsi kweLinux. # Iimodyuli zeNanoLib Sampler: Kulungile sampi-led-values ​​yokufunda kwimo ye-firmware. # Iimodyuli zeNanoLib Sampler: Uqwalaselo oluchanekileyo 502X:04. # Iimodyuli zeNanoLib Sampler: Ukuxuba oluchanekileyo izithinteli kunye nemijelo. # NanoLib-Canopen: Ukunyuka kwexesha le-CAN lokomelela kunye nokuskena okuchanekileyo kwii-baudrates ezisezantsi. # INanoLib-Modbus: I-algorithm yokufumanisa i-VCP yezixhobo ezikhethekileyo (USB-DA-IO).
+ Inkxaso ye-EtherCAT.
+ Qaphela kwiisetingi zeprojekthi yeVS kuLungiselelo lweprojekthi yakho.
+ getDeviceHardwareGroup (). + getProfinetDCP (isServiceAvailable). + fumanaProfinetDCP (validateProfinetDeviceIp). + AutoAssignObjectDictionary (). + fumanaXmlFileIgama (). + const std:: umtya & xmlFileIndlela kwi addObjectDictionary (). + fumanaSamplerInterface ().

Imveliso 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)

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

60

10 Ushicilelo, umfowunelwa, iinguqulelo

Uxwebhu
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

+ Yongeziweyo > Tshintshwe # Fixed + rebootDevice (). + Ikhowudi yempazamo yesiXhobo asifumaneki kwi-getDeviceBooloaderVersion (), ~VendorId (), ~HardwareVersion (), ~SerialNumber, kunye ne-~Uid. > firmwareUploadFromFile ngoku layisha iFirmwareFromFile (). > i-firmwareLayisha () ngoku layisha iFirmware (). > i-bootloaderUploadFromFile () ngoku uploadBootloaderFromFile (). > i-bootloaderLayisha () ngoku layishaI-Bootloader (). > i-bootloaderFirmwareUploadFromFile () ukulayisha iBootloaderFirmwareUkusukaFile (). > i-bootloaderFirmwareUpload () ngoku uploadBootloaderFirmware (). > nanojUploadFromFile () ngoku layisha iNanoJFromFile (). > nanojUpload () ngoku layishaNanoJ (). > objectDictionaryLibrary () ngoku getObjectDictionaryLibrary (). > String_String_Map ngoku StringStringMap. > NanoLib-Eqhelekileyo: ukuphunyezwa ngokukhawuleza koluhluAvailableBusHardware kunye ne-openBusHardwareWithProtocol eneadaptha ye-Ixxat. > NanoLib-CANopen: useto olungagqibekanga olusetyenzisiweyo (1000k baudrate, Ixxat inombolo yebhasi 0) ukuba iinketho zehardware yebhasi ayinanto. > NanoLib-RESTful: imvume yomlawuli iphelelwe lixesha kunxibelelwano kunye nee-bootloaders ze-Ethernet phantsi kweWindows ukuba i-npcap / umqhubi we-winpcap uyafumaneka. # I-NanoLib-CANopen: izixhobo zebhasi ngoku zivula ngokungenangxaki ngeenketho ezingenanto. # NanoLib-Eqhelekileyo: openBusHardwareWithProtocol () akukho nkumbulo ivuzayo ngoku.
+ Inkxaso yeLinux ARM64. + Ugcino oluninzi lwe-USB / REST / Inzuzo yenkxaso yeDCP. + khangelaUnxibelelwanoState (). + fumanaDeviceBootloaderVersion (). + Iziphumo zeProfinetDevices. + NlcErrorCode (ifakwe endaweni yeNanotecExceptions). + NanoLib Modbus: VCP / USB hub edityaniswe kwi-USB. > Ukuskena kweModbus TCP kubuyisela iziphumo. < I-Modbus TCP latency yonxibelelwano ihlala ihleli.
+ Okungakumbi kweObjectEntryDataType (enzima kunye neprofile-Specific). + I-IOError ibuyile ukuba i-ConnectDevice () kunye ne-scanDevices () ayifumani nanye. + Kuphela yi-100 ms yexesha eliqhelekileyo lokuphuma kweCanOpen / Modbus.
+ Inkxaso yeModbus (kunye ne-USB Hub ngeVCP). + Isahluko Ukudala iprojekthi yakho yeLinux. + ExtraHardwareSpecifier kwiBusHardwareId (). + extraId_ kunye extraStringId_ ukuya DeviceId ().
+ seta iBusState (). + fumanaDeviceBooloaderBuildId (). + fumanaDeviceFirmwareBuildId (). + fumanaDeviceHardwareVersion (). # Ukulungisa iibhagi.
Uhlelo.

Imveliso
0.8.0 0.7.1 0.7.0 0.5.1 0.5.1

Inguqulelo: doc 1.4.2 / NanoLib 1.3.0

61

Amaxwebhu / Izibonelelo

Nanotic NanoLib C++ Programming [pdf] Incwadi yokusebenzisa
I-NanoLib C Programming, C Programming, Programming

Iimbekiselo

Shiya uluvo

Idilesi yakho ye-imeyile ayizupapashwa. Iindawo ezifunekayo ziphawulwe *