2019-08-22 06:53:14 -0500 | marked best answer | set unknown_cost_value in costmap How can I set "unknown_cost_value" in costmap? In /map there are unknown value set to -1, but when /map is converted into costmap, unknow value is set to 0, like free space. I tried to set parameters in costmap_common_params.yaml but it doesn't works global_costmap:
global_frame: /map
robot_base_frame: /base_footprint
update_frequency: 4.0
publish_frequency: 4.0
static_map: true
static_layer: {enabled: true, lethal_cost_threshold: 100, track_unknown_space: true, unknown_cost_value: -1}
transform_tolerance: 0.5
Thanks |
2019-08-22 06:53:14 -0500 | received badge | ● Self-Learner
(source)
|
2018-01-30 17:42:51 -0500 | marked best answer | Teleop control not working in Turtlebot simulator I following this tutorial, http://
wiki.ros.org/turtlebot_simulator/Tutorials/hydro/Explore%20the%20Gazebo%20world
but teleop not working. I'm using Gazebo 2.1.0 and ROS Hydro. I used $roslaunch turtlebot_teleop keyboard_teleop.launch AND $roslaunch kobuki_keyop keyop.launch and there isn't error message. I have no idea why it doesn't work.
I'm not sure if they've started on different servers and are unable to communicate. |
2017-04-20 16:50:51 -0500 | marked best answer | Problem with multirobots navigation I'm trying to do a multirobots navigation in Gazebo simulator using two turtlebot.
I put the two turtlebot in Gazebo and I see in correct mode the robots in the environment with a correct transformation frame and topic. This is the transformation frame https://db.tt/4CqQcmEe and this is what I see with rqt_graph https://db.tt/UHNbe1Zb These are the videos that document the problem: move_Robot1.mp4 https://db.tt/EkmPTF75 move_Robot2.mp4 https://db.tt/YyXJpyiG The video is very slow because of simulation that slow down the pc. I run Rviz and I see the correct environment, RobotModel and the correct topic in Displays.
In the first video (move_Robot1.mp4) I set a robot1/mose_base_simple/goal. In Rviz I see that Robot1 navigation is correct and it reach the goal position, but Robot2 has the same rotation than Robot1, even if it stays in place. Differently in Gazebo Robot2 stops, also in rotation. What I see in Rviz is not what I see in Gazebo.
Another problem: as you can see in the second video, when I set a robot2/move_base_simple/goal in Rviz I see Robot2 stops, while in Gazebo Robot2 rotates continuosly, but it doesn't proceed back and forth. cmd_vel topics seems correct and I supposed that the problem is in navigation driver. But I hope in some help. This is my .launch file: <launch>
<arg name="base" value="$(optenv TURTLEBOT_BASE kobuki)"/> <!-- create, roomba -->
<arg name="battery" value="$(optenv TURTLEBOT_BATTERY /proc/acpi/battery/BAT0)"/> <!-- /proc/acpi/battery/BAT0 -->
<arg name="stacks" value="$(optenv TURTLEBOT_STACKS hexagons)"/> <!-- circles, hexagons -->
<arg name="3d_sensor" value="$(optenv TURTLEBOT_3D_SENSOR kinect)"/> <!-- kinect, asus_xtion_pro -->
<param name="/use_sim_time" value="true" />
<!-- start world -->
<node name="gazebo" pkg="gazebo_ros" type="gzserver" args="$(find tesi_gazebo)/worlds/playground.world" respawn="false" output="screen" />
<!-- start gui -->
<node name="gazebo_gui" pkg="gazebo_ros" type="gzclient" respawn="false" output="screen"/>
<!-- BEGIN ROBOT 1-->
<group ns="robot1">
<param name="tf_prefix" value="robot1" />
<arg name="robot_name" default="robot1" />
<include file="$(find tesi_gazebo)/launch/includes/kobuki.launch.xml">
<arg name="base" value="$(arg base)"/>
<arg name="stacks" value="$(arg stacks)"/>
<arg name="3d_sensor" value="$(arg 3d_sensor)"/>
<arg name="init_pose" value="-x 1 -y 0 -z 0" />
<arg name="robot_name" value="robot1" />
</include>
<node pkg="robot_state_publisher" type="robot_state_publisher" name="robot_state_publisher">
<param name="publish_frequency" type="double" value="30.0" />
<param name="tf_prefix" type="string" value="robot1" />
</node>
<!-- Fake laser -->
<node pkg="nodelet" type="nodelet" name="$(arg robot_name)_laserscan_nodelet_manager" args="manager"/>
<node pkg="nodelet" type="nodelet" name="depthimage_to_laserscan"
args="load depthimage_to_laserscan/DepthImageToLaserScanNodelet $(arg robot_name)_laserscan_nodelet_manager">
<param name="scan_height" value="10"/>
<param name="output_frame_id" value="/$(arg robot_name)/camera_depth_frame"/>
<param name="range_min" value="0.45"/>
<remap from="image" to="/$(arg robot_name)/camera/depth/image_raw"/>
<remap from="scan" to="/$(arg robot_name)/scan"/>
</node>
</group>
<!-- BEGIN ROBOT 2-->
<group ns="robot2">
<param name="tf_prefix" value="robot2" />
<arg name="robot_name" default="robot2" />
<include file="$(find tesi_gazebo)/launch/includes/kobuki.launch.xml">
<arg name="base" value="$(arg base)"/>
<arg name="stacks" value="$(arg stacks)"/>
<arg name="3d_sensor" value="$(arg 3d_sensor)"/>
<arg ... (more) |
2017-03-22 16:56:26 -0500 | marked best answer | Rotates rolling_window with the robot Hi, I've a doubt. Can I use a rolling window in local_costmap that rotates with the robot? Because I'd like use local_costmap rectangular oriented with the robot. I tried to set local_costmap/global_frame: /base_link. Local_costmap rotates with the robot, but base_local_planner has some problems to navigate in correct mode. Thanks |
2017-01-04 14:00:39 -0500 | received badge | ● Famous Question
(source)
|
2016-04-14 11:31:30 -0500 | marked best answer | Problem with catkin depends When I compile my package with catkin_make I see this error: prima@prima-UX32VD:~/catkin_ws$ catkin_make
Base path: /home/prima/catkin_ws
Source space: /home/prima/catkin_ws/src
Build space: /home/prima/catkin_ws/build
Devel space: /home/prima/catkin_ws/devel
Install space: /home/prima/catkin_ws/install
####
#### Running command: "make cmake_check_build_system" in "/home/prima/catkin_ws/build"
####
-- Using CATKIN_DEVEL_PREFIX: /home/prima/catkin_ws/devel
-- Using CMAKE_PREFIX_PATH: /home/prima/catkin_ws/devel;/opt/ros/hydro
-- This workspace overlays: /home/prima/catkin_ws/devel;/opt/ros/hydro
-- Using PYTHON_EXECUTABLE: /usr/bin/python
-- Python version: 2.7
-- Using Debian Python package layout
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/prima/catkin_ws/build/test_results
-- Found gtest sources under '/usr/src/gtest': gtests will be built
-- catkin 0.5.86
-- BUILD_SHARED_LIBS is on
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ~~ traversing 1 packages in topological order:
-- ~~ - ompl_planner
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- +++ processing catkin package: 'ompl_planner'
-- ==> add_subdirectory(ompl_planner)
-- Using these message generators: gencpp;genlisp;genpy
CMake Error at /opt/ros/hydro/share/catkin/cmake/catkinConfig.cmake:72 (find_package):
Could not find a package configuration file provided by "ompl" with any of
the following names:
omplConfig.cmake
ompl-config.cmake
Add the installation prefix of "ompl" to CMAKE_PREFIX_PATH or set
"ompl_DIR" to a directory containing one of the above files. If "ompl"
provides a separate development package or SDK, be sure it has been
installed.
Call Stack (most recent call first):
ompl_planner/CMakeLists.txt:7 (find_package)
-- Configuring incomplete, errors occurred!
make: *** [cmake_check_build_system] Errore 1
Invoking "make cmake_check_build_system" failed
but in my ompl package in /opt/ros/hydro/share/ompl/ there is the correct ompl-config.cmake file. this is my CmakeLists.txt cmake_minimum_required(VERSION 2.8.3)
project(ompl_planner)
find_package(catkin REQUIRED COMPONENTS
roscpp
costmap_2d
geometry_msgs
nav_core
nav_msgs
pluginlib
tf
angles
ompl
)
catkin_package(
INCLUDE_DIRS include
LIBRARIES ompl_planner
CATKIN_DEPENDS roscpp nav_core pluginlib
)
include_directories(
include
${catkin_INCLUDE_DIRS}
)
add_library(ompl_planner
src/ompl_planner.cpp
)
install(TARGETS ompl_planner
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
install(DIRECTORY include/ompl_planner/
DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
)
install(FILES
bgp_plugin.xml
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
)
What can I do? |
2016-02-27 14:51:24 -0500 | marked best answer | Problem with new BaseGlobalPlanner plugin I tried to make a new BaseGlobalPlanner plugin for use with move_base.
In this Plugin I use ros-hydro-ompl package. After I've created .cpp and .h (that include ompl library) file, I've compiled with catkin_make and everything works! All the dependencies seem to be satisfied. But when I run plugin I show this error: [FATAL] [1398764927.385890076, 2.100000000]: Failed to create the ompl_planner_rrt/OMPLPlannerRRT planner, are you sure it is properly registered and that the containing library is built? Exception: Failed to load library /home/prima/catkin_ws/devel/lib//libompl_planner_rrt.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = /home/prima/catkin_ws/devel/lib//libompl_planner_rrt.so: undefined symbol: _ZTVN4ompl4base18CompoundStateSpaceE)
The name between PLUGINLIB_EXPORT_CLASS macro and XML file is correct! This is the macro in .cpp file PLUGINLIB_EXPORT_CLASS(ompl_planner_rrt::OMPLPlannerRRT, nav_core::BaseGlobalPlanner)
this is .xml file: <library path="lib/libompl_planner_rrt">
<class name="ompl_planner_rrt/OMPLPlannerRRT" type="ompl_planner_rrt::OMPLPlannerRRT" base_class_type="nav_core::BaseGlobalPlanner">
<description>
A implementation of RRT
</description>
</class>
</library>
The undefined symbol ompl4base18CompoundStateSpace is a ompl function (ompl::base::CompoundStateSpace). It seems that in runtime there aren't dependencies with ompl package. This is my CMakeLists.txt file: cmake_minimum_required(VERSION 2.8.3)
project(ompl_planner_rrt)
find_package(catkin REQUIRED COMPONENTS
roscpp
costmap_2d
geometry_msgs
nav_core
nav_msgs
pluginlib
tf
angles
)
find_package(
ompl
)
find_package(Boost REQUIRED COMPONENTS system thread)
catkin_package(
INCLUDE_DIRS include
LIBRARIES ompl_planner_rrt
CATKIN_DEPENDS roscpp nav_core pluginlib
DEPENDS system_lib
)
include_directories(
include
${catkin_INCLUDE_DIRS}
)
add_library(ompl_planner_rrt
src/ompl_planner_rrt.cpp
)
target_link_libraries(ompl_planner_rrt
${catkin_LIBRARIES}
${OMPL_LIBRARIES} #added on the advice of ahendrix
)
and package.xml: <?xml version="1.0"?>
<package>
<name>ompl_planner_rrt</name>
<version>0.0.0</version>
<description>The ompl_planner package</description>
<buildtool_depend>catkin</buildtool_depend>
<build_depend>roscpp</build_depend>
<build_depend>costmap_2d</build_depend>
<build_depend>geometry_msgs</build_depend>
<build_depend>nav_core</build_depend>
<build_depend>nav_msgs</build_depend>
<build_depend>pluginlib</build_depend>
<build_depend>tf</build_depend>
<build_depend>angles</build_depend>
<build_depend>eigen_conversions</build_depend>
<build_depend>boost</build_depend>
<run_depend>roscpp</run_depend>
<run_depend>costmap_2d</run_depend>
<run_depend>geometry_msgs</run_depend>
<run_depend>nav_core</run_depend>
<run_depend>nav_msgs</run_depend>
<run_depend>pluginlib</run_depend>
<run_depend>tf</run_depend>
<run_depend>angles</run_depend>
<run_depend>eigen_conversions</run_depend>
<run_depend>boost</run_depend>
<run_depend>ompl</run_depend>
<export>
<nav_core plugin="/home/prima/catkin_ws/src/ompl_planner_rrt/bgp_plugin.xml" />
</export>
</package>
When I show this: ldd '/home/prima/catkin_ws/devel/lib/libompl_planner_rrt.so'
I don't find libompl.so, I suppose this is the problem. Can anyone help me? Thanks |
2016-02-02 10:12:32 -0500 | marked best answer | Problem with turtlebot and costmap update I've a problem with turtlebot and costmap update. I use turtlebot with a Hokuyo URG-04LX laser. I'm not using kinect. I simulate turtlebot in gazebo with amcl_demo.launch in a know map. It always works!
Costmap is always update and if there is a dynamic obstacle, I can observe it in costmap (local and global). When obstacle there is no more there is no trace in costmap, because costmap is always in update. The problem there is in real turtlebot. I use the same configuration. I can observe dynamic obstacle, but when obstacle there is no more, I can still see his trace in costmap. I don't know why! This is my amcl_demo.launch <launch>
<node pkg="hokuyo_node" type="hokuyo_node" name="hokuyo_node">
</node>
<!-- static transformation between laser and base_link -->
<node pkg="tf" type="static_transform_publisher" name="laser_tf" args="0 0 0 0 0 0 base_link laser 100" />
<!-- Map server -->
<arg name="map_file" default="$(find ompl_planner_rrt)/config/map/corridor.yaml"/>
<node name="map_server" pkg="map_server" type="map_server" args="$(arg map_file)" />
<arg name="initial_pose_x" default="0.0"/>
<arg name="initial_pose_y" default="0.0"/>
<arg name="initial_pose_a" default="0.0"/>
<include file="$(find turtlebot_navigation)/launch/includes/amcl.launch.xml">
<arg name="initial_pose_x" value="$(arg initial_pose_x)"/>
<arg name="initial_pose_y" value="$(arg initial_pose_y)"/>
<arg name="initial_pose_a" value="$(arg initial_pose_a)"/>
</include>
<include file="$(find turtlebot_navigation)/launch/includes/move_base.launch.xml"/>
</launch>
costmap_common_params.yaml max_obstacle_height: 0.60 # assume something like an arm is mounted on top of the robot
obstacle_range: 2.5
raytrace_range: 3.0
robot_radius: 0.18
inflation_radius: 0.50
# voxel map configuration; z-voxels 0 are filled by bumpers and 1 by laser scan (kinect)
map_type: voxel
origin_z: 0.0
z_resolution: 0.2
z_voxels: 2
publish_voxel_map: false
observation_sources: scan bump
scan: {data_type: LaserScan, topic: scan, marking: true, clearing: true, min_obstacle_height: 0.25, max_obstacle_height: 0.35}
bump: {data_type: PointCloud2, topic: mobile_base/sensors/bumper_pointcloud, marking: true, clearing: false, min_obstacle_height: 0.0, max_obstacle_height: 0.15}
global_costmap_params.yaml global_costmap:
global_frame: /map
robot_base_frame: /base_footprint
update_frequency: 1.0
publish_frequency: 0.5
static_map: true
transform_tolerance: 0.5
local_costmap_params.yaml local_costmap:
global_frame: /map
robot_base_frame: /base_footprint
update_frequency: 5.0
publish_frequency: 2.0
static_map: false
rolling_window: true
width: 4.0
height: 4.0
resolution: 0.05
transform_tolerance: 0.5
move_base_params.yaml shutdown_costmaps: false
controller_frequency: 5.0
controller_patience: 3.0
planner_frequency: 1.0
planner_patience: 5.0
oscillation_timeout: 10.0
oscillation_distance: 0.2
thanks! |
2015-08-27 22:37:40 -0500 | received badge | ● Stellar Question
(source)
|
2015-07-16 13:54:17 -0500 | received badge | ● Notable Question
(source)
|
2015-06-14 18:00:15 -0500 | received badge | ● Famous Question
(source)
|
2015-05-19 03:49:36 -0500 | received badge | ● Great Question
(source)
|
2015-04-29 09:22:12 -0500 | received badge | ● Great Answer
(source)
|
2015-04-29 09:22:12 -0500 | received badge | ● Guru
(source)
|
2015-03-12 08:47:49 -0500 | marked best answer | Problem with Indigo and Gazebo 2.2 I have a problem with Gazebo 2.2. When I launch gazebo, I see this error :~$ gazebo
Gazebo multi-robot simulator, version 2.2.3
Copyright (C) 2012-2014 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
Msg Waiting for master
Gazebo multi-robot simulator, version 2.2.3
Copyright (C) 2012-2014 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
Msg Waiting for master
Msg Connected to gazebo master @ http://127.0.0.1:11345
Msg Publicized address: 192.168.1.152
Msg Connected to gazebo master @ http://127.0.0.1:11345
Msg Publicized address: 192.168.1.152
Warning [ModelDatabase.cc:334] Getting models from[http://gazebosim.org/models/]. This may take a few seconds.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Warning [gazebo.cc:215] Waited 1seconds for namespaces.
Error [gazebo.cc:220] Waited 11 seconds for namespaces. Giving up.
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Node.cc:90] No namespace found
Error [Param.cc:181] Unable to set value [1,0471975511965976] for key[horizontal_fov]
Error [Param.cc:181] Unable to set value [0,100000001] for key[near]
How Can I solve? Thanks |