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

robot_localization: unable to use odometry/filtered as input

asked 2018-02-17 07:08:45 -0500

simff gravatar image

updated 2018-02-20 04:26:10 -0500

Hi,

I'm using ROS Kinetic and a Clearpath Husky robot. I have an already running ekf_localization_node on my robot that gives me the base_link -> odom and outputs an odometry/filtered topic. Now, on the top of it, I want to use robot_localization to fuse global absolute data with markers.

I want to use the odometry data for my second ekf_global, hence I want the odometry/filtered topic to be subscribed by this node. Here is my launch file:

<?xml version="1.0"?>
<launch> 
<node pkg="robot_localization" type="ekf_localization_node" name="ekf_se" clear_params="true">
<rosparam command="load" file="$(find robot_localization)/params/my_ekf.yaml" />
<remap from="odometry/filtered" to="finalpose"/>
</launch>

The param file my_ekf.yaml is below:

frequency: 30

sensor_timeout: 1

two_d_mode: true

debug: false

publish_tf: true

publish_acceleration: false

map_frame: map              # Defaults to "map" if unspecified

odom_frame: odom            # Defaults to "odom" if unspecified

base_link_frame: base_link  # Defaults to "base_link" if unspecified

world_frame: map           # Defaults to the value of odom_frame if unspecified

dynamic_process_noise_covariance: true

odom0: od
odom0_config: [true,  true,  false,
               false, false, true,
               false, false, false,
              false, false, false,
               false, false, false]      
odom0_differential: false
odom0_relative: false
odom0_queue_size: 40

odom0_nodelay: false

process_noise_covariance: [0.0001, 0,    0,    0,    0,    0,    0,     0,     0,    0,    0,    0,    0,    0,    0,
                           0,    0.0001, 0,    0,    0,    0,    0,     0,     0,    0,    0,    0,    0,    0,    0,
                           0,    0,    0.0001, 0,    0,    0,    0,     0,     0,    0,    0,    0,    0,    0,    0,
                           0,    0,    0,    0.0001, 0,    0,    0,     0,     0,    0,    0,    0,    0,    0,    0,
                           0,    0,    0,    0,    0.0001, 0,    0,     0,     0,    0,    0,    0,    0,    0,    0,
                           0,    0,    0,    0,    0,    0.0001, 0,     0,     0,    0,    0,    0,    0,    0,    0,
                           0,    0,    0,    0,    0,    0,    0.0001, 0,     0,    0,    0,    0,    0,    0,    0,
                           0,    0,    0,    0,    0,    0,    0,     0.0001, 0,    0,    0,    0,    0,    0,    0,
                           0,    0,    0,    0,    0,    0,    0,     0,     0.0001, 0,    0,    0,    0,    0,    0,
                           0,    0,    0,    0,    0,    0,    0,     0,     0,    0.0001, 0,    0,    0,    0,    0,
                           0,    0,    0,    0,    0,    0,    0,     0,     0,    0,    0.0001, 0,    0,    0,    0,
                           0,    0,    0,    0,    0,    0,    0,     0,     0,    0,    0,    0.0001, 0,    0,    0,
                           0,    0,    0,    0,    0,    0,    0,     0,     0,    0,    0,    0,    0.0001, 0,    0,
                           0,    0,    0,    0,    0,    0,    0,     0,     0,    0,    0,    0,    0,    0.0001, 0,
                           0,    0,    0,    0,    0,    0,    0,     0,     0,    0,    0,    0,    0,    0,    0.0001]


initial_estimate_covariance: [1e-2, 0,    0,    0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,
                              0,    1e-2, 0,    0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,
                              0,    0,    1e-2, 0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,
                              0,    0,    0,    1e-2, 0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,
                              0,    0,    0,    0,    1e-2, 0,    0,    0,    0,    0,     0 ...
(more)
edit retag flag offensive close merge delete

Comments

@simff: please review the support guidelines. Do not post screenshots/images of text files or consoles. Copy-paste it into your question.

gvdhoorn gravatar image gvdhoorn  ( 2018-02-18 04:48:36 -0500 )edit

Yes sorry, using Windows system I had some issues with that, I could not use Linux not being at my work place. I will correct it tomorrow.

simff gravatar image simff  ( 2018-02-18 05:29:55 -0500 )edit

Is it possible to print the output data of /odometry/filtered on console cause I am trying to plot it combined with a noisy data?

DesertXGhost gravatar image DesertXGhost  ( 2020-04-28 12:00:10 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
0

answered 2018-02-23 06:59:38 -0500

stevejp gravatar image

Standard practice would be to fuse your wheel odometry + IMU + absolute pose information in the second EKF instead of feeding the filtered odometry from the first EKF into the second EKF.

edit flag offensive delete link more

Comments

Hi, good point, but for my case I want to have distinct map and odom frames :)

simff gravatar image simff  ( 2018-02-23 08:43:52 -0500 )edit
0

answered 2018-02-18 03:29:56 -0500

nikfio gravatar image

Are you using the laptop as a master connected through wifi with the robot?

What is the output of

    rosrun tf view_frames

?

edit flag offensive delete link more

Comments

Hi @nikfio, thanks for the reply, I answered you above :)

simff gravatar image simff  ( 2018-02-19 02:52:36 -0500 )edit

are you generating the /map topic?
what about trying another package different from ekf ? or do you have to use that absolutely?

nikfio gravatar image nikfio  ( 2018-02-19 07:14:43 -0500 )edit

map-->odom is generated as soon as the Ekf gets a valid input, according to my understanding of the wiki. I choose to use that pkg because it is very well explained, and it should pretty much work for my case :) What do you suggest to use then? How would you solve my issue above? Thanks for helping

simff gravatar image simff  ( 2018-02-20 02:17:49 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2018-02-17 07:08:45 -0500

Seen: 612 times

Last updated: Feb 20 '18