Ask Your Question

arenillas's profile - activity

2018-02-27 15:44:54 -0600 received badge  Nice Question (source)
2017-07-13 10:08:03 -0600 received badge  Famous Question (source)
2017-01-09 19:18:10 -0600 received badge  Notable Question (source)
2016-07-12 10:33:58 -0600 received badge  Notable Question (source)
2016-05-18 07:28:51 -0600 received badge  Famous Question (source)
2016-05-08 15:49:06 -0600 marked best answer Obstacle insertion in map

I have a sensor to detect obstacles that are not visible. I want my robot to avoid them because they are dangerous despite not being visible.

I have a path planning working with my laser sensor. So, I imagine that the best way of avoiding this potentially harmful points is by introducing them in the obstacle map.

Is it possible? How can I do it and prevent the laser clearing them in the map?

Thank you

EDIT:

I am using navigation package with my TOF camera to implement an AMCL and a path planning. The problem I have is that I need to add invisible obstacles (they are recognised by a radio frequency system). My path planning is working properly right now, but I need to introduce more information in the map.

2016-05-08 15:27:47 -0600 marked best answer Process images

I don't know much about computer vision but what I have to do is pretty simple (At least, it is what I was told).

I want to identify red color on the image, and I have read that the first step is to process the image (before the thresholding) but I don't know which filters or operations are usually made. I have already done the cv_bridge transformation to OpenCV format and the threlholding.

Does anyone know anything about it? Thank you

2016-04-06 07:00:03 -0600 marked best answer Build packages with more than one .cpp

I have received some packages from Fuerte which I need to compile in Hydro with catkin. Each package has more than one source file .cpp

In rosbuild, there was:

rosbuild_add_executable([file1])

rosbuild_add_executable([file2])

In catkin I did the same but with add_executable

The problem is that if I add both files (with different names of executables of course) the program doesn't compile If I omit one of them, everything works properly, but I need both. I don't know if the solution is to create two packages or I need to add anything to CMakeLists.txt

    cmake_minimum_required(VERSION 2.8.3)
    project(test_imu)

    ## Find catkin macros and libraries
    ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
    ## is used, also find other catkin packages
    find_package(catkin REQUIRED COMPONENTS
        message_generation
        nav_msgs 
        robotnik_msgs
        roscpp 
        sensor_msgs 
        geometry_msgs
        )

    ## System dependencies are found with CMake's conventions
    # find_package(Boost REQUIRED COMPONENTS system)
    find_package(MRPT REQUIRED 
        gui
        slam
        )
    find_package(gazebo REQUIRED)
    include_directories(include ${catkin_INCLUDE_DIRS} ${GAZEBO_INCLUDE_DIRS} ${SDFormat_INCLUDE_DIRS})
    include_directories("/home/summitxl/catkin_ws/src/Ensayos/test_imu/include")


    ## Uncomment this if the package has a setup.py. This macro ensures
    ## modules and global scripts declared therein get installed
    ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
    # catkin_python_setup()

    ################################################
    ## Declare ROS messages, services and actions ##
    ################################################

    ## To declare and build messages, services or actions from within this
    ## package, follow these steps:
    ## * Let MSG_DEP_SET be the set of packages whose message types you use in
    ##   your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
    ## * In the file package.xml:
    ##   * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
    ##   * If MSG_DEP_SET isn't empty the following dependencies might have been
    ##     pulled in transitively but can be declared for certainty nonetheless:
    ##     * add a build_depend tag for "message_generation"
    ##     * add a run_depend tag for "message_runtime"
    ## * In this file (CMakeLists.txt):
    ##   * add "message_generation" and every package in MSG_DEP_SET to
    ##     find_package(catkin REQUIRED COMPONENTS ...)
    ##   * add "message_runtime" and every package in MSG_DEP_SET to
    ##     catkin_package(CATKIN_DEPENDS ...)
    ##   * uncomment the add_*_files sections below as needed
    ##     and list every .msg/.srv/.action file to be processed
    ##   * uncomment the generate_messages entry below
    ##   * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)

    ## Generate messages in the 'msg' folder
    # add_message_files(
    #   FILES
    #   Message1.msg
    #   Message2.msg
    # )
