Nanotic-LOGO

Nanotic NanoLib C++ Programovanie

Nanotic-NanoLib-C++-Programovanie-PRODUKT

Informácie o produkte

Špecifikácie

  • Názov produktu: NanoLib
  • Programovanie Jazyk: C++
  • Verzia produktu: 1.3.0
  • Verzia návodu na použitie: 1.4.2

Knižnica NanoLib je určená na programovanie riadiaceho softvéru pre regulátory Nanotec. Poskytuje používateľské rozhranie, základné funkcie a komunikačné knižnice na uľahčenie vývoja riadiacich aplikácií.

Návod na použitie produktu

  • Skôr ako začnete:
    • Uistite sa, že váš systém spĺňa hardvérové ​​požiadavky uvedené v príručke. Určené publikum pre tento produkt zahŕňa vývojárov, ktorí chcú vytvoriť riadiaci softvér pre ovládače Nanotec.
  • Začíname:
    • Ak chcete začať používať NanoLib, postupujte podľa týchto krokov:
    • Začnite importovaním NanoLib do vášho projektu.
    • Podľa potreby nakonfigurujte nastavenia projektu.
    • Zostavte svoj projekt tak, aby obsahoval funkcie NanoLib.
  • Vytváranie projektov:
    • Môžete vytvárať projekty pre prostredia Windows aj Linux. Postupujte podľa špecifických pokynov uvedených v príručke pre každú platformu.
  • Referencie tried/funkcií:
    • Podrobný návod na triedy a funkcie dostupné v NanoLib na programovanie riadiaceho softvéru nájdete v používateľskej príručke.

často kladené otázky

  • Otázka: Aký je účel NanoLibu?
    • A: NanoLib je knižnica na programovanie riadiaceho softvéru pre regulátory Nanotec, ktorá poskytuje základné funkcie a komunikačné schopnosti.
  • Otázka: Ako môžem začať s NanoLib?
    • A: Začnite importovaním NanoLib do svojho projektu, konfiguráciou nastavení projektu a zostavením projektu tak, aby využíval funkcie NanoLib.

Návod na použitie NanoLib
C++

Platí s verziou produktu 1.3.0

Verzia návodu na použitie: 1.4.2

Cieľ dokumentu a konvencie

Tento dokument popisuje nastavenie a používanie knižnice NanoLib a obsahuje odkaz na všetky triedy a funkcie na programovanie vlastného riadiaceho softvéru pre regulátory Nanotec. Používame nasledujúce typy písma:
Podčiarknutý text označuje krížový odkaz alebo hypertextový odkaz.
Example 1: Presné pokyny pre NanoLibAccessor nájdete v časti Nastavenie. Naprample 2: Nainštalujte ovládač Ixxat a pripojte adaptér CAN-na-USB. Kurzíva znamená: Toto je pomenovaný objekt, cesta ponuky / položka, karta / file meno alebo (ak je to potrebné) cudzojazyčný výraz.
Example 1: Vyberte File > Nový > Prázdny dokument. Otvorte kartu Nástroj a vyberte možnosť Komentár. Naprample 2: Tento dokument rozdeľuje používateľov (= Nutzer; usuario; utente; utilisateur; utente atď.) na:
– Používateľ tretej strany (= Drittnutzer; tercero usuario; terceiro utente; tiers utilisateur; terzo utente atď.). – Koncový užívateľ (= Endnutzer; usuario final; utente final; utilisateur final; utente finale atď.).
Kuriér označuje bloky kódu alebo programovacie príkazy. Naprample 1: Cez Bash zavolajte sudo make install na kopírovanie zdieľaných objektov; potom zavolajte ldconfig. Naprample 2: Na zmenu úrovne protokolovania v NanoLib použite nasledujúcu funkciu NanoLibAccessor:
// ***** Variant C++ *****
void setLoggingLevel(LogLevel level);
Tučný text zdôrazňuje jednotlivé slová kritického významu. Prípadne výkričníky v zátvorkách zdôrazňujú kritickú (!) dôležitosť.
Example 1: Chráňte seba, ostatných a svoje vybavenie. Riaďte sa našimi všeobecnými bezpečnostnými poznámkami, ktoré sú všeobecne platné pre všetky produkty Nanotec.
Example 2: Pre vašu vlastnú ochranu dodržiavajte aj špecifické bezpečnostné pokyny, ktoré sa vzťahujú na tento konkrétny produkt. Sloveso spolukliknúť znamená kliknutie sekundárnym tlačidlom myši na otvorenie kontextového menu atď.
Example 1: Spoločne kliknite na file, vyberte Premenovať a premenujte file. Naprample 2: Ak chcete skontrolovať vlastnosti, spolu kliknite na file a vyberte Vlastnosti.

Verzia: doc 1.4.2 / NanoLib 1.3.0

4

Skôr ako začnete

Skôr ako začnete NanoLib používať, pripravte si svoj počítač a informujte sa o zamýšľanom použití a obmedzeniach knižnice.
2.1 Systémové a hardvérové ​​požiadavky

Nanotic-NanoLib-C++-Programming-FIG- (1)
UPOZORNENIE Porucha z 32-bitovej prevádzky alebo prerušeného systému! Používajte a dôsledne udržiavajte 64-bitový systém. Dodržiavajte ukončenie výroby OEM a pokyny.

NanoLib 1.3.0 podporuje všetky produkty Nanotec s CANopen, Modbus RTU (aj USB na virtuálnom com porte), Modbus TCP, EtherCat a Profinet. Pre staršie NanoLibs: Pozrite si zoznam zmien v tiráži. Len na vaše riziko: používanie staršieho systému. Poznámka: Ak sa pri používaní adaptéra USB založeného na FTDI stretnete s problémami, postupujte podľa platných pokynov OEM a nastavte latenciu čo najnižšiu.

Požiadavky (povinný 64-bitový systém)
Windows 10 alebo 11 s Visual Studio 2019 verzia 16.8 alebo novšia a Windows SDK 10.0.20348.0 (verzia 2104) alebo novšia
Redistribuovateľné položky C++ 2017 alebo vyššie CANopen: Základný ovládač Ixxat VCI alebo PCAN (voliteľné) Modul EtherCat / Profinet DCP: Modul Npcap alebo WinPcap RESTful: Npcap, WinPcap alebo oprávnenie správcu na
komunikovať s ethernetovými bootloadermi
Linux s Ubuntu 20.04 LTS až 24 (všetky x64 a arm64)
Hlavičky jadra a paket libpopt-dev Profinet DCP: CAP_NET_ADMIN a CAP_NET_RAW abili-
väzby CANopen: ovládač Ixxat ECI alebo adaptér Peak PCAN-USB EtherCat: CAP_NET_ADMIN, CAP_NET_RAW a
CAP_SYS_NICE schopnosti RESTful: CAP_NET_ADMIN schopnosť komunikovať s Eth-
ernet bootloadery (odporúčané tiež: CAP_NET_RAW)

Jazyk, fieldbus adaptéry, káble
C++ GCC 7 alebo vyšší (Linux)
EtherCAT: Ethernetový kábel VCP / USB rozbočovač: teraz jednotný USB USB veľkokapacitné úložisko: USB kábel REST: Ethernetový kábel CANopen: Ixxat USB-to-CAN V2; Na-
notec ZK-USB-CAN-1, Peak PCANUSB adaptér Žiadna podpora Ixxat pre Ubuntu na arm64
Modbus RTU: Nanotec ZK-USB-RS485-1 alebo ekvivalentný adaptér; USB kábel na virtuálnom com porte (VCP)
Modbus TCP: Ethernetový kábel podľa údajového listu produktu

2.2 Zamýšľané použitie a publikum
NanoLib je programová knižnica a softvérový komponent na obsluhu a komunikáciu s regulátormi Nanotec v širokej škále priemyselných aplikácií a len pre náležite skúsených programátorov.
Kvôli neschopnému hardvéru (PC) a operačnému systému v reálnom čase nie je NanoLib na použitie v aplikáciách, ktoré potrebujú synchrónny viacosový pohyb alebo sú vo všeobecnosti časovo citlivé.
V žiadnom prípade nesmiete integrovať NanoLib ako bezpečnostný komponent do produktu alebo systému. Pri doručení koncovým používateľom musíte ku každému produktu s komponentom vyrobeným spoločnosťou Nanotec pridať príslušné varovné upozornenia a pokyny na bezpečné používanie a bezpečnú prevádzku. Všetky varovné upozornenia vydané spoločnosťou Nanotec musíte odovzdať priamo koncovému používateľovi.
2.3 Rozsah dodávky a záruka
NanoLib prichádza ako *.zip priečinok z nášho stiahnutia webbuď pre EMEA / APAC alebo AMERIKA. Pred nastavením prevzatý súbor riadne uložte a rozbaľte. Balíček NanoLib obsahuje:

Verzia: doc 1.4.2 / NanoLib 1.3.0

5

2 Skôr ako začnete

Hlavičky rozhrania ako zdrojový kód (API)

Jadro funguje ako knižnice v binárnom formáte: nano-

Knižnice, ktoré uľahčujú komunikáciu: nanolibm_lib.dll

[yourfieldbus].dll atď.

Exampprojekt: naprample.sln (Visual Studio

projekt) a naprample.cpp (hlavný file)

Pre rozsah záruky dodržiavajte a) naše zmluvné podmienky pre EMEA / APAC alebo AMERiku a b) všetky licenčné podmienky. Poznámka: Nanotec nezodpovedá za chybnú alebo neprimeranú kvalitu, manipuláciu, inštaláciu, prevádzku, používanie a údržbu zariadení tretích strán! Pre náležitú bezpečnosť sa vždy riaďte platnými pokynmi OEM.

Verzia: doc 1.4.2 / NanoLib 1.3.0

6

Architektúra NanoLib

Modulárna softvérová štruktúra NanoLib vám umožňuje usporiadať voľne prispôsobiteľné funkcie ovládača motora / prevádzkovej zbernice okolo prísne vopred zostaveného jadra. NanoLib obsahuje nasledujúce moduly:

Používateľské rozhranie (API)

Jadro NanoLib

Rozhranie a pomocné triedy, ktoré knižnice, ktoré

Komunikačné knižnice Knižnice špecifické pre fieldbus, ktoré

získate prístup k implementácii vášho kontrolóra pomocou funkcie API rozhrania medzi NanoLib

OD (objektový slovník)

komunikovať s autobusovými knižnicami.

hardvér jadra a zbernice.

založené na základnej funkcii NanoLib-

národnosti.

3.1 Používateľské rozhranie

Používateľské rozhranie pozostáva z hlavičkového rozhrania files môžete použiť na prístup k parametrom regulátora. Triedy používateľského rozhrania, ako sú popísané v odkaze na triedy/funkcie, vám umožňujú:
Pripojte k hardvéru (adaptér priemyselnej zbernice) aj k riadiacemu zariadeniu. Vstúpte do OD zariadenia, aby ste mohli čítať/zapisovať parametre ovládača.

3.2 Jadro NanoLib

Jadro NanoLib sa dodáva s importnou knižnicou nanolib.lib. Implementuje funkčnosť používateľského rozhrania a zodpovedá za:
Načítanie a správa komunikačných knižníc. Poskytovanie funkcií používateľského rozhrania v NanoLibAccessor. Tento komunikačný vstupný bod de-
vylepšuje súbor operácií, ktoré môžete vykonávať na jadre NanoLib a komunikačných knižniciach.

3.3 Komunikačné knižnice

Okrem nanotec.services.nanolib.dll (užitočné pre vaše voliteľné Plug & Drive Studio), NanoLib ponúka nasledujúce komunikačné knižnice:

nanolibm_canopen.dll nanolibm_modbus.dll

nanolibm_ethercat.dll nanolibm_restful-api.dll

nanolibm_usbmmsc.dll nanolibm_profinet.dll

Všetky knižnice tvoria vrstvu hardvérovej abstrakcie medzi jadrom a radičom. Jadro ich načíta pri štarte z určeného priečinka projektu a používa ich na nadviazanie komunikácie s kontrolérom zodpovedajúcim protokolom.

Verzia: doc 1.4.2 / NanoLib 1.3.0

7

Začíname

Prečítajte si, ako správne nastaviť NanoLib pre váš operačný systém a ako pripojiť hardvér podľa potreby.
4.1 Pripravte si systém
Pred inštaláciou ovládačov adaptéra si najprv pripravte počítač na operačný systém. Ak chcete pripraviť počítač spolu s operačným systémom Windows, nainštalujte si MS Visual Studio s rozšíreniami C++. Ak chcete nainštalovať make a gcc pomocou Linux Bash, zavolajte sudo apt install build-essentials. Potom povoľte funkcie CAP_NET_ADMIN, CAP_NET_RAW a CAP_SYS_NICE pre aplikáciu, ktorá používa NanoLib: 1. Zavolajte sudo setcap 'cap_net_admin,cap_net_raw,cap_sys_nice+eip'
meno>. 2. Až potom nainštalujte ovládače adaptéra.
4.2 Nainštalujte ovládač adaptéra Ixxat pre Windows
Iba po riadnej inštalácii ovládača môžete použiť adaptér USB-to-CAN V2 od Ixxat. Prečítajte si príručku k produktu USB disky, kde sa dozviete, či/ako aktivovať virtuálny port (VCP). 1. Stiahnite si a nainštalujte ovládač Ixxat VCI 4 pre Windows z www.ixxat.com. 2. Pripojte kompaktný adaptér Ixxat USB-to-CAN V2 k počítaču cez USB. 3. Pomocou Správcu zariadení: Skontrolujte, či sú ovládač aj adaptér správne nainštalované/rozpoznané.
4.3 Nainštalujte ovládač adaptéra Peak pre Windows
Až po riadnej inštalácii ovládača môžete použiť adaptér PCAN-USB od spoločnosti Peak. Prečítajte si príručku k produktu USB disky, kde sa dozviete, či/ako aktivovať virtuálny port (VCP). 1. Stiahnite si a nainštalujte nastavenie ovládača zariadenia Windows (= inštalačný balík s ovládačmi zariadenia, nástrojmi a
API) od http://www.peak-system.com. 2. Pripojte Peak PCAN-USB adaptér k PC cez USB. 3. Pomocou Správcu zariadení: Skontrolujte, či sú ovládač aj adaptér správne nainštalované/rozpoznané.
4.4 Nainštalujte ovládač adaptéra Ixxat pre Linux
Iba po riadnej inštalácii ovládača môžete použiť adaptér USB-to-CAN V2 od Ixxat. Poznámka: Ostatné podporované adaptéry potrebujú vaše povolenia sudo chmod +777/dev/ttyACM* (* číslo zariadenia). Prečítajte si príručku k produktu USB disky, kde sa dozviete, či/ako aktivovať virtuálny port (VCP). 1. Nainštalujte softvér potrebný pre ovládač ECI a demo aplikáciu:
sudo apt-get update apt-get install libusb-1.0-0-dev libusb-0.1-4 libc6 libstdc++6 libgcc1 buildessential
2. Stiahnite si ovládač ECI-for-Linux z www.ixxat.com. Rozbaľte ho cez:
rozbaľte súbor eci_driver_linux_amd64.zip
3. Nainštalujte ovládač pomocou:
cd /EciLinux_amd/src/KernelModule sudo make install-usb
4. Skontrolujte úspešnú inštaláciu ovládača kompiláciou a spustením demo aplikácie:
cd /EciLinux_amd/src/EciDemos/ sudo make cd /EciLinux_amd/bin/release/ ./LinuxEciDemo

