ROS2 Nodes¶
This page details all currently available ROS2 nodes, both core and optional.
Core Nodes¶
Mission & Flight Management¶
- task-manager: state machine, receives and processes mission, manages flight controller params
- This is where you add new missions
- vehicle-launch: launch and vehicle config management
- This is where you set up new vehicle configs or change perception modules
- path_manager: takes task manager mission outputs and converts those goals to executable MAVROS setpoints (can be used with or without SLAM &path planner)
- This is where you get to decide how smart the drone really is, at minimum by enabling path planning, up to enabling full decision-making about what constitutes a good destination
Data Management¶
- opencv_cam: camera manager, starts/stops mp4 recording on arm/disarm, uses Nvidia hardware encoding if available
- bag_recorder_2: bag recorder, starts/stops ROS2 mcap on arm/disarm
- image_to_v4l2loopback_ros2: makes ROS2 image topic available for RTSP streaming
Optional Nodes¶
Mapping¶
- fast-lio2: SLAM for LiDAR
- Works with Livox and Velodyne/Ouster types
- Strongly recommend Livox for cluttered environment, Velodyne/Ouster proved insufficient for detecting small twigs and are so much more expensive and heavy -- Livox is awesome
- path-planner: path planning for LiDAR SLAM registered pointclouds
- pcl-analysis: pointcloud aggregation and filtering, saves .laz file at flight conclusion
Perception¶
- thermal-pipeline: analyzes thermal imagery for fire perimeter and hot spots (with optional NIR fusion to reduce false positives)
- image-segment: (TODO make public) runs ML segmentation model on a ROS2 image topic
- pcl-analysis: (TODO separate this into another node?) detects powerlines and vegetation encroachment
Sensors¶
Sensor specific ROS wrappers:
- Livox
- Livox-SDK2: Livox SDK
- livox-ros-driver2: Livox ROS wrapper (ROS1/2)
- seek-thermal: ROS2 wrapper for this thermal camera
- i2c_temperature: reads sensor data from this