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

jrcapriles's profile - activity

2016-06-20 06:35:49 -0500 received badge  Nice Question (source)
2016-01-11 06:03:26 -0500 received badge  Good Answer (source)
2015-08-31 21:16:14 -0500 marked best answer Compilation error ROS_PACKAGE_PATH in groovy

Hi all,

I recently installed groovy. I'm trying to rosmake my packages but I getting this error all the time:

[ rosmake ] All 19 linestutorial_package: 0.1 sec ] 
{-------------------------------------------------------------------------------
  mkdir -p bin
  cd build && cmake -Wdev -DCMAKE_TOOLCHAIN_FILE=/opt/ros/groovy/share/ros/core/rosbuild/rostoolchain.cmake  ..
  [rosbuild] Building package range_gazebo_plugin
  including user's config file: /opt/ros/groovy/share/ros/rosconfig.cmake
  -- USING OPTIMIZATION COMPILATION FLAGS: -mssse3 -mmmx 
  CMake Error at /opt/ros/groovy/share/ros/core/rosbuild/private.cmake:99 (message):
    [rosbuild] rospack found package "tutorial_package" at
    "/home/jose/ros-workspace/tutorial_package",
    but the current directory is
    "/home/jose/ros-workspace/tutorial_package".
    You should double-check your ROS_PACKAGE_PATH to ensure that packages are
    found in the correct precedence order.
  Call Stack (most recent call first):
    /opt/ros/groovy/share/ros/core/rosbuild/public.cmake:177 (_rosbuild_check_package_location)
    CMakeLists.txt:12 (rosbuild_init)


  -- Configuring incomplete, errors occurred!
-------------------------------------------------------------------------------}

My environment variables:

declare -x ROS_DISTRO="groovy"
declare -x ROS_ETC_DIR="/opt/ros/groovy/etc/ros"
declare -x ROS_LOG_DIR="/home/josecapriles/.ros/logs"
declare -x ROS_MASTER_URI="http://localhost:11311"
declare -x ROS_PACKAGE_PATH="/home/jose/ros-workspace:/opt/ros/groovy/share:/opt/ros/groovy/stacks"
declare -x ROS_ROOT="/opt/ros/groovy/share/ros"
declare -x ROS_WORKSPACE="/home/jose/ros-workspace"

I'm running ROS groovy on Ubuntu 12.04. Any idea what is missing in the environment configuration? or why rosmake complains about the ROS_PACKAGE_PATH?

2015-01-25 13:48:40 -0500 received badge  Notable Question (source)
2015-01-25 13:48:40 -0500 received badge  Famous Question (source)
2015-01-25 13:48:40 -0500 received badge  Popular Question (source)
2014-04-20 06:48:31 -0500 marked best answer How to create a diff file from gazebo development version

Hi everyone!

I downloaded the gazebo development version and I'm working on it. How can I create a diff file of all gazebo package (including the sourcecode) to see my changes and easily make a patch??

I downloaded the simulator gazebo from: svn co https://code.ros.org/svn/ros-pkg/stacks/simulator_gazebo/branches/simulator_gazebo-1.2 ~/simulator_gazebo/

Added the new simulator gazebo path to ROS_PACKAGE_PATH and build. It takes like 700 seconds and then all is OK, in build folder is all the source code.

If I do a "svn st" all the folders are with a "?" If I do a svn info it returns:

Path: . URL: https://code.ros.org/svn/ros-pkg/stacks/simulator_gazebo/branches/simulator_gazebo-1.2/gazebo Repository Root: https://code.ros.org/svn/ros-pkg Repository UUID: eb33c2ac-9c88-4c90-87e0-44a10359b0c3 Revision: 38270
Node Kind: directory Schedule: normal
Last Changed Author: hsu
Last Changed Rev: 37935
Last Changed Date: 2011-09-16 22:44:55 +0200 (Fri, 16 Sep 2011)

And if I do a svn diff it don't return anything (even if a made some changes in the source code). What am I doing wrong? or what is the proper way of do it?

2014-04-20 06:48:14 -0500 marked best answer rosmake --pre-clean without svn update

Hi,

I was working with "simulator_gazebo" developers version adding some sensors, now that i'm done and want to integrate my package into my repository, it should be easy but it isn't! The problems is when i do a "make clean" or a "rosmake --pre-clean" (fresh make) the package is pre-configured to download the package from his original repository and after that all my work is lost because it overwrite my code with the original version....