Verzia: doc 1.4.2 / NanoLib 1.3.0

8

4 Začíname
4.5 Nainštalujte ovládač adaptéra Peak pre Linux
Až po riadnej inštalácii ovládača môžete použiť adaptér PCAN-USB od spoločnosti Peak. Poznámka: Ostatné podporované adaptéry potrebujú vaše povolenia sudo chmod +777/dev/ttyACM* (* číslo zariadenia). Prečítajte si príručku k produktu USB disky, kde sa dozviete, či/ako aktivovať virtuálny port (VCP). 1. Skontrolujte, či má váš Linux hlavičky jadra: ls /usr/src/linux-headers-`uname -r`. Ak nie, nainštalujte
ich: sudo apt-get install linux-headers-`uname -r` 2. Až teraz nainštalujte balík libpopt-dev: sudo apt-get install libpopt-dev 3. Stiahnite si potrebný balík ovládačov (peak-linux-driver- xxx.tar.gz) z www.peak-system.com. 4. Na rozbalenie použite: tar xzf peak-linux-driver-xxx.tar.gz 5. V rozbalenom priečinku: Skompilujte a nainštalujte ovládače, základnú knižnicu PCAN atď.: urobte všetky
sudo make install 6. Ak chcete skontrolovať funkciu, zapojte adaptér PCAN-USB.
a) Skontrolujte modul jadra:
lsmod | grep pcan b) ... a zdieľaná knižnica:
ls -l /usr/lib/libpcan*
Poznámka: Ak sa vyskytnú problémy s USB3, použite port USB2.
4.6 Pripojte svoj hardvér
Aby ste mohli spustiť projekt NanoLib, pripojte kompatibilný ovládač Nanotec k počítaču pomocou adaptéra. 1. Vhodným káblom pripojte adaptér k ovládaču. 2. Pripojte adaptér k PC podľa údajového listu adaptéra. 3. Zapnite regulátor pomocou vhodného napájacieho zdroja. 4. Ak je to potrebné, zmeňte nastavenia komunikácie ovládača Nanotec podľa pokynov v príručke k produktu.
4.7 Načítať NanoLib
Na prvý začiatok s rýchlymi a jednoduchými základmi môžete (ale nesmiete) použiť nášho example projekt. 1. V závislosti od vášho regiónu: Stiahnite si NanoLib z nášho webbuď pre EMEA / APAC alebo AMERIKA. 2. Rozbaľte balík files / priečinky a vyberte jednu možnosť: Rýchle a jednoduché základy: Pozrite si časť Spustenie príkladuample projekt. Pokročilé prispôsobenie v systéme Windows: Pozrite si časť Vytvorenie vlastného projektu Windows. Pokročilé prispôsobenie v systéme Linux: Pozrite si tému Vytvorenie vlastného projektu Linux.

Verzia: doc 1.4.2 / NanoLib 1.3.0

9

Počnúc example projekt

