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

Ajusting Turtlebot Speed in Autonomous Navigation

asked 2015-04-07 18:16:55 -0500

Phelipe gravatar image

updated 2015-04-09 11:56:30 -0500

Hello!

I'm trying to change the turtlebot linear autonomous navigation speed according to a variable parameter without changing the route traced through Rviz, but i'm facing a problem. For the autonomous navigation i'm using the Amcl App as follow : here

Actually, my turtlebot speed should change when my external parameter changes, but the Amcl_demo navigation is publishing in the cmd_vel, and because of that it's not possible to publish the same type 'geometry_msgs::Twist base_cmd' to the teleop node or some other one responsible for the robot velocity. (I'd like to know the right one too)

Is it possible to change the max speed limit parameter from base_local_planner_params.yaml while my 'listener' is receiving data (in real time)? I'm not sure but I think it'll loads it once before the program starts =(

The amcl needs the velocity info to calculate the robot position in the 2D map, so publishing another speed over the amcl, excluding the fact it won't work, it'll make the robot lost in the map. Is that right?

I was thinking about publishing the robot speed from my 'listener' to amcl code, and this one (after the position calculus and stuff) sending the correct speed to turtlebot.

EDIT.: Once i need to change just the linear speed using the Twist, the way i'm looking for could be subscribing my node (publishing the speed through geometry_msgs/Twist type) instead of /navigation_velocity_smoother/raw_cmd_vel in the /move_base node?

The velocity_smoother.launch.xml :

<node pkg="nodelet" type="nodelet" name="navigation_velocity_smoother" args="load yocs_velocity_smoother/VelocitySmootherNodelet /mobile_base_nodelet_manager">

<rosparam file="$(find turtlebot_bringup)/param/defaults/smoother.yaml" command="load"/>

<remap from="navigation_velocity_smoother/smooth_cmd_vel" to="/cmd_vel_mux/input/navi"/>

<!-- Robot velocity feedbacks; use the default base configuration -->
<remap from="navigation_velocity_smoother/odometry" to="/odom"/>
<remap from="navigation_velocity_smoother/robot_cmd_vel" to="/mobile_base/commands/velocity"/>

</node> </launch>

How can I do that? Is there another way?

Thanks in Advance!

edit retag flag offensive close merge delete

Comments

Have you found a way to achieve this?

violator gravatar image violator  ( 2020-07-13 23:15:59 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2015-04-14 20:51:39 -0500

jihoonl gravatar image

you may want to check out rqt_reconfigure. move_base, cmd_vel_mux, navigation_smoother these packages support dynamic reconfiguration.

http://wiki.ros.org/rqt_reconfigure

edit flag offensive delete link more

Question Tools

3 followers

Stats

Asked: 2015-04-07 18:16:55 -0500

Seen: 2,200 times

Last updated: Apr 14 '15