Skip to content

Firmware

Yoshua Nava edited this page Jan 8, 2018 · 3 revisions

Index

Updating YuMi Software and Firmware

To make sure the steps below will work properly, you need to check that the most up to date software has been loaded onto YuMi and the Smart Gripper package has been added as well. The steps to check this is listed below.

  1. Turn on YuMi and wait for the home screen to come up on the FlexPendant
  2. Connect YuMi to your computer using an Ethernet cable from the XP23 Service Port
  3. Open RobotStudio 6.0 or newer
  4. Click Online, then click Add Controller
  5. In the "Remote Controller" box, type: 192.168.125.1
  6. Click Add, controller should appear above
  7. Click the controller, then click OK
  8. Request Write Access from YuMi (more information below)
  9. Click the Grant button in the popup window on the FlexPendant screen

Part 8 - Controller Tab > Access Group > Request Write Access

Now your computer running RobotStudio has access to the YuMi controller. First you will need to check which software version is installed and install the Smart Gripper add-on package if you have not done so yet. To do this, do the following.

  1. Go to the _Add-In_s tab found at the top of the RobotStudio window
  2. Click the RobotWare button if it is not currently displaying
  3. Check which version is installed and make sure it is the newest version *
  4. Then click the RobotWare Add-Ins button and find the SmartGripper package
  5. If the SmartGripper package is not installed, then install it
  6. Go to the Controller tab
  7. Click the Installation Manager button in the Configuration button group
  8. In the new window, make sure the Network tab is active and double click controller in the list
  9. Click next on the bottom right of the window
  10. The RobotWare and SmartGripper need to be added in this window
  11. To add the packages, click Add... and add both the RobotWare and SmartGripper packages
  12. Once this is done, all the neccessary packages have been installed then click Next
  13. A license should be displayed in the current window, click Next again
  14. The following controller options need to be enabled:
  • PC Interface (616-1) found at: System Options > Communication > PC Interface
  • Multitasking (623-1) found at: System Options > Engineering Tools > Multitasking **
  1. Once this is done, click Next then Apply

* Part 3 - This repo was made based on the RobotWare version 6.03.02
** Part 14b - This option should be enabled by default since YuMi has two arms that collaborate

YuMi should now have the required software, packages, and controller settings neccessary to communicate with an external computer.

Manual firmware setup

Externally Guided Motion (EGM) - Velocity control

You'll first need to create a set of signals to be triggered via the RWS API:

Task TYPE Access level
EGM_START_JOINT Digital Input All
EGM_START_POSE Digital Input All
EGM_STOP Digital Input All
GO_TO_HOME_POSITION Digital Input All
RUN_CAMERA_COMMAND Digital Input All
RUN_SG_COMMAND Digital Input All

Next, create the following set of tasks:

Task TYPE Use Mechanical Unit Group
T_ROB_L NORMAL rob_l
T_ROB_R NORMAL rob_r

After creating the tasks shown in the table above, restart the YuMi via the FlexPendant. When it finishes restarting, open RobotStudio, and add the following scripts (all of them located in yumi_hw/rapid/) to each of the tasks specified:

File Tasks
EGM/TRobEGM.mod T_ROB_L, T_ROB_R
EGM/TRobMain.mod T_ROB_L, T_ROB_R
EGM/TRobSynchronization.sys T_ROB_L, T_ROB_R
EGM/TRobSG.sys T_ROB_L, T_ROB_R

RobotWare Services (RWS) - Position control

Create the following set of tasks:

Task TYPE Use Mechanical Unit Group
T_ROB_L NORMAL rob_l
T_ROB_R NORMAL rob_r
ROS_StateServer NORMAL

After creating the tasks shown in the table above, restart the YuMi via the FlexPendant. When it finishes restarting, open RobotStudio, and add the following scripts (all of them located in yumi_hw/rapid/) to each of the tasks specified:

File Tasks
RWS/ROS_motion_left.mod T_ROB_L
RWS/ROS_motion_right.mod T_ROB_R
RWS/ROS_stateServer.mod ROS_StateServer
RWS/ROS_common.sys All
RWS/ROS_messages.sys All
RWS/ROS_socket.sys All

