Спорягин Кирилл
26.05.2016, 18:51
Добрый день, уважаемые форумчане.
Собрана следующая система:
1. ПЛК110 управляет процессом;
2. СПК207 - отображение и ввод информации;
3. АРМ оператора (MasterSCADA + Universal Modbus OPC Server) - отображение и ввод информации.
В ПЛК110 есть некая переменная (назовем ее Var1). Эта переменная может быть изменена, как с СПК207, так и с АРМа.
Естественно, что она должна быть отображена и на СПК207 и на АРМе.
В Universal Modbus OPC Servere я могу сконфигурировать переменную с типом Read/Write. Такая переменная, если она изменена в сервере, записывается в контроллер.
Если она изменена в контроллере, то ее значение принимается сервером.
Можно сконфигурировать переменную типа Read/Write и в СПК207. Для этого в конфигураторе необходимо добавить канал с кодом функции 23 (Чтение/запись).
Проблема заключается в том, что контроллер ПЛК110 не поддерживает функцию 23 Модбас (видимо, OPC-сервер скрыто использует отдельно функции чтения 03 и записи 16).
Получается, что для чтения я должен сконфигурировать канал rVar1, а для записи wVar1. А затем программно обрабатывать эти две переменные сливая их в одну Var1, которую уже потом отображать в поле ввода.
Есть ли какой-то простой способ решения задачи с переменными, которые необходимо читать и писать в связке СПК207 - ПЛК110?
Собрана следующая система:
1. ПЛК110 управляет процессом;
2. СПК207 - отображение и ввод информации;
3. АРМ оператора (MasterSCADA + Universal Modbus OPC Server) - отображение и ввод информации.
В ПЛК110 есть некая переменная (назовем ее Var1). Эта переменная может быть изменена, как с СПК207, так и с АРМа.
Естественно, что она должна быть отображена и на СПК207 и на АРМе.
В Universal Modbus OPC Servere я могу сконфигурировать переменную с типом Read/Write. Такая переменная, если она изменена в сервере, записывается в контроллер.
Если она изменена в контроллере, то ее значение принимается сервером.
Можно сконфигурировать переменную типа Read/Write и в СПК207. Для этого в конфигураторе необходимо добавить канал с кодом функции 23 (Чтение/запись).
Проблема заключается в том, что контроллер ПЛК110 не поддерживает функцию 23 Модбас (видимо, OPC-сервер скрыто использует отдельно функции чтения 03 и записи 16).
Получается, что для чтения я должен сконфигурировать канал rVar1, а для записи wVar1. А затем программно обрабатывать эти две переменные сливая их в одну Var1, которую уже потом отображать в поле ввода.
Есть ли какой-то простой способ решения задачи с переменными, которые необходимо читать и писать в связке СПК207 - ПЛК110?