Опрос контроллера ДГ через 3G Modbus шлюз

Стартовая страница Форумы Взаимодействие с устройствами Modbus Опрос контроллера ДГ через 3G Modbus шлюз

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Автор
    Сообщения
  • #18048
    George
    Участник

    Добрый день. Пользуюсь формулой GetBit() для получения состояний дизель-генератора из регистра по Modbus TCP. На генераторе установлен 3g модбас шлюз (Novatek em-481). Пока не разобрался в причине, но в опросе КП в комуникаторе с разной периодичностью возникают ошибки опроса (толи GSM связь возле шлюза не стабильная, толи сбои в работе самого шлюза). Пробовал играться с паузами, периодами, задержками после опроса КП, заметил что с их увеличением количество ошибок меньше.
    Собственно вопрос: при пропадании связи (даже кратковременном — около 10 секунд) все каналы, данные которых получены с помощью GetBit() становятся нулями, а затем снова единицами. Соответственно происходит ложная рассылка сообщений в телеграмме и е-мейл. Так же засоряется окно событий. Есть ли у кого метод борьбы с данной проблемой?

    #18049
    George
    Участник

    Логи комуникатора прилагаю:
    https://ibb.co/nwgkvfm
    https://ibb.co/F76jkYW

    #18051
    Mikhail
    Модератор

    Добрый день!

    Пропадание связи для мобильного соединения — это норма.
    В формулу нужно добавить статус: GetBit(…); Stat(5000)
    Где 5000 — исходный входной канал, из которого извлекаются биты.

    #18052
    Mikhail
    Модератор

    Проверьте, что в настройках канала связи снята галочка оставаться на связи. В этом случае, для каждого сеанса опроса TCP соединение устанавливается заново.

    #18057
    George
    Участник

    Спаибо, попробую с формулой — отпишусь.
    Касательно канала связи, какю именно галочку нужно убрать?

    • Этот ответ был изменен 3 года, 2 месяца назад от George.
    #18058
    George
    Участник

    https://ibb.co/tJ6tn47

    • Этот ответ был изменен 3 года, 2 месяца назад от George.
    • Этот ответ был изменен 3 года, 2 месяца назад от George.
    #18065
    manjey73
    Участник

    Не, такой галочки у вас не будет, так как линия связи настроена как TCP сервер.
    Это есть только в свойствах TCP клиента.
    Это должны быть какие-то настройки со стороны модема.

    #18069
    George
    Участник

    Ок, спасибо за ответы!

    В формулу нужно добавить статус: GetBit(…); Stat(5000)
    Где 5000 — исходный входной канал, из которого извлекаются биты.

    С данным решением всё работает!

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Вы должны авторизироваться для ответа в этой теме.