Очередной Modbus Slave

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

    Здравствуйте!

    Почитал темы, которые есть на форуме, либо невнимательно, либо не понял, но не нашёл обсуждения возможности записи устройством (Master) в SCADA (Slave) измеренных данных по запросам с кодом 16.

    Если я правильно понял, то платный драйвер KpModbusSlave.dll предназначен для подключения устройством к SCADA и чтения данных из SCADA. Но получается, что, если их можно считать, то наверное их можно и записать. Поправьте, если ошибаюсь.

    Задача заключается в том, что устройство(которое должно быть опрошено) должно инициировать подключение из-за некоторых ограничений в сети заказчика, но так как оно в этом случае не может быть опрошено SCADA без разрыва соединения, то выходом является запись запросом с кодом 16.

    #20804
    manjey73
    Участник

    по идее можно и подать команду в Modbus slave, но я пока не проверял.

    это какие такие ограничения в сети ?

    #20807
    vg
    Участник

    Честно говоря не помню деталей, но там есть разделение на производственную сеть и корпоративную. И по какой то причине (вероятно из-за политики безопасности) «главный сервер» не может опрашивать устройства, которые находятся удалённо (в других филиалах).

    #20808
    vg
    Участник

    Не работал с OPC-серверами, но выглядит как решение. Устройством загружаются данные на OPC-сервер, а с него забират скада.

    #20809
    a80808
    Участник

    В маршрутизируемой сети (а у вас филиалы) с ОРС можно хлебнуть…

    #20810
    vg
    Участник

    Из-за возможной неразберихи с тегами?

    #20811
    a80808
    Участник

    Нет, там же DCOM который плохо работает в таких сетях

    #20812
    vg
    Участник

    Мало что смыслю в сетевом обмене данными. Почитал про DCOM и не понял в чём сложность при использовании этой технологии в маршрутизируемых сетях.

    Вероятно это связано :)))

    #20816
    manjey73
    Участник

    А какая разница, кто опрашиваемый в разных сетях?
    Если ставите ОРС у себя, а опрашивать надо в другой сети будет та же проблема из-за маршрутизации и защиты сетей.
    Если хотите забыть про маршрутизацию, используйте VPN каналы.

    1. канал закрывает все данные от внешних угроз
    2. маршрутизация уже на уровне подсетей без настройки коммутаторов и роутеров.

    #20818
    vg
    Участник

    Изначально драйвер ругался на отсутствие какого то метода. После обновления драйвера ошибка прошла, но я не уверен в том, что правильно настраиваю линию связи и шаблон.

    Обмен по Modbus TCP.
    Правильно ли я понимаю, что режим TCP-сервер (в настройках линии) стоит использовать, если устройство является инициатором связи? А во всех остальных случаях TCP-клиент?

    Вот так я настроил линию:
    https://pastenow.ru/65ee49aab078af2c4a120b6e31147eba

    Далее настройка опроса КП:
    https://pastenow.ru/26924090574a76cea66788b6c5fc9b4c

    После передачи конфигурации:
    https://pastenow.ru/a55fcfa77eda0b656b09d2c2a6900e61

    Далее у меня есть программа, которая записывает числовые значения в службу, принимающую данные по конкретным регистрам. Регистры настроенного шаблона соответствуют. Сама служба отключена, а команду на запись в эти регистры отдаю вручную. Но результат прежний:
    https://pastenow.ru/5d16eca9df659ce467620bc3b4d0ad0d

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

    Нет, TCP сервер как раз слушает, кто к нему обращается и обрабатывает запросы.
    Если проще, Slave это как раз сервер, Master это как раз клиент.

    Линия TCP-сервер
    Далее в настройках можете оставить Slave — Соединение = Общее и указать порт

    В БД и Коммуникаторе не требуется указывать IP и порт, это требуется, если будет определение запроса от клиента по IP, но если вы гуляете через сети, реальный IP может отличаться, например это может быть IP роутера и по этому сервер просто не ответит.

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

    В общем настроил линию вот так:
    https://pastenow.ru/44cf0a7651056ca7af7a42d659012211

    Журнал начал отображать входящие запросы. Вдобавок в настройках опроса КП зачем то указал порт повторно…
    https://pastenow.ru/f41cbd6fe41d61c8773ca85578041761

    #20824
    vg
    Участник

    manjey73, благодарствую.

    #20825
    vg
    Участник

    Можете объяснить механизм работы в режиме Slave? Вероятно, это вопрос к Михаилу.
    Скада создаёт конкретные регистры, указанные в шаблоне и ждёт что в них придёт или там изначально есть пространство регистров?

    #20826
    manjey73
    Участник

    Смотрите, настройки Адрес и Позывной в Опросе КП дублируют настройки этих полей в БД.
    Если установлен чекбокс «Привязан к Севреру» эти данные драйверами берутся из БД, если чекбокс снят, эти данные берутся из полей настроек Опроса КП Коммуникатора.

    Это позволяет тестировать линию связи без настроек БД самой Scada.

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