Where is the svn configuration of the package or how can I avoid that the package is svn updated doing make clean or rosmake --pre-clean??

I see several files that specify a SVN_URL, SVN_PACKAGE, SVN_PATCH... but i don't know which or how i should modify it.

Thanks

2014-04-20 06:48:13 -0500 marked best answer Moving packages to different directory

Hi all,

I was working on a package in a folder (~/workspace/Mypackage) the package was originally at this place when i came. I work on it and now that is ready I want to move it to (~/svn/stacks/Mypackage) this in order to update the svn repository with my modifications.

I copy the entire folder, delete the CMakeCache.txt ("find -name CMakeCache.txt -delete") in this folder. Update the address of myPackage at .bashrc, then i do rosmake and it didn't complain. I run my package and it works fine. But this happen while mi original package is also in the original place, i mean, while i have the 2 copies of my package (one in svn folder and the other in workspace folder) all work fine, i can run it without problems (if i do "roscd myPackage" it gets me to the package at svn folder and if i do "env | grep ROS" it returns

ROS_ROOT=/opt/ros/diamondback/ros
ROS_PACKAGE_PATH=/home/jose/svn/stacks:/opt/ros/diamondback/stacks
ROS_MASTER_URI=http://localhost:11311

So ROS only know the package at svn folder...

When i delete the original package (the one at workspace) and then re-run my package it fails. If i rebuild it, it say that it dind't find some files (at the build folder in workspace location)

How i should do the transition between my packages? and why it complain for some files (the folders are exactly the same) how i should rebuild in order to generate all the files needed in the new location?

UPDATE: The error that return the package when i move it to a different location is that it doesn't find the files included "No such file or directory" Thanks

2014-04-20 06:48:13 -0500 marked best answer irBeams inside IRSensor

I'm working with gazebo simulator, in the IRSensor.hh file (in gazebo/build/gazebo/server/sensors/ir/IRSensor.hh) is declared

private std::vector<RaySensor*> irBeams;

And then, in the IRSensor.cc file (in gazebo/build/gazebo/server/sensors/ir/IRSensor.cc) is used this structure in order to use the parameters of the sensor like

    unsigned int IRSensor::GetIRCount() const
    {
      return this->irBeams.size();
    }

But this structure is nowhere defined or filled inside this file. How is this possible? Where is it?

I ask because i try to use this function (GetIRCount) after configuring a IRSensor through a XML file and it always return 0 because it is empty and i really don't why.

https://kforge.ros.org/gazebo/trac/browser/server/sensors/ir/IRSensor.cc

2014-04-20 06:48:12 -0500 marked best answer Gazebo IRSensor parameters configuration xml

Hi everyone,

I was working with simulator_gazebo developer version to create IR and SonarSensor for gazebo (in diamondback), and i made it!! but now, in order to use my work everyone need to install my modified gazebo instead of using the ros gazebo (this because i needed to modify some gazebo files in order to make it work). Because of that I'll try to implement my sensors without modifying the original gazebo simulator code (a proper plugin). But i have now some problems, my function for IR readings do (i create my own package and i mimic the hokuyo node implementation):

   ... 
   void GazeboRosIR::PutIRData()
    {
      int irCount = this->myParent->GetIRCount();
      std::cout<<"[DEBUG] IRCount "  << this->myParent->GetIRCount()  <<std::endl;
      double Range;

      for (int i=0; i<irCount; i++)
      {
          Range=this->myParent->GetRange(i);

      }
    ...
    }

The getIRCount() always return 0, and then my code doesn't read. (This GetIRCount() is a function from IRSensor.hh (gazebo/gazebo/include/gazebo) it should return the number of ir specified in the configuration xml file, looking the source code the reading from xml inside https://kforge.ros.org/gazebo/trac/browser/server/sensors/ir/IRSensor.cc">IRSensor do:

return this->irBeams.size();

This mean that irBeams isn't fulfilled anywhere and then it's always 0. Looking at the source code I didn't find where the irBeams is created and fulfilled.

