Nanotic NanoLib C++ Programming

Product Information
fepetra arahana
- Anaran'ny vokatra: NanoLib
- Fandaharana Fiteny: C++
- Dikan'ny vokatra: 1.3.0
- User Manual Version: 1.4.2
Ny tranomboky NanoLib dia natao ho an'ny rindrambaiko fanaraha-maso fandaharana ho an'ny mpanara-maso Nanotec. Izy io dia manome interface tsara ho an'ny mpampiasa, fampiasa fototra ary tranomboky fifandraisana mba hanamora ny fampivoarana ny fampiharana fanaraha-maso.
Torolàlana momba ny fampiasana vokatra
- Alohan'ny hanombohanao:
- Ataovy azo antoka fa mahafeno ny fepetra takian'ny fitaovana voalaza ao amin'ny boky torolalana ny rafitrao. Ny mpihaino kendrena ho an'ity vokatra ity dia ahitana mpamorona mitady hamorona rindrambaiko fanaraha-maso ho an'ny mpanara-maso Nanotec.
- Hanomboka:
- Mba hanombohana mampiasa NanoLib dia araho ireto dingana ireto:
- Atombohy amin'ny fanafarana NanoLib amin'ny tetikasanao.
- Amboary ny firafitry ny tetikasanao raha ilaina.
- Amboary ny tetikasanao mba hampidirana ny fampiasa NanoLib.
- Mamorona tetikasa:
- Afaka mamorona tetikasa ho an'ny tontolo Windows sy Linux ianao. Araho ny toromarika manokana omena ao amin'ny boky torolalana ho an'ny sehatra tsirairay.
- Kilasy / Fampiasana Reference:
- Jereo ny boky torolalana ho an'ny torolalana amin'ny antsipiriany momba ny kilasy sy ny fiasa hita ao amin'ny NanoLib ho an'ny rindrambaiko fanaraha-maso fandaharana.
FAQs
- F: Inona no tanjon'ny NanoLib?
- A: NanoLib dia tranomboky ho an'ny rindrambaiko fanaraha-maso fandaharana ho an'ny mpanara-maso Nanotec, manome fiasa ilaina sy fahaizana mifandray.
- F: Ahoana no ahafahako manomboka amin'ny NanoLib?
- A: Atombohy amin'ny fanafarana NanoLib ho ao amin'ny tetikasanao, amboary ny firafitry ny tetikasa, ary manangana ny tetikasanao hampiasa ny endri-javatra NanoLib.
“`
User Manual NanoLib
C++
Manan-kery amin'ny vokatra kinova 1.3.0
User Manual Version: 1.4.2
Tanjona sy fivoriambe
Ity antontan-taratasy ity dia mamaritra ny fananganana sy ny fampiasana ny tranomboky NanoLib ary misy fanondroana ny kilasy sy ny fiasa rehetra amin'ny fandaharana ny rindrambaiko fanaraha-maso manokana ho an'ny mpanara-maso Nanotec. Mampiasa ireto endri-tsoratra manaraka ireto izahay:
Ny lahatsoratra misy tsipihina dia manamarika reference na hyperlink.
Examp1: Raha mila torolalana marina momba ny NanoLibAccessor, jereo ny Setup. EkampDingana 2: Apetraho ny mpamily Ixxat ary ampifandraiso ny adaptatera CAN-to-USB. Ny teny italika dia midika hoe: Ity dia zavatra nomena anarana, lalana menu / singa, tabilao / file anarana na (raha ilaina) fomba fiteny amin'ny fiteny vahiny.
Example 1: Mifidiana File > Vaovao > Document Blank. Sokafy ny tabilao Tool ary mifidiana Comment. Ekample 2: Ity antontan-taratasy ity dia mizara ny mpampiasa (= Nutzer; usuario; utente; utilisateur; utente sns.) amin'ny:
– Mpampiasa antoko fahatelo (= Drittnutzer; tercero usuario; terceiro utente; tiers utilisateur; terzo utente sns.). – Mpampiasa farany (= Endnutzer; usuario final; utente final; utilisateur final; utente finale sns.).
Ny Courier dia manamarika ny sakana kaody na baiko fandaharana. Ekample 1: Amin'ny alàlan'ny Bash, antsoy ny sudo make install mba handikana zavatra nozaraina; dia antsoy ny ldconfig. Ekample 2: Ampiasao ity fiasa NanoLibAccessor manaraka ity hanovana ny haavon'ny logging ao amin'ny NanoLib:
// ***** Variant C++ *****
void setLoggingLevel(LogLevel level);
Ny lahatsoratra matevina dia manantitrantitra ny teny tsirairay manan-danja. Raha tsy izany, ny marika fihobiana misy fonon-tanana dia manantitrantitra ny maha-zava-dehibe (!).
Example 1: Arovy ny tenanao sy ny hafa ary ny fitaovanao. Araho ny fanamarihana ankapobeny momba ny fiarovana izay azo ampiharina amin'ny vokatra Nanotec rehetra.
Example 2: Mba hiarovana anao manokana, araho ihany koa ny fanamarihana fiarovana manokana izay mihatra amin'ity vokatra manokana ity. Ny matoanteny hoe co-click dia midika hoe kitihina amin'ny alalan'ny fanalahidin'ny totozy faharoa hanokafana menu contexte sns.
Example 1: Co-click amin'ny file, fidio Avereno anarana, ary ovay anarana ny file. Ekample 2: Mba hanamarinana ny fananana, co-click ny file ary mifidiana Properties.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
4
Alohan'ny hanombohanao
Alohan'ny hanombohanao mampiasa NanoLib, omano ny PC-nao ary mampahafantatra ny tenanao momba ny fampiasana sy ny fetran'ny tranomboky.
2.1 Rafitra sy fitaovana ilaina

FANAMARIHANA Ny tsy fahombiazan'ny fandidiana 32-bit na ny rafitra tapaka! Mampiasà, ary mitazona tsy tapaka, rafitra 64-bit. Tandremo ny fampiatoana sy ~ torolàlana OEM.
NanoLib 1.3.0 dia manohana ny vokatra Nanotec rehetra miaraka amin'ny CANopen, Modbus RTU (koa USB amin'ny seranan-tsambo virtoaly), Modbus TCP, EtherCat, ary Profinet. Ho an'ny NanoLibs taloha: Jereo ny changelog ao amin'ny imprint. Atahorana ho anao ihany: fampiasana rafitra lova. Fanamarihana: Araho ny torolalan'ny OEM manan-kery mba hametrahana ny fahatarana ho ambany indrindra raha sendra olana ianao rehefa mampiasa adaptatera USB mifototra amin'ny FTDI.
Fepetra (tsy maintsy rafitra 64-bit)
Windows 10 na 11 w/ Visual Studio 2019 version 16.8 na aoriana ary Windows SDK 10.0.20348.0 (version 2104) na aoriana
C++ redistributables 2017 na ambony CANopen: Ixxat VCI na PCAN mpamily fototra (tsy voatery) EtherCat module / Profinet DCP: Npcap na WinPcap RESTful module: Npcap, WinPcap, na fahazoan-dàlana admin
mifandray amin'ny Ethernet bootloaders
Linux w/ Ubuntu 20.04 LTS hatramin'ny 24 (x64 sy arm64 rehetra)
Lohatenin'ny Kernel sy fonosana libpopt-dev Profinet DCP: CAP_NET_ADMIN sy CAP_NET_RAW mahay-
mampifandray CANopen: Ixxat ECI mpamily na Peak PCAN-USB adapter EtherCat: CAP_NET_ADMIN, CAP_NET_RAW ary
Fahaiza-manao CAP_SYS_NICE MAMPIDIRANA: CAP_NET_ADMIN fahaizana mifandray amin'ny Eth-
ernet bootloaders (aroso ihany koa: CAP_NET_RAW)
Fiteny, adaptatera fieldbus, tariby
C++ GCC 7 na ambony (Linux)
EtherCAT: Cable Ethernet VCP / USB hub: ankehitriny fanamiana USB USB fitehirizana faobe: USB cable RESEST: Ethernet Cable CNopen: Ixxat USB-to-CAN V2; N / A-
notec ZK-USB-CAN-1, Peak PCANUSB adapter Tsy misy fanohanana Ixxat ho an'ny Ubuntu amin'ny arm64
Modbus RTU: Nanotec ZK-USB-RS485-1 na adaptatera mitovy; Cable USB amin'ny seranan-tsambo virtoaly (VCP)
Modbus TCP: tariby Ethernet araka ny angona vokatra
2.2 Fampiasana sy mpihaino
NanoLib dia famakiam-boky programa sy singa rindrambaiko ho an'ny fampandehanana sy fifandraisana amin'ireo mpanara-maso Nanotec amin'ny fampiharana indostrialy isan-karazany ary ho an'ny mpandrindra mahay ihany.
Noho ny fitaovana tsy mahavita tena (PC) sy ny rafitra miasa, NanoLib dia tsy ampiasaina amin'ny rindranasa mila hetsika multi-axis synchronous na matetika saro-pady.
Na ahoana na ahoana, azonao atao ny mampiditra ny NanoLib ho singa fiarovana amin'ny vokatra na rafitra. Amin'ny fanaterana ho an'ny mpampiasa farany dia tsy maintsy ampiana fampitandremana mifanaraka amin'izany sy toromarika ho an'ny fampiasana azo antoka sy azo antoka ho an'ny vokatra tsirairay misy singa vita amin'ny Nanotec. Tsy maintsy ampitainao amin'ny mpampiasa farany ny fampitandremana rehetra navoakan'ny Nanotec.
2.3 Saran'ny fanaterana sy fiantohana
NanoLib dia tonga toy ny fampirimana *.zip avy amin'ny fampidinana anay webtranokala ho an'ny EMEA / APAC na AMERIKA. Tehirizo tsara ary sokafy ny fampidinanao alohan'ny fanamboarana. Ny fonosana NanoLib dia misy:
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
5
2 Alohan'ny hanombohanao
Loham-pandaharana ho toy ny kaody loharano (API)
Ny fototra dia miasa toy ny tranomboky amin'ny endrika binary: nano-
Tranomboky manamora ny fifandraisana: nanolibm_ lib.dll
[yourfieldbus].dll sns.Example tetikasa: Eksample.sln (Visual Studio
tetikasa) sy example.cpp (main file)
Ho an'ny faritry ny fiantohana, azafady tandremo a) ny fepetra sy ny fepetra ho an'ny EMEA / APAC na AMERIKA ary b) ny fepetra momba ny fahazoan-dàlana rehetra. Fanamarihana: Ny Nanotec dia tsy tompon'andraikitra amin'ny kalitao diso na tsy mendrika, ny fikarakarana, ny fametrahana, ny fampandehanana, ny fampiasana ary ny fikojakojana ny fitaovana an'ny antoko fahatelo! Mba hahazoana fiarovana, araho foana ny torolalana OEM manan-kery.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
6
Ny maritrano NanoLib
Ny rafitra rindrambaiko modular an'i NanoLib dia mamela anao handamina malalaka ny fiasan'ny motera / fieldbus azo zahana manodidina ny fotony efa vita mialoha. NanoLib dia misy ireto modules manaraka ireto:
User interface (API)
NanoLib core
Interface sy mpanampy kilasy izay Library izay
Fitehirizam-bokin'ny fifandraisana Fieldbus manokana famakiam-boky izay
miditra anao amin'ny fampiharana ny fanaraha-maso anao ny fiasan'ny API manao interface eo amin'ny NanoLib
OD (rakibolana zavatra)
mifandray amin'ny tranomboky bus.
fitaovana fototra sy bus.
mifototra amin'ny asa fototra NanoLib-
zom-pirenena.
3.1 User interface tsara
Ny interface interface dia misy lohapejy files azonao ampiasaina hidirana amin'ny mari-pamantarana mpanara-maso. Ny kilasin'ny mpampiasa interface tsara araka ny voalaza ao amin'ny references Classes / functions dia ahafahanao:
Ampifandraiso amin'ny fitaovana (adapter fieldbus) sy ny fitaovana fanaraha-maso. Midira ao amin'ny OD amin'ny fitaovana, hamakiana/hanoratra ny mari-pamantarana mpanara-maso.
3.2 NanoLib core
Ny fototry ny NanoLib dia miaraka amin'ny tranomboky fanafarana nanolib.lib. Mampihatra ny fampiasa amin'ny mpampiasa interface tsara izy io ary tompon'andraikitra amin'ny:
Fametrahana sy fitantanana ny tranomboky fifandraisana. Manome ny fampiasa amin'ny mpampiasa interface tsara ao amin'ny NanoLibAccessor. Ity teboka fidirana amin'ny fifandraisana ity dia
mandoa onitra amin'ny fampandehanan-draharaha azonao atao amin'ny tranombokin'ny fifandraisana sy ny fototry ny NanoLib.
3.3 Tranomboky fifandraisana
Ho fanampin'ny nanotec.services.nanolib.dll (ilaina amin'ny Plug & Drive Studio azonao atao), NanoLib dia manolotra ireto trano famakiam-pifandraisana manaraka ireto:
nanolibm_canopen.dll nanolibm_modbus.dll
nanolibm_ethercat.dll nanolibm_restful-api.dll
nanolibm_usbmmsc.dll nanolibm_profinet.dll
Ny tranomboky rehetra dia mametraka sosona abstraction hardware eo anelanelan'ny core sy ny controller. Ny fototra dia mameno azy ireo amin'ny fanombohana avy amin'ny lahatahiry tetikasa voatondro ary mampiasa azy ireo hananganana fifandraisana amin'ny mpanara-maso amin'ny alàlan'ny protocol mifanaraka aminy.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
7
Hanomboka
Vakio tsara ny fomba fametrahana NanoLib ho an'ny rafitra fiasanao sy ny fomba fampifandraisana ny fitaovana raha ilaina.
4.1 Omano ny rafitrao
Alohan'ny hametrahana ny mpamily adaptatera, omano aloha ny PC-nao miaraka amin'ny rafitra fiasana. Mba hanomanana ny PC miaraka amin'ny Windows OS, apetraho ny MS Visual Studio miaraka amin'ny fanitarana C++. Raha hametraka make sy gcc amin'ny Linux Bash, antsoy ny sudo apt install build-essentials. Alefaso avy eo ny CAP_NET_ADMIN, CAP_NET_RAW, ary CAP_SYS_NICE ho an'ny fampiharana mampiasa NanoLib: 1. Antsoy ny sudo setcap 'cap_net_admin, cap_net_raw, cap_sys_nice+eip'
anarana>. 2. Avy eo, apetraho ny mpamily adaptatera.
4.2 Apetraho ny mpamily adaptatera Ixxat ho an'ny Windows
Aorian'ny fametrahana ny mpamily dia azonao ampiasaina ny adaptatera USB-to-CAN V2 an'i Ixxat. Vakio ny boky torolàlana momba ny vokatra USB drive, hianarana raha / ny fomba fampandehanana ny virtoaly comport (VCP). 1. Ampidino ary apetraho ny mpamily VCI 4 an'i Ixxat ho an'ny Windows avy amin'ny www.ixxat.com. 2. Ampifandraiso amin'ny PC amin'ny alalan'ny USB ny adaptatera compact USB-to-CAN V2 an'i Ixxat. 3. Amin'ny alalan'ny Mpitantana ny fitaovana: Jereo raha toa ka napetraka/ekena ny mpamily sy ny adaptatera.
4.3 Apetraho ny mpamily adaptatera Peak ho an'ny Windows
Aorian'ny fametrahana mpamily araka ny tokony ho izy dia azonao ampiasaina ny adaptatera PCAN-USB an'ny Peak. Vakio ny boky torolàlana momba ny vokatra USB drive, hianarana raha / ny fomba fampandehanana ny virtoaly comport (VCP). 1. Ampidino ary apetraho ny fametrahana ny mpamily fitaovana Windows (= fonosana fametrahana w/ mpamily fitaovana, fitaovana ary
APIs) avy amin'ny http://www.peak-system.com. 2. Ampifandraiso amin'ny PC amin'ny alalan'ny USB ny adaptatera PCAN-USB an'ny Peak. 3. Amin'ny alalan'ny Mpitantana ny fitaovana: Jereo raha toa ka napetraka/ekena ny mpamily sy ny adaptatera.
4.4 Apetraho ny mpamily adaptatera Ixxat ho an'ny Linux
Aorian'ny fametrahana ny mpamily dia azonao ampiasaina ny adaptatera USB-to-CAN V2 an'i Ixxat. Fanamarihana: Ny adaptatera hafa tohana dia mila ny fahazoan-dàlanao amin'ny sudo chmod +777/dev/ttyACM* (* laharan'ny fitaovana). Vakio ny boky torolàlana momba ny vokatra USB drive, hianarana raha / ny fomba fampandehanana ny virtoaly comport (VCP). 1. Apetraho ny rindrambaiko ilaina ho an'ny mpamily ECI sy ny fampiharana demo:
sudo apt-get update apt-get install libusb-1.0-0-dev libusb-0.1-4 libc6 libstdc++6 libgcc1 buildessential
2. Ampidino avy amin'ny www.ixxat.com ny mpamily ECI-for-Linux. Sokafy amin'ny alalan'ny:
unzip eci_driver_linux_amd64.zip
3. Mametraka ny mpamily amin'ny alalan'ny:
cd / EciLinux_amd / src / KernelModule sudo manao install-usb
4. Jereo ny fametrahana mpamily mahomby amin'ny fanangonana sy fanombohana ny fampiharana demo:
cd /EciLinux_amd/src/EciDemos/ sudo manao cd /EciLinux_amd/bin/release/ ./LinuxEciDemo
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
8
4 Fanombohana
4.5 Ampidiro ny mpamily adaptatera Peak ho an'ny Linux
Aorian'ny fametrahana mpamily araka ny tokony ho izy dia azonao ampiasaina ny adaptatera PCAN-USB an'ny Peak. Fanamarihana: Ny adaptatera hafa tohana dia mila ny fahazoan-dàlanao amin'ny sudo chmod +777/dev/ttyACM* (* laharan'ny fitaovana). Vakio ny boky torolàlana momba ny vokatra USB drive, hianarana raha / ny fomba fampandehanana ny virtoaly comport (VCP). 1. Jereo raha manana lohatenin'ny kernel ny Linux-nao: ls /usr/src/linux-headers-`uname -r`. Raha tsy izany dia apetraho
izy ireo: sudo apt-get install linux-headers-`uname -r` 2. Ankehitriny, apetraho ny fonosana libpopt-dev: sudo apt-get install libpopt-dev 3. Ampidino ny fonosana mpamily ilaina (peak-linux-driver-xxx.tar.gz) avy amin'ny www.peak-system.com. 4. Mba hamahana azy dia ampiasao ny: tar xzf peak-linux-driver-xxx.tar.gz 5. Ao amin'ny lahatahiry tsy misy entana: Manangona sy mametraka ny mpamily, tranomboky fototra PCAN, sns.: ataovy daholo
sudo make install 6. Mba hijerena ny fiasa dia ampidiro ny adapter PCAN-USB.
a) Jereo ny module kernel:
lsmod | grep pcan b) ... ary ny tranomboky iombonana:
ls -l /usr/lib/libpcan*
Fanamarihana: Raha misy olana USB3 dia ampiasao seranan-tsambo USB2.
4.6 Ampifandraiso ny fitaovanao
Mba hahafahana mampandeha tetikasa NanoLib, ampifandraiso amin'ny PC amin'ny alàlan'ny adaptatera ny mpanara-maso Nanotec mifanaraka amin'izany. 1. Ampifandraiso amin'ny tariby sahaza ny adaptateranao amin'ny mpanara-maso. 2. Ampifandraiso amin'ny PC ny adaptatera araka ny takelaka data adaptatera. 3. Ampidiro ny controller amin'ny fampiasana famatsiana herinaratra mety. 4. Raha ilaina dia ovay ny firafitry ny fifandraisana an'ny mpifehy Nanotec araka ny toromarika ao amin'ny boky torolalana momba ny vokatra.
4.7 Ampidiro ny NanoLib
Ho fanombohana voalohany amin'ny fototra haingana sy mora, azonao (fa tsy tokony) mampiasa ny talohantsikaample project. 1. Miankina amin'ny faritra misy anao: Misintona NanoLib avy aminay webtranokala ho an'ny EMEA / APAC na AMERIKA. 2. Sokafy ny fonosana files / folders ary mifidiana safidy iray: Ho an'ny fototra haingana sy mora: Jereo ny Manomboka ny example project. Ho an'ny fanamboarana avo lenta amin'ny Windows: Jereo ny Mamorona tetikasa Windows anao manokana. Ho an'ny fanamboarana avo lenta amin'ny Linux: Jereo ny Mamorona tetikasa Linux anao manokana.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
9
Manomboka ny example project
Miaraka amin'ny NanoLib feno entana, ny exampNy tetikasa dia mampiseho anao amin'ny alàlan'ny fampiasana NanoLib miaraka amin'ny mpanara-maso Nanotec. Fanamarihana: Isaky ny dingana, asio hevitra ao amin'ny ex nomenaample code manazava ny fonction ampiasaina. Ny exampNy tetikasa dia ahitana: ny `*_functions_example.*' files, izay misy ny fampiharana ny interface NanoLib miasa ny `*_callback_example.*' files, izay misy fampiharana ho an'ny antso samihafa (scan, data ary
logging) ny `menu_*.*' file, izay misy ny lojikan'ny menio sy ny kaody ny Example.* file, izay programa lehibe indrindra, mamorona ny sakafo ary manomboka ny masontsivana ampiasaina rehetra ny Sampler_example.* file, izay misy ny example fampiharana ho an'ny sampny fampiasana. Afaka mahita ex bebe kokoa ianaoamples, miaraka amin'ny baiko mihetsika sasany ho an'ny fomba fiasa isan-karazany, ao amin'ny Foiben'ny Fahalalana ao amin'ny nanotec.com. Ny rehetra dia azo ampiasaina amin'ny Windows na Linux.
Ao amin'ny Windows miaraka amin'ny Visual Studio 1. Sokafy ny Example.sln file. 2. Sokafy ny example.cpp. 3. Manangona ary mihazakazaka ny example kaody.
Amin'ny Linux amin'ny alàlan'ny Bash 1. Sokafy ny loharano file, mandehana mankany amin'ny lahatahiry misy votoaty voavaha. Ny tena file ho an'ny example ny
example.cpp. 2. Ao amin'ny bash, miantsoa:
a. "sudo make install" handikana ireo zavatra nozaraina ary hiantso ny ldconfig. b. "Ataovy izay rehetra" mba hananganana ny fitsapana azo tanterahina. 3. Ny lahatahiry bin dia misy ex executableample file. Amin'ny alàlan'ny bash: Mandehana any amin'ny lahatahiry vokatra ary soraty ny ./example. Raha tsy misy hadisoana, dia efa napetraka araka ny tokony ho izy izao ny zavatra nozarainao, ary vonona hampiasaina ny tranombokinao. Raha mamaky ny ./example: hadisoana teo am-pandrafetana tranomboky iombonana: libnanolib.so: tsy afaka manokatra zavatra iombonana file: Tsia file na lahatahiry, tsy nahomby ny fametrahana ireo zavatra iombonana. Amin'ity tranga ity, araho ny dingana manaraka. 4. Mamorona lahatahiry vaovao ao anatin'ny /usr/local/lib (ilaina ny zon'ny admin). Ao amin'ny bash, soraty toy izao:
sudo mkdir /usr/local/lib/nanotec
5. Adikao avy amin'ny zip ny zavatra nozaraina rehetra fileny lib folder:
mametraka ./lib/*.so /usr/local/lib/nanotec/
6. Jereo ny votoatin'ny lahatahiry kendrena amin'ny:
ls -al /usr/local/lib/nanotec/
Tokony ho tanisainy ny zavatra nozaraina files avy amin'ny lahatahiry lib. 7. Ampandehano ny ldconfig amin'ity lahatahiry ity:
sudo ldconfig /usr/local/lib/nanotec/
Ny example dia ampiharina ho fampiharana CLI ary manome interface tsara menu. Ny fidirana amin'ny menio dia mifototra amin'ny teny manodidina ary ho alefa na ho kilemaina, arakaraka ny toetry ny contexte. Manolotra anao izy ireo ny fahafahana misafidy sy manatanteraka asa famakiam-boky isan-karazany manaraka ny fomba fiasa mahazatra amin'ny fitantanana controller: 1. Jereo ny PC raha misy fitaovana mifandray (adapter) ary tanisao azy ireo. 2. Mametraha fifandraisana amin'ny adaptatera. 3. Andramo ny fiara fitateram-bahoaka mba hahitana fitaovana fanaraha-maso mifandray. 4. Mifandray amin'ny fitaovana iray.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
10
5 Manomboka ny example project
5. Andramo ny fiasan'ny trano famakiam-boky iray na maromaro: Mamakia / manorata avy amin'ny / mankany amin'ny rakibolana objet an'ny mpanara-maso, manavao ny firmware, mampakatra sy mampandeha programa NanoJ, mandehana sy amboary ny maotera, amboary ary ampiasao ny log / sampler.
6. Akatona ny fifandraisana, voalohany amin'ny fitaovana, avy eo amin'ny adaptatera.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
11
Mamorona tetikasa Windows anao manokana
Mamorona, manangona ary mitantana ny tetikasa Windows anao manokana hampiasana NanoLib.
6.1 Manafatra NanoLib
Ampidiro ny lohatenin'ny NanoLib files sy tranomboky amin'ny alàlan'ny MS Visual Studio.
1. Sokafy Visual Studio. 2. Amin'ny alalan'ny Mamorona tetikasa vaovao > Console App C++ > Manaraka: Mifidiana karazana tetikasa. 3. Omeo anarana ny tetikasanao (eto: NanolibTest) mba hamoronana lahatahiry tetikasa ao amin'ny Solution Explorer. 4. Safidio ny Vita. 5. Sokafy ny varavarankely file explorer ary mandehana mankany amin'ny lahatahiry tetikasa vaovao noforonina. 6. Mamorona lahatahiry vaovao roa, inc sy lib. 7. Sokafy ny lahatahiry fonosana NanoLib. 8. Avy eo: Adikao ny lohateny files avy amin'ny fampirimana tafiditra ao amin'ny lahatahiry tetikasanao inc sy ny .lib sy .dll rehetra
files amin'ny lahatahiry tetikasanao vaovao lib. 9. Jereo ny lahatahiry tetikasanao momba ny rafitra mety, ohatraample:
ect lahatahiry ho an'ny rafitra mety:
. NanolibTest inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result_od_entry.hpp lib nanolibm_canopen.dll nanolib.dll … nanolib.lib NanolibTest.cpp NanolibTest.vcxproj NanolibTest.vcxproj.filters NanolibTest.vlibcxTest.vlibcx
6.2 Amboary ny tetikasanao
Ampiasao ny Vahaolana Explorer ao amin'ny MS Visual Studio hananganana tetikasa NanoLib. Fanamarihana: Ho an'ny fampandehanana NanoLib marina, safidio ny famotsorana (fa tsy debug!) fikandrana ao amin'ny firafitry ny tetikasa Visual C++; avy eo manangana sy mampifandray ny tetikasa amin'ny VC runtimes C++ redistributables [2022].
1. Ao amin'ny Vahaolana Explorer: Mandehana any amin'ny lahatahiry tetikasanao (eto: NanolibTest). 2. Tsindrio miaraka amin'ny lahatahiry hanokafana ny menu context. 3. Safidio ny Properties. 4. Ampidiro ny fanamafisana rehetra sy ny sehatra rehetra. 5. Safidio ny C/C++ ary mandehana any amin'ny Added Directories fanampiny. 6. Ampidiro: $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) 7. Safidio ny Linker ary mandehana any amin'ny Direction Library fanampiny. 8. Ampidiro: $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) 9. Extend Linker ary mifidiana Input. 10. Mandehana any amin'ny Fiankinan-doha fanampiny ary ampidiro: nanolib.lib;%(AdditionalDependencies) 11.Hamarino amin'ny alàlan'ny OK.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
12
6 Mamorona tetikasa Windows anao manokana
12. Mandehana any amin'ny Configuration > C++ > Language > Language Standard > ISO C++17 Standard ary apetraho amin'ny C++17 ny fenitry ny fiteny (/std:c++17).
6.3 Amboary ny tetikasanao
Amboary ny tetikasa NanoLib ao amin'ny MS Visual Studio. 1. Sokafy ny *.cpp lehibe file (eto: nanolib_example.cpp) ary ovay ny code, raha ilaina. 2. Safidio ny Build > Configuration Manager. 3. Ovay ho x64 ny sehatra vahaolana Active. 4. Hamafiso amin'ny alalan'ny Close. 5. Safidio ny Build > Build solution. 6. Tsy misy hadisoana? Jereo raha mitatitra araka ny tokony ho izy ny vokatra navoakanao:
1>—— Natomboka ny fanadiovana: Tetikasa: NanolibTest, Configuration: Debug x64 —–========== Madio: 1 tafita, 0 tsy nahomby, 0 no nitsambikina ==========
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
13
7 Mamorona tetikasa Linux anao manokana
7 Mamorona tetikasa Linux anao manokana
Mamorona, manangona ary mitantana ny tetikasa Linux anao manokana hampiasana NanoLib. 1. Ao amin'ny kitapo fametrahana NanoLib tsy misy zipo: Sokafy /nanotec_nanolib. 2. Tadiavo ao amin'ny tar.gz ny zavatra nozaraina rehetra file. 3. Mifidiana safidy iray: Apetraho ny lib tsirairay na amin'ny Makefile na amin’ny tanana.
7.1 Apetraho amin'ny Makefile
Ampiasao ny Makefile miaraka amin'ny Linux Bash hametraka ho azy ny default *.so files. 1. Via Bash: Mandehana any amin'ny lahatahiry misy ny makefile. 2. Adikao ireo zavatra nozaraina amin'ny alalan'ny:
sudo make install 3. Hamafiso amin'ny alalan'ny:
ldconfig
7.2 Apetraho amin'ny tanana ireo zavatra nozaraina
Mampiasà Bash hametrahana *.so rehetra files an'ny NanoLib amin'ny tanana. 1. Amin'ny alalan'ny Bash: Mamorona lahatahiry vaovao ao anatin'ny /usr/local/lib. 2. Ilaina ny zon'ny Admin! Karazana:
sudo mkdir /usr/local/lib/nanotec 3. Ovay amin'ny lahatahiry fonosana fametrahana tsy misy zipo. 4. Adikao avy amin'ny lahatahiry lib amin'ny alalan'ny:
install ./nanotec_nanolib/lib/*.so /usr/local/lib/nanotec/ 5. Jereo ny votoatin'ny lahatahiry kendrena amin'ny alalan'ny:
ls -al /usr/local/lib/nanotec/ 6. Jereo raha voatanisa avokoa ny zavatra ifampizarana avy amin'ny lahatahiry lib. 7. Ampandehano ny ldconfig amin'ity lahatahiry ity amin'ny alàlan'ny:
sudo ldconfig /usr/local/lib/nanotec/
7.3 Mamorona ny tetikasanao
Miaraka amin'ny zavatra zarainao napetraka: Mamorona tetikasa vaovao ho an'ny Linux NanoLib anao. 1. Amin'ny alàlan'ny Bash: Mamorona lahatahiry tetikasa vaovao (eto: NanoLibTest) amin'ny alàlan'ny:
mkdir NanoLibTest cd NanoLibTest
2. Adikao ny lohateny files amin'ny lahatahiry misy (eto: inc) amin'ny alàlan'ny: mkdir inc cp / FILE IS>/nanotec_nanolib/inc/*.hpp inc
3. Mamorona fototra file (NanoLibTest.cpp) amin'ny alalan'ny: #include “accessor_factory.hpp” #include
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
14
7 Mamorona tetikasa Linux anao manokana
int main(){ nlc::NanoLibAccessor *accessor = getNanoLibAccessor();
nlc::ResultBusHwIds result = accessor->listAvailableBusHardware();
if(result.hasError()) { std::cout << result.getError() << std::endl; }
else{ std::cout << “Fahombiazana” << std::endl; }
mamafa accessor; miverina 0; }
4. Jereo ny lahatahiry tetikasanao raha misy ny rafitra mety:

. NanoLibTest
inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result.hpp NanoLibTest.cpp
7.4 Angony sy andramo ny tetikasanao
Ataovy vonona hampiasaina amin'ny alalan'ny Bash ny Linux NanoLib anao.
1. Amin'ny alàlan'ny Bash: Manangona ny lehibe file amin'ny:
g++ -Wall -Wextra -pedantic -I./inc -c NanoLibTest.cpp -o NanoLibTest
2. Ampifandraiso miaraka ny executable amin'ny alalan'ny:
g++ -Wall -Wextra -pedantic -I./inc -o test NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
3. Alefaso ny programa fitsapana amin'ny alàlan'ny:
./test
4. Jereo raha mitatitra araka ny tokony ho izy ny Bash-nao:
FETY
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
15
8 Classes/functions reference
8 Classes/functions reference
Tadiavo eto ny lisitry ny kilasin'ny mpampiasa interface tsara an'ny NanoLib sy ny asan'ny mpikambana ao aminy. Ny famaritana mahazatra momba ny asa iray dia misy fampidirana fohy, ny famaritana asa ary lisitry ny parameter / fiverenana:
ExampleFunction () Lazao anao fohifohy ny ataon'ilay asa.
void virtoaly nlc::NanoLibAccessor::ExampleFunction (Param_a const & param_a, Param_b const & param_B)
Paramètres param_a param_b
Mamerina ResultVoid
Hevitra fanampiny raha ilaina. Hevitra fanampiny raha ilaina.
8.1 NanoLibAccessor
Kilasy interface tsara ampiasaina ho teboka fidirana amin'ny NanoLib. Toy izao ny fomba fiasa mahazatra:
1. Atombohy amin'ny fijerena ny fitaovana amin'ny NanoLibAccessor.listAvailableBusHardware (). 2. Apetraho amin'ny BusHardwareOptions (). 3. Sokafy ny fifandraisana fitaovana amin'ny NanoLibAccessor.openBusHardwareWithProtocol (). 4. Andramo ny fiara fitateram-bahoaka hahitana fitaovana mifandray amin'ny NanoLibAccessor.scanDevices (). 5. Ampio fitaovana misy NanoLibAccessor.addDevice (). 6. Mifandraisa amin'ny fitaovana amin'ny NanoLibAccessor.connectDevice (). 7. Rehefa vita ny fandidiana dia tapaho ny fitaovana amin'ny NanoLibAccessor.disconnectDevice (). 8. Esory ny fitaovana amin'ny NanoLibAccessor.removeDevice (). 9. Akatona ny fifandraisana fitaovana amin'ny NanoLibAccessor.closeBusHardware ().
NanoLibAccessor dia manana ireto asan'ny mpikambana ho an'ny daholobe manaraka ireto:
listAvailableBusHardware () Ampiasao ity asa ity mba hitanisana ny fitaovana fieldbus misy.
virtoaly ResultBusHwIds nlc::NanoLibAccessor::listAvailableBusHardware ()
Mamerina ResultBusHwIds
Manolotra laharan'ny ID fieldbus.
openBusHardwareWithProtocol () Ampiasao ity fampiasa ity hampifandraisana ny fitaovan'ny fiara fitateram-bahoaka.
virtoaly ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (BusHardwareId const & busHwId, BusHardwareOptions const & busHwOpt)
Parameter busHwId busHwOpt
Mamerina ResultVoid
Manondro ny fieldbus hanokatra. Manondro safidy fanokafana fieldbus. Manamafy fa misy fiasa tsy misy dikany.
isBusHardwareOpen () Ampiasao ity fampiasa ity hijerena raha misokatra ny fifandraisanao amin'ny fitaovana fieldbus.
virtoaly ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (const BusHardwareId & busHwId, const BusHardwareOptions & busHwOpt)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
16
8 Classes/functions reference
Parameter BusHardwareId Miverina marina
DISO
Mamaritra ny fieldbus tsirairay hosokafana. Misokatra ny fitaovana. Nakatona ny fitaovana.
getProtocolSpecificAccessor () Ampiasao ity fiasa ity mba hahazoana ilay zavatra accessor manokana momba ny protocol.
virtoaly ResultVoid nlc::NanoLibAccessor::getProtocolSpecificAccessor (BusHardwareId const & busHwId)
Parameter busHwId Return ResultVoid
Manondro ny fieldbus hahazoana ny accessor. Manamafy fa misy fiasa tsy misy dikany.
getProfinetDCP () Ampiasao ity fampiasa ity hamerenana reference amin'ny interface Profinet DCP.
ProfinetDCP virtoaly & getProfinetDCP ()
Mamerina ny ProfinetDCP
NahazoamplerInterface () Ampiasao ity fiasa ity mba hahazoana reference amin'ny sampinterface tsara.
virtoaly SamplerInterface & getSamplerInterface ()
Hiverina SamplerInterface
Manondro ny sampkilasy interface tsara.
setBusState () Ampiasao ity fiasa ity mba hametrahana ny toetry ny protocol-protocol manokana.
virtoaly ResultVoid nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & state)
Parameter busHwId fanjakana
Mamerina ResultVoid
Manondro ny fieldbus hanokatra. Manendry fanjakana manokana amin'ny fiara fitateram-bahoaka ho sanda tady. Manamafy fa misy fiasa tsy misy dikany.
scanDevices () Ampiasao ity fampiasa ity hijerena fitaovana ao amin'ny tambajotra.
virtoaly ResultDeviceIds nlc::NanoLibAccessor::scanDevices (const BusHardwareId & busHwId, NlcScanBusCallback* callback)
Parameter busHwId callback
Mamerina ResultDeviceIds IOError
Manondro ny fieldbus hojerena. NlcScanBusCallback mpandinika fandrosoana. Manome laharan'ny ID fitaovana. Mampahafantatra fa tsy hita ny fitaovana iray.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
17
8 Classes/functions reference
addDevice ()
Ampiasao ity fiasa ity hanampiana fitaovana fiara fitateram-bahoaka nofaritan'ny deviceId amin'ny lisitry ny fitaovana anatiny an'ny NanoLib, ary hamerina ny deviceHandle ho azy.
virtoaly ResultDeviceHandle nlc::NanoLibAccessor::addDevice (DeviceId const & deviceId)
Parameter deviceId dia mamerina ny ResultDeviceHandle
Manondro ny fitaovana ampidirina amin'ny lisitra. Manolotra tantana fitaovana.
connectDevice () Ampiasao ity fiasa ity hampifandraisana fitaovana amin'ny deviceHandle.
virtoaly ResultVoid nlc::NanoLibAccessor::connectDevice (DeviceHandle const deviceHandle)
Parameter deviceHandle mamerina ny ResultVoid
IOError
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka mifandray amin'i NanoLib. Manamafy fa misy fiasa tsy misy dikany. Mampahafantatra fa tsy hita ny fitaovana iray.
getDeviceName () Ampiasao ity fiasa ity mba hahazoana ny anaran'ny fitaovana amin'ny deviceHandle.
virtoaly ResultString nlc::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)
Parameters deviceHandle Return ResultString
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib nahazo ny anarana. Manome anarana fitaovana ho tady.
getDeviceProductCode () Ampiasao ity fiasa ity mba hahazoana ny kaody vokatra amin'ny fitaovana amin'ny deviceHandle.
ResultInt virtoaly nlc::NanoLibAccessor::getDeviceProductCode (DeviceHandle const deviceHandle)
Parameters deviceHandle Returns ResultInt
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib mahazo ny kaody vokatra. Manolotra kaody vokatra ho integer.
getDeviceVendorId () Ampiasao ity fiasa ity hahazoana ny ID mpivarotra fitaovana amin'ny deviceHandle.
ResultInt virtoaly nlc::NanoLibAccessor::getDeviceVendorId (DeviceHandle const deviceHandle)
Parameters deviceHandle Returns ResultInt
ResourceUnavailable
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka i NanoLib mahazo ny ID mpivarotra. Mandefa ny kaodin'ny mpivarotra ho integer. Mampahafantatra fa tsy misy angona hita.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
18
8 Classes/functions reference
getDeviceId () Ampiasao ity fampiasa ity mba hahazoana ID fitaovana manokana avy amin'ny lisitra anatiny NanoLib.
virtoaly ResultDeviceId nlc::NanoLibAccessor::getDeviceId (DeviceHandle const deviceHandle)
Parameter deviceHandle mamerina ny ResultDeviceId
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka i NanoLib mahazo ny ID fitaovana. Manome ID fitaovana.
getDeviceIds () Ampiasao ity fampiasa ity mba hahazoana ID ny fitaovana rehetra avy amin'ny lisitra anatiny NanoLib.
virtoaly ResultDeviceIds nlc::NanoLibAccessor::getDeviceIds ()
Mamerina ResultDeviceIds
Manolotra lisitry ny ID fitaovana.
getDeviceUid () Ampiasao ity fiasa ity mba hahazoana ID tokana an'ny fitaovana (96 bit / 12 bytes) amin'ny deviceHandle.
virtoaly ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (DeviceHandle const deviceHandle)
Parameter deviceHandle mamerina ny ResultArrayByte
ResourceUnavailable
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka i NanoLib mahazo ny ID tokana. Manome ID tokana ho toy ny laharan'ny byte. Mampahafantatra fa tsy misy angon-drakitra hita.
getDeviceSerialNumber () Ampiasao ity fiasa ity mba hahazoana ny laharan'ny fitaovana amin'ny deviceHandle.
virtoaly ResultString NanolibAccessor::getDeviceSerialNumber (DeviceHandle const deviceHandle)
Parameters deviceHandle Return ResultString
ResourceUnavailable
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka i NanoLib no mahazo ny laharana. Manome laharan-tariby ho tady. Mampahafantatra fa tsy misy angona hita.
getDeviceHardwareGroup () Ampiasao ity fampiasa ity mba hahazoana ny vondrona fitaovan'ny fitaovan'ny fiara fitateram-bahoaka amin'ny alalan'ny deviceHandle.
virtoaly ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareGroup (DeviceHandle const deviceHandle)
Parameters deviceHandle Returns ResultInt
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib mahazo ny vondrona fitaovana.
Manolotra vondrona fitaovana ho integer.
getDeviceHardwareVersion () Ampiasao ity fampiasa ity mba hahazoana ny kinova hardware an'ny fitaovan'ny fiara fitateram-bahoaka amin'ny alalan'ny deviceHandle.
virtoaly ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareVersion (DeviceHandle const deviceHandle)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
19
8 Classes/functions reference
Paramètres deviceHandle
Miverina
ResultString ResourceUnavailable
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka i NanoLib mahazo ny kinova hardware. Manome anarana fitaovana ho tady. Mampahafantatra fa tsy misy angona hita.
getDeviceFirmwareBuildId () Ampiasao ity fampiasa ity mba hahazoana ID fananganana firmware an'ny fitaovana bus amin'ny deviceHandle.
virtoaly ResultDeviceId nlc::NanoLibAccessor::getDeviceFirmwareBuildId (DeviceHandle const deviceHandle)
Parameters deviceHandle Return ResultString
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka i NanoLib mahazo ny ID fananganana firmware.
Manome anarana fitaovana ho tady.
getDeviceBootloaderVersion () Ampiasao ity fampiasa ity mba hahazoana ny kinova bootloader an'ny fitaovana bus amin'ny deviceHandle.
ResultInt virtoaly nlc::NanoLibAccessor::getDeviceBootloaderVersion (DeviceHandle const deviceHandle)
Paramètres deviceHandle
Miverina
ResultInt ResourceUnavailable
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib mahazo ny kinova bootloader. Manome dikan-teny bootloader ho integer. Mampahafantatra fa tsy misy angona hita.
getDeviceBootloaderBuildId () Ampiasao ity fiasa ity mba hahazoana ID fananganana bootloader an'ny fitaovana bus amin'ny deviceHandle.
virtoaly ResultDeviceId nlc::NanoLibAccessor:: (DeviceHandle const deviceHandle)
Parameters deviceHandle Return ResultString
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib mahazo ny bootloader build ID.
Manome anarana fitaovana ho tady.
rebootDevice () Ampiasao ity fiasa ity hamerenana ny fitaovana amin'ny alalan'ny deviceHandle.
virtoaly ResultVoid nlc::NanoLibAccessor::rebootDevice (const DeviceHandle deviceHandle)
Parameter deviceHandle mamerina ny ResultVoid
Manondro ny fieldbus hamerenana indray. Manamafy fa misy fiasa tsy misy dikany.
getDeviceState () Ampiasao ity fiasa ity mba hahazoana ny toetra manokana momba ny fitaovana.
virtoaly ResultString nlc::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)
Paramètres deviceHandle
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib mahazo ny fanjakana.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
20
8 Classes/functions reference
Mamerina ResultString
Manome anarana fitaovana ho tady.
setDeviceState () Ampiasao ity fiasa ity mba hametrahana ny toetry ny protocole manokana.
virtoaly ResultVoid nlc::NanoLibAccessor::setDeviceState (const DeviceHandle deviceHandle, const std::string & state)
Parameter deviceHandle fanjakana
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib mametraka ny fanjakana. Manendry fanjakana manokana amin'ny fiara fitateram-bahoaka ho sanda tady. Manamafy fa misy fiasa tsy misy dikany.
getConnectionState ()
Ampiasao ity fiasa ity mba hahazoana ny toetry ny fifandraisana farany fantatra amin'ny fitaovana iray amin'ny deviceHandle (= Disconnected, Connected, ConnectedBootloader)
virtoaly ResultConnectionState nlc::NanoLibAccessor::getConnectionState (DeviceHandle const deviceHandle)
Parameter deviceHandle mamerina ny ResultConnectionState
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib mahazo ny toetry ny fifandraisana.
Manatitra toetry ny fifandraisana (= Disconnected, Connected, ConnectedBootloader).
checkConnectionState ()
Raha tsy tapaka ihany ilay fanjakana fantatra farany: Ampiasao ity fampiasa ity mba hanamarinana sy mety hanavao ny toetry ny fifandraisan'ny fitaovana iray amin'ny alalan'ny deviceHandle sy amin'ny alalan'ny fitiliana asa manokana.
virtoaly ResultConnectionState nlc::NanoLibAccessor::checkConnectionState (DeviceHandle const deviceHandle)
Parameter deviceHandle mamerina ny ResultConnectionState
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka i NanoLib manamarina ny toetry ny fifandraisana.
Manatitra toetry ny fifandraisana (= tsy tapaka).
assignObjectDictionary () Ampiasao ity asa tanana ity hanendry rakibolana zavatra (OD) ho an'ny deviceHandle irery.
virtoaly ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)
Paramètres deviceHandle objectDictionary
Mamerina ResultObjectDictionary
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka omen'ny NanoLib ny OD. Maneho ny toetran'ny rakibolana zavatra.
autoAssignObjectDictionary ()
Ampiasao ity automatisme ity mba hamela ny NanoLib hanendry rakibolana (OD) ho an'ny deviceHandle. Amin'ny fitadiavana sy fametahana OD mety, NanoLib dia manome azy ho azy amin'ny fitaovana. Fanamarihana: Raha toa ka misy OD mifanentana efa tafiditra ao amin'ny tranomboky zavatra, dia hampiasa azy ho azy ny NanoLib raha tsy mijery ny lahatahiry natolotra.
virtoaly ResultObjectDictionary nlc::NanoLibAccessor::autoAssignObjectDictionary (DeviceHandle const deviceHandle, const std::string & dictionariesLocationPath)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
21
8 Classes/functions reference
Paramètres deviceHandle
Miverina
rakibolanaLocationPath ResultObjectDictionary
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka hanodina ho azy ny NanoLib ho an'ny OD mety. Mamaritra ny lalana mankany amin'ny lahatahiry OD. Maneho ny toetran'ny rakibolana zavatra.
getAssignedObjectDictionary ()
Ampiasao ity asa ity mba hahazoana ny rakibolana zavatra voatendry ho an'ny fitaovana iray amin'ny deviceHandle.
virtoaly ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (DeviceHandle const fitaovana
Tantana)
Parameter deviceHandle dia mamerina ny ResultObjectDictionary
Mamaritra hoe inona ny fitaovana fiara fitateram-bahoaka NanoLib mahazo ny OD voatendry. Maneho ny toetran'ny rakibolana zavatra.
getObjectDictionaryLibrary () Ity fiasa ity dia mamerina reference OdLibrary.
virtoaly OdLibrary& nlc::NanoLibAccessor::getObjectDictionaryLibrary ()
Mamerina ny OdLibrary&
Manokatra ny tranomboky OD manontolo sy ny rakibolana misy azy.
setLoggingLevel () Ampiasao ity fiasa ity mba hametrahana ny antsipiriany momba ny log (sy ny log file habe). Ny haavon'ny default dia Info.
virtoaly void nlc::NanoLibAccessor::setLoggingLevel (LogLevel level)
Ambaratonga parameter
Ireto manaraka ireto ny antsipiriany momba ny log dia azo atao:
0 = Trace 1 = Debug 2 = Info 3 = Fampitandremana 4 = Error 5 = Critique 6 = Tsy misy
Ambaratonga ambany indrindra (Log file); mirakitra an-tsoratra izay antsipiriany azo atao, miampy fanombohana / fijanonana ny rindrambaiko. Fampahalalana momba ny debug amin'ny logs (= valiny vonjimaika, votoaty nalefa na voaray, sns.) Ambaratonga default; mitanisa hafatra fampahalalana. Mitadiava olana izay nitranga fa tsy hampiato ny algorithm ankehitriny. Ny logs dia olana goavana izay nanakana ny algorithm. Ambaratonga ambony indrindra (Log kely indrindra file); mamono ny fidirana; tsy misy log intsony. Tsy misy logging mihitsy.
setLoggingCallback ()
Ampiasao ity fampiasa ity mba hametrahana tondro famerenan'ny logiciel sy môdely log (= tranomboky) ho an'io antso miverina io (fa tsy ho an'ny logger mihitsy).
virtoaly void nlc::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* callback, const nlc::LogModule & logModule)
Paramètres * logback logModule
Mametraka tondro fiantsoana. Ampifanaraho amin'ny tranombokinao ny antso miverina (fa tsy logger!).
0 = NanolibCore 1 = NanolibCANopen 2 = NanolibModbus 3 = NanolibEtherCAT
Manetsika antso miverina ho an'ny fototry ny NanoLib ihany. Manetsika antso miverina CANopen ihany. Manetsika antso miverina Modbus ihany. Manetsika antso miverina EtherCAT ihany.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
22
8 Classes/functions reference
4 = NanolibRest 5 = NanolibUSB
Manetsika antso miverina REST ihany. Manetsika antso miverina USB ihany.
unsetLoggingCallback () Ampiasao ity fampiasa ity mba hanafoanana ny tondro antso miverina.
void virtoaly nlc::NanoLibAccessor::unsetLoggingCallback ()
readNumber () Ampiasao ity fiasa ity hamakiana sanda isa avy amin'ny rakibolana zavatra.
ResultInt virtoaly nlc::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parameter deviceHandle odIndex
Return ResultInt
Mamaritra hoe avy amin'ny inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib. Manondro ny fanondroana (sub-) hovakiana. Manome sanda isa tsy voadika (azo sonia, tsy misy sonia, fix16.16 bit sanda).
readNumberArray () Ampiasao ity fampiasa ity hamakiana ireo laharan-tsarety avy amin'ny rakibolana zavatra.
virtoaly ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t index)
Paramètres deviceHandle index
Mamerina ResultArrayInt
Mamaritra hoe avy amin'ny inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib. Fanondroana zavatra laharan-kira. Mamoaka andry integer.
readBytes () Ampiasao ity fampiasa ity hamakiana bytes tsy misy dikany ( data object domain) avy amin'ny rakibolana zavatra.
virtoaly ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parameter deviceHandle odIndex
Mamerina ResultArrayByte
Mamaritra hoe avy amin'ny inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib. Manondro ny fanondroana (sub-) hovakiana. Manome array byte.
readString () Ampiasao ity fiasa ity hamakiana tady avy amin'ny lahatahiry zavatra.
virtoaly ResultString nlc::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)
Parameter deviceHandle odIndex
Mamerina ResultString
Mamaritra hoe avy amin'ny inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib. Manondro ny fanondroana (sub-) hovakiana. Manome anarana fitaovana ho tady.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
23
8 Classes/functions reference
writeNumber () Ampiasao ity asa ity hanoratana soatoavina isa amin'ny lahatahiry zavatra.
virtoaly ResultVoid nlc::NanoLibAccessor::writeNumber (const DeviceHandle deviceHandle, int64_t value, const OdIndex odIndex, unsigned int bitLength)
Paramètres deviceHandle value odIndex bitLength
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitaterana nanoratan'i NanoLib. Ny sanda tsy misy dikany (azo sonia, tsy misy sonia, manamboatra 16.16). Manondro ny fanondroana (sub-) hovakiana. Halavany amin'ny bit. Manamafy fa misy fiasa tsy misy dikany.
writeBytes () Ampiasao ity asa ity hanoratana bytes tsy ara-dalàna (angona object domain) amin'ny lahatahiry zavatra.
virtoaly ResultVoid nlc::NanoLibAccessor::writeBytes (const DeviceHandle deviceHandle, const std::vector & data, const OdIndex odIndex)
Paramètres deviceHandle data odIndex
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitaterana nanoratan'i NanoLib. Byte vector / array. Manondro ny fanondroana (sub-) hovakiana. Manamafy fa misy fiasa tsy misy dikany.
uploadFirmware ()
Ampiasao ity fampiasa ity mba hanavaozanao ny firmware-nao.
virtoaly ResultVoid nlc::NanoLibAccessor::uploadFirmware (const DeviceHandle deviceHandle, const std::vector & fwData, NlcDataTransferCallback* callback)
Paramètres deviceHandle fwData NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka nohavaozin'i NanoLib. Array misy angona firmware. Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
uploadFirmwareFromFile ()
Ampiasao ity fampiasa ity mba hanavaozanao ny firmware amin'ny alàlan'ny fampiakarana azy file.
virtoaly ResultVoid nlc::NanoLibAccessor::uploadFirmwareFromFile (const DeviceHandle deviceHandle, const std :: string & absoluteFilePath, NlcDataTransferCallback* callback)
Paramètres deviceHandle absoluteFileLalana NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka nohavaozin'i NanoLib. Lalana mankany file misy angona firmware (std::string). Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
24
8 Classes/functions reference
uploadBootloader ()
Ampiasao ity fiasa ity mba hanavaozana ny bootloader anao.
virtoaly ResultVoid nlc::NanoLibAccessor::uploadBootloader (const DeviceHandle deviceHandle, const std::vector & btData, NlcDataTransferCallback* callback)
Paramètres deviceHandle btData NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka nohavaozin'i NanoLib. Array misy angona bootloader. Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
uploadBootloaderFromFile ()
Ampiasao ity fiasa ity hanavaozana ny bootloader controller anao amin'ny alàlan'ny fampiakarana azy file.
virtoaly ResultVoid nlc::NanoLibAccessor::uploadBootloaderFromFile (const DeviceHandle deviceHandle, const std :: string & bootloaderAbsoluteFilePath, NlcDataTransferCallback* callback)
Paramètres deviceHandle bootloaderAbsoluteFileLalana NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka nohavaozin'i NanoLib. Lalana mankany file misy angona bootloader (std::string). Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
uploadBootloaderFirmware ()
Ampiasao ity fiasa ity mba hanavaozana ny bootloader sy firmware anao.
virtoaly ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmware (const DeviceHandle deviceHandle, const std::vector & btData, const std::vector & fwData, NlcDataTransferCallback* callback)
Paramètres deviceHandle btData fwData NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka nohavaozin'i NanoLib. Array misy angona bootloader. Array misy angona firmware. Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
uploadBootloaderFirmwareFromFile ()
Ampiasao ity fiasa ity mba hanavaozana ny bootloader sy firmware anao amin'ny alàlan'ny fampiakarana ny files.
ResultVoid virtoaly nlc::NanoLibAccessor::uploadBootloaderFirmwareFromFile (const DeviceHandle deviceHandle, const std :: string & bootloaderAbsoluteFileLalana, const std::string & absoluteFilePath, NlcDataTransferCallback* callback)
Paramètres deviceHandle bootloaderAbsoluteFileLalana tanterakaFileLalana NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka nohavaozin'i NanoLib. Lalana mankany file misy angona bootloader (std::string). Lalana mankany file misy angona firmware (uint8_t). Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
25
8 Classes/functions reference
uploadNanoJ ()
Ampiasao ity fiasa ho an'ny daholobe ity mba hampiakatra ny programa NanoJ amin'ny mpanara-maso anao.
virtoaly ResultVoid nlc::NanoLibAccessor::uploadNanoJ (DeviceHandle const deviceHandle, std::vector const & vmmData, NlcDataTransferCallback* callback)
Parameter deviceHandle vmmData NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka ampiakarin'i NanoLib. Array misy angona NanoJ. Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
uploadNanoJFromFile ()
Ampiasao ity fiasa ho an'ny daholobe ity mba hampiakatra ny programa NanoJ amin'ny mpanara-maso anao amin'ny alàlan'ny fampiakarana ny file.
virtoaly ResultVoid nlc::NanoLibAccessor::uploadNanoJFromFile (const DeviceHandle deviceHandle, const std :: string & absoluteFilePath, NlcDataTransferCallback* callback)
Paramètres deviceHandle absoluteFileLalana NlcDataTransferCallback
Mamerina ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka ampiakarin'i NanoLib. Lalana mankany file misy angona NanoJ (std::string). Mpandinika ny fivoaran'ny angona. Manamafy fa misy fiasa tsy misy dikany.
disconnectDevice () Ampiasao ity fampiasa ity hanesorana ny fitaovanao amin'ny alalan'ny deviceHandle.
virtoaly ResultVoid nlc::NanoLibAccessor::disconnectDevice (DeviceHandle const deviceHandle)
Parameter deviceHandle mamerina ny ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka manasaraka ny NanoLib. Manamafy fa misy fiasa tsy misy dikany.
removeDevice () Ampiasao ity fampiasa ity hanesorana ny fitaovanao amin'ny lisitry ny fitaovana anatiny an'ny NanoLib.
virtoaly ResultVoid nlc::NanoLibAccessor::removeDevice (const DeviceHandle deviceHandle)
Parameter deviceHandle mamerina ny ResultVoid
Mamaritra hoe inona ny fitaovan'ny fiara fitateram-bahoaka NanoLib. Manamafy fa misy fiasa tsy misy dikany.
closeBusHardware () Ampiasao ity fampiasa ity mba hialana amin'ny fitaovan'ny fieldbus anao.
virtoaly ResultVoid nlc::NanoLibAccessor::closeBusHardware (BusHardwareId const & busHwId)
Parameter busHwId Return ResultVoid
Manondro ny fiara fitateram-bahoaka hialana. Manamafy fa misy fiasa tsy misy dikany.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
26
8 Classes/functions reference
8.2 BusHardwareId
Ampiasao ity kilasy ity hamantarana fitaovana iray amin'ny fiara fitateram-bahoaka iray na hanavaka ny fitaovan'ny fiara fitateram-bahoaka samihafa. Ity kilasy ity (tsy misy setter miasa ho tsy miova manomboka amin'ny famoronana) dia mitazona fampahalalana momba ny:
Hardware (= anaran'ny adaptatera, adaptatera tambajotra sns.) Protocole ampiasaina (= Modbus TCP, CANopen sns.) Famaritana ny fitaovana fiara fitateram-bahoaka (= anarana seranan-tsambo, anarana MAC Friendly
adiresy sns.)
BusHardwareId () [1/3] Mpanamboatra izay mamorona zavatra ID hardware vaovao.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & name_)
Parameter busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
Karazana fitaovana (= ZK-USB-CAN-1 sns.). Protocol serasera bus (= CANopen sns.). Ny famaritana ny fitaovana iray (= COM3 sns.). Ny famaritana fanampiny amin'ny fitaovana (milaza, fampahalalana momba ny toerana misy USB). Anarana namana (= AdapterName (Port) sns. ).
BusHardwareId () [2/3] Mpanamboatra izay mamorona zavatra ID hardware vaovao amin'ny fiara fitateram-bahoaka, miaraka amin'ny safidy ho an'ny fanamafisam-peo fanampiny.
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & extraHardwareSpecifier_, std::string const & name_)
Parameter busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
Karazana fitaovana (= ZK-USB-CAN-1 sns.). Protocol serasera bus (= CANopen sns.). Ny famaritana ny fitaovana iray (= COM3 sns.). Ny famaritana fanampiny amin'ny fitaovana (milaza, fampahalalana momba ny toerana misy USB). Anarana namana (= AdapterName (Port) sns. ).
BusHardwareId () [3/3] Mpanamboatra izay mandika busHardwareId efa misy.
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
Parameter busHardwareId
Omeo anarana ny ID fitaovan'ny fiara fitateram-bahoaka hanaovana kopia.
mitovy () Mampitaha ID fitaovana fiara fitateram-bahoaka vaovao amin'ny efa misy.
bool nlc::BusHardwareId::equals (BusHardwareId const & other) const
Parameter hafa Miverina marina
Zavatra iray hafa mitovy kilasy. Raha samy mitovy amin'ny soatoavina rehetra.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
27
8 Classes/functions reference
DISO
Raha tsy mitovy ny soatoavina.
getBusHardware () Mamaky ny tady fitaovan'ny fiara fitateram-bahoaka.
std::string nlc::BusHardwareId::getBusHardware () const
Mamerina tady
getHardwareSpecifier () Mamaky ny tadin'ny fitaovan'ny fiara fitateram-bahoaka (= anaran'ny tambajotra sns.).
std::string nlc::BusHardwareId::getHardwareSpecifier () const
Mamerina tady
getExtraHardwareSpecifier () Mamaky ny tadin'ny fitaovan'ny fiara fitateram-bahoaka fanampiny (= adiresy MAC sns.).
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () const
Mamerina tady
getName () Mamaky ny anaran'ny fitaovan'ny fiara fitateram-bahoaka.
std::string nlc::BusHardwareId::getName () const
Mamerina tady
getProtocol () Mamaky ny tadin'ny protocol bus.
std::string nlc::BusHardwareId::getProtocol () const
Mamerina tady
toString () Mamerina ny ID hardware bus ho tady.
std::string nlc::BusHardwareId::toString () const
Mamerina tady
8.3 BusHardwareOptions
Tadiavo ao amin'ity kilasy ity, ao amin'ny lisitry ny tady manandanja, ny safidy rehetra ilaina hanokafana fitaovana fiara fitateram-bahoaka.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
28
8 Classes/functions reference
BusHardwareOptions () [1/2] Manangana zavatra safidin'ny fitaovana fiara fitateram-bahoaka vaovao.
nlc::BusHardwareOptions::BusHardwareOptions () Ampiasao ny fonction addOption () hanampiana tsiroaroa manan-danja.
BusHardwareOptions () [2/2] Manangana zavatra safidin'ny fitaovana fiara fitateram-bahoaka vaovao miaraka amin'ny sarintany manan-danja efa napetraka.
nlc::BusHardwareOptions::BusHardwareOptions (std::map const & safidy)
Safidy paramètre
Sarintany misy safidy ho an'ny fitaovan'ny fiara fitaterana.
addOption () Mamorona fanalahidy sy soatoavina fanampiny.
void nlc::BusHardwareOptions::addOption (std::string const & key, std::string const & value)
Sanda manan-danja parameter
Example: BAUD_RATE_OPTIONS_NAME, jereo bus_hw_options_ defaults
Example: BAUD_RATE_1000K, jereo bus_hw_options_defaults
mitovy () Mampitaha ny BusHardwareOptions amin'ny efa misy.
bool nlc::BusHardwareOptions::equals (BusHardwareOptions const & other) const
Parameter hafa Miverina marina
DISO
Zavatra iray hafa mitovy kilasy. Raha manana safidy mitovy daholo ny zavatra hafa. Raha manana fanalahidy na soatoavina hafa ilay zavatra hafa.
getOptions () Mamaky ny tsiroaroa manan-danja rehetra.
std::sarintany nlc::BusHardwareOptions::getOptions () const
Mamerina sari-tany tady
toString () Mamerina ny fanalahidy / soatoavina rehetra ho tady.
std::string nlc::BusHardwareId::toString () const
Mamerina tady
8.4 BusHwOptionsDefault
Ity kilasy safidy fanamafisam-peo default ity dia manana ireto toetra ampahibemaso manaraka ireto:
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
29
8 Classes/functions reference
const CanBus const Serial const RESTfulBus const EtherCATBus
canBus = CanBus () serial = Serial () restfulBus = RESTfulBus() ethercatBus = EtherCATBus()
8.5 CanBaudRate
Rafitra misy baudrates bisy CAN amin'ireto toetran'ny vahoaka ireto:
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string
BAUD_RATE_1000K = “1000k” BAUD_RATE_800K = “800k” BAUD_RATE_500K = “500k” BAUD_RATE_250K = “250k” BAUD_RATE_125K = “125k” BAUD_RATE_100K” = “100_50K BAUD_RATE_50K” = “20_20K” E_10K = “10k” BAUD_RATE_5K = “5k” BAUD_RATE_XNUMXK = “XNUMXk”
8.6 CanBus
Kilasy safidy fanamafisam-peo default miaraka amin'ireto toetra ampahibemaso manaraka ireto:
const std::string const CanBaudRate const Ixxat
BAUD_RATE_OPTIONS_NAME = "afaka adaptatera baud tahan'ny" baudRate = AfakaBaudRate () ixxat = Ixxat ()
8.7 CanOpenNmtService
Ho an'ny serivisy NMT, ity rafitra ity dia mirakitra ny CANopen NMT states ho soatoavin'ny tady amin'ireto toetram-bahoaka manaraka ireto:
const std::string const std::string const std::string const std::string const std::string
START = “START” STOP = “STOP” PRE_OPERATIONAL = “PRE_OPERATIONAL” RESET = “RESET” RESET_COMMUNICATION = “RESET_COMMUNICATION”
8.8 CanOpenNmtState
Ity rafitra ity dia misy ny CANopen NMT states ho soatoavin'ny tady amin'ireto toetran'ny daholobe manaraka ireto:
const std::string const std::string const std::string const std::string const std::string
MITONDRA = “NAHATONGA” ALOHA_OPERATIONAL = “MIASA_OPERATIONAL” ASA = “OPERATIONAL” FANOMEZANA = “INITIALIZATION” TSY FANTATRA = “TSY FANTATRA”
8.9 EtherCATBus struct
Ity rafitra ity dia misy ny safidy fanamafisana ny fifandraisana EtherCAT amin'ireto toetran'ny daholobe manaraka ireto:
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
30
8 Classes/functions reference
const std :: string NETWORK_FIRMWARE_STATE_OP- Ny tambazotran'ny tambajotra dia raisina ho toy ny maody firmware. azo ekena
TION_NAME = “Fanjakana Firmware Network”
sanda (default = PRE_OPERATIONAL):
EtherCATState::PRE_OPERATIONAL EtherCATState::SAFE_OPERATIONAL EtherCATState::OPERATIONAL
const std ::string DEFAULT_NETWORK_FIRMWARE_ STATE = "PRE_OPERATIONAL"
const std :: tady EXCLUSIVE_LOCK_TIMEOUT_OP- Tany amin'ny milisegondra hahazoana hidy manokana
TION_NAME = “Fotoan'ny hidin-trano iombonana”
ny tambajotra (default = 500 ms).
const unsigned int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = “500”
const std :: tady SHARED_LOCK_TIMEOUT_OPTION_ Fotoana ao anatin'ny milisegondra hahazoana hidin-trano iombonana
NAME = “Fotoan'ny hidin-trano iombonana”
ny tambajotra (default = 250 ms).
const unsigned int DEFAULT_SHARED_LOCK_TIMEOUT = “250”
const std :: tady READ_TIMEOUT_OPTION_NAME = Ny fe-potoana ao anatin'ny milisegondra ho an'ny asa famakiana (default
“Famakiana fotoana”
= 700 ms).
const unsigned int DEFAULT_READ_TIMEOUT = “700”
const std :: tady WRITE_TIMEOUT_OPTION_NAME = Fotoana ao anatin'ny milisegondra ho an'ny asa fanoratana (default
“Manoratra fotoana voafetra”
= 200 ms).
const unsigned int DEFAULT_WRITE_TIMEOUT = “200”
const std :: tady READ_WRITE_ATTEMPTS_OPTION_ Andrana mamaky na manoratra ambony indrindra (tsy aotra soatoavina
NAME = "Ezaka mamaky / manoratra"
ihany; default = 5).
const unsigned int DEFAULT_READ_WRITE_ATTEMPTS = “5”
const std ::string CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME = “Hanova ny ezaky ny fanjakana tambajotra”
Isan'ny andrana manova ny toetry ny tambajotra (tsy aotra ihany; default = 10).
const unsigned int DEFAULT_CHANGE_NETWORK_ STATE_ATTEMPTS = “10”
const std :: string PDO_IO_ENABLED_OPTION_NAME Mamela na manakana ny fanodinana PDO ho an'ny in- /
= "PDO IO Enabled"
outputs (“Marina” na “Diso” ihany; default = “Marina”).
const std::string DEFAULT_PDO_IO_ENABLED = "Marina"
8.10 EtherCATState struct
Ity rafitra ity dia ahitana ny andevo / tambajotra EtherCAT ho sanda soatoavina amin'ireto toetran'ny daholobe manaraka ireto. Fanamarihana: PRE_OPERATIONAL ny toerana misy ny herinaratra; NanoLib dia tsy afaka manome fanjakana "OPERATIONAL" azo itokisana amin'ny rafitra fiasa tsy amin'ny fotoana tena izy:
const std::string const std::string const std::string const std::string const std::string const std::string
TSY MISY = “TSY MISY” INIT = “INIT” PRE_OPERATIONAL = “PRE_OPERATIONAL” BOOT = “BOOT” SAFE_OPERATIONAL = “SAFE_OPERATIONAL” OPERATIONAL = “OPERATIONAL”
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
31
8 Classes/functions reference
8.11 Ixxat
Ity struct ity dia mitazona ny fampahalalana rehetra momba ny Ixxat usb-to-can amin'ireto toetran'ny besinimaro manaraka ireto:
const std::string
ADAPTER_BUS_NUMBER_OPTIONS_NAME = “ixxat adapter bus number”
const IxxatAdapterBusNumber adapterBusNumber = IxxatAdapterBusNumber ()
8.12 IxxatAdapterBusNumber
Ity rafitra ity dia mitazona ny laharan'ny fiara fitateram-bahoaka ho an'ny Ixxat usb-to-can amin'ireto toetran'ny besinimaro manaraka ireto:
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”
Tampon'ny 8.13
Ity rafitra ity dia mitazona ny fampahalalana rehetra momba ny Peak usb-to-can amin'ireto toetran'ny daholobe manaraka ireto:
const std::string
ADAPTER_BUS_NUMBER_OPTIONS_NAME = "Laharana fiara fitateram-bahoaka tampon'isa"
const PeakAdapterBusNumber adapterBusNumber = PeakAdapterBusNumber ()
8.14 PeakAdapterBusNumber
Ity rafitra ity dia mitazona ny laharan'ny fiara fitateram-bahoaka ho an'ny Peak usb-to-can amin'ireto toetran'ny besinimaro manaraka ireto:
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 const::string const std::string const std::string
BUS_NUMBER_1_DEFAULT = std::to_string (PCAN_USBBUS1) BUS_NUMBER_2 = std::to_string (PCAN_USBBUS2) BUS_NUMBER_3 = std::to_string (PCAN_USBBUS3) BUS_NUMBER_4 = std::to_string (PCAN_USBBUS4) (PCAN_USBBUS5) BUS_NUMBER_5 = std::to_string (PCAN_USBBUS6) BUS_NUMBER_6 = std::to_string (PCAN_USBBUS7) BUS_NUMBER_7 = std::to_string (PCAN_USBBUS8) BUS_NUMBER_8 = std::to_BBUS (9PCAN_USBBUS9) std::to_string (PCAN_USBBUS10) BUS_NUMBER_10 = std::to_string (PCAN_USBBUS11) BUS_NUMBER_11 = std::to_string (PCAN_USBBUS12) BUS_NUMBER_12 = std::to_string (PCAN_USBBUS13) = 13. (PCAN_USBBUS14) BUS_NUMBER_14 = std::to_string (PCAN_USBBUS15) BUS_NUMBER_15 = std::to_string (PCAN_USBBUS16)
8.15 Fitantanana fitaovana
Ity kilasy ity dia maneho tantana hifehezana fitaovana iray amin'ny fiara fitateram-bahoaka ary manana ireto andraikitry ny vahoaka manaraka ireto.
DeviceHandle () DeviceHandle (uint32_t handle)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
32
8 Classes/functions reference
mitovy () Mampitaha ny tenany amin'ny fitantanam-pitaovana nomena.
bool mitovy (DeviceHandle const hafa) const (uint32_t handle)
toString () Mamerina fanehoana tady amin'ny fitantanam-pitaovana.
std::string toString () const
get () Mamerina ny fitantanam-pitaovana.
uint32_t mahazo () const
8.16 DeviceId
Ampiasao ity kilasy ity (tsy azo ovaina manomboka amin'ny famoronana) hamantarana sy hanavahana ireo fitaovana ao anaty fiara fitateram-bahoaka:
Famantarana adapter hardware
Mpanondro fitaovana
Description
Miankina amin'ny fiara fitateram-bahoaka ny dikan'ny sandan'ny ID/famaritana fitaovana. Ho an'ny exampNy bisy CAN dia mety hampiasa ny ID integer.
DeviceId () [1/3] Manangana zavatra ID fitaovana vaovao.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId_, unsigned int deviceId_, std::string const & description_)
Parameter busHardwareId_ deviceId_ description_
Mpanondro ny bisy. An index; iharan'ny fiara fitateram-bahoaka (= CANopen node ID sns.). Famaritana (mety ho foana); iharan'ny bus.
DeviceId () [2/3] Manangana zavatra ID fitaovana vaovao miaraka amin'ny safidy ID miitatra.
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId, unsigned int deviceId_, std::string const & description_ std::vector const & extraId_, std :: string const & extraStringId_)
Parameter busHardwareId_ deviceId_ description_ extraId_ extraStringId_
Mpanondro ny bisy. An index; iharan'ny fiara fitateram-bahoaka (= CANopen node ID sns.). Famaritana (mety ho foana); iharan'ny bus. ID fanampiny (mety ho foana); ny dikany dia miankina amin'ny bus. ID tady fanampiny (mety ho foana); ny dikany dia miankina amin'ny bus.
DeviceId () [3/3] Manamboatra dika mitovy amin'ny zavatra ID fitaovana.
nlc::DeviceId::DeviceId (DeviceId const &)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
33
8 Classes/functions reference
Parameter deviceId_
ID fitaovana handikana.
mitovy () Mampitaha vaovao amin'ny zavatra efa misy.
bool nlc::DeviceId::equals (DeviceId const & other) const
Miverina boolean
getBusHardwareId () Mamaky ny ID hardware bus.
BusHardwareId nlc::DeviceId::getBusHardwareId () const
Mamerina BusHardwareId
getDescription () Mamaky ny famaritana ny fitaovana (mety tsy ampiasaina).
std::string nlc::DeviceId::getDescription () const
Mamerina tady
getDeviceId () Mamaky ny ID fitaovana (mety tsy ampiasaina).
unsigned int nlc::DeviceId::getDeviceId () const
Miverina tsy misy sonia int
toString () Mamerina ny zavatra ho tady.
std::string nlc::DeviceId::toString () const
Mamerina tady
getExtraId () Mamaky ny ID fanampiny an'ny fitaovana (mety tsy ampiasaina).
const std::vector &getExtraId () const
Miverina vector
Vector amin'ny ID fanampiny fanampiny (mety ho foana); ny dikany dia miankina amin'ny bus.
getExtraStringId () Mamaky ny ID tady fanampiny an'ny fitaovana (mety tsy ampiasaina).
std::string getExtraStringId () const
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
34
8 Classes/functions reference
Mamerina tady
Ny ID tady fanampiny (mety ho foana); ny dikany dia miankina amin'ny bus.
8.17 LogLevelConverter
Ity kilasy ity dia mamerina ny haavon'ny dianao ho tady. static std::string toString (nlc::LogLevel logLevel)
8.18 LogModuleConverter
Ity kilasy ity dia mamerina ny log modulesetLoggingLevel () manokana ho an'ny tranombokinao ho tady.
static std::string
toString (nlc::LogModule logModule)
static std::string toString (nlc::LogModule logModule)
8.19 ObjectDictionary
Ity kilasy ity dia maneho rakibolana iray an'ny mpanara-maso iray ary manana ireto fiasa manaraka ireto ho an'ny mpikambana: getDeviceHandle ()
virtoaly ResultDeviceHandle getDeviceHandle () const Miverina ResultDeviceHandle
getObject () virtoaly ResultObjectSubEntry getObject (OdIndex const odIndex) mamerina ResultObjectSubEntry
getObjectEntry () virtoaly ResultObjectEntry getObjectEntry (uint16_t index)
Mamerina ResultObjectEntry
Mampahafantatra ny toetran'ny zavatra iray.
getXmlFileAnarana () virtoaly ResultString getXmlFileAnarana () const
Mamerina ResultString
Mamerina ny XML file anarana toy ny tady.
readNumber () virtoaly ResultInt readNumber (OdIndex const odIndex) Mamerina ResultInt
readNumberArray () virtual ResultArrayInt readNumberArray (uint16_t const index)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
35
8 Classes/functions reference
Mamerina ResultArrayInt readString ()
virtoaly ResultString readString (OdIndex const odIndex) Mamerina ResultString readBytes () virtoaly ResultArrayByte readBytes (OdIndex const odIndex) Mamerina ResultArrayByte writeNumber () virtoaly ResultVoid writeNumber (OdIndex const odIndex) writeBytes () virtoaly ResultVoid writeBytes (OdIndex const OdIndex, std ::vector
const & data) Mamerina rohy mifandraika amin'ny ResultVoid OdIndex
8.20 ObjectEntry
Ity kilasy ity dia maneho ny fidiran'ny zavatra ao amin'ny rakibolana objet, manana ny toetra voaaro static sy ny asan'ny mpikambana ho an'ny daholobe:
static nlc::ObjectSubEntry invalidObject
getName () Mamaky ny anaran'ilay zavatra ho tady.
virtual std::string getName () const
getPrivate () Manamarina raha mitokana ilay zavatra.
virtoaly bool getPrivate () const
getIndex () Mamaky ny adiresin'ny index Object.
virtoaly uint16_t getIndex () const
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
36
8 Classes/functions reference
getDataType () Mamaky ny karazana angona an'ilay zavatra.
virtoaly nlc::ObjectEntryDataType getDataType () const
getObjectCode () Mamaky ny code object:
Null Deftype Defstruct Var Array Record
0x00 0x05 0x06 0x07 0x08 0x09
virtoaly nlc::ObjectCode getObjectCode () const
getObjectSaveable () Manamarina raha azo tehirizina ilay zavatra ary ny sokajy (jereo ny boky torolàlana momba ny vokatra raha mila fanazavana fanampiny): APPLICATION, COMMUNICATION, DRIVE, MISC_CONFIG, MODBUS_RTU, NO, TUNING, CUSTOMER, ETHERNET, CANOPEN, VERIFY1020, UNKNOWN_SAVEABLE_TYPE
virtoaly nlc::ObjectSaveable getObjectSaveable () const
getMaxSubIndex () Mamaky ny isan'ny subindices tohanan'ity zavatra ity.
virtoaly uint8_t getMaxSubIndex () const
getSubEntry () virtoaly nlc::ObjectSubEntry & getSubEntry (uint8_t subIndex)
Jereo koa ny ObjectSubEntry.
8.21 ObjectSubEntry
Ity kilasy ity dia maneho ny sub-entry (subindex) amin'ny rakibolana zavatra ary manana ireto asa manaraka ireto ho an'ny mpikambana:
getName () Mamaky ny anaran'ilay zavatra ho tady.
virtual std::string getName () const
getSubIndex () Mamaky ny adiresin'ny subindex.
virtoaly uint8_t getSubIndex () const
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
37
8 Classes/functions reference
getDataType () Mamaky ny karazana angona an'ilay zavatra.
virtoaly nlc::ObjectEntryDataType getDataType () const
getSdoAccess () Manamarina raha azo idirana amin'ny SDO ny subindex:
Read Only
1
WriteOnly
2
ReadWrite
3
NoAccess
0
virtoaly nlc::ObjectSdoAccessAttribute getSdoAccess () const
getPdoAccess () Manamarina raha azo idirana / azo sari-tany amin'ny alalan'ny PDO ny subindex:
Tx
1
Rx
2
TxRx
3
tsy misy
0
virtoaly nlc::ObjectPdoAccessAttribute getPdoAccess () const
getBitLength () Manamarina ny halavan'ny subindex.
virtoaly uint32_t getBitLength () const
getDefaultValueAsNumeric () Mamaky ny tombam-bidin'ny subindex ho an'ny karazana angona nomerika.
virtual ResultInt getDefaultValueAsNumeric (std :: string const & key) const
getDefaultValueAsString () Mamaky ny sanda default amin'ny subindex ho an'ny karazana angona tady.
virtual ResultString getDefaultValueAsString (std :: string const & key) const
getDefaultValues () Mamaky ny soatoavina default amin'ny subindex.
virtoaly std::map getDefaultValues () const
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
38
8 Classes/functions reference
readNumber () Mamaky ny sanda marina amin'ny subindex.
virtoaly ResultInt readNumber () const
readString () Mamaky ny tady tena sandan'ny subindex.
virtual ResultString readString () const
readBytes () Mamaky ny tena sandan'ny subindex amin'ny bytes.
virtoaly ResultArrayByte readBytes () const
writeNumber () Manoratra sanda isa ao amin'ny subindex.
virtoaly ResultVoid writeNumber (const int64_t value) const
writeBytes () Manoratra sanda ao amin'ny subindex amin'ny bytes.
virtoaly ResultVoid writeBytes (std::vector const & data) const
8.22 OdIndex
Ampiasao ity kilasy ity (tsy azo ovaina manomboka amin'ny famoronana) mba hamehezana sy hitadiavana indices / sub-indices. Ny OD an'ny fitaovana iray dia manana andalana 65535 (0xFFFF) sy tsanganana 255 (0xFF); misy banga eo anelanelan'ny andalana tsy miato. Jereo ny fenitra CANopen sy ny boky torolalana momba ny vokatrao raha mila fanazavana fanampiny.
OdIndex () Manangana zavatra OdIndex vaovao.
nlc::OdIndex::OdIndex (fanondroana uint16_t, subIndex uint8_t)
Subindex fanondroan'ny paramètres
Avy amin'ny 0 ka hatramin'ny 65535 (0xFFFF) incl. Avy amin'ny 0 ka hatramin'ny 255 (0xFF) incl.
getIndex () Mamaky ny index (avy amin'ny 0x0000 ka hatramin'ny 0xFFFF).
uint16_t nlc::OdIndex::getIndex () const
Miverina uint16_t
getSubindex () Mamaky ny sub-index (avy amin'ny 0x00 ka hatramin'ny 0xFF)
uint8_t nlc::OdIndex::getSubIndex () const
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
39
8 Classes/functions reference
Miverina uint8_t
toString () Mamerina ny index sy ny subindex ho tady. Ny string default 0xIIII: 0xSS dia toy izao manaraka izao:
I = index avy amin'ny 0x0000 mankany 0xFFFF
S = sub-index avy amin'ny 0x00 mankany 0xFF
std::string nlc::OdIndex::toString () const
Miverina 0xIIII:0xSS
Fanehoana tady mahazatra
8.23 OdLibrary
Ampiasao ity interface interface ity mba hamoronana ohatra amin'ny kilasy ObjectDictionary avy amin'ny XML. Amin'ny alàlan'ny assignObjectDictionary, azonao atao ny mamatotra ny tranga tsirairay amin'ny fitaovana manokana noho ny famantarana tokana noforonina. Ny ohatra ObjectDictionary noforonina dia voatahiry ao amin'ny zavatra OdLibrary mba hidirana amin'ny index. Ny kilasy ODLibrary dia mitondra entana ObjectDictionary avy amin'ny file na array, mitahiry azy ireo, ary manana ireto asa manaraka ireto ho an'ny mpikambana:
getObjectDictionaryCount () virtoaly uint32_t getObjectDictionaryCount () const
getObjectDictionary () virtoaly ResultObjectDictionary getObjectDictionary (uint32_t odIndex)
Mamerina ResultObjectDictionary
addObjectDictionaryFromFile ()
virtoaly ResultObjectDictionary addObjectDictionaryFromFile (std:: string const & absoluteXmlFilelalana)
Mamerina ResultObjectDictionary
addObjectDictionary ()
virtoaly ResultObjectDictionary addObjectDictionary (std ::vector const & odXmlData, const std::string &xmlFileLalana = std::string ())
Mamerina ResultObjectDictionary
8.24 OdTypesHelper
Ho fanampin'ireto asa ataon'ny mpikambana ho an'ny daholobe manaraka ireto, ity kilasy ity dia misy karazana angona manokana. Fanamarihana: Raha hijerena ny karazana angon-drakitrao manokana dia tadiavo ny kilasy enum ObjectEntryDataType ao amin'ny od_types.hpp.
uintToObjectCode () Mamadika integer tsy misy sonia ho kaody zavatra:
Null Deftype
0x00 0x05
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
40
8 Classes/functions reference
Defstruct Var Array Record
0x06 0x07 0x08 0x09
static ObjectCode uintToObjectCode (tsy misy sonia int objectCode)
isNumericDataType () Mampahafantatra raha isa ny karazana data na tsia.
Ny bool static diaNumericDataType (ObjectEntryDataType dataType)
isDefstructIndex () Mampahafantatra raha tondro firafitry ny famaritana ny zavatra iray na tsia.
static bool isDefstructIndex (uint16_t typeNum)
isDeftypeIndex () Mampandre raha fanondro karazana famaritana ny zavatra iray na tsia.
Ny bool static diaDeftypeIndex (uint16_t typeNum)
isComplexDataType () Mampahafantatra raha sarotra na tsia ny karazana data.
static bool diaComplexDataType (ObjectEntryDataType dataType)
uintToObjectEntryDataType () Mamadika isa tsy misy sonia ho karazana angona OD.
sstatic ObjectEntryDataType uintToObjectEntryDataType (uint16_t objectDataType)
objectEntryDataTypeToString () Mamadika karazana angona OD ho tady.
static std::string objectEntryDataTypeToString (ObjectEntryDataType odDataType)
stringToObjectEntryDatatype () Manova tady ho karazana data OD raha azo atao. Raha tsy izany dia miverina UNKNOWN_DATATYPE.
static ObjectEntryDataType stringToObjectEntryDatatype (std :: string dataTypeString)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
41
8 Classes/functions reference
objectEntryDataTypeBitLength () Mampahafantatra ny halavan'ny bitin'ny karazana angona fampidirana zavatra.
static uint32_t objectEntryDataTypeBitLength (ObjectEntryDataType const & dataType)
8.25 RESTfulBus struct
Ity struct ity dia misy ny safidy fanamafisana ny fifandraisana ho an'ny interface RESTful (amin'ny Ethernet). Ahitana ireto toetram-bahoaka manaraka ireto:
const std :: string const tsy misy sonia lava const std :: string const tsy misy sonia lava const std :: string const tsy misy sonia lava
CONNECT_TIMEOUT_OPTION_NAME = “Fotoam-potoanan’ny fifandraisana mandry fahalemana” DEFAULT_CONNECT_TIMEOUT = 200 REQUEST_TIMEOUT_OPTION_NAME = “Fotoan’ny fangataham-pitsaharana” DEFAULT_REQUEST_TIMEOUT = 200 RESPONSE_TIMEOUT_OPTION_NAME = “Fotoan’ny famaliana mitsahatra” =_RESPONSEFAULT = 750TIME.
8.26 ProfinetDCP
Amin'ny Linux, mila fahaiza-manao CAP_NET_ADMIN sy CAP_NET_RAW ny fampiharana fiantsoana. Mba hahafahan'ny: sudo setcap 'cap_net_admin,cap_net_raw+eip' ./executable. Ao amin'ny Windows, ny interface ProfinetDCP dia mampiasa WinPcap (voasedra amin'ny version 4.1.3) na Npcap (voasedra amin'ny version 1.60 sy 1.30). Izy io dia mikaroka ny tranomboky wpcap.dll feno dynamique amin'ny filaharana manaraka (Fanamarihana: tsy misy fanohanana Win10Pcap ankehitriny):
1. Nanolib.dll directory 2. Windows system directory SystemRoot%System32 3. Npcap installation directory SystemRoot%System32Npcap 4. Environmental path
Ity kilasy ity dia maneho ny interface Profinet DCP ary manana ireto asa manaraka ireto ho an'ny mpikambana:
getScanTimeout () Mampandre momba ny fotoana fiatoan'ny fitaovana (default = 2000 ms).
virtoaly uint32_t nlc::ProfinetDCP::getScanTimeout () const
setScanTimeout () Mametraka fe-potoana fitarafana fitaovana (default = 2000 ms).
virtoaly void nlc::setScanTimeout (uint32_t timeoutMsec)
getResponseTimeout () Mampahafantatra amin'ny fotoana fiatoan'ny famalian'ny fitaovana ho an'ny fampandehanan-drafitra, famerenana, ary fiketsehana (default = 1000 ms).
virtoaly uint32_t nlc::ProfinetDCP::getResponseTimeout () const
setResponseTimeout () Mampahafantatra amin'ny fotoana fiafaran'ny famalian'ny fitaovana ho an'ny fampandehanana, famerenam-bola ary mikitroka (default = 1000 ms).
virtoaly void nlc::ProfinetDCP::setResponseTimeout (uint32_t timeoutMsec)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
42
8 Classes/functions reference
isServiceAvailable ()
Ampiasao ity fiasa ity hijerena ny fisian'ny serivisy Profinet DCP.
Valiny / azo ampiasaina amin'ny tambajotra Windows: WinPcap / Npcap availability Linux: CAP_NET_ADMIN / CAP_NET_RAW fahaiza-manao
virtoaly ResultVoid nlc::ProfinetDCP::isServiceAvailable (const BusHardwareId & busHardwareId)
Parameter BusHardwareId Miverina marina
DISO
ID Hardware an'ny serivisy Profinet DCP hanamarina. Misy ny serivisy. Tsy misy serivisy.
scanProfinetDevices () Ampiasao ity fampiasa ity hijerena ny fiara fitateram-bahoaka mba hahitana ny fisian'ny fitaovana Profinet.
virtoaly ResultProfinetDevices scanProfinetDevices (const BusHardwareId & busHardwareId)
Parameter BusHardwareId dia mamerina ny ResultProfinetDevices
Mamaritra ny fieldbus tsirairay hosokafana. Misokatra ny fitaovana.
setupProfinetDevice () Mametraka ireto fitaovana manaraka ireto:
Anaran'ny fitaovana
adiresy IP
Saron-tambajotra
Vavahady default
virtoaly ResultVoid nlc::setupProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice struct & profinetDevice, bool savePermanent)
resetProfinetDevice () Atsaharo ny fitaovana ary avereno amin'ny toeran'ny orinasa.
virtoaly ResultVoid nlc::resetProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)
blinkProfinetDevice () Mandidy ny fitaovana Profinet hanomboka mamiratra ny LED Profinet.
virtoaly ResultVoid nlc::blinkProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice &profinetDevice)
validateProfinetDeviceIp () Ampiasao ity fampiasa ity hijerena ny adiresy IP an'ny fitaovana.
Virtual ResultVoid validateProfinetDeviceIp (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)
Parameter BusHardwareId ProfinetDevice
Manondro ny ID fitaovana hojerena. Manondro ny fitaovana Profinet hanamarina.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
43
8 Classes/functions reference
Mamerina ResultVoid
8.27 ProfinetDevice struct
Ny angon-drakitra fitaovana Profinet dia manana ireto toetra ampahibemaso manaraka ireto:
std::string std::string std::array< uint8_t, 6 > uint32_t uint32_t uint32_t
DeviceName deviceVendor macAddress ipAddress netMask defaultGateway
Ny adiresy MAC dia omena amin'ny endrika array amin'ny macAddress = {xx, xx, xx, xx, xx, xx}; fa ny adiresy IP, ny saron-tambajotra ary ny vavahady dia adika ho isa hex endian lehibe, toy ny:
Adiresy IP: 192.168.0.2 Saron-tambajotra: 255.255.0.0 Vavahady: 192.168.0.1
0xC0A80002 0xFFFF0000 0xC0A80001
8.28 Kilasy vokatra
Ampiasao ny sanda miverina "tsy voatery" amin'ireto kilasy ireto mba hijerena raha nahomby ny antso an-tariby iray na tsia, ary tadiavo koa ny antony tsy nahomby. Amin'ny fahombiazana, ny hasError () function dia miverina diso. Amin'ny getResult (), azonao atao ny mamaky ny sandan'ny vokatra isaky ny karazana (ResultInt sns.). Raha toa ka tsy nahomby ny antso dia vakianao ny antony amin'ny getError ().
Toetra voaaro
string NlcErrorCode uint32_t
errorString errorCode exErrorCode
Ary koa, ity kilasy ity dia manana ireto asan'ny mpikambana ho an'ny daholobe manaraka ireto:
hasError () Mamaky ny fahombiazan'ny antso iray.
bool nlc::Result::hasError () const
Miverina
tena diso
Antso tsy nahomby. Ampiasao getError () hamakiana ny sandany. Antso mahomby. Ampiasao getResult () hamakiana ny sandany.
getError () Mamaky ny antony raha tsy mahomby ny antso.
const std::string nlc::Result::getError () const
Mamerina tady const
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
44
8 Classes/functions reference
vokatra () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valiny marina:
Vokatra (std :: string const & errorString_)
Vokatra (NlcErrorCode const & errCode, std :: string const & errorString_)
Vokatra (NlcErrorCode const & errCode, const uint32_t exErrCode, std :: string const & errorString_)
Vokany (Result const & result)
getErrorCode () Vakio ny NlcErrorCode.
NlcErrorCode getErrorCode () const
getExErrorCode () uint32_t getExErrorCode () const
8.28.1 ResultVoid
NanoLib dia mandefa anao ohatra amin'ity kilasy ity raha toa ka miverina foana ny fiasa. Ny kilasy dia mandova ny asan'ny besinimaro sy ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
ResultVoid () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valiny marina:
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 (Result const & result)
8.28.2 ResultInt
NanoLib dia mandefa ohatra amin'ity kilasy ity raha mamerina integer ny asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamerina ny valin'ny integer raha nahomby ny antso iray.
int64_t getResult () const
Miverina int64_t
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
45
8 Classes/functions reference
ResultInt () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny integer marina:
ResultInt (int64_t vokatra_)
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 (Result const & result)
8.28.3 ResultString
NanoLib dia mandefa ohatra amin'ity kilasy ity raha mamerina tady ny asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny valin'ny tady raha nahomby ny antso.
const std::string nlc::ResultString::getResult () const
Mamerina tady const
ResultString () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny tady marina:
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 dia mandefa anao ohatra amin'ity kilasy ity raha toa ka mamerina ny array byte ny fiasa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny vector byte raha nahomby ny antso.
const std::vector nlc::ResultArrayByte::getResult () const
Miverina const vector
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
46
8 Classes/functions reference
ResultArrayByte () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny array byte marina:
ResultArrayByte (std::vector const & valiny_)
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 (Result const & result)
8.28.5 ResultArrayInt
NanoLib dia mandefa ohatra iray amin'ity kilasy ity raha toa ka mamerina array integer ny fiasa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny vector integer raha nahomby ny antso iray.
const std::vector nlc::ResultArrayInt::getResult () const
Miverina const vector
ResultArrayInt () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny array integer marina:
ResultArrayInt (std::vector const & valiny_)
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 (Result const & result)
8.28.6 ResultBusHwIds
NanoLib dia mandefa ohatra amin'ity kilasy ity raha toa ka mamerina ny laharan'ny ID hardware ny asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny vector bus-hardware-ID raha nahomby ny antso iray.
const std::vector nlc::ResultBusHwIds::getResult () const
Parameter const vector
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
47
8 Classes/functions reference
ResultBusHwIds () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny bus-hardware-ID-array marina:
ResultBusHwIds (std::vector const & valiny_)
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 dia mandefa ohatra iray amin'ity kilasy ity raha mamerina ID fitaovana ilay asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny vector ID fitaovana raha nahomby ny antso.
DeviceId nlc::ResultDeviceId::getResult () const
Mamerina const vector
ResultDeviceId () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny ID fitaovana marina:
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 dia mandefa ohatra amin'ity kilasy ity raha toa ka mamerina fitaovana ID ny fitaovana. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamerina ny vector ID fitaovana raha nahomby ny antso iray.
DeviceId nlc::ResultDeviceIds::getResult () const
Mamerina const vector
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
48
8 Classes/functions reference
ResultDeviceIds () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny fitaovana-ID-array marina:
ResultDeviceIds (std::vector const & valiny_)
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 dia mandefa ohatra amin'ity kilasy ity raha mamerina ny sandan'ny fitantanam-pitaovana ilay asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny fitaovan'ny fitaovana raha nahomby ny antso.
DeviceHandle nlc::ResultDeviceHandle::getResult () const
Mamerina ny DeviceHandle
ResultDeviceHandle () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny fitantanam-pitaovana marina:
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 dia mandefa ohatra amin'ity kilasy ity raha mamerina ny votoatin'ny rakibolana iray ny asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny vector ID fitaovana raha nahomby ny antso.
const nlc::ObjectDictionary & nlc::ResultObjectDictionary::getResult () const
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
49
8 Classes/functions reference
Miverina
const vector
ResultObjectDictionary () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny rakibolana zavatra marina:
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 dia mandefa ohatra amin'ity kilasy ity raha mamerina fampahalalana momba ny fifandraisana amin'ny fitaovana. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny fitaovan'ny fitaovana raha nahomby ny antso.
DeviceConnectionStateInfo nlc::ResultConnectionState::getResult () const
Mamerina ny DeviceConnectionStateInfo Connected / Disconnected / ConnectedBootloader
ResultConnectionState () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny toetry ny fifandraisana marina:
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 dia mandefa ohatra amin'ity kilasy ity raha toa ka mamerina zavatra iray ny asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
50
8 Classes/functions reference
getResult () Mamerina ny vector ID fitaovana raha nahomby ny antso iray.
nlc::ObjectEntry const& nlc::ResultObjectEntry::getResult () const
Miverina const ObjectEntry
ResultObjectEntry () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny fidirana zavatra marina:
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 (Result const & result)
8.28.13 ResultObjectSubEntry
NanoLib dia mandefa anao ohatra amin'ity kilasy ity raha toa ka mamerina zavatra sub-entry ny asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamerina ny vector ID fitaovana raha nahomby ny antso iray.
nlc::ObjectSubEntry const & nlc::ResultObjectSubEntry::getResult () const
Miverina const ObjectSubEntry
ResultObjectSubEntry () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny valin'ny sub-entry zavatra marina:
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 dia mandefa ohatra amin'ity kilasy ity raha mamerina fitaovana Profinet ny asa. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
51
8 Classes/functions reference
getResult () Mamaky ny vector fitaovana Profinet raha toa ka nahomby ny antso an-tariby.
const std::vector & getResult () const
ResultProfinetDevices () Manampy amin'ny famaritana ireo fitaovana Profinet marina ireto fiasa manaraka ireto.
ResultProfinetDevices (const std ::vector & profinetDevices)
ResultProfinetDevices (Const Result & result)
ResultProfinetDevices (const std :: string &errorText, NlcErrorCode errorCode = NlcErrorCode ::GeneralError, uint32_t extendedErrorCode = 0)
8.28.15 VokanyampleDataArray
NanoLib dia mandefa anao ohatra amin'ity kilasy ity raha miverina ny asa toy nyample data array. Ny kilasy dia mandova ny asan'ny daholobe / ny toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny angon-drakitra raha toa ka nahomby ny antso.
const std::vector <SampleData> & getResult () const
VOKATRAampleDataArray () Manampy amin'ny famaritana ireo fitaovana Profinet marina ireto fiasa manaraka ireto.
VOKATRAampleDataArray (const std ::vector <SampleData> & dataArray)
VOKATRAampleDataArray (const std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)
VOKATRAampleDataArray (const ResultSampleDataArray & hafa)
VOKATRAampleDataArray (Const Result & result)
8.28.16 VokanyamplerState
NanoLib dia mandefa anao ohatra amin'ity kilasy ity raha miverina ny asa toy nyampler state. Ity kilasy ity dia mandova ny asan'ny besinimaro / toetra voaaro avy amin'ny kilasy vokatra ary manana ireto asan'ny mpikambana manaraka ireto:
getResult () Mamaky ny sampler state vector raha toa ka nahomby ny antso an-tariby.
SamplerState getResult () const
Hiverina SamplerState>
Tsy voarindra / Voafefy / Vonona / Mihazakazaka / Vita / Tsy nahomby / Nofoanana
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
52
8 Classes/functions reference
VOKATRAamplerState () Ireto asa manaraka ireto dia manampy amin'ny famaritana ny tena sampfanjakana ler.
VOKATRAamplerState (const SamplerState)
VOKATRAamplerState (const std :: string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode ::GeneralError, const uint32_t
extendedErrorCode = 0)
VOKATRAamplerState (const ResultSamplerState & hafa)
VOKATRAamplerState (Const Result & result)
8.29 NlcErrorCode
Raha misy tsy mety dia mitatitra ny iray amin'ireo kaody diso voatanisa ato amin'ity fanisana ity ny kilasy valiny.
Kaody diso Success GeneralError BusUnavailable CommunicationError ProtocolError
ODDoesNotExist ODInvalidAccess ODTypeMismatch Operation Tapaka ny OperationNot Supported InvalidOperation
InvalidArguments Access denied ResourceNotFound ResourceUnavailable OutOfMemory TimeOutError
C: Sokajy D: Famaritana R: Antony C: Tsy misy. D: Tsy misy hadisoana. R: Vita soa aman-tsara ny fandidiana.
C: Tsy voafaritra. D: Fahadisoana tsy voafaritra. R: Tsy fahombiazana tsy mifanaraka amin'ny sokajy hafa.
C: Bus. D: Tsy misy fiara fitateram-bahoaka. R: Bus tsy misy, tapaka na kilema.
C: Fifandraisana. D: Tsy azo itokisana ny fifandraisana. R: Angona tsy nampoizina, CRC diso, lesoka na parity, sns.
C: Protocol. D: Fahadisoan'ny protocole. R: Valiny aorian'ny safidy protocol tsy tohanana, mitatitra ny protocol tsy tohanana ny fitaovana, misy hadisoana ao amin'ny protocole (milaza hoe, bit sync segment SDO), sns. bit sync segment), sns. R: Protocol tsy tohanana (safidy) na hadisoana amin'ny protocol (milaza hoe, bit sync segment SDO), sns.
C: rakibolana zavatra. D: adiresy OD tsy misy. R: Tsy misy adiresy toy izany ao amin'ny rakibolana zavatra.
C: rakibolana zavatra. D: Tsy mety ny fidirana amin'ny adiresy OD. R: Miezaha manoratra mamaky fotsiny, na mamaky avy amin'ny adiresy sora-tanana fotsiny.
C: rakibolana zavatra. D: Karazana tsy mifanentana. R: Sanda tsy niova ho karazana voafaritra, ohatra, amin'ny fikasana hitondra tady ho isa.
C: Fampiharana. D: Najanona ny dingana. R: Fomba tapaka amin'ny fangatahana fangatahana. Miverina ihany amin'ny fanelanelanana amin'ny alàlan'ny fampandehanana antso miverina, ohatra, avy amin'ny scan bus.
C: mahazatra. D: Ny dingana tsy tohanana. R: Tsy misy fanohanana fiara fitateram-bahoaka / fitaovana.
C: mahazatra. D: Diso ny fizotran'ny toe-javatra ankehitriny, na tsy mety amin'ny hevitra ankehitriny. R: Andrana mamerina mampifandray ireo fiara fitateram-bahoaka / fitaovana efa mifandray. Fikasana hanapaka amin'ireo efa tapaka. Andrana fandidiana bootloader amin'ny maody firmware na ny mifamadika amin'izany.
C: mahazatra. D: Tsy mety ny tohan-kevitra. R: Lojika na fehezanteny diso.
C: mahazatra. D: Nolavina ny fidirana. R: Tsy fahampian'ny zo na fahafahana hanao ny asa nangatahana.
C: mahazatra. D: Zavatra voafaritra tsy hita. R: fiara fitateram-bahoaka, protocol, fitaovana, adiresy OD amin'ny fitaovana, na file tsy hita.
C: mahazatra. D: Zavatra voafaritra tsy hita. R: sahirana, tsy misy, tapaka na kilema.
C: mahazatra. D: Tsy ampy ny fitadidiana. R: Kely loatra ny fitadidiana mba hikarakarana an'io baiko io.
C: mahazatra. D: Tapitra ny fotoana. R: Miverena rehefa tapitra ny fotoana fiatoana. Ny fe-potoana dia mety ho fotoana famalian'ny fitaovana, fotoana hahazoana fidirana loharanon-karena zaraina na manokana, na fotoana hanovana ny fiara fitateram-bahoaka/fitaovana ho amin'ny toerana mety.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
53
8 Classes/functions reference
8.30 NlcCallback
Ity kilasin'ny ray aman-dreny ho an'ny antso miverina ity dia manana ny asan'ny mpikambana ho an'ny daholobe: callback ()
virtoaly ResultVoid callback ()
Miverina
ResultVoid
8.31 NlcDataTransferCallback
Ampiasao ity kilasy callback ity ho an'ny famindrana angon-drakitra (fanavaozana firmware, fampiakarana NanoJ sns.). 1. Ho an'ny fampiakarana firmware: Farito ny “kilasy mpiara-miombon'antoka” manitatra ity iray ity miaraka amin'ny fomba fiantsoana mahazatra
fampiharana. 2. Ampiasao ny trangan'ny "co-class's" amin'ny antso NanoLibAccessor.uploadFirmware (). Ny kilasy lehibe dia manana ny asan'ny mpikambana ho an'ny daholobe:
callback () virtoaly ResultVoid callback (nlc::DataTransferInfo info, data int32_t)
Miverina
ResultVoid
8.32 NlcScanBusCallback
Ampiasao ity kilasin'ny callback ity ho an'ny scan bus. 1. Farito ny “kilasy mpiara-miombon'antoka” manitatra ity iray ity miaraka amin'ny fampiharana fomba fanao amin'ny antso miverina. 2. Ampiasao ny trangan'ny "co-class's" amin'ny antso NanoLibAccessor.scanDevices (). Ny kilasy fototra mihitsy no manana ny asan'ny mpikambana ho an'ny daholobe.
hiantso koa ()
virtoaly ResultVoid callback (nlc::BusScanInfo info, std::vector const & devicesFound, data int32_t)
Mamerina ResultVoid
8.33 NlcLoggingCallback
Ampiasao ity kilasin'ny callback ity amin'ny fandraketana ny antso miverina. 1. Farito ny kilasy iray izay manitatra ity kilasy ity miaraka amin'ny fampiharana fomba fanao antso an-tariby 2. Mampiasà fanondro amin'ny ohatra misy azy mba hametrahana antso an-tariby avy amin'ny NanoLibAccessor >
setLoggingCallback (…).
virtoaly void callback (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
Ampiasao ity kilasy ity hanamboarana, hanombohana ary hampitsahatra ny sampler, na mahazo sampnitarika angon-drakitra ary alao hoampny toetry ny ler na ny fahadisoana farany. Ny kilasy dia manana ireto asan'ny mambra manaraka ireto.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
54
8 Classes/functions reference
configure () Configures hoampler.
virtoaly ResultVoid nlc::SamplerInterface::configure (const DeviceHandle deviceHandle, const SamplerConfiguration & samplerConfiguration)
Paramètre [amin'ny] deviceHandle [amin'ny] samplerConfiguration
Mamerina ResultVoid
Mamaritra izay fitaovana hamboarina ny sampler ho. Manondro ny sandan'ny toetran'ny fanefena. Manamafy fa misy fiasa tsy misy dikany.
getData () Mahazo ny sampnitarika data.
Valiny virtoalyampleDataArray nlc::SamplerInterface::getData (const DeviceHandle deviceHandle)
Parameter [amin'ny] deviceHandle Returns ResultSampleDataArray
Mamaritra ny fitaovana handraisana ny angona.
Manatitra ny sampdata nitarika, izay mety ho array foana raha samplerNotify dia mavitrika amin'ny fanombohana.
getLastError () Mahazo toy nyampfahadisoana farany nataon'i ler.
virtoaly ResultVoid nlc::SamplerInterface::getLastError (const DeviceHandle deviceHandle)
Mamerina ResultVoid
Manamafy fa misy fiasa tsy misy dikany.
getState () Mahazo toy nyampstatut ler.
Valiny virtoalyamplerState nlc::SamplerInterface::getState (const DeviceHandle deviceHandle)
Return ResultSamplerState
Manatitra ny sampfanjakana ler.
manomboka () manomboka toy nyampler.
virtoaly ResultVoid nlc::SamplerInterface::manomboka (const DeviceHandle deviceHandle, SamplerNotify* samplerNotify, int64_t applicationData)
Paramètre [amin'ny] deviceHandle [amin'ny] SamplerNotify [amin'ny] applicationData
Mamerina ResultVoid
Mamaritra izay fitaovana hanombohana ny sampler ho.
Mamaritra izay fampahalalana tsy voatery hotaterina (mety ho nullptr).
Safidy: Mandrosoa angon-drakitra mifandraika amin'ny fampiharana (array 8-bit voafaritry ny mpampiasa amin'ny sanda / ID / index, na daty, tondroin'ny variable / function, sns) mankany samplerNotify.
Manamafy fa misy fiasa tsy misy dikany.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
55
8 Classes/functions reference
mijanona () Mijanona toy nyampler.
virtoaly ResultVoid nlc::SamplerInterface::stop (const DeviceHandle deviceHandle)
Parameter [amin'ny] deviceHandle dia mamerina ny ResultVoid
Mamaritra izay fitaovana hampijanonana ny sampler ho. Manamafy fa misy fiasa tsy misy dikany.
8.35 SamplerConfiguration struct
Ity struct ity dia misy ny data sampOptions configuration ler (static na tsia).
Toetram-bahoaka
std::vector trackedAddresses
Adiresy OD hatramin'ny 12 ho sampLED.
uint32_t
Malagasy Bible
Dikan'ny rafitra iray.
uint32_t
faharetanaMilliseconds
SampNy faharetan'ny ling in ms, avy amin'ny 1 ka hatramin'ny 65535
uint16_t
fe-potoanaMilliseconds
Sampfe-potoana ling in ms.
uint16_t
numberOfSampl'
Samples vola.
uint16_t
preTriggerNumberOfSampl'
Samples pre-trigger amount.
bool
mampiasaSoftwareImplementation
Mampiasà fampiharana rindrambaiko.
bool
mampiasaNewFWSamplerImplementation Mampiasà fampiharana FW ho an'ny fitaovana misy a
FW version v24xx na vao haingana.
SamplerMode
fomba
Normal, miverimberina na mitohy sampling
SamplerTriggerCondition triggerCondition
Atombohy ny fepetra miteraka: TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE_TOGGLE = 0x14 = TCxGREATER = 0x15 = TCxGREATER = 0x16 TC_LESS = 0x17 TC_LESS_OR_EQUAL = 0x18 TC_EQUAL = 0x19 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE = 0x1C, Odaluedex, triggerV
SamplerTrigger
SamplerTrigger
Trigger manomboka toy nyampler?
Toetram-bahoaka static
static constexpr size_t SAMPLER_CONFIGURATION_VERSION = 0x01000000 static constexpr size_t MAX_TRACKED_ADDRESSES = 12
8.36 SamplerNotify
Ampiasao ity kilasy ity mba hampavitrika ny sampler fampahafantarana rehefa manomboka toy nyampler. Ny kilasy dia manana ny asan'ny mpikambana ho an'ny daholobe.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
56
8 Classes/functions reference
mampahafantatra ()
Manatitra fidirana fampahafantarana.
void virtoaly nlc::SamplerNotify::notify (const ResultVoid & lastError, const SamplerState samplerState, const std::vector <SampleData> & sampleDatas, int64_t applicationData)
Parametera [amin'ny] lastError [in] samplerState
[in] sampleDatas [in] applicationData
Mitatitra ny fahadisoana farany nitranga nandritra ny sampling. Mitatitra ny sampNy sata eo amin'ny fotoana fampahafantarana: Tsy voarindra / Voafefy / Vonona / mihazakazaka / Vita / Tsy nahomby / Nofoanana. Mitatitra ny sampled-data array. Mitatitra angona manokana momba ny fampiharana.
8.37 SampleData struct
Ity struct ity dia misy ny sampnitarika data.
uin64_t iterationNumber
Manomboka amin'ny 0 ary mitombo amin'ny fomba miverimberina ihany.
std::vector<SampledValues> Ahitana ny array sampnitarika soatoavina.
8.38 SampledValue struct
Ity struct ity dia misy ny sampnitarika soatoavina.
in64_t sanda uin64_t CollectTimeMsec
Ahitana ny sandan'ny adiresy OD voara-maso.
Ahitana ny fotoana fanangonana amin'ny milisegondra, mifandraika amin'ny sample manomboka.
8.39 SamplerTrigger struct
Ity struct ity dia misy ny firafitry ny trigger an'ny sampler.
SamplerTriggerCondition fepetra
OdIndex uin32_t sanda
Ny fepetra miteraka: TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0x14 = TCx0GREATER = 15x0 = TC_GREATER 16x0 TC_LESS = 17x0 TC_LESS_OR_EQUAL = 18x0 TC_EQUAL = 19x0 TC_NOT_EQUAL = 1x0A TC_ONE_EDGE = 1x0B TC_MULTI_EDGE = 1xXNUMXC
OdIndex (adiresy) an'ny trigger.
Vidin'ny toe-javatra na isa bit (manomboka amin'ny aotra bit).
8.40 Serial struct
Tadiavo eto ny safidinao amin'ny fifandraisan-davitra sy ireto toetran'ny besinimaro manaraka ireto:
const std::string const SerialBaudRate
BAUD_RATE_OPTIONS_NAME = “serial baud rate” baudRate =SerialBaudRate struct
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
57
8 Classes/functions reference
const std::string const SerialParity
PARITY_OPTIONS_NAME = "parity série" parity = SerialParity struct
8.41 SerialBaudRate struct
Tadiavo eto ny tahan'ny baud seraseranao sy ireto toetran'ny daholobe manaraka ireto:
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_RATE56000 = “56000” BAUD_57600 = “57600_RATE_115200_115200 128000” BAUD_RATE_128000 = “256000” BAUD_RATE_256000 = “XNUMX” BAUD_RATE_XNUMX = “XNUMX”
8.42 SerialParity struct
Tadiavo eto ny safidinao parity serial sy ireto toetra ampahibemaso manaraka ireto:
const std::string const std::string const std::string const std::string const std::string
TSY MISY = "tsy misy" ODD = "hafahafa" EVEN = "even" MARK = "mark" SPACE = "space"
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
58
9 Fahazoan-dàlana
9 Fahazoan-dàlana
NanoLib API interface headers sy exampNy kaody loharano dia nahazo alalana avy amin'ny Nanotec Electronic GmbH & Co. KG eo ambanin'ny Creative Commons Attribution 3.0 Unported License (CC BY). Ny ampahany amin'ny tranomboky omena amin'ny endrika mimari-droa (fitehirizam-bokin'ny fifandraisana fototra sy fieldbus) dia nahazo alalana avy amin'ny Creative Commons AttributionNoDerivatives 4.0 International License (CC BY ND).
Creative Commons
Ity famintinana azo vakin'olona manaraka ity dia tsy hisolo ny (ireo) fahazoan-dàlana. Azonao atao ny mahita ny fahazoan-dàlana tsirairay ao amin'ny creativecommons.org ary mifandray eto ambany. Malalaka ianao amin'ny:
CC BY 3.0
Zarao: Jereo tsara. Mampifanaraka: Remix, manova, ary manangana ny
fitaovana ho an'ny tanjona rehetra, na dia ara-barotra aza.
CC BY-ND 4.0
Zarao: Adikao ary zarao amin'ny fitaovana na endrika rehetra ny fitaovana.
Tsy afaka manafoana ireo fahalalahana voalaza etsy ambony ireo ny licence raha mankatò ireto fepetra fahazoan-dàlana manaraka ireto ianao:
CC BY 3.0
CC BY-ND 4.0
Attribution: Tsy maintsy manome crédit sahaza ianao, Attribution: Jereo ankavia. Fa: Omeo rohy mankany amin'ity
omeo rohy mankany amin'ny fahazoan-dàlana, ary asehoy raha
lisansa hafa.
fanovana natao. Azonao atao izany na aiza na aiza
Tsy misy derivatives: Raha mampifangaro, manova, na manorina ianao
amin'ny fomba mitombina, fa tsy amin'ny fomba rehetra
amin'ny fitaovana dia tsy azonao zaraina ny
gests ny licensor manohana anao na ny fampiasanao.
fitaovana novaina.
Tsy misy fameperana fanampiny: Tsy azo ampiharina Tsy misy fameperana fanampiny: Jereo ny ankavia. fepetra ara-dalàna na fepetra ara-teknolojia izay ara-dalàna
ferana ny hafa tsy hanao na inona na inona ny fahazoan-dàlana
fahazoan-dàlana.
Fanamarihana: Tsy mila manaraka ny fahazoan-dàlana ho an'ny singa amin'ny fitaovana ao amin'ny sehatra ho an'ny daholobe ianao na izay avela hampiasainao amin'ny alàlan'ny fanavahana na famerana azo ampiharina.
Fanamarihana: Tsy misy antoka omena. Ny fahazoan-dàlana dia mety tsy hanome anao ny fahazoan-dàlana rehetra ilaina amin'ny fampiasanao. Ho an'ny exampRaha ny marina, ny zo hafa toy ny fampahafantarana, ny fiainana manokana, na ny zo ara-moraly dia mety hametra ny fomba fampiasanao ilay fitaovana.
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
59
Imprint, contact, versions
©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 Zo rehetra voatokana. Ny fahadisoana, ny tsy fisiana, ny fiovana ara-teknika na ny atiny dia azo atao tsy misy fampandrenesana. Ny marika/vokatra voatonona dia mariky ny tompony ary tokony ho raisina ho toy izany. Version original.
Antontan-taratasy 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
+ Nampiana > Novana # Fixed > Famerenana ny asa efa nomenaamples.
+ NanoLib Modbus: Mekanisma manidy fitaovana fanampiny ho an'ny Modbus VCP. # NanoLib Core: Fanamarinana ny fifandraisana raikitra. # Kaody NanoLib: Nahitsy ny fanesorana ny fitaovan'ny fiara fitateram-bahoaka.
+ NanoLib-CANopen: Fanohanana ny adaptatera Peak PCAN-USB (IPEH-002021/002022).
> NanoLib Core: Niova ny logiciel callback interface (LogLevel nosoloina LogModule). # NanoLib Logger: Nahitsy ny fisarahana eo amin'ny fototra sy ny maody. # Modbus TCP: Fanavaozana firmware raikitra ho an'ny FW4. # EtherCAT: fandefasana programa NanoJ raikitra ho an'ny Core5. # EtherCAT: fanavaozana firmware raikitra ho an'ny Core5.
# Modbus RTU: Olana ara-potoana raikitra miaraka amin'ny tahan'ny baud ambany mandritra ny fanavaozana firmware. # FAMPISEHOANA: fandefasana programa NanoJ raikitra.
# NanoLib Modules Sampler: Famakiana marina ny sampnitarika soatoavina boolean.
+ Fanohanana Java 11 ho an'ny sehatra rehetra. + Fanohanana Python 3.11/3.12 ho an'ny sehatra rehetra. + Fifandraisana antso an-tariby vaovao (jereo ny examples). + Milentika ny antso ho an'ny NanoLib Logger. > Fanavaozana ny logger amin'ny version 1.12.0. > NanoLib Modules Sampler: Tohano izao ny firmware v24xx controller Nanotec. > NanoLib Modules Sampler: Fiovan'ny rafitra ampiasaina amin'ny sampler configuration. > NanoLib Modules Sampler: Ny fomba mitohy dia mitovy amin'ny tsy misy farany; ny toetry ny trigger dia voamarina indray mandeha; ny isan'ny samptsy maintsy 0. > NanoLib Modules Sampler: Laharam-pahamehana mahazatra ho an'ny kofehy izay manangona angona amin'ny maody firmware. > NanoLib Modules Sampler: Algorithm nosoratana indray hamantarana ny fifindrana eo amin'ny fanjakana Vonona & Running. # NanoLib Core: Tsy misy fanitsakitsahana ny fidirana (0xC0000005) amin'ny fanakatonana fitaovana 2 na mihoatra amin'ny fampiasana fitaovana fiara fitateram-bahoaka mitovy. # NanoLib Core: Tsy misy fahadisoana Segmentation intsony amin'ny fametahana adaptatera PEAK amin'ny Linux. # NanoLib Modules Sampler: Ahitsio sampled-values mamaky amin'ny firmware mode. # NanoLib Modules Sampler: fanitsiana marina ny 502X:04. # NanoLib Modules Sampler: Fampifangaroana tsara ny buffer amin'ny fantsona. # NanoLib-Canopen: Nitombo ny fe-potoana CAN ho an'ny fahamendrehana sy ny scan marina amin'ny baudrates ambany. # NanoLib-Modbus: algorithm fitiliana VCP ho an'ny fitaovana manokana (USB-DA-IO).
+ Fanohanana EtherCAT.
+ Fanamarihana momba ny firafitry ny tetikasa VS ao amin'ny Configure ny tetikasanao.
+ getDeviceHardwareGroup (). + getProfinetDCP (isServiceAvailable). + getProfinetDCP (validateProfinetDeviceIp). + autoAssignObjectDictionary (). + getXmlFileAnarana (). + const std::string & xmlFileLalana ao amin'ny addObjectDictionary (). + mahazoSamplerInterface ().
Vokatra 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)
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
60
10 Imprint, contact, versions
tahirin-kevitra
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
+ Nampiana > Novana # Fixed + rebootDevice (). + Kaody diso ResourceUnavailable ho an'ny getDeviceBootloaderVersion (), ~VendorId (), ~HardwareVersion (), ~SerialNumber, ary ~Uid. > firmwareUploadFromFile izao uploadFirmwareFromFile (). > firmwareUpload () izao uploadFirmware (). > bootloaderUploadFromFile () izao uploadBootloaderFromFile (). > bootloaderUpload () izao uploadBootloader (). > bootloaderFirmwareUploadFromFile () hampiakatraBootloaderFirmwareFromFile (). > bootloaderFirmwareUpload () izao uploadBootloaderFirmware (). > nanojUploadFromFile () izao uploadNanoJFromFile (). > nanojUpload () izao uploadNanoJ (). > objectDictionaryLibrary () ankehitriny getObjectDictionaryLibrary (). > String_String_Map izao StringStringMap. > NanoLib-Common: fanatanterahana haingana kokoa ny listAvailableBusHardware sy openBusHardwareWithProtocol miaraka amin'ny adaptatera Ixxat. > NanoLib-CANopen: fampiasana default (1000k baudrate, Ixxat bus number 0) raha tsy misy ny safidy fitaovan'ny fiara fitateram-bahoaka. > NanoLib-RESTful: ny fahazoan-dàlana admin dia lany andro ho an'ny fifandraisana amin'ireo bootloader Ethernet eo ambanin'ny Windows raha misy ny mpamily npcap / winpcap. # NanoLib-CANopen: ny fitaovan'ny fiara fitateram-bahoaka izao dia misokatra tsy misy fiatoana miaraka amin'ny safidy foana. # NanoLib-Common: openBusHardwareWithProtocol () tsy misy fitadidiana mivoaka izao.
+ Fanohanana Linux ARM64. + USB fitahirizana faobe / REST / Profinet DCP fanohanana. + checkConnectionState (). + getDeviceBootloaderVersion (). + ResultProfinetDevices. + NlcErrorCode (nosoloina NanotecExceptions). + NanoLib Modbus: VCP / USB hub mitambatra amin'ny USB. > Modbus TCP scan dia mamerina valiny. < Mijanona ho tsy miova ny faharetan'ny fifandraisana Modbus TCP.
+ ObjectEntryDataType bebe kokoa (sarotra sy profile- manokana). + IOError miverina raha connectDevice () sy scanDevices () tsy mahita. + 100 ms ihany ny fotoana voafetra ho an'ny CanOpen / Modbus.
+ Fanohanana Modbus (miampy USB Hub amin'ny VCP). + Toko Mamorona tetikasa Linux anao manokana. + extraHardwareSpecifier amin'ny BusHardwareId (). + extraId_ sy extraStringId_ amin'ny DeviceId ().
+ setBusState (). + getDeviceBootloaderBuildId (). + getDeviceFirmwareBuildId (). + getDeviceHardwareVersion (). # Fanamboarana bug.
Edition.
vokatra
0.8.0 0.7.1 0.7.0 0.5.1 0.5.1
Dikan-teny: doc 1.4.2 / NanoLib 1.3.0
61
Documents / Loharano
![]() |
Nanotic NanoLib C++ Programming [pdf] Boky Torolàlana NanoLib C Programming, C Programming, Programming |

