Detecting missing wire

allscott

Member
Join Date
Jul 2004
Posts
1,332
I have a wire rope laying machine that has a spinning head that either 4 or 8 wires pass through to lay the rope.



This head travels up to 250 RPM and I would like to detect when one of the wires is missing. I’ve come up with a formula that I am calling Maximum Scan time (in ms).



MST = (1/(rpm/60)*number of wires)*1000



According to my formula with 8 wires and 250 RPM rotational speed the maximum scan time here would be 30 ms.



I will be using an SLC 5/05 with a fast input card as well as a high speed photocell. The SLC doesn’t have much of a program in it and very little I/O so I expect the scan time to be less than 5mS so I think that the combination of Scan time, turn on time for the eye, and switching time of the input card should be within reason.



I expect a square wave pulse train from the photo eye.



I am racking my brain trying to figure out how to detect when one of those pulses is missing ie: missing wire.



The PLC does not currently know the rotational speed of the head, nor does it know the number of wires.



The plan I have in my head is to calculate the running frequency of the pulse train and then set up a timer that will expect a pulse every X msec based on that running frequency. It should work in theory but the code is going to be messy.



Can anyone think of a better way to do this?

If your having trouble visualizing what I am trying to do picture a box fan with four blades and an eye watching the blades go around. I want to detect when one of the blades is not there.

thanks in advance
 
I'd look into the Micrologix 1200 and/or 1500 too. IIRC, they have a faster scan time and that would give you a little more head room.
 
Last edited:
Rudimentary version

allscott said:
...but the code is going to be messy.
Shouldn't be. Using your fan blade analogy, once you know how long the PE will be unblocked between blades, you'll know the timer preset. When the PE 'sees', start the timer. As long as it doesn't time out, meaning the next blade has come by and reset the timer (PE input goes false), you're good. If the timer does time out, that means a blade is missing.

Now, you'll still need some glue logic, such as, disabling the fault logic during startup when the fan is not yet up to running speed.
 
From your description of the problem and the way I understand it, I think the solution would be to set up a timer and feed the pulse train directly into the timer reset. The timming period will have to be slightly larger then the time between pulses. To determine the time value, you should measure with a scope the pulse train from the photo-eye and measure the the time between pulses and then add extra time.
 
Also, once you determine the Timer preset for four & eight wires, you could load this into the timer via a toggle switch to an input.

Off moves N7:0 to T4:0.pre, On moves N7:1 to T4:0.pre.
 
I need to calculate the pulse rate dynamically because this machine travels at various speeds up to 250RPM. However once at speed on a particular product it will run at that speed for indefinate time. My plan is to use the drives "at speed" output to enable the broken wire detection logic so that as the machine is starting, stopping, ramping up or ramping down the frequency of the pulses is ignored.
 
Scaling

It sounds as though you are thinking about averaging the PE pulse times and scaling upwards to account for small variations. Or you could have a calculated value for the timer preset based on the standard speed and a scaling factor based on the rotational speed.
 
Count and record the time between two pulses, count and store the time between the next two pulses, if no wire is broken they should be equal (+/- a small tolerance), whatever the speed. So you will always be comparing the time of the latest pulse and the previous one when your AT SPEED signal is on.

The only problem I can see is if 4 alternate wires snap before you get to speed, then the check will give a false pass. (or if 6 snap leaving 2 opposite wires)
 
I don't know Allscot, it **might** work, but from trying to detect broken wires on our stranders, the pulse is such a short duration that the input card generally misses it. We don't bother with that method anymore, and rely on a grounding ring by the closing die, and prox switches on each payoff bobbin to see if a bobbin stops.
 
JasonWade said:
Count and record the time between two pulses, count and store the time between the next two pulses, if no wire is broken they should be equal (+/- a small tolerance), whatever the speed. So you will always be comparing the time of the latest pulse and the previous one when your AT SPEED signal is on.

The only problem I can see is if 4 alternate wires snap before you get to speed, then the check will give a false pass. (or if 6 snap leaving 2 opposite wires)

That sounds like a better idea than what I was thinking of doing. The chances of more than one wire breaking at a time is pretty small so I don't see that as an issue.

thanks, I think that might work.
 
rdrast said:
I don't know Allscot, it **might** work, but from trying to detect broken wires on our stranders, the pulse is such a short duration that the input card generally misses it. We don't bother with that method anymore, and rely on a grounding ring by the closing die, and prox switches on each payoff bobbin to see if a bobbin stops.

I am going to give it a try, the only part that I don't have already to try this is a fast input card. The specs from AB show a typical turn on time of 0.3ms, that's pretty quick!
 
Try something like this.. http://www.stiwebstore.com/CMCP575_Speed_Transmitter_p/cmcp575.htm

this would give you a 4-20 input to your plc (speed/RPM) from your wire detector (prox), you could do a scaled comparison of your known machine speed

If you dont have machine actual you would just install 2 of them, one on a motor similar to a encoder, then the other would be the wire, if all wires are not there then the speeds would show a difference

something else to think about...
 
Or as Rich1955 suggested with a twist. Count the wires with the photo eye and reset the counter every revolution of the spinning head. If you can sense the wires reliably for a timer surely you can count them with a counter card.
 

Similar Topics

I've been called to a site to assist with an ASi fault. The line has been down for a couple of weeks following a failure of the ASi power supply...
Replies
6
Views
1,292
I am looking at an application where I will need to detect small hairline cracks in stamped metal parts. The sensing will need to be done in the...
Replies
10
Views
1,115
Hello everybody, I am working on a project which has HMI FTView SE 13 (Local) and controllogix L71 PLC. I have a question how does PLC detect a...
Replies
0
Views
509
So, we have one servovalve that is very critical to machine operation and idea is (or was) to detect if valve gets disconnected from analog output...
Replies
11
Views
2,871
I had bought a used PLC before but I had to return it. Once in a while its run mode shut off momentarily. I had the PLC on my desk. (No I/Os...
Replies
22
Views
5,353
Back
Top Bottom