Difference between revisions of "Bin Picking Tutorial: Setting up Photoneo Bin Picking Studio with SIASUN robots"

From 3D scanning Knowledge base - Photoneo wiki
Jump to: navigation, search
Line 55: Line 55:
 
* - ''Photoneo_SIASUN_Module_1_3.spf'''
 
* - ''Photoneo_SIASUN_Module_1_3.spf'''
  
Plug USB into Robot Controller, select '''Program''' Tab and Click '''Import''' button at the bottom of the Screen.  
+
Plug USB into Robot Controller, select '''Program''' Tab and Click '''Import''' button at the bottom of the screen.  
  
Select the ''"Photoneo_SIASUN_Module_1_3.spf"'' file from the USB Disk and confirm Import:  
+
Select the ''"Photoneo_SIASUN_Module_1_3.spf"'' file from the USB Disk and confirm by clicking '''Import''':  
  
  
Line 63: Line 63:
  
  
If import has finished successfully, a popup should appear on the screen. Confirm by clicking '''Yes''' button
+
If import has finished successfully, a popup should appear on the screen. Confirm by clicking '''Yes''':
  
  
Line 69: Line 69:
  
  
As the first step of program configuration set a '''Home''' position - the very first line in the program.  
+
As the first step of program configuration set a '''Home''' position - the first MoveJ command.  
  
Ensure that it is out of the scanning volume so it doesn't block the scene from proper scanning.  
+
Ensure that Home Pose is out of the scanning volume, so it doesn't create a shadow on the scene.  
  
  
Line 79: Line 79:
 
Set IP Address of Bin Picking Studio Robot Interface to the '''vision_controller_ip''' variable.  
 
Set IP Address of Bin Picking Studio Robot Interface to the '''vision_controller_ip''' variable.  
  
By default, '''bin_picking_port = 2002'''. Do not edit this config until approved by Photoneo Support!  
+
By default, '''bin_picking_port = 2002'''. Do not edit this config, until approved by Photoneo Support!  
  
  
Line 85: Line 85:
  
  
As a next step, Start and End pose joint values needs to be set.  
+
As a next step, Start and End pose joint values needs to be set to Array variables.  
  
'''Start position''' should be above the center of the bin in approximately 30-40cm height. Jog the robot to this position and set values in '''start_joint''' variable according to the current joint values.
+
'''Start position''' should be above the center of the bin in approximately 30-40cm height. Jog the robot to this position and set values in '''start_joint''' array according to the current joint values.
  
'''End position''' can be the same as start pose or it can be shifted towards placing zone. It should also be in approximately 30-40cm height above the bin. Jog the robot to this position and set values in '''end_joint''' variable according to the current joint values.
+
'''End position''' can be the same as start pose or it can be shifted towards placing zone. It should also be in approximately 30-40cm height above the bin. Jog the robot to this position and set values in '''end_joint''' array according to the current joint values.
  
  
Line 95: Line 95:
  
  
Scroll down to the Motion Execution part of the program. As shown in the figure below, bin picking trajectory consists of 5 motion segments
+
Scroll down to the Motion Execution part of the program. As shown in the figure below, the bin picking trajectory consists of 5 motion segments
  
 
* - '''movej Start'''
 
* - '''movej Start'''
Line 107: Line 107:
 
* - '''movel End'''
 
* - '''movel End'''
  
In the current implementation, all gripper commands MUST be hard-coded directly into the robot program. Notice '''io_out(1,1)''' command after Grasp Pose movel command.  
+
In the current implementation, all gripper commands MUST be hard-coded directly into the robot program - notice, for example, '''io_out(1,1)''' command after grasp pose is reached.  
  
'''Prevent configuring Gripper Actions or additional path stages in Bin Picking Studio !!! The only allowed sequence of operations is [TRAJ, TRAJ, TRAJ, TRAJ, INFO, INFO, INFO] !!!'''
+
'''Prevent configuring any gripper actions or additional path stages in Bin Picking Studio !!! The only allowed sequence of operations is [TRAJ, TRAJ, TRAJ, TRAJ, INFO, INFO, INFO] !!!'''
  
 
Amend the speed and acceleration settings according to the application requirements.  
 
Amend the speed and acceleration settings according to the application requirements.  
Line 117: Line 117:
  
  
Reteach Placing poses and configure speed and acceleration settings according to the application requirements.
+
Reteach placing poses and configure speed and acceleration settings according to the application requirements.
  
  
Line 125: Line 125:
 
== 4. SPF File ==
 
== 4. SPF File ==
  
The following section provides the source code of Photoneo_Siasun_Module_1_3.spf - the basic template which demonstrates how the user's application and Photoneo Bin Picking API can be integrated together.
+
The following section provides the source code of ''Photoneo_Siasun_Module_1_3.spf'' - the basic template which demonstrates how the user's application and Photoneo Bin Picking API can be integrated together.
  
  
Line 138: Line 138:
  
  
Choose if you want to run the application in '''AUTO''' or '''MANUAL''' mode and adopt the speed override if required
+
Choose if you want to run the application in '''AUTO''' or '''MANUAL''' mode and adopt the speed override if required.
  
