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

EdCherie's profile - activity

2020-02-04 09:08:24 -0500 asked a question Create a closed version of several ROS packages

Create a closed version of several ROS packages Hi, The title might not completely explain what I want but it is a more

2019-05-24 07:36:08 -0500 received badge  Famous Question (source)
2019-01-29 04:14:06 -0500 received badge  Notable Question (source)
2019-01-28 10:59:13 -0500 edited question Rosserial_mbed issue - wrong checksum for topic id and msg

Rosserial_mbed issue - wrong checksum for topic id and msg Hey all, I have been working on mbed devices for a while and

2019-01-28 10:52:08 -0500 edited question Rosserial_mbed issue - wrong checksum for topic id and msg

Rosserial for Imu msg using mbed Hey all, I have been working on mbed devices for a while and would want to integrate R

2019-01-28 08:17:03 -0500 commented question wrong checksum for topic id and msg

Have you solved the issue?

2019-01-11 03:14:01 -0500 received badge  Popular Question (source)
2019-01-09 09:58:18 -0500 received badge  Scholar (source)
2019-01-09 09:56:50 -0500 asked a question Rosserial_mbed issue - wrong checksum for topic id and msg

Rosserial for Imu msg using mbed Hey all, I have been working on mbed devices for a while and would want to integrate R

2018-09-10 17:26:44 -0500 received badge  Taxonomist
2018-05-18 12:01:24 -0500 received badge  Student (source)
2017-07-24 22:57:39 -0500 received badge  Famous Question (source)
2017-05-09 16:53:42 -0500 received badge  Notable Question (source)
2017-05-08 07:20:48 -0500 received badge  Popular Question (source)
2017-04-29 05:02:26 -0500 asked a question Local planner issue

Local planner issue So I have been tweeking local planner settings for long run application. Everything is fine while th

2017-04-14 18:34:14 -0500 received badge  Famous Question (source)
2017-04-04 05:40:52 -0500 received badge  Notable Question (source)
2017-03-22 07:44:56 -0500 received badge  Popular Question (source)
2017-03-19 15:29:02 -0500 received badge  Famous Question (source)
2017-03-17 08:16:59 -0500 asked a question Localization problem: GPS drift when using visual odomery and INS

