PDA

Просмотр полной версии : Обмен через ModBus.lib через порт с мастером модбас (через конфигурацию)



Kapter
31.03.2025, 09:26
Добрый день!

Такой вопрос. У меня есть датчик на модбасе (RTU, 485) опрашивается ПЛК-110-30. Кроме этого датчика еще много чего висит. Весь обмен сделан через конфигурацию - добавил модбас мастер, устройства, регистры.
Сам датчик периодически зависает (через 1 - 5 дней) - перестает обновлять данные, шлет неактуальные. После перезагрузки датчика опять какое то время работает.

У датчика есть регистр, запись любого числа в который перезагружает датчик.
Так вот. Если я этот регистр добавляю в конфигурацию, то туда постоянно что то залетает и датчик перезагружается каждые 5-10 секунд. Как сделать чтобы ПЛК не сам решал когда писать значение в слэйв, а по моей команде - я не придумал.

А будет работать если я параллельно буду программно через библиотеку ModBus.lib писать что то в этот датчик?
т.е. у меня идет обмен через конфигурацию, а периодически (раз в сутки например) я через ModBus.lib открываю порт, пишу в датчик команду на перезагрузку и закрываю порт. Не поломает ли это основной обмен?

melky
31.03.2025, 09:54
OnCommand - в Конфигурации можно сделать запись по команде. (не пользовался, но вроде как возможно)

1exan
31.03.2025, 10:09
Добрый день!

Такой вопрос. У меня есть датчик на модбасе (RTU, 485) опрашивается ПЛК-110-30. Кроме этого датчика еще много чего висит. Весь обмен сделан через конфигурацию - добавил модбас мастер, устройства, регистры.
Сам датчик периодически зависает (через 1 - 5 дней) - перестает обновлять данные, шлет неактуальные. После перезагрузки датчика опять какое то время работает.

У датчика есть регистр, запись любого числа в который перезагружает датчик.
Так вот. Если я этот регистр добавляю в конфигурацию, то туда постоянно что то залетает и датчик перезагружается каждые 5-10 секунд. Как сделать чтобы ПЛК не сам решал когда писать значение в слэйв, а по моей команде - я не придумал.

Такой вопрос.
А будет работать если я параллельно буду программно через библиотеку ModBus.lib писать что то в этот датчик?
т.е. у меня идет обмен через конфигурацию, а периодически (раз в сутки например) я через ModBus.lib открываю порт, пишу в датчик команду на перезагрузку и закрываю порт. Не поломает ли это основной обмен?

Попробуйте добавить этот датчик в конфигурацию ещё раз (только с одним этим регистром). И сделайте для этого устройства запись по команде

Kapter
31.03.2025, 10:22
Попробуйте добавить этот датчик в конфигурацию ещё раз (только с одним этим регистром). И сделайте для этого устройства запись по команде

Вот так попробую, спасибо.
В офлайне скомпилировалось без ошибок. Может и сработает.