Logic Error - Out of ideas

SCADA_Dude

Member
Join Date
Feb 2008
Location
California
Posts
115
I am trying to stagger pumps from starting right after each other. I have a running TON that resets after a pump has been called, next pump can only be called when TON is done. The accumulator does get reset, but immediately goes back to 60 secs and the TON always evaluates True even when accumulator is reset... Why is this ?



--- alot stripped out, tried only leave in pertinent stuff----
In one Task:
(* Sequential Start Delay *)
SEQSTRT_TON (IN:=True, PT:=t#60s,
Q=>Sequential_Start_OK, ET=>Seqential_Start_Acc);

In another derived FB, passing accumulator to reset it to t#0s:

(* Pump Motor Start/Stop *)
IF pump_required AND NOT pump_motor_call THEN
pump_motor_call := TRUE ;
seq_start_acc := t#0s;
END_IF;
IF NOT pump_required AND pump_motor_call THEN
pump_motor_call := FALSE;
END_IF;

FYI: Using Unity Pro XL 3.0
 
Fixed it using a TON for each pump. Basically the TON IN needs to evaluate false to reset the accumulator. Anyone know why you can't reset the accumulator manually, this would result in more versitile code one would think.



---- code snip ----
Task: Sequential Start Bit
IF P1_Seq_Start_OK AND P2_Seq_Start_OK THEN
Sequential_Start_OK := TRUE;
ELSE
Sequential_Start_OK := FALSE;
END_IF;


---Derived function block-----
(* Pump Motor Start/Stop *)
IF pump_required AND seq_start_ok AND NOT pump_motor_call THEN
pump_motor_call := TRUE ;
pump_seq_start_rst := TRUE;
END_IF;
IF (NOT pump_required AND pump_motor_call THEN
pump_motor_call := FALSE;
END_IF;

PUMP_SEQ_TON (IN:=NOT pump_seq_start_rst, PT:=seq_start_time,
Q=>pump_seq_start_ok);

pump_seq_start_rst := FALSE;

(* pump_seq_start_ok returned as PX_Seq_Start_OK *)
 
Last edited:
For a delay start between pumps I would use a single timer looking at all of the pumps off for x time. I don't know about other plcs, but in the ABs you should be able to reset the .acc valve.
 
The start delay is to prevent the pumps from coming on at the same time, because the transformer cannot handle the start current for more than one pump at a time and/or things need to stabilize before determining if more pumps are needed. Thats why the counter resets after each pump is called, to delay the start of the next pump etc.
 

Similar Topics

Hello All, I am working on an electrical panel that tests lights. I programmed a PLC to interact with an HMI. The HMI allows a user to set time...
Replies
4
Views
2,164
I logged on to one of my machines today to try to communicate with the machine (Micrologix 1000) and there are only two plc's on the network, but...
Replies
5
Views
2,147
Ladies and Gents, Yesterday I've encountered my first PLC problem in my educational path and I am running out of steam so any help is greatly...
Replies
2
Views
7,682
Hello, I am a Mfg. Eng. trying to figure why an Automation Direct HMI (DP-C321) has stopped communicating to a Direct Logic 205 PLC. The machine...
Replies
12
Views
5,033
Dear all i have problem with micrologic 1200 with 1672-IR4 RTD module, when im plug the 1672-IR4, micrologix 1200 error "The maximum number of...
Replies
14
Views
2,672
Back
Top Bottom