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

Stefano Primatesta's profile - activity

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