## Generate services in the 'srv' folder
# add_service_files(
#   FILES
#   Service1.srv
#   Service2.srv
# )

## Generate actions in the 'action' folder
# add_action_files(
#   FILES
#   Action1.action
#   Action2.action
# )

## Generate added messages and services with any dependencies listed here
# generate_messages(
#   DEPENDENCIES
#   std_msgs  # Or other packages containing msgs
# )

###################################
## catkin specific configuration ##
###################################
## The catkin_package macro generates cmake config files for your package
## Declare things to be passed to dependent projects
## INCLUDE_DIRS: uncomment this if you package contains header files
## LIBRARIES: libraries you create in this project that dependent projects also need
## CATKIN_DEPENDS: catkin_packages dependent projects also need
## DEPENDS: system dependencies of this project that dependent projects also need
catkin_package(
#  INCLUDE_DIRS include
#  LIBRARIES test_imu
#  CATKIN_DEPENDS other_catkin_pkg
   DEPENDS gazebo_ros
)

###########
## Build ##
###########

## Specify additional locations of header files
## Your package locations should be listed before other locations

## Declare a cpp library
# add_library(test_imu
#   src/${PROJECT_NAME}/test_imu.cpp
# )

## Declare ...
(more)
2016-03-21 22:53:06 -0600 received badge  Famous Question (source)
2016-03-07 16:11:18 -0600 received badge  Nice Question (source)
2016-03-07 16:11:15 -0600 marked best answer Which is each frame?

I have a frame tree in which I have /odom and /map frames.

My EKF publishes in /odom frame. My AMCL algorithm (I think) creates a transformation between /odom and /map frames.

Gazebo gives me the modelStates positions. The problem is that it doesn't specify a frame. By default, it is set to be world_frame. I want to check how good is my AMCL. Because of that I think I should transform my /odom position given by EKF to /map frame and there compare it to gazebo's measurements. However, I don't know where Gazebo is referencing the position.

[QUESTION UPDATE] I have two issues that are explined below:

1) Without any AMCL (and without having /map frame in the tree) I used the Gazebo ModelStates topic to check the EKF result assuming that both were published in /odom frame. Was it Ok?

2) Now I have an AMCL running and because of it /map frame appears in the tree. I want to check how good is my AMCL algorithm comparing the pose shown in /amcl_pose (which is in /map frame) with /gazebo/ModelStates topic. How can I do that? I don't know which frame does gazebo use to reference the data in topic ModelStates. Thank you very much

2015-11-04 17:56:27 -0600 marked best answer Topic reading inside a callback

[EDIT]

I have changed my question because I think what I am trying to do is bit different from what was explained here before.

I have a Callback and I need to read a different topic inside this callback. I don't know if it is possible, but I have to ensure that some part of the code is only executed if the other topic has a particular value.

Any case, I don't know if I can read a topic or execute a particular Callback while I am just executing one callback

Thank you.

2015-11-02 01:41:41 -0600 marked best answer Migration from Fuerte to Hydro

I am working on some code that I haven't made. The thing is that I have to work in Hydro and this code was made for Fuerte.

I tried to catkinize the packages changing the manifest.xml and CMakeLists.txt I don't know if it is needed to change anything else but when I try to make the package I get an error.

CMakeFiles/LLtoUTMsNode.dir/src/LLtoUTMsNode.cpp.o: In function `ros::serialization::Stream::advance(unsigned int)':
/home/summitxl/ros_catkin_ws/install_isolated/include/ros/serialization.h:721: undefined reference to ros::serialization::throwStreamOverrun()'
/home/summitxl/ros_catkin_ws/install_isolated/include/ros/serialization.h:721: undefined reference to `ros::serialization::throwStreamOverrun()'
/home/summitxl/ros_catkin_ws/install_isolated/include/ros/serialization.h:721: undefined reference to `ros::serialization::throwStreamOverrun()'
/home/summitxl/ros_catkin_ws/install_isolated/include/ros/serialization.h:721: undefined reference to `ros::serialization::throwStreamOverrun()'
/home/summitxl/ros_catkin_ws/install_isolated/include/ros/serialization.h:721: undefined reference to `ros::serialization::throwStreamOverrun()'
CMakeFiles/LLtoUTMsNode.dir/src/LLtoUTMsNode.cpp.o:/home/summitxl/ros_catkin_ws/install_isolated/include/ros/serialization.h:721: more undefined references to `ros::serialization::throwStreamOverrun()' follow
collect2: error: ld returned 1 exit status

