ការសរសេរកម្មវិធី Nanotic NanoLib C ++
ព័ត៌មានអំពីផលិតផល
លក្ខណៈបច្ចេកទេស
- ឈ្មោះផលិតផល៖ ណាណូលីប
- ការសរសេរកម្មវិធី ភាសា៖ C++
- កំណែផលិតផល៖ 1.3.0
- កំណែសៀវភៅណែនាំអ្នកប្រើប្រាស់៖ 1.4.2
បណ្ណាល័យ NanoLib ត្រូវបានរចនាឡើងសម្រាប់កម្មវិធីគ្រប់គ្រងកម្មវិធីសម្រាប់ឧបករណ៍បញ្ជា Nanotec។ វាផ្តល់នូវចំណុចប្រទាក់អ្នកប្រើប្រាស់ មុខងារស្នូល និងបណ្ណាល័យទំនាក់ទំនង ដើម្បីជួយសម្រួលដល់ការអភិវឌ្ឍន៍កម្មវិធីត្រួតពិនិត្យ។
ការណែនាំអំពីការប្រើប្រាស់ផលិតផល
- មុនពេលអ្នកចាប់ផ្តើម៖
- ត្រូវប្រាកដថាប្រព័ន្ធរបស់អ្នកបំពេញតាមតម្រូវការផ្នែករឹងដែលបានបញ្ជាក់នៅក្នុងសៀវភៅណែនាំ។ ទស្សនិកជនដែលមានបំណងសម្រាប់ផលិតផលនេះរួមមានអ្នកអភិវឌ្ឍន៍ដែលកំពុងស្វែងរកការបង្កើតកម្មវិធីគ្រប់គ្រងសម្រាប់ឧបករណ៍បញ្ជា Nanotec ។
- ការចាប់ផ្តើម៖
- ដើម្បីចាប់ផ្តើមប្រើប្រាស់ NanoLib សូមអនុវត្តតាមជំហានទាំងនេះ៖
- ចាប់ផ្តើមដោយការនាំចូល NanoLib ទៅក្នុងគម្រោងរបស់អ្នក។
- កំណត់រចនាសម្ព័ន្ធការកំណត់គម្រោងរបស់អ្នកតាមតម្រូវការ។
- បង្កើតគម្រោងរបស់អ្នកដើម្បីបញ្ចូលមុខងារ NanoLib ។
- ការបង្កើតគម្រោង៖
- អ្នកអាចបង្កើតគម្រោងសម្រាប់ទាំងបរិស្ថាន Windows និង Linux ។ អនុវត្តតាមការណែនាំជាក់លាក់ដែលមាននៅក្នុងសៀវភៅណែនាំសម្រាប់វេទិកានីមួយៗ។
- ថ្នាក់/អនុគមន៍យោង៖
- សូមមើលសៀវភៅណែនាំអ្នកប្រើប្រាស់សម្រាប់ការណែនាំលម្អិតអំពីថ្នាក់ និងមុខងារដែលមាននៅក្នុង NanoLib សម្រាប់កម្មវិធីគ្រប់គ្រងការសរសេរកម្មវិធី។
សំណួរគេសួរញឹកញាប់
- សំណួរ៖ តើ NanoLib មានគោលបំណងអ្វី?
- A: NanoLib គឺជាបណ្ណាល័យសម្រាប់កម្មវិធីគ្រប់គ្រងកម្មវិធីសម្រាប់ឧបករណ៍បញ្ជា Nanotec ដែលផ្តល់នូវមុខងារសំខាន់ៗ និងសមត្ថភាពទំនាក់ទំនង។
- សំណួរ៖ តើខ្ញុំអាចចាប់ផ្តើមជាមួយ NanoLib យ៉ាងដូចម្តេច?
- A: ចាប់ផ្តើមដោយការនាំចូល NanoLib ទៅក្នុងគម្រោងរបស់អ្នក កំណត់រចនាសម្ព័ន្ធការកំណត់គម្រោង និងបង្កើតគម្រោងរបស់អ្នក ដើម្បីប្រើប្រាស់មុខងារ NanoLib ។
“`
សៀវភៅណែនាំអ្នកប្រើប្រាស់ NanoLib
C++
មានសុពលភាពជាមួយកំណែផលិតផល 1.3.0
កំណែសៀវភៅណែនាំអ្នកប្រើប្រាស់៖ ១.៩
គោលបំណងនៃឯកសារ និងអនុសញ្ញា
ឯកសារនេះពិពណ៌នាអំពីការដំឡើង និងការប្រើប្រាស់បណ្ណាល័យ NanoLib និងមានឯកសារយោងទៅកាន់ថ្នាក់ និងមុខងារទាំងអស់សម្រាប់សរសេរកម្មវិធីគ្រប់គ្រងផ្ទាល់ខ្លួនរបស់អ្នកសម្រាប់ឧបករណ៍បញ្ជា NanoTec ។ យើងប្រើពុម្ពអក្សរខាងក្រោម៖
អត្ថបទគូសបន្ទាត់ពីក្រោមសម្គាល់សេចក្តីយោងឆ្លងឬតំណខ្ពស់។
Example 1: សម្រាប់ការណែនាំពិតប្រាកដនៅលើ NanoLibAccessor សូមមើលការដំឡើង។ ឧample 2: ដំឡើងកម្មវិធីបញ្ជា Ixxat ហើយភ្ជាប់អាដាប់ទ័រ CAN-to-USB ។ អក្សរទ្រេតមានន័យថា៖ នេះគឺជាវត្ថុដែលមានឈ្មោះ ផ្លូវម៉ឺនុយ / ធាតុ ផ្ទាំង / file ឈ្មោះ ឬ (បើចាំបាច់) កន្សោមជាភាសាបរទេស។
Exampលេខ ១៖ ជ្រើសរើស File > ថ្មី > ឯកសារទទេ។ បើកផ្ទាំង ឧបករណ៍ ហើយជ្រើសរើស មតិយោបល់។ ឧample 2: ឯកសារនេះបែងចែកអ្នកប្រើប្រាស់ (= Nutzer; usuario; utente; utilisateur; utente ។ល។) ពី៖
- អ្នកប្រើប្រាស់ភាគីទីបី (= Drittnutzer; tercero usuario; terceiro utente; tiers utilisateur; terzo utente ។ល។) - អ្នកប្រើប្រាស់ចុងក្រោយ (= Endnutzer; usuario final; utente final; utilisateur final; utente finale ជាដើម)។
អ្នកនាំសំបុត្រសម្គាល់ប្លុកកូដ ឬពាក្យបញ្ជាសរសេរកម្មវិធី។ ឧample 1: តាមរយៈ Bash ហៅ sudo ដំឡើងដើម្បីចម្លងវត្ថុដែលបានចែករំលែក។ បន្ទាប់មកហៅទៅ ldconfig ។ ឧample 2: ប្រើមុខងារ NanoLibAccessor ខាងក្រោមដើម្បីផ្លាស់ប្តូរកម្រិតនៃការកត់ត្រានៅក្នុង NanoLib៖
// ***** បំរែបំរួល C ++ *****
void setLoggingLevel (កម្រិត LogLevel);
អត្ថបទដិតសង្កត់ធ្ងន់លើពាក្យបុគ្គលដែលមានសារសំខាន់។ ម៉្យាងទៀត សញ្ញាឧទានតង្កៀបបញ្ជាក់ពីសារៈសំខាន់សំខាន់ (!) ។
Exampលេខ ១៖ ការពារខ្លួនអ្នក អ្នកដទៃ និងឧបករណ៍របស់អ្នក។ អនុវត្តតាមកំណត់សម្គាល់សុវត្ថិភាពទូទៅរបស់យើង ដែលជាទូទៅអាចអនុវត្តបានចំពោះផលិតផលណាណូតេកទាំងអស់។
Example 2: សម្រាប់ការការពារផ្ទាល់ខ្លួនរបស់អ្នក សូមអនុវត្តតាមកំណត់សម្គាល់សុវត្ថិភាពជាក់លាក់ដែលអនុវត្តចំពោះផលិតផលជាក់លាក់នេះ។ កិរិយាសព្ទដើម្បី co-click មានន័យថាការចុចតាមរយៈគ្រាប់ចុចទីពីរដើម្បីបើកម៉ឺនុយបរិបទ។ល។
Exampលេខ 1: ចុចលើប៊ូតុង fileជ្រើសរើស ប្តូរឈ្មោះ ហើយប្តូរឈ្មោះ file។ ឧampលេ 2: ដើម្បីពិនិត្យមើលលក្ខណសម្បត្តិ សូមចុចលើប៊ូតុង file ហើយជ្រើសលក្ខណៈសម្បត្តិ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
4
មុនពេលអ្នកចាប់ផ្តើម
មុនពេលអ្នកចាប់ផ្តើមប្រើ NanoLib សូមរៀបចំកុំព្យូទ័ររបស់អ្នក ហើយប្រាប់ខ្លួនអ្នកអំពីការប្រើប្រាស់ដែលបានគ្រោងទុក និងដែនកំណត់នៃបណ្ណាល័យ។
2.1 តម្រូវការប្រព័ន្ធ និងផ្នែករឹង
សេចក្តីជូនដំណឹងអំពីដំណើរការខុសប្រក្រតីពីប្រតិបត្តិការ 32 ប៊ីត ឬប្រព័ន្ធឈប់ដំណើរការ! ប្រើប្រាស់ និងរក្សាជាប់លាប់ ប្រព័ន្ធ 64 ប៊ីត។ សង្កេតមើលការបញ្ឈប់ OEM និង~សេចក្តីណែនាំ។
NanoLib 1.3.0 គាំទ្រផលិតផល Nanotec ទាំងអស់ជាមួយ CANopen, Modbus RTU (ក៏មាន USB នៅលើច្រក com និម្មិត), Modbus TCP, EtherCat និង Profinet ។ សម្រាប់ NanoLibs ចាស់៖ សូមមើល changelog នៅក្នុងការបោះពុម្ព។ នៅក្នុងហានិភ័យរបស់អ្នកតែប៉ុណ្ណោះ៖ ការប្រើប្រាស់ប្រព័ន្ធចាស់។ ចំណាំ៖ អនុវត្តតាមការណែនាំ OEM ដែលមានសុពលភាពដើម្បីកំណត់ភាពយឺតយ៉ាវឱ្យទាបតាមដែលអាចធ្វើទៅបាន ប្រសិនបើអ្នកប្រឈមនឹងបញ្ហានៅពេលប្រើអាដាប់ទ័រ USB ដែលមានមូលដ្ឋានលើ FTDI ។
តម្រូវការ (ប្រព័ន្ធ 64 ប៊ីតចាំបាច់)
Windows 10 ឬ 11 w/ Visual Studio 2019 កំណែ 16.8 ឬថ្មីជាងនេះ និង Windows SDK 10.0.20348.0 (កំណែ 2104) ឬថ្មីជាងនេះ។
C++ redistributables 2017 ឬខ្ពស់ជាងនេះ CANopen: Ixxat VCI ឬ PCAN basic driver (ស្រេចចិត្ត) EtherCat module / Profinet DCP: Npcap ឬ WinPcap RESTful module: Npcap, WinPcap, ឬការអនុញ្ញាតពីអ្នកគ្រប់គ្រងទៅ
ទំនាក់ទំនង w/ Ethernet bootloaders
លីនុច w/ Ubuntu 20.04 LTS ដល់ 24 (ទាំងអស់ x64 និង arm64)
បឋមកថាខឺណែល និងកញ្ចប់ព័ត៌មាន libpopt-dev Profinet DCP៖ CAP_NET_ADMIN និង CAP_NET_RAW abili-
ទំនាក់ទំនង CANopen៖ កម្មវិធីបញ្ជា Ixxat ECI ឬ Peak PCAN-USB អាដាប់ទ័រ EtherCat៖ CAP_NET_ADMIN, CAP_NET_RAW និង
សមត្ថភាព CAP_SYS_NICE RESTful៖ សមត្ថភាព CAP_NET_ADMIN ក្នុងការទំនាក់ទំនង w/ Eth-
ernet bootloaders (បានណែនាំផងដែរ៖ CAP_NET_RAW)
ភាសា អាដាប់ទ័រ fieldbus ខ្សែ
C ++ GCC 7 ឬខ្ពស់ជាងនេះ (លីនុច)
EtherCAT៖ ខ្សែអ៊ីសឺរណិត VCP/USB hub៖ ឥឡូវនេះជាឧបករណ៍ផ្ទុក USB ដ៏ធំរបស់ USB៖ ខ្សែ USB REST៖ ខ្សែ Ethernet CANopen៖ Ixxat USB-to-CAN V2; ណា-
notec ZK-USB-CAN-1, អាដាប់ទ័រ Peak PCANUSB No Ixxat គាំទ្រសម្រាប់អ៊ូប៊ុនទូនៅលើ arm64
Modbus RTU: Nanotec ZK-USB-RS485-1 ឬអាដាប់ទ័រសមមូល; ខ្សែ USB នៅលើរន្ធ com និម្មិត (VCP)
Modbus TCP៖ ខ្សែអ៊ីសឺរណិត តាមទិន្នន័យផលិតផល
2.2 ការប្រើប្រាស់ដោយចេតនា និងទស្សនិកជន
NanoLib គឺជាបណ្ណាល័យកម្មវិធី និងផ្នែកទន់សម្រាប់ប្រតិបត្តិការ និងការទំនាក់ទំនងជាមួយឧបករណ៍បញ្ជា Nanotec នៅក្នុងជួរដ៏ធំទូលាយនៃកម្មវិធីឧស្សាហកម្ម និងសម្រាប់តែអ្នកសរសេរកម្មវិធីដែលមានជំនាញត្រឹមត្រូវ។
ដោយសារតែផ្នែករឹង (PC) និងប្រព័ន្ធប្រតិបត្តិការដែលមិនអាចប្រើប្រាស់បានក្នុងពេលវេលាជាក់ស្តែង NanoLib មិនមែនសម្រាប់ប្រើក្នុងកម្មវិធីដែលត្រូវការចលនាពហុអ័ក្សធ្វើសមកាលកម្ម ឬជាទូទៅមានភាពរសើបពេលវេលានោះទេ។
ក្នុងករណីណាក៏ដោយ អ្នកអាចរួមបញ្ចូល NanoLib ជាសមាសធាតុសុវត្ថិភាពទៅក្នុងផលិតផល ឬប្រព័ន្ធ។ នៅលើការចែកចាយដល់អ្នកប្រើប្រាស់ចុងក្រោយ អ្នកត្រូវតែបន្ថែមការជូនដំណឹង និងការណែនាំដែលត្រូវគ្នាសម្រាប់ការប្រើប្រាស់ប្រកបដោយសុវត្ថិភាព និងប្រតិបត្តិការប្រកបដោយសុវត្ថិភាពចំពោះផលិតផលនីមួយៗជាមួយនឹងសមាសធាតុដែលផលិតដោយ Nanotec ។ អ្នកត្រូវតែឆ្លងផុតការជូនដំណឹងដែលចេញដោយ Nanotec ទាំងអស់ទៅអ្នកប្រើចុងក្រោយ។
2.3 វិសាលភាពនៃការដឹកជញ្ជូន និងការធានា
NanoLib មកជាថត *.zip ពីការទាញយករបស់យើង។ webគេហទំព័រសម្រាប់ EMEA / APAC ឬ AMERICA ។ រក្សាទុកដោយត្រឹមត្រូវ និងពន្លាការទាញយករបស់អ្នកមុនពេលដំឡើង។ កញ្ចប់ NanoLib មាន៖
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
5
2 មុនពេលអ្នកចាប់ផ្តើម
បឋមកថាចំណុចប្រទាក់ជាកូដប្រភព (API)
មុខងារស្នូលជាបណ្ណាល័យក្នុងទម្រង់គោលពីរ៖ nano-
បណ្ណាល័យដែលជួយសម្រួលទំនាក់ទំនង៖ nanolibm_ lib.dll
[yourfieldbus].dll ជាដើម។Exampគម្រោង៖ ឧample.sln (Visual Studio
គម្រោង) និងឧample.cpp (មេ file)
សម្រាប់វិសាលភាពនៃការធានា សូមសង្កេត ក) លក្ខខណ្ឌរបស់យើងសម្រាប់ EMEA / APAC ឬ AMERICA និង ខ) លក្ខខណ្ឌអាជ្ញាប័ណ្ណទាំងអស់។ ចំណាំ៖ Nanotec មិនទទួលខុសត្រូវចំពោះកំហុស ឬគុណភាពហួសហេតុ ការគ្រប់គ្រង ការដំឡើង ប្រតិបត្តិការ ការប្រើប្រាស់ និងការថែទាំឧបករណ៍ភាគីទីបី! ដើម្បីសុវត្ថិភាពត្រឹមត្រូវ សូមអនុវត្តតាមការណែនាំ OEM ដែលមានសុពលភាពជានិច្ច។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
6
ស្ថាបត្យកម្ម NanoLib
រចនាសម្ព័នកម្មវិធីម៉ូឌុលរបស់ NanoLib អនុញ្ញាតឱ្យអ្នករៀបចំមុខងារឧបករណ៍បញ្ជាម៉ូទ័រ / fieldbus ដែលអាចប្ដូរតាមបំណងបានដោយសេរីជុំវិញស្នូលដែលបានសាងសង់ជាមុនយ៉ាងតឹងរ៉ឹង។ NanoLib មានម៉ូឌុលដូចខាងក្រោមៈ
ចំណុចប្រទាក់អ្នកប្រើ (API)
ស្នូល NanoLib
ថ្នាក់ Interface និង helper ដែលបណ្ណាល័យ
បណ្ណាល័យទំនាក់ទំនង Fieldbus-specific libraries ដែល
ចូលប្រើអ្នកទៅកាន់ឧបករណ៍បញ្ជារបស់អ្នកអនុវត្តមុខងារ API ធ្វើចំណុចប្រទាក់រវាង NanoLib
OD (វចនានុក្រមវត្ថុ)
ធ្វើអន្តរកម្មជាមួយបណ្ណាល័យឡានក្រុង។
ស្នូល និងផ្នែករឹងឡានក្រុង។
ផ្អែកលើមុខងារស្នូល NanoLib-
ពូជសាសន៍។
3.1 ចំណុចប្រទាក់អ្នកប្រើ
ចំណុចប្រទាក់អ្នកប្រើមានចំណុចប្រទាក់បឋមកថា files អ្នកអាចប្រើដើម្បីចូលប្រើប៉ារ៉ាម៉ែត្រឧបករណ៍បញ្ជា។ ថ្នាក់ចំណុចប្រទាក់អ្នកប្រើដូចដែលបានពិពណ៌នាក្នុងថ្នាក់/អនុគមន៍យោងអនុញ្ញាតឱ្យអ្នក៖
ភ្ជាប់ទៅទាំងផ្នែករឹង (អាដាប់ទ័រ fieldbus) និងឧបករណ៍បញ្ជា។ ចូលប្រើ OD របស់ឧបករណ៍ ដើម្បីអាន/សរសេរប៉ារ៉ាម៉ែត្រឧបករណ៍បញ្ជា។
3.2 ស្នូល NanoLib
ស្នូល NanoLib ភ្ជាប់មកជាមួយបណ្ណាល័យនាំចូល nanolib.lib ។ វាអនុវត្តមុខងារចំណុចប្រទាក់អ្នកប្រើប្រាស់ និងទទួលខុសត្រូវចំពោះ៖
កំពុងផ្ទុក និងគ្រប់គ្រងបណ្ណាល័យទំនាក់ទំនង។ ការផ្តល់មុខងារចំណុចប្រទាក់អ្នកប្រើនៅក្នុង NanoLibAccessor ។ ចំណុចចូលទំនាក់ទំនងនេះ de-
ពិន័យសំណុំនៃប្រតិបត្តិការដែលអ្នកអាចប្រតិបត្តិនៅលើស្នូល NanoLib និងបណ្ណាល័យទំនាក់ទំនង។
3.3 បណ្ណាល័យទំនាក់ទំនង
បន្ថែមពីលើ nanotec.services.nanolib.dll (មានប្រយោជន៍សម្រាប់ Plug & Drive Studio ជាជម្រើសរបស់អ្នក) NanoLib ផ្តល់នូវបណ្ណាល័យទំនាក់ទំនងដូចខាងក្រោម៖
nanolibm_canopen.dll nanolibm_modbus.dll
nanolibm_ethercat.dll nanolibm_restful-api.dll
nanolibm_usbmmsc.dll nanolibm_profinet.dll
បណ្ណាល័យទាំងអស់ដាក់ស្រទាប់អរូបីផ្នែករឹងរវាងស្នូល និងឧបករណ៍បញ្ជា។ ស្នូលផ្ទុកពួកវានៅពេលចាប់ផ្តើមពីថតគម្រោងដែលបានកំណត់ ហើយប្រើពួកវាដើម្បីបង្កើតទំនាក់ទំនងជាមួយឧបករណ៍បញ្ជាដោយពិធីការដែលត្រូវគ្នា។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
7
ការចាប់ផ្តើម
សូមអានពីរបៀបដំឡើង NanoLib សម្រាប់ប្រព័ន្ធប្រតិបត្តិការរបស់អ្នកឲ្យបានត្រឹមត្រូវ និងរបៀបភ្ជាប់ Hardware តាមតម្រូវការ។
4.1 រៀបចំប្រព័ន្ធរបស់អ្នក។
មុននឹងដំឡើងកម្មវិធីបញ្ជាអាដាប់ទ័រ សូមរៀបចំកុំព្យូទ័ររបស់អ្នកតាមប្រព័ន្ធប្រតិបត្តិការជាមុនសិន។ ដើម្បីរៀបចំកុំព្យូទ័រតាមប្រព័ន្ធប្រតិបត្តិការ Windows របស់អ្នក សូមដំឡើង MS Visual Studio ជាមួយផ្នែកបន្ថែម C++ ។ ដើម្បីដំឡើង make និង gcc ដោយ Linux Bash ហៅ sudo apt install build-essentials។ បន្ទាប់មកបើកសមត្ថភាព CAP_NET_ADMIN, CAP_NET_RAW និង CAP_SYS_NICE សម្រាប់កម្មវិធីដែលប្រើ NanoLib៖ 1. ហៅ sudo setcap 'cap_net_admin, cap_net_raw, cap_sys_nice+eip'
ឈ្មោះ > ។ 2. មានតែពេលនោះទេ ដំឡើងកម្មវិធីបញ្ជាអាដាប់ទ័ររបស់អ្នក។
4.2 ដំឡើងកម្មវិធីបញ្ជាអាដាប់ទ័រ Ixxat សម្រាប់ Windows
មានតែបន្ទាប់ពីការដំឡើងកម្មវិធីបញ្ជាត្រឹមត្រូវប៉ុណ្ណោះ អ្នកអាចប្រើអាដាប់ទ័រ USB-to-CAN V2 របស់ Ixxat ។ សូមអានសៀវភៅណែនាំផលិតផលរបស់ USB drives ដើម្បីស្វែងយល់ថាតើ / របៀបធ្វើឱ្យការរួមបញ្ចូលនិម្មិត (VCP) សកម្ម។ 1. ទាញយក និងដំឡើងកម្មវិធីបញ្ជា VCI 4 របស់ Ixxat សម្រាប់ Windows ពី www.ixxat.com. 2. ភ្ជាប់អាដាប់ទ័របង្រួម USB-to-CAN V2 របស់ Ixxat ទៅកុំព្យូទ័រតាមរយៈ USB ។ 3. តាមកម្មវិធីគ្រប់គ្រងឧបករណ៍៖ ពិនិត្យមើលថាតើទាំងកម្មវិធីបញ្ជា និងអាដាប់ទ័រត្រូវបានដំឡើង/ទទួលស្គាល់ត្រឹមត្រូវ។
4.3 ដំឡើងកម្មវិធីបញ្ជា Peak adapter សម្រាប់ Windows
មានតែបន្ទាប់ពីការដំឡើងកម្មវិធីបញ្ជាត្រឹមត្រូវប៉ុណ្ណោះ អ្នកអាចប្រើអាដាប់ទ័រ PCAN-USB របស់ Peak ។ សូមអានសៀវភៅណែនាំផលិតផលរបស់ USB drives ដើម្បីស្វែងយល់ថាតើ / របៀបធ្វើឱ្យការរួមបញ្ចូលនិម្មិត (VCP) សកម្ម។ 1. ទាញយក និងដំឡើងការដំឡើងកម្មវិធីបញ្ជាឧបករណ៍វីនដូ (= កញ្ចប់ដំឡើង w/ កម្មវិធីបញ្ជាឧបករណ៍ ឧបករណ៍ និង
APIs) ពី http://www.peak-system.com. 2. ភ្ជាប់អាដាប់ទ័រ PCAN-USB របស់ Peak ទៅកុំព្យូទ័រតាមរយៈ USB ។ 3. តាមកម្មវិធីគ្រប់គ្រងឧបករណ៍៖ ពិនិត្យមើលថាតើទាំងកម្មវិធីបញ្ជា និងអាដាប់ទ័រត្រូវបានដំឡើង/ទទួលស្គាល់ត្រឹមត្រូវ។
4.4 ដំឡើងកម្មវិធីបញ្ជាអាដាប់ទ័រ Ixxat សម្រាប់លីនុច
មានតែបន្ទាប់ពីការដំឡើងកម្មវិធីបញ្ជាត្រឹមត្រូវប៉ុណ្ណោះ អ្នកអាចប្រើអាដាប់ទ័រ USB-to-CAN V2 របស់ Ixxat ។ ចំណាំ៖ អាដាប់ទ័រដែលគាំទ្រផ្សេងទៀតត្រូវការការអនុញ្ញាតរបស់អ្នកដោយ sudo chmod +777/dev/ttyACM* (* លេខឧបករណ៍)។ សូមអានសៀវភៅណែនាំផលិតផលរបស់ USB drives ដើម្បីស្វែងយល់ថាតើ / របៀបធ្វើឱ្យការរួមបញ្ចូលនិម្មិត (VCP) សកម្ម។ 1. ដំឡើងកម្មវិធីដែលត្រូវការសម្រាប់កម្មវិធីបញ្ជា ECI និងកម្មវិធីសាកល្បង៖
sudo apt-get update apt-get install libusb-1.0-0-dev libusb-0.1-4 libc6 libstdc++6 libgcc1 buildessential
2. ទាញយកកម្មវិធីបញ្ជា ECI-for-Linux ពី www.ixxat.com ។ ពន្លាវាតាមរយៈ៖
ពន្លា eci_driver_linux_amd64.zip
3. ដំឡើងកម្មវិធីបញ្ជាតាមរយៈ៖
cd /EciLinux_amd/src/KernelModule sudo បង្កើត install-usb
4. ពិនិត្យមើលការដំឡើងកម្មវិធីបញ្ជាដោយជោគជ័យដោយការចងក្រង និងចាប់ផ្តើមកម្មវិធីសាកល្បង៖
cd /EciLinux_amd/src/EciDemos/ sudo បង្កើត cd /EciLinux_amd/bin/release/ ./LinuxEciDemo
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
8
4 ការចាប់ផ្តើម
4.5 ដំឡើងកម្មវិធីបញ្ជាអាដាប់ទ័រ Peak សម្រាប់លីនុច
មានតែបន្ទាប់ពីការដំឡើងកម្មវិធីបញ្ជាត្រឹមត្រូវប៉ុណ្ណោះ អ្នកអាចប្រើអាដាប់ទ័រ PCAN-USB របស់ Peak ។ ចំណាំ៖ អាដាប់ទ័រដែលគាំទ្រផ្សេងទៀតត្រូវការការអនុញ្ញាតរបស់អ្នកដោយ sudo chmod +777/dev/ttyACM* (* លេខឧបករណ៍)។ សូមអានសៀវភៅណែនាំផលិតផលរបស់ USB drives ដើម្បីស្វែងយល់ថាតើ / របៀបធ្វើឱ្យការរួមបញ្ចូលនិម្មិត (VCP) សកម្ម។ 1. ពិនិត្យមើលថាតើលីនុចរបស់អ្នកមានបឋមកថាខឺណែល៖ ls /usr/src/linux-headers-`uname -r` ។ បើមិនដូច្នោះទេដំឡើង
ពួកវា៖ sudo apt-get install linux-headers-`uname -r` 2. ឥឡូវនេះ ដំឡើងកញ្ចប់ libpopt-dev៖ sudo apt-get install libpopt-dev 3. ទាញយកកញ្ចប់កម្មវិធីបញ្ជាដែលត្រូវការ (peak-linux-driver-xxx.tar.gz) ពី www.peak-system.com ។ 4. ដើម្បីពន្លាវា សូមប្រើ៖ tar xzf peak-linux-driver-xxx.tar.gz 5. នៅក្នុងថតដែលមិនបានវេចខ្ចប់៖ ចងក្រង និងដំឡើងកម្មវិធីបញ្ជា បណ្ណាល័យមូលដ្ឋាន PCAN ។ល។៖ បង្កើតទាំងអស់
sudo បង្កើតការដំឡើង 6. ដើម្បីពិនិត្យមើលមុខងារ សូមដោតអាដាប់ទ័រ PCAN-USB ចូល។
ក) ពិនិត្យម៉ូឌុលខឺណែល៖
lsmod | grep pcan ខ) ... និងបណ្ណាល័យចែករំលែក៖
ls -l /usr/lib/libpcan*
ចំណាំ៖ ប្រសិនបើបញ្ហា USB3 កើតឡើង សូមប្រើរន្ធ USB2 ។
4.6 ភ្ជាប់ផ្នែករឹងរបស់អ្នក។
ដើម្បីអាចដំណើរការគម្រោង NanoLib សូមភ្ជាប់ឧបករណ៍បញ្ជា Nanotec ដែលត្រូវគ្នាទៅនឹងកុំព្យូទ័រដោយប្រើអាដាប់ទ័ររបស់អ្នក។ 1. តាមរយៈខ្សែដែលសមស្រប សូមភ្ជាប់អាដាប់ទ័ររបស់អ្នកទៅឧបករណ៍បញ្ជា។ 2. ភ្ជាប់អាដាប់ទ័រទៅកុំព្យូទ័រដោយយោងតាមសន្លឹកទិន្នន័យអាដាប់ទ័រ។ 3. ថាមពលនៅលើឧបករណ៍បញ្ជាដោយប្រើការផ្គត់ផ្គង់ថាមពលសមរម្យ។ 4. ប្រសិនបើចាំបាច់ ផ្លាស់ប្តូរការកំណត់ទំនាក់ទំនងរបស់ឧបករណ៍បញ្ជា Nanotec ដូចដែលបានណែនាំនៅក្នុងសៀវភៅណែនាំផលិតផលរបស់វា។
4.7 ផ្ទុក NanoLib
សម្រាប់ការចាប់ផ្តើមដំបូងជាមួយនឹងមូលដ្ឋានគ្រឹះរហ័ស និងងាយស្រួល អ្នកអាច (ប៉ុន្តែមិនត្រូវ) ប្រើអតីតរបស់យើង។ampគម្រោង។ 1. អាស្រ័យលើតំបន់របស់អ្នក៖ ទាញយក NanoLib ពីរបស់យើង។ webគេហទំព័រសម្រាប់ EMEA / APAC ឬ AMERICA ។ 2. ពន្លាកញ្ចប់របស់ files/ folders ហើយជ្រើសរើសជម្រើសមួយ៖ សម្រាប់មូលដ្ឋានរហ័ស និងងាយស្រួល៖ សូមមើល ការចាប់ផ្តើម អតីតampគម្រោង។ សម្រាប់ការប្ដូរតាមបំណងកម្រិតខ្ពស់នៅក្នុង Windows៖ សូមមើលការបង្កើតគម្រោង Windows ផ្ទាល់ខ្លួនរបស់អ្នក។ សម្រាប់ការប្ដូរតាមបំណងកម្រិតខ្ពស់នៅក្នុងលីនុច៖ សូមមើលការបង្កើតគម្រោងលីនុចផ្ទាល់ខ្លួនរបស់អ្នក។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
9
ចាប់ផ្តើមអតីតampគម្រោង
ជាមួយនឹង NanoLib ដែលបានផ្ទុកត្រឹមត្រូវ ឧampគម្រោង le បង្ហាញអ្នកតាមរយៈការប្រើប្រាស់ NanoLib ជាមួយនឹងឧបករណ៍បញ្ជា Nanotec ។ ចំណាំ៖ សម្រាប់ជំហាននីមួយៗ មតិយោបល់នៅក្នុងឧampលេកូដពន្យល់ពីមុខងារដែលបានប្រើ។ អតីតampគម្រោង le មាន៖ `*_functions_exampលេ.*' files ដែលមានការអនុវត្តសម្រាប់ចំណុចប្រទាក់ NanoLib ដំណើរការ `*_callback_exampលេ.*' files ដែលមានការអនុវត្តសម្រាប់ការហៅត្រឡប់មកវិញផ្សេងៗ (ស្កេន ទិន្នន័យ និង
ការកត់ត្រា) `menu_*.*' fileដែលផ្ទុកនូវតក្កវិជ្ជាម៉ឺនុយ និងសរសេរកូដ Exampលេ។ fileដែលជាកម្មវិធីចម្បង បង្កើតម៉ឺនុយ និងចាប់ផ្តើមប៉ារ៉ាម៉ែត្រដែលបានប្រើទាំងអស់ Sampler_exampលេ។ fileដែលមាន exampការអនុវត្តសម្រាប់ sampការប្រើប្រាស់ ler ។ អ្នកអាចស្វែងរក examples ជាមួយនឹងពាក្យបញ្ជាចលនាមួយចំនួនសម្រាប់របៀបប្រតិបត្តិការផ្សេងៗនៅក្នុងមូលដ្ឋានចំណេះដឹងនៅ nanotec.com ។ ទាំងអស់គឺអាចប្រើបាននៅក្នុង Windows ឬ Linux ។
នៅក្នុង Windows ជាមួយ Visual Studio 1. បើក Example.sln file. 2. បើកអតីតample.cpp. 3. ចងក្រង និងដំណើរការ exampលេខកូដ។
នៅក្នុង Linux តាមរយៈ Bash 1. ពន្លាប្រភព fileរុករកទៅថតដែលមានមាតិកាពន្លា។ មេ file សម្រាប់អតីតampឡេគឺ
example.cpp. 2. នៅក្នុង bash, ហៅ:
ក. "sudo make install" ដើម្បីចម្លងវត្ថុដែលបានចែករំលែកហើយហៅទៅ ldconfig ។ ខ. "ធ្វើឱ្យទាំងអស់" ដើម្បីបង្កើតការធ្វើតេស្តដែលអាចប្រតិបត្តិបាន។ 3. ឯកសារ bin មាន ex ដែលអាចប្រតិបត្តិបាន។ample file. ដោយ bash៖ ចូលទៅកាន់ថតលទ្ធផល ហើយវាយ ./exampលេ ប្រសិនបើគ្មានបញ្ហាកើតឡើងទេ វត្ថុដែលបានចែករំលែករបស់អ្នកឥឡូវនេះត្រូវបានដំឡើងត្រឹមត្រូវ ហើយបណ្ណាល័យរបស់អ្នករួចរាល់សម្រាប់ការប្រើប្រាស់។ ប្រសិនបើកំហុសអាន ./example: error while loading shared libnanolib.so: មិនអាចបើកវត្ថុដែលបានចែករំលែកទេ។ file៖ គ្មានបែបនេះទេ។ file ឬថត ការដំឡើងរបស់វត្ថុដែលបានចែករំលែកបានបរាជ័យ។ ក្នុងករណីនេះ សូមអនុវត្តតាមជំហានបន្ទាប់។ 4. បង្កើតថតថ្មីមួយនៅក្នុង /usr/local/lib (ត្រូវការសិទ្ធិគ្រប់គ្រង)។ ចូលទៅក្នុង bash ដូច្នេះវាយ:
sudo mkdir /usr/local/lib/nanotec
5. ចម្លងវត្ថុដែលបានចែករំលែកទាំងអស់ពី zip fileថត lib របស់៖
ដំឡើង ./lib/*.so /usr/local/lib/nanotec/
6. ពិនិត្យមាតិកានៃថតគោលដៅជាមួយ៖
ls -al /usr/local/lib/nanotec/
វាគួរតែរាយបញ្ជីវត្ថុដែលបានចែករំលែក files ពីថត lib ។ 7. ដំណើរការ ldconfig នៅលើថតនេះ៖
sudo ldconfig /usr/local/lib/nanotec/
អតីតample ត្រូវបានអនុវត្តជាកម្មវិធី CLI និងផ្តល់នូវចំណុចប្រទាក់ម៉ឺនុយ។ ធាតុម៉ឺនុយគឺផ្អែកលើបរិបទ ហើយនឹងត្រូវបានបើក ឬបិទ អាស្រ័យលើស្ថានភាពបរិបទ។ ពួកគេផ្តល់ជូនអ្នកនូវលទ្ធភាពក្នុងការជ្រើសរើស និងប្រតិបត្តិមុខងារបណ្ណាល័យផ្សេងៗ តាមដំណើរការធម្មតាសម្រាប់ការគ្រប់គ្រងឧបករណ៍បញ្ជា៖ 1. ពិនិត្យកុំព្យូទ័រសម្រាប់ផ្នែករឹងដែលបានភ្ជាប់ (អាដាប់ទ័រ) ហើយរាយបញ្ជីពួកគេ។ 2. បង្កើតការតភ្ជាប់ទៅអាដាប់ទ័រ។ 3. ស្កេនឡានក្រុងសម្រាប់ឧបករណ៍បញ្ជាដែលបានភ្ជាប់។ 4. ភ្ជាប់ទៅឧបករណ៍។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
10
5 ការចាប់ផ្តើមអតីតampគម្រោង
5. សាកល្បងមុខងារបណ្ណាល័យមួយ ឬច្រើន៖ អាន/សរសេរពី/ទៅវចនានុក្រមវត្ថុរបស់ឧបករណ៍បញ្ជា អាប់ដេតកម្មវិធីបង្កប់ អាប់ឡូត និងដំណើរការកម្មវិធី NanoJ ធ្វើឱ្យម៉ូទ័រដំណើរការ និងសម្រួលវា កំណត់រចនាសម្ព័ន្ធ និងប្រើការកត់ត្រា/sampឡឺ
6. បិទការភ្ជាប់ ជាដំបូងទៅកាន់ឧបករណ៍ បន្ទាប់មកទៅកាន់អាដាប់ទ័រ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
11
បង្កើតគម្រោង Windows ផ្ទាល់ខ្លួនរបស់អ្នក។
បង្កើត ចងក្រង និងដំណើរការគម្រោង Windows ផ្ទាល់ខ្លួនរបស់អ្នក ដើម្បីប្រើ NanoLib ។
6.1 នាំចូល NanoLib
នាំចូលបឋមកថា NanoLib files និងបណ្ណាល័យតាមរយៈ MS Visual Studio ។
1. បើក Visual Studio ។ 2. តាមរយៈ បង្កើតគម្រោងថ្មី > Console App C++ > បន្ទាប់៖ ជ្រើសរើសប្រភេទគម្រោង។ 3. ដាក់ឈ្មោះគម្រោងរបស់អ្នក (នៅទីនេះ៖ NanolibTest) ដើម្បីបង្កើតថតគម្រោងក្នុង Solution Explorer ។ 4. ជ្រើសរើស បញ្ចប់។ 5. បើកបង្អួច file explorer និងរុករកទៅថតគម្រោងដែលបានបង្កើតថ្មី។ 6. បង្កើតថតថ្មីពីរគឺ inc និង lib ។ 7. បើកថតកញ្ចប់ NanoLib ។ 8. ពីទីនោះ៖ ចម្លងបឋមកថា files ពីថតរួមបញ្ចូលទៅក្នុងថតគម្រោងរបស់អ្នក inc និង .lib និង .dll ទាំងអស់។
files ទៅថតគម្រោងថ្មីរបស់អ្នក lib ។ 9. ពិនិត្យថតគម្រោងរបស់អ្នកសម្រាប់រចនាសម្ព័ន្ធត្រឹមត្រូវ ឧទាហរណ៍ampលេ៖
ect folder សម្រាប់រចនាសម្ព័ន្ធត្រឹមត្រូវ៖
. 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 Nanolibxproj.stervcx NanolibTest.sln
6.2 កំណត់រចនាសម្ព័ន្ធគម្រោងរបស់អ្នក។
ប្រើ Solution Explorer ក្នុង MS Visual Studio ដើម្បីរៀបចំគម្រោង NanoLib ។ ចំណាំ៖ សម្រាប់ប្រតិបត្តិការ NanoLib ត្រឹមត្រូវ សូមជ្រើសរើសការកំណត់រចនាសម្ព័ន្ធការចេញផ្សាយ (មិនបំបាត់កំហុស!) នៅក្នុងការកំណត់គម្រោង Visual C++ ។ បន្ទាប់មកបង្កើត និងភ្ជាប់គម្រោងជាមួយនឹងពេលវេលាដំណើរការ VC នៃ C++ redistributables [2022]។
1. នៅក្នុង Explorer ដំណោះស្រាយ៖ ចូលទៅកាន់ថតគម្រោងរបស់អ្នក (នៅទីនេះ៖ NanolibTest)។ 2. ចុចលើថតរួមដើម្បីបើកម៉ឺនុយបរិបទ។ 3. ជ្រើសរើស Properties ។ 4. ធ្វើឱ្យការកំណត់រចនាសម្ព័ន្ធទាំងអស់ និងគ្រប់វេទិកាសកម្ម។ 5. ជ្រើសរើស C/C++ ហើយចូលទៅកាន់ Additional Include Directories។ 6. បញ្ចូល៖ $(ProjectDir)Nanolib/includes;%(AdditionalIncludeDirectories) 7. ជ្រើសរើស Linker ហើយចូលទៅកាន់ Additional Library Directories។ 8. បញ្ចូល៖ $(ProjectDir)Nanolib;%(AdditionalLibraryDirectories) 9. ពង្រីក Linker ហើយជ្រើសរើស បញ្ចូល។ 10.ចូលទៅកាន់ Additional Dependencies ហើយបញ្ចូល៖ nanolib.lib;%(AdditionalDependencies) 11.Confirm តាមរយៈ OK ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
12
6 ការបង្កើតគម្រោង Windows ផ្ទាល់ខ្លួនរបស់អ្នក។
12.ចូលទៅកាន់ការកំណត់រចនាសម្ព័ន្ធ > C++ > ភាសា > ស្តង់ដារភាសា > ISO C++17 Standard ហើយកំណត់ស្តង់ដារភាសាទៅជា C++17 (/std:c++17)។
6.3 បង្កើតគម្រោងរបស់អ្នក។
បង្កើតគម្រោង NanoLib របស់អ្នកនៅក្នុង MS Visual Studio ។ 1. បើកមេ *.cpp file (នៅទីនេះ៖ nanolib_example.cpp) ហើយកែសម្រួលកូដប្រសិនបើចាំបាច់។ 2. ជ្រើសរើស Build> Configuration Manager។ 3. ផ្លាស់ប្តូរវេទិកាដំណោះស្រាយសកម្មទៅ x64 ។ 4. បញ្ជាក់តាមរយៈ Close ។ 5. ជ្រើសរើស Build > Build solution។ 6. គ្មានកំហុស? ពិនិត្យមើលថាតើការចងក្រងរបាយការណ៍លទ្ធផលត្រឹមត្រូវរបស់អ្នក៖
1>—— សម្អាតបានចាប់ផ្តើម៖ គម្រោង៖ NanolibTest ការកំណត់រចនាសម្ព័ន្ធ៖ បំបាត់កំហុស x64 —–========== សម្អាត៖ 1 ជោគជ័យ 0 បរាជ័យ 0 រំលង ==========
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
13
7 ការបង្កើតគម្រោងលីនុចផ្ទាល់ខ្លួនរបស់អ្នក។
7 ការបង្កើតគម្រោងលីនុចផ្ទាល់ខ្លួនរបស់អ្នក។
បង្កើត ចងក្រង និងដំណើរការគម្រោងលីនុចផ្ទាល់ខ្លួនរបស់អ្នក ដើម្បីប្រើ NanoLib ។ 1. នៅក្នុងឧបករណ៍ដំឡើង NanoLib ដែលបានពន្លា: បើក /nanotec_nanolib ។ 2. ស្វែងរកវត្ថុដែលបានចែករំលែកទាំងអស់នៅក្នុង tar.gz file. 3. ជ្រើសរើសជម្រើសមួយ៖ ដំឡើង lib នីមួយៗដោយប្រើ Makefile ឬដោយដៃ។
7.1 ដំឡើងវត្ថុដែលបានចែករំលែកជាមួយ Makefile
ប្រើ Makefile ជាមួយ Linux Bash ដើម្បីដំឡើងលំនាំដើមទាំងអស់ដោយស្វ័យប្រវត្តិ *.so fileស. 1. តាមរយៈ Bash: ចូលទៅកាន់ folder ដែលមាន makefile. 2. ចម្លងវត្ថុដែលបានចែករំលែកតាមរយៈ៖
sudo make install 3. បញ្ជាក់តាមរយៈ៖
ldconfig
7.2 ដំឡើងវត្ថុដែលបានចែករំលែកដោយដៃ
ប្រើ Bash ដើម្បីដំឡើង *.so ទាំងអស់។ files នៃ NanoLib ដោយដៃ។ 1. តាមរយៈ Bash៖ បង្កើតថតថ្មីមួយនៅក្នុង /usr/local/lib ។ 2. សិទ្ធិអ្នកគ្រប់គ្រងត្រូវការ! ប្រភេទ៖
sudo mkdir /usr/local/lib/nanotec 3. ប្តូរទៅថតឯកសារដំឡើងដែលពន្លា។ 4. ចម្លងវត្ថុដែលបានចែករំលែកទាំងអស់ពីថត lib តាមរយៈ៖
ដំឡើង ./nanotec_nanolib/lib/*.so /usr/local/lib/nanotec/ 5. ពិនិត្យមាតិកានៃថតគោលដៅតាមរយៈ៖
ls -al /usr/local/lib/nanotec/ 6. ពិនិត្យមើលថាតើវត្ថុដែលបានចែករំលែកទាំងអស់ពីថត lib ត្រូវបានរាយបញ្ជីឬអត់។ 7. ដំណើរការ ldconfig នៅលើថតនេះតាមរយៈ៖
sudo ldconfig /usr/local/lib/nanotec/
7.3 បង្កើតគម្រោងរបស់អ្នក។
ជាមួយនឹងវត្ថុដែលបានចែករំលែករបស់អ្នកបានដំឡើង៖ បង្កើតគម្រោងថ្មីសម្រាប់ Linux NanoLib របស់អ្នក។ 1. តាមរយៈ Bash៖ បង្កើតថតគម្រោងថ្មី (នៅទីនេះ៖ NanoLibTest) តាមរយៈ៖
mkdir NanoLibTest ស៊ីឌី NanoLibTest
2. ចម្លងបឋមកថា files ទៅកាន់ថតរួមបញ្ចូល (នៅទីនេះ៖ inc) តាមរយៈ៖ mkdir inc cp / FILE IS>/nanotec_nanolib/inc/*.hpp inc
3. បង្កើតមេ file (NanoLibTest.cpp) តាមរយៈ៖ #include “accessor_factory.hpp” #include
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
14
7 ការបង្កើតគម្រោងលីនុចផ្ទាល់ខ្លួនរបស់អ្នក។
int main(){ nlc::NanoLibAccessor *accessor = getNanoLibAccessor();
nlc::ResultBusHwIds លទ្ធផល = accessor->listAvailableBusHardware();
if(result.hasError()) { std::cout << result.getError() << std::endl; }
else{ std::cout << "ជោគជ័យ" << std::endl; }
លុបឧបករណ៍ប្រើប្រាស់; ត្រឡប់ 0; }
4. ពិនិត្យថតគម្រោងរបស់អ្នកសម្រាប់រចនាសម្ព័ន្ធត្រឹមត្រូវ៖
. NanoLibTest
inc accessor_factory.hpp bus_hardware_id.hpp … od_index.hpp result.hpp NanoLibTest.cpp
7.4 ចងក្រង និងសាកល្បងគម្រោងរបស់អ្នក។
ធ្វើឱ្យ Linux NanoLib របស់អ្នករួចរាល់សម្រាប់ការប្រើប្រាស់តាមរយៈ Bash ។
1. តាមរយៈ Bash: ចងក្រងមេ file តាមរយៈ៖
g++ -Wall -Wextra -pedantic -I./inc -c NanoLibTest.cpp -o NanoLibTest
2. ភ្ជាប់ការប្រតិបត្តិរួមគ្នាតាមរយៈ៖
g++ -Wall -Wextra -pedantic -I./inc -o តេស្ត NanoLibTest.o L/usr/local/lib/nanotec -lnanolib -ldl
3. ដំណើរការកម្មវិធីសាកល្បងតាមរយៈ៖
./test
4. ពិនិត្យមើលថាតើ Bash របស់អ្នករាយការណ៍ត្រឹមត្រូវឬអត់៖
ជោគជ័យ
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
15
8 ថ្នាក់/អនុគមន៍យោង
8 ថ្នាក់/អនុគមន៍យោង
ស្វែងរកនៅទីនេះនូវបញ្ជីនៃថ្នាក់ចំណុចប្រទាក់អ្នកប្រើរបស់ NanoLib និងមុខងារសមាជិករបស់ពួកគេ។ ការពិពណ៌នាធម្មតានៃអនុគមន៍រួមមានការណែនាំខ្លីៗ និយមន័យមុខងារ និងប៉ារ៉ាម៉ែត្រ/បញ្ជីត្រឡប់៖
ExampleFunction() ប្រាប់អ្នកដោយសង្ខេបពីអ្វីដែលមុខងារធ្វើ។
virtual void nlc::NanoLibAccessor::ExampleFunction (Param_a const & param_a, Param_b const & param_B)
ប៉ារ៉ាម៉ែត្រ param_a param_b
ត្រឡប់លទ្ធផលVoid
មតិបន្ថែមប្រសិនបើចាំបាច់។ មតិបន្ថែមប្រសិនបើចាំបាច់។
8.1 NanoLibAccessor
ថ្នាក់ចំណុចប្រទាក់ប្រើជាចំណុចចូលទៅ NanoLib ។ លំហូរការងារធម្មតាមើលទៅដូចនេះ៖
1. ចាប់ផ្តើមដោយការស្កេនរកផ្នែករឹងជាមួយ NanoLibAccessor.listAvailableBusHardware ()។ 2. កំណត់ការកំណត់ទំនាក់ទំនងជាមួយ BusHardwareOptions ()។ 3. បើកការតភ្ជាប់ផ្នែករឹងជាមួយ NanoLibAccessor.openBusHardwareWithProtocol ()។ 4. ស្កេនឡានក្រុងសម្រាប់ឧបករណ៍ដែលបានភ្ជាប់ជាមួយ NanoLibAccessor.scanDevices ()។ 5. បន្ថែមឧបករណ៍ជាមួយ NanoLibAccessor.addDevice ()។ 6. ភ្ជាប់ទៅឧបករណ៍ជាមួយ NanoLibAccessor.connectDevice ()។ 7. បន្ទាប់ពីបញ្ចប់ប្រតិបត្តិការ សូមផ្តាច់ឧបករណ៍ជាមួយ NanoLibAccessor.disconnectDevice ()។ 8. លុបឧបករណ៍ដោយប្រើ NanoLibAccessor.removeDevice()។ 9. បិទការតភ្ជាប់ផ្នែករឹងជាមួយ NanoLibAccessor.closeBusHardware ()។
NanoLibAccessor មានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
listAvailableBusHardware () ប្រើមុខងារនេះដើម្បីរាយបញ្ជីផ្នែករឹង fieldbus ដែលមាន។
លទ្ធផលនិម្មិតBusHwIds nlc::NanoLibAccessor::listAvailableBusHardware ()
ត្រឡប់លទ្ធផលBusHwIds
ផ្តល់អារេ ID fieldbus ។
openBusHardwareWithProtocol () ប្រើមុខងារនេះដើម្បីភ្ជាប់ផ្នែករឹងរបស់ឡានក្រុង។
Virtual ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (BusHardwareId const & busHwId, BusHardwareOptions const & busHwOpt)
ប៉ារ៉ាម៉ែត្រ busHwId busHwOpt
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់ fieldbus ដើម្បីបើក។ បញ្ជាក់ជម្រើសបើកឡានក្រុង។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
isBusHardwareOpen () ប្រើមុខងារនេះដើម្បីពិនិត្យមើលថាតើការតភ្ជាប់ផ្នែករឹង fieldbus របស់អ្នកបើកឬអត់។
Virtual ResultVoid nlc::NanoLibAccessor::openBusHardwareWithProtocol (const BusHardwareId & busHwId, const BusHardwareOptions & busHwOpt)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
16
8 ថ្នាក់/អនុគមន៍យោង
ប៉ារ៉ាម៉ែត្រ BusHardwareId ត្រឡប់ពិត
មិនពិត
បញ្ជាក់ fieldbus នីមួយៗដែលត្រូវបើក។ ផ្នែករឹងត្រូវបានបើក។ ផ្នែករឹងត្រូវបានបិទ។
getProtocolSpecificAccessor () ប្រើមុខងារនេះដើម្បីទទួលបានវត្ថុធាតុចូលប្រើប្រាស់ជាក់លាក់នៃពិធីការ។
Virtual ResultVoid nlc::NanoLibAccessor::getProtocolSpecificAccessor (BusHardwareId const & busHwId)
ប៉ារ៉ាម៉ែត្រ busHwId ត្រឡប់ ResultVoid
បញ្ជាក់ fieldbus ដើម្បីទទួលបាន accessor សម្រាប់។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
getProfinetDCP () ប្រើមុខងារនេះដើម្បីត្រឡប់សេចក្តីយោងទៅកាន់ចំណុចប្រទាក់ Profinet DCP ។
ProfinetDCP និម្មិត & getProfinetDCP ()
ត្រឡប់ ProfinetDCP
ទទួលបានamplerInterface() ប្រើអនុគមន៍នេះដើម្បីទទួលបានឯកសារយោងទៅ sampចំណុចប្រទាក់ ler ។
និម្មិត SamplerInterface & getSamplerInterface ()
ត្រឡប់ SamplerInterface
សំដៅលើ សampថ្នាក់ចំណុចប្រទាក់ ler ។
setBusState () ប្រើមុខងារនេះដើម្បីកំណត់ស្ថានភាពជាក់លាក់របស់ bus-protocol ។
Virtual ResultVoid nlc::NanoLibAccessor::setBusState (const BusHardwareId & busHwId, const std::string & state)
ប៉ារ៉ាម៉ែត្រ busHwId ស្ថានភាព
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់ fieldbus ដើម្បីបើក។ កំណត់ស្ថានភាពជាក់លាក់នៃឡានក្រុងជាតម្លៃខ្សែអក្សរ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
scanDevices () ប្រើមុខងារនេះដើម្បីស្កេនរកឧបករណ៍នៅក្នុងបណ្តាញ។
Virtual ResultDeviceIds nlc::NanoLibAccessor::scanDevices (const BusHardwareId & busHwId, NlcScanBusCallback* callback)
ប៉ារ៉ាម៉ែត្រ busHwId ការហៅត្រឡប់មកវិញ
ត្រឡប់ ResultDeviceIds IOError
បញ្ជាក់ fieldbus ដើម្បីស្កេន។ NlcScanBusCallback តាមដានវឌ្ឍនភាព។ ផ្តល់អារេលេខសម្គាល់ឧបករណ៍។ ជូនដំណឹងថារកមិនឃើញឧបករណ៍។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
17
8 ថ្នាក់/អនុគមន៍យោង
ឧបករណ៍បន្ថែម ()
ប្រើមុខងារនេះដើម្បីបន្ថែមឧបករណ៍ឡានក្រុងដែលបានពិពណ៌នាដោយ deviceId ទៅក្នុងបញ្ជីឧបករណ៍ខាងក្នុងរបស់ NanoLib និងដើម្បីត្រឡប់ deviceHandle សម្រាប់វា។
Virtual ResultDeviceHandle nlc::NanoLibAccessor::addDevice (DeviceId const & deviceId)
ប៉ារ៉ាម៉ែត្រ deviceId ត្រឡប់ ResultDeviceHandle
បញ្ជាក់ឧបករណ៍ដែលត្រូវបន្ថែមទៅក្នុងបញ្ជី។ ផ្តល់ចំណុចទាញឧបករណ៍។
connectDevice () ប្រើមុខងារនេះដើម្បីភ្ជាប់ឧបករណ៍ដោយ deviceHandle។
Virtual ResultVoid nlc::NanoLibAccessor::connectDevice (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់លទ្ធផលVoid
IOError
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ភ្ជាប់ទៅ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។ ជូនដំណឹងថារកមិនឃើញឧបករណ៍។
getDeviceName () ប្រើមុខងារនេះដើម្បីទទួលបានឈ្មោះឧបករណ៍ដោយ deviceHandle ។
Virtual ResultString nlc::NanoLibAccessor::getDeviceName (DeviceHandle const deviceHandle)
ឧបករណ៍ ប៉ារ៉ាម៉ែត្រ ចំណុចទាញ ត្រឡប់ ResultString
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ទទួលបានឈ្មោះសម្រាប់។ ផ្តល់ឈ្មោះឧបករណ៍ជាខ្សែអក្សរ។
getDeviceProductCode () ប្រើមុខងារនេះដើម្បីទទួលបានលេខកូដផលិតផលរបស់ឧបករណ៍ដោយ deviceHandle ។
Virtual ResultInt nlc::NanoLibAccessor::getDeviceProductCode (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់ ResultInt
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបានលេខកូដផលិតផលសម្រាប់អ្វី។ ផ្តល់លេខកូដផលិតផលជាចំនួនគត់។
getDeviceVendorId () ប្រើមុខងារនេះដើម្បីទទួលបានលេខសម្គាល់អ្នកលក់ឧបករណ៍ដោយ deviceHandle ។
Virtual ResultInt nlc::NanoLibAccessor::getDeviceVendorId (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់ ResultInt
ធនធានមិនអាចប្រើបាន
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបានលេខសម្គាល់អ្នកលក់សម្រាប់អ្វី។ ផ្តល់លេខសម្គាល់អ្នកលក់ជាចំនួនគត់។ ជូនដំណឹងថារកមិនឃើញទិន្នន័យទេ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
18
8 ថ្នាក់/អនុគមន៍យោង
getDeviceId () ប្រើមុខងារនេះដើម្បីទទួលបានលេខសម្គាល់ឧបករណ៍ជាក់លាក់មួយពីបញ្ជីខាងក្នុង NanoLib ។
Virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceId (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់ ResultDeviceId
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបានលេខសម្គាល់ឧបករណ៍សម្រាប់អ្វី។ ផ្តល់លេខសម្គាល់ឧបករណ៍។
getDeviceIds () ប្រើមុខងារនេះដើម្បីទទួលបានលេខសម្គាល់ឧបករណ៍ទាំងអស់ពីបញ្ជីខាងក្នុង NanoLib ។
Virtual ResultDeviceIds nlc::NanoLibAccessor::getDeviceIds ()
ត្រឡប់ ResultDeviceIds
ផ្តល់បញ្ជីលេខសម្គាល់ឧបករណ៍។
getDeviceUid () ប្រើមុខងារនេះដើម្បីទទួលបានលេខសម្គាល់តែមួយគត់របស់ឧបករណ៍ (96 ប៊ីត / 12 បៃ) ដោយ deviceHandle ។
Virtual ResultArrayByte nlc::NanoLibAccessor::getDeviceUid (DeviceHandle const deviceHandle)
ឧបករណ៍ ប៉ារ៉ាម៉ែត្រ ដោះស្រាយ ត្រឡប់ ResultArrayByte
ធនធានមិនអាចប្រើបាន
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ទទួលបានលេខសម្គាល់តែមួយគត់សម្រាប់។ ផ្តល់លេខសម្គាល់តែមួយគត់ជាអារេបៃ។ ជូនដំណឹងថារកមិនឃើញទិន្នន័យទេ។
getDeviceSerialNumber () ប្រើមុខងារនេះដើម្បីទទួលបានលេខស៊េរីរបស់ឧបករណ៍ដោយ deviceHandle ។
Virtual ResultString NanolibAccessor::getDeviceSerialNumber (DeviceHandle const deviceHandle)
ឧបករណ៍ ប៉ារ៉ាម៉ែត្រ ចំណុចទាញ ត្រឡប់ ResultString
ធនធានមិនអាចប្រើបាន
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ទទួលបានលេខសៀរៀលសម្រាប់។ ផ្តល់លេខស៊េរីជាខ្សែអក្សរ។ ជូនដំណឹងថារកមិនឃើញទិន្នន័យទេ។
getDeviceHardwareGroup () ប្រើមុខងារនេះដើម្បីទទួលបានក្រុមផ្នែករឹងរបស់ឧបករណ៍ឡានក្រុងដោយ deviceHandle ។
Virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareGroup (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់ ResultInt
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ទទួលបានក្រុមផ្នែករឹងសម្រាប់។
ផ្តល់ក្រុមផ្នែករឹងជាចំនួនគត់។
getDeviceHardwareVersion () ប្រើមុខងារនេះដើម្បីទទួលបានកំណែផ្នែករឹងរបស់ឧបករណ៍ឡានក្រុងដោយ deviceHandle ។
Virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceHardwareVersion (DeviceHandle const deviceHandle)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
19
8 ថ្នាក់/អនុគមន៍យោង
ប៉ារ៉ាម៉ែត្រឧបករណ៍ Handle
ត្រឡប់មកវិញ
ResultString ResourceUnavailable
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបានកំណែផ្នែករឹងសម្រាប់។ ផ្តល់ឈ្មោះឧបករណ៍ជាខ្សែអក្សរ។ ជូនដំណឹងថារកមិនឃើញទិន្នន័យទេ។
getDeviceFirmwareBuildId () ប្រើមុខងារនេះដើម្បីទទួលបានលេខសម្គាល់បង្កើតកម្មវិធីបង្កប់របស់ឧបករណ៍ឡានក្រុងដោយ deviceHandle ។
Virtual ResultDeviceId nlc::NanoLibAccessor::getDeviceFirmwareBuildId (DeviceHandle const deviceHandle)
ឧបករណ៍ ប៉ារ៉ាម៉ែត្រ ចំណុចទាញ ត្រឡប់ ResultString
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបានលេខសម្គាល់កម្មវិធីបង្កប់សម្រាប់។
ផ្តល់ឈ្មោះឧបករណ៍ជាខ្សែអក្សរ។
getDeviceBootloaderVersion () ប្រើមុខងារនេះដើម្បីទទួលបានកំណែកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធរបស់ឧបករណ៍ឡានក្រុងដោយ deviceHandle។
Virtual ResultInt nlc::NanoLibAccessor::getDeviceBootloaderVersion (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ Handle
ត្រឡប់មកវិញ
ResultInt Resource Unavailable
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបានកំណែកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធសម្រាប់អ្វី។ ផ្តល់កំណែកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធជាចំនួនគត់។ ជូនដំណឹងថារកមិនឃើញទិន្នន័យទេ។
getDeviceBootloaderBuildId () ប្រើមុខងារនេះដើម្បីទទួលបាន ID Builder bootloader របស់ឧបករណ៍ bus ដោយ deviceHandle។
Virtual ResultDeviceId nlc::NanoLibAccessor:: (DeviceHandle const deviceHandle)
ឧបករណ៍ ប៉ារ៉ាម៉ែត្រ ចំណុចទាញ ត្រឡប់ ResultString
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ទទួលបាន bootloader build ID សម្រាប់។
ផ្តល់ឈ្មោះឧបករណ៍ជាខ្សែអក្សរ។
rebootDevice () ប្រើមុខងារនេះដើម្បីចាប់ផ្ដើមឧបករណ៍ឡើងវិញដោយ deviceHandle។
Virtual ResultVoid nlc::NanoLibAccessor::rebootDevice (const DeviceHandle deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់លទ្ធផលVoid
បញ្ជាក់ fieldbus ដើម្បីចាប់ផ្ដើមឡើងវិញ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
getDeviceState () ប្រើមុខងារនេះដើម្បីទទួលបានស្ថានភាពជាក់លាក់នៃឧបករណ៍-ពិធីការ។
Virtual ResultString nlc::NanoLibAccessor::getDeviceState (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ Handle
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ទទួលបានរដ្ឋសម្រាប់។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
20
8 ថ្នាក់/អនុគមន៍យោង
ត្រឡប់ ResultString
ផ្តល់ឈ្មោះឧបករណ៍ជាខ្សែអក្សរ។
setDeviceState () ប្រើមុខងារនេះដើម្បីកំណត់ស្ថានភាពជាក់លាក់នៃឧបករណ៍-ពិធីការ។
Virtual ResultVoid nlc::NanoLibAccessor::setDeviceState (const DeviceHandle deviceHandle, const std::string & state)
ប៉ារ៉ាម៉ែត្រឧបករណ៍គ្រប់គ្រងស្ថានភាព
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib កំណត់ស្ថានភាពសម្រាប់។ កំណត់ស្ថានភាពជាក់លាក់នៃឡានក្រុងជាតម្លៃខ្សែអក្សរ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
getConnectionState ()
ប្រើមុខងារនេះដើម្បីទទួលបានស្ថានភាពការតភ្ជាប់ដែលស្គាល់ចុងក្រោយរបស់ឧបករណ៍ជាក់លាក់ដោយ deviceHandle (= Disconnected, Connected, ConnectedBootloader)
Virtual ResultConnectionState nlc::NanoLibAccessor::getConnectionState (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់ ResultConnectionState
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបានស្ថានភាពតភ្ជាប់សម្រាប់អ្វី។
ផ្តល់នូវស្ថានភាពនៃការតភ្ជាប់ (=ផ្តាច់, ភ្ជាប់, ConnectedBootloader) ។
ពិនិត្យស្ថានភាពការតភ្ជាប់ ()
លុះត្រាតែស្ថានភាពដែលស្គាល់ចុងក្រោយមិនត្រូវបានផ្តាច់៖ ប្រើមុខងារនេះដើម្បីពិនិត្យ និងអាចធ្វើបច្ចុប្បន្នភាពស្ថានភាពការតភ្ជាប់របស់ឧបករណ៍ជាក់លាក់មួយដោយឧបករណ៍ Handle និងដោយការសាកល្បងប្រតិបត្តិការជាក់លាក់នៃរបៀបជាច្រើន។
Virtual ResultConnectionState nlc::NanoLibAccessor::checkConnectionState (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់ ResultConnectionState
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ពិនិត្យស្ថានភាពការតភ្ជាប់សម្រាប់។
ផ្តល់ស្ថានភាពការតភ្ជាប់ (= មិនផ្តាច់)។
assignObjectDictionary () ប្រើមុខងារសៀវភៅដៃនេះដើម្បីផ្តល់វចនានុក្រមវត្ថុ (OD) ទៅឧបករណ៍ Handle ដោយខ្លួនឯង។
Virtual ResultObjectDictionary nlc::NanoLibAccessor::assignObjectDictionary (DeviceHandle const deviceHandle, ObjectDictionary const & objectDictionary)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយវត្ថុវចនានុក្រម
ត្រឡប់ ResultObjectDictionary
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ផ្តល់ OD ទៅ។ បង្ហាញលក្ខណៈសម្បត្តិនៃវចនានុក្រមវត្ថុ។
autoAssignObjectDictionary ()
ប្រើស្វ័យប្រវត្តិកម្មនេះដើម្បីអនុញ្ញាតឱ្យ NanoLib កំណត់វចនានុក្រមវត្ថុ (OD) ទៅឧបករណ៍ Handle ។ នៅពេលស្វែងរក និងផ្ទុក OD ដែលសមស្រប NanoLib ផ្តល់វាដោយស្វ័យប្រវត្តិទៅឧបករណ៍។ ចំណាំ៖ ប្រសិនបើ OD ដែលត្រូវគ្នាត្រូវបានផ្ទុករួចហើយនៅក្នុងបណ្ណាល័យវត្ថុនោះ NanoLib នឹងប្រើវាដោយស្វ័យប្រវត្តិដោយមិនចាំបាច់ស្កេនថតដែលបានដាក់ស្នើនោះទេ។
Virtual ResultObjectDictionary nlc::NanoLibAccessor::autoAssignObjectDictionary (DeviceHandle const deviceHandle, const std::string & DictionariesLocationPath)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
21
8 ថ្នាក់/អនុគមន៍យោង
ប៉ារ៉ាម៉ែត្រឧបករណ៍ Handle
ត្រឡប់មកវិញ
វចនានុក្រមLocationPath ResultObjectDictionary
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបនឹងស្កេនដោយស្វ័យប្រវត្តិសម្រាប់ OD ដែលសមរម្យ។ បញ្ជាក់ផ្លូវទៅកាន់ថត OD ។ បង្ហាញលក្ខណៈសម្បត្តិនៃវចនានុក្រមវត្ថុ។
getAssignedObjectDictionary ()
ប្រើមុខងារនេះដើម្បីទទួលបានវចនានុក្រមវត្ថុដែលបានកំណត់ទៅឧបករណ៍ដោយ deviceHandle ។
Virtual ResultObjectDictionary nlc::NanoLibAccessor::getAssignedObjectDictionary (DeviceHandle const device
ចំណុចទាញ)
ឧបករណ៍ ប៉ារ៉ាម៉ែត្រ ដោះស្រាយ ត្រឡប់ ResultObjectDictionary
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបទទួលបាន OD ដែលបានកំណត់សម្រាប់។ បង្ហាញលក្ខណៈសម្បត្តិនៃវចនានុក្រមវត្ថុ។
getObjectDictionaryLibrary () មុខងារនេះត្រឡប់ឯកសារយោង OdLibrary ។
Virtual OdLibrary&nlc::NanoLibAccessor::getObjectDictionaryLibrary ()
ត្រឡប់ OdLibrary&
បើកបណ្ណាល័យ OD ទាំងមូល និងវចនានុក្រមវត្ថុរបស់វា។
setLoggingLevel () ប្រើមុខងារនេះដើម្បីកំណត់កំណត់ហេតុដែលត្រូវការលម្អិត (និងកំណត់ហេតុ file ទំហំ) ។ កម្រិតលំនាំដើមគឺព័ត៌មាន។
និម្មិត void nlc::NanoLibAccessor::setLoggingLevel (កម្រិត LogLevel)
កម្រិតប៉ារ៉ាម៉ែត្រ
ព័ត៌មានលម្អិតនៃកំណត់ហេតុខាងក្រោមអាចធ្វើទៅបាន៖
0 = ដាន 1 = បំបាត់កំហុស 2 = ព័ត៌មាន 3 = ព្រមាន 4 = កំហុស 5 = សំខាន់ 6 = បិទ
កម្រិតទាបបំផុត (កំណត់ហេតុធំបំផុត file); កត់ត្រាព័ត៌មានលម្អិតដែលអាចធ្វើទៅបាន បូករួមទាំងការចាប់ផ្តើម/បញ្ឈប់កម្មវិធី។ កំណត់ហេតុព័ត៌មានបំបាត់កំហុស (= លទ្ធផលបណ្ដោះអាសន្ន មាតិកាដែលបានផ្ញើ ឬទទួល ។ល។) កម្រិតលំនាំដើម; កត់ត្រាសារព័ត៌មាន។ បញ្ហាកំណត់ហេតុដែលបានកើតឡើង ប៉ុន្តែនឹងមិនបញ្ឈប់ក្បួនដោះស្រាយបច្ចុប្បន្នទេ។ កំណត់ហេតុគ្រាន់តែជាបញ្ហាធ្ងន់ធ្ងរដែលបញ្ឈប់ក្បួនដោះស្រាយ។ កម្រិតខ្ពស់បំផុត (កំណត់ហេតុតូចបំផុត។ file); បិទការចូល; មិនមានកំណត់ហេតុទៀតទេ។ គ្មានការកត់ត្រាអ្វីទាំងអស់។
setLoggingCallback ()
ប្រើមុខងារនេះដើម្បីកំណត់ទ្រនិចហៅថយក្រោយកត់ត្រា និងម៉ូឌុលកំណត់ហេតុ (=បណ្ណាល័យ) សម្រាប់ការហៅត្រឡប់នោះ (មិនមែនសម្រាប់អ្នកកាប់ឈើខ្លួនឯងទេ)។
virtual void nlc::NanoLibAccessor::setLoggingCallback (NlcLoggingCallback* callback, const nlc::LogModule & logModule)
ប៉ារ៉ាម៉ែត្រ * ម៉ូឌុលកំណត់ហេតុការហៅត្រឡប់មកវិញ
កំណត់ទ្រនិចហៅត្រឡប់។ លៃតម្រូវការហៅត្រឡប់មកវិញ (មិនមែនអ្នកកាប់ឈើទេ!) ទៅបណ្ណាល័យរបស់អ្នក។
0 = NanolibCore 1 = NanolibCANopen 2 = NanolibModbus 3 = NanolibEtherCAT
បើកដំណើរការការហៅត្រឡប់មកវិញសម្រាប់ស្នូលរបស់ NanoLib ប៉ុណ្ណោះ។ បើកដំណើរការការហៅត្រឡប់មកវិញសម្រាប់តែ CANopen ។ បើកដំណើរការការហៅត្រឡប់មកវិញសម្រាប់តែ Modbus ។ បើកដំណើរការការហៅត្រឡប់មកវិញតែ EtherCAT ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
22
8 ថ្នាក់/អនុគមន៍យោង
4 = NanolibRest 5 = NanolibUSB
បើកដំណើរការការហៅត្រឡប់មកវិញតែ REST ។ បើកដំណើរការការហៅត្រឡប់មកវិញតែ USB ។
unsetLoggingCallback () ប្រើមុខងារនេះដើម្បីលុបចោលទ្រនិចការហៅត្រឡប់ចូលកំណត់ហេតុ។
virtual void nlc::NanoLibAccessor::unsetLoggingCallback ()
readNumber() ប្រើមុខងារនេះដើម្បីអានតម្លៃលេខពីវចនានុក្រមវត្ថុ។
virtual ResultInt nlc::NanoLibAccessor::readNumber (const DeviceHandle deviceHandle, const OdIndex odIndex)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ odIndex
ត្រឡប់ ResultInt
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អានពី។ បញ្ជាក់លិបិក្រម (sub-) ដើម្បីអានពី។ ផ្តល់តម្លៃលេខដែលមិនអាចបកស្រាយបាន (អាចត្រូវបានចុះហត្ថលេខា មិនបានចុះហត្ថលេខា ជួសជុលតម្លៃ 16.16 ប៊ីត)។
readNumberArray() ប្រើមុខងារនេះដើម្បីអានអារេលេខពីវចនានុក្រមវត្ថុ។
virtual ResultArrayInt nlc::NanoLibAccessor::readNumberArray (const DeviceHandle deviceHandle, const uint16_t index)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ សន្ទស្សន៍ចំណុចទាញ
ត្រឡប់ ResultArrayInt
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អានពី។ សន្ទស្សន៍វត្ថុអារេ។ ផ្តល់អារេចំនួនគត់។
readBytes () ប្រើមុខងារនេះដើម្បីអានបៃបៃតាមអំពើចិត្ត (ទិន្នន័យវត្ថុដែន) ពីវចនានុក្រមវត្ថុ។
Virtual ResultArrayByte nlc::NanoLibAccessor::readBytes (const DeviceHandle deviceHandle, const OdIndex odIndex)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ odIndex
ត្រឡប់ ResultArrayByte
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អានពី។ បញ្ជាក់លិបិក្រម (sub-) ដើម្បីអានពី។ ផ្តល់អារេបៃ។
readString() ប្រើមុខងារនេះដើម្បីអានខ្សែអក្សរពីថតវត្ថុ។
Virtual ResultString nlc::NanoLibAccessor::readString (const DeviceHandle deviceHandle, const OdIndex odIndex)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ odIndex
ត្រឡប់ ResultString
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អានពី។ បញ្ជាក់លិបិក្រម (sub-) ដើម្បីអានពី។ ផ្តល់ឈ្មោះឧបករណ៍ជាខ្សែអក្សរ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
23
8 ថ្នាក់/អនុគមន៍យោង
writeNumber () ប្រើអនុគមន៍នេះដើម្បីសរសេរតម្លៃលេខទៅថតវត្ថុ។
Virtual ResultVoid nlc::NanoLibAccessor::writeNumber (const DeviceHandle deviceHandle, តម្លៃ int64_t, const OdIndex odIndex, unsigned int bitLength)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយតម្លៃ odIndex bitLength
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib សរសេរទៅ។ តម្លៃដែលមិនអាចបកស្រាយបាន (អាចត្រូវបានចុះហត្ថលេខា មិនបានចុះហត្ថលេខា ជួសជុល 16.16) ។ បញ្ជាក់លិបិក្រម (sub-) ដើម្បីអានពី។ ប្រវែងបន្តិច។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
writeBytes () ប្រើមុខងារនេះដើម្បីសរសេរ bytes បំពាន (ទិន្នន័យវត្ថុដែន) ទៅថតវត្ថុ។
Virtual ResultVoid nlc::NanoLibAccessor::writeBytes (const DeviceHandle deviceHandle, const std::vector & ទិន្នន័យ const OdIndex odIndex)
ប៉ារ៉ាម៉ែត្រឧបករណ៍គ្រប់គ្រងទិន្នន័យ odIndex
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib សរសេរទៅ។ បៃវ៉ិចទ័រ / អារេ។ បញ្ជាក់លិបិក្រម (sub-) ដើម្បីអានពី។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
ផ្ទុកឡើងកម្មវិធីបង្កប់ ()
ប្រើមុខងារនេះដើម្បីធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់ឧបករណ៍បញ្ជារបស់អ្នក។
virtual ResultVoid nlc::NanoLibAccessor::uploadFirmware (const DeviceHandle deviceHandle, const std::vector & fwData, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ fwData NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អាប់ដេត។ អារេដែលមានទិន្នន័យកម្មវិធីបង្កប់។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
ផ្ទុកឡើងកម្មវិធីបង្កប់ពីFile ()
ប្រើមុខងារនេះដើម្បីធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់ឧបករណ៍បញ្ជារបស់អ្នកដោយការបង្ហោះរបស់វា។ file.
Virtual ResultVoid nlc::NanoLibAccessor::uploadFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & absoluteFileផ្លូវ, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍គ្រប់គ្រងដាច់ខាតFileផ្លូវ NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អាប់ដេត។ ផ្លូវទៅ file មានទិន្នន័យកម្មវិធីបង្កប់ (std::string)។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
24
8 ថ្នាក់/អនុគមន៍យោង
uploadBootloader ()
ប្រើមុខងារនេះដើម្បីធ្វើបច្ចុប្បន្នភាពកម្មវិធីចាប់ផ្ដើមឧបករណ៍បញ្ជារបស់អ្នក។
virtual ResultVoid nlc::NanoLibAccessor::uploadBootloader (const DeviceHandle deviceHandle, const std::vector & btData, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ btData NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អាប់ដេត។ អារេដែលមានទិន្នន័យកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធ។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
uploadBootloaderFromFile ()
ប្រើមុខងារនេះដើម្បីធ្វើបច្ចុប្បន្នភាពកម្មវិធីចាប់ផ្ដើមឧបករណ៍បញ្ជារបស់អ្នកដោយការបង្ហោះរបស់វា។ file.
Virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileផ្លូវ, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ bootloaderAbsoluteFileផ្លូវ NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អាប់ដេត។ ផ្លូវទៅ file មានទិន្នន័យកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធ (std::string)។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
uploadBootloaderFirmware ()
ប្រើមុខងារនេះដើម្បីធ្វើបច្ចុប្បន្នភាពកម្មវិធីគ្រប់គ្រងកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធ និងកម្មវិធីបង្កប់របស់អ្នក។
Virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmware (const DeviceHandle deviceHandle, const std::vector & btData, const std:: វ៉ិចទ័រ & fwData, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ btData fwData NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អាប់ដេត។ អារេដែលមានទិន្នន័យកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធ។ អារេដែលមានទិន្នន័យកម្មវិធីបង្កប់។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
uploadBootloaderFirmwareFromFile ()
ប្រើមុខងារនេះដើម្បីធ្វើបច្ចុប្បន្នភាពកម្មវិធីបញ្ជាចាប់ផ្ដើម និងកម្មវិធីបង្កប់របស់អ្នកដោយផ្ទុកឡើង files.
Virtual ResultVoid nlc::NanoLibAccessor::uploadBootloaderFirmwareFromFile (const DeviceHandle deviceHandle, const std::string & bootloaderAbsoluteFileផ្លូវ, const std::string & absoluteFileផ្លូវ, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ bootloaderAbsoluteFileផ្លូវដាច់ខាតFileផ្លូវ NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib អាប់ដេត។ ផ្លូវទៅ file មានទិន្នន័យកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធ (std::string)។ ផ្លូវទៅ file មានទិន្នន័យកម្មវិធីបង្កប់ (uint8_t) ។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
25
8 ថ្នាក់/អនុគមន៍យោង
បង្ហោះNanoJ ()
ប្រើមុខងារសាធារណៈនេះ ដើម្បីអាប់ដេតកម្មវិធី NanoJ ទៅកាន់ឧបករណ៍បញ្ជារបស់អ្នក។
Virtual ResultVoid nlc::NanoLibAccessor::uploadNanoJ (DeviceHandle const deviceHandle, std::vector const & vmmData, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍ដោះស្រាយ vmmData NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib បង្ហោះទៅ។ អារេដែលមានទិន្នន័យ NanoJ ។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
ផ្ទុកឡើងNanoJFromFile ()
ប្រើមុខងារសាធារណៈនេះដើម្បីអាប់ដេតកម្មវិធី NanoJ ទៅកាន់ឧបករណ៍បញ្ជារបស់អ្នកដោយផ្ទុកឡើង file.
Virtual ResultVoid nlc::NanoLibAccessor::uploadNanoJFromFile (const DeviceHandle deviceHandle, const std::string & absoluteFileផ្លូវ, NlcDataTransferCallback* callback)
ប៉ារ៉ាម៉ែត្រឧបករណ៍គ្រប់គ្រងដាច់ខាតFileផ្លូវ NlcDataTransferCallback
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib បង្ហោះទៅ។ ផ្លូវទៅ file មានទិន្នន័យ NanoJ (std::string)។ កម្មវិធីតាមដានវឌ្ឍនភាពទិន្នន័យ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
disconnectDevice () ប្រើមុខងារនេះដើម្បីផ្តាច់ឧបករណ៍របស់អ្នកដោយ deviceHandle។
Virtual ResultVoid nlc::NanoLibAccessor::disconnectDevice (DeviceHandle const deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់លទ្ធផលVoid
បញ្ជាក់អ្វីដែលឧបករណ៍ឡានក្រុង NanoLib ផ្តាច់ចេញពី។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
removeDevice () ប្រើមុខងារនេះដើម្បីលុបឧបករណ៍របស់អ្នកចេញពីបញ្ជីឧបករណ៍ខាងក្នុងរបស់ NanoLib ។
Virtual ResultVoid nlc::NanoLibAccessor::removeDevice (const DeviceHandle deviceHandle)
ប៉ារ៉ាម៉ែត្រឧបករណ៍Handle ត្រឡប់លទ្ធផលVoid
បញ្ជាក់ថាតើឧបករណ៍ឡានក្រុងណាណូលីបលុបឈ្មោះអ្វី។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
closeBusHardware () ប្រើមុខងារនេះដើម្បីផ្តាច់ចេញពីផ្នែករឹង fieldbus របស់អ្នក។
Virtual ResultVoid nlc::NanoLibAccessor::closeBusHardware (BusHardwareId const & busHwId)
ប៉ារ៉ាម៉ែត្រ busHwId ត្រឡប់ ResultVoid
បញ្ជាក់ fieldbus ដើម្បីផ្តាច់ពី។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
26
8 ថ្នាក់/អនុគមន៍យោង
8.2 BusHardwareId
ប្រើថ្នាក់នេះដើម្បីកំណត់អត្តសញ្ញាណផ្នែករឹងរបស់រថយន្តក្រុងមួយទល់នឹងមួយ ឬដើម្បីសម្គាល់ផ្នែករឹងរថយន្តក្រុងផ្សេងៗគ្នាពីគ្នាទៅវិញទៅមក។ ថ្នាក់នេះ (ដោយគ្មានមុខងារ setter មិនអាចផ្លាស់ប្តូរបានពីការបង្កើតនៅលើ) ក៏ផ្ទុកព័ត៌មានអំពី៖
ផ្នែករឹង (= ឈ្មោះអាដាប់ទ័រ អាដាប់ទ័របណ្តាញ។ល។) ពិធីការដែលត្រូវប្រើ (= Modbus TCP, CANopen ។
អាសយដ្ឋាន ល។ )
BusHardwareId () [1/3] អ្នកសាងសង់ដែលបង្កើតវត្ថុលេខសម្គាល់ផ្នែករឹងឡានក្រុងថ្មី។
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & name_)
ប៉ារ៉ាម៉ែត្រ busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
ប្រភេទ Hardware (= ZK-USB-CAN-1 ។ល។) ពិធីការទំនាក់ទំនងឡានក្រុង (= CANopen ។ល។) អ្នកបញ្ជាក់ផ្នែករឹង (= COM3 ។ល។)។ ការបញ្ជាក់បន្ថែមនៃផ្នែករឹង (និយាយ ពត៌មានទីតាំង USB)។ ឈ្មោះមិត្តភាព (= AdapterName (Port) ។ល។ )។
BusHardwareId () [2/3] Constructor ដែលបង្កើតវត្ថុ ID hardware bus ថ្មី ជាមួយនឹងជម្រើសសម្រាប់ hardware speicifier បន្ថែម។
nlc::BusHardwareId::BusHardwareId (std::string const & busHardware_, std::string const & protocol_, std::string const & hardwareSpecifier_, std::string const & extraHardwareSpecifier_, std::string const & name_)
ប៉ារ៉ាម៉ែត្រ busHardware_ protocol_ hardwareSpecifier_ extraHardwareSpecifier_ name_
ប្រភេទ Hardware (= ZK-USB-CAN-1 ។ល។) ពិធីការទំនាក់ទំនងឡានក្រុង (= CANopen ។ល។) អ្នកបញ្ជាក់ផ្នែករឹង (= COM3 ។ល។)។ ការបញ្ជាក់បន្ថែមនៃផ្នែករឹង (និយាយ ពត៌មានទីតាំង USB)។ ឈ្មោះមិត្តភាព (= AdapterName (Port) ។ល។ )។
BusHardwareId () [3/3] Constructor ដែលចម្លង busHardwareId ដែលមានស្រាប់។
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
nlc::BusHardwareId::BusHardwareId (BusHardwareId const &)
ប៉ារ៉ាម៉ែត្រ busHardwareId
ដាក់ឈ្មោះលេខសម្គាល់ផ្នែករឹងឡានក្រុង ដើម្បីចម្លងពី។
ស្មើ () ប្រៀបធៀបលេខសម្គាល់ផ្នែករឹងឡានក្រុងថ្មីទៅនឹងលេខសម្គាល់ដែលមានស្រាប់។
bool nlc::BusHardwareId::equals (BusHardwareId const & other) const
ប៉ារ៉ាម៉ែត្រផ្សេងទៀត ត្រឡប់ពិត
វត្ថុមួយទៀតនៃថ្នាក់ដូចគ្នា។ ប្រសិនបើតម្លៃទាំងពីរស្មើគ្នា។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
27
8 ថ្នាក់/អនុគមន៍យោង
មិនពិត
ប្រសិនបើតម្លៃខុសគ្នា។
getBusHardware () អានខ្សែអក្សរផ្នែករឹងរបស់ឡានក្រុង។
std::string nlc::BusHardwareId::getBusHardware () const
ត្រឡប់ខ្សែអក្សរ
getHardwareSpecifier () អានខ្សែអក្សរបញ្ជាក់របស់ផ្នែករឹងឡានក្រុង (= ឈ្មោះបណ្តាញ។ល។)។
std::string nlc::BusHardwareId::getHardwareSpecifier () const
ត្រឡប់ខ្សែអក្សរ
getExtraHardwareSpecifier () អានខ្សែអក្សរបញ្ជាក់បន្ថែមនៃផ្នែករឹងរបស់រថយន្តក្រុង (=អាសយដ្ឋាន MAC ។ល។)។
std::string nlc::BusHardwareId::getExtraHardwareSpecifier () const
ត្រឡប់ខ្សែអក្សរ
getName () អានឈ្មោះដែលងាយស្រួលប្រើរបស់ផ្នែករឹងឡានក្រុង។
std::string nlc::BusHardwareId::getName () const
ត្រឡប់ខ្សែអក្សរ
getProtocol () អានខ្សែអក្សរពិធីការឡានក្រុង។
std::string nlc::BusHardwareId::getProtocol () const
ត្រឡប់ខ្សែអក្សរ
toString () ត្រឡប់លេខសម្គាល់ផ្នែករឹងរបស់រថយន្តក្រុងជាខ្សែអក្សរ។
std::string nlc::BusHardwareId::toString() const
ត្រឡប់ខ្សែអក្សរ
8.3 ជម្រើស BusHardware
ស្វែងរកនៅក្នុងថ្នាក់នេះ នៅក្នុងបញ្ជីតម្លៃគន្លឹះនៃខ្សែអក្សរ ជម្រើសទាំងអស់ដែលត្រូវការដើម្បីបើកផ្នែករឹងឡានក្រុង។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
28
8 ថ្នាក់/អនុគមន៍យោង
BusHardwareOptions () [1/2] សាងសង់វត្ថុជម្រើសផ្នែករឹងឡានក្រុងថ្មី។
nlc::BusHardwareOptions::BusHardwareOptions () ប្រើមុខងារ addOption () ដើម្បីបន្ថែមគូ key-value ។
BusHardwareOptions () [2/2] សាងសង់វត្ថុជម្រើសផ្នែករឹងឡានក្រុងថ្មីមួយជាមួយនឹងផែនទីតម្លៃសោដែលមានរួចហើយ។
nlc::BusHardwareOptions::BusHardwareOptions (std::map const & ជម្រើស)
ជម្រើសប៉ារ៉ាម៉ែត្រ
ផែនទីដែលមានជម្រើសសម្រាប់ផ្នែករឹងឡានក្រុងដើម្បីដំណើរការ។
addOption () បង្កើតកូនសោបន្ថែម និងតម្លៃ។
void nlc::BusHardwareOptions::addOption (std::string const & key, std::string const & value)
តម្លៃគន្លឹះប៉ារ៉ាម៉ែត្រ
Example៖ BAUD_RATE_OPTIONS_NAME សូមមើល bus_hw_options_ លំនាំដើម
Example៖ BAUD_RATE_1000K សូមមើល bus_hw_options_defaults
equals () ប្រៀបធៀប BusHardwareOptions ទៅនឹងជម្រើសដែលមានស្រាប់។
bool nlc::BusHardwareOptions::equals (BusHardwareOptions const & other) const
ប៉ារ៉ាម៉ែត្រផ្សេងទៀត ត្រឡប់ពិត
មិនពិត
វត្ថុមួយទៀតនៃថ្នាក់ដូចគ្នា។ ប្រសិនបើវត្ថុផ្សេងទៀតមានជម្រើសដូចគ្នាទាំងអស់។ ប្រសិនបើវត្ថុផ្សេងទៀតមានសោ ឬតម្លៃផ្សេងគ្នា។
getOptions () អានគូតម្លៃគ្រាប់ចុចបន្ថែមទាំងអស់។
std:: ផែនទី nlc::BusHardwareOptions::getOptions () const
ត្រឡប់ផែនទីខ្សែអក្សរ
toString() ត្រឡប់គ្រាប់ចុច/តម្លៃទាំងអស់ជាខ្សែអក្សរ។
std::string nlc::BusHardwareId::toString() const
ត្រឡប់ខ្សែអក្សរ
8.4 BusHwOptionsDefault
ថ្នាក់ជម្រើសនៃការកំណត់រចនាសម្ព័ន្ធលំនាំដើមនេះមានគុណលក្ខណៈសាធារណៈដូចខាងក្រោម៖
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
29
8 ថ្នាក់/អនុគមន៍យោង
const CanBus const Serial const RESTfulBus const EtherCATBus
canBus = CanBus () សៀរៀល = សៀរៀល () restfulBus = RESTfulBus() ethercatBus = EtherCATBus()
8.5 CanBaudRate
រចនាសម្ព័ន្ធដែលមាន CAN bus baudrates ក្នុងលក្ខណៈសាធារណៈខាងក្រោម៖
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”_100KRATE” 100k” BAUD_RATE_50K = “50k” BAUD_RATE_20K = “20k” BAUD_RATE_10K = “10k”
8.6 CanBus
ថ្នាក់ជម្រើសនៃការកំណត់រចនាសម្ព័ន្ធលំនាំដើមជាមួយនឹងគុណលក្ខណៈសាធារណៈខាងក្រោម៖
const std::string const CanBaudRate const Ixxat
BAUD_RATE_OPTIONS_NAME = “អាចអត្រា baud អាដាប់ទ័រ” baudRate = CanBaudRate () ixxat = Ixxat ()
8.7 CanOpenNmtService
សម្រាប់សេវាកម្ម NMT រចនាសម្ព័ន្ធនេះមានរដ្ឋ CANopen NMT ជាតម្លៃខ្សែអក្សរនៅក្នុងគុណលក្ខណៈសាធារណៈខាងក្រោម៖
const std::string const std::string const std::string const std::string const std::string
START = “START” STOP = “STOP” PRE_OPERATIONAL = “PRE_OPERATIONAL” កំណត់ឡើងវិញ = “កំណត់ឡើងវិញ” RESET_COMMUNICATION = “RESET_COMMUNICATION”
8.8 CanOpenNmtState
រចនាសម្ព័ន្ធនេះមានរដ្ឋ CANopen NMT ជាតម្លៃខ្សែអក្សរនៅក្នុងគុណលក្ខណៈសាធារណៈខាងក្រោម៖
const std::string const std::string const std::string const std::string const std::string
STOPPED = “STOPPED” PRE_OPERATIONAL = “PRE_OPERATIONAL” OPERATIONAL = “OperATIONAL” INITIALIZATION = “INITIALIZATION” មិនស្គាល់ = “មិនស្គាល់”
8.9 រចនាសម្ព័ន្ធ EtherCATBus
រចនាសម្ព័ន្ធនេះមានជម្រើសកំណត់រចនាសម្ព័ន្ធទំនាក់ទំនង EtherCAT នៅក្នុងលក្ខណៈសាធារណៈខាងក្រោម៖
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
30
8 ថ្នាក់/អនុគមន៍យោង
const std::string NETWORK_FIRMWARE_STATE_OP- ស្ថានភាពបណ្តាញត្រូវបានចាត់ទុកជារបៀបកម្មវិធីបង្កប់។ អាចទទួលយកបាន។
TION_NAME = “ស្ថានភាពកម្មវិធីបង្កប់បណ្តាញ”
តម្លៃ (លំនាំដើម = PRE_OPERATIONAL)៖
EtherCATSstate::PRE_OPERATIONAL EtherCATSstate::SAFE_OPERATIONAL EtherCATSstate::OPERATIONAL
const std::string DEFAULT_NETWORK_FIRMWARE_ STATE = “PRE_OPERATIONAL”
const std::string EXCLUSIVE_LOCK_TIMEOUT_OP- អស់ពេលគិតជាមិល្លីវិនាទី ដើម្បីទទួលបានការចាក់សោផ្តាច់មុខនៅលើ
TION_NAME = “ការអស់ពេលនៃការចាក់សោដែលបានចែករំលែក”
បណ្តាញ (លំនាំដើម = 500 ms) ។
const unsigned int DEFAULT_EXCLUSIVE_LOCK_ TIMEOUT = “500”
const std::string SHARED_LOCK_TIMEOUT_OPTION_ អស់ពេលគិតជាមិល្លីវិនាទី ដើម្បីទទួលបានការចាក់សោដែលបានចែករំលែកនៅលើ
NAME = “ការអស់ពេលនៃការចាក់សោដែលបានចែករំលែក”
បណ្តាញ (លំនាំដើម = 250 ms) ។
const unsigned int DEFAULT_SHARED_LOCK_TIMEOUT = “250”
const std::string READ_TIMEOUT_OPTION_NAME =អស់ពេលគិតជាមិល្លីវិនាទីសម្រាប់ប្រតិបត្តិការអាន (លំនាំដើម
“អស់ពេលអាន”
= 700 ms) ។
const unsigned int DEFAULT_READ_TIMEOUT = “700”
const std::string WRITE_TIMEOUT_OPTION_NAME =អស់ពេលគិតជាមិល្លីវិនាទីសម្រាប់ប្រតិបត្តិការសរសេរ (លំនាំដើម
“សរសេរអស់ពេល”
= 200 ms) ។
const unsigned int DEFAULT_WRITE_TIMEOUT = “200”
const std::string READ_WRITE_ATTEMPTS_OPTION_ ការព្យាយាមអាន ឬសរសេរអតិបរមា (តម្លៃមិនមែនសូន្យ
NAME = “ការព្យាយាមអាន/សរសេរ”
តែប៉ុណ្ណោះ; លំនាំដើម = 5) ។
const unsigned int DEFAULT_READ_WRITE_ATTEMPTS = “5”
const std::string CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME = “ផ្លាស់ប្តូរការប៉ុនប៉ងរដ្ឋបណ្តាញ”
ចំនួនអតិបរមានៃការព្យាយាមផ្លាស់ប្តូរស្ថានភាពបណ្តាញ (តម្លៃមិនមែនសូន្យតែប៉ុណ្ណោះ; លំនាំដើម = 10) ។
const unsigned int DEFAULT_CHANGE_NETWORK_ STATE_ATTEMPTS = “10”
const std::string PDO_IO_ENABLED_OPTION_NAME បើក ឬបិទដំណើរការ PDO សម្រាប់ឌីជីថល in- /
= "PDO IO បានបើកដំណើរការ"
លទ្ធផល ("ពិត" ឬ "មិនពិត" តែប៉ុណ្ណោះ; លំនាំដើម = "ពិត") ។
const std::string DEFAULT_PDO_IO_ENABLED = “ពិត”
8.10 រចនាសម្ព័ន្ធ EtherCATSstate
រចនាសម្ព័ន្ធនេះមាន EtherCAT slave / network states ជាតម្លៃខ្សែអក្សរនៅក្នុងគុណលក្ខណៈសាធារណៈខាងក្រោម។ ចំណាំ៖ ស្ថានភាពលំនាំដើមនៅពេលបើកគឺ PRE_OPERATIONAL; NanoLib អាចផ្តល់នូវស្ថានភាព "OPERATIONAL" ដែលអាចជឿទុកចិត្តបាននៅក្នុងប្រព័ន្ធប្រតិបត្តិការដែលមិនមែនជាពេលវេលាជាក់ស្តែង៖
const std::string const std::string const std::string const std::string const std::string const std::string
គ្មាន = “គ្មាន” INIT = “INIT” PRE_OPERATIONAL = “PRE_OPERATIONAL” BOOT = “BOOT” SAFE_OPERATIONAL = “SAFE_OPERATIONAL” OPERATIONAL = “OPERATIONAL”
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
31
8 ថ្នាក់/អនុគមន៍យោង
8.11 Ixxat
រចនាសម្ព័ន្ធនេះផ្ទុកព័ត៌មានទាំងអស់សម្រាប់ Ixxat usb-to-can ក្នុងលក្ខណៈសាធារណៈខាងក្រោម៖
const std:: ខ្សែអក្សរ
ADAPTER_BUS_NUMBER_OPTIONS_NAME = “លេខឡានក្រុងអាដាប់ទ័រ ixxat”
const IxxatAdapterBusNumber អាដាប់ធ័រBusNumber = IxxatAdapterBusNumber ()
8.12 IxxatAdapterBusNumber
រចនាសម្ព័ន្ធនេះផ្ទុកលេខឡានក្រុងសម្រាប់ Ixxat usb-to-can ក្នុងលក្ខណៈសាធារណៈខាងក្រោម៖
const std::string const std::string const std::string const std::string
BUS_NUMBER_0_DEFAULT = “0” BUS_NUMBER_1 = “1” BUS_NUMBER_2 = “2” BUS_NUMBER_3 = “3”
កំពូលភ្នំឆ្នាំ ២០១៧
រចនាសម្ព័ន្ធនេះផ្ទុកព័ត៌មានទាំងអស់សម្រាប់ Peak usb-to-can ក្នុងលក្ខណៈសាធារណៈខាងក្រោម៖
const std:: ខ្សែអក្សរ
ADAPTER_BUS_NUMBER_OPTIONS_NAME = “លេខរថយន្តក្រុងអាដាប់ធ័រខ្ពស់បំផុត”
const PeakAdapterBusNumber អាដាប់ធ័រBusNumber = PeakAdapterBusNumber ()
8.14 PeakAdapterBusNumber
រចនាសម្ព័ន្ធនេះរក្សាលេខឡានក្រុងសម្រាប់ Peak usb-to-can ក្នុងលក្ខណៈសាធារណៈខាងក្រោម៖
const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std::string const std:
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_USBBUS_4) (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::toBB_string (PCAN_NUMBER_9US) (PCAN_USBBUS9) BUS_NUMBER_10 = std::to_string (PCAN_USBBUS10) BUS_NUMBER_11 = std::to_string (PCAN_USBBUS11) BUS_NUMBER_12 = std::to_string (PCAN_USBBUS12) BUS_NUMBER_13 =std:13_USBB_14 =stringPCAN_USBBUS14 std::to_string (PCAN_USBBUS15) BUS_NUMBER_15 = std::to_string (PCAN_USBBUS16)
8.15 ចំណុចទាញឧបករណ៍
ថ្នាក់នេះតំណាងឱ្យចំណុចទាញសម្រាប់គ្រប់គ្រងឧបករណ៍នៅលើឡានក្រុង និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម។
DeviceHandle () DeviceHandle (ចំណុចទាញ uint32_t)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
32
8 ថ្នាក់/អនុគមន៍យោង
ស្មើ () ប្រៀបធៀបខ្លួនវាទៅនឹងចំណុចទាញឧបករណ៍ដែលបានផ្តល់ឱ្យ។
bool ស្មើ (DeviceHandle const other) const (uint32_t handle)
toString() ត្រឡប់តំណាងខ្សែអក្សរនៃចំណុចទាញឧបករណ៍។
std::string toString() const
get () ត្រឡប់ចំណុចទាញឧបករណ៍។
uint32_t ទទួលបាន () const
8.16 លេខសម្គាល់ឧបករណ៍
ប្រើថ្នាក់នេះ (មិនអាចផ្លាស់ប្តូរពីការបង្កើតនៅលើ) ដើម្បីកំណត់អត្តសញ្ញាណ និងបែងចែកឧបករណ៍នៅលើឡានក្រុង៖
គ្រឿងសម្គាល់អាដាប់ទ័រផ្នែករឹង
ឧបករណ៍កំណត់អត្តសញ្ញាណ
ការពិពណ៌នា
អត្ថន័យនៃលេខសម្គាល់ឧបករណ៍/តម្លៃការពិពណ៌នាអាស្រ័យលើឡានក្រុង។ សម្រាប់អតីតampដូច្នេះ ឡានក្រុង CAN អាចប្រើលេខសម្គាល់ចំនួនគត់។
DeviceId () [1/3] សាងសង់វត្ថុលេខសម្គាល់ឧបករណ៍ថ្មី។
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId_, unsigned int deviceId_, std::string const & description_)
ប៉ារ៉ាម៉ែត្រ busHardwareId_ deviceId_ description_
អត្តសញ្ញាណនៃឡានក្រុង។ សន្ទស្សន៍; Subject to bus (= CANopen node ID ។ល។)។ ការពិពណ៌នា (អាចទទេ); ប្រធានបទនៃឡានក្រុង។
DeviceId () [2/3] បង្កើតវត្ថុលេខសម្គាល់ឧបករណ៍ថ្មីជាមួយនឹងជម្រើសលេខសម្គាល់បន្ថែម។
nlc::DeviceId::DeviceId (BusHardwareId const & busHardwareId, unsigned int deviceId_, std::string const & description_ std::vector const & extraId_, std::string const & extraStringId_)
ប៉ារ៉ាម៉ែត្រ busHardwareId_ deviceId_ description_ extraId_ extraStringId_
អត្តសញ្ញាណនៃឡានក្រុង។ សន្ទស្សន៍; Subject to bus (= CANopen node ID ។ល។)។ ការពិពណ៌នា (អាចទទេ); ប្រធានបទនៃឡានក្រុង។ លេខសម្គាល់បន្ថែម (អាចទទេ); អត្ថន័យគឺអាស្រ័យលើឡានក្រុង។ លេខសម្គាល់ខ្សែអក្សរបន្ថែម (អាចទទេ); អត្ថន័យគឺអាស្រ័យលើឡានក្រុង។
DeviceId () [3/3] បង្កើតច្បាប់ចម្លងនៃវត្ថុលេខសម្គាល់ឧបករណ៍។
nlc::DeviceId::DeviceId (DeviceId const &)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
33
8 ថ្នាក់/អនុគមន៍យោង
ប៉ារ៉ាម៉ែត្រ deviceId_
លេខសម្គាល់ឧបករណ៍ដែលត្រូវចម្លងពី។
equals () ប្រៀបធៀបថ្មីទៅនឹងវត្ថុដែលមានស្រាប់។
bool nlc::DeviceId::equals (DeviceId const & other) const
ត្រឡប់ប៊ូលីន
getBusHardwareId () អានលេខសម្គាល់ផ្នែករឹងរបស់រថយន្តក្រុង។
BusHardwareId nlc::DeviceId::getBusHardwareId () const
ត្រឡប់ BusHardwareId
getDescription () អានការពិពណ៌នាឧបករណ៍ (ប្រហែលជាមិនប្រើ)។
std::string nlc::DeviceId::getDescription () const
ត្រឡប់ខ្សែអក្សរ
getDeviceId () អានលេខសម្គាល់ឧបករណ៍ (ប្រហែលជាមិនប្រើ)។
unsigned int nlc::DeviceId::getDeviceId () const
ត្រឡប់ int ដែលមិនបានចុះហត្ថលេខា
toString() ត្រឡប់វត្ថុជាខ្សែអក្សរ។
std::string nlc::DeviceId::toString() const
ត្រឡប់ខ្សែអក្សរ
getExtraId () អានលេខសម្គាល់បន្ថែមរបស់ឧបករណ៍ (អាចនឹងមិនប្រើ)។
const std :: វ៉ិចទ័រ &getExtraId () const
ត្រឡប់វ៉ិចទ័រ
វ៉ិចទ័រនៃលេខសម្គាល់បន្ថែម (អាចទទេ); អត្ថន័យគឺអាស្រ័យលើឡានក្រុង។
getExtraStringId () អានលេខសម្គាល់ខ្សែអក្សរបន្ថែមរបស់ឧបករណ៍ (អាចនឹងមិនប្រើ)។
std::string getExtraStringId () const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
34
8 ថ្នាក់/អនុគមន៍យោង
ត្រឡប់ខ្សែអក្សរ
លេខសម្គាល់ខ្សែអក្សរបន្ថែម (អាចទទេ); អត្ថន័យគឺអាស្រ័យលើឡានក្រុង។
8.17 LogLevelConverter
ថ្នាក់នេះត្រឡប់កម្រិតកំណត់ហេតុរបស់អ្នកជាខ្សែអក្សរ។ static std::string toString (nlc::LogLevel logLevel)
8.18 LogModuleConverter
ថ្នាក់នេះត្រឡប់ម៉ូឌុលកំណត់ហេតុជាក់លាក់នៃបណ្ណាល័យរបស់អ្នក setLoggingLevel () ជាខ្សែអក្សរ។
ឋិតិវន្ត std:: ខ្សែអក្សរ
toString (nlc::LogModule logModule)
static std::string toString (nlc::LogModule logModule)
៦.១៦ វចនានុក្រមវត្ថុ
ថ្នាក់នេះតំណាងឱ្យវចនានុក្រមវត្ថុរបស់ឧបករណ៍បញ្ជា និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖ getDeviceHandle ()
និម្មិត ResultDeviceHandle getDeviceHandle () const ត្រឡប់ ResultDeviceHandle
getObject () និម្មិត ResultObjectSubEntry getObject (OdIndex const odIndex) ត្រឡប់ ResultObjectSubEntry
getObjectEntry () លទ្ធផលនិម្មិតObjectEntry getObjectEntry (សន្ទស្សន៍ uint16_t)
ត្រឡប់ ResultObjectEntry
ជូនដំណឹងអំពីលក្ខណៈសម្បត្តិរបស់វត្ថុមួយ។
getXmlFileឈ្មោះ () និម្មិត ResultString getXmlFileឈ្មោះ () const
ត្រឡប់ ResultString
ត្រឡប់ XML file ដាក់ឈ្មោះជាខ្សែអក្សរ។
readNumber () virtual ResultInt readNumber (OdIndex const odIndex) ត្រឡប់ ResultInt
readNumberArray () virtual ResultArrayInt readNumberArray (uint16_t const index)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
35
8 ថ្នាក់/អនុគមន៍យោង
ត្រឡប់លទ្ធផលArrayInt readString ()
លទ្ធផលនិម្មិត readString (OdIndex const odIndex) ត្រឡប់ ResultString readBytes () virtual ResultArrayByte readBytes (OdIndex const odIndex) ត្រឡប់ ResultArrayByte writeNumber () និម្មិត ResultVoid writeNumber (OdIndex const odIndex, const Result) លទ្ធផល int64_ytes writeBytes (OdIndex const OdIndex, std::vector
const & data) ត្រឡប់ ResultVoid តំណភ្ជាប់ដែលទាក់ទង OdIndex
8.20 ការចូលវត្ថុ
ថ្នាក់នេះតំណាងឱ្យធាតុធាតុនៃវចនានុក្រមវត្ថុ មានគុណលក្ខណៈការពារឋិតិវន្តខាងក្រោម និងមុខងារសមាជិកសាធារណៈ៖
static nlc::ObjectSubEntry invalidObject
getName() អានឈ្មោះរបស់វត្ថុជាខ្សែអក្សរ។
virtual std::string getName() const
getPrivate() ពិនិត្យមើលថាតើវត្ថុឯកជនឬអត់។
ប៊ូលនិម្មិត getPrivate() const
getIndex () អានអាសយដ្ឋាននៃសន្ទស្សន៍វត្ថុ។
និម្មិត uint16_t getIndex () const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
36
8 ថ្នាក់/អនុគមន៍យោង
getDataType () អានប្រភេទទិន្នន័យរបស់វត្ថុ។
virtual nlc::ObjectEntryDataType getDataType () const
getObjectCode () អានកូដវត្ថុ៖
Null Deftype Defstruct Var Array Record
0x00 0x05 0x06 0x07 0x08 0x09
nlc និម្មិត::ObjectCode getObjectCode () const
getObjectSaveable () ពិនិត្យមើលថាតើវត្ថុនោះអាចរក្សាទុកបានឬអត់ ហើយវាជាប្រភេទរបស់វា (សូមមើលសៀវភៅណែនាំផលិតផលសម្រាប់ព័ត៌មានលម្អិត)៖ APPLICATION, COMMUNICATION, DRIVE, MISC_CONFIG, MODBUS_RTU, NO, TUNING, CUSTOMER, ETHERNET, CANOPEN, VERIFY1020, UNKNOWN_SAVE
virtual nlc::ObjectSaveable getObjectSaveable () const
getMaxSubIndex () អានចំនួននៃ subindices ដែលគាំទ្រដោយវត្ថុនេះ។
និម្មិត uint8_t getMaxSubIndex () const
getSubEntry () virtual nlc::ObjectSubEntry & getSubEntry (uint8_t subIndex)
សូមមើល ObjectSubEntry ផងដែរ។
8.21 ObjectSubEntry
ថ្នាក់នេះតំណាងឱ្យធាតុរងវត្ថុ (សន្ទស្សន៍រង) នៃវចនានុក្រមវត្ថុ ហើយមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getName() អានឈ្មោះរបស់វត្ថុជាខ្សែអក្សរ។
virtual std::string getName() const
getSubIndex () អានអាសយដ្ឋាននៃសន្ទស្សន៍រង។
និម្មិត uint8_t getSubIndex () const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
37
8 ថ្នាក់/អនុគមន៍យោង
getDataType () អានប្រភេទទិន្នន័យរបស់វត្ថុ។
virtual nlc::ObjectEntryDataType getDataType () const
getSdoAccess () ពិនិត្យមើលថាតើសន្ទស្សន៍រងអាចចូលប្រើបានតាមរយៈ SDO៖
អានតែប៉ុណ្ណោះ
1
សរសេរតែប៉ុណ្ណោះ
2
អានសរសេរ
3
គ្មានការចូលប្រើ
0
nlc និម្មិត ::ObjectSdoAccessAttribute getSdoAccess () const
getPdoAccess () ពិនិត្យមើលថាតើលិបិក្រមរងអាចចូលប្រើបាន ឬអាចធ្វើផែនទីតាមរយៈ PDO៖
Tx
1
Rx
2
TxRx
3
ទេ
0
nlc និម្មិត ::ObjectPdoAccessAttribute getPdoAccess () const
getBitLength () ពិនិត្យប្រវែងលិបិក្រមរង។
និម្មិត uint32_t getBitLength () const
getDefaultValueAsNumeric () អានតម្លៃលំនាំដើមនៃសន្ទស្សន៍រងសម្រាប់ប្រភេទទិន្នន័យជាលេខ។
Virtual ResultInt getDefaultValueAsNumeric (std::string const & key) const
getDefaultValueAsString () អានតម្លៃលំនាំដើមនៃសន្ទស្សន៍រងសម្រាប់ប្រភេទទិន្នន័យខ្សែអក្សរ។
លទ្ធផលនិម្មិត getDefaultValueAsString (std::string const & key) const
getDefaultValues () អានតម្លៃលំនាំដើមនៃសន្ទស្សន៍រង។
និម្មិត std:: ផែនទី getDefaultValues () const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
38
8 ថ្នាក់/អនុគមន៍យោង
readNumber () អានតម្លៃជាក់ស្តែងជាលេខនៃសន្ទស្សន៍រង។
Virtual ResultInt readNumber () const
readString() អានតម្លៃពិតនៃខ្សែអក្សរនៃសន្ទស្សន៍រង។
លទ្ធផលនិម្មិត readString() const
readBytes () អានតម្លៃពិតនៃសន្ទស្សន៍រងជាបៃ។
លទ្ធផលនិម្មិត ArrayByte readBytes () const
writeNumber () សរសេរតម្លៃលេខក្នុងសន្ទស្សន៍រង។
លទ្ធផលនិម្មិតVoid writeNumber (តម្លៃ const int64_t) const
writeBytes () សរសេរតម្លៃក្នុងលិបិក្រមរងជាបៃ។
លទ្ធផលនិម្មិតVoid writeBytes (std::vector const & data) const
8.22 OdIndex
ប្រើថ្នាក់នេះ (មិនអាចកែប្រែបានពីការបង្កើតនៅលើ) ដើម្បីរុំ និងកំណត់ទីតាំងសន្ទស្សន៍/សន្ទស្សន៍រងរបស់ថតវត្ថុ។ OD របស់ឧបករណ៍មួយមានជួររហូតដល់ 65535 (0xFFFF) និងជួរឈរ 255 (0xFF) ។ ជាមួយនឹងចន្លោះរវាងជួរដែលមិនបន្ត។ សូមមើលស្តង់ដារ CANopen និងសៀវភៅណែនាំផលិតផលរបស់អ្នកសម្រាប់ព័ត៌មានលម្អិត។
OdIndex () សាងសង់វត្ថុ OdIndex ថ្មី។
nlc::OdIndex::OdIndex (សន្ទស្សន៍ uint16_t, សន្ទស្សន៍រង uint8_t)
សន្ទស្សន៍រងសន្ទស្សន៍ប៉ារ៉ាម៉ែត្រ
ពី 0 ដល់ 65535 (0xFFFF) រួមបញ្ចូល។ ពី 0 ដល់ 255 (0xFF) រួមបញ្ចូល។
getIndex () អានលិបិក្រម (ពី 0x0000 ដល់ 0xFFFF) ។
uint16_t nlc::OdIndex::getIndex () const
ត្រឡប់ uint16_t
getSubindex () អានលិបិក្រមរង (ពី 0x00 ដល់ 0xFF)
uint8_t nlc::OdIndex::getSubIndex () const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
39
8 ថ្នាក់/អនុគមន៍យោង
ត្រឡប់ uint8_t
toString() ត្រឡប់លិបិក្រម និងលិបិក្រមរងជាខ្សែអក្សរ។ ខ្សែអក្សរលំនាំដើម 0xIIII:0xSS អានដូចខាងក្រោម៖
I = សន្ទស្សន៍ពី 0x0000 ទៅ 0xFFFF
S = សន្ទស្សន៍រងពី 0x00 ដល់ 0xFF
std::string nlc::OdIndex::toString() const
ត្រឡប់ 0xIII:0xSS
តំណាងខ្សែអក្សរលំនាំដើម
8.23 OdLibrary
ប្រើចំណុចប្រទាក់សរសេរកម្មវិធីនេះដើម្បីបង្កើតវត្ថុនៃថ្នាក់ ObjectDictionary ពី XML ។ តាមរយៈ assignObjectDictionary បន្ទាប់មកអ្នកអាចចងវត្ថុនីមួយៗទៅនឹងឧបករណ៍ជាក់លាក់មួយ ដោយសារឧបករណ៍កំណត់អត្តសញ្ញាណដែលបានបង្កើតតែមួយគត់។ វត្ថុវចនានុក្រមវត្ថុដែលបានបង្កើតដូច្នេះ ត្រូវបានរក្សាទុកក្នុងវត្ថុ OdLibrary ដើម្បីចូលប្រើដោយលិបិក្រម។ ថ្នាក់ ODLibrary ផ្ទុកធាតុ ObjectDictionary ពី file ឬអារេ រក្សាទុកពួកវា និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getObjectDictionaryCount () និម្មិត uint32_t getObjectDictionaryCount () const
getObjectDictionary () virtual ResultObjectDictionary getObjectDictionary (uint32_t odIndex)
ត្រឡប់ ResultObjectDictionary
addObjectDictionaryFromFile ()
និម្មិត ResultObjectDictionary addObjectDictionaryFromFile (std::string const & absoluteXmlFileផ្លូវ)
ត្រឡប់ ResultObjectDictionary
addObjectDictionary ()
Virtual ResultObjectDictionary addObjectDictionary (std::vector const & odXmlData, const std::string &xmlFileផ្លូវ = std::string ())
ត្រឡប់ ResultObjectDictionary
8.24 OdTypesHelper
បន្ថែមពីលើមុខងារសមាជិកសាធារណៈខាងក្រោម ថ្នាក់នេះមានប្រភេទទិន្នន័យផ្ទាល់ខ្លួន។ ចំណាំ៖ ដើម្បីពិនិត្យមើលប្រភេទទិន្នន័យផ្ទាល់ខ្លួនរបស់អ្នក រកមើលថ្នាក់ enum ObjectEntryDataType ក្នុង od_types.hpp ។
uintToObjectCode () បំប្លែងចំនួនគត់ដែលមិនបានចុះហត្ថលេខាទៅជាកូដវត្ថុ៖
Null Deftype
0x00 0x05
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
40
8 ថ្នាក់/អនុគមន៍យោង
Defstruct Var Array Record
0x06 0x07 0x08 0x09
ឋិតិវន្ត ObjectCode uintToObjectCode (unsigned int objectCode)
isNumericDataType () ជូនដំណឹងប្រសិនបើប្រភេទទិន្នន័យជាលេខឬអត់។
បូលឋិតិវន្តគឺNumericDataType (ObjectEntryDataType dataType)
isDefstructIndex () ជូនដំណឹងប្រសិនបើវត្ថុគឺជាសន្ទស្សន៍រចនាសម្ព័ន្ធនិយមន័យឬអត់។
បូលឋិតិវន្ត isDefstructIndex (uint16_t typeNum)
isDeftypeIndex () ជូនដំណឹងប្រសិនបើវត្ថុគឺជាសន្ទស្សន៍ប្រភេទនិយមន័យឬអត់។
បូលឋិតិវន្ត isDeftypeIndex (uint16_t typeNum)
isComplexDataType () ជូនដំណឹងប្រសិនបើប្រភេទទិន្នន័យស្មុគស្មាញឬអត់។
static bool isComplexDataType (ObjectEntryDataType dataType)
uintToObjectEntryDataType () បម្លែងចំនួនគត់ដែលមិនបានចុះហត្ថលេខាទៅជាប្រភេទទិន្នន័យ OD ។
sstatic ObjectEntryDataType uintToObjectEntryDataType (uint16_t objectDataType)
objectEntryDataTypeToString () បម្លែងប្រភេទទិន្នន័យ OD ទៅជាខ្សែអក្សរ។
static std::string objectEntryDataTypeToString (ObjectEntryDataType odDataType)
stringToObjectEntryDatatype () បម្លែងខ្សែអក្សរទៅជាប្រភេទទិន្នន័យ OD ប្រសិនបើអាចធ្វើទៅបាន។ បើមិនដូច្នោះទេ ត្រឡប់ UNKNOWN_DATATYPE។
static ObjectEntryDataType stringToObjectEntryDatatype (std::string dataTypeString)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
41
8 ថ្នាក់/អនុគមន៍យោង
objectEntryDataTypeBitLength () ជូនដំណឹងអំពីប្រវែងប៊ីតនៃប្រភេទទិន្នន័យបញ្ចូលវត្ថុមួយ។
ឋិតិវន្ត uint32_t objectEntryDataTypeBitLength (ObjectEntryDataType const & dataType)
8.25 រចនាសម្ព័ន្ធ RESTfulBus
រចនាសម្ព័ន្ធនេះមានជម្រើសកំណត់រចនាសម្ព័ន្ធទំនាក់ទំនងសម្រាប់ចំណុចប្រទាក់ RESTful (តាមអ៊ីសឺរណិត) ។ វាមានគុណលក្ខណៈសាធារណៈដូចខាងក្រោមៈ
const std::string const unsigned long const std::string const unsigned long const std::string const unsigned long
ភ្ជាប់ - ពេលវេលាធ្វើឱ្យ = "ការតភ្ជាប់តាមពេលវេលានៃការបំពេញនូវ" ការស្នើសុំពេលវេលា "200 សំណើរ =" ការស្នើសុំអស់រយៈពេល 200 ការឆ្លើយតប = "ពេលវេលាឆ្លើយតប
8.26 ProfinetDCP
នៅក្រោមលីនុច កម្មវិធីហៅទូរសព្ទត្រូវការសមត្ថភាព CAP_NET_ADMIN និង CAP_NET_RAW ។ ដើម្បីបើក៖ sudo setcap 'cap_net_admin,cap_net_raw+eip' ./executable. នៅក្នុង Windows ចំណុចប្រទាក់ ProfinetDCP ប្រើ WinPcap (សាកល្បងជាមួយកំណែ 4.1.3) ឬ Npcap (សាកល្បងជាមួយកំណែ 1.60 និង 1.30)។ ដូច្នេះវាស្វែងរកបណ្ណាល័យ wpcap.dll ដែលបានផ្ទុកថាមវន្តតាមលំដាប់ដូចខាងក្រោម (ចំណាំ៖ មិនមានការគាំទ្រ Win10Pcap បច្ចុប្បន្នទេ)៖
1. ថត Nanolib.dll 2. ថតប្រព័ន្ធវីនដូ SystemRoot%System32 3. បញ្ជីដំឡើង Npcap SystemRoot%System32Npcap 4. ផ្លូវបរិស្ថាន
ថ្នាក់នេះតំណាងឱ្យចំណុចប្រទាក់ Profinet DCP និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getScanTimeout () ជូនដំណឹងអំពីពេលវេលាស្កេនឧបករណ៍ (លំនាំដើម = 2000 ms) ។
និម្មិត uint32_t nlc::ProfinetDCP::getScanTimeout () const
setScanTimeout () កំណត់ពេលវេលាស្កេនឧបករណ៍ (លំនាំដើម = 2000 ms) ។
virtual void nlc::setScanTimeout (uint32_t timeoutMsec)
getResponseTimeout () ជូនដំណឹងអំពីពេលវេលាឆ្លើយតបឧបករណ៍សម្រាប់ការដំឡើង កំណត់ឡើងវិញ និងប្រតិបត្តិការព្រិចភ្នែក (លំនាំដើម = 1000 ms)។
និម្មិត uint32_t nlc::ProfinetDCP::getResponseTimeout () const
setResponseTimeout () ជូនដំណឹងអំពីពេលវេលាឆ្លើយតបឧបករណ៍សម្រាប់ការដំឡើង កំណត់ឡើងវិញ និងប្រតិបត្តិការព្រិចភ្នែក (លំនាំដើម = 1000 ms)។
virtual void nlc::ProfinetDCP::setResponseTimeout (uint32_t timeoutMsec)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
42
8 ថ្នាក់/អនុគមន៍យោង
isServiceAvailable ()
ប្រើមុខងារនេះដើម្បីពិនិត្យមើលភាពអាចរកបាននៃសេវាកម្ម Profinet DCP ។
សុពលភាព / ភាពអាចរកបាននៃអាដាប់ទ័របណ្តាញ វីនដូ៖ ភាពអាចរកបាន WinPcap / Npcap លីនុច៖ សមត្ថភាព CAP_NET_ADMIN / CAP_NET_RAW
Virtual ResultVoid nlc::ProfinetDCP::isServiceAvailable (const BusHardwareId & busHardwareId)
ប៉ារ៉ាម៉ែត្រ BusHardwareId ត្រឡប់ពិត
មិនពិត
លេខសម្គាល់ផ្នែករឹងនៃសេវាកម្ម Profinet DCP ដើម្បីពិនិត្យ។ មានសេវាកម្ម។ សេវាកម្មមិនអាចប្រើបានទេ។
scanProfinetDevices () ប្រើមុខងារនេះដើម្បីស្កេន hardware bus សម្រាប់វត្តមានរបស់ឧបករណ៍ Profinet។
លទ្ធផលនិម្មិតProfinetDevices scanProfinetDevices (const BusHardwareId & busHardwareId)
ប៉ារ៉ាម៉ែត្រ BusHardwareId ត្រឡប់ ResultProfinetDevices
បញ្ជាក់ fieldbus នីមួយៗដែលត្រូវបើក។ ផ្នែករឹងត្រូវបានបើក។
setupProfinetDevice () បង្កើតការកំណត់ឧបករណ៍ខាងក្រោម៖
ឈ្មោះឧបករណ៍
អាសយដ្ឋាន IP
របាំងបណ្តាញ
ច្រកចេញចូលលំនាំដើម
Virtual ResultVoid nlc::setupProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice struct & profinetDevice, bool savePermanent)
resetProfinetDevice () បញ្ឈប់ឧបករណ៍ ហើយកំណត់វាឡើងវិញទៅលំនាំដើមរបស់រោងចក្រ។
Virtual ResultVoid nlc::resetProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice & profinetDevice)
blinkProfinetDevice () បញ្ជាឱ្យឧបករណ៍ Profinet ចាប់ផ្តើមព្រិចភ្នែក LED Profinet របស់វា។
Virtual ResultVoid nlc::blinkProfinetDevice (const BusHardwareId & busHardwareId, const ProfinetDevice &profinetDevice)
validateProfinetDeviceIp () ប្រើមុខងារនេះដើម្បីពិនិត្យអាសយដ្ឋាន IP របស់ឧបករណ៍។
លទ្ធផលនិម្មិតVoid validateProfinetDeviceIp (const BusHardwareId &busHardwareId, const ProfinetDevice & profinetDevice)
ប៉ារ៉ាម៉ែត្រ BusHardwareId ProfinetDevice
បញ្ជាក់លេខសម្គាល់ផ្នែករឹងដើម្បីពិនិត្យ។ បញ្ជាក់ឧបករណ៍ Profinet ដើម្បីធ្វើសុពលភាព។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
43
8 ថ្នាក់/អនុគមន៍យោង
ត្រឡប់លទ្ធផលVoid
8.27 រចនាសម្ព័ន្ធឧបករណ៍ ProfinetDevice
ទិន្នន័យឧបករណ៍ Profinet មានគុណលក្ខណៈសាធារណៈដូចខាងក្រោម៖
std::string std::string std::array< uint8_t, 6 > uint32_t uint32_t uint32_t
deviceName deviceVendor macAddress ipAddress netMask defaultGateway
អាសយដ្ឋាន MAC ត្រូវបានផ្តល់ជាអារេក្នុងទម្រង់ macAddress = {xx, xx, xx, xx, xx, xx}; ចំណែកឯអាសយដ្ឋាន IP របាំងបណ្តាញ និងច្រកផ្លូវត្រូវបានបកស្រាយទាំងអស់ជាលេខគោលដប់ប្រាំមួយធំៗ ដូចជា៖
អាសយដ្ឋាន IP: 192.168.0.2 របាំងបណ្តាញ: 255.255.0.0 ច្រកចេញចូល: 192.168.0.1
0xC0A80002 0xFFFF0000 0xC0A80001
8.28 ថ្នាក់លទ្ធផល
ប្រើតម្លៃត្រឡប់ "ស្រេចចិត្ត" នៃថ្នាក់ទាំងនេះ ដើម្បីពិនិត្យមើលថាតើការហៅមុខងារបានជោគជ័យឬអត់ ហើយក៏កំណត់ទីតាំងមូលហេតុបរាជ័យផងដែរ។ នៅពេលជោគជ័យ មុខងារ hasError () ត្រឡប់មិនពិត។ តាមរយៈ getResult () អ្នកអាចអានតម្លៃលទ្ធផលតាមប្រភេទ (ResultInt ។ល។)។ ប្រសិនបើការហៅទូរស័ព្ទបរាជ័យ អ្នកអានហេតុផលដោយ getError()។
គុណលក្ខណៈការពារ
ខ្សែអក្សរ NlcErrorCode uint32_t
errorString errorCode exErrorCode
ផងដែរ ថ្នាក់នេះមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
hasError () អានការហៅមុខងារដែលជោគជ័យ។
bool nlc::លទ្ធផល::hasError () const
ត្រឡប់មកវិញ
ពិតមិនពិត
ការហៅទូរសព្ទមិនបានសម្រេច។ ប្រើ getError () ដើម្បីអានតម្លៃ។ ការហៅទូរស័ព្ទជោគជ័យ។ ប្រើ getResult () ដើម្បីអានតម្លៃ។
getError () អានហេតុផលប្រសិនបើការហៅមុខងារបរាជ័យ។
const std::string nlc::លទ្ធផល::getError () const
ត្រឡប់ខ្សែអក្សរ const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
44
8 ថ្នាក់/អនុគមន៍យោង
លទ្ធផល () មុខងារខាងក្រោមជួយកំណត់លទ្ធផលពិតប្រាកដ៖
លទ្ធផល (std::string const & errorString_)
លទ្ធផល (NlcErrorCode const & errCode, std::string const & errorString_)
លទ្ធផល (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
លទ្ធផល (លទ្ធផល និងលទ្ធផល)
getErrorCode () អាន NlcErrorCode ។
NlcErrorCode getErrorCode () const
getExErrorCode () uint32_t getExErrorCode () const
8.28.1 លទ្ធផលគ្មានន័យ
NanoLib ផ្ញើអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់ជាមោឃៈ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ និងគុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
ResultVoid () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលទទេពិតប្រាកដ៖
ResultVoid (std::string const &errorString_)
ResultVoid (NlcErrorCode const & errCode, std::string const & errorString_)
ResultVoid (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultVoid (លទ្ធផលលទ្ធផល និងលទ្ធផល)
8.28.2 ResultInt
NanoLib ផ្ញើអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើអនុគមន៍ត្រឡប់ចំនួនគត់។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () ត្រឡប់លទ្ធផលចំនួនគត់ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
int64_t getResult () const
ត្រឡប់ int64_t
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
45
8 ថ្នាក់/អនុគមន៍យោង
ResultInt () មុខងារខាងក្រោមជួយកំណត់លទ្ធផលចំនួនគត់ពិតប្រាកដ៖
ResultInt (int64_t results_)
ResultInt (std::string const & errorString_)
ResultInt (NlcErrorCode const & errCode, std::string const & errorString_)
ResultInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultInt (លទ្ធផលលទ្ធផល & លទ្ធផល)
8.28.3 ResultString
NanoLib ផ្ញើអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើអនុគមន៍ត្រឡប់ខ្សែអក្សរ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានលទ្ធផលខ្សែអក្សរ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
const std::string nlc::ResultString::getResult () const
ត្រឡប់ខ្សែអក្សរ const
ResultString () មុខងារខាងក្រោមជួយកំណត់លទ្ធផលខ្សែអក្សរពិតប្រាកដ៖
ResultString (std::string const & message, bool hasError_)
ResultString (NlcErrorCode const & errCode, std::string const & errorString_)
ResultString (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultString (លទ្ធផលលទ្ធផល & លទ្ធផល)
8.28.4 ResultArrayByte
NanoLib បញ្ជូនអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើអនុគមន៍ត្រឡប់អារេបៃ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានវ៉ិចទ័របៃប្រសិនបើការហៅមុខងារបានជោគជ័យ។
const std :: វ៉ិចទ័រ nlc::ResultArrayByte::getResult () const
ត្រឡប់វ៉ិចទ័រ const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
46
8 ថ្នាក់/អនុគមន៍យោង
ResultArrayByte () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលអារេបៃពិតប្រាកដ៖
ResultArrayByte (std::vector const & លទ្ធផល _)
ResultArrayByte (std::string const & errorString_)
ResultArrayByte (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayByte (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayByte (លទ្ធផលលទ្ធផល & លទ្ធផល)
8.28.5 ResultArrayInt
NanoLib បញ្ជូនអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើអនុគមន៍ត្រឡប់អារេចំនួនគត់។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានវ៉ិចទ័រចំនួនគត់ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
const std :: វ៉ិចទ័រ nlc::ResultArrayInt::getResult () const
ត្រឡប់វ៉ិចទ័រ const
ResultArrayInt () មុខងារខាងក្រោមជួយកំណត់លទ្ធផលអារេចំនួនគត់ពិតប្រាកដ៖
ResultArrayInt (std::vector const & លទ្ធផល _)
ResultArrayInt (std::string const & errorString_)
ResultArrayInt (NlcErrorCode const & errCode, std::string const & error String_)
ResultArrayInt (NlcErrorCode const & errCode, const uint32_t exErrCode, std:: string const & errorString_)
ResultArrayInt (លទ្ធផលលទ្ធផល & លទ្ធផល)
8.28.6 លទ្ធផលBusHwIds
NanoLib ផ្ញើឱ្យអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់អារេ ID ផ្នែករឹងរបស់រថយន្តក្រុង។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានវ៉ិចទ័រ bus-hardware-ID ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
const std :: វ៉ិចទ័រ nlc::ResultBusHwIds::getResult () const
ប៉ារ៉ាម៉ែត្រ const វ៉ិចទ័រ
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
47
8 ថ្នាក់/អនុគមន៍យោង
ResultBusHwIds () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលអារេ bus-hardware-ID-array ពិតប្រាកដ៖
ResultBusHwIds (std::vector const & លទ្ធផល _)
ResultBusHwIds (std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultBusHwIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultBusHwIds (លទ្ធផល និងលទ្ធផល)
8.28.7 លេខសម្គាល់ឧបករណ៍លទ្ធផល
NanoLib ផ្ញើឱ្យអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់លេខសម្គាល់ឧបករណ៍។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានវ៉ិចទ័រលេខសម្គាល់ឧបករណ៍ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
DeviceId nlc::ResultDeviceId::getResult () const
ត្រឡប់វ៉ិចទ័រ const
ResultDeviceId () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលលេខសម្គាល់ឧបករណ៍ពិតប្រាកដ៖
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 (លទ្ធផល និងលទ្ធផល)
8.28.8 ResultDeviceIds
NanoLib ផ្ញើឱ្យអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់អារេលេខសម្គាល់ឧបករណ៍។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () ត្រឡប់វ៉ិចទ័រលេខសម្គាល់ឧបករណ៍ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
DeviceId nlc::ResultDeviceIds::getResult () const
ត្រឡប់វ៉ិចទ័រ const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
48
8 ថ្នាក់/អនុគមន៍យោង
ResultDeviceIds () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលឧបករណ៍-ID-អារេពិតប្រាកដ៖
ResultDeviceIds (std::vector const & លទ្ធផល _)
ResultDeviceIds (std::string const & errorString_)
ResultDeviceIds (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceIds (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultDeviceIds (លទ្ធផល និងលទ្ធផល)
8.28.9 ចំណុចទាញឧបករណ៍លទ្ធផល
NanoLib បញ្ជូនអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់តម្លៃនៃចំណុចទាញឧបករណ៍។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានចំណុចទាញឧបករណ៍ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
DeviceHandle nlc::ResultDeviceHandle::getResult () const
ត្រឡប់ DeviceHandle
ResultDeviceHandle () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលឧបករណ៍ដោះស្រាយពិតប្រាកដ៖
ResultDeviceHandle (DeviceHandle const & result_)
ResultDeviceHandle (std::string const & errorString_)
ResultDeviceHandle (NlcErrorCode const & errCode, std::string const & errorString_)
ResultDeviceHandle (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultDeviceHandle (លទ្ធផលលទ្ធផល & លទ្ធផល)
8.28.10 ResultObjectDictionary
NanoLib ផ្ញើអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់មាតិកានៃវចនានុក្រមវត្ថុ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានវ៉ិចទ័រលេខសម្គាល់ឧបករណ៍ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
const nlc::ObjectDictionary & nlc::ResultObjectDictionary::getResult () const
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
49
8 ថ្នាក់/អនុគមន៍យោង
ត្រឡប់មកវិញ
វ៉ិចទ័រ const
ResultObjectDictionary () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលវចនានុក្រមវត្ថុពិតប្រាកដ៖
ResultObjectDictionary (nlc::ObjectDictionary const & result_)
ResultObjectDictionary (std::string const & errorString_)
ResultObjectDictionary (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectDictionary (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectDictionary (លទ្ធផលលទ្ធផល & លទ្ធផល)
8.28.11 ResultConnectionState
NanoLib ផ្ញើឱ្យអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់ព័ត៌មានអំពីស្ថានភាពការតភ្ជាប់ឧបករណ៍។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានចំណុចទាញឧបករណ៍ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
DeviceConnectionStateInfo nlc::ResultConnectionState::getResult () const
ត្រឡប់ DeviceConnectionStateInfo Connected/Disconnected/ConnectedBootloader
ResultConnectionState () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលនៃស្ថានភាពការតភ្ជាប់ពិតប្រាកដ៖
ResultConnectionState (DeviceConnectionStateInfo const & result_)
ResultConnectionState (std::string const & errorString_)
ResultConnectionState (NlcErrorCode const & errCode, std::string const & errorString_)
ResultConnectionState (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultConnectionState (លទ្ធផល និងលទ្ធផល)
8.28.12 ResultObjectEntry
NanoLib ផ្ញើឱ្យអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើអនុគមន៍ត្រឡប់ធាតុវត្ថុ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
50
8 ថ្នាក់/អនុគមន៍យោង
getResult () ត្រឡប់វ៉ិចទ័រលេខសម្គាល់ឧបករណ៍ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
nlc::ObjectEntry const&nlc::ResultObjectEntry::getResult () const
ត្រឡប់ const ObjectEntry
ResultObjectEntry () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលធាតុធាតុពិត៖
ResultObjectEntry (nlc::ObjectEntry const & result_)
ResultObjectEntry (std::string const & errorString_)
ResultObjectEntry (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectEntry (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectEntry (លទ្ធផលលទ្ធផល & លទ្ធផល)
8.28.13 ResultObjectSubEntry
NanoLib បញ្ជូនអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើអនុគមន៍ត្រឡប់ធាតុរងរបស់វត្ថុ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () ត្រឡប់វ៉ិចទ័រលេខសម្គាល់ឧបករណ៍ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
nlc::ObjectSubEntry const & nlc::ResultObjectSubEntry::getResult () const
ត្រឡប់ const ObjectSubEntry
ResultObjectSubEntry () មុខងារខាងក្រោមជួយក្នុងការកំណត់លទ្ធផលធាតុរងរបស់វត្ថុពិតប្រាកដ៖
ResultObjectSubEntry (nlc::ObjectEntry const & result_)
ResultObjectSubEntry (std::string const & errorString_)
ResultObjectSubEntry (NlcErrorCode const & errCode, std::string const & errorString_)
ResultObjectSubEntry (NlcErrorCode const & errCode, const uint32_t exErrCode, std::string const & errorString_)
ResultObjectSubEntry (លទ្ធផល និងលទ្ធផល)
8.28.14 ResultProfinetDevices
NanoLib ផ្ញើឱ្យអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់ឧបករណ៍ Profinet ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
51
8 ថ្នាក់/អនុគមន៍យោង
getResult () អានវ៉ិចទ័រឧបករណ៍ Profinet ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
const std :: វ៉ិចទ័រ & getResult () const
ResultProfinetDevices () មុខងារខាងក្រោមជួយក្នុងការកំណត់ឧបករណ៍ Profinet ពិតប្រាកដ។
ResultProfinetDevices (const std::vector & ProfinetDevices)
ResultProfinetDevices (លទ្ធផល និងលទ្ធផល)
ResultProfinetDevices (const std::string &errorText, NlcErrorCode errorCode = NlcErrorCode::GeneralError, uint32_t extendedErrorCode = 0)
8.28.15 លទ្ធផលampleDataArray
NanoLib បញ្ជូនអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់ជាampអារេទិន្នន័យ។ ថ្នាក់ទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អានអារេទិន្នន័យ ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
const std::vector <SampleData> & getResult () const
លទ្ធផលampleDataArray () មុខងារខាងក្រោមជួយក្នុងការកំណត់ឧបករណ៍ Profinet ពិតប្រាកដ។
លទ្ធផលampleDataArray (const std::vector <SampleData> & dataArray)
លទ្ធផលampleDataArray (const std::string &errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t extendedErrorCode = 0)
លទ្ធផលampleDataArray (const ResultSampleDataArray និងផ្សេងទៀត)
លទ្ធផលampleDataArray (លទ្ធផល និងលទ្ធផល)
8.28.16 លទ្ធផលamplerState
NanoLib បញ្ជូនអ្នកនូវឧទាហរណ៍នៃថ្នាក់នេះ ប្រសិនបើមុខងារត្រឡប់ជាampler state.ថ្នាក់នេះទទួលមរតកមុខងារសាធារណៈ/គុណលក្ខណៈការពារពីថ្នាក់លទ្ធផល និងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖
getResult () អាន sampler state vector ប្រសិនបើការហៅមុខងារបានជោគជ័យ។
SamplerState getResult () const
ត្រឡប់ SamplerState>
មិនបានកំណត់រចនាសម្ព័ន្ធ / កំណត់រចនាសម្ព័ន្ធ / រួចរាល់ / កំពុងដំណើរការ / បានបញ្ចប់ / បរាជ័យ / បោះបង់
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
52
8 ថ្នាក់/អនុគមន៍យោង
លទ្ធផលamplerState () មុខងារខាងក្រោមជួយក្នុងការកំណត់ s ពិតប្រាកដampរដ្ឋ ler ។
លទ្ធផលamplerState (const Sampរដ្ឋ lerState)
លទ្ធផលamplerState (const std::string & errorDesc, const NlcErrorCode errorCode = NlcErrorCode::GeneralError, const uint32_t
extendedErrorCode = 0)
លទ្ធផលamplerState (const ResultSamplerState និងផ្សេងទៀត)
លទ្ធផលamplerState (លទ្ធផល និងលទ្ធផល)
8.29 NlcErrorCode
ប្រសិនបើមានអ្វីមួយខុស ថ្នាក់លទ្ធផលរាយការណ៍អំពីលេខកូដកំហុសមួយដែលបានរាយក្នុងបញ្ជីរាប់បញ្ចូលនេះ។
លេខកូដកំហុស Success GeneralError BusUnavailable CommunicationError ProtocolError
ODDoesNotExist ODInvalidAccess ODTypeMismatch Operation Aborted Operation NotSupported invalidOperation
InvalidArguments AccessDenied ResourceNotFound ResourceUnavailable OutOfMemory TimeOutError
C: ប្រភេទ D: ការពិពណ៌នា R: ហេតុផល C: គ្មាន។ ឃ៖ គ្មានកំហុសទេ។ R: ប្រតិបត្តិការបានបញ្ចប់ដោយជោគជ័យ។
C: មិនបានបញ្ជាក់។ ឃ៖ កំហុសដែលមិនបានបញ្ជាក់។ R: បរាជ័យដែលមិនសមនឹងប្រភេទផ្សេងទៀត។
C: ឡានក្រុង។ ឃ៖ ឡានក្រុងផ្នែករឹងមិនមានទេ។ R: ឡានក្រុងមិនមាន កាត់ផ្តាច់ ឬខូច។
C: ទំនាក់ទំនង។ ឃ៖ ការទំនាក់ទំនងមិនគួរឱ្យទុកចិត្ត។ R៖ ទិន្នន័យដែលមិនបានរំពឹងទុក កំហុស CRC ខុស ស៊ុម ឬកំហុសស្មើគ្នា។ល។
គ៖ ពិធីការ។ ឃ៖ កំហុសពិធីការ។ R៖ ការឆ្លើយតបបន្ទាប់ពីជម្រើសពិធីការដែលមិនគាំទ្រ របាយការណ៍ឧបករណ៍ដែលមិនបានគាំទ្រពិធីការ កំហុសក្នុងពិធីការ (និយាយ SDO segment sync bit)។ segment sync bit) ។ល។ R: Unsupported protocol (options) or error in protocol ( say, SDO segment sync bit) ។ល។
គ៖ វចនានុក្រមវត្ថុ។ ឃ៖ អាសយដ្ឋាន OD មិនមានទេ។ R: មិនមានអាសយដ្ឋានបែបនេះនៅក្នុងវចនានុក្រមវត្ថុទេ។
គ៖ វចនានុក្រមវត្ថុ។ ឃ៖ ការចូលប្រើអាសយដ្ឋាន OD មិនត្រឹមត្រូវទេ។ R: ព្យាយាមសរសេរបានតែអាន ឬអានពីអាសយដ្ឋានសរសេរតែប៉ុណ្ណោះ។
គ៖ វចនានុក្រមវត្ថុ។ ឃ៖ វាយបញ្ចូលមិនត្រូវគ្នា។ R៖ តម្លៃមិនបានបំប្លែងទៅជាប្រភេទដែលបានបញ្ជាក់ សូមនិយាយថា ក្នុងការព្យាយាមចាត់ទុកខ្សែអក្សរជាលេខ។
C: កម្មវិធី។ ឃ៖ ដំណើរការត្រូវបានលុបចោល។ R: ដំណើរការកាត់តាមសំណើកម្មវិធី។ ត្រលប់មកវិញតែនៅលើប្រតិបត្តិការរំខានដោយមុខងារហៅត្រឡប់មកវិញនិយាយថាពីការស្កេនឡានក្រុង។
C: ទូទៅ។ ឃ៖ ដំណើរការមិនត្រូវបានគាំទ្រទេ។ R: មិនមានការគាំទ្ររថយន្តក្រុង / ឧបករណ៍។
C: ទូទៅ។ ឃ៖ ដំណើរការមិនត្រឹមត្រូវក្នុងបរិបទបច្ចុប្បន្ន ឬមិនត្រឹមត្រូវជាមួយអាគុយម៉ង់បច្ចុប្បន្ន។ R៖ ការព្យាយាមភ្ជាប់ឡើងវិញទៅឡានក្រុង/ឧបករណ៍ដែលបានភ្ជាប់រួចហើយ។ ការព្យាយាមផ្ដាច់ដើម្បីផ្ដាច់ដែលបានផ្ដាច់រួចហើយ។ ការប៉ុនប៉ងដំណើរការកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធនៅក្នុងរបៀបកម្មវិធីបង្កប់ ឬផ្ទុយមកវិញ។
C: ទូទៅ។ ឃ៖ អាគុយម៉ង់មិនត្រឹមត្រូវ។ R: តក្កវិជ្ជា ឬវាក្យសម្ព័ន្ធខុស។
C: ទូទៅ។ ឃ៖ ការចូលប្រើត្រូវបានបដិសេធ។ R: កង្វះសិទ្ធិ ឬសមត្ថភាពក្នុងការអនុវត្តប្រតិបត្តិការដែលបានស្នើសុំ។
C: ទូទៅ។ ឃ៖ រកមិនឃើញធាតុជាក់លាក់ទេ។ R៖ ឡានក្រុង ផ្នែករឹង ពិធីការ ឧបករណ៍ អាសយដ្ឋាន OD នៅលើឧបករណ៍ ឬ file មិនត្រូវបានរកឃើញ។
C: ទូទៅ។ ឃ៖ រកមិនឃើញធាតុជាក់លាក់ទេ។ R: រវល់, គ្មាន, កាត់ចេញ ឬខ្វះចន្លោះ។
C: ទូទៅ។ ឃ៖ អង្គចងចាំមិនគ្រប់គ្រាន់។ R: អង្គចងចាំតូចពេកដើម្បីដំណើរការពាក្យបញ្ជានេះ។
C: ទូទៅ។ ឃ៖ ដំណើរការអស់ពេលហើយ។ R: ត្រលប់មកវិញបន្ទាប់ពីអស់ពេលផុតកំណត់។ ការអស់ពេលអាចជាពេលវេលាឆ្លើយតបរបស់ឧបករណ៍ ពេលវេលាដើម្បីទទួលបានការចែករំលែក ឬការប្រើប្រាស់ធនធានផ្តាច់មុខ ឬពេលវេលាដើម្បីប្តូររថយន្តក្រុង/ឧបករណ៍ទៅស្ថានភាពសមរម្យ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
53
8 ថ្នាក់/អនុគមន៍យោង
8.30 NlcCallback
ថ្នាក់មេសម្រាប់ការហៅត្រឡប់នេះមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម៖ callback ()
លទ្ធផលនិម្មិតហៅត្រឡប់ ()
ត្រឡប់មកវិញ
លទ្ធផលគ្មានន័យ
8.31 NlcDataTransferCallback
ប្រើថ្នាក់ callback នេះសម្រាប់ការផ្ទេរទិន្នន័យ (ការធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់ ការបង្ហោះ NanoJ ។ល។)។ 1. សម្រាប់ការអាប់ឡូតកម្មវិធីបង្កប់៖ កំណត់ "ថ្នាក់សហ" ដែលពង្រីកវាជាមួយនឹងវិធីសាស្ត្រហៅត្រឡប់មកវិញផ្ទាល់ខ្លួន
ការអនុវត្ត។ 2. ប្រើវត្ថុ "សហថ្នាក់" នៅក្នុងការហៅទូរស័ព្ទ NanoLibAccessor.uploadFirmware () ។ ថ្នាក់មេខ្លួនឯងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោមៈ
callback () virtual ResultVoid callback (nlc::DataTransferInfo info, int32_t data)
ត្រឡប់មកវិញ
លទ្ធផលគ្មានន័យ
8.32 NlcScanBusCallback
ប្រើថ្នាក់ហៅត្រឡប់មកវិញនេះសម្រាប់ការស្កេនឡានក្រុង។ 1. កំណត់ "ថ្នាក់សហ" ដែលពង្រីកវាជាមួយនឹងការអនុវត្តវិធីសាស្ត្រហៅត្រឡប់មកវិញផ្ទាល់ខ្លួន។ 2. ប្រើវត្ថុ "co-class's" ក្នុង NanoLibAccessor.scanDevices () calls ។ ថ្នាក់មេខ្លួនឯងមានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម។
ហៅមកវិញ ()
ការហៅត្រឡប់លទ្ធផលនិម្មិតVoid (nlc::BusScanInfo info, std::vector const & devicesFound, int32_t data)
ត្រឡប់លទ្ធផលVoid
8.33 NlcLoggingCallback
ប្រើថ្នាក់ callback នេះសម្រាប់កត់ត្រាការ callbacks។ 1. កំណត់ class ដែលពង្រីក class នេះជាមួយនឹងការអនុវត្តវិធី callback ផ្ទាល់ខ្លួន 2. ប្រើ pointer ទៅកាន់ instances របស់វា ដើម្បីកំណត់ callback ដោយ NanoLibAccessor >
setLoggingCallback (...) ។
ការហៅត្រឡប់ជាមោឃៈនិម្មិត (const std::string & payload_str, const std::string & formatted_str, const std::string & logger_name, const unsigned int log_level, const std::uint64_t time_since_epoch, const size_t thread_id)
០៣ សamplerInterface
ប្រើថ្នាក់នេះដើម្បីកំណត់រចនាសម្ព័ន្ធ ចាប់ផ្តើម និងបញ្ឈប់ sampler ឬដើម្បីទទួលបាន sampដឹកនាំទិន្នន័យ និងយកជាampស្ថានភាពរបស់ ler ឬកំហុសចុងក្រោយ។ ថ្នាក់មានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
54
8 ថ្នាក់/អនុគមន៍យោង
configure () កំណត់រចនាសម្ព័ន្ធដូចampឡឺ
Virtual ResultVoid nlc::SamplerInterface::configure (const DeviceHandle deviceHandle, const SamplerConfiguration &samplerConfiguration)
ប៉ារ៉ាម៉ែត្រ [in] deviceHandle [in] samplerConfiguration
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់ឧបករណ៍ណាដែលត្រូវកំណត់រចនាសម្ព័ន្ធ sampler សម្រាប់។ បញ្ជាក់តម្លៃនៃគុណលក្ខណៈកំណត់រចនាសម្ព័ន្ធ។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
getData() ទទួល sampទិន្នន័យដឹកនាំ។
លទ្ធផលនិម្មិតampleDataArray nlc::SamplerInterface::getData (const DeviceHandle deviceHandle)
ប៉ារ៉ាម៉ែត្រ [in] deviceHandle ត្រឡប់លទ្ធផលSampleDataArray
បញ្ជាក់ថាតើឧបករណ៍ណាដើម្បីទទួលបានទិន្នន័យសម្រាប់។
ផ្តល់សampដឹកនាំទិន្នន័យដែលអាចជាអារេទទេប្រសិនបើ samplerNotify គឺសកម្មនៅពេលចាប់ផ្តើម។
getLastError () Gets asampកំហុសចុងក្រោយរបស់ ler ។
Virtual ResultVoid nlc::SamplerInterface::getLastError (const DeviceHandle deviceHandle)
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
getState () ទទួលបានជាampស្ថានភាពរបស់ ler ។
លទ្ធផលនិម្មិតamplerState nlc::SamplerInterface::getState (const DeviceHandle deviceHandle)
ត្រឡប់លទ្ធផលSamplerState
ផ្តល់សampរដ្ឋ ler ។
start () ចាប់ផ្តើមដូចampឡឺ
Virtual ResultVoid nlc::SamplerInterface::start (const DeviceHandle deviceHandle, SamplerNotify* samplerNotify, int64_t applicationData)
ប៉ារ៉ាម៉ែត្រ [ក្នុង] ឧបករណ៍Handle [ក្នុង] SamplerNotify [ក្នុង] ទិន្នន័យកម្មវិធី
ត្រឡប់លទ្ធផលVoid
បញ្ជាក់ថាឧបករណ៍ណាដែលត្រូវចាប់ផ្តើម sampler សម្រាប់។
បញ្ជាក់ព័ត៌មានជាជម្រើសដែលត្រូវរាយការណ៍ (អាចជា nullptr)។
ជម្រើស៖ បញ្ជូនទិន្នន័យដែលទាក់ទងនឹងកម្មវិធី (អារេ 8 ប៊ីតដែលកំណត់ដោយអ្នកប្រើប្រាស់នៃតម្លៃ / លេខសម្គាល់ឧបករណ៍ / លិបិក្រម ឬកាលបរិច្ឆេទកាលបរិច្ឆេទ ទ្រនិចរបស់អថេរ / មុខងារ។ល។) ទៅ samplerជូនដំណឹង។
បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
55
8 ថ្នាក់/អនុគមន៍យោង
stop () ឈប់ដូចampឡឺ
Virtual ResultVoid nlc::SamplerInterface ::stop (const DeviceHandle deviceHandle)
ប៉ារ៉ាម៉ែត្រ [ក្នុង] deviceHandle ត្រឡប់ ResultVoid
បញ្ជាក់ថាឧបករណ៍ណាដែលត្រូវបញ្ឈប់ sampler សម្រាប់។ បញ្ជាក់ថាមុខងារចាត់ទុកជាមោឃៈបានដំណើរការ។
០៣ សamplerConfiguration struct
រចនាសម្ព័ន្ធនេះមានទិន្នន័យ sampជម្រើសកំណត់រចនាសម្ព័ន្ធរបស់ ler (ឋិតិវន្តឬអត់) ។
គុណលក្ខណៈសាធារណៈ
std:: វ៉ិចទ័រ អាសយដ្ឋានដែលបានតាមដាន
រហូតដល់ 12 OD addresses ទៅជា sampដឹកនាំ។
uint32_t
កំណែ
កំណែរចនាសម្ព័ន្ធ។
uint32_t
រយៈពេលមីលីវិនាទី
Sampរយៈពេល ling ក្នុង ms ពី 1 ដល់ 65535
uint16_t
រយៈពេលមីលីវិនាទី
Sampរយៈពេល ling ក្នុង ms ។
uint16_t
numberOfSamples
Sampចំនួន les ។
uint16_t
preTriggerNumberOfSamples
Samples បរិមាណមុនកេះ។
ប៊ូល។
ការប្រើប្រាស់កម្មវិធី ការអនុវត្ត
ប្រើការអនុវត្តកម្មវិធី។
ប៊ូល។
ដោយប្រើ NewFWSamplerImplementation ប្រើការអនុវត្ត FW សម្រាប់ឧបករណ៍ដែលមាន a
កំណែ FW v24xx ឬថ្មីជាងនេះ។
SamplerMode
របៀប
ធម្មតា, ដដែលៗ ឬបន្ត sampលិង។
SamplerTriggerCondition triggerCondition
លក្ខខណ្ឌចាប់ផ្តើម៖ TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0x14TC TC_GREATER_OR_EQUAL = 0x15 TC_LESS = 0x16 TC_LESS_OR_EQUAL = 0x17 TC_EQUAL = 0x18 TC_NOT_EQUAL = 0x19A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE, 0x1 TC_MULTI_EDGE, OV
SamplerTrigger
SamplerTrigger
កេះដើម្បីចាប់ផ្តើមជាampឡឺ?
លក្ខណៈសាធារណៈឋិតិវន្ត
ឋិតិវន្ត constexpr size_t SAMPLER_CONFIGURATION_VERSION = 0x01000000 static constexpr size_t MAX_TRACKED_ADDRESSES = 12
០៣ សamplerជូនដំណឹង
ប្រើថ្នាក់នេះដើម្បីបើកដំណើរការ sampler ការជូនដំណឹងនៅពេលអ្នកចាប់ផ្តើមampឡឺ ថ្នាក់មានមុខងារសមាជិកសាធារណៈដូចខាងក្រោម។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
56
8 ថ្នាក់/អនុគមន៍យោង
ជូនដំណឹង ()
ផ្តល់ការជូនដំណឹង។
virtual void nlc::SamplerNotify::notify (const ResultVoid & lastError, const SamplerState samplerState, const std::vector <SampleData> & sampleDatas, int64_t applicationData)
ប៉ារ៉ាម៉ែត្រ [ក្នុង] LastError [in] samplerState
[ក្នុង] sampleDatas [ក្នុង] applicationData
រាយការណ៍អំពីកំហុសចុងក្រោយបានកើតឡើងខណៈពេលដែល sampលីង រាយការណ៍ សampស្ថានភាព ler នៅពេលជូនដំណឹង៖ មិនបានកំណត់រចនាសម្ព័ន្ធ / កំណត់រចនាសម្ព័ន្ធ / រួចរាល់ / កំពុងដំណើរការ / បានបញ្ចប់ / បរាជ័យ / បោះបង់។ រាយការណ៍ សampអារេទិន្នន័យដឹកនាំ។ រាយការណ៍ទិន្នន័យជាក់លាក់នៃកម្មវិធី។
០៣ សampរចនាសម្ព័ន្ធ leData
រចនាសម្ព័ន្ធនេះមាន sampទិន្នន័យដឹកនាំ។
uin64_t លេខដដែល
ចាប់ផ្តើមនៅ 0 ហើយកើនឡើងតែក្នុងទម្រង់ដដែលៗប៉ុណ្ណោះ។
std::vector <SampledValues> មានអារេរបស់ sampតម្លៃដឹកនាំ។
០៣ សampរចនាសម្ព័ន្ធ ledValue
រចនាសម្ព័ន្ធនេះមាន sampតម្លៃដឹកនាំ។
in64_t តម្លៃ uin64_t CollectTimeMsec
មានតម្លៃនៃអាសយដ្ឋាន OD ដែលបានតាមដាន។
មានពេលវេលាប្រមូលជាមិល្លីវិនាទី ទាក់ទងនឹង sampចាប់ផ្តើម។
០៣ សampរចនាសម្ព័ន្ធ lerTrigger
រចនាសម្ព័ន្ធនេះមានការកំណត់កេះនៃ sampឡឺ
Sampលក្ខខណ្ឌ lerTriggerCondition
តម្លៃ OdIndex uin32_t
លក្ខខណ្ឌគន្លឹះ៖ TC_FALSE = 0x00 TC_TRUE = 0x01 TC_SET = 0x10 TC_CLEAR = 0x11 TC_RISING_EDGE = 0x12 TC_FALLING_EDGE = 0x13 TC_BIT_TOGGLE = 0x14 TC_0x15 TC_GREATER_OR_EQUAL = 0x16 TC_LESS = 0x17 TC_LESS_OR_EQUAL = 0x18 TC_EQUAL = 0x19 TC_NOT_EQUAL = 0x1A TC_ONE_EDGE = 0x1B TC_MULTI_EDGE = 0
OdIndex របស់កេះ (អាសយដ្ឋាន)។
តម្លៃលក្ខខណ្ឌ ឬលេខប៊ីត (ចាប់ផ្តើមពីសូន្យប៊ីត)។
8.40 រចនាសម្ព័ន្ធសៀរៀល
ស្វែងរកជម្រើសទំនាក់ទំនងសៀរៀលរបស់អ្នក និងលក្ខណៈសាធារណៈខាងក្រោមនៅទីនេះ៖
const std::string const SerialBaudRate
BAUD_RATE_OPTIONS_NAME = “អត្រា baud ស៊េរី” baudRate = រចនាសម្ព័ន្ធ SerialBaudRate
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
57
8 ថ្នាក់/អនុគមន៍យោង
const std::string const SerialParity
PARITY_OPTIONS_NAME = “ភាពស្មើគ្នានៃស៊េរី” parity = រចនាសម្ព័ន្ធ SerialParity
8.41 រចនាសម្ព័ន្ធ SerialBaudRate
ស្វែងរកនៅទីនេះ អត្រា baud ទំនាក់ទំនងសៀរៀលរបស់អ្នក និងគុណលក្ខណៈសាធារណៈខាងក្រោម៖
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_56000” BAUD_RATE_56000 = “57600” BAUD 57600 = “115200” BAUD_RATE_115200 = “128000” BAUD_RATE_128000 = “256000” BAUD_RATE_256000 = “XNUMX”
8.42 រចនាសម្ព័ន្ធ SerialParity
ស្វែងរកនៅទីនេះ ជម្រើសសមភាពសៀរៀលរបស់អ្នក និងលក្ខណៈសាធារណៈខាងក្រោម៖
const std::string const std::string const std::string const std::string const std::string
NONE = “គ្មាន” ODD = “សេស” EVEN = “គូ” MARK = “សម្គាល់” SPACE = “ចន្លោះ”
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
58
9 អាជ្ញាប័ណ្ណ
9 អាជ្ញាប័ណ្ណ
បឋមកថាចំណុចប្រទាក់ NanoLib API និងឧampលេខកូដប្រភពត្រូវបានផ្តល់អាជ្ញាប័ណ្ណដោយ Nanotec Electronic GmbH & Co. KG ក្រោម Creative Commons Attribution 3.0 Unported License (CC BY)។ ផ្នែកបណ្ណាល័យដែលបានផ្តល់ជាទម្រង់គោលពីរ (បណ្ណាល័យទំនាក់ទំនងស្នូល និងវាល) ត្រូវបានផ្តល់អាជ្ញាប័ណ្ណក្រោម Creative Commons AttributionNoDerivatives 4.0 International License (CC BY ND)។
Creative Commons
សេចក្តីសង្ខេបដែលអាចអានដោយមនុស្សខាងក្រោមនឹងមិនជំនួសអាជ្ញាប័ណ្ណខ្លួនឯងបានទេ។ អ្នកអាចស្វែងរកអាជ្ញាប័ណ្ណរៀងៗខ្លួននៅ creativecommons.org ហើយភ្ជាប់ខាងក្រោម។ អ្នកមានសេរីភាពក្នុងការ៖
CC BY 3.0
ចែករំលែក៖ មើលត្រូវ។ សម្រប៖ Remix, បំប្លែង, និងបង្កើតឡើងលើ
សម្ភារៈសម្រាប់គោលបំណងណាមួយ សូម្បីតែពាណិជ្ជកម្ម។
CC BY-ND 4.0
ចែករំលែក៖ ចម្លង និងចែកចាយឡើងវិញនូវសម្ភារៈក្នុងទម្រង់មធ្យម ឬទម្រង់ណាមួយ។
អាជ្ញាបណ្ណមិនអាចដកហូតសិទ្ធិសេរីភាពខាងលើបានទេ ដរាបណាអ្នកគោរពតាមលក្ខខណ្ឌអាជ្ញាប័ណ្ណខាងក្រោម៖
CC BY 3.0
CC BY-ND 4.0
គុណលក្ខណៈ៖ អ្នកត្រូវតែផ្តល់ឥណទានសមរម្យ គុណលក្ខណៈ៖ មើលខាងឆ្វេង។ ប៉ុន្តែ៖ ផ្តល់តំណទៅនេះ។
ផ្តល់តំណភ្ជាប់ទៅអាជ្ញាប័ណ្ណ ហើយចង្អុលបង្ហាញប្រសិនបើ
អាជ្ញាប័ណ្ណផ្សេងទៀត។
ការផ្លាស់ប្តូរត្រូវបានធ្វើឡើង។ អ្នកអាចធ្វើដូច្នេះនៅក្នុងណាមួយ។
គ្មាននិស្សន្ទវត្ថុ៖ ប្រសិនបើអ្នក Remix បំប្លែង ឬបង្កើត
របៀបសមហេតុផល ប៉ុន្តែមិនមែនតាមរបៀបណាក៏ដោយ
នៅលើសម្ភារៈ អ្នកមិនអាចចែកចាយបានទេ។
ផ្តល់ឱ្យអ្នកផ្តល់អាជ្ញាប័ណ្ណគាំទ្រអ្នកឬការប្រើប្រាស់របស់អ្នក។
សម្ភារៈដែលបានកែប្រែ។
គ្មានការរឹតបន្តឹងបន្ថែម៖ អ្នកមិនអាចអនុវត្តបានទេ គ្មានការរឹតបន្តឹងបន្ថែម៖ សូមមើលខាងឆ្វេង។ លក្ខខណ្ឌផ្លូវច្បាប់ ឬវិធានការបច្ចេកទេសដែលស្របច្បាប់
ដាក់កំហិតអ្នកផ្សេងទៀតពីការធ្វើអ្វីដែលមានអាជ្ញាប័ណ្ណ
អនុញ្ញាត។
ចំណាំ៖ អ្នកមិនត្រូវអនុវត្តតាមអាជ្ញាប័ណ្ណសម្រាប់ធាតុផ្សំនៃសម្ភារៈនៅក្នុងដែនសាធារណៈ ឬកន្លែងដែលការប្រើប្រាស់របស់អ្នកត្រូវបានអនុញ្ញាតដោយការលើកលែង ឬការកំណត់ដែលអាចអនុវត្តបាន។
ចំណាំ៖ មិនមានការធានាទេ។ អាជ្ញាប័ណ្ណប្រហែលជាមិនផ្តល់ឱ្យអ្នកនូវការអនុញ្ញាតទាំងអស់ដែលចាំបាច់សម្រាប់ការប្រើប្រាស់ដែលអ្នកចង់បាននោះទេ។ សម្រាប់អតីតample, សិទ្ធិផ្សេងទៀតដូចជាការផ្សព្វផ្សាយជាសាធារណៈ ភាពឯកជន ឬសិទ្ធិខាងសីលធម៌អាចកំណត់ពីរបៀបដែលអ្នកប្រើសម្ភារៈ។
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
59
បោះពុម្ព, ទំនាក់ទំនង, កំណែ
©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 រក្សាសិទ្ធិគ្រប់យ៉ាង។ កំហុស ការធ្វេសប្រហែស ការផ្លាស់ប្តូរផ្នែកបច្ចេកទេស ឬខ្លឹមសារអាចធ្វើទៅបានដោយគ្មានការជូនដំណឹងជាមុន។ ម៉ាក/ផលិតផលដែលបានដកស្រង់ គឺជាពាណិជ្ជសញ្ញារបស់ម្ចាស់របស់ពួកគេ ហើយត្រូវចាត់ទុកដូចនោះ។ កំណែដើម។
ឯកសារ 1.4.2 2024.12 1.4.1 2024.10 1.4.0 2024.09 1.3.3 2024.07
៣៤ ៣៥ ២៣ ៨៦ ៧ ៤
៣៤ ៣៥ ២៣ ៨៦ ៧ ៤
+ បានបន្ថែម > ផ្លាស់ប្តូរ # ជួសជុល > ការងារឡើងវិញនៃអតីតដែលបានផ្តល់ឱ្យamples ។
+ NanoLib Modbus៖ បានបន្ថែមយន្តការចាក់សោឧបករណ៍សម្រាប់ Modbus VCP ។ # NanoLib Core៖ ពិនិត្យស្ថានភាពការតភ្ជាប់ថេរ។ # លេខកូដ NanoLib៖ ការដកចេញនូវសេចក្តីយោងផ្នែករឹងរបស់រថយន្តក្រុងដែលបានកែតម្រូវ។
+ NanoLib-CANopen៖ ការគាំទ្រសម្រាប់អាដាប់ទ័រ Peak PCAN-USB (IPEH-002021/002022) ។
> NanoLib Core៖ បានផ្លាស់ប្តូរចំណុចប្រទាក់ហៅត្រឡប់ចូលកំណត់ហេតុ (LogLevel ជំនួសដោយ LogModule)។ # NanoLib Logger៖ ការបំបែករវាងស្នូល និងម៉ូឌុលត្រូវបានកែដំរូវ។ # Modbus TCP៖ ការធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់ថេរសម្រាប់ FW4 ។ # EtherCAT៖ ការអាប់ឡូតកម្មវិធី NanoJ ថេរសម្រាប់ Core5 ។ # EtherCAT៖ ជួសជុលអាប់ដេតកម្មវិធីបង្កប់សម្រាប់ Core5 ។
# Modbus RTU៖ បានដោះស្រាយបញ្ហាពេលវេលាជាមួយនឹងអត្រា baud ទាបកំឡុងពេលអាប់ដេតកម្មវិធីបង្កប់។ # RESTful៖ ការអាប់ឡូតកម្មវិធី NanoJ ថេរ។
# ម៉ូឌុល NanoLib Sampler: ការអានត្រឹមត្រូវនៃ sampតម្លៃប៊ូលីនដឹកនាំ។
+ Java 11 គាំទ្រសម្រាប់វេទិកាទាំងអស់។ + ការគាំទ្រ Python 3.11/3.12 សម្រាប់គ្រប់វេទិកាទាំងអស់។ + ចំណុចប្រទាក់ហៅត្រឡប់ចូលកំណត់ហេតុថ្មី (សូមមើលឧamples) + Callback លិចសម្រាប់ NanoLib Logger ។ > ធ្វើបច្ចុប្បន្នភាពអ្នកកាប់ឈើទៅកំណែ 1.12.0 ។ > ម៉ូឌុល NanoLib Sampler: គាំទ្រឥឡូវនេះសម្រាប់កម្មវិធីបង្កប់ឧបករណ៍បញ្ជា Nanotec v24xx ។ > ម៉ូឌុល NanoLib Sampler: ការផ្លាស់ប្តូររចនាសម្ព័ន្ធដែលប្រើសម្រាប់ sampការកំណត់រចនាសម្ព័ន្ធ ler ។ > ម៉ូឌុល NanoLib Sampler: របៀបបន្តគឺមានន័យដូចនឹងគ្មានទីបញ្ចប់។ លក្ខខណ្ឌកេះត្រូវបានពិនិត្យម្តង; ចំនួន samples ត្រូវតែជា 0. > NanoLib Modules Sampler៖ អាទិភាពធម្មតាសម្រាប់ខ្សែស្រឡាយដែលប្រមូលទិន្នន័យនៅក្នុងរបៀបកម្មវិធីបង្កប់។ > ម៉ូឌុល NanoLib Sampler៖ ក្បួនដោះស្រាយដែលសរសេរឡើងវិញដើម្បីរកមើលការផ្លាស់ប្តូររវាងស្ថានភាពរួចរាល់ និងកំពុងដំណើរការ។ # NanoLib Core៖ មិនមានការរំលោភលើការចូលប្រើទៀតទេ (0xC0000005) លើការបិទឧបករណ៍ 2 ឬច្រើនដោយប្រើផ្នែករឹងឡានក្រុងដូចគ្នា។ # NanoLib Core៖ មិនមានកំហុសផ្នែកការបែងចែកទៀតទេលើការភ្ជាប់អាដាប់ទ័រ PEAK នៅក្រោមលីនុច។ # ម៉ូឌុល NanoLib Sampler: ត្រឹមត្រូវ។ampការអានតម្លៃដឹកនាំនៅក្នុងរបៀបកម្មវិធីបង្កប់។ # ម៉ូឌុល NanoLib Sampler៖ ការកំណត់រចនាសម្ព័ន្ធត្រឹមត្រូវនៃ 502X:04 ។ # ម៉ូឌុល NanoLib Sampler៖ ការលាយត្រឹមត្រូវនៃសតិបណ្ដោះអាសន្នជាមួយឆានែល។ # NanoLib-Canopen៖ បង្កើនពេលវេលា CAN សម្រាប់ភាពរឹងមាំ និងការស្កេនត្រឹមត្រូវនៅកម្រិតទាប។ # NanoLib-Modbus៖ ក្បួនដោះស្រាយការរកឃើញ VCP សម្រាប់ឧបករណ៍ពិសេស (USB-DA-IO)។
+ ការគាំទ្រ EtherCAT ។
+ ចំណាំលើការកំណត់គម្រោង VS នៅក្នុង Configure your project ។
+ getDeviceHardwareGroup () ។ + getProfinetDCP (isServiceAvailable) ។ + getProfinetDCP (validateProfinetDeviceIp) ។ + autoAssignObjectDictionary () ។ + getXmlFileឈ្មោះ () ។ + const std:: string & xmlFileផ្លូវក្នុង addObjectDictionary () ។ + ទទួលបានអេសamplerInterface () ។
ផលិតផល 1.3.0 1.2.1 1.2.0 1.1.3
១២៣ ៤
1.0.1 (B349) 1.0.0 (B344) 1.0.0 (B341)
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
60
10 បោះពុម្ព, ទំនាក់ទំនង, កំណែ
ឯកសារ
1.1.2 2022.03 1.1.1 2021.11 1.1.0 2021.06 1.0.1 2021.06 1.0.0 2021.05
+ បានបន្ថែម > ផ្លាស់ប្តូរ # ជួសជុល + ឧបករណ៍ចាប់ផ្ដើមឡើងវិញ () ។ + កូដកំហុស ResourceUnavailable សម្រាប់ getDeviceBootloaderVersion (), ~VendorId (), ~HardwareVersion (), ~SerialNumber, និង ~Uid។ > កម្មវិធីបង្កប់អាប់ឡូតពីFile ឥឡូវនេះ អាប់ឡូតកម្មវិធីបង្កប់ពីFile ( ). > firmwareUpload() ឥឡូវនេះ uploadFirmware()។ > bootloaderUploadFromFile () ឥឡូវនេះ បង្ហោះBootloaderFromFile ( ). > bootloaderUpload() ឥឡូវនេះ uploadBootloader()។ > bootloaderFirmwareUploadFromFile () ដើម្បីបង្ហោះBootloaderFirmwareFromFile ( ). > bootloaderFirmwareUpload () ឥឡូវនេះ អាប់ឡូតBootloaderFirmware ()។ > nanojUploadFromFile () ឥឡូវនេះ បង្ហោះNanoJFromFile ( ). > nanojUpload() ឥឡូវនេះ uploadNanoJ()។ > objectDictionaryLibrary () ឥឡូវនេះ getObjectDictionaryLibrary () ។ > String_String_Map ឥឡូវនេះ StringStringMap ។ > NanoLib-Common៖ ដំណើរការលឿនជាងមុននៃ listAvailableBusHardware និង openBusHardwareWithProtocol ជាមួយនឹងអាដាប់ទ័រ Ixxat ។ > NanoLib-CANopen៖ ការកំណត់លំនាំដើមបានប្រើ (1000k baudrate, Ixxat bus number 0) ប្រសិនបើជម្រើសផ្នែករឹងរបស់រថយន្តក្រុងទទេ។ > NanoLib-RESTful៖ ការអនុញ្ញាតពីអ្នកគ្រប់គ្រងលែងប្រើសម្រាប់ទំនាក់ទំនងជាមួយកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធអ៊ីសឺរណិតនៅក្រោម Windows ប្រសិនបើកម្មវិធីបញ្ជា npcap / winpcap មាន។ # NanoLib-CANopen៖ ឥឡូវនេះផ្នែករឹងរបស់រថយន្តក្រុងបើកដំណើរការដោយមិនគាំងជាមួយនឹងជម្រើសទទេ។ # NanoLib-Common៖ openBusHardwareWithProtocol () ដែលមិនមានអង្គចងចាំលេចធ្លាយឥឡូវនេះ។
+ ការគាំទ្រ Linux ARM64 ។ + ឧបករណ៍ផ្ទុក USB / REST / Profinet DCP គាំទ្រ។ +ពិនិត្យConnectionState () ។ + getDeviceBootloaderVersion () ។ + ResultProfinetDevices ។ + NlcErrorCode (ជំនួស NanotecExceptions) ។ + NanoLib Modbus៖ VCP / USB hub បង្រួបបង្រួមទៅ USB ។ > ការស្កេន Modbus TCP ត្រឡប់លទ្ធផល។ < ភាពយឺតនៃការទំនាក់ទំនង Modbus TCP នៅតែថេរ។
+ ObjectEntryDataType ច្រើនទៀត (ស្មុគស្មាញ និងគាំទ្រfile- ជាក់លាក់) ។ + IOError ត្រឡប់ប្រសិនបើ connectDevice () និង scanDevices () រកមិនឃើញ។ + មានតែ 100 ms អស់ពេលសម្រាប់ CanOpen / Modbus ។
+ ការគាំទ្រ Modbus (បូក USB Hub តាមរយៈ VCP) ។ + ជំពូក ការបង្កើតគម្រោងលីនុចផ្ទាល់ខ្លួនរបស់អ្នក។ + extraHardwareSpecifier ទៅ BusHardwareId () ។ + extraId_ និង extraStringId_ ទៅ DeviceId () ។
+ setBusState () ។ + getDeviceBootloaderBuildId () ។ + getDeviceFirmwareBuildId () ។ + getDeviceHardwareVersion () ។ # កែកំហុស។
បោះពុម្ព។
ផលិតផល
0.8.0 0.7.1 0.7.0 0.5.1 0.5.1
កំណែ៖ doc 1.4.2 / NanoLib 1.3.0
61
ឯកសារ/ធនធាន
![]() |
ការសរសេរកម្មវិធី Nanotic NanoLib C ++ [pdf] សៀវភៅណែនាំអ្នកប្រើប្រាស់ ការសរសេរកម្មវិធី NanoLib C, C Programming, Programming |