Skip to content

Set tool center point (TCP) cleared when external control enabled #783

@RoBeau

Description

@RoBeau

We are developing a mobile co-bot using a ur10e running along side a ros2 stack with moveit2. The majority of the time the arm controlled through moveit2 with the robot running the external control cap. However there are some situations when we need to send movel and set_tcp programs via the ur_script interface node.

Running with the docker simulation we are facing an issue when trying to alternate between external control with moveit2 and sending script commands the tcp is set back to zero. Steps to reproduce

  1. Publish set_scp(p[0, 0, 0.2, 0, 0, 0])
  2. Publish textmsg("TCP = , get_tcp_offset()) - Confirms tcp has been set
  3. Publish movel(...) - Movel respects tcp settings
  4. Play external control program
  5. Publish textmsg("TCP = , get_tcp_offset) - TCP set back to zero

We have also found that after sending any ur_script programs via the external control program goes from "running" -> "normal" and requires the ur_dashboard/play service to be called to re-enable external control. We suspect this is causing the default installation to be loaded even though the dashboard manual only indicates this should happen via the load service.

Additional information

We are sending each set_tcp and movel cmd as a defined program followed the program call.
Docker simulation showing firmware version 5.13.0
Building the ur_robot_driver from source using the humble branch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions