Hanwha Pickit interface

This article documents the interface of the Hanwha Pickit integration. For installation instructions, please refer to the Hanwha installation and setup article.

Pickit variables

The following variables need to be defined before you can use the Pickit functions. To do this go to ProgrammingVariablesAdd. Once a variable is created, its name should be changed according to the table below.

Variable name

Type

Comment

piPose

position

Object pose expressed relatively to the robot base frame.

piPrePose

joint

Joint pose relatively to the piPose, used to approach the piPose.

piRefJoint

joint

Joint position used for robot joint configuration, typically defined in the middle of the picking area.

piPickId

number

ID of the pick point that was selected for the given object.

piRefId

number

ID of the selected pick point’s reference pick point.

piType

number

ID type of the detected object.

piDim1

number

Length or diameter (mm).

piDim2

number

Width or diameter (mm).

piDim3

number

Height (mm).

piAge

number

Amount of time that has passed between the capturing of the camera data and the moment the object information is sent to the robot.

piRemain

number

Number of remaining objects that can be sent to the robot in the next messages.

piStatus

number

Pickit status or a response to previously received robot commands.

Define piRefJoint

To prevent strange movements of the robot, we need to define the robot joint configuration for picking. This is done by jogging the robot to the center of the picking area and manually set the joint position values of piRefJoint. This position will indicate the desired robot configuration, which will be used for all calculated pick poses.

Pickit functions

First, download the integration files here. Copy all the .script files to a USB drive and plug it in the teach pendant. To add a Pickit function in your robot program go to Commandsscript. A new script node will be created. Press this node and editfileload. This allows you to select the .script function that you want to add.

All available functions are briefly explained below.

Defining the IP adress of Pickit

Before any of these functions can be used, please make sure to set the correct IP address of the Pickit system. This is done by pressing on the node and edit. Here you can set the IP address, which is set to 169.254.5.180 by default.

Detection functions

Function name

Comment

Input

Detection

Trigger a Pickit object detection using the currently active setup and product Configuration.

pickit_offset

Next object

Request the next detected object.

pickit_offset

Capture image

Trigger Pickit to capture a camera image to be used by a following Process image function. If the camera moves during image capture, a warning will be shown in the web interface.

/

Process image

Trigger an object detection on the camera image that was previously captured via the Capture image function (or one of the Detection functions).

pickit_offset

Detection with retries

Repeatedly trigger a Pickit object detection as long as nothing is found and the ROI is not empty, up to a number of attempts.

retries, pickit_offset

Configuration functions

Function name

Comment

Input

Configuration

Load the specified setup and product Configuration.

setup, product

Build background

Build the background cloud used in Advanced filters.

/

Calibration functions

Function name

Comment

Input

Calibration

Trigger a detection of the robot-camera calibration plate.

/

Monitoring functions

Function name

Comment

Input

Save scene

Save a Snapshots with the latest detection results.

/

Hint

In some functions, input values have to be set manually. This is done by pressing on the node and edit. The mentioned input variables can be found under the header Input at the beginning of each function.