Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Move_base with non-rotational robot

Hello,

I'm using move_base with a non-holonomic, non-rotational robot. Everything is working as it should but i have a big problem and it's that my robot can't make in-place rotations. It's a robot sphere as you can see in the following links:

https://www.youtube.com/watch?v=1DlGnla-klk

https://www.youtube.com/watch?v=XrpZtsQ1wac

I set the following base local planner parameters:

## Base local planner parameters. 
TrajectoryPlannerROS:
  acc_lim_x: 1.0
  acc_lim_y: 0.0
  acc_lim_theta: 0.1
  max_vel_x: 2.2
  min_vel_x: 0.55
  max_vel_theta: 0.2
  min_vel_theta: -0.2
  min_in_place_vel_theta: 0.0
  escape_vel: -0.55
  holonomic_robot: false
  yaw_goal_tolerance: 0.1
  xy_goal_tolerance: 5.0
  sim_granularity: 0.1
  angular_sim_granularity: 0.04
  vx_samples: 5
  vtheta_samples: 8
  meter_scoring: true
  pdist_scale: 0.6
  gdist_scale: 0.8
  occdist_scale: 0.01
  dwa: false
  global_frame_id: odom_combined
  oscillation_reset_dist: 0.0

Is there a way to set off the in-place rotations? The other thing is that every time the program send an in-place rotation into the /cmd_vel topic, it puts a value of 1.0 or -1.0 on the angular z as shown below

---
linear: 
  x: 0.0
  y: 0.0
  z: 0.0
angular: 
  x: 0.0
  y: 0.0
  z: -1.0
---

Why is it doing this if i have set the max_vel_theta to 0.2 and the min_vel_theta to -0.2?

I've tried changing the min_in_place_vel_theta from 0.0 to 0.5 to see if it takes it as the in-place rotational value but it keep showing me the same thing. Tried setting from true to false the dwa for small values of vel_theta and got the same thing.

Thanks for your time.

Salvador

Move_base with non-rotational robot

Hello,

I'm using move_base with a non-holonomic, non-rotational robot. Everything is working as it should but i have a big problem and it's that my robot can't make in-place rotations. It's a robot sphere as you can see in the following links:

https://www.youtube.com/watch?v=1DlGnla-klk

https://www.youtube.com/watch?v=XrpZtsQ1wac

I set the following base local planner parameters:

## Base local planner parameters. 
TrajectoryPlannerROS:
  acc_lim_x: 1.0
  acc_lim_y: 0.0
  acc_lim_theta: 0.1
  max_vel_x: 2.2
  min_vel_x: 0.55
  max_vel_theta: 0.2
  min_vel_theta: -0.2
  min_in_place_vel_theta: 0.0
  escape_vel: -0.55
  holonomic_robot: false
  yaw_goal_tolerance: 0.1
  xy_goal_tolerance: 5.0
  sim_granularity: 0.1
  angular_sim_granularity: 0.04
  vx_samples: 5
  vtheta_samples: 8
  meter_scoring: true
  pdist_scale: 0.6
  gdist_scale: 0.8
  occdist_scale: 0.01
  dwa: false
  global_frame_id: odom_combined
  oscillation_reset_dist: 0.0

Is there a way to set off the in-place rotations? The other thing is that every time the program send an in-place rotation into the /cmd_vel topic, it puts a value of 1.0 or -1.0 on the angular z as shown below

---
linear: 
  x: 0.0
  y: 0.0
  z: 0.0
angular: 
  x: 0.0
  y: 0.0
  z: -1.0
---

Why is it doing this if i have set the max_vel_theta to 0.2 and the min_vel_theta to -0.2?

Also, when passing short distancies to move form base_footprint it send commands to cmd_vel like the following:

---
linear: 
  x: 0.414027588531
  y: 0.0
  z: 0.0
angular: 
  x: 0.0
  y: 0.0
  z: 0.894736842105
---

being this unrelated to the values set in the base_local_planner_params.yaml where min_vel_x is 0.55 and max_vel_theta is 0.2.

I've tried changing the min_in_place_vel_theta from 0.0 to 0.5 to see if it takes it as the in-place rotational value but it keep showing me the same thing. Tried setting from true to false the dwa for small values of vel_theta and got the same thing.

If anyone have an answer to all of the questions or even a single one it'd be really good!. If you need some more information just ask. Thanks for your time.

Salvador