So, I have been configuring around robot_localization package to use GPS and IMU together with visual odometry from rtabmap, but have weird behavior. To begin with, I use Orbbec Astra as source of visual odometry, which is then sent to first and second instances of ekf_localization node, which produces visual odometry+imu as first instance and visual+imu+navsat odometry from second. As well I have navsat_transform node which takes output from second ekf instance, which is odom_gps and gps/imu data. Then i use launch file from rtabmap_ros package called sensor_fusion, where I removed the robot_localization node part, because I want to use configuration described above. First instance works fine, visual odometry also seem to be reasonably stable, however second instance and navsat_transform node output unstable behavior. At the start the position is around ~20cm a drift in x and y and if some small slow movement is done with the base, it starts drifting around to positive and negative directions (sometimes to one, sometimes to both). I tried to do this outside in more open space to give GPS to catch reasonable amount of satellites and the problem still persists. I have read one similar question before, but his problem was that he used wrong output - from first ekf instance. I double checked if I had that and I am sure i use output from second ekf instance. I would really appreciate if anyone had similar problem and managed to overcome it. I post the launch file of both rtab and robot localization ( https://www.dropbox.com/sh/57zaiqweul... ) as well image of drift. Also geared used is: Xsens MTi-G-700, Orbbec Astra.

Robot_localization.launch

<launch>

    <param name="/use_sim_time" value="false"/>



    <node pkg="tf2_ros" type="static_transform_publisher" name="bl_imu" args="0 0 0 0 0 1 base_link imu" />

    <node pkg="robot_localization" type="ekf_localization_node" name="ekf_localization" output= "screen" clear_params="true">

      <param name="frequency" value="20"/>
      <param name="sensor_timeout" value="0.1"/>

      <param name="two_d_mode" value="true"/>

      <param name="map_frame" value="map"/> 
      <param name="odom_frame" value="odom"/>
      <param name="base_link_frame" value="base_link"/>
      <param name="world_frame" value="odom"/>

      <remap from="/odometry/filtered" to="/odom_ekf"/> 

      <param name="transform_time_offset" value="0.5"/>
      <param name="odom0" value="/vo"/>      
      <param name="imu0" value="/imu/data"/>

      <rosparam param="odom0_config">[true, true,  false,
                                      false, false, false,
                                      true, true, false,
                                      false, false, false,
                                      false, false, false]</rosparam>

      <rosparam param="imu0_config">[false, false, false, 
                                     false, false,  true,
                                     false, false, false, 
                                     false, false, true,
                                     false, false, false]</rosparam>                                    
      <param name="odom0_differential" value="false"/>
      <param name="odom0_relative" value="false"/>
      <param name="imu0_differential" value="false"/>
      <param name="imu0_relative" value="true"/>
      <param name="imu0_remove_gravitational_acceleration" value="true"/>

    </node>

    <node pkg="robot_localization" type="navsat_transform_node" name="navsat_transform_node" output= "screen" respawn="true">

      <param name="magnetic_declination_radians" value="0.190240888"/>
      <param name="delay" value="1.0"/>
      <param name="yaw_offset" value="0"/>
      <param name="use_odometry_yaw" value="false" />   
      <param name="zero_altitude" value="true"/>
      <param name="broadcast_utm_transform" value="true"/>
      <param name="wait_for_datum" value="false" /> 
      <param name="publish_filtered_gps" value="true" />  

      <remap from="/imu/data" to="/imu/data" />
      <remap from="/gps/fix" to="/fix" />
      <remap from ...
(more)
2017-03-14 06:23:35 -0500 received badge  Notable Question (source)
2017-03-14 06:06:32 -0500 answered a question Xsens MTi-G 710 and robot_localization

Tom's comment out frame_id was the solution

2017-03-14 06:06:07 -0500 commented question Xsens MTi-G 710 and robot_localization

Yeah, that was the problem. Xsens was using older version tf than localization.

2017-03-07 07:49:20 -0500 received badge  Popular Question (source)
2017-03-06 09:19:01 -0500 commented question Xsens MTi-G 710 and robot_localization

Updated the initial question

2017-03-01 09:05:29 -0500 received badge  Editor (source)
2017-03-01 08:07:27 -0500 asked a question Xsens MTi-G 710 and robot_localization

EDIT I am restructurizing the question because i made some progress but still stuck at one problem.

Hey guys, I am trying to implement Xsens INS device with robot_localization package that i could make robot navigate by GPS coordinates. However, i cannot get any data from navsat_transform node in the robot_localization package. I did find few suggestions what to do but it seems other people are more advanced than me so i got stuck at this point.

    <launch>
<!-- Parameters setting of the node: ekf_localization_node -->
  <node pkg="tf" type="static_transform_publisher" name="imu_tf" args="0 0 0 0 0 0 1 base_link base_imu 20"/>
  <node pkg="tf" type="static_transform_publisher" name="gps_tf" args="0 0 0 0 0 0 1 base_link imu 20"/>
  <node pkg="robot_localization" type="ekf_localization_node" name="ekf_localization" clear_params="true">
      <param name="output_frame" value="odom"/>
      <param name="frequency" value="20"/>
      <param name="odom_used" value="true"/>
      <param name="imu_used" value="true"/>
      <param name="vo_used" value="false"/>  
      <param name="sensor_timeout" value="0.1"/>  
      <param name="two_d_mode" value="false"/>

      <param name="map_frame"       value="map"/>
      <param name="odom_frame"      value="odom"/>
      <param name="base_link_frame" value="base_link"/>
      <param name="world_frame"     value="odom"/>

      <param name="odom0" value="odom"/>
      <param name="imu0"  value="/imu/data"/> 

      <rosparam param="odom0_config">[true, true, true,
                                      false, false, false, 
                                      false , false, false, 
                                      false, false, false,
                                      false, false, false]</rosparam>

      <rosparam param="imu0_config">[false, false, false, 
                                     true , true , true, 
                                     false, false, false, 
                                     true , true , true ,
                                     true , true , true ]</rosparam>

      <param name="odom0_differential" value="false"/>
      <param name="imu0_differential"  value="false"/>

      <param name="imu0_remove_gravitational_acceleration" value="true"/>

      <param name="odom0_relative" value="false"/>
      <param name="imu0_relative"  value="false"/>

      <param name="print_diagnostics" value="true"/>

       <!-- ======== ADVANCED PARAMETERS ======== -->

      <param name="odom0_queue_size" value="2"/>
      <param name="imu0_queue_size" value="10"/>

      <rosparam param="process_noise_covariance">[0.05, 0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
                                              0.0, 0.05, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
                                              0.0, 0.0, 0.06, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
                                              0.0, 0.0, 0.0, 0.03, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
                                              0.0, 0.0, 0.0, 0.0, 0.03, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
                                              0.0, 0.0, 0.0, 0.0, 0.0, 0.06, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
                                              0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.025, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
                                              0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ...
(more)
2017-03-01 03:51:36 -0500 received badge  Famous Question (source)
2016-12-22 01:34:42 -0500 received badge  Famous Question (source)
2016-12-18 23:49:00 -0500 received badge  Popular Question (source)
2016-12-18 23:49:00 -0500 received badge  Notable Question (source)
2016-12-01 12:34:04 -0500 received badge  Notable Question (source)
2016-11-18 01:06:33 -0500 received badge  Popular Question (source)
2016-11-02 01:11:27 -0500 received badge  Enthusiast
2016-10-31 11:40:27 -0500 commented answer Give 'manual' goal to Hector Exploration Planner

How did you change from doExploration() to makePlan? The code says it takes 2 arguments where makePlan uses 3, what needs to be changed to use that?

2016-10-31 10:14:18 -0500 asked a question Hector exploration issue

Hey guys,

I have manged to send the velocities from hector exploration controller to start mapping the room. However, i have encountered some issues with it. I attach two links below, first is what kind of movement i experience, and second is the one i am trying to aim to: https://www.youtube.com/watch?v=A0CHc... <--- our robot, trying to map the room while using exploration node from hector_navigation package. https://www.youtube.com/watch?v=A0CHc... <--- video from ros wiki, where the movement of the robot is much more smoother compared to mine. I do understand that my robot uses skidsteering compared to the one that was in robocup where all wheels can turn. However, i don't think it is only because of that, so i was maybe thinking it might be with some parameters i have. Worth noting, robot doesnt have odometry, i only rely on laser scan data. Robot is controlled by arduino. Additional question, when it explores, even though the area is mapped, when looking at rviz, robot keeps running and running. Do i need to stop the movement myself or it does it until completely explores (in my case it seemed it did the same route 2 times at least)? Thanks in advance for the answer. My hector_slam launch file:

<launch>

<param name="/use_sim_time" value="false"/>ros

<node pkg="rviz" type="rviz" name="rviz" 
args="-d $(find hector_slam_launch)/rviz_cfg/mapping_demo.rviz"/>

<include file="$(find hector_mapping)/launch/mapping_default.launch"/>

<include file="$(find hector_geotiff)/launch/geotiff_mapper.launch">
<arg name="trajectory_source_frame_name" value="scanmatcher_frame"/> 
</include>

</launch>

My hector_mapping launch file:

 <?xml version="1.0"?>

    <launch>
      <arg name="tf_map_scanmatch_transform_frame_name" default="scanmatcher_frame"/>
      <arg name="base_frame" default="base_link"/>
      <arg name="odom_frame" default="base_link"/>
      <arg name="pub_map_odom_transform" default="tr

ue"/>
  <arg name="scan_subscriber_queue_size" default="5"/>
  <arg name="scan_topic" default="scan"/>
  <arg name="map_size" default="3072"/>

  <node pkg="hector_mapping" type="hector_mapping" name="hector_mapping" output="screen">

        <!-- Frame names -->
        <param name="map_frame" value="map" />


 <param name="base_frame" value="base_link" />
    <param name="odom_frame" value="base_link" />

    <!-- Tf use -->
            <param name="use_tf_scan_transformation" value="true"/>
            <param name="use_tf_pose_start_estimate" value="false"/>
            <param name="pub_map_odom_transform" value="$(arg pub_map_odom_transform)"/>

        <!-- Map size / start point -->

    <param name="map_resolution" value="0.025"/>
    <param name="map_size" value="1024"/>

<param name="map_start_x" value="0.5"/>
<param name="map_start_y" value="0.5" />
<param name="map_multi_res_levels" value="2" />

<!-- Map update parameters -->
<param name="update_factor_free" value="0.4"/>
<param name="update_factor_occupied" value="0.9" />    
<param name="map_update_distance_thresh" value="0.1"/>
<param name="map_update_angle_thresh" value="0.01" />

<param name="map_pub_period" value="2.0" />
<param name="laser_min_dist" value = "0.1" />
<param name="laser_max_dist" value = "5.0" />
<param name="laser_z_min_value" value = "-1.0" />
<param name="laser_z_max_value" value = "1.0" />

<!-- Advertising config --> 
<param name="advertise_map_service" value="true"/>

      <param name="scan_subscriber_queue_size" value="$(arg scan_subscriber_queue_size)"/>
        <param name="scan_topic" value="$(arg scan_topic)"/>

        <!-- Debug parameters -->
        <!--
          <param name="output_timing" value="false"/>
          <param name="pub_drawings" value="true"/>
          <param name="pub_debug_output" value="true"/>
        -->
        <param name="tf_map_scanmatch_transform_frame_name" value="$(arg tf_map_scanmatch_transform_frame_name)" />
      </node>

    <node pkg="tf" type="static_transform_publisher" name="base_to_laser_broadcaster"      args="0 0 0 0 0 0 /base_link /laser 100" /> 

    </launch>

Then my ... (more)

2016-10-27 10:20:51 -0500 received badge  Organizer (source)
2016-10-26 08:52:10 -0500 asked a question Hector_slam and hector_navigation implemented together

Hey,

We are trying to make autonomous vehicle using UTM-30LX range scanner and arduino controlled rover without odometry. We are using hector_slam for creating a map and were thinking of using hector_navigation instead of move_base for pathfinding. We are able to publish /map topic as well create a static map. However, we want to navigate in unknown environment, meaning no static map at the beginning and creating it throughout the movement. The problem we have we don't know how to launch hector_navigation in order to do this action and required topics for it, as well output. We know that it should give /cmd_vel and that's what we are looking for.

EDIT We can see the cmd_vel topic, thats fine. I will try to be more specific what i have trouble with. I have now launched Hector SLAM (hector_mapping, hector_geotiff) and navigation (i found few launch files to start from on the internet. So i use hector_costmap, hector_exploration_node and hector_exploration_controller). What i tried to do is to see visually how the map is being created, so i launched Hector Slam on the rviz and i wanted to give a point where robot should go to see if i get cmd_vel changes. I changed topic of 2D Nav Goal that it would match with the one that is published by hector_exploration_node. However, nothing changes. I wanted to know what I am missing or maybe I am doing something wrong. I have a code that decodes the cmd_vel msg to the way motor controller would get that wheels would spin, but i dont get any changes in the cmd_vel if i set a 2D Nav Goal.