PDA

Просмотр полной версии : Modbus TCP для нескольких мастеров сети



Evlord
01.09.2018, 09:14
Пытался подключить панель оператора и SCADA к контроллеру ПЛК110-30 [М02] по Modbus TCP, но с контроллером работает только или SCADA, или панель оператора. Как быть? Поддерживается ли работа с несколькими мастерами в сети Modbus TCP?
Также, есть вопрос по подключению к ПЛК модуля МВ110-8А. Создал в проекте интерфейс Modbus Master для порта RS-485-1, закинул 7 переменных типа float для модуля. Данные идут, но медленно. Я так понял, что опрос идёт по каждого канала отдельно. Нельзя ли измеренные значения каналов забрать все разом за один запрос, минуя "лишние" регистры между измеренными значениями каналов?
И третье, нет ли возможности масштабирования сигналов 4..20 мА с датчиков перепада давления, т.е. возможность реализации корнеизвлечения для данных сигналов в модуле аналогового ввода?

приборист
01.09.2018, 10:18
1. Сделать в Modbus Slave насколько разных портов
2. У 8А скорость опроса всех каналов - около 4.2 секунд. Опросить можно весь МВ либо через библиотеки, либо с помощью String input module.
3. Можно задавать пределы преобразования сигнала прямо в модуле МВ и считывать уже физическую величину.

petera
02.09.2018, 08:51
1. просто сделать в слейве два порта - один для панели, второй - для СКАДА.
38588
Все переменные будут общими и для панели и для СКАДА.
И при изменении уставки с СП ее значение обновится в скаде и наоборот, при изменении уставки со скады она обновится в СП307
Подробнее смотреть здесь http://www.owen.ru/forum/showthread.php?t=14199&p=146969&viewfull=1#post146969

Evlord
03.09.2018, 08:53
1. просто сделать в слейве два порта - один для панели, второй - для СКАДА.
38588
Все переменные будут общими и для панели и для СКАДА.
И при изменении уставки с СП ее значение обновится в скаде и наоборот, при изменении уставки со скады она обновится в СП307
Подробнее смотреть здесь http://www.owen.ru/forum/showthread.php?t=14199&p=146969&viewfull=1#post146969

я так понял, что по Modbus TCP не может быть несколько мастеров в сети?

Evlord
03.09.2018, 10:10
сделал по рекомендации из ссылки опрос модуля ввода, прописав регистры модуля в мастере RS-485-1. почему-то значения с модуля идут в обратном порядке, т.е., например, вместо значения 7-го канала модуля значение 1-го канала модуля
38602
как сделать в нужном порядке?

petera
03.09.2018, 10:38
сделал по рекомендации из ссылки опрос модуля ввода, прописав регистры модуля в мастере RS-485-1. почему-то значения с модуля идут в обратном порядке, т.е., например, вместо значения 7-го канала модуля значение 1-го канала модуля
38602
как сделать в нужном порядке?
Зачем Вы в слейв вставили мастер?
Вы бы по ссылке почитали чуть дальше http://www.owen.ru/forum/showthread.php?t=14199&p=147040&viewfull=1#post147040

Но если мастер встроить в слейв, то слейв реально видит(и читает и пишет) во вложенном мастере только модули Register output, а Register input всегда отображаются в слейве с нулевым содержимым
из чего следует, что и скада и панель увидят вместо температуры только 0

Мастер сделать отдельно, не внутри слейва!
Нужно завести в слейве соответствующие регистры для панели(скада) и в них копировать в программе значения из регистров мастера

Ну и в каком порядке читать каналы Вы задаете сами, указывая нужные адреса регистров каналов для каждого Real input module.

Evlord
03.09.2018, 14:08
сделал развязку по портам следующим образом: в слейве сделал 2 порта TCP, одному назначил порт 502 (по умолчанию), второму - 512. вроде работает. данные идут в OPC и в панель... или как-то иначе делается?
значения с модуля присваются программно в регистры слейва Modbus TCP

petera
03.09.2018, 14:30
сделал развязку по портам следующим образом: в слейве сделал 2 порта TCP, одному назначил порт 502 (по умолчанию), второму - 512. вроде работает. данные идут в OPC и в панель... или как-то иначе делается?
значения с модуля присваются программно в регистры слейва Modbus TCP
На счет портов в слейве. Если оба TCP то по другому никак.
Не знаю конструкцию Вашего оборудования, но если ПЛК и панель в одном шкафу, то я бы панель подключил по RS232. (В слейве порты TCP и RS232)

medvedits
17.04.2023, 16:46
сделал развязку по портам следующим образом: в слейве сделал 2 порта TCP, одному назначил порт 502 (по умолчанию), второму - 512. вроде работает. данные идут в OPC и в панель... или как-то иначе делается?
значения с модуля присваются программно в регистры слейва Modbus TCP

а вы в щит ставили свитч или от ближайшего свитча тянули локалку к обоим устройствам?

medvedits
17.04.2023, 16:53
На счет портов в слейве. Если оба TCP то по другому никак.
Не знаю конструкцию Вашего оборудования, но если ПЛК и панель в одном шкафу, то я бы панель подключил по RS232. (В слейве порты TCP и RS232)

а если панелька slave для контроллера по rs485, а scada master для контроллера по tcp как нормально организовать обмен так, чтобы переменные менялись и через скаду и через панельку?
если не сложно,можно пример для одной переменной под плк100-30?

kondor3000
17.04.2023, 17:54
а если панелька slave для контроллера по rs485, а scada master для контроллера по tcp как нормально организовать обмен так, чтобы переменные менялись и через скаду и через панельку?
если не сложно,можно пример для одной переменной под плк100-30?

Проще всего было сделать ПЛК слейвом для обоих, Скады и Панели. Делается один слейв в котором ТСР и RS485, и управляться будет из 2 мест сразу.
В вашем случае надо будет мудрить с передачей из мастера в слейв и обратно.

Лучше тогда сделать Панель слейвом и для Скады и для ПЛК.