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
 
(10 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
The SIASUN Bin Picking Interface was developed using the following system version: '''UI: 2.1.10, Robot: 1.1.8'''
 
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:
+
'''This interface may not be compatible with other system versions!''' You can find more information about your system version in the '''About''' Tab:
  
  
[[File: Siasun about.png]]
+
[[File: Siasun about.png|frame|none|alt=Alt text| Figure 1.1]]
  
  
Line 14: Line 14:
  
  
[[File:SIASUN Locator Tutorial Language.png]]
+
[[File:SIASUN Locator Tutorial Language.png|frame|none|alt=Alt text| Figure 1.2]]
  
  
 
== 2. SIASUN Controller Setup ==
 
== 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.
+
The following tutorial gives a step by step guide of how to configure your SIASUN Robot Controller, install all necessary files and amend the robotic program to get the Locator up and running.
  
 
=== 2.1 Network Configuration ===
 
=== 2.1 Network Configuration ===
Line 25: Line 25:
 
The Locator SIASUN Module utilizes TCP/IP communication for transferring data between the SIASUN Robot Controller and the Vision Controller.
 
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.
+
As the first step in the configuration process, ensure that the IP address of the SIASUN Controller meets your network configuration requirements.
  
 
Browse to '''Setting''' -> '''IP Address''':
 
Browse to '''Setting''' -> '''IP Address''':
  
  
[[File:SIASUN Locator Tutorial IP Config Step 0.png]]
+
[[File:SIASUN Locator Tutorial IP Config Step 0.png|frame|none|alt=Alt text| Figure 2.1]]
  
  
Line 36: Line 36:
  
  
[[File: SIASUN Locator Tutorial IP Config Step 1.png]]
+
[[File: SIASUN Locator Tutorial IP Config Step 1.png|frame|none|alt=Alt text| Figure 2.2]]
  
  
Line 42: Line 42:
  
  
[[File: SIASUN Locator Tutorial IP Config Step 2.png]]
+
[[File: SIASUN Locator Tutorial IP Config Step 2.png|frame|none|alt=Alt text| Figure 2.3]]
  
  
The new network configuration will be applied immediately, the reboot of Robot Controller is not necessary.
+
The new network configuration will be applied immediately and the Robot Controller does not need to be rebooted.
  
 
== 3. Photoneo SIASUN Module Setup ==
 
== 3. Photoneo SIASUN Module Setup ==
Line 51: Line 51:
 
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 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:
+
The Photoneo SIASUN Module is implemented in the following file:
  
 
* - ''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 the USB into the Robot Controller, select the '''Program''' Tab and click the '''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''':  
  
  
[[File: Setting Up Guide SIASUN Import.png]]
+
[[File: Setting Up Guide SIASUN Import.png|frame|none|alt=Alt text| Figure 3.1]]
  
  
If import has finished successfully, a popup should appear on the screen. Confirm by clicking '''Yes''' button
+
If the import has been completed successfully, a popup should appear on the screen. Confirm by clicking '''Yes''':
  
  
[[File: Setting Up Guide SIASUN Import Success.png]]
+
[[File: Setting Up Guide SIASUN Import Success.png|frame|none|alt=Alt text| Figure 3.2]]
  
  
As the first step of program configuration Set a Home Position - the very first line in the program.  
+
The first step of the program configuration is to 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.  
+
Set the Home Pose is out of the scanning volume to ensure that robot arm doesn't cast a shadow on the scene.  
  
  
[[File: Setting Up Guide SIASUN Reteach Home Pose.png]]
+
[[File: Setting Up Guide SIASUN Reteach Home Pose.png|frame|none|alt=Alt text| Figure 3.3]]
  
  
Set IP Address of Bin Picking Studio Robot Interface to the vision_controller_ip variable.  
+
Set the IP Address of the Bin Picking Studio Robot Interface to the '''vision_controller_ip''' variable.  
  
By default, bin_picking_port is set to 2002. Do not edit this config until approved by Photoneo Support.
+
By default, '''bin_picking_port = 2002'''. This configuration should not be changed unless approved by Photoneo Support!
  
  
[[File: Setting Up Guide SIASUN Network Config.png]]
+
[[File: Setting Up Guide SIASUN Network Config.png|frame|none|alt=Alt text| Figure 3.4]]
  
  
As a next step, Start and End pose joint values needs to be set.  
+
The next step of the process is to assign, Start and End pose joint values to the 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 to the current joint values
+
'''Start position''' should be located approximately 30-40 cm above the center of the bin. Jog the robot to this position and set the values in the '''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 to the current joint values.
+
'''End position''' can be the same as the start pose or it can be shifted towards the placing zone. It should also be positioned approximately 30-40cm above the bin. Jog the robot to this position and set the values in '''end_joint''' array according to the current joint values.
  
  
[[File: Setting Up Guide SIASUN Reteach Start End.png]]
+
[[File: Setting Up Guide SIASUN Reteach Start End.png|frame|none|alt=Alt text| Figure 3.5]]
  
  
 +
Scroll down to the Motion Execution part of the program. As is shown in the figure below, the bin picking trajectory consists of 5 motion segments
  
 +
* - '''movej Start'''
  
 +
* - '''movel Approach'''
  
[[File: Setting Up Guide SIASUN Motion Execution.png]]
+
* - '''movel Grasp'''
  
 +
* - '''movel Deapproach'''
  
 +
* - '''movel End'''
  
[[File: Setting Up Guide SIASUN Reteach Placing.png]]
+
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 the grasp pose is reached.
 +
 
 +
'''Do not configure any alternative gripper actions or additional path stages in Bin Picking Studio !!! The only permitted sequence of operations is [TRAJ, TRAJ, TRAJ, TRAJ, INFO, INFO, INFO] !!!'''
 +
 
 +
Amend the speed and acceleration settings according to the application requirements.
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Motion Execution.png|frame|none|alt=Alt text| Figure 3.6]]
 +
 
 +
 
 +
Reteach the placing poses and configure the speed and acceleration settings according to the application requirements.
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Reteach Placing.png|frame|none|alt=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 the Photoneo Bin Picking API can be integrated together.
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Main.png]]
 +
 
 +
== 5. Runtime ==
 +
 
 +
Ensure that your solution is running on the Deployment page of Bin Picking Studio and that the Bin Picking Status is in the '''Waiting for a connection''' state as is shown in the figure below:
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Waiting For Connect.png|frame|none|alt=Alt text| Figure 5.1]]
 +
 
 +
 
 +
Select '''AUTO''' or '''MANUAL''' mode and adopt the speed override if required.
 +
 
 +
Select the ''Photoneo_Siasun_Module.spf'' from the Program List:
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Select Program.png|frame|none|alt=Alt text| Figure 5.2]]
 +
 
 +
 
 +
Click '''Start''' to launch the robot program:
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Before Start 2.png|frame|none|alt=Alt text| Figure 5.3]]
 +
 
 +
 
 +
Hold the '''Press to Move''' button to move the robot to the Home Position:
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Press To Move.png|frame|none|alt=Alt text| Figure 5.4]]
 +
 
 +
 
 +
You should also notice that the Bin Picking Status has changed to Connected. This means that the Bin Picking Studio has established a successful connection to the Robot Controller:
 +
 
 +
 
 +
[[File: Setting Up Guide SIASUN Connected.png|frame|none|alt=Alt text| Figure 5.5]]
 +
 
 +
 
 +
The robot should now start sending requests to the Bin Picking Studio and will execute bin picking movements.
 +
 
 +
'''NOTE: Ensure that you are ready to halt motion execution immediately in any issue arise. It is strongly recommended to reduce the speed to 10% of maximum or less during initial bin picking tests.'''

Latest revision as of 07:30, 7 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

This interface may not be compatible with other system versions! You can find more 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 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 the configuration process, 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 and the Robot Controller does not need to be rebooted.

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 the following file:

  • - Photoneo_SIASUN_Module_1_3.spf'

Plug the USB into the Robot Controller, select the Program Tab and click the 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 the import has been completed successfully, a popup should appear on the screen. Confirm by clicking Yes:


Alt text
Figure 3.2


The first step of the program configuration is to set a Home position - the first MoveJ command.

Set the Home Pose is out of the scanning volume to ensure that robot arm doesn't cast a shadow on the scene.


Alt text
Figure 3.3


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

By default, bin_picking_port = 2002. This configuration should not be changed unless approved by Photoneo Support!


Alt text
Figure 3.4


The next step of the process is to assign, Start and End pose joint values to the Array variables.

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

End position can be the same as the start pose or it can be shifted towards the placing zone. It should also be positioned approximately 30-40cm above the bin. Jog the robot to this position and set the 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 is 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 the grasp pose is reached.

Do not configure any alternative gripper actions or additional path stages in Bin Picking Studio !!! The only permitted 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 the placing poses and configure the 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 the Photoneo Bin Picking API can be integrated together.


Setting Up Guide SIASUN Main.png

5. Runtime

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


Alt text
Figure 5.1


Select 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 the Press to Move button to move the robot to the Home Position:


Alt text
Figure 5.4


You should also notice that the Bin Picking Status has changed to Connected. 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 will execute bin picking movements.

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