In my loading parameters xml (for pr2) i do:

  <xacro:macro name="ir_gazebo_v0" params="name ros_topic update_rate">
    <gazebo reference="${name}_link">
      <sensor:ir name="${name}">
        <irCount>5</irCount>
        <rangeCount>5</rangeCount>
        <minAngle>-0.17453</minAngle>
        <maxAngle>0.17453</maxAngle>
        <minRange>0.08</minRange>
        <maxRange>10.0</maxRange>
        <origin>0.0 0.0 0.0</origin>
        <displayRays>false</displayRays>
        <sensorName>irsensor</sensorName>
        <updateRate>${update_rate}</updateRate>
        <controller:gazebo_ros_ir name="gazebo_ros_${name}_controller" plugin="libgazebo_ros_ir.so">
              <gaussianNoise>0.005</gaussianNoise>
              <alwaysOn>true</alwaysOn>
              <updateRate>${update_rate}</updateRate>
              <topicName>${ros_topic}</topicName>
              <frameName>${name}_link</frameName>
              <interface:irarray name="gazebo_ros_${name}_iface" />
         </controller:gazebo_ros_ir>
      </sensor:ir>
    </gazebo>
  </xacro:macro>

Where gazebo load/save the configuration parameters? How is the good way to configure the IRSensor parameters in order to use my implementation?

2014-04-20 06:48:09 -0500 marked best answer how to create a patch

Hi

I'm working with gazebo simulator and I developed some new stuff (sensors) that i would like to share, what is the normal procedure to do that?

To share my package, have I to send my entire gazebo package (with my modifications)? or, should I do something like:

diff -rupN original/ new/ > original.patch

And send only the patch-file?

I ask this because i want to try it in other PC before share it with the whole community.

2014-04-20 06:48:07 -0500 marked best answer vslam, Running on Your Own Data

Hi all!

I want to use the vslam package in diamondback for visual odometry. I made all the installation steps, downloaded the stereo tutorial data and tested. It works fine, but know i have some problems trying to use my own data instead of the tutorial bag.

In the section "1.4 Running on Your Own Data" you explain how to use your own data just changing some lines in the stereo_vslam.launch.

My bag had the stereo images unsynchronized, I play my bag and launch the sync_images node and had the stereo images synchronized. But still have some problems using the vslam node. I can run the sync images and the vslam_system without problems, but when i play the bag the vslam_system node says:

[wide_stereo/stereo_vslam_node-1] process has died [pid 20722, exit code -11]. log files: /home/joser/.ros/log/d398d566-cdd9-11e0-8873-f30ac7586bf8/wide_stereo-stereo_vslam_node-1*.log

