Автор: Огородников Сергей
Дата: 11.10.16 06:15
Добрый день!
На первый взгляд, даже не касаясь вопроса подключения и настройки модулей:
1.Гистерезисное управление подразумевает некоторую "дельту" - гистерезис между включением и отключением нагрузки. И обычно в качестве управляющего кода пишут примерно так:
If iTemp_val>=iSetpoint_Temperature then
Reset(dRele);
ELSIF iTemp_val<(iSetpoint_Temperature-iDelta) then
Set(dRele);
End_if;
Что же должно происходить в случае вашего кода? Реле постоянно будет включаться-отключаться около точки задания. Проверьте в симуляторе!
2. Если использовать переприсвоение IO, то согласно логики работы ПЛК: входные каналы копируются ДО выполнения основного кода, выходные - после. Получается так:
iTemp_val:=iTemp_val_ai;(*копия значения АЦП*)
If iTemp_val>=iSetpoint_Temperature then
Reset(dRele);
ELSIF iTemp_val<(iSetpoint_Temperature-iDelta) then
Set(dRele);
End_if;
dRele_out:=dRele; (*копирование в DO*)
3. А регулирование вы собираетесь вести по значению кода АЦП или всё-таки по физическому значению температуры? Тогда вместо присвоения iTemp_val:=iTemp_val_ai; должно идти преобразование значения АЦП в физический параметр.
4. Ну и схему подключения проверьте по документам, настройки модулей (тип сигнала, USED, масштаб и т.д.). В приведённой схеме, конечно, дискретный выход, подавая сигнал на НО контакт реле абсолютно ничего включать не будет.
С уважением,
СВ
|
|