Programming Multiple Coordinated Robot Systems (MCRS)

Complex robot systems can be programmed to coordinate in space and time.

When multiple motion groups are defined under a single controller, MCRS operations can be inserted in a task. Multiple activities can then be defined under a single MCRS operation, where each activity represents one of the motion groups managed by the task.


Before you begin:
  • Defining an MCRS scenario requires that multiple motion groups are defined under the active controller
  • MCRS setups typically contain robots from the same manufacturer
  • Fanuc and Motoman robots are currently supported.
  1. From the Programming section of the action bar, click New Device Task .
  2. In the work area, select the device that the new task will be assigned to.

    The Create Task as Service dialog box appears.
  3. From the Create Task as Service dialog box, you can:
    • Enter a Task Name for the new task, or use the default name provided.
    • Select Create Task as Service to create a task that is not local to the selected resource and can be called in the organizational resource.
    • Select Select Motion Groups to expand the dialog box and view a list of all possible motion groups under the controller that can be assigned to the task.
      Note: If only a single motion group exists, this feature does not appear.

      Motion groups can be assigned or unassigned by selecting the Assigned cell for each respective motion group in the list.

      Assigned motion groups can be re-ordered by selecting a motion group and using Move up or Move down to move it to the desired location.

      Note: Move up and Move down have no effect on unassigned motion groups.

      The first motion group in the list is the primary motion group (leader). The remaining motion groups are secondary (follower).

      The Task column lists the tasks for the motion groups. You can select existing tasks for each of the motion groups. Tasks for assigned motion groups are then used to create a single task.

      Tasks that manage multiple motion groups can be authored using teach.

  4. Click Create Task to create the task.
    The task appears in the Behavior panel of the browser.
  5. Click Teach to open the Teach panel.
    Teach opens the new task, and the context toolbar appears.
  6. Select Insert an MCRS operation from the context toolbar.
    A new MCRS operation appears under the task in the Teach panel.
  7. You can now define an activity for each motion group under the current MCRS operation (robot motion, arc activity, spot activity, etc.)

    The new activities appear under the current MCRS operation.



    Each row under an MCRS operation represents a motion group managed by the task. Attributes for each activity are displayed in columns (Motion Group, Status, Type, Synchronization Mode, etc.).

  8. Double-click an MCRS operation in the Teach panel to access its Sequence dialog box.
    The Sequence dialog box appears.
  9. From the Sequence dialog box, you can:
    • Edit the name of the operation
    • Select a Synchonization mode, where:
      • Independent defines a motion relationship between robots or motion groups of a Robot running with no motion cooperation (synchronization and/or coordination) amongst them.
      • Synchronized defines a motion cooperation relationship between robots or motion groups of a robot that is start and stop (and accelerate/decelerate) synchronized.
      • Coordinated defines a motion cooperation relationship between robots or motion groups of a robot where the follower’s motion is planned and executed relative to a moving coordinate frame moved by the leader.
      • SyncCoordinated defines a motion cooperation relationship between robots or motion groups of a robot that is both Synchronized and Coordinated.
    • View a list of the current motion groups. Double-clicking a motion group in the list displays a Motion Activity dialog box that allows you to edit its properties.