I am a little confused on the Limit Argument. Does it replace the exit limit, i.e. if I set the exit to be 400 and the Limit arg to be 200 then does the item get completely dropped at 200?
I guess here is what I am thinking. We are using the GetItmTgt to find if there is an item on one of two conveyors. Basically we look at one conveyor and then time out and look at the other conveyor to see which conveyor has an item. If I use the Limit arg and I find an item, I do some logic to see if its type is the same as the container on a third conveyor and then I go pick and place it.
I am wondering if I get the item with the GetItmTgt and do not actually pick the item at that time will it still be tracked until it reaches the exit limit?
The Limit argument doesn’t replace the exit limit, it overrides during the execution of the GetItmTgt instruction.
If you execute GetItmTgt another time without the Limit argument, you will get the item closest to the exit limit.
So, in your case you can execute GetItmTgt with Limit for the pick, store the type of the item, execute AckItmTgt with FALSE argument to return it to the itemsource, execute GetItmTgt on the place side to see if it was right type, if it was right you can go back to the pick side and execute GetItmTgt without Limit and you will get the item closest to the exit limit.
Another approach for this problem is to first execute NextItmTgtType on the place side, maybe with the Limit argument to be sure the item is not going out of the work area. Based on the result from that instruction, you can decide which pick conveyor you shall pick from or if you shall execute GetItmTgt with the argument Type on a certain conveyor.
I have a couple of more questions. We are using the Limit arg because we were getting the “Arm Check Limit” error. So if I do the GetItmTgt with the Limit arg included on a pick side and then I am waiting for the GetItmTgt on the place. How long do I have until the rob will not be able to track and pick the part? Do you see what I am saying? To over exaggerate it, say my Limit is at -300 and my exit is at 450. Will The bot track and pick it all the way to 450?
Also, when do the items actually get pushed down to the controller from PM? Do they only appear in the controllers when the item enters to work object? I ask this question because sometimes it seems the rob is delaying a long time to go and get an item. For example, it will be picking very well for 3-4 picks right at the enter limit, i.e. way out in front. Then all at once it will delay until one item is about ready to leave the work object then it will pick that one. Meanwhile a bunch of product has passed on the other pick conveyor because it waited so long.
The robot will track the part all the way to 450. If you have fetched the part with GetItmTgt then you can use it as long as you want, event out of area, which I assume is what’s happening.
But if you fetch the part with GetItmTgt…Limit…; and then you return it with AckItmTgt…FALSE;, then you may need to re-fetch it with just GetItmTgt…;
The items are sent down from the PC to the controller as soon as they are analyzed in the PC. The delay you see is probably caused by some logic in the rapid code.
As far as the items you are exactly right again. The following line of code is causing my delay.
if (PlaceTarget.Type = PlaceType)AND((PickTarget.Type=1 AND PickTarget.RobTgt.Trans.y > -50) or (PickTarget.Type = 2)) then
This is sorting in the y direction on item type 2 conveyor. Do you know a good way to do a y sort. I have tried with the sortdata and selctiondata but I can not get it to work.
I have three items side by side on the type 2 conveyor. I do not want to reach the far outside row on this robot.
I use to recommend the selectiondata for this kind of sorting. You seems to have some other type requirements too, so it may be a little complicated.
Another approach is to make a new vision model, with a limited position region, like only one third of the view. Then you only distribute the items found by that model to this first robot. I think this solution may require camera distribution option and ATC.