Вот маленький кусочек, в котором если напряжение на АКБ падает меньше порога, то при температуре выше 40 летом включить вентилятор и через 10 сек, таймером с задержкой включения, запустить Генератор. При заряде АКБ выше порога заряда, отключить. Все выполняется, но при повторном разряде АКБ таймер не запускается, а включается вентилятор и Генератор одновременно т.к. выход таймера не сбрасывается,а находится все время в положении TRUE.
PROGRAM PLC_PRG
VAR
U_in_1_conv: REAL; (*Напряжение канал 1*)
U_porog_AKB: REAL := 50; (*Порог разряда АКБ*)
U_porog_AKB_zrd: REAL := 55.9; (*Порог заряда АКБ*)
Timer_letom: TON; (*Таймер_запуска_ДГУ_летом_через_5_мин_после_венти лятора*)
Start: BOOL;
Temp_1: REAL; (*температура*)
T_porog_1: REAL := 40; (*Порог_температуры_летом_40_градусов*)
U_out_1: BOOL; (*Вкл. Генератора*)
U_out_2: BOOL; (*Вкл. вентилятора*)
END_VAR
Программа:
IF U_in_1_conv <= U_porog_AKB THEN
Start := 1;
END_IF
IF Start = 1 AND Temp_1 >= T_porog_1 THEN
U_out_2 := 1;
Timer_letom(IN:=U_out_2 , PT:=T#10s , Q=> , ET=> );
U_out_1 := Timer_letom.Q;
ELSE
U_out_2 := 0;
U_out_1 := 0;
END_IF
IF U_in_1_conv >= U_porog_AKB_zrd THEN
Start := 0;
END_IF




Ответить с цитированием