[Модуль] ModBus (modbus)
Модератор: immortal
-
- Сообщения: 10
- Зарегистрирован: Пн июл 04, 2016 4:46 pm
- Благодарил (а): 0
- Поблагодарили: 0
Re: модуль modbus
Было бы здорово добавить поддержку считывания по запросу а не по таймеру, тогда можно было настроить скрипт который может запускать считывание когда необходимо и не засорять канал ненужным считыванием данных - я понимаю что можно настроить интервалы, но мне кажется это как-то неправильно.
Возникла проблема:
У меня получается такая ситуация - есть два разных преобразователя Ethernet-Modbus RTU и один прибор с двумя релюшками и двумя датчиками.
Я настроил считывание периодически показаний двух датчиков, состояние реле№1 и управление реле №2 по кнопке на Сцене.
Включаю систему с первым преобразователем, показания считываются периодически все Ок. Управляю Реле№2 по кнопке - все Ок, данные продолжают дальше считываться периодически.
Включаю систему со вторым преобразователем, показания считываются периодически - все Ок. Управляю Реле№2 по кнопке все Ок, но данные перестают считываться периодически, хотя если зайти в панель управления и считать принудительно - то данные считывают.
Получается со вторым преобразователем я могу управлять системой, но данные получить периодически уже не могу =(((
Подскажите куда копать и как отдебажить данную проблему. Возможно проблема в преобразователе что он не такой шустрый, как первый и не успевает все обработать, но все таки хотелось бы что б периодический опрос датчиков не останавливался.
Возникла проблема:
У меня получается такая ситуация - есть два разных преобразователя Ethernet-Modbus RTU и один прибор с двумя релюшками и двумя датчиками.
Я настроил считывание периодически показаний двух датчиков, состояние реле№1 и управление реле №2 по кнопке на Сцене.
Включаю систему с первым преобразователем, показания считываются периодически все Ок. Управляю Реле№2 по кнопке - все Ок, данные продолжают дальше считываться периодически.
Включаю систему со вторым преобразователем, показания считываются периодически - все Ок. Управляю Реле№2 по кнопке все Ок, но данные перестают считываться периодически, хотя если зайти в панель управления и считать принудительно - то данные считывают.
Получается со вторым преобразователем я могу управлять системой, но данные получить периодически уже не могу =(((
Подскажите куда копать и как отдебажить данную проблему. Возможно проблема в преобразователе что он не такой шустрый, как первый и не успевает все обработать, но все таки хотелось бы что б периодический опрос датчиков не останавливался.
- foxvlad
- Сообщения: 287
- Зарегистрирован: Пн сен 22, 2014 3:18 pm
- Откуда: Сочи
- Благодарил (а): 78 раз
- Поблагодарили: 78 раз
- Контактная информация:
Re: модуль modbus
Modbus так устроен,что бы периодически вести опрос.MrDorianGray писал(а):Было бы здорово добавить поддержку считывания по запросу а не по таймеру, тогда можно было настроить скрипт который может запускать считывание когда необходимо и не засорять канал ненужным считыванием данных - я понимаю что можно настроить интервалы, но мне кажется это как-то неправильно.
Возникла проблема:
У меня получается такая ситуация - есть два разных преобразователя Ethernet-Modbus RTU и один прибор с двумя релюшками и двумя датчиками.
Я настроил считывание периодически показаний двух датчиков, состояние реле№1 и управление реле №2 по кнопке на Сцене.
Включаю систему с первым преобразователем, показания считываются периодически все Ок. Управляю Реле№2 по кнопке - все Ок, данные продолжают дальше считываться периодически.
Включаю систему со вторым преобразователем, показания считываются периодически - все Ок. Управляю Реле№2 по кнопке все Ок, но данные перестают считываться периодически, хотя если зайти в панель управления и считать принудительно - то данные считывают.
Получается со вторым преобразователем я могу управлять системой, но данные получить периодически уже не могу =(((
Подскажите куда копать и как отдебажить данную проблему. Возможно проблема в преобразователе что он не такой шустрый, как первый и не успевает все обработать, но все таки хотелось бы что б периодический опрос датчиков не останавливался.
Посмотрите в логах, что происходить по второму преобразователю.
Это скорее всего проблема либо в устройстве либо в ваших настройках, надо как то подробней глянуть, что у вас за настройки и как прописана кнопка с объектах и методах.
Если есть возможность, свяжитесь со мной завтра в группе в контакте, ссылка на группу есть на моем сайте и на канале.
Youtube канал - https://www.youtube.com/c/OkBitru
-
- Сообщения: 10
- Зарегистрирован: Пн июл 04, 2016 4:46 pm
- Благодарил (а): 0
- Поблагодарили: 0
Re: модуль modbus
Та настроено вроде все как-обычно по видео, которое было выше. Возникает ощущение, что в один прекрасный момент преобразователь не успевает ответить на запрос и система думает что прибор заглючил и соответственно прекращает опрос, хотя скрипт cycle_modbus.php вызывается системой.
-
- Сообщения: 128
- Зарегистрирован: Пт июл 15, 2016 3:12 am
- Благодарил (а): 6 раз
- Поблагодарили: 2 раза
Re: модуль modbus
ребят подскажите по modbus tcp
настроил ардуинку слейв 1 передача температура
в МД в модуле модбас приём, но как дальше вывести в сцену не могу разобратся
настроил ардуинку слейв 1 передача температура
в МД в модуле модбас приём, но как дальше вывести в сцену не могу разобратся
-
- Сообщения: 10
- Зарегистрирован: Пн июл 04, 2016 4:46 pm
- Благодарил (а): 0
- Поблагодарили: 0
Re: модуль modbus
Тебе необходимо создать объект, в свойство которого ты будешь сохранять считанные данные, а потом с помощью скрипта разбивать данные - если у тебя считывается сразу несколько значений через запятую.
Смотри видео - https://www.youtube.com/watch?v=AsRB-JSuCVU .
Смотри видео - https://www.youtube.com/watch?v=AsRB-JSuCVU .
-
- Сообщения: 10
- Зарегистрирован: Пн июл 04, 2016 4:46 pm
- Благодарил (а): 0
- Поблагодарили: 0
Re: модуль modbus
Вопрос к разработчику модуля: с какой целью делалась рандомизация номера порта TCP соединения (в разных запросах он разный).
Выяснилось что второй преобразователь может поддерживать только пять активных соединений одновременно. Почему бы не сделать один исходящий порт для обмена данными, который указывать при создании соединения?
Выяснилось что второй преобразователь может поддерживать только пять активных соединений одновременно. Почему бы не сделать один исходящий порт для обмена данными, который указывать при создании соединения?
- foxvlad
- Сообщения: 287
- Зарегистрирован: Пн сен 22, 2014 3:18 pm
- Откуда: Сочи
- Благодарил (а): 78 раз
- Поблагодарили: 78 раз
- Контактная информация:
Re: модуль modbus
Чего-то я не понял про, что вы?MrDorianGray писал(а):Вопрос к разработчику модуля: с какой целью делалась рандомизация номера порта TCP соединения (в разных запросах он разный).
Выяснилось что второй преобразователь может поддерживать только пять активных соединений одновременно. Почему бы не сделать один исходящий порт для обмена данными, который указывать при создании соединения?
Youtube канал - https://www.youtube.com/c/OkBitru
-
- Сообщения: 128
- Зарегистрирован: Пт июл 15, 2016 3:12 am
- Благодарил (а): 6 раз
- Поблагодарили: 2 раза
Re: модуль modbus
скажите пробовал принимать как в видео все переменные но у меня читает через раз ато и через 5 в логе куча ошибок
или просто не обновляет
и пришлось для каждого адреса свою запись делать , так вроде более менее стабильно принимает.
но не понял как происходит авто обновление хоть и указанно раз в 3 секунды но он не обновляет данные. вернее обновляет только в ручную ито криво не каждый раз
PS
По поводу ошибок разобрался 1 регистр несуществующий прописал
остальное не могу победить
modbus pool читает всё коректно и бза ошибок
или просто не обновляет
и пришлось для каждого адреса свою запись делать , так вроде более менее стабильно принимает.
но не понял как происходит авто обновление хоть и указанно раз в 3 секунды но он не обновляет данные. вернее обновляет только в ручную ито криво не каждый раз
PS
По поводу ошибок разобрался 1 регистр несуществующий прописал
остальное не могу победить
modbus pool читает всё коректно и бза ошибок
Re: модуль modbus
Попробую немнго обьяснить... Есть несколько моентов...foxvlad писал(а): Чего-то я не понял про, что вы?
1) На каждый modbus запрос открывается новое ТСР соединение. Почему была вложена така логика?
2) Каждый запрос modbus-ТСР протокола имеет рандомный порядковый номер что не есть хорошо...
-
- Сообщения: 136
- Зарегистрирован: Вс июл 14, 2013 2:42 pm
- Благодарил (а): 6 раз
- Поблагодарили: 27 раз
Re: модуль modbus
Читайте несколько регистров сразу из устройства. Будете получать данные одним запросом по одному TCP соединению.
- Рейтинг: 1.16%