NEWS
Драйвер ModBus
-
` > У меня пока 2 устройства RTU c ID 5 и ID 10 у обоих только Holding 40001-40009. Опрос 2 раза секунду.
Подскажите, как правильно настроить ESP , что-бы можно было использовать 1 экземпляр драйвера на IOB.
И как тогда в IOB правильно прописать 2 устройства 5 и 10. `
Для каждого Slave надо свою инстанцию заводить в iob. Как настраивать esp я не знаю, но вижу, что это rtu over tcp, а это пока не поддерживается.Можешь сделать запись wireshark? Я проверил твои настройки с симулятором, работает.
-
` > У меня пока 2 устройства RTU c ID 5 и ID 10 у обоих только Holding 40001-40009. Опрос 2 раза секунду.
Подскажите, как правильно настроить ESP , что-бы можно было использовать 1 экземпляр драйвера на IOB.
И как тогда в IOB правильно прописать 2 устройства 5 и 10. `
Для каждого Slave надо свою инстанцию заводить в iob. Как настраивать esp я не знаю, но вижу, что это rtu over tcp, а это пока не поддерживается.Можешь сделать запись wireshark? Я проверил твои настройки с симулятором, работает. `
Я понял, что Modbus TCP для меня пока не по силам. Решил испытать себя в Modbus RTU.Выбрал в настройке драйвера Serial. А вот порт не ввести не выбрать на дает (нажимаю на треугольничке, а ничего не вылазиет).
Лог установки на ESXi (Ubuntu 14.04 LTS). Драйвер есть, в настройках нет выбора COM порта.
! ````
$ ./iobroker url "https://github.com/ioBroker/ioBroker.modbus/tarball/master" modbus --debug
install https://github.com/ioBroker/ioBroker.modbus/tarball/master
npm install https://github.com/ioBroker/ioBroker.modbus/tarball/master --production --prefix "/opt/iobroker" (System call)
serialport@2.1.2 install /opt/iobroker/node_modules/iobroker.modbus/node_modules/serialport
node-pre-gyp install --fallback-to-build
! module.js:327
throw err;
^
! Error: Cannot find module 'nopt' at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object. <anonymous>(/opt/iobroker/node_modules/iobroker.modbus/node_modules/serialport/node_modules/node-pre-gyp/lib/node-pre-gyp.js:14:12)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
! at Module.require (module.js:353:17)
npmWARN
optional dep failed, continuing
serialport@2.1.2serialport@4.0.3 install /opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/node_modules/serialport
node-pre-gyp install --fallback-to-build
! [serialport] Success: "/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/node_modules/serialport/build/Release/serialport.node" is installed via remote
iobroker.modbus@0.4.0 opt/iobroker/node_modules/iobroker.modbus├── stampit-log@0.3.0
├── stampit-state-machine@0.2.1
├── stampit-event-bus@0.1.1
├── put@0.0.6
├── stampit@2.1.2 (supermixer@1.0.3, lodash@3.10.1)
└── jsmodbus@1.2.4 (q@1.0.1, crc@3.4.0, serialport@4.0.3)
! got /opt/iobroker/node_modules/iobroker.modbus/admin
upload [10] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/modbus.png modbus.png image/png
upload [9] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/js/jsgrid.min.js lib/js/jsgrid.min.js application/javascript
upload [8] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/js/jsgrid.js lib/js/jsgrid.js application/javascript
upload [7] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/js/grid.locale-ru.js lib/js/grid.locale-ru.js application/javascript
upload [6] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/js/grid.locale-de.js lib/js/grid.locale-de.js application/javascript
upload [5] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/css/jsgrid.min.css lib/css/jsgrid.min.css text/css
upload [4] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/css/jsgrid.css lib/css/jsgrid.css text/css
upload [3] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/css/jsgrid-theme.min.css lib/css/jsgrid-theme.min.css text/css
upload [2] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/lib/css/jsgrid-theme.css lib/css/jsgrid-theme.css text/css
upload [1] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/index.html index.html text/html
upload [0] modbus.admin /opt/iobroker/node_modules/iobroker.modbus/admin/img/plc_back.png img/plc_back.png image/png
process exited with code 0</anonymous>Переходник на виртуалке lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 004: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubПорты на виртуалке ls -l /dev/ttyS* /dev/ttyUSB* >! ```` crw-rw---- 1 root dialout 4, 64 окт 19 13:29 /dev/ttyS0 crw-rw---- 1 root dialout 4, 65 окт 19 13:29 /dev/ttyS1 crw-rw---- 1 root dialout 4, 74 окт 19 13:29 /dev/ttyS10 crw-rw---- 1 root dialout 4, 75 окт 19 13:29 /dev/ttyS11 crw-rw---- 1 root dialout 4, 76 окт 19 13:29 /dev/ttyS12 crw-rw---- 1 root dialout 4, 77 окт 19 13:29 /dev/ttyS13 crw-rw---- 1 root dialout 4, 78 окт 19 13:29 /dev/ttyS14 crw-rw---- 1 root dialout 4, 79 окт 19 13:29 /dev/ttyS15 crw-rw---- 1 root dialout 4, 80 окт 19 13:29 /dev/ttyS16 crw-rw---- 1 root dialout 4, 81 окт 19 13:29 /dev/ttyS17 crw-rw---- 1 root dialout 4, 82 окт 19 13:29 /dev/ttyS18 crw-rw---- 1 root dialout 4, 83 окт 19 13:29 /dev/ttyS19 crw-rw---- 1 root dialout 4, 66 окт 19 13:29 /dev/ttyS2 crw-rw---- 1 root dialout 4, 84 окт 19 13:29 /dev/ttyS20 crw-rw---- 1 root dialout 4, 85 окт 19 13:29 /dev/ttyS21 crw-rw---- 1 root dialout 4, 86 окт 19 13:29 /dev/ttyS22 crw-rw---- 1 root dialout 4, 87 окт 19 13:29 /dev/ttyS23 crw-rw---- 1 root dialout 4, 88 окт 19 13:29 /dev/ttyS24 crw-rw---- 1 root dialout 4, 89 окт 19 13:29 /dev/ttyS25 crw-rw---- 1 root dialout 4, 90 окт 19 13:29 /dev/ttyS26 crw-rw---- 1 root dialout 4, 91 окт 19 13:29 /dev/ttyS27 crw-rw---- 1 root dialout 4, 92 окт 19 13:29 /dev/ttyS28 crw-rw---- 1 root dialout 4, 93 окт 19 13:29 /dev/ttyS29 crw-rw---- 1 root dialout 4, 67 окт 19 13:29 /dev/ttyS3 crw-rw---- 1 root dialout 4, 94 окт 19 13:29 /dev/ttyS30 crw-rw---- 1 root dialout 4, 95 окт 19 13:29 /dev/ttyS31 crw-rw---- 1 root dialout 4, 68 окт 19 13:29 /dev/ttyS4 crw-rw---- 1 root dialout 4, 69 окт 19 13:29 /dev/ttyS5 crw-rw---- 1 root dialout 4, 70 окт 19 13:29 /dev/ttyS6 crw-rw---- 1 root dialout 4, 71 окт 19 13:29 /dev/ttyS7 crw-rw---- 1 root dialout 4, 72 окт 19 13:29 /dev/ttyS8 crw-rw---- 1 root dialout 4, 73 окт 19 13:29 /dev/ttyS9 crw-rw---- 1 root dialout 188, 0 окт 19 13:29 /dev/ttyUSB0 >! ```` Что-то не везет мне. А так хочется насосы и датчики в теплице по modbus включить… но до весны еще далеко... разберусь.
-
А драйвер запущен? В логе есть что нибудь при уровне Debug?
-
Не стал дожидаться посылки из Китая. Сделал опрос по ModBus TCP из IOB (опрашивается программный ModBus Slave).
Первое на что обратил внимание, это смещение адресов в Coils и discreteinputs. Например в slave взвожу coil с адресом 3, а в IOB взводится coil с адресом 1 `
В modbus есть два типа адресации. Прямые адреса от 0 до 65536 плюс тип регИстра или так называемые Aliases: например Coils от 1 до 1000Потом есть устройства, где адреса перевернуты при Aliases, а где нет.
Вопрос: Aliases или нет. `
Посмотрел запросы, которые шлет IOB при опросе Coils и discreteinputs. Независимо от количества и адресов переменных. Запрос всегда выглядит одинаково - 10 регистров с нулевого адреса.
-
Не стал дожидаться посылки из Китая. Сделал опрос по ModBus TCP из IOB (опрашивается программный ModBus Slave).
Первое на что обратил внимание, это смещение адресов в Coils и discreteinputs. Например в slave взвожу coil с адресом 3, а в IOB взводится coil с адресом 1 `
В modbus есть два типа адресации. Прямые адреса от 0 до 65536 плюс тип регИстра или так называемые Aliases: например Coils от 1 до 1000Потом есть устройства, где адреса перевернуты при Aliases, а где нет.
Вопрос: Aliases или нет. `
Посмотрел запросы, которые шлет IOB при опросе Coils и discreteinputs. Независимо от количества и адресов переменных. Запрос всегда выглядит одинаково - 10 регистров с нулевого адреса. `
Вопрос: Aliases или нет.В wireshark видны только прямые адреса. И iob перекодирует Aliases в прямые адреса при запросе.
-
А драйвер запущен? В логе есть что нибудь при уровне Debug? `
Уж не помню где дебаг включается в новой админке…! ````
modbus-0 2016-10-19 14:27:50.315 info terminating
RangeError: 2016-10-19 14:27:50.302 error at Socket.Readable.push (_stream_readable.js:111:10)
RangeError: 2016-10-19 14:27:50.302 error at readableAddChunk (_stream_readable.js:153:18)
RangeError: 2016-10-19 14:27:50.302 error at Socket.emit (events.js:169:7)
RangeError: 2016-10-19 14:27:50.302 error at emitOne (events.js:77:13)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-tcp-client.js:129:22)
RangeError: 2016-10-19 14:27:50.302 error at Object.emit (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit-event-bus/src/stampit-event-bus.js:20:38)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-client-core.js:135:17)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-client-core.js:91:33)
RangeError: 2016-10-19 14:27:50.302 error at Buffer.readUInt8 (buffer.js:718:5)
RangeError: 2016-10-19 14:27:50.302 error at checkOffset (buffer.js:680:11)
RangeError: 2016-10-19 14:27:50.302 error index out of range
uncaught 2016-10-19 14:27:50.301 error exception: index out of range
modbus-0 2016-10-19 14:27:50.292 info Connected to slave 192.168.11.205
modbus-0 2016-10-19 14:27:50.239 warn Serial is not available
modbus-0 2016-10-19 14:27:50.235 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
host-Bee-IoT 2016-10-19 14:27:49.803 info instance system.adapter.modbus.0 started with pid 4679
host-Bee-IoT 2016-10-19 14:27:47.318 info instance system.adapter.modbus.0 terminated with code 0 (OK)
modbus-0 2016-10-19 14:27:47.307 info terminating
host-Bee-IoT 2016-10-19 14:27:47.298 info stopInstance system.adapter.modbus.0 killing pid 4668
host-Bee-IoT 2016-10-19 14:27:47.298 info stopInstance system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:27:47.298 info object change system.adapter.modbus.0
modbus-0 2016-10-19 14:27:39.556 warn Module serialport is not available
modbus-0 2016-10-19 14:27:12.621 info Connected to slave 192.168.11.205
modbus-0 2016-10-19 14:27:12.571 warn Serial is not available
modbus-0 2016-10-19 14:27:12.567 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
host-Bee-IoT 2016-10-19 14:27:12.129 info instance system.adapter.modbus.0 started with pid 4668
host-Bee-IoT 2016-10-19 14:27:12.126 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:27:09.269 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:26:36.974 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:16:51.782 info Do not restart adapter system.adapter.modbus.0 because disabled or deleted
host-Bee-IoT 2016-10-19 14:16:51.782 error instance system.adapter.modbus.0 terminated with code 3 (Adapter disabled or invalid config)
host-Bee-IoT 2016-10-19 14:16:38.916 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:16:21.327 info Restart adapter system.adapter.modbus.0 because enabled
host-Bee-IoT 2016-10-19 14:16:21.327 error instance system.adapter.modbus.0 terminated with code 0 (OK)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:773:21
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/main.js:1150:13
Error: 2016-10-19 14:16:21.302 error at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1147:22)
Error: 2016-10-19 14:16:21.302 error at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1631:53)
Error: 2016-10-19 14:16:21.302 error at Object.Factory [as complete] (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:177:48)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/createForEach.js:15:9
Error: 2016-10-19 14:16:21.302 error at arrayEach (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/arrayEach.js:15:9)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:185:31
Error: 2016-10-19 14:16:21.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:119:9)
Error: 2016-10-19 14:16:21.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:19:23)
Error: 2016-10-19 14:16:21.302 error No portname.
uncaught 2016-10-19 14:16:21.301 error exception: No portname.
modbus-0 2016-10-19 14:16:21.234 warn Serial is not availableЕсли удаляю драйвер, а затем его ставлю вновь, то список с COM портами раскрывается (на выбор "Выбирите порт" и "Not available") Если сохранить изменения и снова зайти в настройки, то выбора уже никакого нет. А поддерживаются только ttyS* порты, или ttyUSB* тоже?
-
Для каждого Slave надо свою инстанцию заводить в iob. Как настраивать esp я не знаю, но вижу, что это rtu over tcp, а это пока не поддерживается. `
Нет в ESP не rtu over tcp, там именно ModBus TCP. Драйвер ModBusTCP в IOB опрашивает ESP без проблем
-
-
В modbus есть два типа адресации. Прямые адреса от 0 до 65536 плюс тип регИстра или так называемые Aliases: например Coils от 1 до 1000
Потом есть устройства, где адреса перевернуты при Aliases, а где нет.
Вопрос: Aliases или нет. `
Посмотрел запросы, которые шлет IOB при опросе Coils и discreteinputs. Независимо от количества и адресов переменных. Запрос всегда выглядит одинаково - 10 регистров с нулевого адреса. `
Вопрос: Aliases или нет.В wireshark видны только прямые адреса. И iob перекодирует Aliases в прямые адреса при запросе. `
Попробую объяснить… например, в IOB, я задаю опрашивать три подряд Holding регистра начиная с адреса X (не важно aliases или нет), в запросе от IOB я вижу, что стартовый адрес X и длина запрашиваемых регистров равна трем. Если же я запрашиваю, например, три Coils регистра, то в запросе от IOB я всегда вижу, что стартовый адрес 00 и длина запрашиваемых регистров равна 10. Всегда!!! Даже если я добавлю 15 переменных в Coils, запрос всегда одинаковый.
-
А драйвер запущен? В логе есть что нибудь при уровне Debug? `
Уж не помню где дебаг включается в новой админке…! ````
modbus-0 2016-10-19 14:27:50.315 info terminating
RangeError: 2016-10-19 14:27:50.302 error at Socket.Readable.push (_stream_readable.js:111:10)
RangeError: 2016-10-19 14:27:50.302 error at readableAddChunk (_stream_readable.js:153:18)
RangeError: 2016-10-19 14:27:50.302 error at Socket.emit (events.js:169:7)
RangeError: 2016-10-19 14:27:50.302 error at emitOne (events.js:77:13)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-tcp-client.js:129:22)
RangeError: 2016-10-19 14:27:50.302 error at Object.emit (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit-event-bus/src/stampit-event-bus.js:20:38)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-client-core.js:135:17)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-client-core.js:91:33)
RangeError: 2016-10-19 14:27:50.302 error at Buffer.readUInt8 (buffer.js:718:5)
RangeError: 2016-10-19 14:27:50.302 error at checkOffset (buffer.js:680:11)
RangeError: 2016-10-19 14:27:50.302 error index out of range
uncaught 2016-10-19 14:27:50.301 error exception: index out of range
modbus-0 2016-10-19 14:27:50.292 info Connected to slave 192.168.11.205
modbus-0 2016-10-19 14:27:50.239 warn Serial is not available
modbus-0 2016-10-19 14:27:50.235 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
host-Bee-IoT 2016-10-19 14:27:49.803 info instance system.adapter.modbus.0 started with pid 4679
host-Bee-IoT 2016-10-19 14:27:47.318 info instance system.adapter.modbus.0 terminated with code 0 (OK)
modbus-0 2016-10-19 14:27:47.307 info terminating
host-Bee-IoT 2016-10-19 14:27:47.298 info stopInstance system.adapter.modbus.0 killing pid 4668
host-Bee-IoT 2016-10-19 14:27:47.298 info stopInstance system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:27:47.298 info object change system.adapter.modbus.0
modbus-0 2016-10-19 14:27:39.556 warn Module serialport is not available
modbus-0 2016-10-19 14:27:12.621 info Connected to slave 192.168.11.205
modbus-0 2016-10-19 14:27:12.571 warn Serial is not available
modbus-0 2016-10-19 14:27:12.567 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
host-Bee-IoT 2016-10-19 14:27:12.129 info instance system.adapter.modbus.0 started with pid 4668
host-Bee-IoT 2016-10-19 14:27:12.126 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:27:09.269 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:26:36.974 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:16:51.782 info Do not restart adapter system.adapter.modbus.0 because disabled or deleted
host-Bee-IoT 2016-10-19 14:16:51.782 error instance system.adapter.modbus.0 terminated with code 3 (Adapter disabled or invalid config)
host-Bee-IoT 2016-10-19 14:16:38.916 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:16:21.327 info Restart adapter system.adapter.modbus.0 because enabled
host-Bee-IoT 2016-10-19 14:16:21.327 error instance system.adapter.modbus.0 terminated with code 0 (OK)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:773:21
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/main.js:1150:13
Error: 2016-10-19 14:16:21.302 error at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1147:22)
Error: 2016-10-19 14:16:21.302 error at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1631:53)
Error: 2016-10-19 14:16:21.302 error at Object.Factory [as complete] (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:177:48)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/createForEach.js:15:9
Error: 2016-10-19 14:16:21.302 error at arrayEach (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/arrayEach.js:15:9)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:185:31
Error: 2016-10-19 14:16:21.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:119:9)
Error: 2016-10-19 14:16:21.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:19:23)
Error: 2016-10-19 14:16:21.302 error No portname.
uncaught 2016-10-19 14:16:21.301 error exception: No portname.
modbus-0 2016-10-19 14:16:21.234 warn Serial is not availableЕсли удаляю драйвер, а затем его ставлю вновь, то список с COM портами раскрывается (на выбор "Выбирите порт" и "Not available") Если сохранить изменения и снова зайти в настройки, то выбора уже никакого нет. А поддерживаются только ttyS* порты, или ttyUSB* тоже? `
Я уже вижу
Serial is not available
А build-essential поставлены?
cd /opt/iobroker sudo apt-get install build-essential iobroker stop modbus npm install iobroker.modbus iobroker start modbus
-
А драйвер запущен? В логе есть что нибудь при уровне Debug? `
Уж не помню где дебаг включается в новой админке…! ````
modbus-0 2016-10-19 14:27:50.315 info terminating
RangeError: 2016-10-19 14:27:50.302 error at Socket.Readable.push (_stream_readable.js:111:10)
RangeError: 2016-10-19 14:27:50.302 error at readableAddChunk (_stream_readable.js:153:18)
RangeError: 2016-10-19 14:27:50.302 error at Socket.emit (events.js:169:7)
RangeError: 2016-10-19 14:27:50.302 error at emitOne (events.js:77:13)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-tcp-client.js:129:22)
RangeError: 2016-10-19 14:27:50.302 error at Object.emit (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit-event-bus/src/stampit-event-bus.js:20:38)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-client-core.js:135:17)
RangeError: 2016-10-19 14:27:50.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-client-core.js:91:33)
RangeError: 2016-10-19 14:27:50.302 error at Buffer.readUInt8 (buffer.js:718:5)
RangeError: 2016-10-19 14:27:50.302 error at checkOffset (buffer.js:680:11)
RangeError: 2016-10-19 14:27:50.302 error index out of range
uncaught 2016-10-19 14:27:50.301 error exception: index out of range
modbus-0 2016-10-19 14:27:50.292 info Connected to slave 192.168.11.205
modbus-0 2016-10-19 14:27:50.239 warn Serial is not available
modbus-0 2016-10-19 14:27:50.235 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
host-Bee-IoT 2016-10-19 14:27:49.803 info instance system.adapter.modbus.0 started with pid 4679
host-Bee-IoT 2016-10-19 14:27:47.318 info instance system.adapter.modbus.0 terminated with code 0 (OK)
modbus-0 2016-10-19 14:27:47.307 info terminating
host-Bee-IoT 2016-10-19 14:27:47.298 info stopInstance system.adapter.modbus.0 killing pid 4668
host-Bee-IoT 2016-10-19 14:27:47.298 info stopInstance system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:27:47.298 info object change system.adapter.modbus.0
modbus-0 2016-10-19 14:27:39.556 warn Module serialport is not available
modbus-0 2016-10-19 14:27:12.621 info Connected to slave 192.168.11.205
modbus-0 2016-10-19 14:27:12.571 warn Serial is not available
modbus-0 2016-10-19 14:27:12.567 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
host-Bee-IoT 2016-10-19 14:27:12.129 info instance system.adapter.modbus.0 started with pid 4668
host-Bee-IoT 2016-10-19 14:27:12.126 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:27:09.269 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:26:36.974 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:16:51.782 info Do not restart adapter system.adapter.modbus.0 because disabled or deleted
host-Bee-IoT 2016-10-19 14:16:51.782 error instance system.adapter.modbus.0 terminated with code 3 (Adapter disabled or invalid config)
host-Bee-IoT 2016-10-19 14:16:38.916 info object change system.adapter.modbus.0
host-Bee-IoT 2016-10-19 14:16:21.327 info Restart adapter system.adapter.modbus.0 because enabled
host-Bee-IoT 2016-10-19 14:16:21.327 error instance system.adapter.modbus.0 terminated with code 0 (OK)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:773:21
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/main.js:1150:13
Error: 2016-10-19 14:16:21.302 error at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1147:22)
Error: 2016-10-19 14:16:21.302 error at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1631:53)
Error: 2016-10-19 14:16:21.302 error at Object.Factory [as complete] (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:177:48)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/createForEach.js:15:9
Error: 2016-10-19 14:16:21.302 error at arrayEach (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/arrayEach.js:15:9)
Error: 2016-10-19 14:16:21.302 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:185:31
Error: 2016-10-19 14:16:21.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:119:9)
Error: 2016-10-19 14:16:21.302 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:19:23)
Error: 2016-10-19 14:16:21.302 error No portname.
uncaught 2016-10-19 14:16:21.301 error exception: No portname.
modbus-0 2016-10-19 14:16:21.234 warn Serial is not availableЕсли удаляю драйвер, а затем его ставлю вновь, то список с COM портами раскрывается (на выбор "Выбирите порт" и "Not available") Если сохранить изменения и снова зайти в настройки, то выбора уже никакого нет. А поддерживаются только ttyS* порты, или ttyUSB* тоже? `
Я уже вижу
Serial is not available
А build-essential поставлены? `
А как-же без нееbuild-essential is already the newest version (12.1ubuntu2).
При дебаге есть не обльшие отличия…
modbus-0 2016-10-19 15:06:44.372 debug statesDB connected modbus-0 2016-10-19 15:06:44.366 debug objectDB connected host-Bee-IoT 2016-10-19 15:06:44.036 info instance system.adapter.modbus.0 started with pid 5312 host-Bee-IoT 2016-10-19 15:06:44.032 info object change system.adapter.modbus.0 host-Bee-IoT 2016-10-19 15:06:36.076 info Restart adapter system.adapter.modbus.0 because enabled host-Bee-IoT 2016-10-19 15:06:36.076 error instance system.adapter.modbus.0 terminated with code 0 (OK) modbus-0 2016-10-19 15:06:36.067 info terminating inMem 2016-10-19 15:06:36.062 debug message modbus.0.* modbus.0.info.connection val=false, ack=true, ts=1476864396059, q=0, from=system.adapter.modbus.0, lc=1476864395998
А поддерживаются только ttyS* порты, или ttyUSB* тоже?
В npm install iobroker.modbus - старый!!!
Ставлю с гита.
-
Переткнул USB-RS485 из ESXi в OrangePi PC.
Там дает выбрать /dev/tyyS0 или /dev/ttyUSB0.
Выбираю /dev/ttyUSB0.
После сохранения больше выбрать не дает ничего из портов.
! ````
host-orangepi-iot 2016-10-19 15:16:29.016 info Restart adapter system.adapter.modbus.0 because enabled
host-orangepi-iot 2016-10-19 15:16:29.015 error instance system.adapter.modbus.0 terminated with code 0 (OK)
inMem 2016-10-19 15:16:28.964 debug message modbus.0.* modbus.0.info.connection val=false, ack=true, ts=1476864988957, q=0, from=system.adapter.modbus.0, lc=1476864988781
TypeError: 2016-10-19 15:16:28.938 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
TypeError: 2016-10-19 15:16:28.938 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
TypeError: 2016-10-19 15:16:28.938 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:229:12)
TypeError: 2016-10-19 15:16:28.938 error at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:305:9)
TypeError: 2016-10-19 15:16:28.938 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:707:35)
TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:773:21
TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.modbus/main.js:1150:13
TypeError: 2016-10-19 15:16:28.938 error at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1147:22)
TypeError: 2016-10-19 15:16:28.938 error at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1631:53)
TypeError: 2016-10-19 15:16:28.938 error at Object.Factory [as complete] (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:177:48)
TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/createForEach.js:15:9
TypeError: 2016-10-19 15:16:28.938 error at arrayEach (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/arrayEach.js:15:9)
TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:185:31
TypeError: 2016-10-19 15:16:28.938 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:119:9)
TypeError: 2016-10-19 15:16:28.938 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:42:26)
TypeError: 2016-10-19 15:16:28.938 error at new SerialPort (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/node_modules/serialport/lib/serialport.js:101:11)
TypeError: 2016-10-19 15:16:28.938 error Invalid "baudRate" must be a number got: 9600
uncaught 2016-10-19 15:16:28.930 error exception: Invalid "baudRate" must be a number got: 9600
modbus-0 2016-10-19 15:16:27.951 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
modbus-0 2016-10-19 15:16:27.772 debug statesDB connected
modbus-0 2016-10-19 15:16:27.732 debug objectDB connected
host-orangepi-iot 2016-10-19 15:16:25.456 info instance system.adapter.modbus.0 started with pid 26218
host-orangepi-iot 2016-10-19 15:16:22.948 info instance system.adapter.modbus.0 terminated with code null ()
host-orangepi-iot 2016-10-19 15:16:22.947 warn instance system.adapter.modbus.0 terminated due to SIGTERMМеня пугает строчка - Invalid "baudRate" must be a number got: 9600
root@orangepi-iot:~# ls -l /dev/ttyS* /dev/ttyUSB*
crw--w---- 1 root tty 251, 0 Oct 12 17:17 /dev/ttyS0
crw-rw---- 1 root dialout 188, 0 Oct 19 15:12 /dev/ttyUSB0
root@orangepi-iot:~#Может права на порт задать другие?
-
Переткнул USB-RS485 из ESXi в OrangePi PC.
Там дает выбрать /dev/tyyS0 или /dev/ttyUSB0.
Выбираю /dev/ttyUSB0.
После сохранения больше выбрать не дает ничего из портов.
!
host-orangepi-iot 2016-10-19 15:16:29.016 info Restart adapter system.adapter.modbus.0 because enabled host-orangepi-iot 2016-10-19 15:16:29.015 error instance system.adapter.modbus.0 terminated with code 0 (OK) inMem 2016-10-19 15:16:28.964 debug message modbus.0.* modbus.0.info.connection val=false, ack=true, ts=1476864988957, q=0, from=system.adapter.modbus.0, lc=1476864988781 TypeError: 2016-10-19 15:16:28.938 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20) TypeError: 2016-10-19 15:16:28.938 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15) TypeError: 2016-10-19 15:16:28.938 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:229:12) TypeError: 2016-10-19 15:16:28.938 error at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:305:9) TypeError: 2016-10-19 15:16:28.938 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:707:35) TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:773:21 TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.modbus/main.js:1150:13 TypeError: 2016-10-19 15:16:28.938 error at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1147:22) TypeError: 2016-10-19 15:16:28.938 error at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1631:53) TypeError: 2016-10-19 15:16:28.938 error at Object.Factory [as complete] (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:177:48) TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/createForEach.js:15:9 TypeError: 2016-10-19 15:16:28.938 error at arrayEach (/opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/node_modules/lodash/internal/arrayEach.js:15:9) TypeError: 2016-10-19 15:16:28.938 error at /opt/iobroker/node_modules/iobroker.modbus/node_modules/stampit/dist/stampit.js:185:31 TypeError: 2016-10-19 15:16:28.938 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:119:9) TypeError: 2016-10-19 15:16:28.938 error at Object. (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/src/modbus-serial-client.js:42:26) TypeError: 2016-10-19 15:16:28.938 error at new SerialPort (/opt/iobroker/node_modules/iobroker.modbus/node_modules/jsmodbus/node_modules/serialport/lib/serialport.js:101:11) TypeError: 2016-10-19 15:16:28.938 error Invalid "baudRate" must be a number got: 9600 uncaught 2016-10-19 15:16:28.930 error exception: Invalid "baudRate" must be a number got: 9600 modbus-0 2016-10-19 15:16:27.951 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus modbus-0 2016-10-19 15:16:27.772 debug statesDB connected modbus-0 2016-10-19 15:16:27.732 debug objectDB connected host-orangepi-iot 2016-10-19 15:16:25.456 info instance system.adapter.modbus.0 started with pid 26218 host-orangepi-iot 2016-10-19 15:16:22.948 info instance system.adapter.modbus.0 terminated with code null () host-orangepi-iot 2016-10-19 15:16:22.947 warn instance system.adapter.modbus.0 terminated due to SIGTERM
`
У меня всё также -
-
Может права на порт задать другие? `
Обновись с гита. -
Обновись с гита. `
Обновился с гита. Не знаю как на serial (нет возможности проверить). А вот у TCP в запросе, ID устройства не меняется, всегда 00. -
-
-
-
Интересно. Что конкретно заработало? TCP? Master? с кем общается? `
TCP заработал как и 0.3.11 (пока одно устройство ID 5 на arduino и 9 Holding регистров)На виртуалке ни вкакую не хочет в IOB видеть COM порты через USB.
Что странно, то USB GSM модемы отлично работают в asterisk на этoм-же сервере.
PS: RTU на OrangePi PC так-же не дает выбрать порт после сохранения…
Но в логах уже есть обнадеживающие записи, касательно USB переходника
! ````
host-orangepi-iot 2016-10-19 20:58:37.473 info Restart adapter system.adapter.modbus.0 because enabled
host-orangepi-iot 2016-10-19 20:58:37.472 error instance system.adapter.modbus.0 terminated with code 0 (OK)
modbus-0 2016-10-19 20:58:37.433 info terminating
TypeError: 2016-10-19 20:58:37.344 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/component-emitter/index.js:134:20)
TypeError: 2016-10-19 20:58:37.344 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
TypeError: 2016-10-19 20:58:37.344 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:323:16)
TypeError: 2016-10-19 20:58:37.344 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:247:12)
TypeError: 2016-10-19 20:58:37.344 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
TypeError: 2016-10-19 20:58:37.344 error at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
TypeError: 2016-10-19 20:58:37.344 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:333:8)
TypeError: 2016-10-19 20:58:37.344 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
TypeError: 2016-10-19 20:58:37.344 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
TypeError: 2016-10-19 20:58:37.344 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:229:12)
TypeError: 2016-10-19 20:58:37.344 error at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:305:9)
TypeError: 2016-10-19 20:58:37.344 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:707:35)
TypeError: 2016-10-19 20:58:37.344 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:773:21
TypeError: 2016-10-19 20:58:37.344 error at /opt/iobroker/node_modules/iobroker.modbus/main.js:1258:13
TypeError: 2016-10-19 20:58:37.344 error at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1255:22)
TypeError: 2016-10-19 20:58:37.344 error at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1583:26)
TypeError: 2016-10-19 20:58:37.344 error modbusClient.connect is not a function
uncaught 2016-10-19 20:58:37.334 error exception: modbusClient.connect is not a function
modbus-0 2016-10-19 20:58:36.299 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
host-orangepi-iot 2016-10-19 20:58:33.737 info instance system.adapter.modbus.0 started with pid 31857
host-orangepi-iot 2016-10-19 20:58:31.239 info instance system.adapter.modbus.0 terminated with code 0 (OK)
modbus-0 2016-10-19 20:58:31.204 info terminating
host-orangepi-iot 2016-10-19 20:58:31.157 info stopInstance system.adapter.modbus.0 killing pid 31773
host-orangepi-iot 2016-10-19 20:58:31.155 info stopInstance system.adapter.modbus.0
host-orangepi-iot 2016-10-19 20:58:31.145 info object change system.adapter.modbus.0
modbus-0 2016-10-19 20:58:06.901 info List of port: [{"comName":"/dev/ttyS0"},{"comName":"/dev/ttyUSB0","manufacturer":"1a86","serialNumber":"1a86_USB2.0-Serial","pnpId":"usb-1a86_USB2.0-Serial-if00-port0","vendorId":"0x1a86","productId"
modbus-0 2016-10-19 20:57:53.650 warn Error: connect ECONNREFUSED 127.0.0.1:502
modbus-0 2016-10-19 20:57:52.541 info starting. Version 0.4.0 in /opt/iobroker/node_modules/iobroker.modbus
iobroker 2016-10-19 20:57:49.956 info exit 0
iobroker 2016-10-19 20:57:49.936 info host.orangepi-iot object system.adapter.modbus.0 created