Programming a Kill Switch Please Help!

eckhoff.julia

Member
Join Date
Jul 2014
Location
Minnesota
Posts
6
Hello! I am extremely new to PLC programming and would be incredibly grateful for anyone's input and/or advice. I am not entirely sure how much information I need to provide for other to be able to help, so if I leave something crucial out, please let me know.
I am using Click Programming Software. Attached is my program that I have written so far.
The issues that I am having are:

1. On rung 5 where I do not have a coil contact I am trying to put in some sort of kill function that stops EVERYTHING. Is that possible?

2. When I do a syntax check I get an error for rungs 1 and 4 that says: "All inputs of the box instruction must originate from the same branch." What am I doing wrong?

Thanks in advance for your help!
 
1. What do you mean by 'stops everything'. Be specific. If you mean 'turn off outputs' then place a NC of the STOP condition in line with each output. If you want to stop the timers then place the contact in line with the enable line. If you want to reset the retained timer or the counter you will place a NO of that condition in parallel with the current reset condition - CT1.

2. In each of these split it into two rungs. In the first rung, for example, split it into one rung which has X001 as a contact and Y001 as a coil. Then, in the next rung have a timer with X001 in line to the enable input.
 
Last edited:
1. On rung 5 where I do not have a coil contact I am trying to put in some sort of kill function that stops EVERYTHING. Is that possible?
It is not only possible, but highly recommended that you not EVER write a program to start some machine without including an easy way to also STOP the machine. In fact, put in your STOP control FIRST before you do anything else. You will find that easier than adding it at the end (when you discover that the thing is running wild and you can't STOP it).
 
Thank you both for your replies!
I have fixed the timer count/issue now, but am still unsure about the "kill switch" part.
Ideally, I would have it programmed so that if Timer 3 reaches its time limit (process takes to long to count six indicating an issue) all motors (Y001, Y002) would turn off and all timers/counters would reset. Is there a way to do it that way?

Also a more conceptual question: In rung 1, does timer T3 restart each time X001 makes contact, or only when the criteria for counter CT1 is complete?
 
Welcome to the forum.

I don't have the software for the Click PLC so I haven't looked at your program but I do have a concern.

Is this a safety stop or emergency stop?

If so then you as the designer have specific responsibilities in this regard and there are specific codes that dictate how safety stops have to be implemented. Often safety functions cannot be implemented in the PLC but must be implemented in hardware. It is your responsibility to determine what is required and design accordingly.
 
I think it is just a regular old STOP pushbutton that is supposed to stop the device when the operator desires. I know that it is considered uncool and old hat to use such a thing, but I still believe in them.

Ideally, I would have it programmed so that if Timer 3 reaches its time limit (process takes to long to count six indicating an issue) all motors (Y001, Y002) would turn off and all timers/counters would reset. Is there a way to do it that way?
Yes, that is called an "Automatic Stop" function, and there are many ways to do that. In addition to the auto-stop, you also need a plain Manual Stop where when someone pushs or turns a switch, the device STOPS.

In rung 1, does timer T3 restart each time X001 makes contact, or only when the criteria for counter CT1 is complete?
Because you designate Timer T3 as a "Retained" type timer, when it loses its Enable input OR times out, it still keeps its time value until it is reset by the Reset input. If you want to have a self-resetting timer where it resets if the Enable input goes off, then use a non-Retained type of timer (as you did for Timers T1 and T2 on Rungs 2 & 3).
 
Last edited:
I THINK I GOT IT!

Would you mind looking over to see if there are any obvious errors or concerns you may have? It is a short program attached and would only take but a moment of your time. I would be most grateful. You have been of so much help to me. Thank you!

About the manual stop: The whole configuration is connected to a battery power source with an easily accessible on off switch that will also function as an emergency stop.
 
Last edited:
In this program version Y001 will be ON if X001 is ON otherwise it will be OFF. None of the other code matters concerning Y001.

Does the turning on of Y001 or Y002 affect the status of X001 or X002? It is hard to analyse the program lacking that information. Learn to use descriptors for the code items (inputs, outputs, Timers, Counters) and rung comments. Otherwise we have a difficult time helping.
 
Last edited:
to comply with safety rules you should do it twice
switch of the supply to the output card at the hardware side
via a 2 relay safety relay module (also twice) controlled via current loop
(stop button NC) to respond to broken wires
and than program your kill switch input in front of each output
this is the way to do it when you are dealing with equipment which may cause harm
if not responding correct to e-stop (kill switch)
have fun

Alfons
 
Would you mind looking over to see if there are any obvious errors or concerns you may have?
As Bernie said, it helps if you label your addresses, and use rung comments to explain what each Output is supposed to DO.

What is the purpose of Y001? It appears to be a "System Running" relay (& maybe indicator light?). If so, a better way is NOT to use Set and Reset, which can lock the machine ON through a power outage, returning it to RUN when power is restored (even if that is the middle of the holidays and no one is there, or someone is there with her hand in a dangerous spot)! The SET instruction on most PLCs is retentive, meaning it stays ON even if power is lost. Maybe that is not a problem in this case, but it is a bad habit to get into with PLC programs.

A better method is to use a contact from Y001 to self-seal a Output Coil (non-retentive) ON in parallel with a momentary-contact Start pushbutton. Then to Stop or de-energize the RUN Relay, you only have to break the circuit with a Stop pushbutton or any number of other devices (such as a NC contact from your T3 Timer). If power is lost to the PLC, the Y001 relay drops out, stopping everything on your pin sorter.

See the diagram below for self-sealing Start logic. Remember that the physical STOP PB should be normally closed, so the PLC STOP input will be ON unless the STOP is pressed. You can name this Stop Pushbutton a "KILL PUSHBUTTON" if you want - it still performs the same function of stopping the machine. If you use this method, then substitute a Normally Open Y001 contact for X001 everywhere in your program (except for the STOP PB on the first rung).
 
| X001 TIMER T3 X002 Y001 |
| STOP PB. AUTO-STOP START PB. RUN RELAY |
|-----| |------|/|-----+----| |----+-----( )---|
| | | |
| | Y001 | |
| +----| |----+ |

 
Last edited:
Thank you all for your words of wisdom. I definitely see the importance of having a manual emergency stop and also programming in a way the take precautionary steps to uphold safety. This machine is small and sits on a table next to the operator and has no real safety concern as far as hands being in the wrong place, etc. I do have physical guards in place for certain areas just to be extra sure though. The only place the operator has contact with the machine is where they dump the pins in and where the pins come out, neither of which has any moving parts nearby.

The program print I am attaching now has been completely annotated and should be a little clearer for those trying to decipher it.

The machine cannot "go" if 1. power supply off (obviously) 2. pin column is full or 3. It has taken too long for 6 pins to drop (indicating an issue).
 
Is X001 momentarily turning off as the pin passes it while falling in the column and only the last pin blocks it (turns off) continually?

The main problem is what to do when either of these two happens - the column is full or the two minutes times out (T3). The way it is right now it (T3) will reset immediately.

Does the column somehow get emptied? Is it perhaps continually emptying and you are just checking for the continued dropping of pins? Or are 6 pins emptied as a group? If so what happens as it just starts to empty and X001 turns off? Everything would start back up.

What is the significance of the 6 count?

As noted, if T3 times out to stop the motor it is also immediately resetting itself. Wouldn't you want it to stop until something else happens? What, from outside this process, do you want to happen. Should the operator do something to restart?

I'm working on a program addressing this project but I can't go on until these questions are answered.

Also - you seem to have 'rung comments' figured out but how about comments for the individual inputs, outputs, timers and counter?
 
This would be the equivalent program, except WITH address comments, and using standard Outputs instead of the Set Outputs. Bernie, you are welcome to use it and fix the various issues.
 
Last edited:
Is X001 momentarily turning off as the pin passes it while falling in the column and only the last pin blocks it (turns off) continually?

Yes. Correct.

The main problem is what to do when either of these two happens - the column is full or the two minutes times out (T3). The way it is right now it (T3) will reset immediately.

I had thought of this, but didn't know a way around it.

Does the column somehow get emptied? Is it perhaps continually emptying and you are just checking for the continued dropping of pins? Or are 6 pins emptied as a group? If so what happens as it just starts to empty and X001 turns off? Everything would start back up.

At the bottom of the column there is a hand slide mechanism that the operator uses to unload 6 pins at a time. The operator empties 6 pins in sync with the cycle of the larger press the pins are being used in - so pretty much continually, but slightly intermittent. Only one pin is dropped into the column at a time. So if the column is full X001 turns off and then the operator unloads 6 at the bottom, the pins will drop and X001 will turn on as well as everything else for the mechanism to function.

What is the significance of the 6 count?

The 6 count is so that if too much time has passed before 6 pins (the amount needed for each cycle of the large press) have dropped, the pin sorter will stop because there is most likely an issue that the operator need to fix, such as a jammed pin, or a pin stuck lopsided in the column.

As noted, if T3 times out to stop the motor it is also immediately resetting itself. Wouldn't you want it to stop until something else happens? What, from outside this process, do you want to happen. Should the operator do something to restart?

I guess my solution to this was that when the whole thing stopped unexpectedly the operator would turn off the power source and then fix the issue. When done, the operator would turn the power source back on and everything would be reset and could start fresh. Perhaps this is not the smartest logic.

Also - you seem to have 'rung comments' figured out but how about comments for the individual inputs, outputs, timers and counter?

Still haven't quite figured that out yet...
 
I can't work on the program right now but a couple of thoughts.

If the operator can reach into the machine then some sort of cover with a switch is needed to kill power to the motor and solenoid. The level of protection depends on a safety analysis. In addition to cutting off the power outside of the PLC (don't turn off the whole PLC, just the power to the outputs common) also provide an input so the program can do something intelligent, like resetting T3.

Attach a sensor to the hand slide. When open the outputs don't fire so that no more pins can be dropped down the tube (this doesn't have to be a safety system as it sounds like the operator is not near moving parts, just falling pins) and when it recloses it resets the counter, restarting the sorter.
 
Last edited:

Similar Topics

Dear all, I have fx2n plc on my hand but I don't have the programming cable sc-09 and it would not be easy for me to get one. I need the cable...
Replies
3
Views
117
Hi all, i am the new controls guy at the plant and i have inherited a pc from the previous controls guy with Siemens tia portal version 16 and 17...
Replies
20
Views
891
I need to pull the program off of an old 90-30 so I can convert it to Allen Bradley. This is my first time messing with GE and I don't have the...
Replies
2
Views
84
New to vfds. I put in parameters. IP, but I get ethernet flashing and link solid. What did I do wrong?
Replies
9
Views
475
I'm been deciphering a program for a press here. I've gotten most of it deciphered using the manual to understand the instructions (first mitsu...
Replies
11
Views
300
Back
Top Bottom