The only difference that i can see between the playing the two bags (tutorial and my own) using the rxgraph is the subscription of "/tf" topic (with the tutorial bag the vslam_node achieved the subscription and with my bag it didn't)

In the log file it say : [roscpp_internal] [2011-08-24 00:47:55,900] [thread 0x7f53a928c860]: [DEBUG] XML-RPC call [searchParam] returned an error (-1): [Cannot find parameter [tf_prefix] in an upwards search]

2014-04-20 06:47:23 -0500 marked best answer vslam tutorial CameraInfo error

Hi all,

I am running the vslam tutorial, I achieved to compile it but like other I got an error in the vslam-tutorial.bag

$ rosbag play --clock /path/to/your/bag/vslam_tutorial.bag

Client [/wide_stereo/stereo_vslam_node] wants topic /wide_stereo/right/camera_info to have datatype/md5sum [sensor_msgs/CameraInfo/c9a58c1b0b154e0e6da7578cb991d214], but our version has [sensor_msgs/CameraInfo/1b5cf7f984c229b6141ceb3a955aa18f]. Dropping connection.

Client [/wide_stereo/stereo_vslam_node] wants topic /wide_stereo/left/camera_info to have datatype/md5sum [sensor_msgs/CameraInfo/c9a58c1b0b154e0e6da7578cb991d214], but our version has [sensor_msgs/CameraInfo/1b5cf7f984c229b6141ceb3a955aa18f]. Dropping connection.

if I still want to use the vslam-tutorial.bag, how can I change the CameraInfo or what can I do to solve this problem?

Thanks

2014-01-28 17:27:26 -0500 marked best answer Gazebo empty_world simulation crash in Fuerte

I recently move from Electric to Fuerte. Now if I try to launch a gazebo simulation, it crashed all the time. I Found this related question [http://answers.ros.org/question/34209/gazebo-failed-on-virtualbox-with-fuerte/] But in my case I'm running the simulation on a real machine instead of the virtual one

Here is the error:

joser@JoseR:~$ roslaunch gazebo_worlds empty_world.launch
... logging to /home/joser/.ros/log/d50e15b4-d0ee-11e1-af8c-0025560bd30a/roslaunch-JoseR-17876.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://JoseR:39248/

SUMMARY
========

PARAMETERS
 * /rosdistro
 * /rosversion
 * /use_sim_time

NODES
  /
    empty_world_server (gazebo/gazebo)
    gazebo_gui (gazebo/gui)

auto-starting new master
process[master]: started with pid [17892]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to d50e15b4-d0ee-11e1-af8c-0025560bd30a
process[rosout-1]: started with pid [17905]
started core service [/rosout]
process[empty_world_server-2]: started with pid [17919]
process[gazebo_gui-3]: started with pid [17927]
Gazebo multi-robot simulator, version 1.0.2
Copyright (C) 2011 Nate Koenig, John Hsu, Andrew Howard, and contributors.
Released under the Apache 2 License.
http://gazebosim.org

Gazebo multi-robot simulator, version 1.0.2
Copyright (C) 2011 Nate Koenig, John Hsu, Andrew Howard, and contributors.
Released under the Apache 2 License.
http://gazebosim.org

Msg Waiting for master
Msg Connected to gazebo master @ http://localhost:11345
[ INFO] [1342626000.683238597]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
Msg Waiting for master
Msg Connected to gazebo master @ http://localhost:11345
do_wait: drmWaitVBlank returned -1, IRQs don't seem to be working correctly.
Try adjusting the vblank_mode configuration parameter.
do_wait: drmWaitVBlank returned -1, IRQs don't seem to be working correctly.
Try adjusting the vblank_mode configuration parameter.
Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'Ogre::InternalErrorException'
  what():  OGRE EXCEPTION(7:InternalErrorException): Cannot compile GLSL high-level shader : FFPLib_Texturing_VS Cannot compile GLSL high-level shader : FFPLib_Texturing_VS Error: transpose: undeclared function name.
 in GLSLProgram::compile at /tmp/buildd/ros-fuerte-visualization-common-1.8.4/debian/ros-fuerte-visualization-common/opt/ros/fuerte/stacks/visualization_common/ogre/build/ogre_src_v1-7-3/RenderSystems/GL/src/GLSL/src/OgreGLSLExtSupport.cpp (line 65)
/opt/ros/fuerte/stacks/simulator_gazebo/gazebo/scripts/gui: line 2: 17930 Aborted                 `rospack find gazebo`/gazebo/bin/gzclient -g `rospack find gazebo`/lib/libgazebo_ros_paths_plugin.so
[gazebo_gui-3] process has died [pid 17927, exit code 134, cmd /opt/ros/fuerte/stacks/simulator_gazebo/gazebo/scripts/gui __name:=gazebo_gui __log:=/home/joser/.ros/log/d50e15b4-d0ee-11e1-af8c-0025560bd30a/gazebo_gui-3.log].
log file: /home/joser/.ros/log/d50e15b4-d0ee-11e1-af8c-0025560bd30a/gazebo_gui-3*.log
[ INFO] [1342626017.010822562, 0.089000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1342626017.102480860, 2.415000000]: Starting to spin physics dynamic reconfigure node...

I'm trying to run the simulation in a HP pavillion dv3:

Intel(R) Core(TM)2 Duo CPU     T6500  @ 2.10GHz

Linux version 2.6.32-41-generic (buildd@komainu) (gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1) ) #91-Ubuntu SMP Wed Jun 13 11:43:55 UTC ...
(more)
2014-01-28 17:24:49 -0500 marked best answer costmap clearing

Hello!

I'm working with the navigation stack and I found some issues in the costmap clearing. I have one laser and some sonars and I use all of them to build the costmap. With the laser all works fine (the marking and clearing is done ok) with my sonars instead some of the obstacles remains in the costmap even if the sonar is publishing max_range. Each sonar is referenced to base link while the laser is refereced to base_laser_link in the costmap_common_params.yaml:

    transform_tolerance: 0.2
    obstacle_range: 2.0
    raytrace_range: 2.5

    observation_sources:  base_scan  sonar_cloud 

    base_scan: {sensor_frame: base_laser_link, data_type: LaserScan, topic:/base_scan_throttle , expected_update_rate: 0.3,
 observation_persistence: 0.0, marking: true, clearing: true, min_obstacle_height: -0.08, max_obstalce_height: 2.0}

    sonar_cloud: {sensor_frame: base_link, data_type: PointCloud, topic: /sonar_cloud, expected_update_rate: 0.3, 
observation_persistence: 0.4, marking: true, clearing: true, min_obstacle_height: 0.0, max_obstalce_height: 2.0}
2014-01-28 17:23:38 -0500 marked best answer voxel_grid visualization in rviz

Hi all!

I'm working with the navigation stacks, I made a costmap_2d/VoxelGrid with all my sensor data in it and I use this to navigate through the environment. I can see the laser and all my sensor in rviz but it would be nice to just visualize my costamp (VoxelGrid data type) instead of all the sensor separately. Is it possible to visualize the costamp_2d in rviz?? of is there any plug-in to convert my costmap in a data type that rviz can plot??

Thanks!

2014-01-28 17:23:36 -0500 marked best answer rosmake don't create .so file for gazebo plugins

Hello!

I made some gazebo plugins (a diffdrive and a range sensor) and it works fine. The problem that i have is if I do just a rosmake of my packages it compiles but don't generate the ".so" library plugin. I have to do separately a "cmake ." and later a "make" in order to obtain the ".so" file. Anyone knows why is it happening? or is it the normal procedure?

Thanks

CMakeList.txt

cmake_minimum_required(VERSION 2.4.6)
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)

