At my company we have a PM-line with a number of Flexpickers in a row and a camera at the product inlet end. The product flow enters the line on one belt and is stacked in piles of 10 items height by the pickers onto an indexed conveyor moving in the opposite direction (robot #1 is the first one for the entering and the last one for the leaving products).
The problem is that some times some robot loses an item on the fly resulting in piles leaving the line with less than 10 items.
My question is if it is possible to install for example a distance measuring fotocell before the last robot (#1) on the indexed conveyor to measure the actual height of the piles so that robot #1 can complete piles if they contain less than 10 items?
I have no idea on how to solve this in PM or even if its possible but I guess that there migt be others out there with similar problems.
1/ You could check before you “ack” the item if the item is still present or not. Therefor you need an extra detection on all robots.
2/ You could make a userhook application for the last robot. This will mean a separate trigger signal for the last robot.
I have been thinking about a solution similar to your suggestion #1 but this requires, as you say, modification on all robots. One drawback is also that this solution won’t detect cases where the robot fails to drop the product on the pile and brings it back to the picking area in the next cycle.
(The picking is done with vacuum and since the product is quite dusty the vacuum valves and filters becomes affected so that activation and release times increases. The result is that occationally the product is not picked or sometimes not released as supposed.)
I forgot to mention that the setup is made in a way that allows any robot to pick any item on the pick source belt if that actual robot also has an unocupied place position (a pile with less than 10 items) on the indexed conveyor.
Your suggestion #2 sounds interresting but I’m not shure that I fully understand how you mean.
In principle I need to decrese the actual item count (in a pile with less then 10 pieces) so that the last robot is allowed to complete the missing items.
1/ You can use a fotoeye detection instead of vacuum control. You could make for example a TriggIOCheck before the place point and before the place elevation point and according to this 2 status you make an AckItmTgt TRUE or FALSE. This is a simple way to do you must of course check if the timing allow this.
2/ The User Hook appliction is a “.net” application (Visual Basic, c#,etc), you could check the high of the pile and generate the correct amound of items according of the high (the high could be check with distance eye fotocell). This control should be done between Picker 3 and 4. Picker should not be implemented in the ATC distribution but see as a separate robot.
Ok! Since I would like to avoid modifying all the robots your suggestion #2 seems the most attractive one.
I have done some programming in Visual Basic in the past so this seems the most straight forward choice.
May I ask which properties or functions that are used to read / modify the actual amount of items?
I have seen a function named GetQueueLevel mentioned here on the forum - is it appropriate?