Open annanya-tamu opened 2 weeks ago
I think it should work fine for your case, we have videos / users with mecanum and powered caster omnidirectional robots that are doing this fine today :-)
Hi Steve,
Thanks for sharing the video! I should have been a little more specific, as I am looking to control a legged robot like this. In this video, I have set use_external_detection_pose
as false
, but wanted to share the type of robot I am working on.
When I set use_external_detection_pose
to true
, the robot seems to make adjustments to itself based on the front left camera (where it's getting the transform to the fiducial from) and the rest of the body "sways" and doesn't seem to align itself completely perpendicular to the fiducial when docking. Ideally, I would like to have it's entire body stay perpendicular when docking just like it does when undocking. I should mention that the "body" frame is located in the middle of the robot and there exists a "rear" and "front" frame as well. Do you have any suggestions to the current param file setup to achieve this?
docking_server:
ros__parameters:
controller_frequency: 50.0
initial_perception_timeout: 5.0
wait_charge_timeout: 1.0
dock_approach_timeout: 60.0
undock_linear_tolerance: 1.0
undock_angular_tolerance: 0.1
max_retries: 3
base_frame: "body"
fixed_frame: "odom"
dock_backwards: false
dock_prestaging_tolerance: 0.5 #changed from 0.5
# Types of docks
dock_plugins: ['dog_dock']
marsupial_ghost_dock:
plugin: 'opennav_docking::SimpleChargingDock'
docking_threshold: 0.25
staging_x_offset: -2.0
use_external_detection_pose: true
use_battery_status: false
use_stall_detection: false
external_detection_timeout: 1.0
external_detection_translation_x: -0.18
external_detection_translation_y: 0.0
external_detection_rotation_roll: -1.5708
external_detection_rotation_pitch: -1.5708
external_detection_rotation_yaw: 3.1415
filter_coef: 0.1
# Dock instances
docks: ['main_dock']
main_dock:
type: 'dog_dock'
frame: odom
pose: [0.0, 0.0, 0.0]
controller:
k_phi: 2.0
k_delta: 2.0
v_linear_min: 0.15
v_linear_max: 0.15
v_angular_max: 0.75
Hello,
I noticed that the controller (graceful controller) that is currently being used is for non-holonomic robots. I was wondering if there were any suggestions on how to tune the parameters to set it up as close as possible to a holonomic robot? Or if there is any other workaround to this.
Thanks!