Git Product home page Git Product logo

teb_local_planner_tutorials's People

Contributors

croesmann avatar doisyg avatar franzalbers avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

teb_local_planner_tutorials's Issues

Can't install package via apt-get

Hi if I try to install the package via sudo apt-get install ros-kinetic-teb-local-planner-tutorials I get this error:
http://packages.ros.org/ros/ubuntu xenial/main amd64 ros-kinetic-teb-local-planner-tutorials amd64 0.2.2-0xenial-20190320-214757-0800
404 Not Found [IP: 64.50.233.100 80]

Installing by it from source worked with no problem.

move_base crash when using teb_local_planner

I'm trying to run one of your tutorial examples for a carlike robot however I am encountering this error message below. I am using the same config files as in the tutorial for the carlike robot. Any ideas what's wrong?

ROS Distro: Kinetic

ERROR

NODES
  /
    amcl (amcl/amcl)
    map_server (map_server/map_server)
    move_base (move_base/move_base)
    robot_state_publisher (robot_state_publisher/robot_state_publisher)
    rviz (rviz/rviz)

ROS_MASTER_URI=http://192.168.0.15:11311

process[map_server-1]: started with pid [12123]
process[amcl-2]: started with pid [12124]
[ INFO] [1596022923.105448960]: Loading map from image "/home/nvidia/racecar-ws/src/racecar_nav/racecar_control/maps/office_corridor.pgm"
process[robot_state_publisher-3]: started with pid [12132]
process[rviz-4]: started with pid [12153]
process[move_base-5]: started with pid [12174]
[ INFO] [1596022923.188501803]: Read a 1024 X 1024 map @ 0.050 m/cell
[ INFO] [1596022923.497155113]: Subscribed to map topic.
[ INFO] [1596022923.679318227]: Received a 1024 X 1024 map @ 0.050 m/pix

[ INFO] [1596022923.800350587]: Initializing likelihood field model; this can take some time on large maps...
[ INFO] [1596022923.935969236]: Done initializing likelihood field model.
terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
[move_base-5] process has died [pid 12174, exit code -6, cmd /home/nvidia/racecar-ws/devel/lib/move_base/move_base __name:=move_base __log:=/home/nvidia/.ros/log/be4eac8a-d18a-11ea-bbda-00044ba84f8d/move_base-5.log].
log file: /home/nvidia/.ros/log/be4eac8a-d18a-11ea-bbda-00044ba84f8d/move_base-5*.log

move_base-5.log

