Skip to content
This repository has been archived by the owner on Apr 24, 2023. It is now read-only.

Feat/slam gtsam #829

Merged
merged 47 commits into from
Jun 5, 2021
Merged

Feat/slam gtsam #829

merged 47 commits into from
Jun 5, 2021

Conversation

VAM7686
Copy link
Contributor

@VAM7686 VAM7686 commented Jun 4, 2021

Description

Uses the GTSAM library to implement 3D localization using a factor graph. GPS coordinates, IMU measurements, magnetometer measurements, and wheel odometry measurements are continually integrated into the factor graph which helps localizes the robot over time. With 3D localization we are able to go over uneven terrain such as ramps.

This PR does the following:
Main focus:

  • Implements 3D localization using a factor graph.

Other fixes:

  • Fixes GPS plugin configuration issues
  • Added magnetometer integration in robot_localization ekf_localization_node configuration

Fixes #555 and #662

Testing steps (If relevant)

Test Case 1

  1. Launch autonav.launch
  2. Launch the 3D localization and navigation using the 3D_nav_simulation.launch
  3. Launch rviz and display ground truth from the topic /ground_truth and display the slam estimate from the topic /odometry/filtered

Expectations:

  1. slam estimate matches the ground truth.
  2. robot is able to go over ramps.

Self Checklist

  • I have formatted my code using make format
  • I have tested that the new behavior works

andrewyarovoi and others added 30 commits November 24, 2019 23:01
The wheel radius was accidentally set to the wheel diameter causing the robot to move slowly. This commit will change the param to its correct value.
matthewhannay567 and others added 11 commits February 14, 2021 15:51
…eadings into ekf_localization_node_params so initial orientation accounted for in robot_localization pose_ekf
…odom measurements directly. Weird stuff happening with gps still.
Realized that there was a problem with the hector gazebo plugin which was producing the wrong latitudes and longitudes in the simulation. The wrong behavior was that along the +X axis (East) latitude increased and along the +Y axis (North) longitude decreased. Instead we needed for +X to increase longitude and +Y to increase latitude. Thus I had to set the reference_heading in the jessii.urdf.xacro file to be 90 to fix this issue. Weird how its been going on for so long. Surprised nobody caught this for so long.::
@matthewhannay567 matthewhannay567 changed the base branch from master to jessiii-master June 5, 2021 15:53
@matthewhannay567 matthewhannay567 merged commit a353a47 into jessiii-master Jun 5, 2021
@matthewhannay567 matthewhannay567 deleted the feat/slam-gtsam branch June 5, 2021 19:52
@matthewhannay567 matthewhannay567 restored the feat/slam-gtsam branch June 5, 2021 19:53
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Integrate SLAM into navigation stack
4 participants