The Pickit functions cheat sheet

Note

This article describes the legacy way of using Pickit with a Universal Robot. For new systems, please refer to the URCap installation and setup article.

Pickit provides many functions to script your Pickit application to a success. Underneath we provide an overview of the provided functions:

pickit_is_running(), pickit_can_calibrate(), pickit_save_scene(), pickit_find_calib_plate(), pickit_configure(setup,product), pickit_look_for_object(), pickit_next_object(), pickit_has_response(), pickit_object_found(), pickit_no_image_captured(), pickit_remaining_objects(), pickit_get_pose()

Intro

We differentiate two different kinds of functions:

  • Blocking functions: These functions send a command to Pickit and waits until a response is received.

  • Stopping functions: These functions force the robot program to stop in case it returns false. Note that the return value is never used in case the robot program is stopped.

  • Non-blocking functions: This is pickit_look_for_object() and pickit_next_object(). These functions only send a command to Pickit and immediately return. Waiting for a response has to happen in another line/function. The motivation for that is that the pickit_look_for_object() function does not result in an immediate answer due to the detection taking time. By having this function non-blocking, the robot or control process can do something else before waiting for the response.

Pickit functions

pickit_is_running()

Request Pickit if Pickit is in Running state.

Behaviour

Universal robots

ABB

Blocking

Yes

Yes

Return value

Boolean

Boolean

Stopping

No + popup

No

pickit_can_calibrate()

Request Pickit if Pickit is in Calibration state. (the Calibration page is active in the Pickit web interface)

Behaviour

Universal robots

ABB

Blocking

Yes

Yes

Return value

Boolean

Boolean

Stopping

No

No

pickit_save_scene()

Request Pickit to save the latest image and configurations into a file.

Behaviour

Universal robots

ABB

Blocking

Yes

Yes

Return value

Boolean

Boolean

Stopping

No + popup

No

pickit_find_calib_plate()

Request Pickit to localise the Pickit camera-to-robot calibration plate.

Behaviour

Universal robots

ABB

Blocking

Yes

Yes

Return value

Boolean

Stopping

No + popup

Yes

pickit_configure(setup, product)

Request Pickit to load and use a specific setup and product type.

Behaviour

Universal robots

ABB

Blocking

Yes

Yes

Return value

Boolean

Stopping

Yes + popup

Yes

pickit_look_for_object()

Request Pickit to look for objects.

Behaviour

Universal robots

ABB

Blocking

No

No

Return value

Stopping

No

No

pickit_next_object()

Request Pickit to return the next object stored in the Pickit buffer which was found before with pickit_look_for_object()

Behaviour

Universal robots

ABB

Blocking

No

No

Return value

Stopping

No

No

pickit_has_response()

Check if a response is received after sending pickit_look_for_object() or pickit_next_object().

Behaviour

Universal robots

ABB

Blocking

Yes

Yes

Return value

Boolean

Boolean

Stopping

No

No

pickit_object_found()

Check if any objects are present in the Pickit buffer.

Behaviour

Universal robots

ABB

Blocking

No

No

Return value

Boolean

Boolean

Stopping

No

No

pickit_no_image_captured()

Check if Pickit was able to capture an image.

Behaviour

Universal robots

ABB

Blocking

No

No

Return value

Boolean

Boolean

Stopping

No

No

pickit_remaining_objects()

Check the number of remaining objects in the Pickit buffer.

Behaviour

Universal robots

ABB

Blocking

No

No

Return value

Integer

Integer

Stopping

No

No

pickit_get_pose()

Request Pickit for the pick pose of the first object in the Pickit buffer.

Behaviour

Universal robots

ABB

Blocking

No

Return value

Pose (3 translations, 3 rotations)

Stopping

No