docs: uxrce_dds rate_limit option

This commit is contained in:
GuillaumeLaine 2025-05-23 12:39:00 +02:00 committed by Silvan Fuhrer
parent 238dffcd1b
commit b7702d3604

View File

@ -428,9 +428,11 @@ publications:
- topic: /fmu/out/vehicle_odometry
type: px4_msgs::msg::VehicleOdometry
rate_limit: 150.
- topic: /fmu/out/vehicle_status
type: px4_msgs::msg::VehicleStatus
rate_limit: 50.
- topic: /fmu/out/vehicle_trajectory_waypoint_desired
type: px4_msgs::msg::VehicleTrajectoryWaypoint
@ -465,6 +467,8 @@ Each (`topic`,`type`) pairs defines:
- `/fmu/out/` for topics that are _published_ by PX4.
- `/fmu/in/` for topics that are _subscribed_ by PX4.
4. The message type (`VehicleOdometry`, `VehicleStatus`, `OffboardControlMode`, etc.) and the ROS 2 package (`px4_msgs`) that is expected to provide the message definition.
5. **(Optional)**: An additional `rate_limit` field (only for publication entries), which specifies the maximum rate (Hz) at which messages will be published on this topic by PX4 to ROS 2.
If left unspecified, the maximum publication rate limit is set to 100 Hz.
`subscriptions` and `subscriptions_multi` allow us to choose the uORB topic instance that ROS 2 topics are routed to: either a shared instance that may also be getting updates from internal PX4 uORB publishers, or a separate instance that is reserved for ROS2 publications, respectively.
Without this mechanism all ROS 2 messages would be routed to the _same_ uORB topic instance (because ROS 2 does not have the concept of [multiple topic instances](../middleware/uorb.md#multi-instance)), and it would not be possible for PX4 subscribers to differentiate between streams from ROS 2 or PX4 publishers.