Warning
You are reading the documentation for an older Pickit release (2.2). Documentation for the latest release (3.4) can be found here.
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 Programming → Variables → Add. Once a variable is created, its name should be changed according to the table below.
Variable name |
Type |
Comment |
---|---|---|
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. |
piDim1 |
number |
Length or diameter (mm). |
piDim2 |
number |
Width or diameter (mm). |
piDim3 |
number |
Height (mm). |
piPickId |
number |
ID of the pick point that was selected for the given object. |
piPose |
position |
Object pose expressed relatively to the robot base frame. |
piPrePose |
joint |
Joint pose relatively to the piPose, used to approach the piPose. |
piRefId |
number |
ID of the selected pick point’s reference pick point. |
piRefJoint |
joint |
Joint position used for robot joint configuration, typically defined in the middle of the picking area. |
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. |
piType |
number |
ID type of the detected object. |
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 Commands → script. A new script node will be created. Press this node and edit → file → load. 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.
Function name |
Comment |
Input |
---|---|---|
Build background |
Build the background cloud used in Advanced filters. |
/ |
Calibration |
Trigger a detection of the robot-camera calibration plate. |
/ |
Capture image |
Trigger Pickit to capture a camera image to be used by a following Process image function. |
/ |
Configuration |
Load the specified setup and product Configuration. |
setup, product |
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 |
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 |
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 |
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.