Warning

You are reading an old version of this documentation. If you want up-to-date information, please have a look at 5.1 .

Alternating part types

First option

The multi_part_quantity parameter is used to ask EYE+ to look for one or several parts of a specific type, either a or b. This means that every time EYE+ takes a picture, it will look for at least <n> parts of the specific type(s) on the image. If it does not find those parts, no coordinates will be sent and it will start vibrating and taking a new image until it gets those <n> parts.

This parameter influences the operation of the command get_part and prepare_part.

The following scenario describes how to get a part of type a, then a part of type b and so on, always in an alternating way.

../../../../_images/multi_part_quantity_alternating.png

Fig. 212 Production scenario for alternating part types

  1. [set_parameter multi_part_quantity a 1]: Set the parameter multi_part_quantity for a to 1.

  2. [set_parameter multi_part_quantity b 0]: Set the parameter multi_part_quantity for b to 0.

  3. [get_part]: Call the command get_part, it will either vibrate the Asycube and take a picture or send directly the coordinates of one part a. The Asycube vibration and image analysis will not end until the system finds one or more part a to fulfill the request. Since multi_part_quantity for b is set to 0, no part b will be ever returned here.

  4. [Pick & place part a]: Pick and place the part of type a.

  5. [set_parameter multi_part_quantity a 0]: Set the parameter multi_part_quantity for a to 0.

  6. [set_parameter multi_part_quantity b 1]: Set the parameter multi_part_quantity for b to 1.

  7. [get_part]: Call the command get_part, it will either vibrate the Asycube and take a picture or send directly the coordinates of one part b. The Asycube vibration and image analysis will not end until the system finds one or more part b to fulfill the request. Since multi_part_quantity for a is now set to 0, no part a will be ever returned here.

  8. [Pick & place part b]: Pick and place the part of type b.

  9. Start again from step 1. The cycle stops when EYE+ receives the command stop production.

Second option

The following scenario is not strictly speaking equivalent to the first option described above but it could be used to achieve a similar result. Instead of requesting alternatingly a part a and a part b, we ask now for both a and b at the same time. Here, the system will ensure that get_part returns both parts in the same response. This means that at least one part of each type must be pickable at the same time.

This can be useful if the robot has e.g. two grippers and must pick both a and b in order to continue its operation.

Requiring both a and b to be pickable at the same time reduces the probability that get_part can be fulfilled after a feeding sequence and can therefore increase the cycle time of the application.

../../../../_images/multi_part_quantity_together.png

Fig. 213 Production scenario to always get one part a and one part b

  1. [set_parameter multi_part_quantity a 1]: Set the parameter multi_part_quantity for a to 1.

  2. [set_parameter multi_part_quantity b 1]: Set the parameter multi_part_quantity for b to 1.

  3. [get_part]: Call the command get_part, it will either vibrate the Asycube and take a picture or send directly the coordinates of one part a and one part b. The Asycube vibration and image analysis will not end until the system finds one or more part of both types to fulfill the request.

  4. [Pick & place part a & b]: Pick and place the part of type a and the part of type b.

  5. Start again from step 1. The cycle stops when EYE+ receives the command stop production.