^[[33m[ WARN] [1596022923.970113586]: global_costmap: Pre-Hydro parameter "static_map" unused since "plugins" is provided^[[0m
  1 ^[[33m[ WARN] [1596022923.971636866]: global_costmap: Pre-Hydro parameter "map_type" unused since "plugins" is provided^[[0m
  2 ^[[0m[ INFO] [1596022923.973848502]: global_costmap: Using plugin "static_layer"^[[0m
  3 ^[[0m[ INFO] [1596022923.997815503]: Requesting the map...^[[0m
  4 ^[[0m[ INFO] [1596022924.207625435]: Resizing costmap to 1024 X 1024 at 0.050000 m/pix^[[0m
  5 ^[[0m[ INFO] [1596022924.306135233]: Received a 1024 X 1024 map at 0.050000 m/pix^[[0m
  6 ^[[0m[ INFO] [1596022924.306185711]: Subscribing to updates^[[0m
  7 ^[[0m[ INFO] [1596022924.327088735]: global_costmap: Using plugin "obstacle_layer"^[[0m
  8 ^[[0m[ INFO] [1596022924.341171882]:     Subscribed to Topics: laser_scan_sensor^[[0m
  9 ^[[0m[ INFO] [1596022924.429135753]: global_costmap: Using plugin "inflation_layer"^[[0m
 10 ^[[33m[ WARN] [1596022924.549366610]: local_costmap: Pre-Hydro parameter "static_map" unused since "plugins" is provided^[[0m
 11 ^[[33m[ WARN] [1596022924.550454065]: local_costmap: Pre-Hydro parameter "map_type" unused since "plugins" is provided^[[0m
 12 ^[[0m[ INFO] [1596022924.552724786]: local_costmap: Using plugin "static_layer"^[[0m
 13 ^[[0m[ INFO] [1596022924.565805623]: Requesting the map...^[[0m
 14 ^[[0m[ INFO] [1596022924.571638651]: Resizing static layer to 1024 X 1024 at 0.050000 m/pix^[[0m
 15 ^[[0m[ INFO] [1596022924.670827766]: Received a 1024 X 1024 map at 0.050000 m/pix^[[0m
 16 ^[[0m[ INFO] [1596022924.680981053]: local_costmap: Using plugin "obstacle_layer"^[[0m
 17 ^[[0m[ INFO] [1596022924.691879528]:     Subscribed to Topics: laser_scan_sensor^[[0m
 18 ^[[0m[ INFO] [1596022924.827972487]: Created local_planner teb_local_planner/TebLocalPlannerROS^[[0m
 19 ^[[0m[ INFO] [1596022925.050979533]: Footprint model 'line' (line_start: [0,0]m, line_end: [0.4,0]m) loaded for trajectory optimization.^[[0m
 20 ^[[0m[ INFO] [1596022925.051124092]: Parallel planning in distinctive topologies enabled.^[[0m
 21 ^[[0m[ INFO] [1596022925.051198965]: No costmap conversion plugin specified. All occupied costmap cells are treaten as point obstacles.^[[0m

failed to lookup transform: "base_laser_link" passed to lookupTransform argument target_frame does not exist.

Hi, i try to get the laser raw data and transform it into map coordinates.
So my thought is to get the tf relationship between laser and map. First, I launch the robot_diff_drive.launch in tutorials. I see the ROBOT->TF->TREE in RVIZ, it shows the map -> odom -> base_footprint -> base_link -> base_laser_link.
Have i must to get all the tfs in the tree when i transform laser data into map coordinates?
When i get the tf, it show error that:
[ WARN] [1559374574.328688493, 2885.400000000]: failed to lookup transform: "base_laser_link" passed to lookupTransform argument target_frame does not exist.

Main function of my source code is:
int main(int argc, char **argv) { ros::init(argc, argv, "demo"); ros::NodeHandle nh; ros::Rate loop_rate(20); while (ros::ok()) { ros::spinOnce(); loop_rate.sleep(); tf2_ros::Buffer tfBuffer; try { geometry_msgs::TransformStamped transform = tfBuffer.lookupTransform("base_laser_link", "base_link", ros::Time(0)); } catch(tf2::LookupException& lE){ ROS_WARN("failed to lookup transform: %s", lE.what()); } } return 0; }
I enter the cmd
"rostopic echo /tf"
in terminal it show that:
`

---

transforms:

header: 
  seq: 0
  stamp: 
    secs: 2273
    nsecs: 400000000
  frame_id: "map"
child_frame_id: "odom"
transform: 
  translation: 
    x: 2.10539937296
    y: 2.01924054354
    z: 0.0
  rotation: 
    x: -0.0
    y: -0.0
    z: 0.0097697207016
    w: 0.99995227514

transforms:

header: 
  seq: 0
  stamp: 
    secs: 2272
    nsecs: 400000000
  frame_id: "base_link"
child_frame_id: "base_laser_link"
transform: 
  translation: 
    x: -0.1
    y: 0.0
    z: 0.29
  rotation: 
    x: 0.0
    y: 0.0
    z: 0.0
    w: 1.0

transforms:

header: 
  seq: 0
  stamp: 
    secs: 2272
    nsecs: 400000000
  frame_id: "base_footprint"
child_frame_id: "base_link"
transform: 
  translation: 
    x: 0.0
    y: 0.0
    z: 0.0
  rotation: 
    x: 0.0
    y: 0.0
    z: 0.0
    w: 1.0

transforms:

header: 
  seq: 0
  stamp: 
    secs: 2272
    nsecs: 400000000
  frame_id: "odom"
child_frame_id: "base_footprint"
transform: 
  translation: 
    x: 0.0
    y: 0.0
    z: 0.0
  rotation: 
    x: 0.0
    y: 0.0
    z: 0.0
    w: 1.0

`

And i run the cmd "rosrun tf tf_echo base_laser_link base_link" ,the result is :
`
sph@sph-ThinkPad-W530:~$ rosrun tf tf_echo base_laser_link base_link
At time 5266.900

  • Translation: [0.100, 0.000, -0.290]
  • Rotation: in Quaternion [0.000, 0.000, 0.000, 1.000]
    in RPY (radian) [0.000, -0.000, 0.000]
    in RPY (degree) [0.000, -0.000, 0.000]
    At time 5266.900
  • Translation: [0.100, 0.000, -0.290]
  • Rotation: in Quaternion [0.000, 0.000, 0.000, 1.000]
    in RPY (radian) [0.000, -0.000, 0.000]
    in RPY (degree) [0.000, -0.000, 0.000]
    At time 5267.900
  • Translation: [0.100, 0.000, -0.290]
  • Rotation: in Quaternion [0.000, 0.000, 0.000, 1.000]
    in RPY (radian) [0.000, -0.000, 0.000]
    in RPY (degree) [0.000, -0.000, 0.000]
    At time 5268.900
  • Translation: [0.100, 0.000, -0.290]
  • Rotation: in Quaternion [0.000, 0.000, 0.000, 1.000]
    in RPY (radian) [0.000, -0.000, 0.000]
    in RPY (degree) [0.000, -0.000, 0.000]
    At time 5269.900
  • Translation: [0.100, 0.000, -0.290]
  • Rotation: in Quaternion [0.000, 0.000, 0.000, 1.000]
    in RPY (radian) [0.000, -0.000, 0.000]
    in RPY (degree) [0.000, -0.000, 0.000]
    `

Can someone explain why tf have the frame_id but in C++ code it can't detect the frame_id?
Do i make mistake or error setting?

Error when run visualize_velocity_profile.py

When i run
rosrun teb_local_planner_tutorials visualize_velocity_profile.py
I got some errors
Traceback (most recent call last): File "/home/cjt/turtlebot_ws/src/teb_local_planner_tutorials/scripts/visualize_velocity_profile.py", line 9, in <module> from teb_local_planner.msg import FeedbackMsg, TrajectoryMsg, TrajectoryPointMsg ImportError: No module named teb_local_planner.msg
It is not supposed to happen.Can anyone tell me how to solve this?

Problems when run robot_diff_drive_in_stage_costmap_conversion.launch

@rst-buildfarm @limhoff
When run the robot_diff_drive_in_stage_costmap_conversion.launch by:
roslaunch teb_local_planner_tutorials robot_diff_drive_in_stage_costmap_conversion.launch
There always has the following error happened:

terminate called after throwing an instance of boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::lock_error> >
  what():  boost: mutex lock failed in pthread_mutex_lock: Invalid argument

[move_base-2] process has died [pid 29028, exit code -6, cmd /opt/ros/indigo/lib/move_base/move_base __name:=move_base __log:=/home/exbot/.ros/log/8d2784be-d612-11e6-82d2-000c29153a40/move_base-2.log].

Have this error appeared when you test above launch file, and how to solve those problems?

Noetic release

Can this package be released for Noetic?

teb_local_planner already exists in Noetic, so this would be a helpful addition.

Is there anything blocking the release that I can help with?

carlike model issue

Hi,

I am unable to make turns with TEB local planner with a car like model. The robot doesnt turn and gets stuck. I have a turning radius of 3.7m. Please let me know if I have to change any particular parameter.

how to know if launch finished?

I use the cmd "roslaunch teb_local_planner_tutorials robot_diff_drive_in_stage.launch" to launch the planner. Before i don't need to know when the launch is finished.Now i have to detect when the launch finished.But i dont know if ros have some related function or cmd(any suggestion?).
My current thinking is to detect the message from launch,such as ROS_INFO"Loading map from image "/home/sph/catkin_ws/src/teb_local_planner_tutorials/maps/maze.png" after launch the .launch file., to jugg the launch is finished(I not sure the thinking is right?).
But i still dont understand where it come from and why it show in terminal.Can give some suggestion or am I do error setting?
The ROS_INFO list after "roslaunch teb_local_planner_tutorials robot_diff_drive_in_stage.launch" is :
`
[ INFO] [1559179186.040359834]: Loading map from image "/home/sph/catkin_ws/src/teb_local_planner_tutorials/maps/maze.png"
[ INFO] [1559179186.288335915]: Subscribed to map topic.
[ INFO] [1559179186.689422877, 0.400000000]: Read a 200 X 200 map @ 0.050 m/cell
[ INFO] [1559179186.895850372, 0.600000000]: Received a 200 X 200 map @ 0.050 m/pix

[ WARN] [1559179186.895892739, 0.600000000]: Frame_id of map received:'/map' doesn't match global_frame_id:'map'. This could cause issues with reading published topics
[ INFO] [1559179186.907754576, 0.600000000]: Initializing likelihood field model; this can take some time on large maps...
[ INFO] [1559179186.918357768, 0.600000000]: Done initializing likelihood field model.
[ INFO] [1559179187.963063646, 1.700000000]: Using plugin "static_layer"
[ INFO] [1559179187.975082141, 1.700000000]: Requesting the map...
[ INFO] [1559179188.155809907, 1.900000000]: Resizing costmap to 200 X 200 at 0.050000 m/pix
[ INFO] [1559179188.256951645, 2.000000000]: Received a 200 X 200 map at 0.050000 m/pix
[ INFO] [1559179188.269821289, 2.000000000]: Using plugin "obstacle_layer"
[ INFO] [1559179188.273856818, 2.000000000]: Subscribed to Topics: laser_scan_sensor
[ INFO] [1559179188.321006716, 2.000000000]: Using plugin "inflation_layer"
[ INFO] [1559179188.412425890, 2.100000000]: Using plugin "static_layer"
[ INFO] [1559179188.419119554, 2.100000000]: Requesting the map...
[ INFO] [1559179188.423186303, 2.100000000]: Resizing static layer to 200 X 200 at 0.050000 m/pix
[ INFO] [1559179188.457461930, 2.200000000]: Received a 200 X 200 map at 0.050000 m/pix
[ INFO] [1559179188.464019282, 2.200000000]: Using plugin "obstacle_layer"
[ INFO] [1559179188.467258318, 2.200000000]: Subscribed to Topics: laser_scan_sensor
[ INFO] [1559179188.540650205, 2.200000000]: Created local_planner teb_local_planner/TebLocalPlannerROS
[ INFO] [1559179188.663688364, 2.400000000]: Footprint model 'point' loaded for trajectory optimization.
[ INFO] [1559179188.663775597, 2.400000000]: Parallel planning in distinctive topologies enabled.
[ INFO] [1559179188.663818864, 2.400000000]: No costmap conversion plugin specified. All occupied costmap cells are treaten as point obstacles.
[ INFO] [1559179189.565810261, 3.300000000]: Recovery behavior will clear layer obstacles
[ INFO] [1559179189.574691111, 3.300000000]: Recovery behavior will clear layer obstacles
[ INFO] [1559179189.625343276, 3.300000000]: odom received!
`
So , if i get the msg "odom received!", i can recognize the launch is finished.Is that right?

Incorrect starting position and map frame in RViz

I'm using ROS Melodic and after building the modified version of ros_stage provided here, the tutorials on dynamic obstacles work fine except for the incorrect local cost map in RViz and the location of the robot.

I have attached the pictures, and I haven't been able to track down why the initialization is wrong. No such warning message shows up on the terminal. But it seems like the problem is with some TFs are missing in the dyn_obst_corridor_scenario example.

It'll be great if someone can help me out with setting this up properly!

vel_estimation

dyn_obst_rviz
rviz
stage_ros
tf

Error: Invalid argument "/robot_0/base_laser_link" passed to lookupTransform argument source_frame in tf2

My workspace: Ubuntu 18.04LTS + melodic

I checked out melodic-devel branch, and followed the following tutorials http://wiki.ros.org/teb_local_planner/Tutorials/Track%20and%20include%20dynamic%20obstacles%20via%20costmap_converter
I run Corridor example:

$ roslaunch teb_local_planner_tutorials dyn_obst_costmap_conversion.launch

The following error showed frequently:

TF Exception that should never happen for sensor frame: , cloud frame: /robot_0/base_laser_link, Invalid argument "/robot_0/base_laser_link" passed to lookupTransform argument source_frame in tf2 frame_ids cannot start with a '/' like:

In the result, visualization in RVIZ is false, and can not put '2D Nav Goal'.

Even, I don't use source code but install teb_local_planner_tutorials package:
$ sudo apt-get install ros-melodic-teb-local-planner-tutorials
I still had had this error

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.