Sequencing Using Bit Shift

DoubleL

Member
Join Date
Jul 2004
Location
Georgia
Posts
47
Hi guys,
I have a question about a sequencing program I am trying to make work. What I have is an baking oven conveyor with various equipment on the infeed such as a pan greaser, depositor, etc. The sequencing programming I have works but needs improvement. The conveyor has pan carriers every 20", a encoder to measure this distance and a pan sensor to sense if pans are in the carriers. The way I have it programmed now is with a bit shift instruction in which if there is a pan present in the carrier it inserts a 1 and no pan inserts a 0. My problem is that some of my infeed equipment is not placed at exactly 20" so I run into the problem of not being able to adjust for this. In other words I may be 1/2 a pan out where my depsotior is supposed to start. I can't move the equipment so my idea is to break the pan up into more bits in the bit shift so that I can adjust my start point. I am having trouble working out how to do this. Does anyone have experience with something like this? Also I am using the shift register bit that says a pan is present to either turn and keep my trigger on or off depending on whether there is a pan present. If I do this I would have to come up with a way to keep this bit turned on for the time the pan is under the piece of equipment because using a later bit in the word would also mean that it would turn off sooner than needed. BTW this is a AB PLC5. Any help would be appreciated.
 
Hi DoubleL
I rarely use bit-shifts for the reason you state - not enough resolution. The method I use is this:

1. Set a counter from your encoder. I make mine wrap every 10m

2. The first sensor can be used to capture a 'base' position i.e. the current counter value. Enter this into a data file (N100:0). On the next product enter a value into N100:1. This data file needs to be long enough to accommodate
more than the max number of trays in your oven. Bit of indirect addressing. When it hits N100:50 (say) wrap it back to N100:0.

3. Every station (pan greaser, depositor) will be a distance from the first sensor. The first pan that station 1 will be expecting was the pan captured at N100:0 so do a test for N100:0 + DistanceParameter being equal to the current counter. If it it, then the pan has 'arrived'. This can trigger the station's operation, AND has to prepare for the next product, i.e. the next pan it's expecting will have its 'base' position captured at N100:1.

Each 'station' needs its own indirect address pointer, but they can all look at the N100 file.

I've got this method running on SLCs. If the encoder is coming in faster than the PLC scan, then I've got a bit of code for testing if I've 'missed' the number I'm looking for (and by how much).

pp
 
I would suggest using a sensor at each piece of equipment and using a fifo buffer. You load a 1 or 0 into the FIFO buffer. When a pan is sensed you unload it's status from the buffer then you always know that pan is at the equipment and whether the carrier is full or not. I have used this on an extensive paint line before to carry color, carrier number, part number, etc for the entire line.
 

Similar Topics

I have a process that has smaller processes, but I am not sure how to best utilize the ladder logic in this situation. I want to make it somewhat...
Replies
5
Views
1,677
Does anyone have sample logic with conveyors that start and stop according to product on the line?
Replies
1
Views
93
Hello, I am struggling to figure out some logic. I have an analog pressure sensor coming into the PLC and would like to have multiple timing...
Replies
4
Views
146
One of my customers builds equipment with a MicroLogix 1100 using a program I wrote some years ago. Now he wants to transition to a Micro 820...
Replies
1
Views
1,852
Well Gentlemen, once again, I am trying to figure out how to do something in Logix, and I cannot seem to get it to work like all the YouTube...
Replies
13
Views
2,928
Back
Top Bottom