S riadne nabitým NanoLibom sa exampProjekt vám ukáže používanie NanoLib s ovládačom Nanotec. Poznámka: Ku každému kroku uveďte komentáre v poskytnutom príkladeample kód vysvetľuje použité funkcie. BývalýampProjekt pozostáva z: `*_functions_example.*' files, ktoré obsahujú implementácie pre funkcie rozhrania NanoLib `*_callback_example.*' files, ktoré obsahujú implementácie pre rôzne spätné volania (skenovanie, dáta a
logging) `menu_*.*' file, ktorý obsahuje logiku menu a kód Example.* file, ktorý je hlavným programom, vytvára menu a inicializuje všetky používané parametre Sampler_example.* file, ktorý obsahuje example implementácia pre sampler použitie. Viac nájdeš napramples, s niektorými pohybovými príkazmi pre rôzne prevádzkové režimy, v Knowledge Base na nanotec.com. Všetky sú použiteľné vo Windows alebo Linuxe.
V systéme Windows s Visual Studio 1. Otvorte súbor Example.sln file. 2. Otvorte example.cpp. 3. Zostavte a spustite exampkód.
V Linuxe cez Bash 1. Rozbaľte zdrojový kód file, prejdite do priečinka s rozbaleným obsahom. Hlavný file pre example je
example.cpp. 2. V bash zavolajte:
a. „sudo make install“ na skopírovanie zdieľaných objektov a zavolanie ldconfig. b. „make all“ na vytvorenie spustiteľného testu. 3. Priečinok bin obsahuje spustiteľný súbor example file. Podľa bash: Prejdite do výstupného priečinka a zadajte ./example. Ak sa nevyskytne žiadna chyba, vaše zdieľané objekty sú teraz správne nainštalované a vaša knižnica je pripravená na použitie. Ak chyba znie ./example: chyba pri načítavaní zdieľaných knižníc: libnanolib.so: nemožno otvoriť zdieľaný objekt file: Nie také file alebo adresára, inštalácia zdieľaných objektov zlyhala. V tomto prípade postupujte podľa nasledujúcich krokov. 4. Vytvorte nový priečinok v /usr/local/lib (vyžadujú sa administrátorské práva). Do bashu zadajte:
sudo mkdir /usr/local/lib/nanotec
5. Skopírujte všetky zdieľané objekty zo zip filepriečinok lib používateľa:
nainštalovať ./lib/*.so /usr/local/lib/nanotec/
6. Skontrolujte obsah cieľového priečinka pomocou:
ls -al /usr/local/lib/nanotec/
Mal by obsahovať zoznam zdieľaného objektu files z priečinka lib. 7. Spustite ldconfig v tomto priečinku:
sudo ldconfig /usr/local/lib/nanotec/
Bývalýample je implementovaný ako aplikácia CLI a poskytuje rozhranie ponuky. Položky ponuky sú založené na kontexte a budú povolené alebo zakázané v závislosti od stavu kontextu. Ponúkajú vám možnosť vybrať a spustiť rôzne funkcie knižnice podľa typického pracovného postupu pri manipulácii s ovládačom: 1. Skontrolujte, či je v počítači pripojený hardvér (adaptéry) a uveďte ich. 2. Vytvorte pripojenie k adaptéru. 3. Vyhľadajte na zbernici pripojené riadiace zariadenia. 4. Pripojte sa k zariadeniu.

Verzia: doc 1.4.2 / NanoLib 1.3.0

10

5 Spustenie example projekt
5. Otestujte jednu alebo viac funkcií knižnice: Čítajte/zapisujte z/do slovníka objektov ovládača, aktualizujte firmvér, nahrávajte a spúšťajte program NanoJ, spúšťajte motor a vylaďte ho, konfigurujte a používajte protokolovanieampler.
6. Zatvorte pripojenie, najprv k zariadeniu, potom k adaptéru.

Verzia: doc 1.4.2 / NanoLib 1.3.0

11

Vytvorenie vlastného projektu Windows

Vytvorte, skompilujte a spustite svoj vlastný projekt Windows na používanie NanoLib.
6.1 Importovať NanoLib
Importujte hlavičku NanoLib files a knižníc cez MS Visual Studio.
1. Otvorte Visual Studio. 2. Cez Create new project > Console App C++ > Next: Vyberte typ projektu. 3. Pomenujte svoj projekt (tu: NanolibTest), aby ste vytvorili priečinok projektu v Prieskumníkovi riešení. 4. Zvoľte Dokončiť. 5. Otvorte okná file prieskumníka a prejdite do nového vytvoreného priečinka projektu. 6. Vytvorte dva nové priečinky, inc a lib. 7. Otvorte priečinok balíka NanoLib. 8. Odtiaľ: Skopírujte hlavičku filez priečinka include do priečinka projektu inc a všetky súbory .lib a .dll
files do nového priečinka projektu lib. 9. Skontrolujte, či má priečinok projektu náležitú štruktúru, naprample:

Nanotic-NanoLib-C++-Programming-FIG- (2)ect priečinok pre náležitú štruktúru:
. 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.vcxprojestproxfilters NanolibTest.vcxproj.cfilters NanolibTest.sln
6.2 Nakonfigurujte svoj projekt
Na nastavenie projektov NanoLib použite Solution Explorer v MS Visual Studio. Poznámka: Pre správnu činnosť NanoLibu vyberte konfiguráciu vydania (nie ladenia!) v nastaveniach projektu Visual C++; potom zostavte a prepojte projekt s runtimemi VC redistribuovateľných komponentov C++ [2022].
1. V Prieskumníkovi riešení: Prejdite do priečinka projektu (tu: NanolibTest). 2. Spoločným kliknutím na priečinok otvorte kontextovú ponuku. 3. Vyberte Vlastnosti. 4. Aktivujte Všetky konfigurácie a Všetky platformy. 5. Vyberte C/C++ a prejdite na položku Additional Include Directories. 6. Vložte: $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) 7. Vyberte Linker a prejdite na Ďalšie adresáre knižnice. 8. Vložte: $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) 9. Rozšírte Linker a vyberte Input. 10. Prejdite na Ďalšie závislosti a vložte: nanolib.lib;%(AdditionalDependencies) 11.Potvrďte cez OK.

Verzia: doc 1.4.2 / NanoLib 1.3.0

12

6 Vytvorenie vlastného projektu Windows
12. Prejdite do Konfigurácia > C++ > Jazyk > Jazykový štandard > ISO C++17 štandard a nastavte jazykový štandard na C++17 (/std:c++17).
6.3 Zostavte svoj projekt
Zostavte si svoj projekt NanoLib v MS Visual Studio. 1. Otvorte hlavný súbor *.cpp file (tu: nanolib_example.cpp) a v prípade potreby upravte kód. 2. Vyberte Build > Configuration Manager. 3. Zmeňte aktívne platformy riešení na x64. 4. Potvrďte cez Close. 5. Vyberte Build > Build solution. 6. Žiadna chyba? Skontrolujte, či váš kompilačný výstup správne uvádza:
1>—— Čisté spustenie: Projekt: NanolibTest, Konfigurácia: Debug x64 —–========== Čistenie: 1 úspešné, 0 neúspešné, 0 preskočené ==========

Verzia: doc 1.4.2 / NanoLib 1.3.0

13

7 Vytvorenie vlastného projektu Linux
7 Vytvorenie vlastného projektu Linux
Vytvorte, skompilujte a spustite svoj vlastný projekt Linux na používanie NanoLib. 1. V rozbalenej inštalačnej súprave NanoLib: Otvorte /nanotec_nanolib. 2. Nájdite všetky zdieľané objekty v súbore tar.gz file. 3. Vyberte jednu možnosť: Nainštalujte každú knižnicu buď pomocou značky Makefile alebo ručne.
7.1 Nainštalujte zdieľané objekty pomocou Makefile
Použite Makefile s Linux Bash na automatickú inštaláciu všetkých predvolených *.so files. 1. Cez Bash: Prejdite do priečinka obsahujúceho značkufile. 2. Skopírujte zdieľané objekty cez:
sudo make install 3. Potvrďte cez:
ldconfig
7.2 Nainštalujte zdieľané objekty ručne
Použite Bash na inštaláciu všetkých *.so files NanoLib ručne. 1. Cez Bash: Vytvorte nový priečinok v /usr/local/lib. 2. Potrebné práva správcu! Typ:
sudo mkdir /usr/local/lib/nanotec 3. Prejdite do priečinka rozbaleného inštalačného balíka. 4. Skopírujte všetky zdieľané objekty z priečinka lib cez:
install ./nanotec_nanolib/lib/*.so /usr/local/lib/nanotec/ 5. Skontrolujte obsah cieľového priečinka cez:
ls -al /usr/local/lib/nanotec/ 6. Skontrolujte, či sú uvedené všetky zdieľané objekty z priečinka lib. 7. Spustite ldconfig v tomto priečinku cez:
sudo ldconfig /usr/local/lib/nanotec/
7.3 Vytvorte svoj projekt
S nainštalovanými zdieľanými objektmi: Vytvorte nový projekt pre svoj Linux NanoLib. 1. Cez Bash: Vytvorte nový priečinok projektu (tu: NanoLibTest) cez:
mkdir NanoLibTest cd NanoLibTest
2. Skopírujte hlavičku files do zahrnutej zložky (tu: inc) cez: mkdir inc cp / FILE IS>/nanotec_nanolib/inc/*.hpp inc
3. Vytvorte hlavnú file (NanoLibTest.cpp) cez: #include “accessor_factory.hpp” #include

Verzia: doc 1.4.2 / NanoLib 1.3.0

14

7 Vytvorenie vlastného projektu Linux
int main(){ nlc::NanoLibAccessor *accessor = getNanoLibAccessor();
nlc::ResultBusHwIds vysledok = accessor->listAvailableBusHardware();
if(result.hasError()) { std::cout << vysledok.getError() << std::endl; }
else{ std::cout << “Úspech” << std::endl; }
odstrániť prístupový objekt; návrat 0; }
4. Skontrolujte, či má priečinok projektu náležitú štruktúru:

Nanotic-NanoLib-C++-Programming-FIG- (3)
. NanoLibTest
inc accessor_factory.hpp bus_hardware_id.hpp … výsledok od_index.hpp.hpp NanoLibTest.cpp
7.4 Zostavte a otestujte svoj projekt
Pripravte svoj Linux NanoLib na použitie cez Bash.
1. Cez Bash: Zostavte hlavné file cez:
g++ -Wall -Wextra -pedantic -I./inc -c NanoLibTest.cpp -o NanoLibTest
2. Prepojte spustiteľný súbor pomocou:
g++ -Wall -Wextra -pedantic -I./inc -o test NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
3. Spustite testovací program cez:
./test
4. Skontrolujte, či váš Bash riadne hlási:
úspech

Verzia: doc 1.4.2 / NanoLib 1.3.0

15

8 Odkaz na triedy / funkcie

8 Odkaz na triedy / funkcie

Tu nájdete zoznam tried používateľského rozhrania NanoLib a ich členských funkcií. Typický popis funkcie zahŕňa krátky úvod, definíciu funkcie a zoznam parametrov/návratov:

ExampleFunction () Stručne vám povie, čo funkcia robí.
virtual void nlc::NanoLibAccessor::ExampleFunction (Param_a const & param_a, Param_b const & param_B)

Parametre param_a param_b
Vráti ResultVoid

V prípade potreby ďalší komentár. V prípade potreby ďalší komentár.

8.1 NanoLibAccessor

Trieda rozhrania použitá ako vstupný bod do NanoLib. Typický pracovný postup vyzerá takto:
1. Začnite skenovaním hardvéru pomocou NanoLibAccessor.listAvailableBusHardware (). 2. Nastavte komunikačné nastavenia pomocou BusHardwareOptions (). 3. Otvorte hardvérové ​​pripojenie pomocou NanoLibAccessor.openBusHardwareWithProtocol (). 4. Vyhľadajte na zbernici pripojené zariadenia pomocou NanoLibAccessor.scanDevices (). 5. Pridajte zariadenie s NanoLibAccessor.addDevice (). 6. Pripojte sa k zariadeniu pomocou NanoLibAccessor.connectDevice (). 7. Po dokončení operácie odpojte zariadenie pomocou NanoLibAccessor.disconnectDevice (). 8. Odstráňte zariadenie pomocou NanoLibAccessor.removeDevice (). 9. Zatvorte hardvérové ​​pripojenie pomocou NanoLibAccessor.closeBusHardware ().
NanoLibAccessor má nasledujúce verejné členské funkcie:

listAvailableBusHardware () Túto funkciu použite na zobrazenie zoznamu dostupného hardvéru fieldbus.
virtuálny ResultBusHwIds nlc::NanoLibAccessor::listAvailableBusHardware ()

Vráti ResultBusHwIds

Poskytuje pole ID zbernice.

openBusHardwareWithProtocol () Túto funkciu použite na pripojenie hardvéru zbernice.
virtual ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (BusHardwareId const & busHwId, BusHardwareOptions const & busHwOpt)

Parametre busHwId busHwOpt
Vráti ResultVoid

Určuje prevádzkovú zbernicu, ktorá sa má otvoriť. Určuje možnosti otvárania zbernice. Potvrdzuje, že bola spustená funkcia zrušenia.

isBusHardwareOpen () Túto funkciu použite na kontrolu, či je vaše hardvérové ​​pripojenie fieldbus otvorené.
virtual ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (const BusHardwareId & busHwId, const BusHardwareOptions & busHwOpt)

Verzia: doc 1.4.2 / NanoLib 1.3.0

16

8 Odkaz na triedy / funkcie

Parametre BusHardwareId Vráti hodnotu true
falošný

Špecifikuje každú fieldbus, ktorá sa má otvoriť. Hardvér je otvorený. Hardvér je zatvorený.

getProtocolSpecificAccessor () Túto funkciu použite na získanie objektu prístupového objektu špecifického pre protokol.
virtual ResultVoid nlc::NanoLibAccessor::getProtocolSpecificAccessor (BusHardwareId const & busHwId)

Parametre busHwId Vráti ResultVoid

Určuje fieldbus, pre ktorý sa má získať prístupový objekt. Potvrdzuje, že bola spustená funkcia zrušenia.

getProfinetDCP () Túto funkciu použite na vrátenie odkazu na rozhranie Profinet DCP.
virtuálny ProfinetDCP a getProfinetDCP ()

Vráti ProfinetDCP

dostaneSamplerInterface () Túto funkciu použite na získanie odkazu na sampler rozhranie.
virtuálny SamplerInterface & getSamplerInterface ()

Vráti sa SamplerInterface

Odvoláva sa na samptrieda rozhrania.

setBusState () Túto funkciu použite na nastavenie stavu špecifického pre protokol zbernice.
virtual ResultVoid nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & state)

Parametre busHwId state
Vráti ResultVoid

Určuje prevádzkovú zbernicu, ktorá sa má otvoriť. Priradí stav špecifický pre zbernicu ako hodnotu reťazca. Potvrdzuje, že bola spustená funkcia zrušenia.

scanDevices () Túto funkciu použite na vyhľadávanie zariadení v sieti.
virtuálne ResultDeviceIds nlc::NanoLibAccessor::scanDevices (const BusHardwareId & busHwId, NlcScanBusCallback* spätné volanie)

Parametre spätné volanie busHwId
Vráti ResultDeviceIds IOError

Určuje fieldbus, ktorý sa má skenovať. Nástroj na sledovanie priebehu NlcScanBusCallback. Poskytuje pole ID zariadenia. Informuje, že zariadenie nebolo nájdené.

Verzia: doc 1.4.2 / NanoLib 1.3.0

17

8 Odkaz na triedy / funkcie

addDevice ()
Túto funkciu použite na pridanie zbernicového zariadenia popísaného deviceId do interného zoznamu zariadení NanoLibu a na vrátenie deviceHandle preň.
virtual ResultDeviceHandle nlc::NanoLibAccessor::addDevice (DeviceId const & deviceId)

Parametre deviceId Vráti ResultDeviceHandle

Určuje zariadenie, ktoré sa má pridať do zoznamu. Dodáva rukoväť zariadenia.

connectDevice () Túto funkciu použite na pripojenie zariadenia pomocou zariadenia Handle.
virtual ResultVoid nlc::NanoLibAccessor::connectDevice (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultVoid
IOError

Určuje, ku ktorému zbernicovému zariadeniu sa NanoLib pripája. Potvrdzuje, že bola spustená funkcia zrušenia. Informuje, že zariadenie nebolo nájdené.

getDeviceName () Túto funkciu použite na získanie názvu zariadenia podľa deviceHandle.
virtual ResultString nlc::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultString

Určuje, pre ktoré zbernicové zariadenie dostane NanoLib názov. Poskytuje názvy zariadení ako reťazec.

getDeviceProductCode () Túto funkciu použite na získanie kódu produktu zariadenia pomocou zariadenia deviceHandle.
virtual ResultInt nlc::NanoLibAccessor::getDeviceProductCode (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultInt

Určuje, pre ktoré zbernicové zariadenie NanoLib získa kód produktu. Dodáva kódy produktov ako celé číslo.

getDeviceVendorId () Túto funkciu použite na získanie ID dodávateľa zariadenia podľa deviceHandle.
virtual ResultInt nlc::NanoLibAccessor::getDeviceVendorId (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultInt
Zdroj je nedostupný

Určuje, pre ktoré zbernicové zariadenie NanoLib získa ID dodávateľa. Dodáva ID dodávateľa ako celé číslo. Informuje, že sa nenašli žiadne údaje.

Verzia: doc 1.4.2 / NanoLib 1.3.0

18

8 Odkaz na triedy / funkcie

getDeviceId () Túto funkciu použite na získanie konkrétneho ID zariadenia z interného zoznamu NanoLib.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceId (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultDeviceId

Určuje, pre ktoré zbernicové zariadenie NanoLib získa ID zariadenia. Poskytuje ID zariadenia.

getDeviceIds () Túto funkciu použite na získanie ID všetkých zariadení z interného zoznamu NanoLib.
virtual ResultDeviceIds nlc::NanoLibAccessor::getDeviceIds ()

Vráti ResultDeviceIds

Poskytuje zoznam ID zariadení.

getDeviceUid () Túto funkciu použite na získanie jedinečného ID zariadenia (96 bit / 12 bajtov) pomocou zariadenia deviceHandle.
virtual ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultArrayByte
Zdroj je nedostupný

Určuje, pre ktoré zbernicové zariadenie NanoLib získa jedinečné ID. Poskytuje jedinečné ID ako bajtové pole. Informuje, že sa nenašli žiadne údaje.

getDeviceSerialNumber () Túto funkciu použite na získanie sériového čísla zariadenia podľa deviceHandle.
virtuálny ResultString NanolibAccessor::getDeviceSerialNumber (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultString
Zdroj je nedostupný

Určuje, pre ktoré zbernicové zariadenie NanoLib získa sériové číslo. Dodáva sériové čísla ako reťazec. Informuje, že sa nenašli žiadne údaje.

getDeviceHardwareGroup () Túto funkciu použite na získanie skupiny hardvéru zbernicového zariadenia podľa deviceHandle.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareGroup (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultInt

Určuje, pre ktoré zbernicové zariadenie NanoLib získa skupinu hardvéru.
Poskytuje skupiny hardvéru ako celé číslo.

getDeviceHardwareVersion () Túto funkciu použite na získanie verzie hardvéru zbernicového zariadenia podľa deviceHandle.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareVersion (DeviceHandle const deviceHandle)

Verzia: doc 1.4.2 / NanoLib 1.3.0

19

8 Odkaz na triedy / funkcie

Parametre zariadenieHandle

Návraty

ResultString ResourceNedostupný

Určuje, pre ktoré zbernicové zariadenie NanoLib získa verziu hardvéru. Poskytuje názvy zariadení ako reťazec. Informuje, že sa nenašli žiadne údaje.

getDeviceFirmwareBuildId () Túto funkciu použite na získanie ID zostavy firmvéru zbernicového zariadenia podľa deviceHandle.
virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceFirmwareBuildId (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultString

Určuje, pre ktoré zbernicové zariadenie NanoLib získa ID zostavy firmvéru.
Poskytuje názvy zariadení ako reťazec.

getDeviceBootloaderVersion () Túto funkciu použite na získanie verzie zavádzača zbernicového zariadenia podľa deviceHandle.
virtual ResultInt nlc::NanoLibAccessor::getDeviceBootloaderVersion (DeviceHandle const deviceHandle)

Parametre zariadenieHandle

Návraty

ResultInt ResourceNedostupný

Určuje, pre ktoré zbernicové zariadenie NanoLib získa verziu zavádzača. Poskytuje verzie zavádzača ako celé číslo. Informuje, že sa nenašli žiadne údaje.

getDeviceBootloaderBuildId () Túto funkciu použite na získanie ID zostavy zavádzača zbernicového zariadenia podľa deviceHandle.
virtual ResultDeviceId nlc::NanoLibAccessor:: (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultString

Určuje, pre ktoré zbernicové zariadenie NanoLib získa ID zostavy zavádzača.
Poskytuje názvy zariadení ako reťazec.

rebootDevice () Túto funkciu použite na reštartovanie zariadenia pomocou deviceHandle.
virtual ResultVoid nlc::NanoLibAccessor::rebootDevice (const DeviceHandle deviceHandle)

Parametre deviceHandle Vráti ResultVoid

Určuje fieldbus, ktorý sa má reštartovať. Potvrdzuje, že bola spustená funkcia zrušenia.

getDeviceState () Túto funkciu použite na získanie stavu špecifického pre protokol zariadenia.
virtual ResultString nlc::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)

Parametre zariadenieHandle

Určuje, pre ktoré zbernicové zariadenie NanoLib získa stav.

Verzia: doc 1.4.2 / NanoLib 1.3.0

20

8 Odkaz na triedy / funkcie

Vráti ResultString

Poskytuje názvy zariadení ako reťazec.

setDeviceState () Túto funkciu použite na nastavenie stavu špecifického pre protokol zariadenia.
virtual ResultVoid nlc::NanoLibAccessor::setDeviceState (const DeviceHandle deviceHandle, const std::string & state)

Parametre stav zariadenia Handle
Vráti ResultVoid

Určuje, pre ktoré zbernicové zariadenie NanoLib nastavuje stav. Priradí stav špecifický pre zbernicu ako hodnotu reťazca. Potvrdzuje, že bola spustená funkcia zrušenia.

getConnectionState ()
Túto funkciu použite na získanie posledného známeho stavu pripojenia konkrétneho zariadenia pomocou deviceHandle (= Odpojené, Pripojené, PripojenýBootloader)
virtuálny ResultConnectionState nlc::NanoLibAccessor::getConnectionState (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultConnectionState

Určuje, pre ktoré zbernicové zariadenie NanoLib získa stav pripojenia.
Poskytuje stav pripojenia (= Disconnected, Connected, ConnectedBootloader).

checkConnectionState ()
Iba v prípade, že posledný známy stav nebol Odpojený: Túto funkciu použite na kontrolu a prípadnú aktualizáciu stavu pripojenia konkrétneho zariadenia pomocou zariadenia deviceHandle a otestovaním niekoľkých operácií špecifických pre režim.
virtuálny ResultConnectionState nlc::NanoLibAccessor::checkConnectionState (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultConnectionState

Určuje, ktoré zbernicové zariadenie NanoLib kontroluje stav pripojenia.
Poskytuje stav pripojenia (= nie je odpojený).

assignObjectDictionary () Túto manuálnu funkciu použite na samostatné priradenie objektového slovníka (OD) zariadeniu deviceHandle.
virtuálny ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)

Parametre deviceHandle objectDictionary
Vráti ResultObjectDictionary

Určuje, ktorému zbernicovému zariadeniu NanoLib priradí OD. Zobrazuje vlastnosti slovníka objektov.

autoAssignObjectDictionary ()
Použite tento automatizmus, aby NanoLib priradil objektový slovník (OD) zariadeniu deviceHandle. Po nájdení a načítaní vhodného OD ho NanoLib automaticky priradí k zariadeniu. Poznámka: Ak je v knižnici objektov už načítaný kompatibilný OD, NanoLib ho automaticky použije bez skenovania zaslaného adresára.
virtual ResultObjectDictionary nlc::NanoLibAccessor::autoAssignObjectDictionary (DeviceHandle const deviceHandle, const std::string & dictionariesLocationPath)

Verzia: doc 1.4.2 / NanoLib 1.3.0

21

8 Odkaz na triedy / funkcie

Parametre zariadenieHandle

Návraty

slovníkyLocationPath ResultObjectDictionary

Určuje, pre ktoré zbernicové zariadenie má NanoLib automaticky vyhľadať vhodné OD. Určuje cestu k adresáru OD. Zobrazuje vlastnosti slovníka objektov.

getAssignedObjectDictionary ()
Pomocou tejto funkcie získate objektový slovník priradený k zariadeniu pomocou deviceHandle.
virtual ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (DeviceHandle const device
rukoväť)

Parametre deviceHandle Vráti ResultObjectDictionary

Určuje, pre ktoré zbernicové zariadenie NanoLib dostane priradené OD. Zobrazuje vlastnosti slovníka objektov.

getObjectDictionaryLibrary () Táto funkcia vracia referenciu OdLibrary.
virtuálna OdLibrary& nlc::NanoLibAccessor::getObjectDictionaryLibrary ()

Vráti OdLibrary&

Otvorí celú knižnicu OD a jej slovníky objektov.

setLoggingLevel () Túto funkciu použite na nastavenie potrebných podrobností protokolu (a protokolu file veľkosť). Predvolená úroveň je Info.
virtual void nlc::NanoLibAccessor::setLoggingLevel (úroveň LogLevel)

Úroveň parametrov

Možné sú nasledujúce podrobnosti denníka:

0 = Sledovanie 1 = Ladenie 2 = Informácie 3 = Upozornenie 4 = Chyba 5 = Kritická 6 = Vypnuté

Najnižšia úroveň (najväčší protokol file); zaznamenáva všetky možné detaily, plus softvér štart/stop. Zaznamenáva informácie o ladení (= priebežné výsledky, odoslaný alebo prijatý obsah atď.) Predvolená úroveň; zaznamenáva informačné správy. Zaznamenáva problémy, ktoré sa vyskytli, ale nezastaví aktuálny algoritmus. Zaznamenáva len vážne problémy, ktoré zastavili algoritmus. Najvyššia úroveň (najmenší denník file); vypne odhlásenie; žiadny ďalší denník. Vôbec žiadne protokolovanie.

setLoggingCallback ()
Túto funkciu použite na nastavenie ukazovateľa spätného volania protokolovania a modulu protokolu (= knižnica) pre toto spätné volanie (nie pre samotný zapisovač).
virtual void nlc::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* spätné volanie, const nlc::LogModule & logModule)

Parametre *callback logModule

Nastaví ukazovateľ spätného volania. Vyladí spätné volanie (nie záznamník!) do vašej knižnice.

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

Aktivuje spätné volanie iba pre jadro NanoLib. Aktivuje spätné volanie iba CANopen. Aktivuje spätné volanie iba pre Modbus. Aktivuje spätné volanie iba pre EtherCAT.

Verzia: doc 1.4.2 / NanoLib 1.3.0

22

8 Odkaz na triedy / funkcie

4 = NanolibRest 5 = NanolibUSB

Aktivuje spätné volanie len REST. Aktivuje spätné volanie iba cez USB.

unsetLoggingCallback () Túto funkciu použite na zrušenie ukazovateľa spätného volania pri protokolovaní.
virtual void nlc::NanoLibAccessor::unsetLoggingCallback ()

readNumber () Túto funkciu použite na čítanie číselnej hodnoty zo slovníka objektov.
virtual ResultInt nlc::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)

Parametre deviceHandle odIndex
Vráti ResultInt

Určuje, z ktorého zbernicového zariadenia NanoLib číta. Určuje (sub-) index, z ktorého sa má čítať. Poskytuje neinterpretovanú číselnú hodnotu (môže byť so znamienkom, bez znamienka, fixné 16.16 bitové hodnoty).

readNumberArray () Túto funkciu použite na čítanie číselných polí zo slovníka objektov.
virtual ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t index)

Parametre index zariadeniaHandle
Vráti ResultArrayInt

Určuje, z ktorého zbernicového zariadenia NanoLib číta. Index objektu poľa. Poskytuje celočíselné pole.

readBytes () Túto funkciu použite na čítanie ľubovoľných bajtov (dáta objektu domény) zo slovníka objektov.
virtual ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)

Parametre deviceHandle odIndex
Vráti ResultArrayByte

Určuje, z ktorého zbernicového zariadenia NanoLib číta. Určuje (sub-) index, z ktorého sa má čítať. Poskytuje bajtové pole.

readString () Túto funkciu použite na čítanie reťazcov z adresára objektu.
virtual ResultString nlc::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)

Parametre deviceHandle odIndex
Vráti ResultString

Určuje, z ktorého zbernicového zariadenia NanoLib číta. Určuje (sub-) index, z ktorého sa má čítať. Poskytuje názvy zariadení ako reťazec.

Verzia: doc 1.4.2 / NanoLib 1.3.0

23

8 Odkaz na triedy / funkcie

writeNumber () Túto funkciu použite na zápis číselných hodnôt do adresára objektov.
virtual ResultVoid nlc::NanoLibAccessor::writeNumber (const DeviceHandle deviceHandle, hodnota int64_t, const OdIndex odIndex, unsigned int bitLength)

Parametre hodnota deviceHandle odIndex bitLength
Vráti ResultVoid

Určuje, na ktoré zbernicové zariadenie NanoLib zapisuje. Neinterpretovaná hodnota (môže byť podpísaná, nepodpísaná, opraviť 16.16). Určuje (sub-) index, z ktorého sa má čítať. Dĺžka v bitoch. Potvrdzuje, že bola spustená funkcia zrušenia.

writeBytes () Túto funkciu použite na zapisovanie ľubovoľných bajtov (dáta objektu domény) do adresára objektu.
virtual ResultVoid nlc::NanoLibAccessor::writeBytes (const DeviceHandle deviceHandle, const std::vector a údaje, const OdIndex odIndex)

Parametre deviceHandle data odIndex
Vráti ResultVoid

Určuje, na ktoré zbernicové zariadenie NanoLib zapisuje. Bajtový vektor / pole. Určuje (sub-) index, z ktorého sa má čítať. Potvrdzuje, že bola spustená funkcia zrušenia.

uploadFirmware ()
Túto funkciu použite na aktualizáciu firmvéru ovládača.
virtual ResultVoid nlc::NanoLibAccessor::uploadFirmware (const DeviceHandle deviceHandle, const std::vector & fwData, spätné volanie NlcDataTransfer*)

Parametre deviceHandle fwData NlcDataTransferCallback
Vráti ResultVoid

Určuje, ktoré zbernicové zariadenie NanoLib aktualizuje. Pole obsahujúce údaje firmvéru. Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

uploadFirmwareFromFile ()
Túto funkciu použite na aktualizáciu firmvéru ovládača jeho nahraním file.
virtual ResultVoid nlc::NanoLibAccessor::uploadFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & absolútnyFileCesta, NlcDataTransferCallback* spätné volanie)

Parametre deviceHandle absolútnaFileCesta NlcDataTransferCallback
Vráti ResultVoid

Určuje, ktoré zbernicové zariadenie NanoLib aktualizuje. Cesta k file obsahujúci údaje firmvéru (std::string). Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

Verzia: doc 1.4.2 / NanoLib 1.3.0

24

8 Odkaz na triedy / funkcie

uploadBootloader ()
Túto funkciu použite na aktualizáciu zavádzača ovládača.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloader (const DeviceHandle deviceHandle, const std::vector & btData, spätné volanie NlcDataTransfer*)

Parametre deviceHandle btData NlcDataTransferCallback
Vráti ResultVoid

Určuje, ktoré zbernicové zariadenie NanoLib aktualizuje. Pole obsahujúce údaje zavádzača. Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

uploadBootloaderFromFile ()
Túto funkciu použite na aktualizáciu zavádzača ovládača jeho nahraním file.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileCesta, NlcDataTransferCallback* spätné volanie)

Parametre deviceHandle bootloaderAbsolútneFileCesta NlcDataTransferCallback
Vráti ResultVoid

Určuje, ktoré zbernicové zariadenie NanoLib aktualizuje. Cesta k file obsahujúci údaje zavádzača (std::string). Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

uploadBootloaderFirmware ()
Túto funkciu použite na aktualizáciu zavádzača a firmvéru ovládača.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmware (const DeviceHandle deviceHandle, const std::vector & btData, const std::vector & fwData, spätné volanie NlcDataTransfer*)

Parametre deviceHandle btData fwData NlcDataTransferCallback
Vráti ResultVoid

Určuje, ktoré zbernicové zariadenie NanoLib aktualizuje. Pole obsahujúce údaje zavádzača. Pole obsahujúce údaje firmvéru. Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

uploadBootloaderFirmwareFromFile ()
Túto funkciu použite na aktualizáciu zavádzača a firmvéru ovládača nahraním súboru files.
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileCesta, const std::string & absolútnaFileCesta, NlcDataTransferCallback* spätné volanie)

Parametre deviceHandle bootloaderAbsolútneFileAbsolútna cestaFileCesta NlcDataTransferCallback
Vráti ResultVoid

Určuje, ktoré zbernicové zariadenie NanoLib aktualizuje. Cesta k file obsahujúci údaje zavádzača (std::string). Cesta k file obsahujúci údaje firmvéru (uint8_t). Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

Verzia: doc 1.4.2 / NanoLib 1.3.0

25

8 Odkaz na triedy / funkcie

uploadNanoJ ()
Pomocou tejto verejnej funkcie nahrajte program NanoJ do ovládača.
virtual ResultVoid nlc::NanoLibAccessor::uploadNanoJ (DeviceHandle const deviceHandle, std::vector const & vmmData, spätné volanie NlcDataTransfer*)

Parametre deviceHandle vmmData NlcDataTransferCallback
Vráti ResultVoid

Určuje, na ktoré zbernicové zariadenie NanoLib nahráva. Pole obsahujúce údaje NanoJ. Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

uploadNanoJFromFile ()
Použite túto verejnú funkciu na nahranie programu NanoJ do vášho ovládača nahraním súboru file.
virtuálny ResultVoid nlc::NanoLibAccessor::uploadNanoJFromFile (const DeviceHandle deviceHandle, const std::string & absolútnyFileCesta, NlcDataTransferCallback* spätné volanie)

Parametre deviceHandle absolútnaFileCesta NlcDataTransferCallback
Vráti ResultVoid

Určuje, na ktoré zbernicové zariadenie NanoLib nahráva. Cesta k file obsahujúce údaje NanoJ (std::string). Nástroj na sledovanie priebehu údajov. Potvrdzuje, že bola spustená funkcia zrušenia.

odpojiťDevice () Túto funkciu použite na odpojenie zariadenia pomocou zariadeniaHandle.
virtual ResultVoid nlc::NanoLibAccessor::disconnectDevice (DeviceHandle const deviceHandle)

Parametre deviceHandle Vráti ResultVoid

Určuje, od ktorého zbernicového zariadenia sa NanoLib odpája. Potvrdzuje, že bola spustená funkcia zrušenia.

removeDevice () Túto funkciu použite na odstránenie vášho zariadenia z interného zoznamu zariadení NanoLib.
virtual ResultVoid nlc::NanoLibAccessor::removeDevice (const DeviceHandle deviceHandle)

Parametre deviceHandle Vráti ResultVoid

Určuje, ktoré zbernicové zariadenie NanoLib odstraňuje. Potvrdzuje, že bola spustená funkcia zrušenia.

closeBusHardware () Túto funkciu použite na odpojenie od hardvéru vašej zbernice.
virtual ResultVoid nlc::NanoLibAccessor::closeBusHardware (BusHardwareId const & busHwId)

Parametre busHwId Vráti ResultVoid

Určuje fieldbus, od ktorého sa má odpojiť. Potvrdzuje, že bola spustená funkcia zrušenia.

Verzia: doc 1.4.2 / NanoLib 1.3.0

26

8 Odkaz na triedy / funkcie

8.2 BusHardwareId
Túto triedu použite na individuálnu identifikáciu hardvéru zbernice alebo na odlíšenie iného hardvéru zbernice od seba. Táto trieda (bez funkcií nastavovača, ktoré majú byť nemenné od vytvorenia) tiež obsahuje informácie o:
Hardvér (= názov adaptéra, sieťový adaptér atď.) Protokol, ktorý sa má použiť (= Modbus TCP, CANopen atď.) Hardvérový špecifikátor zbernice (= názov sériového portu, MAC Friendly názov
adresa atď.)

BusHardwareId () [1/3] Konštruktor, ktorý vytvorí nový objekt ID hardvéru zbernice.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & name_)

Parametre busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_

Typ hardvéru (= ZK-USB-CAN-1 atď.). Zbernicový komunikačný protokol (= CANopen atď.). Špecifikátor hardvéru (= COM3 atď.). Dodatočný špecifikátor hardvéru (povedzme informácie o umiestnení USB). Priateľský názov (= AdapterName (Port) atď.).

BusHardwareId () [2/3] Konštruktor, ktorý vytvorí nový objekt ID hardvéru zbernice s možnosťou dodatočného špecifikátora hardvéru.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & extraHardwareSpecifier_, std:_)string const & name

Parametre busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_

Typ hardvéru (= ZK-USB-CAN-1 atď.). Zbernicový komunikačný protokol (= CANopen atď.). Špecifikátor hardvéru (= COM3 atď.). Dodatočný špecifikátor hardvéru (povedzme informácie o umiestnení USB). Priateľský názov (= AdapterName (Port) atď.).

BusHardwareId () [3/3] Konštruktor, ktorý skopíruje existujúce busHardwareId.
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)

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

Parametre busHardwareId

Pomenuje ID hardvéru zbernice, z ktorého sa má kopírovať.

rovná sa () Porovnáva nové ID hardvéru zbernice s existujúcimi.
bool nlc::BusHardwareId::rovná sa (BusHardwareId const a ďalšie) const

Parametre other Vráti hodnotu true

Ďalší objekt rovnakej triedy. Ak sú obe rovnaké vo všetkých hodnotách.

Verzia: doc 1.4.2 / NanoLib 1.3.0

27

8 Odkaz na triedy / funkcie

falošný

Ak sa hodnoty líšia.

getBusHardware () Číta hardvérový reťazec zbernice.
std::string nlc::BusHardwareId::getBusHardware () const

Vráti reťazec

getHardwareSpecifier () Číta reťazec špecifikátora hardvéru zbernice (= názov siete atď.).
std::string nlc::BusHardwareId::getHardwareSpecifier () const

Vráti reťazec

getExtraHardwareSpecifier () Číta reťazec špecifikátora hardvéru (= MAC adresa atď.).
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () const

Vráti reťazec

getName () Číta priateľský názov hardvéru zbernice.
std::string nlc::BusHardwareId::getName () const

Vráti reťazec

getProtocol () Číta reťazec protokolu zbernice.
std::string nlc::BusHardwareId::getProtocol () const

Vráti reťazec

toString () Vráti ID hardvéru zbernice ako reťazec.
std::string nlc::BusHardwareId::toString () const

Vráti reťazec
8.3 BusHardwareOptions
Nájdite v tejto triede v zozname reťazcov kľúč-hodnota všetky možnosti potrebné na otvorenie hardvéru zbernice.

Verzia: doc 1.4.2 / NanoLib 1.3.0

28

8 Odkaz na triedy / funkcie

BusHardwareOptions () [1/2] Vytvorí nový objekt voľby hardvéru zbernice.
nlc::BusHardwareOptions::BusHardwareOptions () Na pridanie párov kľúč – hodnota použite funkciu addOption ().

BusHardwareOptions () [2/2] Vytvorí nový objekt možností hardvéru zbernice s mapou kľúč-hodnota už na mieste.
nlc::BusHardwareOptions::BusHardwareOptions (std::map const & options)

Možnosti parametrov

Mapa s možnosťami prevádzky hardvéru zbernice.

addOption () Vytvára ďalšie kľúče a hodnoty.
void nlc::BusHardwareOptions::addOption (std::string const & key, std::string const & value)

Hodnota kľúča parametrov

Exampsúbor: BAUD_RATE_OPTIONS_NAME, pozrite si predvolené hodnoty bus_hw_options_
Example: BAUD_RATE_1000K, pozri bus_hw_options_defaults

rovná sa () Porovnáva možnosti BusHardwareOptions s existujúcimi.
bool nlc::BusHardwareOptions::rovná sa (BusHardwareOptions const & other) const

Parametre other Vráti hodnotu true
falošný

Ďalší objekt rovnakej triedy. Ak má druhý objekt všetky presne rovnaké možnosti. Ak má druhý objekt iné kľúče alebo hodnoty.

getOptions () Prečíta všetky pridané páry kľúč – hodnota.
std::map nlc::BusHardwareOptions::getOptions () const

Vráti mapu reťazcov

toString () Vráti všetky kľúče / hodnoty ako reťazec.
std::string nlc::BusHardwareId::toString () const

Vráti reťazec
8.4 BusHwOptionsPredvolené
Táto predvolená trieda možností konfigurácie má nasledujúce verejné atribúty:

Verzia: doc 1.4.2 / NanoLib 1.3.0

29

8 Odkaz na triedy / funkcie

const CanBus const Serial const RESTfulBus const EtherCATBus

canBus = CanBus () serial = Serial () restfulBus = RESTfulBus() ethercatBus = EtherCATBus()

8.5 Prenosová rýchlosť

Štruktúra, ktorá obsahuje prenosové rýchlosti zbernice CAN v nasledujúcich verejných atribútoch:

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_1000 1000 = „800 800 500“ BAUD_RATE_500 250 = „250 125“ BAUD_RATE_125 100 = „100 50“ BAUD_RATE_50 20 = „20 10“ BAUD_RATE_10 5 = „5 XNUMX“ BAUD_RATE_XNUMX tis ATE_XNUMXK = „XNUMXk“ BAUD_RATE_XNUMXK = „XNUMXk“ BAUD_RATE_XNUMXK = „XNUMXk“

8.6 CanBus

Predvolená trieda možností konfigurácie s nasledujúcimi verejnými atribútmi:

const std::string const CanBaudRate const Ixxat

BAUD_RATE_OPTIONS_NAME = “môže adaptér prenosová rýchlosť” baudRate = CanBaudRate () ixxat = Ixxat ()

8.7 Služba CanOpenNmtService

Pre službu NMT táto štruktúra obsahuje stavy CANopen NMT ako reťazcové hodnoty v nasledujúcich verejných atribútoch:

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

START = “ŠTART” STOP = “STOP” PRE_OPERATIONAL = “PRE_OPERATIONAL” RESET = “RESETOVAŤ” RESET_COMMUNICATION = “RESET_COMMUNICATION”

8.8 CanOpenNmtState

Táto štruktúra obsahuje stavy CANopen NMT ako reťazcové hodnoty v nasledujúcich verejných atribútoch:

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

ZASTAVENÉ = „ZASTAVENÉ“ PRE_OPERATIONAL = „PRE_OPERATIONAL“ OPERATIONAL = „OPERAČNÉ“ INICIALIZÁCIA = „INICIALIZÁCIA“ NEZNÁMY = „NEZNÁMY“

8.9 Štruktúra EtherCATBus

Táto štruktúra obsahuje možnosti konfigurácie komunikácie EtherCAT v nasledujúcich verejných atribútoch:

Verzia: doc 1.4.2 / NanoLib 1.3.0

30

8 Odkaz na triedy / funkcie

const std::string NETWORK_FIRMWARE_STATE_OP- Stav siete považovaný za režim firmvéru. Prijateľné

TION_NAME = „Stav firmvéru siete“

hodnoty (predvolená hodnota = PRE_OPERATIONAL):

EtherCATState::PRE_OPERATIONAL EtherCATState::SAFE_OPERATIONAL EtherCATState::OPERATIONAL

const std::string DEFAULT_NETWORK_FIRMWARE_ STATE = “PRE_OPERATIONAL”

const std::string EXCLUSIVE_LOCK_TIMEOUT_OP- Časový limit v milisekundách na získanie exkluzívneho zámku

TION_NAME = „Časový limit zdieľanej zámky“

sieť (predvolené = 500 ms).

const unsigned int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = „500“

const std::string SHARED_LOCK_TIMEOUT_OPTION_ Časový limit v milisekundách na získanie zdieľaného zámku

NAME = „Časový limit zdieľaného zámku“

sieť (predvolené = 250 ms).

const unsigned int DEFAULT_SHARED_LOCK_TIMEOUT = „250“

const std::string READ_TIMEOUT_OPTION_NAME = Časový limit v milisekundách pre operáciu čítania (predvolené

„Časový limit čítania“

= 700 ms).

const unsigned int DEFAULT_READ_TIMEOUT = „700“

const std::string WRITE_TIMEOUT_OPTION_NAME = Časový limit v milisekundách pre operáciu zápisu (predvolené

„Časový limit zápisu“

= 200 ms).

const unsigned int DEFAULT_WRITE_TIMEOUT = „200“

const std::string READ_WRITE_ATTEMPTS_OPTION_ Maximálny počet pokusov o čítanie alebo zápis (nenulové hodnoty

NAME = „Pokusy o čítaní/zápise“

iba; predvolená hodnota = 5).

const unsigned int DEFAULT_READ_WRITE_ATTEMPTS = „5“

const std::string CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME = “Pokusy o zmenu stavu siete”

Maximálny počet pokusov o zmenu stavu siete (iba nenulové hodnoty; predvolená hodnota = 10).

const unsigned int DEFAULT_CHANGE_NETWORK_ STATE_ATTEMPTS = „10“

const std::string PDO_IO_ENABLED_OPTION_NAME Povolí alebo zakáže spracovanie PDO pre digitálny vstup /

= “PDO IO povolené”

výstupy (len „True“ alebo „False“; predvolená hodnota = „True“).

const std::string DEFAULT_PDO_IO_ENABLED = “Pravda”

8.10 Štruktúra EtherCATState

Táto štruktúra obsahuje stavy EtherCAT slave / siete ako reťazcové hodnoty v nasledujúcich verejných atribútoch. Poznámka: Predvolený stav pri zapnutí je PRE_OPERATIONAL; NanoLib nemôže poskytnúť žiadny spoľahlivý „PREVÁDZKOVÝ“ stav v operačnom systéme, ktorý nie je v reálnom čase:

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

NONE = “NONE” INIT = “INIT” PRE_OPERATIONAL = “PRE_OPERATIONAL” BOOT = “BOOT” SAFE_OPERATIONAL = “SAFE_OPERATIONAL” OPERATIONAL = “OPERATIONAL”

Verzia: doc 1.4.2 / NanoLib 1.3.0

31

8 Odkaz na triedy / funkcie

8.11 Ixxat

Táto štruktúra obsahuje všetky informácie pre Ixxat usb-to-can v nasledujúcich verejných atribútoch:

const std::string

ADAPTER_BUS_NUMBER_OPTIONS_NAME = „číslo zbernice adaptéra ixxat“

const IxxatAdapterBusNumber adapterBusNumber = IxxatAdapterBusNumber ()

8.12 IxxatAdapterBusNumber

Táto štruktúra obsahuje číslo zbernice pre Ixxat usb-to-can v nasledujúcich verejných atribútoch:

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 Vrchol

Táto štruktúra obsahuje všetky informácie pre Peak usb-to-can v nasledujúcich verejných atribútoch:

const std::string

ADAPTER_BUS_NUMBER_OPTIONS_NAME = “špičkové číslo zbernice adaptéra”

const PeakAdapterBusNumber adapterBusNumber = PeakAdapterBusNumber ()

8.14 PeakAdapterBusNumber

Táto štruktúra obsahuje číslo zbernice pre Peak usb-to-can v nasledujúcich verejných atribútoch:

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

BUS_NUMBER_1_DEFAULT = std::to_string (PCAN_USBBUS1) BUS_NUMBER_2 = std::to_string (PCAN_USBBUS2) BUS_NUMBER_3 = std::to_string (PCAN_USBBUS3) BUS_NUMBER_4 = std:_USBBUSNUMBER) = std:_4USBBUSPC (PCAN_5) std::to_string (PCAN_USBBUS5) BUS_NUMBER_6 = std::to_string (PCAN_USBBUS6) BUS_NUMBER_7 = std::to_string (PCAN_USBBUS7) BUS_NUMBER_8 = std::to_string (PCAN_USBBUS_8) = AN_dUS_NUMBER. BUS_NUMBER_9 = std::to_string (PCAN_USBBUS9) BUS_NUMBER_10 = std::to_string (PCAN_USBBUS10) BUS_NUMBER_11 = std::to_string (PCAN_USBBUS11) BUS_NUMBER_12 = BUS_NUMBER_12 = BUS_NUMBER_13 = BUS_NUMBER_13 = BUSBB_14 std::to_string (PCAN_USBBUS14) BUS_NUMBER_15 = std::to_string (PCAN_USBBUS15) BUS_NUMBER_16 = std::to_string (PCAN_USBBUS16)

8.15 DeviceHandle
Táto trieda predstavuje rukoväť na ovládanie zariadenia na zbernici a má nasledujúce verejné členské funkcie.

DeviceHandle () DeviceHandle (rukoväť uint32_t)

Verzia: doc 1.4.2 / NanoLib 1.3.0

32

8 Odkaz na triedy / funkcie

rovná sa () Porovnáva sa s daným rukoväťou zariadenia.
bool sa rovná (DeviceHandle const other) const (uint32_t handle)

toString () Vráti reťazcovú reprezentáciu ovládača zariadenia.
std::string toString () const

get () Vráti rukoväť zariadenia.
uint32_t get () const

8.16 DeviceId
Použite túto triedu (nie je nemenná od vytvorenia) na identifikáciu a rozlíšenie zariadení na zbernici:

Identifikátor hardvérového adaptéra

Identifikátor zariadenia

Popis

Význam hodnôt ID / popisu zariadenia závisí od zbernice. Napríkladample, zbernica CAN môže používať celé číslo ID.

DeviceId () [1/3] Vytvorí nový objekt ID zariadenia.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId_, unsigned int deviceId_, std::string const & description_)

Parametre busHardwareId_ deviceId_ description_

Identifikátor autobusu. index; podlieha zbernici (= ID uzla CANopen atď.). Popis (môže byť prázdny); podlieha autobusu.

DeviceId () [2/3] Vytvorí nový objekt ID zariadenia s rozšírenými možnosťami ID.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId, unsigned int deviceId_, std::string const & description_ std::vector const & extraId_, std::string const & extraStringId_)

Parametre busHardwareId_ deviceId_ description_ extraId_ extraStringId_

Identifikátor autobusu. index; podlieha zbernici (= ID uzla CANopen atď.). Popis (môže byť prázdny); podlieha autobusu. Dodatočné ID (môže byť prázdne); význam závisí od autobusu. Ďalšie ID reťazca (môže byť prázdne); význam závisí od autobusu.

DeviceId () [3/3] Vytvorí kópiu objektu ID zariadenia.
nlc::DeviceId::DeviceId (DeviceId const &)

Verzia: doc 1.4.2 / NanoLib 1.3.0

33

8 Odkaz na triedy / funkcie

Parametre deviceId_

ID zariadenia, z ktorého sa má kopírovať.

rovná sa () Porovnáva nové s existujúcimi objektmi.
bool nlc::DeviceId::rovná sa (DeviceId const & other) const

Vráti booleovskú hodnotu

getBusHardwareId () Číta ID hardvéru zbernice.
BusHardwareId nlc::DeviceId::getBusHardwareId () const

Vráti BusHardwareId

getDescription () Prečíta popis zariadenia (možno nepoužité).
std::string nlc::DeviceId::getDescription () const

Vráti reťazec

getDeviceId () Načíta ID zariadenia (možno nepoužité).
unsigned int nlc::DeviceId::getDeviceId () const

Vráti nepodpísaný int

toString () Vráti objekt ako reťazec.
std::string nlc::DeviceId::toString () const

Vráti reťazec

getExtraId () Prečíta extra ID zariadenia (môže byť nepoužívané).
const std::vektor &getExtraId () const

Vráti vektor

Vektor dodatočných dodatočných ID (môže byť prázdny); význam závisí od autobusu.

getExtraStringId () Číta extra reťazec ID zariadenia (môže byť nepoužitý).
std::string getExtraStringId () const

Verzia: doc 1.4.2 / NanoLib 1.3.0

34

8 Odkaz na triedy / funkcie

Vráti reťazec

Dodatočné ID reťazca (môže byť prázdne); význam závisí od autobusu.

8.17 LogLevelConverter

Táto trieda vráti vašu úroveň denníka ako reťazec. static std::string toString (nlc::LogLevel logLevel)

8.18 LogModuleConverter

Táto trieda vráti váš denník špecifický pre knižnicu modulesetLoggingLevel () ako reťazec.

statický std::string

toString (nlc::LogModule logModule)

static std::string toString (nlc::LogModule logModule)

8.19 Objektový slovník
Táto trieda predstavuje objektový slovník radiča a má nasledujúce verejné členské funkcie: getDeviceHandle ()
virtual ResultDeviceHandle getDeviceHandle () const Vráti ResultDeviceHandle

getObject () virtuálny ResultObjectSubEntry getObject (OdIndex const odIndex) Vráti ResultObjectSubEntry

getObjectEntry () virtuálny ResultObjectEntry getObjectEntry (index uint16_t)

Vráti ResultObjectEntry

Informuje o vlastnostiach objektu.

getXmlFileNázov () virtuálny ResultString getXmlFileMeno () konšt

Vráti ResultString

Vráti XML file meno ako reťazec.

readNumber () virtual ResultInt readNumber (OdIndex const odIndex) Vráti ResultInt
readNumberArray () virtuálny ResultArrayInt readNumberArray (uint16_t const index)

Verzia: doc 1.4.2 / NanoLib 1.3.0

35

8 Odkaz na triedy / funkcie
Vráti ResultArrayInt readString ()
virtuálny ResultString readString (OdIndex const odIndex) Vráti ResultString readBytes () virtuálny ResultArrayByte readBytes (OdIndex const odIndex) Vráti ResultArrayByte writeNumber () virtuálny ResultVoid writeNumber (OdIndex const odIndex, const hodnota int64) ResultArrayByte int8 ResultVoid writeBytes (OdIndex const OdIndex, std::vector
const & data) Vráti ResultVoid Súvisiace odkazy OdIndex
8.20 ObjectEntry
Táto trieda predstavuje položku objektového slovníka, má nasledujúci statický chránený atribút a verejné členské funkcie:
static nlc::ObjectSubEntry invalidObject
getName () Prečíta názov objektu ako reťazec.
virtual std::string getName () const
getPrivate () Kontroluje, či je objekt súkromný.
virtuálny bool getPrivate () const
getIndex () Číta adresu indexu objektu.
virtuálny uint16_t getIndex () const

Verzia: doc 1.4.2 / NanoLib 1.3.0

36

8 Odkaz na triedy / funkcie

getDataType () Číta typ údajov objektu.
virtual nlc::ObjectEntryDataType getDataType () const

getObjectCode () Číta kód objektu:

Null Deftype Defstruct Var Array Record

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

virtual nlc::ObjectCode getObjectCode () const

getObjectSaveable () Skontroluje, či je možné objekt uložiť a jeho kategóriu (ďalšie podrobnosti nájdete v príručke k produktu): APPLICATION, COMMUNICATION, DRIVE, MISC_CONFIG, MODBUS_RTU, NO, TUNING, CUSTOMER, ETHERNET, CANOPEN, VERIFY1020, UNGLEANBLE_STYPE
virtual nlc::ObjectSaveable getObjectSaveable () const

getMaxSubIndex () Číta počet podindexov podporovaných týmto objektom.
virtual uint8_t getMaxSubIndex () const

getSubEntry () virtual nlc::ObjectSubEntry & getSubEntry (uint8_t subIndex)
Pozri tiež ObjectSubEntry.
8.21 ObjectSubEntry
Táto trieda predstavuje podpoložku objektu (subindex) slovníka objektov a má nasledujúce verejné členské funkcie:
getName () Prečíta názov objektu ako reťazec.
virtual std::string getName () const

getSubIndex () Číta adresu podindexu.
virtuálny uint8_t getSubIndex () const

Verzia: doc 1.4.2 / NanoLib 1.3.0

37

8 Odkaz na triedy / funkcie

getDataType () Číta typ údajov objektu.
virtual nlc::ObjectEntryDataType getDataType () const

getSdoAccess () Skontroluje, či je podindex prístupný cez SDO:

Iba na čítanie

1

Write Only

2

ReadWrite

3

Bez prístupu

0

virtual nlc::ObjectSdoAccessAttribute getSdoAccess () const

getPdoAccess () Skontroluje, či je podindex prístupný/mapovateľný cez PDO:

Tx

1

Rx

2

TxRx

3

Nie

0

virtual nlc::ObjectPdoAccessAttribute getPdoAccess () const

getBitLength () Skontroluje dĺžku podindexu.
virtuálny uint32_t getBitLength () const

getDefaultValueAsNumeric () Načíta predvolenú hodnotu podindexu pre číselné typy údajov.
virtuálny ResultInt getDefaultValueAsNumeric (std::string const & key) const

getDefaultValueAsString () Načíta predvolenú hodnotu podindexu pre typy údajov reťazca.
virtuálny ResultString getDefaultValueAsString (std::string const & key) const

getDefaultValues ​​() Číta predvolené hodnoty podindexu.
virtuálne std::map getDefaultValues ​​() const

Verzia: doc 1.4.2 / NanoLib 1.3.0

38

8 Odkaz na triedy / funkcie

readNumber () Číta skutočnú číselnú hodnotu podindexu.
virtual ResultInt readNumber () const

readString () Číta skutočnú hodnotu reťazca podindexu.
virtuálny ResultString readString () const

readBytes () Číta aktuálnu hodnotu podindexu v bajtoch.
virtuálny ResultArrayByte readBytes () const

writeNumber () Zapíše číselnú hodnotu do podindexu.
virtual ResultVoid writeNumber (hodnota const int64_t) const

writeBytes () Zapíše hodnotu do podindexu v bajtoch.
virtuálny ResultVoid writeBytes (std::vector const & data) const

8.22 OdIndex
Túto triedu (nezmeniteľnú od vytvorenia) použite na zabalenie a nájdenie indexov / podindexov adresára objektov. OD zariadenia má až 65535 (0xFFFF) riadkov a 255 (0xFF) stĺpcov; s medzerami medzi nesúvislými radmi. Ďalšie podrobnosti nájdete v štandarde CANopen a v príručke k vášmu produktu.
OdIndex () Vytvorí nový objekt OdIndex.
nlc::OdIndex::OdIndex (uint16_t index, uint8_t subIndex)

Subindex indexu parametrov

Od 0 do 65535 (0xFFFF) vrátane Od 0 do 255 (0xFF) vrátane.

getIndex () Načíta index (od 0x0000 do 0xFFFF).
uint16_t nlc::OdIndex::getIndex () const

Vráti uint16_t

getSubindex () Číta podindex (od 0x00 do 0xFF)
uint8_t nlc::OdIndex::getSubIndex () const

Verzia: doc 1.4.2 / NanoLib 1.3.0

39

8 Odkaz na triedy / funkcie

Vráti uint8_t

toString () Vráti index a podindex ako reťazec. Predvolený reťazec 0xIIII:0xSS znie takto:

I = index od 0x0000 do 0xFFFF

S = podindex od 0x00 do 0xFF

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

Vráti 0xIIII:0xSS

Predvolená reprezentácia reťazca

8.23 OdLibrary
Toto programovacie rozhranie použite na vytvorenie inštancií triedy ObjectDictionary z XML. Pomocou priradeniaObjectDictionary potom môžete naviazať každú inštanciu na konkrétne zariadenie vďaka jedinečne vytvorenému identifikátoru. Takto vytvorené inštancie ObjectDictionary sú uložené v objekte OdLibrary, ku ktorým je možné pristupovať pomocou indexu. Trieda ODLibrary načíta položky ObjectDictionary z file alebo pole, ukladá ich a má nasledujúce verejné členské funkcie:

getObjectDictionaryCount () virtuálny uint32_t getObjectDictionaryCount () const

getObjectDictionary () virtuálny ResultObjectDictionary getObjectDictionary (uint32_t odIndex)

Vráti ResultObjectDictionary

addObjectDictionaryFromFile ()
virtuálny ResultObjectDictionary addObjectDictionaryFromFile (std::string const & absoluteXmlFilecesta)

Vráti ResultObjectDictionary

addObjectDictionary ()
virtuálny ResultObjectDictionary addObjectDictionary (std::vector const & odXmlData, const std::string &xmlFileCesta = std::string ())

Vráti ResultObjectDictionary
8.24 OdTypesHelper
Okrem nasledujúcich verejných členských funkcií táto trieda obsahuje vlastné typy údajov. Poznámka: Ak chcete skontrolovať svoje vlastné typy údajov, vyhľadajte triedu enum ObjectEntryDataType v od_types.hpp.

uintToObjectCode () Konvertuje celé čísla bez znamienka na kód objektu:

Null Deftype

0x00 0x05

Verzia: doc 1.4.2 / NanoLib 1.3.0

40

8 Odkaz na triedy / funkcie

Zničte záznam Var Array Record

0x06 0x07 0x08 0x09

statický ObjectCode uintToObjectCode (nepodpísaný int objectCode)

isNumericDataType () Informuje, či je typ údajov číselný alebo nie.
statický bool isNumericDataType (ObjectEntryDataType dataType)

isDefstructIndex () Informuje, či je objekt indexom štruktúry definície alebo nie.
statický bool isDefstructIndex (uint16_t typeNum)

isDeftypeIndex () Informuje, či je objekt indexom typu definície alebo nie.
statický bool isDeftypeIndex (uint16_t typeNum)

isComplexDataType () Informuje, či je typ údajov zložitý alebo nie.
statický bool isComplexDataType (ObjectEntryDataType dataType)

uintToObjectEntryDataType () Konvertuje celé čísla bez znamienka na typ údajov OD.
sstatic ObjectEntryDataType uintToObjectEntryDataType (uint16_t objectDataType)

objectEntryDataTypeToString () Konvertuje typ údajov OD na reťazec.
static std::string objectEntryDataTypeToString (ObjectEntryDataType odDataType)

stringToObjectEntryDatatype () Konvertuje reťazec na typ údajov OD, ak je to možné. V opačnom prípade vráti UNKNOWN_DATATYPE.
statický ObjectEntryDataType stringToObjectEntryDatatype (std::string dataTypeString)

Verzia: doc 1.4.2 / NanoLib 1.3.0

41

8 Odkaz na triedy / funkcie

objectEntryDataTypeBitLength () Informuje o bitovej dĺžke dátového typu položky objektu.
static uint32_t objectEntryDataTypeBitLength (ObjectEntryDataType const & dataType)

8.25 Štruktúra RESTfulBus

Táto štruktúra obsahuje možnosti konfigurácie komunikácie pre rozhranie RESTful (cez Ethernet). Obsahuje tieto verejné atribúty:

const std::string const unsigned long const std::string const unsigned long const std::string const unsigned long

CONNECT_TIMEOUT_OPTION_NAME = „Časový limit RESTful Connect“ DEFAULT_CONNECT_TIMEOUT = 200 REQUEST_TIMEOUT_OPTION_NAME = „Časový limit RESTful Request“ DEFAULT_REQUEST_TIMEOUT = 200 RESPONSE_TIMEOUT_OPTION_NAME = „Časový limit RESTful odpovede_750“ DEFAULT_XNUMX“ DEFAULTXNUMX

8.26 ProfinetDCP
V systéme Linux potrebuje volajúca aplikácia schopnosti CAP_NET_ADMIN a CAP_NET_RAW. Ak chcete povoliť: sudo setcap 'cap_net_admin,cap_net_raw+eip' ./executable. Vo Windowse používa rozhranie ProfinetDCP WinPcap (testované s verziou 4.1.3) alebo Npcap (testované s verziami 1.60 a 1.30). Vyhľadáva teda dynamicky načítanú knižnicu wpcap.dll v nasledujúcom poradí (Poznámka: žiadna aktuálna podpora Win10Pcap):
1. Adresár Nanolib.dll 2. Systémový adresár Windows SystemRoot%System32 3. Inštalačný adresár Npcap SystemRoot%System32Npcap 4. Cesta prostredia
Táto trieda predstavuje rozhranie Profinet DCP a má nasledujúce verejné členské funkcie:

getScanTimeout () Informuje o časovom limite kontroly zariadenia (predvolená hodnota = 2000 ms).
virtuálny uint32_t nlc::ProfinetDCP::getScanTimeout () const

setScanTimeout () Nastaví časový limit skenovania zariadenia (predvolená hodnota = 2000 ms).
virtual void nlc::setScanTimeout (uint32_t timeoutMsec)

getResponseTimeout () Informuje o časovom limite odozvy zariadenia pre operácie nastavenia, resetovania a blikania (predvolené = 1000 ms).
virtuálny uint32_t nlc::ProfinetDCP::getResponseTimeout () const

setResponseTimeout () Informuje o časovom limite odozvy zariadenia pre operácie nastavenia, resetovania a blikania (predvolené = 1000 ms).
virtual void nlc::ProfinetDCP::setResponseTimeout (uint32_t timeoutMsec)

Verzia: doc 1.4.2 / NanoLib 1.3.0

42

8 Odkaz na triedy / funkcie

isServiceAvailable ()
Túto funkciu použite na kontrolu dostupnosti služby Profinet DCP.
Platnosť/dostupnosť sieťového adaptéra Windows: Dostupnosť WinPcap / Npcap Linux: Možnosti CAP_NET_ADMIN / CAP_NET_RAW
virtual ResultVoid nlc::ProfinetDCP::isServiceAvailable (const BusHardwareId & busHardwareId)

Parametre BusHardwareId Vráti hodnotu true
falošný

Hardvérové ​​ID služby Profinet DCP na kontrolu. Služba je k dispozícii. Služba je nedostupná.

scanProfinetDevices () Túto funkciu použite na skenovanie hardvérovej zbernice na prítomnosť zariadení Profinet.
virtuálny ResultProfinetDevices scanProfinetDevices (const BusHardwareId & busHardwareId)

Parametre BusHardwareId Vráti ResultProfinetDevices

Špecifikuje každú fieldbus, ktorá sa má otvoriť. Hardvér je otvorený.

setupProfinetDevice () Vytvorí nasledujúce nastavenia zariadenia:

Názov zariadenia

IP adresa

Sieťová maska

Predvolená brána

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

resetProfinetDevice () Zastaví zariadenie a obnoví predvolené výrobné nastavenia.
virtual ResultVoid nlc::resetProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)

blinkProfinetDevice () Prikáže zariadeniu Profinet, aby začalo blikať jeho LED dióda Profinet.
virtual ResultVoid nlc::blinkProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice &profinetDevice)

validateProfinetDeviceIp () Túto funkciu použite na kontrolu IP adresy zariadenia.
virtual ResultVoid validateProfinetDeviceIp (const BusHardwareId &busHardwareId, const ProfinetDevice & profinetDevice)

Parametre BusHardwareId ProfinetDevice

Určuje ID hardvéru, ktorý sa má skontrolovať. Určuje zariadenie Profinet, ktoré sa má overiť.

Verzia: doc 1.4.2 / NanoLib 1.3.0

43

8 Odkaz na triedy / funkcie

Vráti ResultVoid

8.27 Štruktúra zariadenia Profinet

Údaje zariadenia Profinet majú tieto verejné atribúty:

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

deviceName deviceVendor macAddress ipAddress netMask defaultGateway

MAC adresa je poskytnutá ako pole vo formáte macAddress = {xx, xx, xx, xx, xx, xx}; keďže IP adresa, sieťová maska ​​a brána sú všetky interpretované ako veľké hexové čísla, ako napríklad:

IP adresa: 192.168.0.2 Maska siete: 255.255.0.0 Brána: 192.168.0.1

0xC0A80002 0xFFFF0000 0xC0A80001

8.28 Triedy výsledkov

Pomocou „voliteľných“ návratových hodnôt týchto tried skontrolujte, či bolo volanie funkcie úspešné alebo nie, a tiež vyhľadajte dôvody zlyhania. V prípade úspechu funkcia hasError () vráti hodnotu false. Pomocou getResult () môžete prečítať výslednú hodnotu podľa typu (ResultInt atď.). Ak hovor zlyhá, prečítate dôvod pomocou getError ().

Chránené atribúty

reťazec NlcErrorCode uint32_t

errorString errorCode exErrorCode

Táto trieda má tiež nasledujúce verejné členské funkcie:

hasError () Prečíta úspešnosť volania funkcie.
bool nlc::Result::hasError () const

Návraty

pravda nepravda

Neúspešný hovor. Na prečítanie hodnoty použite getError (). Úspešný hovor. Na prečítanie hodnoty použite getResult ().

getError () Prečíta dôvod, ak volanie funkcie zlyhá.
const std::string nlc::Result::getError () const

Vráti reťazec const

Verzia: doc 1.4.2 / NanoLib 1.3.0

44

8 Odkaz na triedy / funkcie
result () Nasledujúce funkcie pomáhajú pri definovaní presných výsledkov:
Výsledok (std::string const & errorString_)
Výsledok (NlcErrorCode const & errCode, std::string const & errorString_)
Výsledok (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
Výsledok (Konšt. a výsledok výsledku)
getErrorCode () Prečítajte si NlcErrorCode.
NlcErrorCode getErrorCode () const
getExErrorCode () uint32_t getExErrorCode () const
8.28.1 ResultVoid
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti void. Trieda dedí verejné funkcie a chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
ResultVoid () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku zrušenia:
ResultVoid (std::string const &errorString_)
ResultVoid (NlcErrorCode const & errCode, std::string const & errorString_)
ResultVoid (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultVoid (Konšt. a výsledok výsledku)
8.28.2 ResultInt
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti celé číslo. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Vráti výsledok celého čísla, ak bolo volanie funkcie úspešné.
int64_t getResult () const
Vráti int64_t

Verzia: doc 1.4.2 / NanoLib 1.3.0

45

8 Odkaz na triedy / funkcie
ResultInt () Nasledujúce funkcie pomáhajú pri definovaní presného celočíselného výsledku:
ResultInt (int64_t vysledok_)
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 (Konšt. výsledku a výsledok)
8.28.3 Reťazec výsledkov
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti reťazec. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Prečíta výsledok reťazca, ak bolo volanie funkcie úspešné.
const std::string nlc::ResultString::getResult () const
Vráti reťazec const
ResultString () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku reťazca:
ResultString (std::string const & message, bool hasError_)
ResultString (NlcErrorCode const & errCode, std::string const & errorString_)
ResultString (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultString (Result const & result)
8.28.4 ResultArrayByte
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti bajtové pole. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Číta bajtový vektor, ak bolo volanie funkcie úspešné.
const std::vektor nlc::ResultArrayByte::getResult () const
Vráti konštantný vektor

Verzia: doc 1.4.2 / NanoLib 1.3.0

46

8 Odkaz na triedy / funkcie
ResultArrayByte () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku bajtového poľa:
ResultArrayByte (std::vector const & result_)
ResultArrayByte (std::string const & errorString_)
ResultArrayByte (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayByte (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayByte (Konšt. a výsledok výsledku)
8.28.5 ResultArrayInt
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti celočíselné pole. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Prečíta celočíselný vektor, ak bolo volanie funkcie úspešné.
const std::vektor nlc::ResultArrayInt::getResult () const
Vráti konštantný vektor
ResultArrayInt () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku celočíselného poľa:
ResultArrayInt (std::vector const & result_)
ResultArrayInt (std::string const & errorString_)
ResultArrayInt (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayInt (Konšt. a výsledok výsledku)
8.28.6 ResultBusHwIds
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti pole ID hardvéru zbernice. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Číta vektor zbernice-hardvér-ID, ak bolo volanie funkcie úspešné.
const std::vektor nlc::ResultBusHwIds::getResult () const
Parametre konštantný vektor

Verzia: doc 1.4.2 / NanoLib 1.3.0

47

8 Odkaz na triedy / funkcie
ResultBusHwIds () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku zbernicového hardvéru ID poľa:
ResultBusHwIds (std::vector const & result_)
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 (Result const & result)
8.28.7 ResultDeviceId
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti ID zariadenia. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Číta vektor ID zariadenia, ak bolo volanie funkcie úspešné.
DeviceId nlc::ResultDeviceId::getResult () const
Vráti konštantný vektor
ResultDeviceId () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku ID zariadenia:
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 (Result const & result)
8.28.8 ResultDeviceIds
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti pole ID zariadenia. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Vráti vektor ID zariadenia, ak bolo volanie funkcie úspešné.
DeviceId nlc::ResultDeviceIds::getResult () const
Vráti konštantný vektor

Verzia: doc 1.4.2 / NanoLib 1.3.0

48

8 Odkaz na triedy / funkcie
ResultDeviceIds () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku poľa ID zariadenia:
ResultDeviceIds (std::vector const & result_)
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 (Result const & result)
8.28.9 ResultDeviceHandle
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti hodnotu handle zariadenia. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Číta rukoväť zariadenia, ak bolo volanie funkcie úspešné.
DeviceHandle nlc::ResultDeviceHandle::getResult () const
Vráti DeviceHandle
ResultDeviceHandle () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku handle zariadenia:
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 (Result const & result)
8.28.10 ResultObjectDictionary
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti obsah slovníka objektov. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Číta vektor ID zariadenia, ak bolo volanie funkcie úspešné.
const nlc::ObjectDictionary & nlc::ResultObjectDictionary::getResult () const

Verzia: doc 1.4.2 / NanoLib 1.3.0

49

8 Odkaz na triedy / funkcie

Návraty

konštantný vektor

ResultObjectDictionary () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku slovníka objektov:
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 (Result const & result)

8.28.11 ResultConnectionState
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti informáciu o stave pripojenia zariadenia. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Číta rukoväť zariadenia, ak bolo volanie funkcie úspešné.
DeviceConnectionStateInfo nlc::ResultConnectionState::getResult () const

Vráti DeviceConnectionStateInfo Connected / Disconnected / ConnectedBootloader

ResultConnectionState () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku stavu pripojenia:
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 (Result Const & result)

8.28.12 ResultObjectEntry
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti položku objektu. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:

Verzia: doc 1.4.2 / NanoLib 1.3.0

50

8 Odkaz na triedy / funkcie
getResult () Vráti vektor ID zariadenia, ak bolo volanie funkcie úspešné.
nlc::ObjectEntry const& nlc::ResultObjectEntry::getResult () const
Vráti const ObjectEntry
ResultObjectEntry () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku zadávania objektu:
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 (Konšt. a výsledok výsledku)
8.28.13 ResultObjectSubEntry
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti podpoložku objektu. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Vráti vektor ID zariadenia, ak bolo volanie funkcie úspešné.
nlc::ObjectSubEntry const & nlc::ResultObjectSubEntry::getResult () const
Vráti const ObjectSubEntry
ResultObjectSubEntry () Nasledujúce funkcie pomáhajú pri definovaní presného výsledku podpoložky objektu:
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 (Result const & result)
8.28.14 ResultProfinetDevices
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti zariadenie Profinet. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:

Verzia: doc 1.4.2 / NanoLib 1.3.0

51

8 Odkaz na triedy / funkcie

getResult () Číta vektor zariadenia Profinet, ak bolo volanie funkcie úspešné.
const std::vektor & getResult () const

ResultProfinetDevices () Nasledujúce funkcie pomáhajú pri definovaní presných zariadení Profinet.
ResultProfinetDevices (const std::vector a zariadenia profinet)
ResultProfinetDevices (konst Výsledok a výsledok)
ResultProfinetDevices (const std::string &errorText, NlcErrorCode errorCode = NlcErrorCode::GeneralError, uint32_t extendedErrorCode = 0)
8.28.15 VýsledkySampleDataArray
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti asamppole údajov. Trieda dedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:
getResult () Číta pole údajov, ak bolo volanie funkcie úspešné.
const std::vector <SampleData> & getResult () const

VÝSLEDKYampleDataArray () Nasledujúce funkcie pomáhajú pri definovaní presných zariadení Profinet.
VÝSLEDKYampleDataArray (const std::vector <SampleData> & dataArray)

VÝSLEDKYampleDataArray (const std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)

VÝSLEDKYampleDataArray (konšt. výsledkyampleDataArray a ďalšie)

VÝSLEDKYampleDataArray (konštantný výsledok a výsledok)

8.28.16 VýsledkySamplerState
NanoLib vám pošle inštanciu tejto triedy, ak funkcia vráti asampler state.Táto trieda zdedí verejné funkcie / chránené atribúty z triedy výsledkov a má nasledujúce verejné členské funkcie:

getResult () Prečíta sampstavový vektor, ak bolo volanie funkcie úspešné.
SamplerState getResult () const

Vráti sa SamplerState>

Nekonfigurované / Nakonfigurované / Pripravené / Spustené / Dokončené / Zlyhané / Zrušené

Verzia: doc 1.4.2 / NanoLib 1.3.0

52

8 Odkaz na triedy / funkcie

VÝSLEDKYamplerState () Nasledujúce funkcie pomáhajú pri definovaní presného sampler štát.
VÝSLEDKYamplerState (const Sampštát lerState)

VÝSLEDKYamplerState (const std::string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t
extendErrorCode = 0)

VÝSLEDKYamplerState (konšt. výsledkyamplerState a ďalšie)

VÝSLEDKYamplerState (const Výsledok a výsledok)

8.29 NlcErrorCode

Ak sa niečo pokazí, triedy výsledkov oznámia jeden z chybových kódov uvedených v tomto zozname.

Kód chyby Úspech GeneralError BusUnavailable CommunicationError ProtocolError
ODNeexistuje ODInvalidAccess ODTypeMismatch OperationAborted OperationNotSupported InvalidOperation
InvalidArguments AccessDenied ResourceNotFound ResourceNedostupné OutOfMemory TimeOutError

C: Kategória D: Popis R: Dôvod C: Žiadne. D: Žiadna chyba. R: Operácia bola úspešne dokončená.
C: Nešpecifikované. D: Nešpecifikovaná chyba. R: Zlyhanie, ktoré nepatrí do žiadnej inej kategórie.
C: Autobus. D: Hardvérová zbernica nie je k dispozícii. R: Autobus neexistuje, je prerušený alebo má poruchu.
C: Komunikácia. D: Nespoľahlivá komunikácia. R: Neočakávané údaje, nesprávne CRC, chyby snímky alebo parity atď.
C: Protokol. D: Chyba protokolu. R: Odpoveď po nepodporovanej možnosti protokolu, správa zariadenia nepodporovaný protokol, chyba v protokole (povedzme, synchronizačný bit segmentu SDO) atď. R: Odpoveď alebo správa zariadenia na nepodporovaný protokol (možnosti) alebo na chyby v protokole (povedzme SDO synchronizačný bit segmentu) atď. R: Nepodporovaný protokol (možnosti) alebo chyba v protokole (povedzme synchronizačný bit segmentu SDO) atď.
C: Objektový slovník. D: Adresa OD neexistuje. R: V objektovom slovníku takáto adresa nie je.
C: Objektový slovník. D: Prístup k adrese OD je neplatný. R: Pokus o zápis adresy určenej len na čítanie alebo čítanie z adresy určenej len na zápis.
C: Objektový slovník. D: Nesúlad typu. R: Hodnota neprevedená na špecifikovaný typ, povedzme, v snahe považovať reťazec za číslo.
C: Aplikácia. D: Proces bol prerušený. R: Proces prerušený žiadosťou aplikácie. Vráti sa iba pri prerušení prevádzky funkciou spätného volania, povedzme zo skenovania zbernice.
C: Bežné. D: Proces nie je podporovaný. R: Žiadna podpora hardvérovej zbernice / zariadenia.
C: Bežné. D: Proces je nesprávny v aktuálnom kontexte alebo neplatný s aktuálnym argumentom. R: Pokus o opätovné pripojenie k už pripojeným zberniciam/zariadeniam. Pokus o odpojenie od už odpojených. Pokus o operáciu zavádzača v režime firmvéru alebo naopak.
C: Bežné. D: Argument je neplatný. R: Nesprávna logika alebo syntax.
C: Bežné. D: Prístup je odmietnutý. R: Nedostatok práv alebo schopností vykonať požadovanú operáciu.
C: Bežné. D: Špecifikovaná položka sa nenašla. R: Hardvérová zbernica, protokol, zariadenie, OD adresa na zariadení, príp file nebol nájdený.
C: Bežné. D: Špecifikovaná položka sa nenašla. R: zaneprázdnený, neexistujúci, prerušený alebo defektný.
C: Bežné. D: Nedostatok pamäte. R: Príliš málo pamäte na spracovanie tohto príkazu.
C: Bežné. D: Časový limit procesu vypršal. R: Vráťte sa po vypršaní časového limitu. Časový limit môže byť čas odozvy zariadenia, čas na získanie zdieľaného alebo exkluzívneho prístupu k prostriedkom alebo čas na prepnutie zbernice/zariadenia do vhodného stavu.

Verzia: doc 1.4.2 / NanoLib 1.3.0

53

8 Odkaz na triedy / funkcie

8.30 NlcCallback
Táto nadradená trieda pre spätné volanie má nasledujúcu verejnú členskú funkciu: spätné volanie ()
virtuálne spätné volanie ResultVoid ()

Návraty

ResultVoid

8.31 Spätné volanie NlcDataTransfer
Túto triedu spätného volania použite na prenosy údajov (aktualizácia firmvéru, nahrávanie NanoJ atď.). 1. Pre nahranie firmvéru: Definujte „spolutriedu“ rozširujúcu túto triedu o vlastnú metódu spätného volania
implementáciu. 2. Použite inštancie “co-class's” vo volaniach NanoLibAccessor.uploadFirmware (). Samotná hlavná trieda má nasledujúcu verejnú členskú funkciu:

spätné volanie () virtuálne spätné volanie ResultVoid (nlc::DataTransferInfo info, údaje int32_t)

Návraty

ResultVoid

8.32 Spätné volanie NlcScanBus
Použite túto triedu spätného volania na skenovanie zbernice. 1. Definujte „spolutriedu“ rozširujúcu túto triedu o implementáciu vlastnej metódy spätného volania. 2. Použite inštancie „co-class's“ vo volaniach NanoLibAccessor.scanDevices (). Samotná hlavná trieda má nasledujúcu verejnú členskú funkciu.

zavolaj späť ()
virtuálne spätné volanie ResultVoid (nlc::BusScanInfo info, std::vector const & devicesFound, int32_t data)

Vráti ResultVoid
8.33 NlcLoggingCallback
Túto triedu spätného volania použite na zaznamenávanie spätných volaní. 1. Definujte triedu, ktorá rozširuje túto triedu o implementáciu vlastnej metódy spätného volania 2. Použite ukazovateľ na jej inštancie, aby ste nastavili spätné volanie pomocou NanoLibAccessor >
setLoggingCallback (…).
virtuálne spätné volanie (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 SamplerInterface
Pomocou tejto triedy môžete nakonfigurovať, spustiť a zastaviť sampler, alebo získať sampled data a načítaj akoampstav alebo posledná chyba. Trieda má nasledujúce verejné členské funkcie.

Verzia: doc 1.4.2 / NanoLib 1.3.0

54

8 Odkaz na triedy / funkcie

konfigurovať () Konfiguruje akoampler.
virtuálny ResultVoid nlc::SamplerInterface::configure (const DeviceHandle deviceHandle, const SamplerConfiguration & samplerConfiguration)

Parametre [v] zariadeníHandle [v] samplerConfiguration
Vráti ResultVoid

Určuje, ktoré zariadenie sa má nakonfigurovať sampler pre. Určuje hodnoty konfiguračných atribútov. Potvrdzuje, že bola spustená funkcia zrušenia.

getData () Získa sampLED dáta.
virtuálne výsledkyampleDataArray nlc::SamplerInterface::getData (const DeviceHandle deviceHandle)

Parametre [v] deviceHandle Vráti výsledkyampleDataArray

Určuje, pre ktoré zariadenie sa majú získať údaje.
Dodáva sampled dáta, ktoré môžu byť prázdne pole, ak samplerNotify je aktívny pri spustení.

getLastError () Získa akoampposledná chyba.
virtuálny ResultVoid nlc::SamplerInterface::getLastError (const DeviceHandle deviceHandle)

Vráti ResultVoid

Potvrdzuje, že bola spustená funkcia zrušenia.

getState () Získa akoamplerov stav.
virtuálne výsledkyamplerState nlc::SamplerInterface::getState (const DeviceHandle deviceHandle)

Vráti výsledkyamplerState

Dodáva sampler štát.

začať () Začína akoampler.
virtuálny ResultVoid nlc::SamplerInterface::start (const DeviceHandle deviceHandle, SamplerNotify* samplerNotify, int64_t applicationData)

Parametre [v] zariadeníHandle [v] SamplerNotify [in] applicationData
Vráti ResultVoid

Určuje, na ktorom zariadení sa má spustiť sampler pre.
Určuje, ktoré nepovinné informácie sa majú nahlásiť (môže byť nullptr).
Možnosť: Prepošle údaje súvisiace s aplikáciou (používateľom definované 8-bitové pole hodnôt / ID zariadenia / index alebo dátum a čas, ukazovateľ premennej / funkcie atď.) na samplerNotify.
Potvrdzuje, že bola spustená funkcia zrušenia.

Verzia: doc 1.4.2 / NanoLib 1.3.0

55

8 Odkaz na triedy / funkcie

zastaviť () Zastaví akoampler.
virtuálny ResultVoid nlc::SamplerInterface::stop (const DeviceHandle deviceHandle)

Parametre [v] deviceHandle Vráti ResultVoid

Určuje, ktoré zariadenie má zastaviť sampler pre. Potvrdzuje, že bola spustená funkcia zrušenia.

8.35 SamplerConfiguration struct

Táto štruktúra obsahuje údaje sampmožnosti konfigurácie (statické alebo nie).

Verejné atribúty

std::vektor trackedAddresses

Až 12 adries OD, ktoré majú byť sampviedol.

uint32_t

verzia

Verzia štruktúry.

uint32_t

trvanie v milisekundách

Samptrvanie lingu v ms, od 1 do 65535

uint16_t

perióda v milisekundách

Sampling obdobie v ms.

uint16_t

početSamples

Sampmenšie množstvo.

uint16_t

preTriggerNumberOfSamples

Sampmnožstvo pred spustením.

bool

pomocou implementácie softvéru

Využite implementáciu softvéru.

bool

pomocou NewFWSamplerImplementation Použite implementáciu FW pre zariadenia s a

Verzia FW v24xx alebo novšia.

SamplerMode

režim

Normálne, opakujúce sa alebo súvislé sampling.

SamplerTriggerCondition triggerCondition

Podmienky spustenia spustenia: 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 TC_EQUAL_G = REATER0ORTC16x0G 17x0 TC_LESS = 18x0 TC_LESS_OR_EQUAL = 19x0 TC_EQUAL = 1x0 TC_NOT_EQUAL = 1x0A TC_ONE_EDGE = 1xXNUMXB TC_MULTI_EDGE = XNUMXxXNUMXC, OdIndex, triggerValue

SamplerTrigger

SamplerTrigger

Spúšťač začať akoampler?

Statické verejné atribúty
statický constexpr size_t SAMPLER_CONFIGURATION_VERSION = 0x01000000 statický constexpr size_t MAX_TRACKED_ADDRESSES = 12
8.36 SamplerNotify
Použite túto triedu na aktiváciu sampupozornenia, keď začnete akoampler. Trieda má nasledujúcu verejnú členskú funkciu.

Verzia: doc 1.4.2 / NanoLib 1.3.0

56

8 Odkaz na triedy / funkcie

oznámiť ()
Poskytuje záznam s upozornením.
virtuálne neplatné nlc::SamplerNotify::notify (const ResultVoid & lastError, const SamplerState samplerState, const std::vector <SampleData> & sampleDatas, int64_t applicationData)

Parametre [v] lastError [v] samplerState
[v] sampleDatas [v] applicationData

Hlási poslednú chybu, ktorá sa vyskytla počas sampling. Správy sampStav súboru v čase upozornenia: Nekonfigurovaný / Nakonfigurovaný / Pripravený / Spustený / Dokončený / Zlyhaný / Zrušený. Správy samppole led-data. Hlási údaje špecifické pre aplikáciu.

8.37 SampleData struct

Táto štruktúra obsahuje sampLED dáta.

uin64_t iterationNumber

Začína na 0 a zvyšuje sa iba v opakovanom režime.

std::vektor<SampledValues> Obsahuje pole sampled hodnoty.

8.38 SampledValue struct

Táto štruktúra obsahuje sampled hodnoty.

hodnota in64_t uin64_t CollectTimeMsec

Obsahuje hodnotu sledovanej adresy OD.
Obsahuje čas zberu v milisekundách vzhľadom na sample začiatok.

8.39 SamplerTrigger struct

Táto štruktúra obsahuje nastavenia spúšťača sampler.

SamplerTriggerCondition podmienka
Hodnota OdIndex uin32_t

Spúšťacia podmienka: 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_0EQUALGREATER = 15x0 TC_16EQUALG 0x17 TC_LESS = 0x18 TC_LESS_OR_EQUAL = 0x19 TC_EQUAL = 0x1 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE = XNUMXxXNUMXC
OdIndex (adresa) spúšťača.
Hodnota podmienky alebo číslo bitu (začínajúc od bitu nula).

8.40 Sériová štruktúra

Tu nájdete možnosti sériovej komunikácie a nasledujúce verejné atribúty:

const std::string const SerialBaudRate

BAUD_RATE_OPTIONS_NAME = “sériová prenosová rýchlosť” baudRate = Štruktúra sériovej prenosovej rýchlosti

Verzia: doc 1.4.2 / NanoLib 1.3.0

57

8 Odkaz na triedy / funkcie

const std::string const SerialParity

PARITY_OPTIONS_NAME = “sériová parita” parita = Štruktúra SerialParity

8.41 Štruktúra SerialBaudRate

Tu nájdete svoju prenosovú rýchlosť sériovej komunikácie a nasledujúce verejné atribúty:

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_RATE_56000 BAUD_RATE_57600 57600” BAUD_RATE_115200 = “115200” BAUD_RATE_128000 = “128000” BAUD_RATE_256000 = “256000”

8.42 Štruktúra SerialParity

Tu nájdete možnosti sériovej parity a nasledujúce verejné atribúty:

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

ŽIADNE = „žiadne“ PÁRNE = „nepárne“ PÁRNE = „párne“ MARK = „označiť“ MEDZERNÍK = „medzera“

Verzia: doc 1.4.2 / NanoLib 1.3.0

58

9 licencie

9 licencie

Hlavičky rozhrania API NanoLib a naprampZdrojové kódy sú licencované spoločnosťou Nanotec Electronic GmbH & Co. KG pod licenciou Creative Commons Attribution 3.0 Unported License (CC BY). Knižničné časti poskytované v binárnom formáte (knižnice jadrovej a fieldbusovej komunikácie) sú licencované pod medzinárodnou licenciou Creative Commons AttributionNoDerivatives 4.0 (CC BY ND).

Creative Commons
Nasledujúce zhrnutie čitateľné pre človeka nenahradí samotnú licenciu (licencie). Príslušnú licenciu nájdete na stránke creativecommons.org a odkaz nižšie. Máte možnosť:

CC BY 3.0
Zdieľať: Pozri vpravo. Prispôsobte sa: Remixujte, transformujte a stavajte na
materiál na akýkoľvek účel, dokonca aj na komerčné účely.

CC BY-ND 4.0
Zdieľať: Kopírujte a redistribuujte materiál na akomkoľvek médiu alebo formáte.

Poskytovateľ licencie nemôže odvolať vyššie uvedené slobody, pokiaľ budete dodržiavať nasledujúce licenčné podmienky:

CC BY 3.0

CC BY-ND 4.0

Pripisovanie: Musíte uviesť primeraný kredit, Pripisovanie: Pozri vľavo. Ale: Uveďte odkaz na toto

uveďte odkaz na licenciu a uveďte, či

iná licencia.

boli vykonané zmeny. Môžete tak urobiť v ktoromkoľvek

Žiadne deriváty: Ak remixujete, transformujete alebo zostavujete

rozumným spôsobom, ale nie spôsobom, ktorý by naznačoval

na materiáli, nesmiete distribuovať

naznačuje, že poskytovateľ licencie podporuje vás alebo vaše používanie.

upravený materiál.

Žiadne ďalšie obmedzenia: Nemôžete použiť Žiadne ďalšie obmedzenia: Pozri vľavo. právne podmienky alebo technologické opatrenia, ktoré legálne

obmedzovať ostatných v akejkoľvek činnosti na základe licencie

povolenia.

Poznámka: Nemusíte dodržiavať licenciu pre prvky materiálu vo verejnej sfére alebo tam, kde je vaše použitie povolené príslušnou výnimkou alebo obmedzením.
Poznámka: Neposkytujú sa žiadne záruky. Licencia vám nemusí poskytnúť všetky povolenia potrebné na zamýšľané použitie. NapríkladampIné práva, ako sú práva na publicitu, súkromie alebo morálne práva, môžu obmedziť spôsob, akým materiál používate.

Verzia: doc 1.4.2 / NanoLib 1.3.0

59

Tiráž, kontakt, verzie

©2024 Nanotec Electronic GmbH & Co.KGKapellenstr.685622 FeldkirchenGermanyTel.+49(0) 89 900 686-0Fax+49(0)89 900 686-50 info@nanotec.dewww.nanotec.com Všetky práva vyhradené. Chyba, vynechanie, technická alebo obsahová zmena možná bez upozornenia. Kótované značky/produkty sú ochrannými známkami ich vlastníkov a tak sa s nimi musí aj zaobchádzať. Pôvodná verzia.

Dokument 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

+ Pridané > Zmenené # Opravené > Prepracovanie poskytnutého examples.
+ NanoLib Modbus: Pridaný mechanizmus uzamknutia zariadenia pre Modbus VCP. # NanoLib Core: Opravená kontrola stavu pripojenia. # Kód NanoLib: Opravené odstránenie hardvérovej referencie zbernice.
+ NanoLib-CANopen: Podpora pre Peak PCAN-USB adaptér (IPEH-002021/002022).
> NanoLib Core: Zmenené protokolovacie rozhranie spätného volania (LogLevel nahradené LogModule). # NanoLib Logger: Oddelenie medzi jadrom a modulmi bolo opravené. # Modbus TCP: Opravená aktualizácia firmvéru pre FW4. # EtherCAT: Opravené nahrávanie programu NanoJ pre Core5. # EtherCAT: Opravená aktualizácia firmvéru pre Core5.
# Modbus RTU: Opravené problémy s časovaním s nízkou prenosovou rýchlosťou počas aktualizácie firmvéru. # RESTful: Opravené nahrávanie programu NanoJ.
# Moduly NanoLib Sampler: Správne čítanie sampled boolovské hodnoty.
+ Podpora Java 11 pre všetky platformy. + Podpora Pythonu 3.11/3.12 pre všetky platformy. + Nové rozhranie spätného volania prihlásenia (pozri napramples). + Spätné volanie pre NanoLib Logger. > Aktualizujte zapisovač na verziu 1.12.0. > Moduly NanoLib Sampler: Podpora teraz pre firmvér ovládača Nanotec v24xx. > Moduly NanoLib Sampler: Zmena štruktúry použitej pre sampkonfigurácie. > Moduly NanoLib Sampler: Nepretržitý režim je synonymom pre nekonečný; podmienka spúšťania sa skontroluje raz; počet samples musí byť 0. > Moduly NanoLib Sampler: Normálna priorita pre vlákno, ktoré zhromažďuje údaje v režime firmvéru. > Moduly NanoLib Sampler: Prepísaný algoritmus na zistenie prechodu medzi stavom Pripravený a Spustený. # NanoLib Core: Už žiadne porušenie prístupu (0xC0000005) pri zatváraní 2 alebo viacerých zariadení používajúcich rovnaký hardvér zbernice. # NanoLib Core: Už žiadna chyba segmentácie pri pripájaní adaptéra PEAK pod Linuxom. # Moduly NanoLib Sampler: Správne sampčítanie hodnôt LED v režime firmvéru. # Moduly NanoLib Sampler: Správna konfigurácia 502X:04. # Moduly NanoLib Sampler: Správne zmiešanie medzipamätí s kanálmi. # NanoLib-Canopen: Zvýšené časové limity CAN pre robustnosť a správne skenovanie pri nižších prenosových rýchlostiach. # NanoLib-Modbus: Detekčný algoritmus VCP pre špeciálne zariadenia (USB-DA-IO).
+ Podpora EtherCAT.
+ Poznámka k nastaveniam projektu VS v časti Konfigurácia projektu.
+ getDeviceHardwareGroup (). + getProfinetDCP (isServiceAvailable). + getProfinetDCP (validateProfinetDeviceIp). + autoAssignObjectDictionary (). + getXmlFileMeno (). + const std::string & xmlFileCesta v addObjectDictionary (). + getSamplerInterface ().

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

Verzia: doc 1.4.2 / NanoLib 1.3.0

60

10 Tiráž, kontakt, verzie

Dokument
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

+ Pridané > Zmenené # Opravené + reštartujte zariadenie (). + Kód chyby ResourceUnavailable pre getDeviceBootloaderVersion (), ~VendorId (), ~HardwareVersion (), ~SerialNumber a ~Uid. > FirmwareUploadFromFile teraz uploadFirmwareFromFile (). > firmwareOdovzdať () teraz odovzdaťFirmvér (). > bootloaderUploadFromFile () teraz nahrajteBootloaderFromFile (). > bootloaderUpload () teraz uploadBootloader (). > bootloaderFirmwareUploadFromFile () na odovzdanieBootloaderFirmwareFromFile (). > bootloaderFirmwareUpload () teraz uploadBootloaderFirmware (). > nanojUploadFromFile () teraz nahrajteNanoJFromFile (). > nanojUpload () teraz uploadNanoJ (). > objectDictionaryLibrary () teraz getObjectDictionaryLibrary (). > String_String_Map teraz StringStringMap. > NanoLib-Common: rýchlejšie vykonávanie listAvailableBusHardware a openBusHardwareWithProtocol s adaptérom Ixxat. > NanoLib-CANopen: použijú sa predvolené nastavenia (1000k prenosová rýchlosť, číslo zbernice Ixxat 0), ak sú možnosti hardvéru zbernice prázdne. > NanoLib-RESTful: oprávnenie správcu pre komunikáciu s ethernetovými bootloadermi pod Windows je zastarané, ak je k dispozícii ovládač npcap / winpcap. # NanoLib-CANopen: hardvér zbernice sa teraz otvára bez zlyhania s prázdnymi možnosťami. # NanoLib-Common: openBusHardwareWithProtocol () teraz bez úniku pamäte.
+ Podpora Linuxu ARM64. + USB mass storage / REST / podpora Profinet DCP. + checkConnectionState (). + getDeviceBootloaderVersion (). + ResultProfinetDevices. + NlcErrorCode (nahradené NanotecExceptions). + NanoLib Modbus: VCP / USB rozbočovač zjednotený s USB. > Skenovanie Modbus TCP vráti výsledky. < Komunikačná latencia Modbus TCP zostáva konštantná.
+ Viac ObjectEntryDataType (komplexné a profesionálnefile-špecifické). + IOError sa vráti, ak connectDevice () a scanDevices () nenájdu žiadne. + Len 100 ms nominálneho časového limitu pre CanOpen / Modbus.
+ Podpora Modbus (plus USB Hub cez VCP). + Kapitola Vytvorenie vlastného projektu Linux. + extraHardwareSpecifier k BusHardwareId (). + extraId_ a extraStringId_ na DeviceId ().
+ setBusState (). + getDeviceBootloaderBuildId (). + getDeviceFirmwareBuildId (). + getDeviceHardwareVersion (). # Opravy chýb.
vydanie.

Produkt
0.8.0 0.7.1 0.7.0 0.5.1 0.5.1

Verzia: doc 1.4.2 / NanoLib 1.3.0

61

Dokumenty / zdroje

Nanotic NanoLib C++ Programovanie [pdfPoužívateľská príručka
NanoLib C Programovanie, C Programovanie, Programovanie

Referencie

Zanechajte komentár

Vaša emailová adresa nebude zverejnená. Povinné polia sú označené *