Я добавил эти сведения при выводе списка.blackangel писал(а):Есть предложение к автору!
Крайне неудобно, открывать отдельно взятую запись чтобы увидеть тип запроса и адрес. Поэтому предлагаю добавить в общий список колонки "Адрес" и "тип запроса". Было бы очень удобно наглядно смотреть какие у тебя адреса заняты.
[Модуль] ModBus (modbus)
Модератор: immortal
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: модуль modbus
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 1
- Зарегистрирован: Вс мар 05, 2017 5:00 pm
- Благодарил (а): 0
- Поблагодарили: 0
Re: модуль modbus
Подскажите, не происходит опрос датчиков по крону, в чем может быть проблема? При ручном обновлении все ок...
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 694 раза
- Контактная информация:
Re: модуль modbus
Подскажите, имеется счетчик милур 104 (http://milur.ru/index.php?page=milur-104)
в описании прибора указан протокол взаимодействия modbus.
Согласно инструкции к конфигуратору http://milur.ru/uploads/Products/electr ... 7_1.19.pdf
их ПО может получать мгновенные показатели мощности, тока, напряжения и тд.
Можно ли имея устройства оптического сопряжения (УСО) каким-то образом получать эти показатели и передавать из в MD?
в описании прибора указан протокол взаимодействия modbus.
СпойлерПоказать
Требования к аппаратной и программной платформе
Соединение счетчика с персональным компьютером осуществляется с помощью
устройства оптического сопряжения (УСО), для работы со счетчиком через оптический
порт, либо с помощью преобразователя интерфейсов (ПИ) вида RS-485 – RS232 или RS485
– USB. Без описанных устройств дальнейшая работы с программы невозможна.
Программное обеспечение, в настоящее время, работает в среде Windows (XP и
старше), не требует установки и работает без дополнительных компонентов.
Соединение счетчика с персональным компьютером осуществляется с помощью
устройства оптического сопряжения (УСО), для работы со счетчиком через оптический
порт, либо с помощью преобразователя интерфейсов (ПИ) вида RS-485 – RS232 или RS485
– USB. Без описанных устройств дальнейшая работы с программы невозможна.
Программное обеспечение, в настоящее время, работает в среде Windows (XP и
старше), не требует установки и работает без дополнительных компонентов.
их ПО может получать мгновенные показатели мощности, тока, напряжения и тд.
Можно ли имея устройства оптического сопряжения (УСО) каким-то образом получать эти показатели и передавать из в MD?
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 8
- Зарегистрирован: Чт май 11, 2017 11:43 am
- Благодарил (а): 3 раза
- Поблагодарили: 0
Re: модуль modbus
Всем доброго времени суток!
Имеются в домашней работе два промышленых контролера, расположенные далеко друг от друга, интерфейс 232.
С существующей системе подключены через USR-TCP232-2 , сервер raspberry pi 2 B, в итоге имею RTU over TCP, для его принятия на распбери запушена программа socat, получаю виртуальные ссылки (порты), их указываю для com портов в софте - всё ок.
Хочу всё это перенести на majordomo, но как приклеить ДВА RTU-over-TCP - незнаю... Разница всего-то в CRC....
Замена USR-TCP232-2 на преобразователи RTU-TCP не рассматривается, т.к. при програмировании они работают как Ethernet to Serial.
С *unix на Вы и шёпотом.
Имеются в домашней работе два промышленых контролера, расположенные далеко друг от друга, интерфейс 232.
С существующей системе подключены через USR-TCP232-2 , сервер raspberry pi 2 B, в итоге имею RTU over TCP, для его принятия на распбери запушена программа socat, получаю виртуальные ссылки (порты), их указываю для com портов в софте - всё ок.
Хочу всё это перенести на majordomo, но как приклеить ДВА RTU-over-TCP - незнаю... Разница всего-то в CRC....
Замена USR-TCP232-2 на преобразователи RTU-TCP не рассматривается, т.к. при програмировании они работают как Ethernet to Serial.
С *unix на Вы и шёпотом.
-
- Сообщения: 5
- Зарегистрирован: Ср апр 05, 2017 12:07 am
- Благодарил (а): 4 раза
- Поблагодарили: 0
Re: модуль modbus
установил ser2net на разбери, настоил на 4001 порт , подключил к считчику SDM220 по юсб,
конфиг ser2net:
TRACEFILE:tr1:/var/log/ser2net/p-Y-M-D-H:i:s.U
4001:telnet:0:/dev/ttyUSB0:9600 8DATABITS NONE 1STOPBIT banner tr=tr1 timestamp
Выдает в Мажердомо:
2017-05-04 10:29:10 FC4 Error: <pre>readMultipleInputRegisters: START
Connected
Packet: 903b00000006010400000002
Send
Wait data ...
Data received
Packet: fffb03fffb01fffe01fffd000d0a736572326e657420706f7274203430303120646576696365202f6465762f74747955534230205b39363030204e38315d202844656269616e20474e552f4c696e7578290d0a0d0a
</pre> exception 'Exception' with message 'Modbus response error code: 1 (ILLEGAL FUNCTION)' in /var/www/modules/modbus/ModbusMaster.php:205
Stack trace:
#0 /var/www/modules/modbus/ModbusMaster.php(608): ModbusMaster->responseCode('\xFF\xFB\x03\xFF\xFB\x01\xFF\xFE\x01\xFF\xFD\x00\r\ns...')
#1 /var/www/modules/modbus/ModbusMaster.php(544): ModbusMaster->readMultipleInputRegistersParser('\xFF\xFB\x03\xFF\xFB\x01\xFF\xFE\x01\xFF\xFD\x00\r\ns...')
#2 /var/www/modules/modbus/modbus.class.php(249): ModbusMaster->readMultipleInputRegisters('1', '0', '2')
#3 /var/www/modules/modbus/modbus.class.php(134): modbus->poll_device('2')
#4 /var/www/modules/modbus/modbus.class.php(93): modbus->admin(Array)
#5 /var/www/lib/jTemplate.class.php(711) : eval()'d code(8): modbus->run()
#6 /var/www/lib/jTemplate.class.php(711): eval()
#7 /var/www/lib/jTemplate.class.php(195): jTemplate->parseModules('<!DOCTYPE html>...', Array, './templates/')
#8 /var/www/lib/jTemplate.class.php(109): jTemplate->parse('<!--#\n @version...', Array, './templates/')
#9 /var/www/lib/parser.class.php(93): jTemplate->__construct('./templates/pan...', Array, Object(panel))
#10 /var/www/lib/parser.class.php(63): parser->jtemplate_parse('./templates/pan...', Array)
#11 /var/www/modules/panel.class.php(162): parser->__construct('./templates/pan...', Array, Object(panel))
#12 /var/www/admin.php(37): panel->run()
#13 {main}
конфиг ser2net:
TRACEFILE:tr1:/var/log/ser2net/p-Y-M-D-H:i:s.U
4001:telnet:0:/dev/ttyUSB0:9600 8DATABITS NONE 1STOPBIT banner tr=tr1 timestamp
Выдает в Мажердомо:
2017-05-04 10:29:10 FC4 Error: <pre>readMultipleInputRegisters: START
Connected
Packet: 903b00000006010400000002
Send
Wait data ...
Data received
Packet: fffb03fffb01fffe01fffd000d0a736572326e657420706f7274203430303120646576696365202f6465762f74747955534230205b39363030204e38315d202844656269616e20474e552f4c696e7578290d0a0d0a
</pre> exception 'Exception' with message 'Modbus response error code: 1 (ILLEGAL FUNCTION)' in /var/www/modules/modbus/ModbusMaster.php:205
Stack trace:
#0 /var/www/modules/modbus/ModbusMaster.php(608): ModbusMaster->responseCode('\xFF\xFB\x03\xFF\xFB\x01\xFF\xFE\x01\xFF\xFD\x00\r\ns...')
#1 /var/www/modules/modbus/ModbusMaster.php(544): ModbusMaster->readMultipleInputRegistersParser('\xFF\xFB\x03\xFF\xFB\x01\xFF\xFE\x01\xFF\xFD\x00\r\ns...')
#2 /var/www/modules/modbus/modbus.class.php(249): ModbusMaster->readMultipleInputRegisters('1', '0', '2')
#3 /var/www/modules/modbus/modbus.class.php(134): modbus->poll_device('2')
#4 /var/www/modules/modbus/modbus.class.php(93): modbus->admin(Array)
#5 /var/www/lib/jTemplate.class.php(711) : eval()'d code(8): modbus->run()
#6 /var/www/lib/jTemplate.class.php(711): eval()
#7 /var/www/lib/jTemplate.class.php(195): jTemplate->parseModules('<!DOCTYPE html>...', Array, './templates/')
#8 /var/www/lib/jTemplate.class.php(109): jTemplate->parse('<!--#\n @version...', Array, './templates/')
#9 /var/www/lib/parser.class.php(93): jTemplate->__construct('./templates/pan...', Array, Object(panel))
#10 /var/www/lib/parser.class.php(63): parser->jtemplate_parse('./templates/pan...', Array)
#11 /var/www/modules/panel.class.php(162): parser->__construct('./templates/pan...', Array, Object(panel))
#12 /var/www/admin.php(37): panel->run()
#13 {main}
- cepxuo
- Сообщения: 98
- Зарегистрирован: Вт май 02, 2017 7:31 am
- Благодарил (а): 31 раз
- Поблагодарили: 6 раз
Re: модуль modbus
Для тех, у кого MDM крутится под Windows и кто использует USB modbus контроллер. Данный контроллер отправляет данные по COM-порту, а МДМ нужно TCP-соединение.
Я нашёл удобную утилитку, пробрасывающую СОМ-порт в ТСР: https://sourceforge.net/projects/tcpcom32/
Я нашёл удобную утилитку, пробрасывающую СОМ-порт в ТСР: https://sourceforge.net/projects/tcpcom32/
-
- Сообщения: 8
- Зарегистрирован: Чт май 11, 2017 11:43 am
- Благодарил (а): 3 раза
- Поблагодарили: 0
Re: модуль modbus
Вы опробовали?cepxuo писал(а):Для тех, у кого MDM крутится под Windows и кто использует USB modbus контроллер. Данный контроллер отправляет данные по COM-порту, а МДМ нужно TCP-соединение.
Я нашёл удобную утилитку, пробрасывающую СОМ-порт в ТСР: https://sourceforge.net/projects/tcpcom32/
Если да, то получается, что модбас тср в majordomo вычисляет и отправляет контрольную сумму в пакете, как в rtu ?!
Получается, он должен отработать режим RTU over TCP ?????
Завтра-же проверю!!!!!!!!!!!!
В чистом ModBus ТСР этого (CRC) нет.
- cepxuo
- Сообщения: 98
- Зарегистрирован: Вт май 02, 2017 7:31 am
- Благодарил (а): 31 раз
- Поблагодарили: 6 раз
Re: модуль modbus
С живыми данными не проверял, жду датчик температуры и влажности, он что-то застрял по дороге. Но пока, по ТСР получаю от USB-донгла точно такой же ответ, как по СОМ-порту.omelchuk890 писал(а): Вы опробовали?
-
- Сообщения: 8
- Зарегистрирован: Чт май 11, 2017 11:43 am
- Благодарил (а): 3 раза
- Поблагодарили: 0
Re: модуль modbus
Попробовал вживую контролер Овен ПЛК-63 с модулем Serial to Ethernet, т.е. режим RTU поверх ТСР - не работает.
Смею предположить, что и с указанной утилитой будет тоже, т.к. она НЕ конвертирует протоколы RTU<->TCP, а меняет лишь "обёртку", физический уровень.
Надеюсь, что когда нибудь в majordomo появится и ModBus RTU over TCP. проставлюсь
Смею предположить, что и с указанной утилитой будет тоже, т.к. она НЕ конвертирует протоколы RTU<->TCP, а меняет лишь "обёртку", физический уровень.
Надеюсь, что когда нибудь в majordomo появится и ModBus RTU over TCP. проставлюсь
- cepxuo
- Сообщения: 98
- Зарегистрирован: Вт май 02, 2017 7:31 am
- Благодарил (а): 31 раз
- Поблагодарили: 6 раз
Re: модуль modbus
пришёл датчик температуры/влажности на SHT20, вот отсюда: https://ru.aliexpress.com/item/RS485-SH ... 0.0.1D8DyN
Пришёл и загнал меня в ступор. Выхлоп у него такой:
Кто знает, как понять что тут где? Скорее всего 41.5% - это влажность и 30,3 градуса - температура. А остальное - что?
И да, рано радовался проге TCPCOM32. Не передаёт она RTU по TCP.
Пришёл и загнал меня в ступор. Выхлоп у него такой:
Код: Выделить всё
c:\_majordomo\apps>modpoll -1 -c 9 -m rtu -b 9600 -p none COM4
modpoll 3.4 - FieldTalk(tm) Modbus(R) Master Simulator
Copyright (c) 2002-2013 proconX Pty Ltd
Visit http://www.modbusdriver.com for Modbus libraries and tools.
Protocol configuration: Modbus RTU
Slave configuration...: address = 1, start reference = 1, count = 9
Communication.........: COM4, 9600, 8, 1, none, t/o 1.00 s, poll rate 1000 ms
Data type.............: 16-bit register, output (holding) register table
-- Polling slave...
[1]: 415
[2]: 303
[3]: 158
[4]: 16934
[5]: 26160
[6]: 16882
[7]: -13504
[8]: 16765
[9]: -28228
И да, рано радовался проге TCPCOM32. Не передаёт она RTU по TCP.