ABB Driver - Position control

Create the following set of tasks:

Task TYPE Use Mechanical Unit Group
T_ROB_L NORMAL rob_l
T_ROB_R NORMAL rob_r
ROS_MotionServer_L NORMAL
ROS_StateServer_L NORMAL
ROS_MotionServer_R NORMAL
ROS_StateServer_R NORMAL

After creating the tasks shown in the table above, restart the YuMi via the FlexPendant. When it finishes restarting, open RobotStudio, and add the following scripts (all of them located in yumi_hw/rapid/) to each of the tasks specified:

File Tasks
ABB_driver/ROS_motion_left.mod T_ROB_L
ABB_driver/ROS_motion_right.mod T_ROB_R
ABB_driver/ROS_motionServer_left.mod ROS_MotionServer_L
ABB_driver/ROS_motionServer_right.mod ROS_MotionServer_R
ABB_driver/ROS_stateServer_left.mod ROS_StateServer_L
ABB_driver/ROS_stateServer_right.mod ROS_StateServer_R
ABB_driver/ROS_common.sys All RWS tasks
ABB_driver/ROS_messages.sys All RWS tasks
ABB_driver/ROS_socket.sys All RWS tasks

Grippers and cameras

Tasks:

Task TYPE Use Mechanical Unit Group
T_GRIP_State NORMAL
T_GRIP_Motion NORMAL
T_GRIP_Motion_L NORMAL
T_GRIP_Motion_R NORMAL
T_CAMERA NORMAL

Modules:

File Tasks
Grippers/Gripper_motionServer.mod T_GRIP_Motion
Grippers/Gripper_stateServer.mod T_GRIP_State
Grippers/GripperMotion_left.mod T_GRIP_Motion_L
Grippers/HandDriver_left.sys T_GRIP_Motion_L
Grippers/GripperMotion_right.mod T_GRIP_Motion_R
Grippers/HandDriver_right.sys T_GRIP_Motion_R
Grippers/ROS_common.sys All T_GRIP_XXX tasks
Grippers/ROS_messages.sys All T_GRIP_XXX tasks
Grippers/ROS_socket.sys All T_GRIP_XXX tasks
EGM/TCameraMain.mod T_CAMERA

Other Relevant Information

Enabling Motors

Occasionally, when YuMi is started up, the motors will be set to an off state. To turn the motors on, click the quick access menu button located at the bottom left of the TouchPendant screen. This will open a sidebar on the right of the screen. Click the top-most button (looks likean outlined YuMi) to pull up the Operator Panel. Under the text Motor On/Off, click the on On button to turn the motors on. From this menu, the operator mode can be changed between automatic and manual mode as described in the section below.

Comments on Creating and Restoring from Backups

Whenever major changes are going to be done to the YuMi system (adding/deleting large amounts of code, changing system configurations, etc), be sure to create a system backup before going ahead and making the modifications. It is advised to create a system backup after setting up the controller using the instructions above. Instructions for creating and restoring from system backups is shown below.

Creating a System Backup

  1. Request Write Access from YuMi (more information below)
  2. Click the Grant button in the popup window on the FlexPendant screen
  3. Click the Backup drop down menu, then click Create Backup... (more information below)
  4. Optional Change the name of the backup file and ensure the file is in the desired directory
  5. Click OK and the system backup will be created

Part 1 - Controller Tab > Access Group > Request Write Access
Part 3 - Controller Tab > Controller Tools > Backup Dropdown Menu > Create Backup...

Restoring from a System Backup

  1. Request Write Access from YuMi (more information below)
  2. Click the Grant button in the popup window on the FlexPendant screen
  3. Click the Backup drop down menu, then click Restore Backup... (more information below)
  4. Click the "..." button on the right side of the window then Browse Files System...
  5. Click the folder of the system backup file then click Select Folder
  6. Click OK and YuMi will restart its system with configurations from backup folder

Part 1 - Controller Tab > Access Group > Request Write Access
Part 3 - Controller Tab > Controller Tools > Backup Dropdown Menu > Restore Backup...

Credits

This guide is inspired on the one from the ETH-Zurich yumi repository