rosbuild_init()

#set the default path for built executables to the "bin" directory
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
#set the default path for built libraries to the "lib" directory
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

rosbuild_add_library(gazebo_ros_ir src/gazebo_ros_ir.cpp)
rosbuild_link_boost(gazebo_ros_ir thread)

Makefile

# CMAKE generated file: DO NOT EDIT!
# Generated by "Unix Makefiles" Generator, CMake Version 2.8

# Default target executed when no arguments are given to make.
default_target: all
.PHONY : default_target

#=============================================================================
# Special targets provided by cmake.

# Disable implicit rules so canoncical targets will work.
.SUFFIXES:

# Remove some rules from gmake that .SUFFIXES does not remove.
SUFFIXES =

.SUFFIXES: .hpux_make_needs_suffix_list

# Suppress display of executed commands.
$(VERBOSE).SILENT:

# A target that is always out of date.
cmake_force:
.PHONY : cmake_force

#=============================================================================
# Set environment variables for the build.

# The shell in which to execute make rules.
SHELL = /bin/sh

# The CMake executable.
CMAKE_COMMAND = /usr/bin/cmake

# The command to remove a file.
RM = /usr/bin/cmake -E remove -f

# The program to use to edit the cache.
CMAKE_EDIT_COMMAND = /usr/bin/ccmake

# The top-level source directory on which CMake was run.
CMAKE_SOURCE_DIR = /home/workspace/stacks/plugins/range_gazebo_plugin

# The top-level build directory on which CMake was run.
CMAKE_BINARY_DIR = /home/workspace/stacks/plugins/range_gazebo_plugin

#=============================================================================
# Targets provided globally by CMake.

# Special rule for the target edit_cache
edit_cache:
    @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
    /usr/bin/ccmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
.PHONY : edit_cache

# Special rule for the target edit_cache
edit_cache/fast: edit_cache
.PHONY : edit_cache/fast
2014-01-28 17:23:24 -0500 marked best answer How to debug gazebo

Hi all,

I'm migrating to electric and i have some issues setting my gazebo simulation on, i can launch gazebo and my .world map and i seem to works fine (i had to make some changes to remove some errors but in this moment all seem to work fine) now i'm including my robot into the simulation, the problems is that i try to mimic the pr2 launch file to load the world and the robot, but when gazebo start, loads the world and then anything happen... it doesn't fail but also it doesn't load my robot model, i don't know where is stall...

is there some way to run gazebo in "debug" mode to see what is happening?, or is a way to add some lines in the xml/launchs files to print messages? or is there any file that gazebo should write the issues (different that /tmp/gazebo*) ?

Thanks

2014-01-28 17:23:23 -0500 marked best answer AMCL freeze

Hi all,

I'm using the AMCL node to localize my robot, I launch the AMCL and localized the robot whitin rviz (using default configuration rosrun amcl amcl scan:=laser), I see the particle cloud and all seem to work fine, then when i start to move the robot the particles freeze out. The AMCL node don't report any issue but still it doesn't publish anything.

I was trying different configurations and i realize that if i set the maximun particle number up to 500 the node work fine and it doesn't freeze out, for any particle cloud larger than that the AMCL stop working

Any advice?