make[2]: *** [/home/summitxl/catkin_ws/devel/lib/test_GPS/LLtoUTMsNode] Error 1

make[1]: *** [Ensayos/test_GPS/CMakeFiles/LLtoUTMsNode.dir/all] Error 2

make[1]: *** Waiting for unfinished jobs....
2015-10-01 09:55:47 -0600 received badge  Famous Question (source)
2015-09-25 08:20:32 -0600 received badge  Favorite Question (source)
2015-09-22 15:56:14 -0600 received badge  Notable Question (source)
2015-07-01 23:29:58 -0600 received badge  Popular Question (source)
2015-06-17 08:07:36 -0600 marked best answer robot_localization

I've seen the package has changed a lot since I used it the last time.

I have a doubt: Is it correct the structure shown in the picture (with two map frames)?

image description

2015-06-16 09:58:43 -0600 received badge  Famous Question (source)
2015-05-05 07:07:06 -0600 received badge  Famous Question (source)
2015-04-28 21:13:06 -0600 received badge  Popular Question (source)
2015-04-13 23:44:58 -0600 received badge  Notable Question (source)
2015-04-12 15:53:50 -0600 received badge  Famous Question (source)
2015-04-12 15:53:50 -0600 received badge  Popular Question (source)
2015-04-12 15:53:50 -0600 received badge  Notable Question (source)
2015-03-30 08:12:26 -0600 received badge  Popular Question (source)
2015-03-30 03:32:09 -0600 received badge  Famous Question (source)
2015-03-25 10:36:59 -0600 received badge  Famous Question (source)
2015-03-20 09:16:34 -0600 received badge  Notable Question (source)
2015-03-12 08:48:28 -0600 commented answer robot_localization gravity removal

It is positive, because it has the Z axis going down. I am using this driver: http://wiki.ros.org/microstrain_3dmgx...

2015-03-12 08:46:32 -0600 received badge  Notable Question (source)
2015-03-10 19:50:51 -0600 received badge  Popular Question (source)
2015-03-10 17:50:41 -0600 commented answer robot_localization gravity removal

I am using 3DM-GX3-5 OEM, which is supported in ROS (It has its own drivers). I think the problem is that the magnetometer is not well calibrated becasuse: 1. The gravity is completely removed in X axis. 2. In the EKF output, the Vy increases continously

2015-03-10 10:04:12 -0600 asked a question robot_localization gravity removal

I am using the last version of robot_localization.

I have a 3DM-GX3-5 OEM IMU sensor in my robot. I want to remove the effect of gravity in the EKF.

I have set the parameter in the launchfile so to do that. However, my results are not good because (I suppose) the EKF thinks there is some acceleration in Y axis.

I don't know exactcly how does it work, but I can imagine that the filter use the orientation given by the IMU topic to remove the acceleration due to gravity in the 3 axis. If I am right, the problem might be in the orientation calibration.

Any idea of what can be happening?

2015-03-04 21:07:34 -0600 received badge  Notable Question (source)
2015-03-04 10:58:49 -0600 commented question Wrong turn with move_base

I can post my configuration file if you want

2015-03-04 07:58:58 -0600 asked a question Wrong turn with move_base

Hi

I have an autonomous robot using move_base package. When it is moving everything is OK but when it receives a new goal, the initial turn that it makes in place is wrong. It chooses the side that has the biggest angle.

[EDIT] I am using the default planner en move_base package. (not dwa)

Thank you

2015-03-04 05:16:01 -0600 received badge  Famous Question (source)
2015-01-30 05:47:59 -0600 asked a question Renaming topics, parameters, services ...

I have developed one robot software.

Now I want to launch 3 robots simultaneously and I am having problems because of the names. To differentiate the nodes of each robot I have used "ns" but it hasn't worked with the topics and parameters.

What I need is to use a prefix in topics name:

/robot1/topic_camera /robot2/topic_camera

Is there an easy way of doing this in the launch files? (remap is not an option)

2015-01-22 09:17:44 -0600 received badge  Famous Question (source)