ЛОГО на RouterAppЛОГО ADVANTECH
Потребителски модул
Node.js
БЕЛЕЖКА ЗА ПРИЛОЖЕНИЕ

ADVANTECH RouterApp Node

Използвани символи

предупреждение 2 Опасност – Информация относно безопасността на потребителя или потенциална повреда на рутера.
внимание Внимание – Проблеми, които могат да възникнат в конкретни ситуации.
Информация или известие Информация или известие – Полезни съвети или информация от специален интерес.
Example Example – Прampфайл на функция, команда или скрипт.

ADVANTECH RouterApp Node-символи

Advantech Czech sro, Sokolska 71, 562 04 Usti nad Orlici, Чехия
Документ № APP-0080-EN беше ревизиран на 7 май 2021 г. Издаден в Чешката република.

Потребителски модул Node.js

Web Интерфейс

След като инсталацията на модула приключи, GUI на модула може да бъде извикан чрез щракване върху името на модула на страницата User modules на рутера web интерфейс. Лявата част на този GUI съдържа меню със секция от общо меню. Общият раздел на менюто съдържа само Лицензите, съдържащи списъка с всички лицензи за самия Node.js, както и свързаното приложение за рутер и елемент за връщане, който превключва обратно от модула web страница към рутера web конфигурационни страници. Главното меню на GUI на модула е показано на фигура 2.ADVANTECH RouterApp Node-Фигура 1

 Въведение

внимание Потребителският модул Node.js не е част от фърмуера на рутера. Може да се изтегли от icr.advantech.cz/user-modules. Процесът на инсталиране на потребителските модули е описан в Ръководството за конфигуриране (вижте [1], [2], [3] и [4]). Този потребителски модул е ​​съвместим само с рутери на платформа v3 и v4!
Възелът Node.js е собствен възел на среда за изпълнение на JavaScript от страната на сървъра, достъпен за клетъчни рутери на Advantech. Този възел се използва от модули на Advantech, написани на JavaScript, но може да се използва от всяко друго JavaScript приложение на трета страна за администриране и поддръжка на рутери.
Модулът на рутера съдържа добавянето на този възел към вградените възли:

  • node-authenticate-pam – асинхронно PAM удостоверяване за NodeJS,
  • when.js – Имплементация на Promises/A+ и when(), включително пълна подложка на ES6 Promise,
  • рутер възел – собствен възел за клетъчни рутери на Advantech, описани подробно в този документ.
Изграждане на персонализирани възли

Официален начин за изграждане и инсталиране на възел е използването на командата npm. Въпреки това не е възможно да го намерите на нашите рутери, тъй като рутерът е вградено устройство с ограничени ресурси и някои възли изискват сложна среда за изграждане и висока производителност поради други езици, различни от JavaScript.
За щастие е лесно да подготвите възел на компютър с Linux и след това да го копирате в рутера.
За повече подробности виж https://icr.advantech.cz/support/faq/detail/building-the-custom-nodes-fornode-js-node-red.

Рутер възел

Информация или известие Тази част от документа е посветена специално на програмистите.
Рутерният възел (наречен „рутер“) осигурява достъп до специфични за рутера функции и хардуер.
Можете да заредите възела Node.js във вашия код чрез require(“router”), напрampле:
var r = изискване (“рутер”);
Информация или известие Ще използваме променливата r от този примерample за достъп до всички свойства в следващия exampв тази бележка.
Обикновен прampза използване на рутер възел
Следващата фигура е бившample за зареждане на Node.js възел.

ADVANTECH RouterApp Node-Simple Example

Свойства на възела

