Once again, comprehensive inputs from people who know what they are talking about.... this site and you people are excellent
In my application the time span is short... a few seconds, and the timing is not too critical, but I have ten objects to track from the time they pass a photocell until the time they reach a reject point.
They arrive at the photocell at random times and a few measurements are performed on them as they move along on a belt. If they fail any test, they get rejected when they reach the reject point. Problem is, they don't go through the thing one at a time ... the first one is still getting measured and has not reached the reject station before the next one comes through... there are a few of them in the system at a time.
I want to keep track of the results of ten of the measurements at a time, so I have an array for that... I thought perhaps I could poll the system clock when the objects arrive at the photocell, add a delay number to that, and then fire the reject when the system clock is GEQ than the resultant sum. It seemed pretty simple.
Among other things, the LINT of the system clock gave me some fits ( which I got figured out ) , and I finally decided that it might be easier to just use an array of ten timers and start them timing using the same index I use for the array of measurement results. Any of them could enable the reject at the correct time if the object fails a test
I think it will probably work, but it's not very elegant ...big long lines of stuff in the ladder logic. I would not be proud to show it to you folks ... any advice would be appreciated.
thank you