Skip to content

Move to current ros2_control launching and controller#1

Closed
AdamPettinger wants to merge 2 commits intosjahr:pr_add_servo_solverfrom
AdamPettinger:pr-servo_as_local_planner
Closed

Move to current ros2_control launching and controller#1
AdamPettinger wants to merge 2 commits intosjahr:pr_add_servo_solverfrom
AdamPettinger:pr-servo_as_local_planner

Conversation

@AdamPettinger
Copy link
Copy Markdown

Description

A small one, just launches the panda controller like the rest of the MoveIt demos and tutorials do. This involved switching the output from Servo.

I also played around a little bit with the Servo collision parameters - making the collision checking run faster and letting it get closer to objects before it considered a collision dangerous. I think (?) it had a little improvement on using Servo for the local planner, let me know what you think.

One note, now the demo_controller.yaml config file is very close to the one in the Panda moveit config package that the other demos use, so unless you really want that 500 hz rate, maybe switch the launch files to point to the other file and delete this one?

type: joint_trajectory_controller/JointTrajectoryController
joint_state_controller:
type: joint_state_controller/JointStateController
panda_joint_group_position_controller:
Copy link
Copy Markdown
Owner

@sjahr sjahr Jun 7, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AdamPettinger Thanks for the PR, I will get these changes merged. One question: Why did you remove this controller config? I've included it to show that both interfaces can be supported (kind of similar to moveit_servo)

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, sorry I missed that point. I was copying the servo and moveit_cpp demos since an update to ros2_control launching (looks like it happened after you started this work), see the current servo launch files. I would be more than happy to put it back and have both interfaces available

@sjahr
Copy link
Copy Markdown
Owner

sjahr commented Jun 7, 2021

I also played around a little bit with the Servo collision parameters - making the collision checking run faster and letting it get closer to objects before it considered a collision dangerous. I think (?) it had a little improvement on using Servo for the local planner, let me know what you think.

Yes, that sounds reasonable, I think it is useful when the robot moves slower near potential collision objects but it should not stop too quickly. Is it possible to configure this behavior with the currently existing parameters? (Decelerate early but slower in terms of the degree of deceleration)

One note, now the demo_controller.yaml config file is very close to the one in the Panda moveit config package that the other demos use, so unless you really want that 500 Hz rate, maybe switch the launch files to point to the other file and delete this one?

I've experienced jerky simulated motions and thought it is related to the controller frequency. Did the demo_controller.yaml file worked for you?

@AdamPettinger
Copy link
Copy Markdown
Author

Is it possible to configure this behavior with the currently existing parameters? (Decelerate early but slower in terms of the degree of deceleration)

Unfortunately, no. I think the best way to handle this might be to leave Servo collision checking enabled (but very tight bounds), and then do some other collision checking in the local planner that triggers a global re-plan with a larger threshold (so we never get to Servo collision handling hopefully)

Did the demo_controller.yaml file worked for you?

It did, not too jerky. The annoying thing is the Servo slowing way down near collision and making the local planner take a long time to get away from an object

sjahr pushed a commit that referenced this pull request Nov 26, 2021
sjahr pushed a commit that referenced this pull request Nov 30, 2021
Refactor Global and Local Planner Components into NodeClasses

Add a simple launch test (#1)

Try to fix plugin export; add helpful debug when stuck

Error if global planning fails

READY and AWAIT_TRAJ states are redundant

Lock the planning scene as briefly as possible

Specify joint group when checking waypoint distance

Implement a reset() function in the local planner

Detect when the local planner gets stuck
sjahr pushed a commit that referenced this pull request Dec 3, 2021
Refactor Global and Local Planner Components into NodeClasses

Add a simple launch test (#1)

Try to fix plugin export; add helpful debug when stuck

Error if global planning fails

READY and AWAIT_TRAJ states are redundant

Lock the planning scene as briefly as possible

Specify joint group when checking waypoint distance

Implement a reset() function in the local planner

Detect when the local planner gets stuck
AndyZe pushed a commit that referenced this pull request Dec 6, 2021
Refactor Global and Local Planner Components into NodeClasses

Add a simple launch test (#1)

Try to fix plugin export; add helpful debug when stuck

Error if global planning fails

READY and AWAIT_TRAJ states are redundant

Lock the planning scene as briefly as possible

Specify joint group when checking waypoint distance

Implement a reset() function in the local planner

Detect when the local planner gets stuck
sjahr pushed a commit that referenced this pull request Apr 5, 2022
Refactor Global and Local Planner Components into NodeClasses

Add a simple launch test (#1)

Try to fix plugin export; add helpful debug when stuck

Error if global planning fails

READY and AWAIT_TRAJ states are redundant

Lock the planning scene as briefly as possible

Specify joint group when checking waypoint distance

Implement a reset() function in the local planner

Detect when the local planner gets stuck
@sjahr
Copy link
Copy Markdown
Owner

sjahr commented Aug 24, 2022

Closed this PR since it got too stale

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants