Aimin Ariff
Member
Hi guys.. I am using Vijeo Citect 7.4.. I am doing a function inside a function.. What I want to do is I want to put a function to sleep but want the other big function to keep runing.. How can I do that? I want the ChillerConfig function to running continuously but function ChillerStatus only run every 10 minutes, where should I put sleep() task??> This is my code example:
FUNCTION ChillerConfig()
IF lvChillerStatus1 = 1 AND lvChillerStatus2 = 1 AND lvChillerStatus3 = 1
AND lvChillerStatus4 = 0 THEN
lvChilConfig = 1
END
IF lvChillerStatus1 = 1 AND lvChillerStatus2 = 1 AND lvChillerStatus3 = 0
AND lvChillerStatus4 = 1 THEN
lvChilConfig = 2
END
IF lvChillerStatus1 = 1 AND lvChillerStatus2 = 0 AND lvChillerStatus3 = 1
AND lvChillerStatus4 = 1 THEN
lvChilConfig = 3
END
IF lvChillerStatus1 = 0 AND lvChillerStatus2 = 1 AND lvChillerStatus3 = 1
AND lvChillerStatus4 = 1 THEN
lvChilConfig = 4
END
ReadChillerStatus()
END
FUNCTION ReadChillerStatus()
IF DPMP1 > 10 THEN
lvChillerStatus1 = 1
ELSE
lvChillerStatus1 = 0
END
IF DPMP2 > 10 THEN
lvChillerStatus2 = 1
ELSE
lvChillerStatus2 = 0
END
IF DPMP3 > 10 THEN
lvChillerStatus3 = 1
ELSE
lvChillerStatus3 = 0
END
IF DPMP4 > 10 THEN
lvChillerStatus4 = 1
ELSE
lvChillerStatus4 = 0
END
END
FUNCTION ChillerConfig()
IF lvChillerStatus1 = 1 AND lvChillerStatus2 = 1 AND lvChillerStatus3 = 1
AND lvChillerStatus4 = 0 THEN
lvChilConfig = 1
END
IF lvChillerStatus1 = 1 AND lvChillerStatus2 = 1 AND lvChillerStatus3 = 0
AND lvChillerStatus4 = 1 THEN
lvChilConfig = 2
END
IF lvChillerStatus1 = 1 AND lvChillerStatus2 = 0 AND lvChillerStatus3 = 1
AND lvChillerStatus4 = 1 THEN
lvChilConfig = 3
END
IF lvChillerStatus1 = 0 AND lvChillerStatus2 = 1 AND lvChillerStatus3 = 1
AND lvChillerStatus4 = 1 THEN
lvChilConfig = 4
END
ReadChillerStatus()
END
FUNCTION ReadChillerStatus()
IF DPMP1 > 10 THEN
lvChillerStatus1 = 1
ELSE
lvChillerStatus1 = 0
END
IF DPMP2 > 10 THEN
lvChillerStatus2 = 1
ELSE
lvChillerStatus2 = 0
END
IF DPMP3 > 10 THEN
lvChillerStatus3 = 1
ELSE
lvChillerStatus3 = 0
END
IF DPMP4 > 10 THEN
lvChillerStatus4 = 1
ELSE
lvChillerStatus4 = 0
END
END