PDA

Просмотр полной версии : Организация связи PLC - modbus - HMI



interprog
08.06.2010, 17:29
Как создать сохраняемые переменные в данной конфигурации PLC - modbus - HMI? Проблема в следующем :
на стороне HMI имеем 4х (чтение - запись), 3х (чтение) - регистры, с которыми связываем соответствующие регистры в PLC.
При перезагрузке PLC и HMI, со стороны HMI вылазит 0, который затем прописываеться в PLC, если запоминать значение в энергонезависимой памяти PLC, а на момент загрузки возвращать его в HMI, PLC не дает записать запомненное значение в %IW257, а запись в %QW257 ничего не дает.
Задача должна быть довольно распространенная , но методов решения может быть много - хочеться оптимизировать, подскажите кто знает?

Николаев Андрей
08.06.2010, 22:22
Заводятся отдельные переменные, они и сохраняются в Retain.
При включении ПЛК инициализируем переменные из области ввода\вывода сохраненными переменными.

interprog
09.06.2010, 20:22
спасибо за ответ , но можно отсюда подробнее ( инициализируем переменные из области ввода\вывода) , какие переменные и как это инициализируем?

Николаев Андрей
09.06.2010, 23:35
var_global
a1: "тип";
a2: "тип";
end_var

If f_trig_power.q then
a1:= "Переменная1 из ModBus Slave области"
a2:= "Переменная2 из ModBus Slave области"
...
end_if;

If r_trig_power.q then
"Переменная1 из ModBus Slave области" := a1;
"Переменная2 из ModBus Slave области" := a2;
...
end_if;

На входы тригеров подается значение переменной power из блока статистика в конфигурации ПЛК (надо добавить).