Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |
System Dependencies
Launch files
Messages
Services
Plugins
Recent questions tagged airstack_msgs at Robotics Stack Exchange
Package Summary
| Version | 1.0.0 |
| License | BSD-3-Clause-Clear |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/castacks/airstack.git |
| VCS Type | git |
| VCS Version | develop |
| Last Updated | 2026-09-11 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Andrew Jong
Authors
airstack_msgs
airstack_msgs is AirStack’s core interface package: the ROS 2 message and service definitions that modules exchange at the stack’s interchange points — trajectories and waypoints for the trajectory controller, an extended odometry type, and the command services for the robot interface, trajectory controller, and takeoff/landing planner. The package defines the types; which canonical topics and services carry them is specified authoritatively by the Interface Conventions Specification (types and QoS there are verified against the observed wiring of the reference stack).
A number of definitions in this package have no consumer in the AirStack trunk — they were added for search-and-track mission planning work and are kept for downstream/module use. The tables below say so explicitly rather than inventing semantics; do not build new integrations on them without checking their real users first.
At a glance
| Definition | Kind | Status in trunk |
|---|---|---|
Odometry |
msg |
Active — trajectory_controller/tracking_point, look_ahead (spec §5) |
TrajectoryXYZVYaw |
msg | Active — the trajectory-controller command surface (spec §5) |
WaypointXYZVYaw |
msg |
Active — element of TrajectoryXYZVYaw
|
FixedTrajectory |
msg |
Active — goal payload of task_msgs/action/FixedTrajectoryTask
|
KeepOutZone |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
PlanRequest |
msg | Defined; no trunk publisher/subscriber |
SearchMissionRequest |
msg | Defined; no trunk publisher/subscriber |
SearchPrior |
msg | Defined; no trunk publisher/subscriber (referenced only inside PlanRequest/SearchMissionRequest) |
TaskAssignment |
msg | Defined; no trunk publisher/subscriber |
query/TextQueryResponse |
msg | Defined; no trunk consumer (intended for semantic-query modules) |
RobotCommand |
srv |
Active — served by robot_interface at interface/robot_command (spec §7) |
TakeoffLandingCommand |
srv |
Active — served by takeoff_landing_planner at takeoff_landing_planner/set_takeoff_landing_command; the GCS-facing takeoff/land command (spec §8, related-service note) |
TrajectoryMode |
srv |
Active — served by trajectory_controller at trajectory_controller/set_trajectory_mode (spec §5) |
PlanToWaypoint |
srv | Defined but not built — absent from the rosidl_generate_interfaces list in CMakeLists.txt; no trunk consumer |
Messages
Odometry
Extended odometry: nav_msgs/Odometry minus the covariances, plus feed-forward acceleration and jerk. This is the type the trajectory controller publishes on trajectory_controller/tracking_point and trajectory_controller/look_ahead (note: airstack_msgs, not nav_msgs — a classic type mismatch when wiring new modules; see spec §5). Consumers include the PID controller, the local planners (DROAN’s two planners; MIGHTY’s bridge consumes odometry instead), the takeoff/landing planner, the random-walk global planner, and the drone safety monitor.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame of pose
|
child_frame_id |
string |
Frame of twist (body frame) |
pose |
geometry_msgs/Pose |
Position and orientation |
twist |
geometry_msgs/Twist |
Linear/angular velocity |
acceleration |
geometry_msgs/Vector3 |
Linear acceleration (feed-forward term for the controller) |
jerk |
geometry_msgs/Vector3 |
Linear jerk (feed-forward term for the controller) |
TrajectoryXYZVYaw and WaypointXYZVYaw
The trajectory command interchange (spec §5, onboard-only): planners send these to the trajectory controller on trajectory_controller/trajectory_override (replaces the current trajectory) and trajectory_controller/trajectory_segment_to_add (appends). Producers: the local planner modules (mighty_bridge publishes trajectory_override; droan_local_planner and droan_gl publish trajectory_segment_to_add), and in the trunk takeoff_landing_planner and the fixed_trajectory_task server; the trajectory_library package converts between this type and its internal Trajectory class.
TrajectoryXYZVYaw:
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame the waypoints are expressed in |
waypoints |
WaypointXYZVYaw[] |
Ordered waypoint list |
WaypointXYZVYaw (“XYZ, Velocity, Yaw”):
| Field | Type | Meaning |
|---|---|---|
position |
geometry_msgs/Point |
Waypoint position (m, trajectory frame) |
velocity |
float64 |
Speed magnitude at this waypoint (m/s) — direction is inferred from the segment direction (see trajectory_library’s Trajectory constructor) |
yaw |
float64 |
Heading (rad, about +Z) |
acceleration |
geometry_msgs/Vector3 |
Feed-forward acceleration (often left zero) |
jerk |
geometry_msgs/Vector3 |
Feed-forward jerk (often left zero) |
FixedTrajectory
A parametric trajectory specification: a shape type plus free-form key/value attributes. It is the goal payload of task_msgs/action/FixedTrajectoryTask (tasks/fixed_trajectory, served by the fixed_trajectory_task node in the trajectory_controller package). Types accepted by the trunk server: Figure8, Circle, Racetrack, Line, Point, Lawnmower; attributes are shape parameters such as frame_id, velocity, radius, length, width, height (see robot/ros_ws/src/local/controls/trajectory_controller/src/fixed_trajectory_task.cpp for each shape’s accepted keys). Goals are sent from the GCS action_relay and the RViz Tasks Panel.
| Field | Type | Meaning |
|---|---|---|
type |
string |
Trajectory shape name (e.g. Figure8) |
attributes |
diagnostic_msgs/KeyValue[] |
Shape parameters as string key/value pairs |
KeepOutZone
A vertical cylinder to avoid: center (x, y), a z band, and a radius. Defined; no trunk publisher/subscriber — it appears only as a field of PlanRequest and SearchMissionRequest below.
| Field | Type | Meaning |
|---|---|---|
header |
std_msgs/Header |
Stamp + frame |
x, y
|
float64 |
Cylinder center (m) |
z_min, z_max
|
float64 |
Vertical extent (m) |
radius |
float64 |
Cylinder radius (m) |
PlanRequest
A request for a search/coverage plan: start state, wind, planning budget, speed objective, search bounds, priors, and keep-out zones. Defined; no trunk publisher/subscriber. Field meanings below come from the comments in the .msg file.
| Field | Type | Meaning (from file comments) |
|---|---|---|
header |
std_msgs/Header |
— |
start_pose |
geometry_msgs/Pose |
Plan from this position and orientation |
wind_speed |
geometry_msgs/Vector3 |
Wind speed in m/s |
max_planning_time |
float32 |
Seconds |
maximum_range |
float32 |
Budget |
desired_speed |
float32 |
Desired flight speed in m/s |
search_bounds |
geometry_msgs/Polygon |
Constraint/objective region |
search_priors |
SearchPrior[] |
Prior information |
keep_out_zones |
KeepOutZone[] |
Prior information |
clear_tree |
bool |
Replan flag |
scenario |
uint32 |
“To match up with the correct plan” |
SearchMissionRequest
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| rosidl_default_generators | |
| rosidl_default_runtime | |
| ament_lint_auto | |
| ament_lint_common | |
| std_msgs | |
| geometry_msgs | |
| diagnostic_msgs | |
| sensor_msgs |