Fusing GPS in robot_localization
Hi, I am trying to fuse GPS with all other odom and IMUs My local odometry has barely any drift now. The only issue is that the direction of the GPS odometry seems to be rotated with respect to the other odometry..
you can see that the robot is driving towards the left but the GPS is translating upwards. particular attention to imu0
ekf_filter_node_odom:
ros__parameters:
use_sim_time: true
frequency: 30.0
sensor_timeout: 0.1
two_d_mode: false
transform_time_offset: 0.0
transform_timeout: 0.0
print_diagnostics: false
debug: false
map_frame: map
odom_frame: odom
base_link_frame: base_link
world_frame: odom
odom0: /wheel/odom
odom0_config: [false, false, false,
false, false, false,
true, true, true,
false, false, true,
false, false, false]
odom0_queue_size: 10
odom0_nodelay: true
odom0_differential: false
odom0_relative: true
odom1: /visual_slam//odometry
odom1_config: [true, true, true,
true, true, true,
false, false, false,
false, false, false,
false, false, false]
odom1_queue_size: 10
odom1_nodelay: true
odom1_differential: true
odom1_relative: false
odom2: /lidar/odom
odom2_config: [true, true, true,
false, false, false,
false, false, false,
false, false, false,
false, false, false]
odom2_queue_size: 10
odom2_nodelay: true
odom2_differential: false
odom2_relative: false
imu0: /imu/with/absolute/orientation/returns 0 when facing East
imu0_config: [false, false, false,
true, true, true,
false, false, false,
true, true, true,
false, false, false]
imu0_nodelay: false
imu0_differential: false
imu0_relative: true # IS THIS CORRECT? IF IT IS FALSE, THE DIRECTION OF base_link FACES ANOTHER DIRECTION FROM THE OTHER ODOMETRY SOURCES TRANSLATION DIRECTION
imu0_queue_size: 10
imu0_remove_gravitational_acceleration: false
imu1: /imu1
imu1_config: [false, false, false,
false, false, false,
false, false, false,
true, true, true,
false, false, false]
imu1_nodelay: false
imu1_differential: true
imu1_relative: false
imu1_queue_size: 10
imu1_remove_gravitational_acceleration: false
imu2: /imu2
imu2_config: [false, false, false,
false, false, false,
false, false, false,
true, true, true,
false, false, false]
imu2_nodelay: false
imu2_differential: true
imu2_relative: false
imu2_queue_size: 10
imu2_remove_gravitational_acceleration: false
imu3: /imu3
imu3_config: [false, false, false,
false, false, false,
false, false, false,
true, true, true,
false, false, false]
imu3_nodelay: false
imu3_differential: true
imu3_relative: false
imu3_queue_size: 10
imu3_remove_gravitational_acceleration: false
use_control: false
process_noise_covariance: ...
initial_estimate_covariance: ...
ekf_filter_node_map:
ros__parameters:
use_sim_time: true
frequency: 30.0
sensor_timeout: 0.1
two_d_mode: false
transform_time_offset: 0.0
transform_timeout: 0.0
print_diagnostics: false
debug: false
map_frame: map
odom_frame: odom
base_link_frame: base_link
world_frame: map
odom0: /wheel/odom
odom0_config: [false, false, false,
false, false, false,
true, true, true,
false, false, true,
false, false, false]
odom0_queue_size: 10
odom0_nodelay: true
odom0_differential: false
odom0_relative: true
odom1: /visual_slam//odometry
odom1_config: [true, true, true,
true, true, true,
false, false, false,
false, false, false,
false, false, false]
odom1_queue_size: 10
odom1_nodelay: true
odom1_differential: true
odom1_relative: false
odom2: /lidar/odom
odom2_config: [true, true, true,
false, false, false,
false, false, false,
false, false, false,
false, false, false]
odom2_queue_size: 10
odom2_nodelay: true
odom2_differential: false
odom2_relative: false
odom3: /odometry/gps
odom3_config: [true, true, false,
false, false, false,
false, false, false,
false, false, false,
false, false, false]
odom3_queue_size: 10
odom3_nodelay: true
odom3_differential: false
odom3_relative: false
imu0: /imu/with/absolute/orientation/returns 0 when facing East
imu0_config: [false, false, false,
true, true, true,
false, false, false,
true, true, true,
false, false, false]
imu0_nodelay: false
imu0_differential: false
imu0_relative: true # IS THIS CORRECT? IF IT IS FALSE, THE DIRECTION OF base_link ...