Select the ''Photoneo_Siasun_Module.spf'' from the Program List
+
Select the ''Photoneo_Siasun_Module.spf'' from the Program List:
  
  

Revision as of 11:37, 1 February 2019

NOTE: Users are strongly recommended to read the general introduction to robot interfaces prior to installing specific robot modules.

1. Prerequisities

The SIASUN Bin Picking Interface was developed using the following system version: UI: 2.1.10, Robot: 1.1.8

The interface may not be compatible with other system versions! You can find information about your system version in the About Tab:


Alt text
Figure 1.1


If your pendant is still in Chinese, select the Settings tab and switch the language to English at the bottom of the page:


Alt text
Figure 1.2


2. SIASUN Controller Setup

The following tutorial gives a step by step guide of how to configure your SIASUN robot controller, install all the necessary files and amend the robotic program to get the Locator up and running.

2.1 Network Configuration

The Locator SIASUN Module utilizes TCP/IP communication for transferring data between the SIASUN Robot Controller and the Vision Controller.

As the first step in commissioning, ensure that the IP address of the SIASUN controller meets your network configuration requirements.

Browse to Setting -> IP Address:


Alt text
Figure 2.1


Select the Static option and configure the network settings of the Robot Controller:


Alt text
Figure 2.2


Confirm the new network configuration by clicking the YES button:


Alt text
Figure 2.3


The new network configuration will be applied immediately, the reboot of Robot Controller is not necessary.

3. Photoneo SIASUN Module Setup

The first step in the installation of Photoneo SIASUN Module is to copy the Robot Program from the Photoneo SIASUN Module Archive to the Robot Controller.

The Photoneo SIASUN Module is implemented in a following file:

  • - Photoneo_SIASUN_Module_1_3.spf'

Plug USB into Robot Controller, select Program Tab and Click Import button at the bottom of the screen.

Select the "Photoneo_SIASUN_Module_1_3.spf" file from the USB Disk and confirm by clicking Import:


Alt text
Figure 3.1


If import has finished successfully, a popup should appear on the screen. Confirm by clicking Yes:


Alt text
Figure 3.2


As the first step of program configuration set a Home position - the first MoveJ command.

Ensure that Home Pose is out of the scanning volume, so it doesn't create a shadow on the scene.


Alt text
Figure 3.3


Set IP Address of Bin Picking Studio Robot Interface to the vision_controller_ip variable.

By default, bin_picking_port = 2002. Do not edit this config, until approved by Photoneo Support!


Alt text
Figure 3.4


As a next step, Start and End pose joint values needs to be set to Array variables.

Start position should be above the center of the bin in approximately 30-40cm height. Jog the robot to this position and set values in start_joint array according to the current joint values.

End position can be the same as start pose or it can be shifted towards placing zone. It should also be in approximately 30-40cm height above the bin. Jog the robot to this position and set values in end_joint array according to the current joint values.


Alt text
Figure 3.5


Scroll down to the Motion Execution part of the program. As shown in the figure below, the bin picking trajectory consists of 5 motion segments

  • - movej Start
  • - movel Approach
  • - movel Grasp
  • - movel Deapproach
  • - movel End

In the current implementation, all gripper commands MUST be hard-coded directly into the robot program - notice, for example, io_out(1,1) command after grasp pose is reached.

Prevent configuring any gripper actions or additional path stages in Bin Picking Studio !!! The only allowed sequence of operations is [TRAJ, TRAJ, TRAJ, TRAJ, INFO, INFO, INFO] !!!

Amend the speed and acceleration settings according to the application requirements.


Alt text
Figure 3.6


Reteach placing poses and configure speed and acceleration settings according to the application requirements.


Alt text
Figure 3.7


4. SPF File

The following section provides the source code of Photoneo_Siasun_Module_1_3.spf - the basic template which demonstrates how the user's application and Photoneo Bin Picking API can be integrated together.


Setting Up Guide SIASUN Main.png

5. Runtime

Make sure that your solution on the Deployment page of Bin Picking Studio is running and Bin Picking Status is in Waiting for a connection state as is shown in the figure below:


Alt text
Figure 5.1


Choose if you want to run the application in AUTO or MANUAL mode and adopt the speed override if required.

Select the Photoneo_Siasun_Module.spf from the Program List:


Alt text
Figure 5.2


Click Start to launch the robot program:


Alt text
Figure 5.3


Hold Press to Move button to get robot to Home Position:


Alt text
Figure 5.4


You should also notice that Bin Picking Status has changed to the Connected state. This means that the Bin Picking Studio has established a successful connection to the robot controller:


Alt text
Figure 5.5


The robot should now start sending requests to the Bin Picking Studio and execute bin picking movements.

NOTE: Ensure that you are ready to halt motion execution immediately in case of any problem. It is strongly recommended to reduce the speed to 10% of maximum or less during initial bin picking tests.