请高手马上指教,下面程序中定时器T12、T13、T14的时序图是否是:T12(ON_TIMER)定时脉冲到后才是T13(OFF_TIMER)脉冲,T13定时脉冲到后才是T14(DELAY_TIMER)脉冲,再回到T12(ON_TIMER)定时脉冲? **请高手尽快正确指导!!
FUNCTION_BLOCK "F3:Outside to Centre"
TITLE =
VERSION : 0.1
VAR
M60_0 : BOOL ;
M60_1 : BOOL ;
M60_2 : BOOL ;
M60_4 : BOOL ;
MW_62 : WORD ;
MW_64 : WORD ;
MW_66 : WORD ;
MW_68 : WORD ;
MW_70 : WORD ;
MW_72 : WORD ;
MW_74 : WORD ;
END_VAR
BEGIN
NETWORK
TITLE =
//Range Check
O( ;
A( ;
L "DB_1212".ON_TIME;
L 500;
>=I ;
) ;
JNB _001;
L 500;
T "DB_1212".ON_TIME;
SET ;
SAVE ;
CLR ;
_001: A BR;
) ;
O( ;
A( ;
L "DB_1212".ON_TIME;
L 3;
<=I ;
) ;
JNB _002;
L 3;
T "DB_1212".ON_TIME;
SET ;
SAVE ;
CLR ;
_002: A BR;
) ;
= "DB_1112".M60_0;
NETWORK
TITLE =
//Range Check
O( ;
A( ;
L "DB_1212".OFF_TIME;
L 3000;
>=I ;
) ;
JNB _003;
L 3000;
T "DB_1212".OFF_TIME;
SET ;
SAVE ;
CLR ;
_003: A BR;
) ;
O( ;
A( ;
L "DB_1212".OFF_TIME;
L 0;
<=I ;
) ;
JNB _004;
L 1;
T "DB_1212".OFF_TIME;
SET ;
SAVE ;
CLR ;
_004: A BR;
) ;
= "DB_1112".M60_0;
NETWORK
TITLE =
//Range Check
O( ;
A( ;
L "DB_1212".DELAY;
L 3000;
>=I ;
) ;
JNB _005;
L 3000;
T "DB_1212".DELAY;
SET ;
SAVE ;
CLR ;
_005: A BR;
) ;
O( ;
A( ;
L "DB_1212".DELAY;
L 0;
<=I ;
) ;
JNB _006;
L 1;
T "DB_1212".DELAY;
SET ;
SAVE ;
CLR ;
_006: A BR;
) ;
= "DB_1112".M60_0;
NETWORK
TITLE =
//Load On Timer Preset
A( ;
L "DB_1212".ON_TIME;
ITB ;
T "DB_1112".MW_62;
AN OV;
SAVE ;
CLR ;
A BR;
) ;
JNB _007;
L "DB_1112".MW_62;
L W#16#0;
OW ;
T "DB_1112".MW_64;
_007: NOP 0;
NETWORK
TITLE =
//Load Off Timer Preset
A( ;
L "DB_1212".OFF_TIME;
ITB ;
T "DB_1112".MW_66;
AN OV;
SAVE ;
CLR ;
A BR;
) ;
JNB _008;
L "DB_1112".MW_66;
L W#16#1000;
OW ;
T "DB_1112".MW_68;
_008: NOP 0;
NETWORK
TITLE =
//Load Delay Timer Preset
A( ;
L "DB_1212".DELAY;
ITB ;
T "DB_1112".MW_70;
AN OV;
SAVE ;
CLR ;
A BR;
) ;
JNB _009;
L "DB_1112".MW_70;
L W#16#1000;
OW ;
T "DB_1112".MW_72;
_009: NOP 0;
NETWORK
TITLE =
//Reset On Timer When Recipe first selected
A "DB_1100".M0_2;
R "T11";
= "DB_1112".M60_1;
NETWORK
TITLE =
A "DB_1112".M60_1;
L S5T#1S;
SE "T11";
NETWORK
TITLE =
//On Timer
AN "T14";
AN "T11";
L "DB_1112".MW_64;
SE "T12";
NETWORK
TITLE =
//Off Timer
AN "T12";
L "DB_1112".MW_68;
SE "T13";
NETWORK
TITLE =
//Delay Timer
AN "T13";
L "DB_1112".MW_72;
SE "T14";
NETWORK
TITLE =
//Set Output Pointer
AN "T12";
CU "C3";
BLD 101;
A "DB_1112".M60_2;
L C#10;
S "C3";
A "DB_1112".M60_4;
R "C3";
L "C3";
T "DB_1112".MW_74;
NOP 0;
NOP 0;
NETWORK
TITLE =
//Reset Output Pointer on Roll Over
O "DB_1112".M60_1;
O( ;
L "DB_1112".MW_74;
L 10;
>=I ;
) ;
R "C3";
NETWORK
TITLE =
//Set Outputs
A "T12";
= L 0.0;
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 0;
==I ;
) ;
= "OUT L1";
= "OUT R1";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 1;
==I ;
) ;
= "OUT L2";
= "OUT R2";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 2;
==I ;
) ;
= "OUT L3";
= "OUT R3";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 3;
==I ;
) ;
= "OUT L4";
= "OUT R4";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 4;
==I ;
) ;
= "OUT L5";
= "OUT R5";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 5;
==I ;
) ;
= "OUT L6";
= "OUT R6";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 6;
==I ;
) ;
= "OUT L7";
= "OUT R7";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 7;
==I ;
) ;
= "OUT L8";
= "OUT R8";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 8;
==I ;
) ;
= "OUT L9";
= "OUT R9";
A L 0.0;
A( ;
L "DB_1112".MW_74;
L 9;
==I ;
) ;
= "OUT 10";
END_FUNCTION_BLOCK