No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.0.0
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/airs-cuhk/airship.git
VCS Type git
VCS Version main
Last Updated 2025-03-16
Dev Status UNKNOWN
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Airship Localization Package

Additional Links

No additional links.

Maintainers

  • shaopengtao

Authors

No additional authors.

airship_localization

This project integrates IMU sensor and LiDAR sensor to achieve mapping and localization of robot. Current V0.0 localization modules are depend on Cartographer project for fast deployment. Some adjustments are maked for coverting LiDAR sensen message data type into Cartographer inter data type. We also provide the offline map in “/map”, for your own data, please follow the map saving instruction below and replace the “load_state_filename” address in ros launch command.

airship_localization API Overview

rslidar_conversion_node

  1. Subscribed Topics
    • topic_sub_rslidar_points: Subscribes to RoboSense LiDAR sensor msg. (Default /rslidar_points)
  2. Published Topics
    • topic_pub_rslidar_points_converted: Publishes PointCloud msg converted into Cartorgrapher type. (Default /rslidar_points_converted)

Sensor msg callback

  • In “rslidar_conversion_node.cpp”, we convert the rslidar sensor msg into cartographer pointcloud data type. Please check the code if you are intend to run on your own data.
namespace rslidar_ros{
  struct EIGEN_ALIGN16 Point {
      float x;
      float y;
      float z;
      float intensity;
      uint16_t ring = 0;
      double timestamp = 0;
      EIGEN_MAKE_ALIGNED_OPERATOR_NEW
  };
} // namespace rslidar_ros
POINT_CLOUD_REGISTER_POINT_STRUCT(rslidar_ros::Point,
    (float, x, x)
    (float, y, y)
    (float, z, z)
    (float, intensity, intensity)
    (uint16_t, ring, ring)
    (double, timestamp, timestamp)
)

namespace cartographer{
  struct EIGEN_ALIGN16 PointXYZIT {
      float x;
      float y;
      float z;
      float intensity;
      float time;
      EIGEN_MAKE_ALIGNED_OPERATOR_NEW
  };
} // namespace cartographer
POINT_CLOUD_REGISTER_POINT_STRUCT(cartographer::PointXYZIT,
    (float, x, x)
    (float, y, y)
    (float, z, z)
    (float, intensity, intensity)
    (float, time, time)
)

cartographer_node

  • Please refer to cartographer official document, link.

Example for Map Saving

# 1, start a new termial, launch cartographer mapping node
ros2 launch airship_localization airship_mapping_2d.launch.py bag_filename:= address_to _bag.db3

# 2, start a new termial, if the mapping is finished, call finish_trajectory
ros2 service call /finish_trajectory cartographer_ros_msgs/srv/FinishTrajectory "{trajectory_id: 0}"

# 3, start a new termial, call write_state
ros2 service call /write_state cartographer_ros_msgs/srv/WriteState "{filename: 'address for saving/map.pbstream'}"

To Do List

  • V1.0 is currently under development. It contains two main parts, SLAM node and Map node.
  • In SLAM node, we are focus on the basic aspects, such as realtime performance, localization accuracy and stability. LIO/LVIO odometry, factor graph backend, relocalization method, BA optimization will be provided in SLAM node.
  • Map node is designed for robot level application, including grid map for trajectory planning, 3DGS for sence reconstruction, semantic map for task decision making.
CHANGELOG
No CHANGELOG found.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged airship_localization at Robotics Stack Exchange

No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.