Note: This tutorial assumes basic familiarity with the Motoman robot controller. Consult the manufacturer's documentation for further details on any of the steps listed in this tutorial..
(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

Installing the Motoman ROS Server (Indigo)

Description: This tutorial walks through the steps of installing the ROS server code on the FS, DX, and YRC robot controllers

Keywords: Motoman, FS100, DX100, DX200, YRC1000, Industrial, motoman_driver

Tutorial Level: BEGINNER

Next Tutorial: Next, you'll learn how to interact with the Motoman controller using ROS nodes Using the Motoman ROS Interface

Overview

The motoman driver ROS Server code (MotoROS) is written in MotoPlus, using a socket interface and multiple parallel tasks. Note: Dual-arm manipulators may require additional development on the ROS side to achieve coordinated motion control.

Please see the motoman_driver page for information on robot controller requirements.

Installing MotoPlus Code

The MotoPlus application resides on the robot controller and acts as the server for clients on the ROS PC. This application can be installed from binary versions (recommended) or from source. Installation from source is only required if the default server implementation does not meet your needs. Source installation will require the MotoPlus SDK software (purchase from Yaskawa Motoman).

Installation from Binary (MotoROS Driver v1.5.0 and higher)

The MotoROS application is available as a pre-built binary. The binary files are linked below. They can also be found on Github in motoman/motoman_driver/MotoPlus/output. Different binaries are required for different robot controller models:

  • MotoRosFS100.out - Requires FS100 with system software FS1.17.00-00 or greater.

  • MotoRosDX100.out - Requires DX100 with system software DS3.32.00-14 or greater (-14) version.

  • MotoRosDX200.out - Requires DX200 with system software DN2.21.00-00 or greater.

  • MotoRosYRC1000.out - Requires YRC1000 with system software YAS1.11.00-00 or greater.

Locate the correct binary for your robot controller and place this file on an external memory card; Compact Flash (CF) or USB. Insert the memory card into the robot's programming pendant.

For DX100 and FS100 controllers, please see the motoman_driver page for additional prerequisites before proceeding.

Installation from Source

All files in the motoman/motoman_driver/MotoPlus directory should be downloaded to a development PC (Windows) with the MotoPlus SDK installed. Please read the MotoPlus documentation that is included with your SDK for instructions on compiling the source code.

Once compiled, the resulting binary file should be loaded to the robot controller as described in the {Installation from Binary} section above.

Loading the Binary File (DX100 and FS100)

Turn on the robot controller while holding the [Main Menu] key on the keypad to enter Maintenance Mode. You may release the key when you see the logo appear on the screen.

Once in Maintenance Mode, upgrade to MANAGEMENT security level by touching [System] > [Security]. (Default password is all 9's). Touch [MotoPlus APL] > [Device] to select either CF or USB memory type. Touch [MotoPlus APL] > [Load (User App)] to select and load MotoRosXXXXX.out. Touch [MotoPlus APL] > [File List] to verify that MotoROS was properly installed and no other MotoPlus applications are currently loaded on the controller.

Loading the Binary File (DX200 and YRC1000)

Turn on the robot controller while holding the [Main Menu] key on the keypad to enter Maintenance Mode. You may release the key when you see the logo appear on the screen.

Once in Maintenance Mode, upgrade to MANAGEMENT security level by touching [System] > [Security]. (Default password is all 9's).

Touch [System] > [Setup] > select OPTION FUNCTION. Cursor to "MotoPlus FUNC." and set to USED. Then cursor down to "MOTOMAN DRIVER" and set to USED.

Touch [MotoPlus APL] > [Device] to select either CF or USB memory type. Touch [MotoPlus APL] > [Load (User App)] to select and load MotoRosXXXXX.out. Touch [MotoPlus APL] > [File List] to verify that MotoROS was properly installed and no other MotoPlus applications are currently loaded on the controller.

Installing INFORM Code

The motoman driver specifies a required handshake between the native INFORM robot code and the MotoRos layer. The MotoRos code will automatically run an INFORM job called INIT_ROS at the start of a motion command, which will provide the required handshaking.

Load the INIT_ROS file found in motoman/motoman_driver/INFORM directory onto the robot controller.

Place this job file on an external memory card; Compact Flash (CF) or USB. Insert the memory card into the robot's programming pendant. Turn on the robot controller and boot into normal operation mode.

Upgrade to MANAGEMENT security level by touching [System] > [Security]. (Default password is all 9's). Touch [Ext Memory] > [Device] to select either CF or USB memory type. Touch [Ext Memory] > [Load] > "Job" to select and load INIT_ROS. Touch [Job] > [Select Job] to verify that INIT_ROS was properly installed.

Controller Configuration

Verify that the controller is enabled to receive "Remote Commands" in Remote mode:

  1. Upgrade your Security Level to "MANAGEMENT"
    1. Touching [System] > [Security].

    2. Default password is all 9's.
  2. Using the pendant, select [In/OUT] -> [PSEUDO INPUT SIG]

  3. Set input #82015 CMD REMOTE SEL to ON

    1. Move the cursor to the circle beside the specified input
    2. Press [INTERLOCK] + [SELECT] to turn on the input
  4. Rotate the pendant key-switch (upper left of pendant) fully clockwise into REMOTE mode.

Troubleshooting

Please refer to the Troubleshooting page for information on how to deal with common errors and problems.

Wiki: motoman_driver/Tutorials/indigo/InstallServer (last edited 2017-09-08 13:48:48 by TedMiller)