ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

moveit_servo pose tracking only works with Panda arm?

asked 2023-05-03 13:38:46 -0500

mcevoyandy gravatar image

I'm trying to follow along with the pose tracking example provided in moveit_servo on a UR10e and am having difficulty in understanding how to use this with an arm other than the panda arm.

Looking at the example, moveit_servo::PoseTracking takes a moveit_servo::ServoParameters object as a parameter(ref). It seems this object can only be made with moveit_servo::ServoParameters::makeServoParameters(ref) which makes all the parameters constant...

So how do I go about using this example with UR10e? Do I need to recompile moveit_servo to change ServoParameters? There are multiple parameters in this struct hardcoded to "panda" and I'd rather not compile from source.

Thanks for the help.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2023-05-03 14:12:01 -0500

danzimmerman gravatar image

updated 2023-05-03 14:16:48 -0500

I believe it should get and validate relevant parameters from the node (see here). Those get()and validate() methods are defined further up in the file: here and here.

It seems like the parameter files passed to the node are hard-coded in the pose tracking example launch file here but I think those YAML files are what you need to change.

edit flag offensive delete link more

Comments

1

I have customized those two yamls and use them just fine following along with the other examples (twist and joint cmd ones), but the pose tracking example seems to overwrite my yaml values with the values hard-coded in the struct...

mcevoyandy gravatar image mcevoyandy  ( 2023-05-04 09:13:44 -0500 )edit

I'll try it out and reproduce if I get a chance. I had a Servo+UR pose tracking setup working on Humble, but now that I think about it, I probably didn't use the PoseTracking class because I wanted to be able to use it with an existing, running Servo node.

I think maybe I just followed along to implement similar functionality.

danzimmerman gravatar image danzimmerman  ( 2023-05-04 10:32:01 -0500 )edit
2

I got the stock pose tracking demo executable working with the UR robots here: https://github.com/danzimmerman/servo...

danzimmerman gravatar image danzimmerman  ( 2023-05-06 15:42:38 -0500 )edit
1

Thanks Dan!

The pose tracking functionality is likely to change after Humble. A Google Summer of Code project is working on improvements so the PID gains of PoseTracking aren't required. Instead it will work like this:

provide target pose --> get IK solution --> move toward that solution as quickly as possible (bounded by vel/accel limits)

AndyZe gravatar image AndyZe  ( 2023-05-07 09:05:49 -0500 )edit

Thanks Dan, I am still unable to get this working on actual hardware or the docker simulator but I don't have the errors regarding panda parameters anymore...

mcevoyandy gravatar image mcevoyandy  ( 2023-05-08 18:30:12 -0500 )edit

I was working on adding the UR robot driver launch to try getting the demo executable to work with URSim as an option in addition to fake hardware. However, the pose target update loop here doesn't run for very long, so I didn't think I could get External Control running on the "robot" before the demo node terminated.

I guess I could skip launching the ROS 2 Control nodes for real hardware/URSim, assuming that the driver, "robot" and ROS2 controller are all already up and running and ready to respond to joint position commands.

danzimmerman gravatar image danzimmerman  ( 2023-05-08 18:49:23 -0500 )edit
1

Andy M, I updated the repo so that if you pass use_fake_hardware:=falseit should work with a robot driver that's already running and connected. Tested with URSim here: https://youtu.be/qYzdJA60K7w

I loaded forward_position_controller and had the External Control program already running in URSim so when I ran launched the example launch file from my repo, the robot was ready to accept commands from the pose tracker.

danzimmerman gravatar image danzimmerman  ( 2023-05-08 21:24:45 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2023-05-03 13:38:46 -0500

Seen: 101 times

Last updated: May 03 '23