2.1.1 име на продукт
Низова променлива само за четене, заредена с името на продукта на рутера. Прampначин на използване:
console.log(r.productName);
Изход: SPECTRE-v3T-LTE
2.1.2 platformCode
Низова променлива само за четене, заредена с кода на платформата на рутера. Поддържа се от рутери на
v3 и v4 производствени платформи. Прampначин на използване:
console.log(r.platformCode);
Изход: V3
2.1.3 сериен номер
Низова променлива само за четене, заредена със серийния номер на рутера. Прampначин на използване:
console.log(r.serialNumber);
Изход: ACZ1100000322054
2.1.4 версия на фърмуера
Низова променлива само за четене, заредена с версията на фърмуера на рутера. Прampначин на използване:
console.log(r.firmwareVersion);
Изход: 6.2.1 (2019-10-16)
2.1.5 RTCBatteryOK
Булева променлива само за четене, заредена със състоянието на RTC батерията на рутера. Вярно означава добре, невярно означава лошо. Прampначин на използване:
console.log(r.RTCBatteryOK);
Изход: вярно
2.1.6 захранване
Променлива с десетично число само за четене, заредена със захранването на рутера voltagд. Прampначин на използване:
console.log(r.powerSupply + 'V');
Изход: 11.701 V
2.1.7 температура
Променлива с цяло число само за четене, заредена с вътрешната температура на рутера в градуси по Целзий. Прampначин на използване:
console.log(r.temperature + '◦ C');
Изход: 39 ◦ C
2.1.8 usrLED
Булева променлива само за запис за светодиода „USR“ на контролния рутер. Прampначин на използване:
r.usrLED = вярно;
Задава USR LED на ON (светене).
2.1.9 bIn
Масив само за четене със стойности на двоичните входове на рутера. Масивът има елементи, свързани с редица двоични входове. Например рутерът има BIN0 и BIN1, така че масивът има валидни индекси 0 и 1. Елементите на масива могат да имат стойности 0 или 1. Пр.ampначин на използване:
console.log(“Вторичният двоичен вход: ” + r.bIn[1]);
Изход: Вторичният двоичен вход: 0
2.1.10 навън
Масив, свързан с двоичните изходи на рутера. Подобно е на B_IN, но можете също да записвате стойности.
Записаната стойност променя изходното състояние. Прampначин на използване:
console.log(r.bOut[0]);
Резултат: 1
r.bOut[0] = 0;
Задава първия двоичен изход на 0.
2.1.11 XBus
Обектът за работа с X Bus. X Bus е собствена шина за комуникация между процесите.
Например можете да се абонирате за информация кой мрежов интерфейс се движи нагоре/надолу или SMS от мъжки демон. Можете също така да изпращате/абонирате свои собствени теми между вашите приложения.
XBus.publish(тема, полезен товар, store=false)
Изпраща съобщение с низ на тема и полезен низ на X Bus. Прampначин на използване:
r.xBus.publish(“watchdog/proc/myapp”, “Timeout: 300”);
Изпраща заявка за наблюдение на системата, за да гледа вашето приложение „myapp“. Приложението трябва да изпраща това съобщение редовно не по-късно от периода, дефиниран в предишното съобщение (300 s в този примерample). Изчакване 0 спира гледането.
XBus.subscribe(тема, обратно извикване)
Абонира се за получаване на съобщения с тема. Прampначин на използване:
функция:
xbus.subscribe(“статус/мобилен/mwan0”, (msg) => {console.log(msg.payload);});
Асинхронен изход:
Регистрация: Домашна мрежа
Технология: LTE
Сила на сигнала: -88 dBm
Качество на сигнала: -8 dB

XBus.unsubscribe(тема)
Отпишете се от темата. Прampначин на използване:
r.XBus.unsubscribe(id);
Спира да получава информация за регистрация в мрежа от предишния бившampле.
XBus.list()
Изброява съхранените съобщения. Прampначин на използване:
r.XBus.list();

Изход:
[ 'iface/ipv4/mwan0/config',
'iface/ipv4/mwan0/running',
'iface/ipv4/mwan1/config',
'iface/ipv4/mwan1/running',
'статус/мобилен/mwan0',
'статус/мобилен/mwan1',
'куче пазач/процедур/бард',
'watchdog/proc/bard6',
'watchdog/proc/mwan1d',
'watchdog/proc/mwan2d',
'watchdog/proc/mwanxd']

XBus.read(тема)
Четете съхранени съобщения от XBus. Прampначин на използване:
r.XBus.read('face/ipv4/mwan0/config');
Изход:
Нагоре: 1
Iface: usb0
Адрес: 10.184.131.221
Шлюз: 192.168.253.254
DNS1: 217.77.165.211
DNS2: 217.77.165.81

Свързани документи

[1] Advantech Czech: Ръководство за конфигуриране на SmartStart (MAN-0022-EN)
[2] Advantech Czech: Ръководство за конфигуриране на SmartFlex (MAN-0023-EN)
[3] Advantech Czech: Ръководство за конфигуриране на SmartMotion (MAN-0024-EN)
[4] Advantech Czech: Ръководство за конфигуриране на ICR-3200 (MAN-0042-EN)
[5] Потребителски модули: icr.advantech.cz/user-modules
[6] Фондация JS: https://nodered.org/

Информация или известие[EP] Документи и приложения, свързани с продукта, могат да бъдат получени на Инженерния портал на адрес icr.advantech.cz адрес.

Документи / Ресурси

ADVANTECH RouterApp Node.js [pdf] Ръководство за потребителя
ADVANTECH, RouterApp, Node.js

Референции

Оставете коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са маркирани *