Nanotic NanoLib C++ programmēšana

Informācija par produktu
Specifikācijas
- Produkta nosaukums: NanoLib
- Programmēšana Valoda: C++
- Produkta versija: 1.3.0
- Lietotāja rokasgrāmatas versija: 1.4.2
NanoLib bibliotēka ir paredzēta vadības programmatūras programmēšanai Nanotec kontrolleriem. Tas nodrošina lietotāja saskarni, pamatfunkcijas un saziņas bibliotēkas, lai atvieglotu vadības lietojumprogrammu izstrādi.
Produkta lietošanas instrukcijas
- Pirms sākat:
- Pārliecinieties, vai jūsu sistēma atbilst rokasgrāmatā norādītajām aparatūras prasībām. Šī produkta paredzētā auditorija ietver izstrādātājus, kas vēlas izveidot vadības programmatūru Nanotec kontrolleriem.
- Darba sākšana:
- Lai sāktu lietot NanoLib, rīkojieties šādi:
- Sāciet ar NanoLib importēšanu savā projektā.
- Pēc vajadzības konfigurējiet projekta iestatījumus.
- Izveidojiet savu projektu, lai iekļautu NanoLib funkcijas.
- Projektu izveide:
- Varat izveidot projektus gan Windows, gan Linux vidēm. Izpildiet katras platformas rokasgrāmatā sniegtos īpašos norādījumus.
- Klases/funkcijas Atsauces:
- Skatiet lietotāja rokasgrāmatu, lai iegūtu detalizētu rokasgrāmatu par klasēm un funkcijām, kas pieejamas NanoLib vadības programmatūras programmēšanai.
FAQ
- J: Kāds ir NanoLib mērķis?
- A: NanoLib ir Nanotec kontrolleru vadības programmatūras programmēšanas bibliotēka, kas nodrošina būtiskas funkcijas un komunikācijas iespējas.
- J: Kā es varu sākt darbu ar NanoLib?
- A: Sāciet, importējot NanoLib savā projektā, konfigurējot projekta iestatījumus un veidojot projektu, lai izmantotu NanoLib funkcijas.
“`
Lietotāja rokasgrāmata NanoLib
C++
Derīgs ar produkta versiju 1.3.0
Lietotāja rokasgrāmatas versija: 1.4.2
Dokumenta mērķis un konvencijas
Šajā dokumentā ir aprakstīta NanoLib bibliotēkas iestatīšana un lietošana, un tajā ir ietverta atsauce uz visām klasēm un funkcijām, lai programmētu savu vadības programmatūru Nanotec kontrolleriem. Mēs izmantojam šādus burtveidolus:
Pasvītrots teksts apzīmē savstarpējo atsauci vai hipersaiti.
Examp1. leņķis: precīzus norādījumus par NanoLibAccessor skatiet sadaļā Iestatīšana. Piemamp2. leņķis: Instalējiet Ixxat draiveri un pievienojiet CAN-USB adapteri. Slīpiskais teksts nozīmē: Šis ir nosaukts objekts, izvēlnes ceļš / vienums, cilne / file nosaukums vai (ja nepieciešams) izteiciens svešvalodā.
Examp1. leņķis: atlasiet File > Jauns > Tukšs dokuments. Atveriet cilni Rīks un atlasiet Komentēt. Piemample 2: Šis dokuments iedala lietotājus (= Nutzer; usuario; utente; utilisateur; utente utt.) no:
– Trešās puses lietotājs (= Drittnutzer; tercero usuario; terceiro utente; tiers utilisateur; terzo utente utt.). – Gala lietotājs (= Endnutzer; usuario final; utente final; utilisateur final; utente finale utt.).
Kurjers atzīmē kodu blokus vai programmēšanas komandas. Piemample 1: izmantojot Bash, izsauciet sudo make install, lai kopētu koplietotos objektus; pēc tam izsauciet ldconfig. Piemample 2: izmantojiet šo NanoLibAccessor funkciju, lai mainītu NanoLib reģistrēšanas līmeni:
// ***** C++ variants *****
void setLoggingLevel(LogLevel līmenis);
Treknrakstā ir uzsvērti atsevišķi kritiski svarīgi vārdi. Alternatīvi, izsaukuma zīmes iekavās uzsver kritisko(!) nozīmi.
Example 1: Aizsargājiet sevi, citus un savu aprīkojumu. Ievērojiet mūsu vispārīgos drošības norādījumus, kas parasti attiecas uz visiem Nanotec produktiem.
Examp2. punkts: Savas aizsardzības nolūkos ievērojiet arī īpašus drošības norādījumus, kas attiecas uz šo konkrēto produktu. Darbības vārds līdzklikšķināt nozīmē klikšķi, izmantojot peles sekundāro taustiņu, lai atvērtu konteksta izvēlni utt.
Example 1: Kopā noklikšķiniet uz file, izvēlieties Pārdēvēt un pārdēvējiet file. Piemamp2. leņķis: Lai pārbaudītu rekvizītus, kopā noklikšķiniet uz file un izvēlieties Rekvizīti.
Versija: doc 1.4.2 / NanoLib 1.3.0
4
Pirms sākat
Pirms sākat lietot NanoLib, sagatavojiet datoru un uzziniet par paredzēto lietojumu un bibliotēkas ierobežojumiem.
2.1 Sistēmas un aparatūras prasības

PAZIŅOJUMS Traucējumi 32 bitu darbības vai pārtrauktas sistēmas dēļ! Izmantojiet un pastāvīgi uzturiet 64 bitu sistēmu. Ievērojiet oriģinālā aprīkojuma ražotāju pārtraukšanas un ~ instrukcijas.
NanoLib 1.3.0 atbalsta visus Nanotec produktus ar CANopen, Modbus RTU (arī USB virtuālajā com portā), Modbus TCP, EtherCat un Profinet. Vecākiem NanoLibs: skatiet izmaiņu žurnālu izdrukā. Tikai jūs riskējat: mantotās sistēmas lietošana. Piezīme. Izpildiet derīgus OEM norādījumus, lai iestatītu pēc iespējas mazāku latentumu, ja rodas problēmas, izmantojot FTDI balstītu USB adapteri.
Prasības (64 bitu sistēma obligāta)
Windows 10 vai 11 ar Visual Studio 2019 versiju 16.8 vai jaunāku un Windows SDK 10.0.20348.0 (versija 2104) vai jaunāku
C++ atkārtoti izplatāms 2017. gada vai jaunākas versijas CANopen: Ixxat VCI vai PCAN pamata draiveris (pēc izvēles) EtherCat modulis / Profinet DCP: Npcap vai WinPcap RESTful modulis: Npcap, WinPcap vai administratora atļauja
sazināties ar Ethernet bootloader
Linux ar Ubuntu 20.04 LTS līdz 24 (visi x64 un arm64)
Kodola galvenes un libpopt-dev pakete Profinet DCP: CAP_NET_ADMIN un CAP_NET_RAW
saites CANopen: Ixxat ECI draiveris vai Peak PCAN-USB adapteris EtherCat: CAP_NET_ADMIN, CAP_NET_RAW un
CAP_SYS_NICE spējas RESTful: CAP_NET_ADMIN spēja sazināties ar Eth-
ernet bootloaders (ieteicams arī: CAP_NET_RAW)
Valoda, lauka kopnes adapteri, kabeļi
C++ GCC 7 vai jaunāka versija (Linux)
EtherCAT: Ethernet kabelis VCP / USB centrmezgls: tagad vienots USB USB lielapjoma atmiņa: USB kabelis REST: Ethernet kabelis CANopen: Ixxat USB-to-CAN V2; Na-
notec ZK-USB-CAN-1, Peak PCANUSB adapteris Nav Ixxat atbalsta Ubuntu uz arm64
Modbus RTU: Nanotec ZK-USB-RS485-1 vai līdzvērtīgs adapteris; USB kabelis virtuālajā sakaru portā (VCP)
Modbus TCP: Ethernet kabelis saskaņā ar produkta datu lapu
2.2. Paredzētā izmantošana un mērķauditorija
NanoLib ir programmu bibliotēka un programmatūras komponents, kas paredzēts Nanotec kontrolleru darbībai un saziņai ar tiem plašā rūpniecisko lietojumu klāstā un paredzēts tikai atbilstoši kvalificētiem programmētājiem.
Tā kā reāllaikā nav spējīga aparatūra (PC) un operētājsistēma, NanoLib nav paredzēts lietošanai lietojumprogrammās, kurām nepieciešama sinhrona vairāku asu kustība vai kuras parasti ir jutīgas pret laiku.
Nekādā gadījumā jūs nedrīkstat integrēt NanoLib kā drošības sastāvdaļu izstrādājumā vai sistēmā. Piegādājot galalietotājiem, katram produktam ar Nanotec ražotu komponentu ir jāpievieno attiecīgi brīdinājuma paziņojumi un instrukcijas drošai lietošanai un drošai darbībai. Visi Nanotec izdotie brīdinājumi ir jānodod tieši galalietotājam.
2.3. Piegādes un garantijas apjoms
NanoLib ir *.zip mape no mūsu lejupielādes webvietne EMEA/APAC vai AMERIKA. Pirms iestatīšanas pareizi saglabājiet un izpakojiet lejupielādi. NanoLib pakete satur:
Versija: doc 1.4.2 / NanoLib 1.3.0
5
2 Pirms sākat
Interfeisa galvenes kā avota kods (API)
Galvenās funkcijas kā bibliotēkas binārā formātā: nano-
Bibliotēkas, kas atvieglo saziņu: nanolibm_ lib.dll
[yourfieldbus].dll utt.Exampprojekts: Piemample.sln (Visual Studio
projekts) un bijample.cpp (galvenais file)
Lai noteiktu garantijas apjomu, lūdzu, ievērojiet a) mūsu noteikumus un nosacījumus, kas attiecas uz EMEA/APAC vai AMERIKA, un b) visus licences noteikumus. Piezīme: Nanotec nav atbildīgs par nepareizu vai neatbilstošu trešo pušu aprīkojuma kvalitāti, apstrādi, uzstādīšanu, darbību, lietošanu un apkopi! Lai nodrošinātu pienācīgu drošību, vienmēr ievērojiet spēkā esošās OEM instrukcijas.
Versija: doc 1.4.2 / NanoLib 1.3.0
6
NanoLib arhitektūra
NanoLib modulārā programmatūras struktūra ļauj sakārtot brīvi pielāgojamas motora kontrollera / lauka kopnes funkcijas ap stingri iepriekš izveidotu kodolu. NanoLib satur šādus moduļus:
Lietotāja saskarne (API)
NanoLib kodols
Interfeiss un palīgklases, kuras Bibliotēkas, kuras
Sakaru bibliotēkas Fieldbus specifiskas bibliotēkas, kuras
piekļūtu jūsu kontroliera ieviest API funkcionalitāti do interfeisu starp NanoLib
OD (objektu vārdnīca)
mijiedarboties ar autobusu bibliotēkām.
kodols un kopņu aparatūra.
pamatojoties uz NanoLib pamatfunkciju
nacionālajām prasībām.
3.1 Lietotāja saskarne
Lietotāja saskarne sastāv no galvenes saskarnes files, ko varat izmantot, lai piekļūtu kontrollera parametriem. Lietotāja saskarnes klases, kas aprakstītas sadaļā Klases/funkcijas, ļauj:
Savienojiet gan ar aparatūru (laukkopnes adapteri), gan ar kontroliera ierīci. Piekļūstiet ierīces OD, lai lasītu/rakstītu kontrollera parametrus.
3.2 NanoLib kodols
NanoLib kodols tiek piegādāts kopā ar importēšanas bibliotēku nanolib.lib. Tā īsteno lietotāja interfeisa funkcionalitāti un ir atbildīga par:
Sakaru bibliotēku ielāde un pārvaldība. Lietotāja saskarnes funkcionalitātes nodrošināšana NanoLibAccessor. Šis saziņas ieejas punkts
soda operāciju kopu, ko varat izpildīt NanoLib pamata un sakaru bibliotēkās.
3.3. Sakaru bibliotēkas
Papildus nanotec.services.nanolib.dll (noderīgs jūsu izvēles Plug & Drive Studio), NanoLib piedāvā šādas saziņas bibliotēkas:
nanolibm_canopen.dll nanolibm_modbus.dll
nanolibm_ethercat.dll nanolibm_restful-api.dll
nanolibm_usbmmsc.dll nanolibm_profinet.dll
Visas bibliotēkas veido aparatūras abstrakcijas slāni starp kodolu un kontrolieri. Kodols tos ielādē startēšanas laikā no norādītās projekta mapes un izmanto, lai izveidotu saziņu ar kontrolieri, izmantojot atbilstošo protokolu.
Versija: doc 1.4.2 / NanoLib 1.3.0
7
Darba sākšana
Izlasiet, kā pareizi iestatīt NanoLib savai operētājsistēmai un kā pēc vajadzības pievienot aparatūru.
4.1 Sagatavojiet savu sistēmu
Pirms adaptera draiveru instalēšanas vispirms sagatavojiet datoru kopā ar operētājsistēmu. Lai sagatavotu datoru kopā ar savu Windows OS, instalējiet MS Visual Studio ar C++ paplašinājumiem. Lai instalētu Linux Bash make un gcc, izsauciet sudo apt install build-essentials. Pēc tam iespējojiet CAP_NET_ADMIN, CAP_NET_RAW un CAP_SYS_NICE iespējas lietojumprogrammai, kas izmanto NanoLib: 1. Izsauciet sudo setcap 'cap_net_admin,cap_net_raw,cap_sys_nice+eip'.
nosaukums>. 2. Tikai pēc tam instalējiet adaptera draiverus.
4.2. Instalējiet Ixxat adaptera draiveri operētājsistēmai Windows
Tikai pēc pienācīgas draivera instalēšanas varat izmantot Ixxat USB-CAN V2 adapteri. Izlasiet USB disku izstrādājuma rokasgrāmatu, lai uzzinātu, vai/kā aktivizēt virtuālo pieslēgumu (VCP). 1. Lejupielādējiet un instalējiet Ixxat VCI 4 draiveri operētājsistēmai Windows no www.ixxat.com. 2. Savienojiet Ixxat kompakto USB-CAN V2 adapteri ar datoru, izmantojot USB. 3. Izmantojot ierīču pārvaldnieku: pārbaudiet, vai draiveris un adapteris ir pareizi instalēti/atpazīti.
4.3. Instalējiet Peak adaptera draiveri operētājsistēmai Windows
Tikai pēc pienācīgas draivera instalēšanas varat izmantot Peak PCAN-USB adapteri. Izlasiet USB disku izstrādājuma rokasgrāmatu, lai uzzinātu, vai/kā aktivizēt virtuālo pieslēgumu (VCP). 1. Lejupielādējiet un instalējiet Windows ierīces draivera iestatīšanu (= instalācijas pakotni ar ierīces draiveriem, rīkiem un
API) no http://www.peak-system.com. 2. Savienojiet Peak PCAN-USB adapteri ar datoru, izmantojot USB. 3. Izmantojot ierīču pārvaldnieku: pārbaudiet, vai draiveris un adapteris ir pareizi instalēti/atpazīti.
4.4. Instalējiet Ixxat adaptera draiveri operētājsistēmai Linux
Tikai pēc pienācīgas draivera instalēšanas varat izmantot Ixxat USB-CAN V2 adapteri. Piezīme. Citiem atbalstītajiem adapteriem ir nepieciešamas jūsu atļaujas no sudo chmod +777/dev/ttyACM* (* ierīces numurs). Izlasiet USB disku izstrādājuma rokasgrāmatu, lai uzzinātu, vai/kā aktivizēt virtuālo pieslēgumu (VCP). 1. Instalējiet programmatūru, kas nepieciešama ECI draiverim un demonstrācijas lietojumprogrammai:
sudo apt-get update apt-get install libusb-1.0-0-dev libusb-0.1-4 libc6 libstdc++6 libgcc1 buildessential
2. Lejupielādējiet ECI-for-Linux draiveri no www.ixxat.com. Izsaiņojiet to, izmantojot:
unzip eci_driver_linux_amd64.zip
3. Instalējiet draiveri, izmantojot:
cd /EciLinux_amd/src/KernelModule sudo make install-usb
4. Pārbaudiet veiksmīgu draivera instalēšanu, kompilējot un startējot demonstrācijas lietojumprogrammu:
cd /EciLinux_amd/src/EciDemos/ sudo make cd /EciLinux_amd/bin/release/ ./LinuxEciDemo
Versija: doc 1.4.2 / NanoLib 1.3.0
8
4 Darba sākšana
4.5. Instalējiet Peak adaptera draiveri operētājsistēmai Linux
Tikai pēc pienācīgas draivera instalēšanas varat izmantot Peak PCAN-USB adapteri. Piezīme. Citiem atbalstītajiem adapteriem ir nepieciešamas jūsu atļaujas no sudo chmod +777/dev/ttyACM* (* ierīces numurs). Izlasiet USB disku izstrādājuma rokasgrāmatu, lai uzzinātu, vai/kā aktivizēt virtuālo pieslēgumu (VCP). 1. Pārbaudiet, vai jūsu Linux ir kodola galvenes: ls /usr/src/linux-headers-`uname -r`. Ja nē, instalējiet
tie: sudo apt-get install linux-headers-`uname -r` 2. Tikai tagad instalējiet paketi libpopt-dev: sudo apt-get install libpopt-dev 3. Lejupielādējiet nepieciešamo draivera pakotni (peak-linux-driver-xxx.tar.gz) no www.peak-system.com. 4. Lai to izsaiņotu, izmantojiet: tar xzf peak-linux-driver-xxx.tar.gz 5. Izpakotajā mapē: kompilējiet un instalējiet draiverus, PCAN bāzes bibliotēku utt.: izveidojiet visu.
sudo make install 6. Lai pārbaudītu funkciju, pievienojiet PCAN-USB adapteri.
a) Pārbaudiet kodola moduli:
lsmod | grep pcan b) … un koplietotā bibliotēka:
ls -l /usr/lib/libpcan*
Piezīme. Ja rodas USB3 problēmas, izmantojiet USB2 portu.
4.6 Pievienojiet aparatūru
Lai varētu palaist NanoLib projektu, savienojiet saderīgu Nanotec kontrolleri ar datoru, izmantojot adapteri. 1. Izmantojot piemērotu kabeli, pievienojiet adapteri kontrollerim. 2. Pievienojiet adapteri datoram saskaņā ar adaptera datu lapu. 3. Ieslēdziet kontrolieri, izmantojot piemērotu barošanas avotu. 4. Ja nepieciešams, mainiet Nanotec kontrollera sakaru iestatījumus, kā norādīts tā izstrādājuma rokasgrāmatā.
4.7. Ielādēt NanoLib
Lai sāktu ar ātriem un vienkāršiem pamatiem, varat (bet nedrīkst) izmantot mūsu bijušoample projekts. 1. Atkarībā no jūsu reģiona: lejupielādējiet NanoLib no mūsu webvietne EMEA/APAC vai AMERIKA. 2. Izvelciet iepakojumu files / mapes un atlasiet vienu opciju: Ātrai un vienkāršai pamatinformācijai skatiet sadaļu Example projekts. Papildu pielāgošanai sistēmā Windows: skatiet Sava Windows projekta izveide. Uzlabotai pielāgošanai operētājsistēmā Linux: skatiet sadaļu Sava Linux projekta izveide.
Versija: doc 1.4.2 / NanoLib 1.3.0
9
Sākot bijušoample projekts
Ja NanoLib ir pareizi ielādēts, bijušaisample projekts parāda NanoLib lietošanu ar Nanotec kontrolieri. Piezīme: par katru darbību sniedziet komentārus norādītajā piemample kods izskaidro izmantotās funkcijas. Bijušaisampprojekts sastāv no: `*_functions_example.*' files, kas satur NanoLib interfeisa funkciju `*_callback_ex implementācijasample.*' files, kas satur dažādu atzvanīšanas (skenēšanas, datu un
reģistrēšana) 'menu_*.*' file, kurā ir izvēlnes loģika un kods Example.* file, kas ir galvenā programma, kas veido izvēlni un inicializē visus izmantotos parametrus Sampler_example.* file, kas satur example īstenošana sampler lietojums. Jūs varat atrast vairāk examples, ar dažām kustību komandām dažādiem darbības režīmiem, zināšanu bāzē vietnē nanotec.com. Visi ir izmantojami operētājsistēmā Windows vai Linux.
Operētājsistēmā Windows ar Visual Studio 1. Atveriet Example.sln file. 2. Atveriet example.cpp. 3. Apkopojiet un palaidiet exampkodu.
Operētājsistēmā Linux, izmantojot Bash 1. Izpakojiet avotu file, dodieties uz mapi ar izspiestu saturu. Galvenais file bijušajamample ir
example.cpp. 2. Bashā zvaniet:
a. “sudo make install”, lai kopētu koplietotos objektus un izsauktu ldconfig. b. “Izveidojiet visu”, lai izveidotu testa izpildāmo failu. 3. Mapē bin ir izpildāms fails example file. Pēc bash: dodieties uz izvades mapi un ierakstiet ./example. Ja kļūda nenotiek, jūsu koplietotie objekti tagad ir pareizi instalēti un jūsu bibliotēka ir gatava lietošanai. Ja kļūda skan ./example: kļūda, ielādējot koplietotās bibliotēkas: libnanolib.so: nevar atvērt koplietoto objektu file: Tāda nav file vai direktorijā, koplietoto objektu instalēšana neizdevās. Šādā gadījumā veiciet tālāk norādītās darbības. 4. Izveidojiet jaunu mapi mapē /usr/local/lib (nepieciešamas administratora tiesības). Ievadiet bash, tādējādi ierakstiet:
sudo mkdir /usr/local/lib/nanotec
5. Kopēt visus koplietotos objektus no zip filelib mape:
instalēt ./lib/*.so /usr/local/lib/nanotec/
6. Pārbaudiet mērķa mapes saturu, izmantojot:
ls -al /usr/local/lib/nanotec/
Tajā jānorāda koplietotais objekts files no lib mapes. 7. Palaidiet ldconfig šajā mapē:
sudo ldconfig /usr/local/lib/nanotec/
Bijušaisample ir ieviesta kā CLI lietojumprogramma un nodrošina izvēlnes saskarni. Izvēlnes ieraksti ir balstīti uz kontekstu un tiks iespējoti vai atspējoti atkarībā no konteksta stāvokļa. Tie piedāvā iespēju izvēlēties un izpildīt dažādas bibliotēkas funkcijas, ievērojot tipisku kontroliera darbplūsmu: 1. Pārbaudiet, vai datorā nav pievienota aparatūra (adapteri) un uzskaitiet tos. 2. Izveidojiet savienojumu ar adapteri. 3. Skenējiet kopni, lai atrastu pievienotās kontrollera ierīces. 4. Izveidojiet savienojumu ar ierīci.
Versija: doc 1.4.2 / NanoLib 1.3.0
10
5 Palaižot bijušoample projekts
5. Pārbaudiet vienu vai vairākas bibliotēkas funkcijas: Lasiet/rakstiet no/uz kontrollera objektu vārdnīcu, atjauniniet programmaparatūru, augšupielādējiet un palaidiet NanoJ programmu, iedarbiniet motoru un noregulējiet to, konfigurējiet un izmantojiet reģistrēšanu/-es.ampler.
6. Aizveriet savienojumu, vispirms ar ierīci, pēc tam ar adapteri.
Versija: doc 1.4.2 / NanoLib 1.3.0
11
Sava Windows projekta izveide
Izveidojiet, kompilējiet un palaidiet savu Windows projektu, lai izmantotu NanoLib.
6.1 Importēt NanoLib
Importējiet NanoLib galveni files un bibliotēkas, izmantojot MS Visual Studio.
1. Atveriet Visual Studio. 2. Izmantojot Izveidot jaunu projektu > Console App C++ > Tālāk: atlasiet projekta veidu. 3. Piešķiriet savam projektam nosaukumu (šeit: NanolibTest), lai Solution Explorer izveidotu projekta mapi. 4. Izvēlieties Finish. 5. Atveriet logus file Explorer un dodieties uz jauno izveidoto projekta mapi. 6. Izveidojiet divas jaunas mapes, inc un lib. 7. Atveriet NanoLib pakotnes mapi. 8. No turienes: kopējiet galveni files no mapes iekļaut jūsu projekta mapē inc un visus .lib un .dll
files uz jūsu jauno projektu mapi lib. 9. Pārbaudiet, vai projekta mapē nav pareizas struktūras, piemēram,ample:
ect mape pareizai struktūrai:
. NanolibTest inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result_od_entry.hpp lib nanolibm_canopen.dll nanolib.dll … nanolib.lib NanolibTest.cpp NanolibTest.vcxproj NanolibTest.vcxproj.testtersv NanolibTest.vcxproj. NanolibTest.sln
6.2 Konfigurējiet savu projektu
Izmantojiet risinājumu pārlūku MS Visual Studio, lai iestatītu NanoLib projektus. Piezīme. Lai nodrošinātu pareizu NanoLib darbību, Visual C++ projekta iestatījumos atlasiet laidiena (nevis atkļūdošanas!) konfigurāciju; pēc tam izveidojiet un saistiet projektu ar C++ pārdalāmo VC izpildlaikiem [2022].
1. Risinājumu pārlūkprogrammā: dodieties uz sava projekta mapi (šeit: NanolibTest). 2. Kopā noklikšķiniet uz mapes, lai atvērtu konteksta izvēlni. 3. Izvēlieties Properties (Rekvizīti). 4. Aktivizējiet Visas konfigurācijas un Visas platformas. 5. Atlasiet C/C++ un dodieties uz Papildu iekļaušanas direktoriji. 6. Ievietot: $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) 7. Izvēlieties Linker un dodieties uz Papildu bibliotēkas direktorijiem. 8. Ievietot: $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) 9. Paplašiniet Linker un atlasiet Input. 10.Atveriet sadaļu Papildu atkarības un ievietojiet: nanolib.lib;%(AdditionalDependencies) 11.Apstipriniet, izmantojot OK.
Versija: doc 1.4.2 / NanoLib 1.3.0
12
6 Sava Windows projekta izveide
12.Atveriet sadaļu Konfigurācija > C++ > Valoda > Valodas standarts > ISO C++17 standarts un iestatiet valodas standartu uz C++17 (/std:c++17).
6.3. Izveidojiet savu projektu
Veidojiet savu NanoLib projektu programmā MS Visual Studio. 1. Atveriet galveno *.cpp file (šeit: nanolib_example.cpp) un rediģējiet kodu, ja nepieciešams. 2. Izvēlieties Build > Configuration Manager. 3. Mainiet Active Solution platformas uz x64. 4. Apstipriniet, izmantojot Aizvērt. 5. Atlasiet Veidot > Veidot risinājumu. 6. Nav kļūdu? Pārbaudiet, vai jūsu apkopotā izvade sniedz pienācīgus pārskatus:
1>—— Tīrīšana sākta: projekts: NanolibTest, konfigurācija: atkļūdošanas x64 —–========== Tīrīšana: 1 izdevās, 0 neizdevās, 0 izlaists ==========
Versija: doc 1.4.2 / NanoLib 1.3.0
13
7 Sava Linux projekta izveide
7 Sava Linux projekta izveide
Izveidojiet, kompilējiet un palaidiet savu Linux projektu, lai izmantotu NanoLib. 1. Izslēgtā NanoLib instalācijas komplektā: atveriet /nanotec_nanolib. 2. Atrodiet visus koplietotos objektus tar.gz file. 3. Atlasiet vienu opciju: Instalējiet katru lib vai nu ar Markfile vai ar roku.
7.1. Instalējiet koplietotos objektus ar Makefile
Izmantojiet Makefile ar Linux Bash, lai automātiski instalētu visus noklusējuma *.so files. 1. Izmantojot Bash: dodieties uz mapi, kurā atrodas markafile. 2. Kopēt koplietotos objektus, izmantojot:
sudo make install 3. Apstipriniet, izmantojot:
ldconfig
7.2. Instalējiet koplietotos objektus ar rokām
Izmantojiet Bash, lai instalētu visu *.so files no NanoLib manuāli. 1. Izmantojot Bash: izveidojiet jaunu mapi mapē /usr/local/lib. 2. Nepieciešamas administratora tiesības! Veids:
sudo mkdir /usr/local/lib/nanotec 3. Pārejiet uz izspiestās instalācijas pakotnes mapi. 4. Kopēt visus koplietotos objektus no lib mapes, izmantojot:
instalējiet ./nanotec_nanolib/lib/*.so /usr/local/lib/nanotec/ 5. Pārbaudiet mērķa mapes saturu, izmantojot:
ls -al /usr/local/lib/nanotec/ 6. Pārbaudiet, vai sarakstā ir visi koplietotie objekti no lib mapes. 7. Palaidiet ldconfig šajā mapē, izmantojot:
sudo ldconfig /usr/local/lib/nanotec/
7.3 Izveidojiet savu projektu
Ja jūsu koplietotie objekti ir instalēti: izveidojiet jaunu projektu savam Linux NanoLib. 1. Izmantojot Bash: izveidojiet jaunu projekta mapi (šeit: NanoLibTest), izmantojot:
mkdir NanoLibTest cd NanoLibTest
2. Nokopējiet galveni files uz iekļauto mapi (šeit: inc), izmantojot: mkdir inc cp / FILE IS>/nanotec_nanolib/inc/*.hpp inc
3. Izveidojiet galveno file (NanoLibTest.cpp), izmantojot: #include “accessor_factory.hpp” #include
Versija: doc 1.4.2 / NanoLib 1.3.0
14
7 Sava Linux projekta izveide
int main(){ nlc::NanoLibAccessor *accessor = getNanoLibAccessor();
nlc::ResultBusHwIds rezultāts = accessor->listAvailableBusHardware();
if(result.hasError()) { std::cout << result.getError() << std::endl; }
else{ std::cout << “Veiksme” << std::endl; }
dzēst piekļuvēju; atgriezties 0; }
4. Pārbaudiet, vai projekta mapē nav pareizas struktūras:

. NanoLibTest
inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result.hpp NanoLibTest.cpp
7.4. Kompilējiet un pārbaudiet savu projektu
Sagatavojiet savu Linux NanoLib lietošanai, izmantojot Bash.
1. Via Bash: apkopojiet galveno file izmantojot:
g++ -Siena -Wextra -pedantisks -I./inc -c NanoLibTest.cpp -o NanoLibTest
2. Saistiet izpildāmo failu kopā, izmantojot:
g++ -Siena -Wextra -pedantisks -I./inc -o tests NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
3. Palaidiet testa programmu, izmantojot:
./test
4. Pārbaudiet, vai jūsu Bašs pareizi ziņo:
panākumus
Versija: doc 1.4.2 / NanoLib 1.3.0
15
8 Klases/funkcijas atsauces
8 Klases/funkcijas atsauces
Šeit atrodiet NanoLib lietotāja interfeisa klašu un to dalībnieku funkciju sarakstu. Tipisks funkcijas apraksts ietver īsu ievadu, funkcijas definīciju un parametru / atgriešanas sarakstu:
ExampleFunction () Īsumā norāda, ko funkcija dara.
virtual void nlc::NanoLibAccessor::ExampleFunction (Param_a const & param_a, Param_b const & param_B)
Parametri param_a param_b
Atgriež ResultVoid
Papildu komentārs, ja nepieciešams. Papildu komentārs, ja nepieciešams.
8.1 NanoLibAccessor
Interfeisa klase tiek izmantota kā ieejas punkts NanoLib. Tipiska darbplūsma izskatās šādi:
1. Sāciet ar aparatūras skenēšanu, izmantojot NanoLibAccessor.listAvailableBusHardware (). 2. Iestatiet sakaru iestatījumus, izmantojot BusHardwareOptions (). 3. Atveriet aparatūras savienojumu ar NanoLibAccessor.openBusHardwareWithProtocol (). 4. Skenējiet kopni, lai atrastu pievienotās ierīces, izmantojot NanoLibAccessor.scanDevices (). 5. Pievienojiet ierīci ar NanoLibAccessor.addDevice (). 6. Izveidojiet savienojumu ar ierīci, izmantojot NanoLibAccessor.connectDevice (). 7. Pēc darbības pabeigšanas atvienojiet ierīci, izmantojot NanoLibAccessor.disconnectDevice (). 8. Noņemiet ierīci, izmantojot NanoLibAccessor.removeDevice (). 9. Aizveriet aparatūras savienojumu ar NanoLibAccessor.closeBusHardware ().
NanoLibAccessor ir šādas publiskās dalībnieka funkcijas:
listAvailableBusHardware () Izmantojiet šo funkciju, lai uzskaitītu pieejamo lauka kopnes aparatūru.
virtuālais ResultBusHwIds nlc::NanoLibAccessor::listAvailableBusHardware ()
Atgriež ResultBusHwIds
Nodrošina lauka kopnes ID masīvu.
openBusHardwareWithProtocol () Izmantojiet šo funkciju, lai savienotu kopnes aparatūru.
virtuālais ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (BusHardwareId const & busHwId, BusHardwareOptions const & busHwOpt)
Parametri busHwId busHwOpt
Atgriež ResultVoid
Norāda lauka kopni, kas jāatver. Norāda lauka kopnes atvēršanas opcijas. Apstiprina, ka ir palaista tukšuma funkcija.
isBusHardwareOpen () Izmantojiet šo funkciju, lai pārbaudītu, vai lauka kopnes aparatūras savienojums ir atvērts.
virtuālais ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (const BusHardwareId & busHwId, const BusHardwareOptions & busHwOpt)
Versija: doc 1.4.2 / NanoLib 1.3.0
16
8 Klases/funkcijas atsauces
Parametri BusHardwareId Atgriež patiesu
viltus
Norāda katru lauka kopni, kas jāatver. Aparatūra ir atvērta. Aparatūra ir slēgta.
getProtocolSpecificAccessor () Izmantojiet šo funkciju, lai iegūtu protokolam raksturīgu piekļuves objektu.
virtuālais ResultVoid nlc::NanoLibAccessor::getProtocolSpecificAccessor (BusHardwareId const & busHwId)
Parametri busHwId atgriež ResultVoid
Norāda lauka kopni, kurai iegūt piederumu. Apstiprina, ka ir palaista tukšuma funkcija.
getProfinetDCP () Izmantojiet šo funkciju, lai atgrieztu atsauci uz Profinet DCP saskarni.
virtuālais ProfinetDCP un getProfinetDCP ()
Atgriež ProfinetDCP
getSamplerInterface () Izmantojiet šo funkciju, lai iegūtu atsauci uz sampler interfeiss.
virtuālā SamplerInterface & getSamplerInterface ()
Atgriež SamplerInterfeiss
Attiecas uz sampler interfeisa klase.
setBusState () Izmantojiet šo funkciju, lai iestatītu kopnes protokolam raksturīgo stāvokli.
virtuālais ResultVoid nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & status)
Parametru busHwId stāvoklis
Atgriež ResultVoid
Norāda lauka kopni, kas jāatver. Piešķir kopnei raksturīgu stāvokli kā virknes vērtību. Apstiprina, ka ir palaista tukšuma funkcija.
scanDevices () Izmantojiet šo funkciju, lai meklētu ierīces tīklā.
virtuālie ResultDeviceIds nlc::NanoLibAccessor::scanDevices (konst BusHardwareId & busHwId, NlcScanBusCallback*)
Parametri busHwId atzvanīšana
Atgriež ResultDeviceIds IOError
Norāda skenējamo lauka kopni. NlcScanBusCallback progresa izsekotājs. Nodrošina ierīces ID masīvu. Informē, ka ierīce nav atrasta.
Versija: doc 1.4.2 / NanoLib 1.3.0
17
8 Klases/funkcijas atsauces
pievienot ierīci ()
Izmantojiet šo funkciju, lai NanoLib iekšējo ierīču sarakstam pievienotu kopnes ierīci, kas aprakstīta ar deviceId, un atgrieztu tai deviceHandle.
virtuālais ResultDeviceHandle nlc::NanoLibAccessor::addDevice (DeviceId const & deviceId)
Parametri deviceId atgriež ResultDeviceHandle
Norāda ierīci, kas jāpievieno sarakstam. Nodrošina ierīces rokturi.
connectDevice () Izmantojiet šo funkciju, lai savienotu ierīci pēc ierīcesRokturis.
virtuālais ResultVoid nlc::NanoLibAccessor::connectDevice (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultVoid
IOError
Norāda, ar kuru kopnes ierīci NanoLib savienojas. Apstiprina, ka ir palaista tukšuma funkcija. Informē, ka ierīce nav atrasta.
getDeviceName () Izmantojiet šo funkciju, lai iegūtu ierīces nosaukumu pēc deviceHandle.
virtuālā ResultString nlc::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultString
Norāda, kurai kopnes ierīcei NanoLib tiek piešķirts nosaukums. Piegādā ierīču nosaukumus kā virkni.
getDeviceProductCode () Izmantojiet šo funkciju, lai iegūtu ierīces produkta kodu pēc deviceHandle.
virtuālais ResultInt nlc::NanoLibAccessor::getDeviceProductCode (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultInt
Norāda, kurai kopnes ierīcei NanoLib saņem produkta kodu. Piegādā produktu kodus kā veselu skaitli.
getDeviceVendorId () Izmantojiet šo funkciju, lai iegūtu ierīces pārdevēja ID pēc deviceHandle.
virtuālais ResultInt nlc::NanoLibAccessor::getDeviceVendorId (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultInt
Resurss nav pieejams
Norāda, kurai kopnes ierīcei NanoLib saņem piegādātāja ID. Piegādā piegādātāja ID kā veselu skaitli. Informē, ka dati nav atrasti.
Versija: doc 1.4.2 / NanoLib 1.3.0
18
8 Klases/funkcijas atsauces
getDeviceId () Izmantojiet šo funkciju, lai iegūtu konkrētas ierīces ID no NanoLib iekšējā saraksta.
virtuālais ResultDeviceId nlc::NanoLibAccessor::getDeviceId (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultDeviceId
Norāda, kurai kopnes ierīcei NanoLib iegūst ierīces ID. Nodrošina ierīces ID.
getDeviceIds () Izmantojiet šo funkciju, lai iegūtu visu ierīču ID no NanoLib iekšējā saraksta.
virtuālais ResultDeviceIds nlc::NanoLibAccessor::getDeviceIds ()
Atgriež ResultDeviceIds
Nodrošina ierīces ID sarakstu.
getDeviceUid () Izmantojiet šo funkciju, lai iegūtu ierīces unikālo ID (96 biti / 12 baiti), izmantojot deviceHandle.
virtuālais ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (DeviceHandle const deviceHandle)
Parametri deviceHandle atgriež ResultArrayByte
Resurss nav pieejams
Norāda, kurai kopnes ierīcei NanoLib iegūst unikālo ID. Nodrošina unikālus ID kā baitu masīvu. Informē, ka dati nav atrasti.
getDeviceSerialNumber () Izmantojiet šo funkciju, lai iegūtu ierīces sērijas numuru pēc deviceHandle.
virtuālā ResultString NanolibAccessor::getDeviceSerialNumber (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultString
Resurss nav pieejams
Norāda, kuras kopnes ierīces NanoLib saņem sērijas numuru. Piegādā sērijas numurus kā virkni. Informē, ka dati nav atrasti.
getDeviceHardwareGroup () Izmantojiet šo funkciju, lai iegūtu kopnes ierīces aparatūras grupu pēc ierīcesHandle.
virtuālais ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareGroup (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultInt
Norāda, kurai kopnes ierīcei NanoLib iegūst aparatūras grupu.
Piegādā aparatūras grupas kā veselu skaitli.
getDeviceHardwareVersion () Izmantojiet šo funkciju, lai iegūtu kopnes ierīces aparatūras versiju pēc ierīcesHandle.
virtuālais ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareVersion (DeviceHandle const deviceHandle)
Versija: doc 1.4.2 / NanoLib 1.3.0
19
8 Klases/funkcijas atsauces
Parametri ierīceRokturis
Atgriežas
ResultString ResourceNav pieejams
Norāda, kurai kopnes ierīcei NanoLib iegūst aparatūras versiju. Piegādā ierīču nosaukumus kā virkni. Informē, ka dati nav atrasti.
getDeviceFirmwareBuildId () Izmantojiet šo funkciju, lai iegūtu kopnes ierīces programmaparatūras būvējuma ID pēc deviceHandle.
virtuālais ResultDeviceId nlc::NanoLibAccessor::getDeviceFirmwareBuildId (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultString
Norāda, kurai kopnes ierīcei NanoLib iegūst programmaparatūras būvējuma ID.
Piegādā ierīču nosaukumus kā virkni.
getDeviceBootloaderVersion () Izmantojiet šo funkciju, lai iegūtu kopnes ierīces sāknēšanas ielādes versiju pēc ierīcesHandle.
virtuālais ResultInt nlc::NanoLibAccessor::getDeviceBootloaderVersion (DeviceHandle const deviceHandle)
Parametri ierīceRokturis
Atgriežas
ResultInt ResourceNav pieejams
Norāda, kurai kopnes ierīcei NanoLib iegūst sāknēšanas ielādētāja versiju. Piegādā bootloader versijas kā veselu skaitli. Informē, ka dati nav atrasti.
getDeviceBootloaderBuildId () Izmantojiet šo funkciju, lai iegūtu kopnes ierīces sāknēšanas ielādētāja būvējuma ID pēc deviceHandle.
virtuālais ResultDeviceId nlc::NanoLibAccessor:: (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultString
Norāda, kurai kopnes ierīcei NanoLib iegūst sāknēšanas ielādētāja būvējuma ID.
Piegādā ierīču nosaukumus kā virkni.
rebootDevice () Izmantojiet šo funkciju, lai atsāknētu ierīci, izmantojot deviceHandle.
virtuālais ResultVoid nlc::NanoLibAccessor::rebootDevice (const DeviceHandle deviceHandle)
Parametri deviceHandle Returns ResultVoid
Norāda restartējamo lauka kopni. Apstiprina, ka ir palaista tukšuma funkcija.
getDeviceState () Izmantojiet šo funkciju, lai iegūtu ierīces protokolam raksturīgo stāvokli.
virtuālā ResultString nlc::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)
Parametri ierīceRokturis
Norāda, kurai kopnes ierīcei NanoLib iegūst statusu.
Versija: doc 1.4.2 / NanoLib 1.3.0
20
8 Klases/funkcijas atsauces
Atgriež ResultString
Piegādā ierīču nosaukumus kā virkni.
setDeviceState () Izmantojiet šo funkciju, lai iestatītu ierīces protokolam raksturīgo stāvokli.
virtuālais ResultVoid nlc::NanoLibAccessor::setDeviceState (const DeviceHandle deviceHandle, const std::string & status)
Parametri deviceRoktura stāvoklis
Atgriež ResultVoid
Norāda, kurai kopnes ierīcei NanoLib iestata stāvokli. Piešķir kopnei raksturīgu stāvokli kā virknes vērtību. Apstiprina, ka ir palaista tukšuma funkcija.
getConnectionState ()
Izmantojiet šo funkciju, lai iegūtu konkrētas ierīces pēdējo zināmo savienojuma stāvokli pēc deviceHandle (= atvienots, savienots, savienots sāknēšanas ielādētājs)
virtuālais ResultConnectionState nlc::NanoLibAccessor::getConnectionState (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultConnectionState
Norāda, kurai kopnes ierīcei NanoLib iegūst savienojuma stāvokli.
Nodrošina savienojuma stāvokli (= Atvienots, Savienots, ConnectedBootloader).
checkConnectionState ()
Tikai tad, ja pēdējais zināmais stāvoklis nebija Atvienots: izmantojiet šo funkciju, lai pārbaudītu un, iespējams, atjauninātu konkrētas ierīces savienojuma stāvokli pēc deviceHandle un pārbaudot vairākas režīmam raksturīgās darbības.
virtuālais ResultConnectionState nlc::NanoLibAccessor::checkConnectionState (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultConnectionState
Norāda, kurai kopnes ierīcei NanoLib pārbauda savienojuma stāvokli.
Nodrošina savienojuma stāvokli (= nav Atvienots).
assignObjectDictionary () Izmantojiet šo manuālo funkciju, lai ierīcei DeviceHandle piešķirtu objektu vārdnīcu (OD).
virtuālā ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)
Parametri deviceHandle objectVārdnīca
Atgriež ResultObjectDictionary
Norāda, kurai kopnes ierīcei NanoLib piešķir OD. Parāda objektu vārdnīcas rekvizītus.
autoAssignObjectDictionary ()
Izmantojiet šo automātismu, lai ļautu NanoLib ierīcei DeviceHandle piešķirt objektu vārdnīcu (OD). Atrodot un ielādējot piemērotu OD, NanoLib automātiski piešķir to ierīcei. Piezīme. Ja objektu bibliotēkā jau ir ielādēts saderīgs OD, NanoLib to automātiski izmantos, neskenējot iesniegto direktoriju.
virtuālā ResultObjectDictionary nlc::NanoLibAccessor::autoAssignObjectDictionary (DeviceHandle const deviceHandle, const std::string & dictionariesLocationPath)
Versija: doc 1.4.2 / NanoLib 1.3.0
21
8 Klases/funkcijas atsauces
Parametri ierīceRokturis
Atgriežas
vārdnīcasLocationPath ResultObjectDictionary
Norāda, kurai kopnes ierīcei NanoLib automātiski jāmeklē piemēroti OD. Norāda ceļu uz OD direktoriju. Parāda objektu vārdnīcas rekvizītus.
getAssignedObjectDictionary ()
Izmantojiet šo funkciju, lai iegūtu objektu vārdnīcu, ko ierīcei piešķir ar deviceHandle.
virtuālā ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (DeviceHandle const ierīce
Rokturis)
Parametri deviceHandle Returns ResultObjectDictionary
Norāda, kurai kopnes ierīcei NanoLib saņem piešķirto OD. Parāda objektu vārdnīcas rekvizītus.
getObjectDictionaryLibrary () Šī funkcija atgriež OdLibrary atsauci.
virtuālā OdLibrary& nlc::NanoLibAccessor::getObjectDictionaryLibrary ()
Atgriež OdLibrary&
Atver visu OD bibliotēku un tās objektu vārdnīcas.
setLoggingLevel () Izmantojiet šo funkciju, lai iestatītu nepieciešamo žurnāla informāciju (un žurnālu file Izmērs). Noklusējuma līmenis ir informācija.
virtual void nlc::NanoLibAccessor::setLoggingLevel (LogLevel līmenis)
Parametru līmenis
Ir iespējama šāda žurnāla informācija:
0 = izsekošana 1 = atkļūdošana 2 = informācija 3 = brīdinājums 4 = kļūda 5 = kritiska 6 = izslēgta
Zemākais līmenis (lielākais baļķis file); reģistrē visas iespējamās detaļas, kā arī programmatūras palaišanu / apturēšanu. Reģistrē atkļūdošanas informāciju (= starprezultāti, nosūtītais vai saņemtais saturs utt.) Noklusējuma līmenis; reģistrē informatīvos ziņojumus. Reģistrē radušās problēmas, bet neaptur pašreizējo algoritmu. Reģistrē tikai nopietnas problēmas, kas apturēja algoritmu. Augstākais līmenis (mazākais baļķis file); izslēdz reģistrēšanos; vairs nav žurnāla vispār. Nekādas mežizstrādes vispār.
setLoggingCallback ()
Izmantojiet šo funkciju, lai iestatītu reģistrēšanas atzvanīšanas rādītāju un žurnāla moduli (= bibliotēku) šim atzvanīšanai (nevis pašam reģistrētājam).
virtual void nlc::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* atzvanīšana, const nlc::LogModule & logModule)
Parametri *atzvanīšanas logModule
Iestata atzvanīšanas rādītāju. Pieskaņo atzvanīšanu (nevis reģistrētāju!) savai bibliotēkai.
0 = NanolibCore 1 = NanolibCANopen 2 = NanolibModbus 3 = NanolibEtherCAT
Aktivizē atzvanīšanu tikai NanoLib kodolam. Aktivizē tikai CANopen atzvanīšanu. Aktivizē tikai Modbus atzvanīšanu. Aktivizē tikai EtherCAT atzvanīšanu.
Versija: doc 1.4.2 / NanoLib 1.3.0
22
8 Klases/funkcijas atsauces
4 = NanolibRest 5 = NanolibUSB
Aktivizē tikai REST atzvanīšanu. Aktivizē tikai USB atzvanīšanu.
unsetLoggingCallback () Izmantojiet šo funkciju, lai atceltu reģistrēšanas atzvanīšanas rādītāju.
virtual void nlc::NanoLibAccessor::unsetLoggingCallback ()
readNumber () Izmantojiet šo funkciju, lai nolasītu skaitlisku vērtību no objekta vārdnīcas.
virtuālais ResultInt nlc::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parametri deviceHandle odIndex
Atgriež ResultInt
Norāda, no kuras kopnes ierīces NanoLib nolasa. Norāda (apakš) indeksu, no kura lasīt. Nodrošina neinterpretētu skaitlisko vērtību (var būt parakstītas, neparakstītas, fix16.16 bitu vērtības).
readNumberArray () Izmantojiet šo funkciju, lai nolasītu ciparu masīvus no objektu vārdnīcas.
virtuālais ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t indekss)
Parametri deviceRoktura indekss
Atgriež ResultArrayInt
Norāda, no kuras kopnes ierīces NanoLib nolasa. Masīva objektu indekss. Nodrošina veselu skaitļu masīvu.
readBytes () Izmantojiet šo funkciju, lai no objekta vārdnīcas nolasītu patvaļīgus baitus (domēna objekta datus).
virtuālais ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parametri deviceHandle odIndex
Atgriež ResultArrayByte
Norāda, no kuras kopnes ierīces NanoLib nolasa. Norāda (apakš) indeksu, no kura lasīt. Nodrošina baitu masīvu.
readString () Izmantojiet šo funkciju, lai nolasītu virknes no objektu direktorijas.
virtuālā ResultString nlc::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parametri deviceHandle odIndex
Atgriež ResultString
Norāda, no kuras kopnes ierīces NanoLib nolasa. Norāda (apakš) indeksu, no kura lasīt. Piegādā ierīču nosaukumus kā virkni.
Versija: doc 1.4.2 / NanoLib 1.3.0
23
8 Klases/funkcijas atsauces
writeNumber () Izmantojiet šo funkciju, lai objekta direktorijā ierakstītu skaitliskas vērtības.
virtuālais ResultVoid nlc::NanoLibAccessor::writeNumber (const DeviceHandle deviceHandle, int64_t vērtība, const OdIndex odIndex, neparakstīts int bitLength)
Parametri deviceHandle value odIndex bitLength
Atgriež ResultVoid
Norāda, uz kuru kopnes ierīci NanoLib raksta. Neinterpretētā vērtība (var būt parakstīts, neparakstīts, labot 16.16). Norāda (apakš) indeksu, no kura lasīt. Garums bitos. Apstiprina, ka ir palaista tukšuma funkcija.
writeBytes () Izmantojiet šo funkciju, lai objekta direktorijā ierakstītu patvaļīgus baitus (domēna objekta datus).
virtuālais ResultVoid nlc::NanoLibAccessor::writeBytes (const DeviceHandle deviceHandle, const std::vector & dati, const OdIndex odIndex)
Parametri deviceHandle data odIndex
Atgriež ResultVoid
Norāda, uz kuru kopnes ierīci NanoLib raksta. Baitu vektors / masīvs. Norāda (apakš) indeksu, no kura lasīt. Apstiprina, ka ir palaista tukšuma funkcija.
augšupielādēt programmaparatūru ()
Izmantojiet šo funkciju, lai atjauninātu kontroliera programmaparatūru.
virtuālā ResultVoid nlc::NanoLibAccessor::uploadFirmware (const DeviceHandle deviceHandle, const std::vector & fwData, NlcDataTransferCallback* atzvanīšana)
Parametri deviceHandle fwData NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kādu kopnes ierīci NanoLib atjaunina. Masīvs, kurā ir programmaparatūras dati. Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
augšupielādētFirmwareNoFile ()
Izmantojiet šo funkciju, lai atjauninātu kontroliera programmaparatūru, augšupielādējot to file.
virtuālais ResultVoid nlc::NanoLibAccessor::uploadFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & absolūtaisFileCeļš, NlcDataTransferCallback*)
Parametri deviceRokturis absolūtaisFileCeļš NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kādu kopnes ierīci NanoLib atjaunina. Ceļš uz file satur programmaparatūras datus (std::string). Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
Versija: doc 1.4.2 / NanoLib 1.3.0
24
8 Klases/funkcijas atsauces
augšupielādes sāknēšanas programma ()
Izmantojiet šo funkciju, lai atjauninātu kontroliera sāknēšanas ielādētāju.
virtuālais ResultVoid nlc::NanoLibAccessor::uploadBootloader (const DeviceHandle deviceHandle, const std::vector & btData, NlcDataTransferCallback* atzvanīšana)
Parametri deviceHandle btData NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kādu kopnes ierīci NanoLib atjaunina. Masīvs, kurā ir sāknēšanas ielādētāja dati. Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
uploadBootloaderFromFile ()
Izmantojiet šo funkciju, lai atjauninātu kontroliera sāknēšanas ielādētāju, augšupielādējot to file.
virtuālais ResultVoid nlc::NanoLibAccessor::uploadBootloaderFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileCeļš, NlcDataTransferCallback*)
Parametri deviceHandle bootloaderAbsoluteFileCeļš NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kādu kopnes ierīci NanoLib atjaunina. Ceļš uz file satur bootloader datus (std::string). Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
uploadBootloader programmaparatūra ()
Izmantojiet šo funkciju, lai atjauninātu kontroliera sāknēšanas ielādētāju un programmaparatūru.
virtuālā ResultVoid nlc::NanoLibAccessor::uploadBootloader programmaparatūra (const DeviceHandle deviceHandle, const std::vector & btData, const std::vector & fwData, NlcDataTransferCallback* atzvanīšana)
Parametri deviceHandle btData fwData NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kādu kopnes ierīci NanoLib atjaunina. Masīvs, kurā ir sāknēšanas ielādētāja dati. Masīvs, kurā ir programmaparatūras dati. Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
uploadBootloaderFirmwareFromFile ()
Izmantojiet šo funkciju, lai atjauninātu kontroliera sāknēšanas ielādētāju un programmaparatūru, augšupielādējot files.
virtuālais ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileCeļš, const std::string & absolūtsFileCeļš, NlcDataTransferCallback*)
Parametri deviceHandle bootloaderAbsoluteFileCeļš absolūtsFileCeļš NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kādu kopnes ierīci NanoLib atjaunina. Ceļš uz file satur bootloader datus (std::string). Ceļš uz file satur programmaparatūras datus (uint8_t). Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
Versija: doc 1.4.2 / NanoLib 1.3.0
25
8 Klases/funkcijas atsauces
augšupielādeNanoJ ()
Izmantojiet šo publisko funkciju, lai augšupielādētu NanoJ programmu savā kontrolierī.
virtuālais ResultVoid nlc::NanoLibAccessor::uploadNanoJ (DeviceHandle const deviceHandle, std::vector const & vmmData, NlcDataTransferCallback* atzvanīšana)
Parametri deviceHandle vmmData NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kurā kopnes ierīcē NanoLib augšupielādē. Masīvs, kurā ir NanoJ dati. Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
augšupielādētNanoJFromFile ()
Izmantojiet šo publisko funkciju, lai augšupielādētu NanoJ programmu savā kontrolierī, augšupielādējot file.
virtuālais ResultVoid nlc::NanoLibAccessor::uploadNanoJFromFile (const DeviceHandle deviceHandle, const std::string & absolūtaisFileCeļš, NlcDataTransferCallback*)
Parametri deviceRokturis absolūtaisFileCeļš NlcDataTransferCallback
Atgriež ResultVoid
Norāda, kurā kopnes ierīcē NanoLib augšupielādē. Ceļš uz file satur NanoJ datus (std::string). Datu progresa izsekotājs. Apstiprina, ka ir palaista tukšuma funkcija.
disconnectDevice () Izmantojiet šo funkciju, lai atvienotu ierīci, izmantojot ierīciRokturis.
virtuālais ResultVoid nlc::NanoLibAccessor::disconnectDevice (DeviceHandle const deviceHandle)
Parametri deviceHandle Returns ResultVoid
Norāda, no kuras kopnes ierīces NanoLib atvienojas. Apstiprina, ka ir palaista tukšuma funkcija.
removeDevice () Izmantojiet šo funkciju, lai noņemtu savu ierīci no NanoLib iekšējo ierīču saraksta.
virtuālais ResultVoid nlc::NanoLibAccessor::removeDevice (const DeviceHandle deviceHandle)
Parametri deviceHandle Returns ResultVoid
Norāda, kuru kopnes ierīci NanoLib noņem no saraksta. Apstiprina, ka ir palaista tukšuma funkcija.
closeBusHardware () Izmantojiet šo funkciju, lai atvienotos no lauka kopnes aparatūras.
virtuālais ResultVoid nlc::NanoLibAccessor::closeBusHardware (BusHardwareId const & busHwId)
Parametri busHwId atgriež ResultVoid
Norāda lauka kopni, no kuras atvienoties. Apstiprina, ka ir palaista tukšuma funkcija.
Versija: doc 1.4.2 / NanoLib 1.3.0
26
8 Klases/funkcijas atsauces
8.2. kopnes aparatūras ID
Izmantojiet šo klasi, lai identificētu kopnes aparatūru viens pret vienu vai atšķirtu dažādu kopnes aparatūru vienu no otras. Šajā klasē (bez iestatītāja funkcijām, kas ir nemainīgas no izveides brīža) ir arī informācija par:
Aparatūra (= adaptera nosaukums, tīkla adapteris utt.) Izmantojamais protokols (= Modbus TCP, CANopen utt.) Kopnes aparatūras specifikācija (= seriālā porta nosaukums, MAC draudzīgais nosaukums
adrese utt.)
BusHardwareId () [1/3] Konstruktors, kas izveido jaunu kopnes aparatūras ID objektu.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & name_)
Parametru kopne Hardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
Aparatūras veids (= ZK-USB-CAN-1 utt.). Kopnes sakaru protokols (= CANopen utt.). Aparatūras specifikācija (= COM3 utt.). Papildu aparatūras specifikācija (piemēram, USB atrašanās vietas informācija). Draudzīgs nosaukums (= Adaptera nosaukums (Ports) utt.).
BusHardwareId () [2/3] Konstruktors, kas izveido jaunu kopnes aparatūras ID objektu ar iespēju izmantot papildu aparatūras specifikāciju.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & extraHardwareSpecifier_, std::virkne) const
Parametru kopne Hardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
Aparatūras veids (= ZK-USB-CAN-1 utt.). Kopnes sakaru protokols (= CANopen utt.). Aparatūras specifikācija (= COM3 utt.). Papildu aparatūras specifikācija (piemēram, USB atrašanās vietas informācija). Draudzīgs nosaukums (= Adaptera nosaukums (Ports) utt.).
BusHardwareId () [3/3] Konstruktors, kas kopē esošu busHardwareId.
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
Parametri busHardwareId
Nosauc kopnes aparatūras ID, no kuras kopēt.
vienāds ar () Salīdzina jaunu kopnes aparatūras ID ar esošajiem.
bool nlc::BusHardwareId::equals (BusHardwareId const un citi) const
Parametri citi Atgriež true
Vēl viens tās pašas klases objekts. Ja abi ir vienādi visās vērtībās.
Versija: doc 1.4.2 / NanoLib 1.3.0
27
8 Klases/funkcijas atsauces
viltus
Ja vērtības atšķiras.
getBusHardware () Nolasa kopnes aparatūras virkni.
std::string nlc::BusHardwareId::getBusHardware () const
Atgriež virkni
getHardwareSpecifier () Nolasa kopnes aparatūras specifikācijas virkni (= tīkla nosaukumu utt.).
std::string nlc::BusHardwareId::getHardwareSpecifier () const
Atgriež virkni
getExtraHardwareSpecifier () Nolasa kopnes papildu aparatūras specifikācijas virkni (= MAC adrese utt.).
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () const
Atgriež virkni
getName () Nolasa kopnes aparatūras draudzīgo nosaukumu.
std::string nlc::BusHardwareId::getName () const
Atgriež virkni
getProtocol () Nolasa kopnes protokola virkni.
std::string nlc::BusHardwareId::getProtocol () const
Atgriež virkni
toString () Atgriež kopnes aparatūras ID kā virkni.
std::string nlc::BusHardwareId::toString () const
Atgriež virkni
8.3. Kopnes aparatūras opcijas
Šajā klasē virkņu atslēgu vērtību sarakstā atrodiet visas opcijas, kas nepieciešamas kopnes aparatūras atvēršanai.
Versija: doc 1.4.2 / NanoLib 1.3.0
28
8 Klases/funkcijas atsauces
BusHardwareOptions () [1/2] Izveido jaunu kopnes aparatūras opciju objektu.
nlc::BusHardwareOptions::BusHardwareOptions () Izmantojiet funkciju addOption (), lai pievienotu atslēgu un vērtību pārus.
BusHardwareOptions () [2/2] Izveido jaunu kopnes aparatūras opciju objektu ar jau esošu atslēgu vērtību karti.
nlc::BusHardwareOptions::BusHardwareOptions (std::map const & opcijas)
Parametru opcijas
Karte ar kopnes aparatūras darbības iespējām.
addOption () Izveido papildu atslēgas un vērtības.
void nlc::BusHardwareOptions::addOption (std::string const & key, std::string const & value)
Parametru atslēgas vērtība
Example: BAUD_RATE_OPTIONS_NAME, skatiet bus_hw_options_ noklusējuma iestatījumus
Example: BAUD_RATE_1000K, skatiet bus_hw_options_defaults
vienāds ar () Salīdzina BusHardwareOptions ar esošajām.
bool nlc::BusHardwareOptions::equals (BusHardwareOptions const un citi) const
Parametri citi Atgriež true
viltus
Vēl viens tās pašas klases objekts. Ja citam objektam ir visas tieši tādas pašas opcijas. Ja citam objektam ir citas atslēgas vai vērtības.
getOptions () Nolasa visus pievienotos atslēgu un vērtību pārus.
std::map nlc::BusHardwareOptions::getOptions () const
Atgriež virknes karti
toString () Atgriež visas atslēgas/vērtības kā virkni.
std::string nlc::BusHardwareId::toString () const
Atgriež virkni
8.4 BusHwOptionsDefault
Šai noklusējuma konfigurācijas opciju klasei ir šādi publiskie atribūti:
Versija: doc 1.4.2 / NanoLib 1.3.0
29
8 Klases/funkcijas atsauces
const CanBus const Sērijas const RESTfulBus const EtherCATBus
canBus = CanBus () serial = Serial () restfulBus = RESTfulBus() ethercatBus = EtherCATBus()
8.5 CanBaudRate
Struktūra, kas satur CAN kopnes pārraides ātrumus šādos publiskajos atribūtos:
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string
BAUD_RATE_1000K = "1000k" BAUD_RATE_800K = "800k" BAUD_RATE_500K = "500k" BAUD_RATE_250K = "250k" BAUD_RATE_125K = "125k" BAUD_RATE_100k BAUD_RATE_100K TE_50K = "50k" BAUD_RATE_20K = "20k" BAUD_RATE_10K = "10k"
8.6. CanBus
Noklusējuma konfigurācijas opciju klase ar šādiem publiskajiem atribūtiem:
const std::string const CanBaudRate const Ixxat
BAUD_RATE_OPTIONS_NAME = "var adaptera pārraides ātrums" baudRate = CanBaudRate () ixxat = Ixxat ()
8.7. CanOpenNmtService
NMT pakalpojumam šī struktūra satur CANopen NMT stāvokļus kā virknes vērtības šādos publiskajos atribūtos:
const std::string const std::string const std::string const std::string const std::string
START = "START" STOP = "STOP" PRE_OPERATIONAL = "PRE_OPERATIONAL" RESET = "RESET" RESET_COMMUNICATION = "RESET_COMMUNICATION"
8.8. CanOpenNmtState
Šī struktūra satur CANopen NMT stāvokļus kā virknes vērtības šādos publiskajos atribūtos:
const std::string const std::string const std::string const std::string const std::string
STOPPED = "STOPPED" PRE_OPERATIONAL = "PRRE_OPERATIONAL" OPERATIONAL = "OPERATIONAL" INICIALIZĀCIJA = "INICIALIZĀCIJA" NEZINĀMS = "NEZINĀMS"
8.9 EtherCATBus struktūra
Šī struktūra satur EtherCAT sakaru konfigurācijas opcijas šādos publiskajos atribūtos:
Versija: doc 1.4.2 / NanoLib 1.3.0
30
8 Klases/funkcijas atsauces
const std::string NETWORK_FIRMWARE_STATE_OP — tīkla stāvoklis tiek uzskatīts par programmaparatūras režīmu. Pieņemams
TION_NAME = "Tīkla programmaparatūras stāvoklis"
vērtības (noklusējums = PRE_OPERATIONAL):
EtherCATSstate::PRE_OPERATIONAL EtherCATSstate::SAFE_OPERATIONAL EtherCATSstate::OPERATIONAL
const std::string DEFAULT_NETWORK_FIRMWARE_ STATE = “PRE_OPERATIONAL”
const std::string EXCLUSIVE_LOCK_TIMEOUT_OP- noildze milisekundēs, lai iegūtu ekskluzīvu bloķēšanu
TION_NAME = “Koplietotās bloķēšanas taimauts”
tīklā (noklusējums = 500 ms).
const unsigned int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = “500”
const std::string SHARED_LOCK_TIMEOUT_OPTION_ Noildze milisekundēs, lai iegūtu koplietojamo bloķēšanu
NAME = “Koplietojamās bloķēšanas taimauts”
tīklā (noklusējums = 250 ms).
const unsigned int DEFAULT_SHARED_LOCK_TIMEOUT = "250"
const std::string READ_TIMEOUT_OPTION_NAME = noildze milisekundēs lasīšanas darbībai (noklusējums
“Lasīšanas taimauts”
= 700 ms).
const unsigned int DEFAULT_READ_TIMEOUT = "700"
const std::string WRITE_TIMEOUT_OPTION_NAME = noildze milisekundēs rakstīšanas darbībai (noklusējums
“Rakstīšanas taimauts”
= 200 ms).
const unsigned int DEFAULT_WRITE_TIMEOUT = "200"
const std::string READ_WRITE_ATTEMPTS_OPTION_ Maksimālais lasīšanas vai rakstīšanas mēģinājumu skaits (vērtības, kas nav nulles
NOSAUKUMS = “Lasīšanas/rakstīšanas mēģinājumi”
tikai; noklusējuma = 5).
const unsigned int DEFAULT_READ_WRITE_ATTEMPTS = "5"
const std::string CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME = "Mainīt tīkla stāvokļa mēģinājumus"
Maksimālais mēģinājumu skaits mainīt tīkla stāvokli (tikai vērtības, kas nav nulles; noklusējuma = 10).
const unsigned int DEFAULT_CHANGE_NETWORK_ STATE_ATTEMPTS = “10”
const std::string PDO_IO_ENABLED_OPTION_NAME Iespējo vai atspējo ACVN apstrādi digitālajai in- /
= "ACVN IO iespējots"
izvadi (tikai “True” vai “False”; noklusējuma = “True”).
const std::string DEFAULT_PDO_IO_ENABLED = "True"
8.10 EtherCATState struktūra
Šī struktūra satur EtherCAT slave/tīkla stāvokļus kā virknes vērtības šādos publiskajos atribūtos. Piezīme. Noklusējuma stāvoklis ieslēgšanas brīdī ir PRE_OPERATIONAL; NanoLib nevar nodrošināt uzticamu “DARBĪBAS” stāvokli nereāllaika operētājsistēmā:
const std::string const std::string const std::string const std::string const std::string const std::string
NONE = "NEVIENS" INIT = "INIT" PRE_OPERATIONAL = "PRE_OPERATIONAL" BOOT = "BOOT" SAFE_OPERATIONAL = "SAFE_OPERATIONAL" OPERATIONAL = "OPERATIONAL"
Versija: doc 1.4.2 / NanoLib 1.3.0
31
8 Klases/funkcijas atsauces
8.11 Ixxat
Šī struktūra satur visu informāciju par Ixxat usb-to-can šādos publiskajos atribūtos:
const std::string
ADAPTER_BUS_NUMBER_OPTIONS_NAME = "ixxat adaptera kopnes numurs"
const IxxatAdapterBusNumber adapterBusNumber = IxxatAdapterBusNumber ()
8.12 IxxatAdapterBusNumber
Šī struktūra satur kopnes numuru Ixxat usb-to-can šādos publiskajos atribūtos:
const std::string const std::string const std::string const std::string
BUS_NUMBER_0_DEFAULT = "0" BUS_NUMBER_1 = "1" BUS_NUMBER_2 = "2" BUS_NUMBER_3 = "3"
8.13 pīķis
Šajā struktūrā ir visa informācija par Peak usb-to-can šādos publiskajos atribūtos:
const std::string
ADAPTER_BUS_NUMBER_OPTIONS_NAME = "maksimālais adaptera kopnes numurs"
const PeakAdapterBusNumber adapterBusNumber = PeakAdapterBusNumber ()
8.14 PeakAdapterBusNumber
Šī struktūra satur kopnes numuru Peak usb-to-can šādos publiskajos atribūtos:
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:string std:string:string:st const std::string const std::string const std::string
BUS_NUMBER_1_DEFAULT = std::to_string (PCAN_USBBUS1) BUS_NUMBER_2 = std::to_string (PCAN_USBBUS2) BUS_NUMBER_3 = std::to_string (PCAN_USBBUS3) BUS_NUMBER_4 = std::to_USBBUSNUMBER (PCAN_USBBUSNUMBER) std::to_string (PCAN_USBBUS4) BUS_NUMBER_5 = std::to_string (PCAN_USBBUS5) BUS_NUMBER_6 = std::to_string (PCAN_USBBUS6) BUS_NUMBER_7 = std::to_string (PCAN_USBBUS7) = BUSstringdPC:_8_BUSstringdPC: BUS_NUMBER_8 = std::to_string (PCAN_USBBUS9) BUS_NUMBER_9 = std::to_string (PCAN_USBBUS10) BUS_NUMBER_10 = std::to_string (PCAN_USBBUS11) BUS_NUMBER_11 = std::to_string (PCAN_NUMBER_12) = BUSBBUS_NUMBER std::to_string (PCAN_USBBUS12) BUS_NUMBER_13 = std::to_string (PCAN_USBBUS13) BUS_NUMBER_14 = std::to_string (PCAN_USBBUS14)
8.15. Ierīces rokturis
Šī klase ir rokturis ierīces vadīšanai kopnē, un tai ir šādas publiskās dalībnieka funkcijas.
DeviceHandle () DeviceHandle (uint32_t rokturis)
Versija: doc 1.4.2 / NanoLib 1.3.0
32
8 Klases/funkcijas atsauces
vienāds ar () Salīdzina sevi ar doto ierīces rokturi.
bool vienāds (DeviceHandle const cits) const (uint32_t rokturis)
toString () Atgriež ierīces roktura virknes attēlojumu.
std::string toString () const
get () Atgriež ierīces rokturi.
uint32_t get () const
8.16. Ierīces ID
Izmantojiet šo klasi (nav nemainīga no izveides brīža), lai identificētu un atšķirtu ierīces kopnē:
Aparatūras adaptera identifikators
Ierīces identifikators
Apraksts
Ierīces ID/apraksta vērtību nozīme ir atkarīga no kopnes. Piemēram,ample, CAN kopne var izmantot vesela skaitļa ID.
DeviceId () [1/3] Izveido jaunu ierīces ID objektu.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId_, unsigned int deviceId_, std::string const & description_)
Parametri busHardwareId_ deviceId_ description_
Autobusa identifikators. Indekss; pakļauts kopnei (= CANopen mezgla ID utt.). Apraksts (var būt tukšs); pakļauts autobusam.
DeviceId () [2/3] Izveido jaunu ierīces ID objektu ar paplašinātām ID opcijām.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId, neparakstīts int deviceId_, std::string const & description_ std::vector const & extraId_, std::string const & extraStringId_)
Parametri busHardwareId_ deviceId_ description_ extraId_ extraStringId_
Autobusa identifikators. Indekss; pakļauts kopnei (= CANopen mezgla ID utt.). Apraksts (var būt tukšs); pakļauts autobusam. Papildu ID (var būt tukšs); nozīme ir atkarīga no autobusa. Papildu virknes ID (var būt tukšs); nozīme ir atkarīga no autobusa.
DeviceId () [3/3] Izveido ierīces ID objekta kopiju.
nlc::DeviceId::DeviceId (DeviceId const &)
Versija: doc 1.4.2 / NanoLib 1.3.0
33
8 Klases/funkcijas atsauces
Parametri deviceId_
Ierīces ID, no kura kopēt.
vienāds ar () Salīdzina jaunos ar esošajiem objektiem.
bool nlc::DeviceId::equals (DeviceId const un citi) const
Atgriež Būla vērtību
getBusHardwareId () Nolasa kopnes aparatūras ID.
BusHardwareId nlc::DeviceId::getBusHardwareId () const
Atgriež BusHardwareId
getDescription () Nolasa ierīces aprakstu (varbūt neizmantotu).
std::string nlc::DeviceId::getDescription () const
Atgriež virkni
getDeviceId () Nolasa ierīces ID (varbūt neizmantots).
neparakstīts int nlc::DeviceId::getDeviceId () const
Atgriež neparakstītu int
toString () Atgriež objektu kā virkni.
std::string nlc::DeviceId::toString () const
Atgriež virkni
getExtraId () Nolasa ierīces papildu ID (var būt neizmantots).
const std::vector &getExtraId () konst
Atgriež vektoru
Papildu papildu ID vektors (var būt tukšs); nozīme ir atkarīga no autobusa.
getExtraStringId () Nolasa ierīces papildu virknes ID (var būt neizmantots).
std::string getExtraStringId () const
Versija: doc 1.4.2 / NanoLib 1.3.0
34
8 Klases/funkcijas atsauces
Atgriež virkni
Papildu virknes ID (var būt tukšs); nozīme ir atkarīga no autobusa.
8.17 LogLevelConverter
Šī klase atgriež jūsu žurnāla līmeni kā virkni. statiskā std::string toString (nlc::LogLevel logLevel)
8.18 LogModuleConverter
Šī klase atgriež jūsu bibliotēkai specifisko žurnālu modulesetLoggingLevel () kā virkni.
statiskā std::string
toString (nlc::LogModule logModule)
static std::string toString (nlc::LogModule logModule)
8.19. Objektu vārdnīca
Šī klase attēlo kontrollera objektu vārdnīcu, un tai ir šādas publiskās dalībnieka funkcijas: getDeviceHandle ()
virtuālā ResultDeviceHandle getDeviceHandle () const Atgriež ResultDeviceHandle
getObject () virtuālā ResultObjectSubEntry getObject (OdIndex const odIndex) Atgriež ResultObjectSubEntry
getObjectEntry () virtuālais ResultObjectEntry getObjectEntry (uint16_t indekss)
Atgriež ResultObjectEntry
Informē par objekta īpašībām.
getXmlFileName () virtuālā ResultString getXmlFileVārds () konst
Atgriež ResultString
Atgriež XML file nosaukums kā virkne.
readNumber () virtuālais ResultInt readNumber (OdIndex const odIndex) atgriež ResultInt
readNumberArray () virtuālais ResultArrayInt readNumberArray (uint16_t const indekss)
Versija: doc 1.4.2 / NanoLib 1.3.0
35
8 Klases/funkcijas atsauces
Atgriež ResultArrayInt readString ()
virtuālā ResultString readString (OdIndex const odIndex) Atgriež ResultString readBytes () virtuālo ResultArrayByte readBytes (OdIndex const odIndex) Atgriež ResultArrayByte writeNumber () virtuālo ResultVoid writeNumber (OdIndex_64 const inodIndex, const value) ResultVoid writeBytes () virtuālais ResultVoid writeBytes (OdIndex const OdIndex, std::vector
const & data) Atgriež ResultVoid Saistītās saites OdIndex
8.20. Objekta ievade
Šī klase ir objekta vārdnīcas objekta ieraksts, tai ir šāds statiski aizsargāts atribūts un publiskā dalībnieka funkcijas:
static nlc::ObjectSubEntry invalidObject
getName () Nolasa objekta nosaukumu kā virkni.
virtuālā std::string getName () const
getPrivate () Pārbauda, vai objekts ir privāts.
virtuālā bool getPrivate () const
getIndex () Nolasa objekta indeksa adresi.
virtuālā uint16_t getIndex () const
Versija: doc 1.4.2 / NanoLib 1.3.0
36
8 Klases/funkcijas atsauces
getDataType () Nolasa objekta datu tipu.
virtual nlc::ObjectEntryDataType getDataType () const
getObjectCode () Nolasa objekta kodu:
Null Deftype Defstruct Var masīva ieraksts
0x00 0x05 0x06 0x07 0x08 0x09
virtual nlc::ObjectCode getObjectCode () const
getObjectSaveable () Pārbauda, vai objekts ir saglabājams un tā kategoriju (sīkāku informāciju skatiet produkta rokasgrāmatā): LIETOJUMI, SAKARI, DRIVE, MISC_CONFIG, MODBUS_RTU, NO, TUNING, CUSTOMER, ETHERNET, CANOPEN, VERIFY1020, UNKNOWNOWNOWN_SA
virtual nlc::ObjectSaveable getObjectSaveable () const
getMaxSubIndex () Nolasa šī objekta atbalstīto apakšindeksu skaitu.
virtuālā uint8_t getMaxSubIndex () const
getSubEntry () virtual nlc::ObjectSubEntry & getSubEntry (uint8_t apakšindekss)
Skatiet arī ObjectSubEntry.
8.21. ObjectSubEntry
Šī klase attēlo objekta vārdnīcas objekta apakšierakstu (apakšindeksu), un tai ir šādas publiskā dalībnieka funkcijas:
getName () Nolasa objekta nosaukumu kā virkni.
virtuālā std::string getName () const
getSubIndex () Nolasa apakšindeksa adresi.
virtuālā uint8_t getSubIndex () const
Versija: doc 1.4.2 / NanoLib 1.3.0
37
8 Klases/funkcijas atsauces
getDataType () Nolasa objekta datu tipu.
virtual nlc::ObjectEntryDataType getDataType () const
getSdoAccess () Pārbauda, vai apakšindekss ir pieejams, izmantojot SDO:
Tikai lasāms
1
Tikai rakstiet
2
Lasīt Rakstīt
3
Nav piekļuves
0
virtual nlc::ObjectSdoAccessAttribute getSdoAccess () const
getPdoAccess () Pārbauda, vai apakšindekss ir pieejams/kartējams, izmantojot ACVN:
Tx
1
Rx
2
TxRx
3
Nē
0
virtual nlc::ObjectPdoAccessAttribute getPdoAccess () const
getBitLength () Pārbauda apakšindeksa garumu.
virtuālais uint32_t getBitLength () const
getDefaultValueAsNumeric () Nolasa ciparu datu tipu apakšindeksa noklusējuma vērtību.
virtuālā ResultInt getDefaultValueAsNumeric (std::string const & key) const
getDefaultValueAsString () Nolasa apakšindeksa noklusējuma vērtību virknes datu tipiem.
virtuālā ResultString getDefaultValueAsString (std::string const & key) const
getDefaultValues () Nolasa apakšindeksa noklusējuma vērtības.
virtuālā std::map getDefaultValues () const
Versija: doc 1.4.2 / NanoLib 1.3.0
38
8 Klases/funkcijas atsauces
readNumber () Nolasa apakšindeksa faktisko skaitlisko vērtību.
virtuālā ResultInt readNumber () konst
readString () Nolasa apakšindeksa virknes faktisko vērtību.
virtuālā ResultString readString () const
readBytes () Nolasa apakšindeksa faktisko vērtību baitos.
virtuālā ResultArrayByte readBytes () const
writeNumber () Apakšindeksā ieraksta skaitlisku vērtību.
virtuāls ResultVoid writeNumber (const int64_t vērtība) const
writeBytes () Ieraksta vērtību apakšindeksā baitos.
virtuālais rezultātsVoid rakstīšanas baiti (std::vector const & data) const
8.22 OdIndex
Izmantojiet šo klasi (nemaināma no izveides brīža), lai aplauztu un atrastu objektu direktoriju indeksus/apakšindeksus. Ierīces OD ir līdz 65535 (0xFFFF) rindām un 255 (0xFF) kolonnām; ar atstarpēm starp pārtrauktajām rindām. Plašāku informāciju skatiet CANopen standartā un sava produkta rokasgrāmatā.
OdIndex () Konstruē jaunu OdIndex objektu.
nlc::OdIndex::OdIndex (uint16_t indekss, uint8_t subIndex)
Parametru indeksa apakšindekss
No 0 līdz 65535 (0xFFFF), t.sk. No 0 līdz 255 (0xFF), t.sk.
getIndex () Nolasa indeksu (no 0x0000 līdz 0xFFFF).
uint16_t nlc::OdIndex::getIndex () const
Atgriež uint16_t
getSubindex () Nolasa apakšindeksu (no 0x00 līdz 0xFF)
uint8_t nlc::OdIndex::getSubIndex () const
Versija: doc 1.4.2 / NanoLib 1.3.0
39
8 Klases/funkcijas atsauces
Atgriež uint8_t
toString () Atgriež indeksu un apakšindeksu kā virkni. Noklusējuma virkne 0xIIII:0xSS skan šādi:
I = indekss no 0x0000 līdz 0xFFFF
S = apakšindekss no 0x00 līdz 0xFF
std::string nlc::OdIndex::toString () const
Atgriež 0xIIII:0xSS
Noklusējuma virknes attēlojums
8.23 OdLibrary
Izmantojiet šo programmēšanas saskarni, lai izveidotu klases ObjectDictionary gadījumus no XML. Izmantojot assignObjectDictionary, varat saistīt katru gadījumu ar noteiktu ierīci unikāli izveidota identifikatora dēļ. Šādi izveidotās ObjectDictionary instances tiek saglabātas OdLibrary objektā, lai tām piekļūtu ar indeksu. ODLibrary klase ielādē ObjectDictionary vienumus no file vai masīvs, tos saglabā, un tam ir šādas publiskā dalībnieka funkcijas:
getObjectDictionaryCount () virtuālais uint32_t getObjectDictionaryCount () const
getObjectDictionary () virtuālā ResultObjectDictionary getObjectDictionary (uint32_t odIndex)
Atgriež ResultObjectDictionary
addObjectDictionaryFromFile ()
virtuālā ResultObjectDictionary addObjectDictionaryFromFile (std::string const & abszolútXmlFileceļš)
Atgriež ResultObjectDictionary
addObjectDictionary ()
virtuālā ResultObjectDictionary addObjectDictionary (std::vector const & odXmlData, const std::string &xmlFileCeļš = std::virkne ())
Atgriež ResultObjectDictionary
8.24 OdTypesHelper
Papildus tālāk norādītajām publiskā dalībnieka funkcijām šajā klasē ir iekļauti pielāgoti datu tipi. Piezīme. Lai pārbaudītu savus pielāgotos datu tipus, vietnē od_types.hpp meklējiet enum klasi ObjectEntryDataType.
uintToObjectCode () pārvērš neparakstītus veselus skaitļus objekta kodā:
Null Deftype
0x00 0x05
Versija: doc 1.4.2 / NanoLib 1.3.0
40
8 Klases/funkcijas atsauces
Deficēt Var masīva ierakstu
0x06 0x07 0x08 0x09
statisks ObjectCode uintToObjectCode (neparakstīts int objectCode)
isNumericDataType () Informē, vai datu tips ir skaitlis vai nav.
statiskā būtība irNumericDataType (ObjectEntryDataType dataType)
isDefstructIndex () Informē, vai objekts ir definīcijas struktūras indekss vai nav.
statiskā bool isDefstructIndex (uint16_t typeNum)
isDeftypeIndex () Informē, vai objekts ir definīcijas tipa indekss vai nav.
statiskā bool isDeftypeIndex (uint16_t typeNum)
isComplexDataType () Informē, vai datu tips ir sarežģīts vai nē.
statiskā bool isComplexDataType (ObjectEntryDataType dataType)
uintToObjectEntryDataType () Pārvērš neparakstītus veselus skaitļus par OD datu tipu.
sstatic ObjectEntryDataType uintToObjectEntryDataType (uint16_t objectDataType)
objectEntryDataTypeToString () Pārvērš OD datu tipu par virkni.
statiskā std::string objectEntryDataTypeToString (ObjectEntryDataType odDataType)
stringToObjectEntryDatatype () Ja iespējams, pārvērš virkni par OD datu tipu. Pretējā gadījumā atgriež UNKNOWN_DATATYPE.
statisks ObjectEntryDataType stringToObjectEntryDatatype (std::string dataTypeString)
Versija: doc 1.4.2 / NanoLib 1.3.0
41
8 Klases/funkcijas atsauces
objectEntryDataTypeBitLength () Informē par objekta ievades datu tipa bitu garumu.
statisks uint32_t objectEntryDataTypeBitLength (ObjectEntryDataType const & dataType)
8.25 RESTfulBus struktūra
Šī struktūra satur saziņas konfigurācijas opcijas RESTful interfeisam (pa Ethernet). Tajā ir šādi publiskie atribūti:
const std::string const neparakstīts garš const std::string const neparakstīts garš const std::string const neparakstīts garš
CONNECT_TIMEOUT_OPTION_NAME = "atpūtas savienojuma taimauts" DEFAULT_CONNECT_TIMEOUT = 200 REQUEST_TIMEOUT_OPTION_NAME = "ATPŪTAS pieprasījuma taimauts" DEFAULT_REQUEST_TIMEOUT = 200 RESPONSE_TIMEOUT_OPTION_NAME = "ATPŪTĪGAS atbildes noildze" ONSEDE_TIMEOUT =750
8.26 ProfinetDCP
Operētājsistēmā Linux zvanīšanas lietojumprogrammai ir nepieciešamas CAP_NET_ADMIN un CAP_NET_RAW iespējas. Lai iespējotu: sudo setcap 'cap_net_admin,cap_net_raw+eip' ./executable. Operētājsistēmā Windows ProfinetDCP saskarne izmanto WinPcap (pārbaudīts ar versiju 4.1.3) vai Npcap (pārbaudīts ar versiju 1.60 un 1.30). Tādējādi tā meklē dinamiski ielādētajā wpcap.dll bibliotēkā šādā secībā (piezīme: pašreiz nav Win10Pcap atbalsta):
1. Nanolib.dll direktorijs 2. Windows sistēmas direktorijs SystemRoot%System32 3. Npcap instalācijas direktorijs SystemRoot%System32Npcap 4. Vides ceļš
Šī klase ir Profinet DCP saskarne, un tai ir šādas publiskā dalībnieka funkcijas:
getScanTimeout () Informē par ierīces skenēšanas taimautu (noklusējums = 2000 ms).
virtuālais uint32_t nlc::ProfinetDCP::getScanTimeout () const
setScanTimeout () Iestata ierīces skenēšanas taimautu (noklusējums = 2000 ms).
virtual void nlc::setScanTimeout (uint32_t timeoutMsec)
getResponseTimeout () Informē par ierīces atbildes taimautu iestatīšanas, atiestatīšanas un mirgošanas darbībām (noklusējums = 1000 ms).
virtuālais uint32_t nlc::ProfinetDCP::getResponseTimeout () const
setResponseTimeout () Informē par ierīces atbildes taimautu iestatīšanas, atiestatīšanas un mirgošanas darbībām (noklusējums = 1000 ms).
virtual void nlc::ProfinetDCP::setResponseTimeout (uint32_t timeoutMsec)
Versija: doc 1.4.2 / NanoLib 1.3.0
42
8 Klases/funkcijas atsauces
isServiceAvailable ()
Izmantojiet šo funkciju, lai pārbaudītu Profinet DCP pakalpojuma pieejamību.
Tīkla adaptera derīgums / pieejamība Windows: WinPcap / Npcap pieejamība Linux: CAP_NET_ADMIN / CAP_NET_RAW iespējas
virtuālais ResultVoid nlc::ProfinetDCP::isServiceAvailable (const BusHardwareId & busHardwareId)
Parametri BusHardwareId Atgriež patiesu
viltus
Pārbaudāmais Profinet DCP pakalpojuma aparatūras ID. Pakalpojums ir pieejams. Pakalpojums nav pieejams.
scanProfinetDevices () Izmantojiet šo funkciju, lai skenētu aparatūras kopni Profinet ierīču klātbūtnei.
virtuālā ResultProfinetDevices skenēšanaProfinetDevices (konst BusHardwareId & busHardwareId)
Parametri BusHardwareId atgriež ResultProfinetDevices
Norāda katru lauka kopni, kas jāatver. Aparatūra ir atvērta.
setupProfinetDevice () Izveido šādus ierīces iestatījumus:
Ierīces nosaukums
IP adrese
Tīkla maska
Noklusējuma vārteja
virtuālā ResultVoid nlc::setupProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice struct & profinetDevice, bool savePermanent)
resetProfinetDevice () Aptur ierīci un atiestata to uz rūpnīcas noklusējuma iestatījumiem.
virtuālais ResultVoid nlc::resetProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)
blinkProfinetDevice () Dod Profinet ierīcei komandu sākt mirgot Profinet LED.
virtuālais ResultVoid nlc::blinkProfinetDevice (konst BusHardwareId & busHardwareId, const ProfinetDevice &profinetDevice)
validateProfinetDeviceIp () Izmantojiet šo funkciju, lai pārbaudītu ierīces IP adresi.
virtuālais ResultVoid validteProfinetDeviceIp (konst BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)
Parametri BusHardwareId ProfinetDevice
Norāda pārbaudāmo aparatūras ID. Norāda apstiprināmo Profinet ierīci.
Versija: doc 1.4.2 / NanoLib 1.3.0
43
8 Klases/funkcijas atsauces
Atgriež ResultVoid
8.27 ProfinetDevice struktūra
Profinet ierīces datiem ir šādi publiskie atribūti:
std::string std::string std::masīvs< uint8_t, 6 > uint32_t uint32_t uint32_t
deviceName deviceVendor macAddress ipAddress netMask noklusējuma vārteja
MAC adrese tiek nodrošināta kā masīvs šādā formātā: macAddress = {xx, xx, xx, xx, xx, xx}; tā kā IP adrese, tīkla maska un vārteja tiek interpretēti kā lieli heksadecimālie skaitļi, piemēram:
IP adrese: 192.168.0.2 Tīkla maska: 255.255.0.0 Vārteja: 192.168.0.1
0xC0A80002 0xFFFF0000 0xC0A80001
8.28 Rezultātu klases
Izmantojiet šo klašu “neobligātās” atgriešanas vērtības, lai pārbaudītu, vai funkcijas izsaukums bija veiksmīgs, kā arī atrodiet neveiksmes iemeslus. Veiksmes gadījumā funkcija hasError () atgriež false. Izmantojot getResult (), jūs varat nolasīt rezultāta vērtību atbilstoši veidam (ResultInt utt.). Ja zvans neizdodas, jūs nolasāt iemeslu, izmantojot getError ().
Aizsargāti atribūti
virkne NlcErrorCode uint32_t
errorString errorCode exErrorCode
Šai klasei ir arī šādas publiskā dalībnieka funkcijas:
hasError () Nolasa funkcijas izsaukuma panākumus.
bool nlc::Result::hasError () const
Atgriežas
patiess nepatiess
Neizdevās zvanīt. Izmantojiet getError (), lai nolasītu vērtību. Veiksmīgs zvans. Izmantojiet getResult (), lai nolasītu vērtību.
getError () Nolasa iemeslu, ja funkcijas izsaukums neizdodas.
const std::string nlc::Result::getError () const
Atgriež const virkni
Versija: doc 1.4.2 / NanoLib 1.3.0
44
8 Klases/funkcijas atsauces
rezultāts () Šīs funkcijas palīdz noteikt precīzus rezultātus:
Rezultāts (std::string const & errorString_)
Rezultāts (NlcErrorCode const & errCode, std::string const & errorString_)
Rezultāts (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
Rezultāts (Result const & rezultāts)
getErrorCode () Izlasiet NlcErrorCode.
NlcErrorCode getErrorCode () const
getExErrorCode () uint32_t getExErrorCode () const
8.28.1. ResultVoid
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež spēkā neesošu. Klase manto publiskās funkcijas un aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
ResultVoid () Šīs funkcijas palīdz definēt precīzu nederīgo rezultātu:
ResultVoid (std::string const &errorString_)
ResultVoid (NlcErrorCode const & errCode, std::string const & errorString_)
ResultVoid (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: virkne const & errorString_)
ResultVoid (rezultāta konst. un rezultāts)
8.28.2. ResultInt
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež veselu skaitli. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Atgriež veselu rezultātu, ja funkcijas izsaukums bija veiksmīgs.
int64_t getResult () const
Atgriež int64_t
Versija: doc 1.4.2 / NanoLib 1.3.0
45
8 Klases/funkcijas atsauces
ResultInt () Šīs funkcijas palīdz definēt precīzu veselu rezultātu:
ResultInt (int64_t rezultāts_)
ResultInt (std::string const & errorString_)
ResultInt (NlcErrorCode const & errCode, std::string const & errorString_)
ResultInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultInt (rezultāta konst. un rezultāts)
8.28.3. ResultString
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež virkni. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa virknes rezultātu, ja funkcijas izsaukums bija veiksmīgs.
const std::string nlc::ResultString::getResult () const
Atgriež const virkni
ResultString () Šīs funkcijas palīdz definēt precīzu virknes rezultātu:
ResultString (std::string const & message, bool hasError_)
ResultString (NlcErrorCode const & errCode, std::string const & errorString_)
ResultString (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: virkne const & errorString_)
ResultString (rezultāta konst. un rezultāts)
8.28.4 ResultArrayByte
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež baitu masīvu. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa baitu vektoru, ja funkcijas izsaukums bija veiksmīgs.
const std::vector nlc::ResultArrayByte::getResult () const
Atgriež const vektoru
Versija: doc 1.4.2 / NanoLib 1.3.0
46
8 Klases/funkcijas atsauces
ResultArrayByte () Šīs funkcijas palīdz definēt precīzu baitu masīva rezultātu:
ResultArrayByte (std::vector const & rezultāts_)
ResultArrayByte (std::string const & errorString_)
ResultArrayByte (NlcErrorCode const & errCode, std::string const un kļūda String_)
ResultArrayByte (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: virkne const & errorString_)
ResultArrayByte (rezultāta konst. un rezultāts)
8.28.5. ResultArrayInt
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež veselu skaitļu masīvu. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa veselu skaitļu vektoru, ja funkcijas izsaukums bija veiksmīgs.
const std::vector nlc::ResultArrayInt::getResult () const
Atgriež const vektoru
ResultArrayInt () Šīs funkcijas palīdz definēt precīzu veselo skaitļu masīva rezultātu:
ResultArrayInt (std::vector const & rezultāts_)
ResultArrayInt (std::string const & errorString_)
ResultArrayInt (NlcErrorCode const & errCode, std::string const un kļūda String_)
ResultArrayInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: virkne const & errorString_)
ResultArrayInt (rezultāta konst. un rezultāts)
8.28.6. ResultBusHwIds
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež kopnes aparatūras ID masīvu. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa kopnes-aparatūras ID vektoru, ja funkcijas izsaukums bija veiksmīgs.
const std::vector nlc::ResultBusHwIds::getResult () const
Parametru const vektors
Versija: doc 1.4.2 / NanoLib 1.3.0
47
8 Klases/funkcijas atsauces
ResultBusHwIds () Šīs funkcijas palīdz definēt precīzu kopnes-aparatūras-ID-masīva rezultātu:
ResultBusHwIds (std::vector const & rezultāts_)
ResultBusHwIds (std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultBusHwIds (rezultāta konst. un rezultāts)
8.28.7. ResultDeviceId
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež ierīces ID. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa ierīces ID vektoru, ja funkcijas izsaukums bija veiksmīgs.
DeviceId nlc::ResultDeviceId::getResult () const
Atgriež const vektoru
ResultDeviceId () Šīs funkcijas palīdz definēt precīzu ierīces ID rezultātu:
ResultDeviceId (DeviceId const & result_)
ResultDeviceId (std::string const & errorString_)
ResultDeviceId (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceId (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string errorString_)
ResultDeviceId (rezultāta konst. un rezultāts)
8.28.8. ResultDeviceIds
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež ierīces ID masīvu. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Atgriež ierīces ID vektoru, ja funkcijas izsaukums bija veiksmīgs.
DeviceId nlc::ResultDeviceIds::getResult () const
Atgriež const vektoru
Versija: doc 1.4.2 / NanoLib 1.3.0
48
8 Klases/funkcijas atsauces
ResultDeviceIds () Šīs funkcijas palīdz definēt precīzu ierīces ID masīva rezultātu:
ResultDeviceIds (std::vector const & rezultāts_)
ResultDeviceIds (std::string const & errorString_)
ResultDeviceIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultDeviceIds (rezultāta konst. un rezultāts)
8.28.9. ResultDeviceHandle
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež ierīces roktura vērtību. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa ierīces rokturi, ja funkcijas izsaukums bija veiksmīgs.
DeviceHandle nlc::ResultDeviceHandle::getResult () const
Atgriež DeviceHandle
ResultDeviceHandle () Šīs funkcijas palīdz definēt precīzu ierīces roktura rezultātu:
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 (rezultāta konst. un rezultāts)
8.28.10. ResultObjectDictionary
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež objektu vārdnīcas saturu. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa ierīces ID vektoru, ja funkcijas izsaukums bija veiksmīgs.
const nlc::ObjectDictionary & nlc::ResultObjectDictionary::getResult () const
Versija: doc 1.4.2 / NanoLib 1.3.0
49
8 Klases/funkcijas atsauces
Atgriežas
const vektors
ResultObjectDictionary () Šīs funkcijas palīdz definēt precīzu objektu vārdnīcas rezultātu:
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 (rezultāta konst. un rezultāts)
8.28.11. ResultConnectionState
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež ierīces savienojuma stāvokļa informāciju. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa ierīces rokturi, ja funkcijas izsaukums bija veiksmīgs.
DeviceConnectionStateInfo nlc::ResultConnectionState::getResult () const
Atgriež DeviceConnectionStateInfo Connected / atvienots / Connected Bootloader
ResultConnectionState () Šīs funkcijas palīdz definēt precīzu savienojuma stāvokļa rezultātu:
ResultConnectionState (DeviceConnectionStateInfo const & result_)
ResultConnectionState (std::string const & errorString_)
ResultConnectionState (NlcErrorCode const & errCode, std::string const & errorString_)
ResultConnectionState (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultConnectionState (rezultāta konst. un rezultāts)
8.28.12. ResultObjectEntry
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež objekta ierakstu. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
Versija: doc 1.4.2 / NanoLib 1.3.0
50
8 Klases/funkcijas atsauces
getResult () Atgriež ierīces ID vektoru, ja funkcijas izsaukums bija veiksmīgs.
nlc::ObjectEntry const& nlc::ResultObjectEntry::getResult () const
Atgriež const ObjectEntry
ResultObjectEntry () Šīs funkcijas palīdz definēt precīzu objekta ievades rezultātu:
ResultObjectEntry (nlc::ObjectEntry const & result_)
ResultObjectEntry (std::string const & errorString_)
ResultObjectEntry (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectEntry (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectEntry (rezultāta konst. un rezultāts)
8.28.13. ResultObjectSubEntry
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež objekta apakšierakstu. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Atgriež ierīces ID vektoru, ja funkcijas izsaukums bija veiksmīgs.
nlc::ObjectSubEntry const & nlc::ResultObjectSubEntry::getResult () const
Atgriež const ObjectSubEntry
ResultObjectSubEntry () Šīs funkcijas palīdz definēt precīzu objekta apakšieraksta rezultātu:
ResultObjectSubEntry (nlc::ObjectEntry const & result_)
ResultObjectSubEntry (std::string const & errorString_)
ResultObjectSubEntry (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectSubEntry (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectSubEntry (rezultāta konst. un rezultāts)
8.28.14. ResultProfinetDevices
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriež Profinet ierīci. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
Versija: doc 1.4.2 / NanoLib 1.3.0
51
8 Klases/funkcijas atsauces
getResult () Nolasa Profinet ierīces vektoru, ja funkcijas izsaukums bija veiksmīgs.
const std::vector & getResult () konst
ResultProfinetDevices () Tālāk norādītās funkcijas palīdz definēt precīzas Profinet ierīces.
ResultProfinetDevices (const std::vector & profinetDevices)
ResultProfinetDevices (konst Rezultāts un rezultāts)
ResultProfinetDevices (const std::string &errorText, NlcErrorCode errorCode = NlcErrorCode::GeneralError, uint32_t extendedErrorCode = 0)
8.28.15 RezultātiampleDataArray
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriežas kāample datu masīvs. Klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa datu masīvu, ja funkcijas izsaukums bija veiksmīgs.
const std::vector <SampleData> & getResult () const
RezultātiSampleDataArray () Tālāk norādītās funkcijas palīdz definēt precīzas Profinet ierīces.
RezultātiSampleDataArray (const std::vector <SampleData> & dataArray)
RezultātiSampleDataArray (const std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)
RezultātiSampleDataArray (const ResultSampleDataArray un citi)
RezultātiSampleDataArray (const Rezultāts un rezultāts)
8.28.16 RezultātiamplerState
NanoLib nosūta jums šīs klases gadījumu, ja funkcija atgriežas kāampler state.Šī klase pārmanto publiskās funkcijas/aizsargātos atribūtus no rezultātu klases, un tai ir šādas publiskā dalībnieka funkcijas:
getResult () Nolasa sampler stāvokļa vektors, ja funkcijas izsaukums bija veiksmīgs.
SamplerState getResult () const
Atgriež SamplerState>
Nekonfigurēts / Konfigurēts / Gatavs / Darbojas / Pabeigts / Neizdevās / Atcelts
Versija: doc 1.4.2 / NanoLib 1.3.0
52
8 Klases/funkcijas atsauces
RezultātiSamplerState () Tālāk norādītās funkcijas palīdz definēt precīzu sampler valsts.
RezultātiSamplerState (const Samplerštata štats)
RezultātiSamplerState (const std::string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t
paplašināts kļūdas kods = 0)
RezultātiSamplerState (const ResultSamplerState un citi)
RezultātiSamplerState (konst Rezultāts un rezultāts)
8.29 NlcErrorCode
Ja kaut kas noiet greizi, rezultātu klases ziņo par vienu no šajā uzskaitē norādītajiem kļūdu kodiem.
Kļūdas kods Success GeneralError BusUnavailable CommunicationError ProtocolError
ODDoesNotExist ODInvalid Access ODTypeNematch OperationPārtraukta darbībaNeatbalstīta InvalidOperation
InvalidArguments AccessDenied ResourceNav atrasts ResurssNepieejams OutOfMemory TimeOutError
C: D kategorija: apraksts R: iemesls C: nav. D: Nav kļūdu. R: Operācija veiksmīgi pabeigta.
C: nav norādīts. D: nenoteikta kļūda. R: Kļūme, kas neatbilst nevienai citai kategorijai.
C: Autobuss. D: Aparatūras kopne nav pieejama. R: Autobuss neeksistē, pārtraukts vai defekts.
C: Komunikācija. D: Neuzticama komunikācija. R: negaidīti dati, nepareizs CRC, kadra vai paritātes kļūdas utt.
C: Protokols. D: Protokola kļūda. R: atbilde pēc neatbalstīta protokola opcijas, ierīces ziņojums par neatbalstītu protokolu, kļūda protokolā (piemēram, SDO segmenta sinhronizācijas bits) utt. R: atbilde vai ierīces ziņojums uz neatbalstītu protokolu (opcijas) vai protokola kļūdām (piemēram, SDO). segmenta sinhronizācijas bits) utt. R: Neatbalstīts protokols (opcijas) vai kļūda protokolā (teiksim, SDO segmenta sinhronizācijas bits) utt.
C: Objektu vārdnīca. D: OD adrese neeksistē. R: Objekta vārdnīcā šādas adreses nav.
C: Objektu vārdnīca. D: Piekļuve OD adresei nav derīga. R: Mēģiniet rakstīt tikai lasāmu adresi vai lasīt no tikai rakstāmas adreses.
C: Objektu vārdnīca. D: veida neatbilstība. R: Vērtība nav konvertēta uz noteiktu veidu, piemēram, mēģinot uzskatīt virkni kā skaitli.
C: pieteikums. D: process pārtraukts. R: process tika pārtraukts pēc pieteikuma pieprasījuma. Atgriež tikai tad, ja darbība tiek pārtraukta ar atzvanīšanas funkciju, piemēram, no kopnes skenēšanas.
C: Bieži. D: process netiek atbalstīts. R: Nav aparatūras kopnes / ierīces atbalsta.
C: Bieži. D: process ir nepareizs pašreizējā kontekstā vai nederīgs ar pašreizējo argumentu. R: Atkārtota savienojuma mēģinājums ar jau pievienotajām kopnēm/ierīcēm. Atvienošanas mēģinājums ar jau atvienotajiem. Sāknēšanas ielādētāja darbības mēģinājums programmaparatūras režīmā vai otrādi.
C: Bieži. D: Arguments nav derīgs. R: Nepareiza loģika vai sintakse.
C: Bieži. D: Piekļuve ir liegta. R: tiesību vai iespēju trūkums pieprasītās darbības veikšanai.
C: Bieži. D: norādītā prece nav atrasta. R: aparatūras kopne, protokols, ierīce, ierīces OD adrese vai file netika atrasts.
C: Bieži. D: norādītā prece nav atrasta. R: aizņemts, neesošs, pārtraukts vai defekts.
C: Bieži. D: nepietiekama atmiņa. R: Pārāk maz atmiņas, lai apstrādātu šo komandu.
C: Bieži. D: Process ir beidzies. R: Atgriezt pēc taimauta beigām. Taimauts var būt ierīces reakcijas laiks, laiks, lai iegūtu kopīgu vai ekskluzīvu piekļuvi resursiem, vai laiks, lai pārslēgtu kopni/ierīci piemērotā stāvoklī.
Versija: doc 1.4.2 / NanoLib 1.3.0
53
8 Klases/funkcijas atsauces
8.30 NlcCallback
Šai atzvanīšanas vecākklasei ir šāda publiskā dalībnieka funkcija: atzvanīšana ()
virtuālā ResultVoid atzvanīšana ()
Atgriežas
RezultātsTukšums
8.31 NlcDataTransferCallback
Izmantojiet šo atzvanīšanas klasi datu pārsūtīšanai (programmaparatūras atjaunināšanai, NanoJ augšupielādei utt.). 1. Aparātprogrammatūras augšupielādei: definējiet “līdzklasi”, paplašinot šo ar pielāgotu atzvanīšanas metodi.
īstenošana. 2. Izmantojiet “līdzklases” gadījumus NanoLibAccessor.uploadFirmware () izsaukumos. Pašai galvenajai klasei ir šāda publiskā dalībnieka funkcija:
atzvanīšanas () virtuālā ResultVoid atzvanīšana (nlc::DataTransferInfo info, int32_t dati)
Atgriežas
RezultātsTukšums
8.32 NlcScanBusCallback
Izmantojiet šo atzvanīšanas klasi kopnes skenēšanai. 1. Definējiet “līdzklasi”, paplašinot šo ar pielāgotas atzvanīšanas metodes ieviešanu. 2. Izmantojiet “līdzklases” gadījumus NanoLibAccessor.scanDevices () izsaukumos. Pašai galvenajai klasei ir šāda publiskā dalībnieka funkcija.
atzvani ()
virtuālā ResultVoid atzvanīšana (nlc::BusScanInfo info, std::vector const & devices Atrasts, int32_t dati)
Atgriež ResultVoid
8.33 NlcLoggingAtzvans
Izmantojiet šo atzvanīšanas klasi, lai reģistrētu atzvanīšanu. 1. Definējiet klasi, kas paplašina šo klasi ar pielāgotas atzvanīšanas metodes ieviešanu. 2. Izmantojiet rādītāju uz tās gadījumiem, lai iestatītu NanoLibAccessor atzvanīšanu >
setLoggingCallback (…).
virtuālā tukšuma atzvanīšana (const std::string & payload_str, const std::string & formatted_str, const std::string & logger_name, const unsigned int log_level, const std::uint64_t time_since_epoch, const size_t thread_id)
8.34 SamplerInterfeiss
Izmantojiet šo klasi, lai konfigurētu, sāktu un apturētu sampler, vai iegūt sampled datus un ienest kāamplera statuss vai pēdējā kļūda. Klasei ir šādas publiskā dalībnieka funkcijas.
Versija: doc 1.4.2 / NanoLib 1.3.0
54
8 Klases/funkcijas atsauces
konfigurēt () Konfigurē kāampler.
virtuālais ResultVoid nlc::SamplerInterface::configure (const DeviceHandle deviceHandle, const SamplerConfiguration & samplerConfiguration)
Parametri [in] deviceHandle [in] samplerConfiguration
Atgriež ResultVoid
Norāda, kādai ierīcei konfigurēt sampler par. Norāda konfigurācijas atribūtu vērtības. Apstiprina, ka ir palaista tukšuma funkcija.
getData () Iegūst sampvadītie dati.
virtuālie rezultātiampleDataArray nlc::SamplerInterface::getData (const DeviceHandle deviceHandle)
Parametri [in] deviceHandle Returns ResultSampleDataArray
Norāda, kurai ierīcei iegūt datus.
Piegādā sampLED dati, kas var būt tukšs masīvs, ja sampSākumā ir aktīvs lerNotify.
getLastError () Iegūst kāampler pēdējā kļūda.
virtuālais ResultVoid nlc::SamplerInterface::getLastError (const DeviceHandle deviceHandle)
Atgriež ResultVoid
Apstiprina, ka ir palaista tukšuma funkcija.
getState () izpaužas kāamplera statuss.
virtuālie rezultātiamplerState nlc::SamplerInterface::getState (const DeviceHandle deviceHandle)
Atgriež rezultātusamplerState
Piegādā sampler valsts.
sākums () Sākas kāampler.
virtuālais ResultVoid nlc::SamplerInterface::start (const DeviceHandle deviceHandle, SamplerNotify* samplerNotify, int64_t applicationData)
Parametri [in] deviceHandle [in] SamplerNotify [in] applicationData
Atgriež ResultVoid
Norāda, kurā ierīcē palaist sampler par.
Norāda, kādu neobligāto informāciju ziņot (var būt nullptr).
Opcija: pārsūta ar lietojumprogrammu saistītos datus (lietotāja definētu 8 bitu vērtību masīvu / ierīces ID / indeksu vai datumu un laiku, mainīgā / funkcijas rādītāju utt.) uz s.amplerNotify.
Apstiprina, ka ir palaista tukšuma funkcija.
Versija: doc 1.4.2 / NanoLib 1.3.0
55
8 Klases/funkcijas atsauces
stop () Apstājas kāampler.
virtuālais ResultVoid nlc::SamplerInterface::stop (const DeviceHandle deviceHandle)
Parametri [in] deviceHandle Returns ResultVoid
Norāda, kura ierīce jāpārtrauc sampler par. Apstiprina, ka ir palaista tukšuma funkcija.
8.35 SamplerConfiguration struktūra
Šī struktūra satur datus samplera konfigurācijas opcijas (statiskas vai ne).
Publiski atribūti
std::vektors izsekotās adreses
Līdz 12 OD adresēm jābūt sampvadīja.
uint32_t
versija
Struktūras versija.
uint32_t
ilgums Milisekundes
Samplinga ilgums ms, no 1 līdz 65535
uint16_t
periods Milisekundes
Sampling periods ms.
uint16_t
skaitsOfSamples
Sampmazāka summa.
uint16_t
preTriggerNumberOfSamples
Sampmazāka summa pirms sprūda.
bool
izmantojot Programmatūras ieviešanu
Izmantojiet programmatūras ieviešanu.
bool
izmantojot NewFWSamplerImplementation Izmantojiet FW ieviešanu ierīcēm ar a
FW versija v24xx vai jaunāka.
SamplerMode
režīmā
Normālas, atkārtotas vai nepārtrauktas sampjūras līdaka.
SamplerTriggerCondition triggerCondition
Sākuma aktivizētāja nosacījumi: TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0x14 = 0x15 = 0x16. TC_LIELS_VAI_VIENĀDS = 0x17 TC_LESS = 0x18 TC_LESS_OR_EQUAL = 0x19 TC_VIENĀDS = 0x1 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE = XNUMXxindekssXNUMXC, OVd
SamplerTrigger
SamplerTrigger
Sprūda, lai sāktu kāampler?
Statiski publiskie atribūti
statisks constexpr izmērs_t SAMPLER_CONFIGURATION_VERSION = 0x01000000 statisks constexpr size_t MAX_TRACKED_ADDRESSES = 12
8.36 SamplerNotify
Izmantojiet šo klasi, lai aktivizētu sampler paziņojumus, kad sākat kāampler. Klasei ir šāda publiskā dalībnieka funkcija.
Versija: doc 1.4.2 / NanoLib 1.3.0
56
8 Klases/funkcijas atsauces
paziņot ()
Nodrošina paziņojuma ierakstu.
virtuālais tukšums nlc::SamplerNotify::notify (const ResultVoid & lastError, const SamplerState samplerState, const std::vector <SampleData> & sampleDatas, int64_t applicationData)
Parametri [in] lastError [in] samplerState
[in] sampleDatas [in] applicationData
Ziņo par pēdējo kļūdu, kas radās sampjūras līdaka. Ziņo sampler statuss paziņojuma laikā: Nekonfigurēts / Konfigurēts / Gatavs / Darbojas / Pabeigts / Neizdevās / Atcelts. Ziņo sampLED-datu masīvs. Pārskata lietojumprogrammas datus.
8.37 SampleData struktūra
Šī struktūra satur sampvadītie dati.
uin64_t iterationNumber
Sākas ar 0 un palielinās tikai atkārtošanās režīmā.
std::vektors<SampledValues> Satur s masīvuampvadītās vērtības.
8.38 SampledValue struct
Šī struktūra satur sampvadītās vērtības.
in64_t vērtība uin64_t CollectTimeMsec
Ietver izsekotās OD adreses vērtību.
Ietver savākšanas laiku milisekundēs, attiecībā pret sample sākums.
8.39 SamplerTrigger struktūra
Šī struktūra satur s sprūda iestatījumusampler.
SamplerTriggerCondition nosacījums
OdIndex uin32_t vērtība
Aktivizēšanas nosacījums: TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0x14 TC_GREATER = 0 TC_LIELS_VAI_VIENĀDS = 15x0 TC_LESS = 16x0 TC_LESS_OR_EQUAL = 17x0 TC_EQUAL = 18x0 TC_NOT_EQUAL = 19x0A TC_ONE_EDGE = 1x0B TC_MULTI_EDGE = 1x0C
Trigera OdIndex (adrese).
Nosacījuma vērtība vai bita numurs (sākot no nulles bita).
8.40 Sērijas struktūra
Šeit atrodiet savas seriālās komunikācijas opcijas un šādus publiskos atribūtus:
const std::string const SerialBaudRate
BAUD_RATE_OPTIONS_NAME = "sērijas datu pārraides ātrums" baudRate = SerialBaudRate struktūra
Versija: doc 1.4.2 / NanoLib 1.3.0
57
8 Klases/funkcijas atsauces
const std::string const SerialParity
PARITY_OPTIONS_NAME = "serial parity" parity = SerialParity struct
8.41 SerialBaudRate struktūra
Šeit atrodiet savu seriālo sakaru pārraides ātrumu un šādus publiskos atribūtus:
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string
BAUD_RATE_7200 = "7200" BAUD_RATE_9600 = "9600" BAUD_RATE_14400 = "14400" BAUD_RATE_19200 = "19200" BAUD_RATE_38400 = "38400" BAUD_RATE = "56000 BAUD_56000" = "57600_57600" 115200" BAUD_RATE_115200 = "128000" BAUD_RATE_128000 = "256000" BAUD_RATE_256000 = "XNUMX"
8.42 SerialParity struktūra
Šeit atrodiet savas sērijas paritātes opcijas un šādus publiskos atribūtus:
const std::string const std::string const std::string const std::string const std::string
NONE = "nav" ODD = "nepāra" PĀRĀ = "pāra" MARK = "atzīme" SPACE = "atstarpe"
Versija: doc 1.4.2 / NanoLib 1.3.0
58
9. Licences
9. Licences
NanoLib API saskarnes galvenes un piemampavota kodu ir licencējis Nanotec Electronic GmbH & Co. KG saskaņā ar Creative Commons Attribution 3.0 Unported License (CC BY). Bibliotēkas daļas, kas nodrošinātas binārajā formātā (pamata un lauka kopnes sakaru bibliotēkas), ir licencētas saskaņā ar Creative Commons AttributionNoDerivatives 4.0 starptautisko licenci (CC BY ND).
Creative Commons
Šis cilvēkiem lasāmais kopsavilkums neaizstās pašu licenci(-es). Attiecīgo licenci varat atrast vietnē creativecommons.org un ar saiti tālāk. Jūs varat:
CC BY 3.0
Kopīgot: Skatīt pa labi. Pielāgot: remiksējiet, pārveidojiet un papildiniet to
materiālu jebkuram mērķim, pat komerciāliem nolūkiem.
CC BY-ND 4.0
Kopīgot: kopējiet un izplatiet materiālu jebkurā datu nesējā vai formātā.
Licences devējs nevar atsaukt iepriekš minētās brīvības, kamēr jūs ievērojat šādus licences noteikumus:
CC BY 3.0
CC BY-ND 4.0
Attiecinājums: jums ir jānorāda atbilstošs raksturs, Attiecinājums: Skatīt pa kreisi. Bet: norādiet saiti uz šo
norādiet saiti uz licenci un norādiet, ja
cita licence.
tika veiktas izmaiņas. Jūs varat to darīt jebkurā
Bez atvasinājumiem: ja remiksējat, pārveidojat vai veidojat
saprātīgā veidā, bet ne tādā veidā, kas liek domāt
uz materiālu, jūs nedrīkstat izplatīt
saņem licences devēju apstiprinājumu jums vai jūsu lietošanai.
modificēts materiāls.
Nav papildu ierobežojumu: Jūs nedrīkstat piemērot Nav papildu ierobežojumu: Skatīt pa kreisi. juridiskiem noteikumiem vai tehnoloģiskiem pasākumiem, kas likumīgi
ierobežot citiem veikt jebkādas darbības saskaņā ar licenci
atļaujas.
Piezīme: jums nav jāievēro licence attiecībā uz materiāla elementiem, kas atrodas publiskajā domēnā vai gadījumos, kad jūsu izmantošanu atļauj piemērojams izņēmums vai ierobežojums.
Piezīme: garantija netiek sniegta. Licence var nedot jums visas atļaujas, kas nepieciešamas paredzētajam lietojumam. Piemēram,ampCitas tiesības, piemēram, publicitāte, privātums vai morālās tiesības, var ierobežot to, kā jūs izmantojat materiālu.
Versija: doc 1.4.2 / NanoLib 1.3.0
59
Nospiedums, kontaktpersona, versijas
©2024 Nanotec Electronic GmbH & Co.KGKapellenstr.685622 FeldkirchenGermanyTālr.+49(0) 89 900 686-0Fakss+49(0)89 900 686-50 info@nanotec.dewww.nanotec.com Visas tiesības paturētas. Kļūda, izlaidums, tehniskas vai satura izmaiņas iespējamas bez brīdinājuma. Citētie zīmoli/produkti ir to īpašnieku preču zīmes, un tie ir jāuzskata par tādiem. Oriģinālā versija.
Dokuments 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
+ Pievienots > Mainīts # Fiksēts > Pārstrādājiet sniegto examples.
+ NanoLib Modbus: pievienots ierīces bloķēšanas mehānisms Modbus VCP. # NanoLib Core: fiksēta savienojuma stāvokļa pārbaude. # NanoLib kods: koriģēta kopnes aparatūras atsauces noņemšana.
+ NanoLib-CANopen: atbalsts Peak PCAN-USB adapterim (IPEH-002021/002022).
> NanoLib Core: mainīts reģistrēšanas atzvanīšanas interfeiss (LogLevel aizstāts ar LogModule). # NanoLib Logger: ir izlabota atdalīšana starp kodolu un moduļiem. # Modbus TCP: Fiksēts programmaparatūras atjauninājums FW4. # EtherCAT: Fiksēta NanoJ programmas augšupielāde Core5. # EtherCAT: Fiksēts Core5 programmaparatūras atjauninājums.
# Modbus RTU: Fiksētas laika problēmas ar zemu datu pārraides ātrumu programmaparatūras atjaunināšanas laikā. # RESTful: Fiksēta NanoJ programmas augšupielāde.
# NanoLib moduļi Sampler: Pareiza s lasīšanaampvadītās Būla vērtības.
+ Java 11 atbalsts visām platformām. + Python 3.11/3.12 atbalsts visām platformām. + Jauns reģistrēšanas atzvanīšanas interfeiss (skatiet piemamples). + Atzvanīšanas izlietne NanoLib Logger. > Atjauniniet reģistrētāju uz versiju 1.12.0. > NanoLib moduļi Sampler: atbalsts tagad Nanotec kontrollera programmaparatūrai v24xx. > NanoLib moduļi Sampler: s izmantotās struktūras izmaiņasampler konfigurācija. > NanoLib moduļi Sampler: nepārtraukts režīms ir sinonīms bezgalīgam; sprūda stāvoklis tiek pārbaudīts vienu reizi; s skaitsamples jābūt 0. > NanoLib Modules Sampler: parasta prioritāte pavedienam, kas apkopo datus programmaparatūras režīmā. > NanoLib moduļi Sampler: pārrakstīts algoritms, lai noteiktu pāreju no gatavības un darbības stāvokļa. # NanoLib Core: vairs nav piekļuves pārkāpumu (0xC0000005), aizverot 2 vai vairākas ierīces, izmantojot vienu un to pašu kopnes aparatūru. # NanoLib Core: vairs nav segmentācijas kļūdas, pievienojot PEAK adapteri operētājsistēmā Linux. # NanoLib moduļi Sampler: Pareizi sampLED vērtību nolasīšana programmaparatūras režīmā. # NanoLib moduļi Sampler: pareiza 502X:04 konfigurācija. # NanoLib moduļi Sampler: Pareiza buferu sajaukšana ar kanāliem. # NanoLib-Canopen: palielināts CAN taimauts, lai nodrošinātu robustumu un pareizu skenēšanu ar zemāku datu pārraides ātrumu. # NanoLib-Modbus: VCP noteikšanas algoritms īpašām ierīcēm (USB-DA-IO).
+ EtherCAT atbalsts.
+ Piezīme par VS projekta iestatījumiem sadaļā Projekta konfigurēšana.
+ getDeviceHardwareGroup (). + getProfinetDCP (isServiceAvailable). + getProfinetDCP (validateProfinetDeviceIp). + autoAssignObjectDictionary (). + getXmlFileVārds (). + const std::string & xmlFileCeļš programmā addObjectDictionary (). + getSamplerInterface ().
Produkts 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)
Versija: doc 1.4.2 / NanoLib 1.3.0
60
10 Nospiedums, kontaktpersona, versijas
Dokuments
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
+ Pievienots > Mainīts # Fiksēts + RebootDevice (). + Kļūdas kods ResourceNav pieejams failiem getDeviceBootloaderVersion (), ~VendorId (), ~HardwareVersion (), ~SerialNumber un ~Uid. > programmaparatūraUploadFromFile tagad augšupielādējiet FirmwareFromFile (). > programmaparatūraAugšupielādēt () tagad augšupielādēt Programmaparatūru (). > bootloaderUploadFromFile () tagad augšupielādēBootloaderFromFile (). > bootloaderUpload () tagad uploadBootloader (). > bootloaderFirmwareUploadFromFile (), lai augšupielādētuBootloaderFirmwareFromFile (). > bootloaderFirmwareUpload () tagad uploadBootloaderFirmware (). > nanojUploadFromFile () tagad augšupielādēNanoJFromFile (). > nanojAugšupielādēt () tagad augšupielādētNanoJ (). > objectDictionaryLibrary () tagad getObjectDictionaryLibrary (). > String_String_Map tagad StringStringMap. > NanoLib-Common: ātrāka listAvailableBusHardware un openBusHardwareWithProtocol izpilde ar Ixxat adapteri. > NanoLib-CANopen: tiek izmantoti noklusējuma iestatījumi (1000 k bodu ātrums, Ixxat kopnes numurs 0), ja kopnes aparatūras opcijas ir tukšas. > NanoLib-RESTful: administratora atļauja ir novecojusi saziņai ar Ethernet bootloader operētājsistēmā Windows, ja ir pieejams npcap / winpcap draiveris. # NanoLib-CANopen: kopnes aparatūra tagad tiek atvērta bez avārijām ar tukšām opcijām. # NanoLib-Common: openBusHardwareWithProtocol () bez atmiņas noplūdes tagad.
+ Linux ARM64 atbalsts. + USB lielapjoma atmiņa / REST / Profinet DCP atbalsts. + checkConnectionState (). + getDeviceBootloaderVersion (). + ResultProfinetDevices. + NlcErrorCode (aizstāts NanotecExceptions). + NanoLib Modbus: VCP / USB centrmezgls, kas apvienots ar USB. > Modbus TCP skenēšana atgriež rezultātus. < Modbus TCP sakaru latentums paliek nemainīgs.
+ Vairāk ObjectEntryDataType (sarežģīts un profesionālsfile-specifisks). + IOError atgriežas, ja connectDevice () un scanDevices () neatrod nevienu. + Tikai 100 ms nominālais taimauts CanOpen / Modbus.
+ Modbus atbalsts (plus USB centrmezgls, izmantojot VCP). + Nodaļa Sava Linux projekta izveide. + extraHardwareSpecifier uz BusHardwareId (). + extraId_ un extraStringId_ līdz DeviceId ().
+ setBusState (). + getDeviceBootloaderBuildId (). + getDeviceFirmwareBuildId (). + getDeviceHardwareVersion (). # Kļūdu labojumi.
Izdevums.
Produkts
0.8.0 0.7.1 0.7.0 0.5.1 0.5.1
Versija: doc 1.4.2 / NanoLib 1.3.0
61
Dokumenti / Resursi
![]() |
Nanotic NanoLib C++ programmēšana [pdfLietotāja rokasgrāmata NanoLib C programmēšana, C programmēšana, programmēšana |

