diff --git a/docs/uk/SUMMARY.md b/docs/uk/SUMMARY.md index 75a5e78aed..e84b2ff989 100644 --- a/docs/uk/SUMMARY.md +++ b/docs/uk/SUMMARY.md @@ -22,6 +22,8 @@ - [Offboard Mode (MC)](flight_modes_mc/offboard.md) - [Запобігання зіткненням](computer_vision/collision_prevention.md) - [Точна посадка](advanced_features/precland.md) + - [Vision Target Estimator](advanced_features/vision_target_estimator.md) + - [Vision Target Estimator Deep Dive](advanced_features/vision_target_estimator_advanced.md) - [Послідовність місцевості/захистки](flying/terrain_following_holding.md) - [Запуск з катапульти чи підкиданням](flight_modes_mc/throw_launch.md) - [Збірка](assembly/assembly_mc.md) @@ -78,6 +80,7 @@ - [Takeoff Mode (FW)](flight_modes_fw/takeoff.md) - [Land Mode (FW)](flight_modes_fw/land.md) - [Hold Mode (FW)](flight_modes_fw/hold.md) + - [Guided Course Mode (FW)](flight_modes_fw/guided_course.md) - [Mission Mode (FW)](flight_modes_fw/mission.md) - [Return Mode (FW)](flight_modes_fw/return.md) - [Offboard Mode (FW)](flight_modes_fw/offboard.md) @@ -165,6 +168,7 @@ - [AirMind MindPX](flight_controller/mindpx.md) - [AirMind MindRacer](flight_controller/mindracer.md) - [ARK Electronics ARKV6X](flight_controller/ark_v6x.md) + - [ARK Electronics ARKV6S](flight_controller/ark_v6s.md) - [ARK FPV Flight Controller](flight_controller/ark_fpv.md) - [ARK Pi6X Flow Flight Controller](flight_controller/ark_pi6x.md) - [CORVON 743v1](flight_controller/corvon_743v1.md) diff --git a/docs/uk/advanced_config/ethernet_setup.md b/docs/uk/advanced_config/ethernet_setup.md index 3e431543c4..63e689fd58 100644 --- a/docs/uk/advanced_config/ethernet_setup.md +++ b/docs/uk/advanced_config/ethernet_setup.md @@ -26,6 +26,7 @@ PX4 supports Ethernet connectivity on [Pixhawk 5X-standard](https://github.com/p Підтримувані автопілоти включають: - [ARK Electronics ARKV6X](../flight_controller/ark_v6x.md) +- [ARK Electronics ARKV6S](../flight_controller/ark_v6s.md) - [CUAV Pixhawk V6X](../flight_controller/cuav_pixhawk_v6x.md) - [CUAV X25 EVO](../flight_controller/cuav_x25-evo.md) - [CUAV X25 SUPER](../flight_controller/cuav_x25-super.md) diff --git a/docs/uk/advanced_features/index.md b/docs/uk/advanced_features/index.md index 4b8f0be374..cad51859ff 100644 --- a/docs/uk/advanced_features/index.md +++ b/docs/uk/advanced_features/index.md @@ -10,3 +10,5 @@ - [Система супутникового зв'язку Iridium/RockBlock](../advanced_features/satcom_roadblock.md) - [Точна посадка](../advanced_features/precland.md) - [RTK GNSS (GPS)](../gps_compass/rtk_gps.md) +- [Vision Target Estimator](../advanced_features/vision_target_estimator.md) + - [Vision Target Estimator Deep Dive](../advanced_features/vision_target_estimator_advanced.md) diff --git a/docs/uk/advanced_features/precland.md b/docs/uk/advanced_features/precland.md index 3081e1ef81..d120890abc 100644 --- a/docs/uk/advanced_features/precland.md +++ b/docs/uk/advanced_features/precland.md @@ -50,7 +50,21 @@ PX4 підтримує точне приземлення для _Multicopters_ Процедури пошуку ініціюються на перших і других етапах і виконуються не більше [PLD_MAX_SRCH разів](../advanced_config/parameter_reference.md#PLD_MAX_SRCH). Діаграма потоку фаз посадки -Діаграма потоку, що показує фази, може бути знайдена на [діаграмі потоку фаз посадки](#landing-phases-flow-diagram) нижче. +A flow diagram showing the phases can be found in [landing phases flow diagram](#landing-phases-flow-diagram) below. + +### Yaw Alignment + +Precision landing can optionally align the multicopter's yaw to match the detected target orientation while the vehicle is approaching or descending above the pad. +Enable this behaviour with [PLD_YAW_EN](#PLD_YAW_EN). + +When enabled, PX4 uses the [`vte_orientation`](../msg_docs/VteOrientation.md) topic (published by the [Vision Target Estimator](../advanced_features/vision_target_estimator.md)) to command the yaw setpoint as long as the orientation data remains valid. +If the orientation feed times out (see [PLD_BTOUT](../advanced_config/parameter_reference.md#PLD_BTOUT)) or the parameter is disabled, yaw control falls back to the default mission behaviour. + +:::warning +Yaw alignment depends on the [Vision Target Estimator](../advanced_features/vision_target_estimator.md), which is not in the default board configurations. +To use this feature you must [build a firmware that includes the module](../advanced_features/vision_target_estimator.md#building-the-module) and enable it at runtime with [VTE_EN](../advanced_config/parameter_reference.md#VTE_EN)=1 and [VTE_YAW_EN](../advanced_config/parameter_reference.md#VTE_YAW_EN)=1. +Without this, `vte_orientation` is never published and [PLD_YAW_EN](#PLD_YAW_EN) has no effect. +::: ## Початок точної посадки @@ -150,15 +164,18 @@ CONFIG_MODULES_LANDING_TARGET_ESTIMATOR=y Інші важливі параметри перераховані в посиланнях на параметри в референсі параметрів під [Landing_target estimator](../advanced_config/parameter_reference.md#landing-target-estimator) та [Precision land](../advanced_config/parameter_reference.md#precision-land). Деякі з найбільш корисних перераховані нижче. -| Параметр | Опис | -| ----------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [SENS_EN_IRLOCK](../advanced_config/parameter_reference.md#SENS_EN_IRLOCK) | IR-LOCK Sensor (зовнішній I2C). Disable: `0` (default): Enable: `1`). | -| [LTEST_MODE](../advanced_config/parameter_reference.md#LTEST_MODE) | Landing target is moving (`0`) or stationary (`1`). За замовчуванням - рухома. | -| [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD) | Горизонтальний радіус прийняття, всередині якого транспортний засіб почне спускатися. За замовчуванням - 0,2 м. | -| [PLD_BTOUT](../advanced_config/parameter_reference.md#PLD_BTOUT) | Таймаут цілі посадки, після якого припускається, що ціль втрачена. За замовчуванням - 5 секунд. | -| [PLD_FAPPR_ALT](../advanced_config/parameter_reference.md#PLD_FAPPR_ALT) | Висота останнього підходу. Висота останнього підходу. За замовчуванням - 0,1 метра. | -| [PLD_MAX_SRCH](../advanced_config/parameter_reference.md#PLD_MAX_SRCH) | Максимальна кількість спроб пошуку у вимаганій посадці. | -| [RTL_PLD_MD](../advanced_config/parameter_reference.md#RTL_PLD_MD) | Режим точної посадки RTL. `0`: disabled, `1`: [Opportunistic](#opportunistic-mode), `2`: [Required](#required-mode). | +| Параметр | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [SENS_EN_IRLOCK](../advanced_config/parameter_reference.md#SENS_EN_IRLOCK) | IR-LOCK Sensor (зовнішній I2C). Disable: `0` (default): Enable: `1`). | +| [LTEST_MODE](../advanced_config/parameter_reference.md#LTEST_MODE) | Landing target is moving (`0`) or stationary (`1`). За замовчуванням - рухома. | +| [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD) | Горизонтальний радіус прийняття, всередині якого транспортний засіб почне спускатися. За замовчуванням - 0,2 м. | +| [PLD_MOVING_T_MIN](../advanced_config/parameter_reference.md#PLD_MOVING_T_MIN) | Minimum moving-target prediction time for the precision landing setpoint. | +| [PLD_MOVING_T_MAX](../advanced_config/parameter_reference.md#PLD_MOVING_T_MAX) | Maximum moving-target prediction time for the precision landing setpoint. | +| [PLD_BTOUT](../advanced_config/parameter_reference.md#PLD_BTOUT) | Таймаут цілі посадки, після якого припускається, що ціль втрачена. За замовчуванням - 5 секунд. | +| [PLD_FAPPR_ALT](../advanced_config/parameter_reference.md#PLD_FAPPR_ALT) | Висота останнього підходу. Висота останнього підходу. За замовчуванням - 0,1 метра. | +| [PLD_MAX_SRCH](../advanced_config/parameter_reference.md#PLD_MAX_SRCH) | Maximum number of search attempts in a required landing. | +| [PLD_YAW_EN](../advanced_config/parameter_reference.md#PLD_YAW_EN) | Enable yaw alignment during precision landing when target orientation is available. | +| [RTL_PLD_MD](../advanced_config/parameter_reference.md#RTL_PLD_MD) | Режим точної посадки RTL. `0`: disabled, `1`: [Opportunistic](#opportunistic-mode), `2`: [Required](#required-mode). | ### Масштабування ІЧ-маяка diff --git a/docs/uk/advanced_features/vision_target_estimator.md b/docs/uk/advanced_features/vision_target_estimator.md new file mode 100644 index 0000000000..afabe61142 --- /dev/null +++ b/docs/uk/advanced_features/vision_target_estimator.md @@ -0,0 +1,390 @@ +# Vision Target Estimator (VTEST) + + + +The Vision Target Estimator (VTEST) estimates where a target is, relative to the vehicle, by combining a camera-based detection of the target (for example an ArUco fiducial marker) with one or more absolute position references: the vehicle's own GNSS, the mission landing waypoint, and/or a GNSS receiver mounted on the target itself. +Its main use is [precision landing](../advanced_features/precland.md), where the vehicle needs to touch down on a small, well-defined spot rather than the approximate mission waypoint. + +This page is for developers who want to enable VTEST on a custom build, tune it for their vehicle, or integrate a new vision pipeline that publishes landing-target observations. +It assumes familiarity with PX4 and basic state estimation, but does not require prior knowledge of the module itself. +For more depth see the [Vision Target Estimator deep dive](../advanced_features/vision_target_estimator_advanced.md). + +:::warning +VTEST is a beta feature, disabled in default board configurations, and should only be enabled on custom builds after careful bench and flight testing. +::: + +## Table of Contents + +[[toc]] + +## Building the Module + +The estimator is not part of the default PX4 board configurations. + +To enable a build that includes the module you need to modify the [KConfig board configuration](../hardware/porting_guide_config.md) for your target board (or create a custom `.px4board` file). +The keys and values that need to be present are: + +- `CONFIG_MODULES_VISION_TARGET_ESTIMATOR=y`: _Enable_ VTEST in firmware +- `CONFIG_MODULES_LANDING_TARGET_ESTIMATOR=n`: _Disable_ the landing target estimator (both modules publish [`landing_target_pose`](../msg_docs/LandingTargetPose.md) and will conflict if enabled together). +- `CONFIG_MAVLINK_DIALECT="development"`: Enable using the development dialect. + Note that this step will no longer be required once the MAVLink messages used by VTEST have been validated. + +Two prebuilt targets are available: + +- `make px4_fmu-v6c_visionTargetEstStatic`: static-target hardware build. +- `make px4_sitl_default`: SITL static-target build. + +For the experimental moving-target build, see [Moving-target mode](../advanced_features/vision_target_estimator_advanced.md#moving-target-mode-experimental). + +## Налаштування + +### Module Enable + +- Set [VTE_EN](../advanced_config/parameter_reference.md#VTE_EN)=1 to run the estimator (reboot required). +- [VTE_POS_EN](../advanced_config/parameter_reference.md#VTE_POS_EN) and [VTE_YAW_EN](../advanced_config/parameter_reference.md#VTE_YAW_EN) enable the position and orientation filters individually (reboot required). + Both are on by default; disable the yaw filter if your vision pipeline does not report target heading. + +### Timeouts + +The default timeouts are appropriate for a typical precision-landing approach where measurements keep arriving until touchdown. +You only need to raise them when you know in advance that there will be a long gap with no fresh data, for example a vision-only setup where the marker is larger than the camera field of view during the final descent and you do not want the estimator to time out before touchdown. + +When that applies: + +- Raise [VTE_TGT_TOUT](../advanced_config/parameter_reference.md#VTE_TGT_TOUT) past the expected gap so the published target pose stays marked valid; the precision-landing controller stops following the target once this expires. +- Raise [VTE_BTOUT](../advanced_config/parameter_reference.md#VTE_BTOUT) past the expected gap if you want the filter to coast on its last estimate. + Otherwise the filter is reset and will restart as soon as enabled fusion sources reappear. + +Measurements timestamped in the future relative to the latest filter prediction are always rejected and reported on the corresponding innovation topic. + +### Measurement Freshness + +[VTE_M_REC_TOUT](../advanced_config/parameter_reference.md#VTE_M_REC_TOUT) and [VTE_M_UPD_TOUT](../advanced_config/parameter_reference.md#VTE_M_UPD_TOUT) decide how long an incoming sample stays usable: + +- [VTE_M_REC_TOUT](../advanced_config/parameter_reference.md#VTE_M_REC_TOUT) is the maximum age at which a new measurement is still eligible for fusion +- [VTE_M_UPD_TOUT](../advanced_config/parameter_reference.md#VTE_M_UPD_TOUT) bounds how long a cached observation remains valid inside the filter state. + +These are independent of the timeouts above; tune them to the dynamics of your platform and target, not to a fixed value: + +- For fast-moving targets and aggressive vehicles, keep both values **short**: stale data describes a world that has already changed, so fusing it pulls the filter in the wrong direction. +- For larger vehicles with slow dynamics and modest roll, pitch, yaw rates, the defaults (or even larger values) work fine: a slightly older sample is still informative because the relative geometry has not significantly changed. + +If you are unsure, leave the defaults and watch the logs: tracking lag or overshoot on a fast platform usually means these values are too large; legitimate fusions being missed because samples arrive just outside the window means they are too tight. + +### Task Selection + +[VTE_TASK_MASK](../advanced_config/parameter_reference.md#VTE_TASK_MASK) is a bitmask that selects the runtime tasks for which the estimators perform computations and estimate the state of the target. +Set the indicated bit to enable the corresponding task. + +| Bit | Task | +| --- | ---------------------------------------- | +| 0 | Precision landing | +| 1 | DEBUG (always active) | + +:::warning +Precision landing yaw control is disabled by default. +Enable [PLD_YAW_EN](../advanced_config/parameter_reference.md#PLD_YAW_EN) when you want the mission controller to align the vehicle with the target heading, and configure the landing waypoint for precision landing (see [Mission precision landing](../advanced_features/precland.md#mission)). +Without both settings the aircraft will only track the position estimate from the Vision Target Estimator. +::: + +### Sensor Fusion Selection + +[VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) is a bitmask that defines which measurements can be fused: + +| Bit | Значення | +| --- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | Target GNSS position | +| 1 | Vehicle GNSS velocity | +| 2 | Vision-relative position | +| 3 | Mission landing waypoint | +| 4 | Target GNSS velocity ([moving mode](../advanced_features/vision_target_estimator_advanced.md#moving-target-mode-experimental) only) | + +Bit 2 also enables processing of `fiducial_marker_yaw_report` in the orientation filter. + +:::tip +**Enable more than one source when you can.** +Each source observes a different combination of states: vision contributes a direct relative position, vehicle GNSS velocity directly constrains the vehicle velocity state, and target GNSS or the mission landing waypoint contribute the absolute reference needed to estimate the GNSS/vision bias. +Multiple sources are what make the filter robust to any single one momentarily dropping out. + +**Vehicle GNSS velocity is the most important non-vision source.** +With only vision enabled, the vehicle velocity state is only indirectly observable. +A short vision dropout then produces a visible relative-position drift that snaps back when vision returns. +With vehicle GNSS velocity enabled, the velocity state is observed directly and the relative position stays more stable through vision dropout. +The deep dive plots both cases side by side in [Vision dropout behaviour](../advanced_features/vision_target_estimator_advanced.md#vision-dropout-behaviour). +Only disable this source when you have a specific reason, for example no GNSS available. + +**An absolute reference makes precision landing robust to vision loss.** +Fusing an absolute reference (target GNSS or the mission landing waypoint) lets the filter estimate the bias between the absolute frame and the vision frame. +Once the bias is observed, the corrected absolute observation effectively becomes a second relative-position sensor: the vehicle can still touch down on the target even when vision is no longer available (for example because the marker leaves the camera field of view in the final metres of descent, or because of motion blur or partial occlusion). +This is especially important for large targets where vision is expected to drop out before touchdown. +The deep dive analyses this on a real flight in [Vision occlusion during descent](../advanced_features/vision_target_estimator_advanced.md#vision-occlusion-during-descent). + +**Target GNSS position and mission landing waypoint are mutually exclusive.** +Both provide the absolute reference for the same GNSS/vision bias, and only one bias can be estimated at a time. +If both bits are set, the module disables the mission landing waypoint at startup and prints a warning, but it is cleaner to pick one explicitly: use target GNSS when a receiver is mounted on the target (most accurate), and the mission landing waypoint when no receiver is available. +::: + +For each source's uORB topic, observation model, and fusion notes, see [Measurement sources](#measurement-sources) at the end of the page. + +### Noise and Gating + +Start from the defaults: they are tuned for a typical setup of consumer GNSS plus a marker-based vision pipeline. +Re-tune only when log analysis points at a specific symptom. +The deep dive walks through what a healthy filter looks like in [Plot examples](../advanced_features/vision_target_estimator_advanced.md#plot-examples) and how to balance the parameters in [Balancing process and observation noise](../advanced_features/vision_target_estimator_advanced.md#balancing-process-and-observation-noise). + +- **Initial state variances** ([VTE_POS_UNC_IN](../advanced_config/parameter_reference.md#VTE_POS_UNC_IN), [VTE_VEL_UNC_IN](../advanced_config/parameter_reference.md#VTE_VEL_UNC_IN), [VTE_BIA_UNC_IN](../advanced_config/parameter_reference.md#VTE_BIA_UNC_IN), [VTE_ACC_UNC_IN](../advanced_config/parameter_reference.md#VTE_ACC_UNC_IN), [VTE_YAW_UNC_IN](../advanced_config/parameter_reference.md#VTE_YAW_UNC_IN)) seed the filter at initialization or reset. + Lower them only if you see aggressive transients on `vte_position` immediately after activation; raise them if convergence is very slow. + Updates while the estimator is already running take effect on the next start. +- **Process noise** ([VTE_ACC_D_UNC](../advanced_config/parameter_reference.md#VTE_ACC_D_UNC), [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC), [VTE_YAW_ACC_UNC](../advanced_config/parameter_reference.md#VTE_YAW_ACC_UNC), and [VTE_ACC_T_UNC](../advanced_config/parameter_reference.md#VTE_ACC_T_UNC) for moving-target builds) controls how fast the predicted state variance grows between measurements, which in turn sets how strongly each new observation moves the filter. + Raise these when the estimator lags real motion or repeated innovations show that the prediction uncertainty is too optimistic; lower them when the state follows per-sample jitter rather than the underlying trend. + For a step-by-step recipe with worked examples, see [Balancing process and observation noise](../advanced_features/vision_target_estimator_advanced.md#balancing-process-and-observation-noise). +- **Bias averaging** ([VTE_BIA_AVG_THR](../advanced_config/parameter_reference.md#VTE_BIA_AVG_THR), [VTE_BIA_AVG_TOUT](../advanced_config/parameter_reference.md#VTE_BIA_AVG_TOUT)) only takes effect when GNSS becomes active before vision; the defaults work for typical consumer GNSS plus marker-based vision. + Set `VTE_BIA_AVG_TOUT=0` to skip averaging and activate the bias on the first joint sample. + Raise `VTE_BIA_AVG_THR` if a noisy vision pipeline cannot satisfy the stability criterion within the timeout. +- **Outlier gates** ([VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE), [VTE_YAW_NIS_THRE](../advanced_config/parameter_reference.md#VTE_YAW_NIS_THRE)) default to a $95\%$ chi-squared confidence interval (3.84). + Tighten the gate if outliers from a noisy sensor are still being fused and visibly pulling the state; loosen it if `vte_aid_*.fusion_status` shows legitimate samples rejected as `STATUS_REJECT_NIS`. + The [troubleshooting checklist](../advanced_features/vision_target_estimator_advanced.md#troubleshooting-checklist) and the rejection-pattern walkthrough in [Plot examples](../advanced_features/vision_target_estimator_advanced.md#plot-examples) help tell the two cases apart. +- **Sensor noise floors** ([VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE), [VTE_GPS_V_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_V_NOISE), [VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE), [VTE_EVA_NOISE](../advanced_config/parameter_reference.md#VTE_EVA_NOISE)) are lower bounds on the per-sample standard deviation each sensor is allowed to report. + Raise the floor for a sensor that under-reports its noise (you will see the filter chasing every sample of that sensor in `vte_position` and the corresponding `vte_aid_*.observation`); leave it alone if the reported variance already exceeds the floor. + Do not push these towards zero: a very small floor tells the filter to trust every sample fully, which makes it chase per-sample jitter and can drive the controller into oscillations. + The runtime enforces a hard minimum to keep Kalman gains bounded, but the safer practice is to set a realistic floor that matches the actual sensor accuracy. + See [Between observation sources](../advanced_features/vision_target_estimator_advanced.md#between-observation-sources) for typical mis-tunes. + +### Sensor-specific Settings + +- **GNSS antenna offsets** - `VisionTargetEst` reads `vehicle_gps_position.antenna_offset_{x,y,z}` to remove position- and rotation-induced velocity offsets before forming GNSS measurements. + Configure the vehicle GPS antenna location with [SENS_GPS0_OFFX](../advanced_config/parameter_reference.md#SENS_GPS0_OFFX), [SENS_GPS0_OFFY](../advanced_config/parameter_reference.md#SENS_GPS0_OFFY), and [SENS_GPS0_OFFZ](../advanced_config/parameter_reference.md#SENS_GPS0_OFFZ). + +### EKF2 Aiding + +For a static target, the relative velocity tracked by the Vision Target Estimator can be fed into the main vehicle state estimator ([EKF2](../advanced_config/tuning_the_ecl_ekf.md)) as an auxiliary velocity measurement. +This is especially useful during the final descent, where the camera is typically the most accurate source of horizontal velocity available to the vehicle. + +The auxiliary velocity is exposed to EKF2 whenever `landing_target_pose.rel_vel_ekf2_valid` is true, which requires: + +- `landing_target_pose.rel_pos_valid = true`, and +- `landing_target_pose.rel_vel_valid = true`, +- `landing_target_pose.is_static = true`, and +- a vision-relative position measurement has been fused within [VTE_M_REC_TOUT](../advanced_config/parameter_reference.md#VTE_M_REC_TOUT). + +The recent vision-relative measurement requirement is intentional: GNSS and mission position can keep the target estimate valid, but they are not true relative measurements and must not enable EKF2 relative-velocity aiding by themselves. + +The decision to actually fuse this signal as an EKF2 auxiliary velocity lives in EKF2 and is gated by [EKF2_AVEL_EN](../advanced_config/parameter_reference.md#EKF2_AVEL_EN). +EKF2 only fuses the data when: + +- [EKF2_AVEL_EN](../advanced_config/parameter_reference.md#EKF2_AVEL_EN)=1, +- `landing_target_pose.rel_vel_ekf2_valid = true`. + +If any condition fails, EKF2 ignores the input. + +### MAVLink Messages + +The estimator receives target information through two MAVLink messages emitted by an onboard companion (vision pipeline and/or external GNSS receiver): + +- [TARGET_RELATIVE](https://mavlink.io/en/messages/development.html#TARGET_RELATIVE) carries each vision-based observation of the target. +- [TARGET_ABSOLUTE](https://mavlink.io/en/messages/development.html#TARGET_ABSOLUTE) carries absolute target state from a GNSS receiver mounted on the target. + +:::info +These messages are currently in the MAVLink development dialect. +To make them available in PX4 builds the `CONFIG_MAVLINK_DIALECT="development"` key must be set in the build configuration. +::: + +#### Data rates + +The estimator runs its prediction step at 50 Hz regardless of the measurement cadence, and each new sample is only fused if it is fresher than the [Measurement Freshness](#measurement-freshness) window. +The minimum rate you actually need is application-dependent: a slow approach with a static target tolerates a few Hz, while fast-dynamics setups (such as the moving-target filter tracking a manoeuvring platform) typically need tens of Hz so the prediction does not drift too far between updates. +To check whether your rate is sufficient, watch how the state covariance in `vte_position` grows between fused samples: substantial growth before the next observation means the prediction is doing more work than the data supports, and you should either publish faster or accept the reduced confidence. + +#### Companion computer responsibilities + +- **Timestamp** each sample at capture in a clock that is synchronised with the autopilot (typically through `mavlink_timesync`). + The OOSM history replay tolerates transport latency, but only if timestamps are consistent. +- **Report consistent variances** in `pos_std` and `yaw_std` (for [TARGET_RELATIVE](https://mavlink.io/en/messages/development.html#TARGET_RELATIVE)) and `position_std` / `vel_std` (for `TARGET_ABSOLUTE`). + Under-reporting variance is the most common cause of overshoots; the [Sensor noise floors](#noise-and-gating) only clamp the lower bound and cannot rescue an over-confident sensor. +- **Set the coordinate frame** for [TARGET_RELATIVE](https://mavlink.io/en/messages/development.html#TARGET_RELATIVE) (`TARGET_OBS_FRAME`) and provide the `q_sensor` rotation when the camera frame differs from vehicle-carried NED. + +#### Bypassing MAVLink + +If you publish target observations from a different onboard pipeline (for example a ROS 2 node running on the companion), you can write the same data directly to the uORB topics that the estimator subscribes to: `fiducial_marker_pos_report` and `fiducial_marker_yaw_report` for vision, and `target_gnss` for an external receiver. +The timing and variance guidance above still applies, and `VTE_EN=1` must be set so the estimator runs and consumes those topics. + +#### Message Overview + +##### TARGET_RELATIVE (ID 511) + +[TARGET_RELATIVE](https://mavlink.io/en/messages/development.html#TARGET_RELATIVE) extends the [LANDING_TARGET](https://mavlink.io/en/messages/common.html#LANDING_TARGET) message with a full 3D report that includes orientation and measurement uncertainty: + +- A coordinate frame selector (`TARGET_OBS_FRAME`) and a sensor quaternion (`q_sensor`) that, when provided, rotates the measurement into vehicle-carried NED. +- Target pose (`x`, `y`, `z`, `q_target`) and variances (`pos_std`, `yaw_std`), collected from onboard vision pipelines. + +`mavlink_receiver` validates the frame/type and handles the message differently depending on the Vision Target Estimator status: + +- When `VTE_EN=0`, the measurement is rotated (using `q_sensor` or the vehicle attitude for body-frame reports) and published straight to `landing_target_pose` so precision-landing can operate without the estimator. +- When `VTE_EN=1`, the message is split into `fiducial_marker_pos_report` and `fiducial_marker_yaw_report`. + `VisionTargetEst` consumes these uORB topics to drive the position and orientation filters (using `fiducial_marker_pos_report.q` to rotate `fiducial_marker_pos_report.rel_pos` into NED at `timestamp_sample`). + +##### TARGET_ABSOLUTE (ID 510) + +[TARGET_ABSOLUTE](https://mavlink.io/en/messages/development.html#TARGET_ABSOLUTE) reports the target's absolute state when it carries its own GNSS (and optionally IMU). +A capability bitmap advertises which fields are valid. +PX4 maps the available content into the `target_gnss` uORB topic: + +- Bit 0 (position) triggers publication of latitude/longitude/altitude along with the horizontal and vertical accuracy estimates (`position_std`). +- Bit 1 (velocity) forwards the NED velocity vector (`vel`) and its standard deviations (`vel_std`). +- Additional fields (acceleration, quaternion `q_target`, rates, uncertainties) are not supported and reserved for future fusion logic once flight testing is available. + +## Симуляція Gazebo Classic + +Run the SITL world `gazebo-classic_iris_irlock` to simulate precision landing using the VTEST fusing vision (ArUco-based) and target GNSS aiding. +The world name is retained for historical reasons. +The models were introduced in [PX4/PX4-SITL_gazebo-classic#950](https://github.com/PX4/PX4-SITL_gazebo-classic/pull/950). + +:::tip +The ArUco vision observation path implemented in `Tools/simulation/gazebo-classic/sitl_gazebo-classic/src/gazebo_aruco_plugin.cpp` provides a concrete example of how to obtain a vision-based observation of a target and how to publish the [TARGET_RELATIVE](https://mavlink.io/en/messages/development.html#TARGET_RELATIVE) message. +::: + +1. Launch the simulator with: + + ```sh + make px4_sitl gazebo-classic_iris_irlock + ``` + +2. If CMake cannot locate the expected OpenCV version, query the version present on your system (`opencv_version --short` or `pkg-config --modversion opencv4`) and update `Tools/simulation/gazebo-classic/sitl_gazebo-classic/CMakeLists.txt` accordingly, for example: + + ```cmake + find_package(OpenCV 4.2.0 REQUIRED EXACT) + ``` + + Re-run the build after adjusting the `find_package` line. + +::: tip + +- **Pad visibility**: In `Tools/simulation/gazebo-classic/sitl_gazebo-classic/models/land_pad/land_pad.sdf`, increase the visual box size to `1.5 1.5 0.01` so the pad stays in view longer while the vehicle descends. + If vision still detects the pad too late in the descent, complement this by planning a lower-altitude mission so the marker enters the camera field of view earlier. +- **Acceptance radius**: If the vehicle hovers above the pad without ever transitioning to descent, raise [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD). Try 2 m first to confirm the rest of the chain works, then tighten it once the filter is well tuned. +- **Mission waypoint bias**: Enable vision and mission position aiding in [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) (set bits 2 and 3, disable bit 0). + Place the landing waypoint 3 to 4 m away from the pad in QGroundControl to watch the UAV correct towards the pad once it is detected. + In the logs, observe how the GNSS bias compensates for the distance between the land waypoint and the actual pad. +- **Measurement noise experiments**: The ArUco plugin publishes nominal standard deviations through `set_std_x` and `set_std_y` in `Tools/simulation/gazebo-classic/sitl_gazebo-classic/src/gazebo_aruco_plugin.cpp`. + Modify these assignments, and optionally the camera noise block in `.../models/aruco_cam/aruco_cam.sdf`, to see how innovation gates react to noisier vision. + +::: + +## Monitoring + +For detailed log-analysis guidance, see [Log analysis and expected plots](../advanced_features/vision_target_estimator_advanced.md#log-analysis-and-expected-plots) in the deep dive. + +On the autopilot shell, the first command to run is + +```sh +vision_target_estimator status +``` + +which reports whether the module is alive, which task is currently active, which filters are running, and which aid sources are enabled. +It is the quickest way to confirm a configuration is taking effect before opening a log. + +- `landing_target_pose.rel_pos_valid` and `.abs_pos_valid` indicate whether recent measurements support relative and absolute positioning. +- `vte_position` exposes every state component (relative position, vehicle velocity, GNSS bias, and optional target motion) together with diagonal covariance entries. +- `vte_orientation` provides yaw, yaw-rate, and their variances. +- `vte_input` records the downsampled NED acceleration and attitude quaternion actually fed to the position prediction step. +- `vte_bias_init_status` shows raw and filtered GNSS/vision bias while the initial averaging phase is active. +- Innovations published on `vte_aid_*` topics include the raw measurement, innovation, innovation variance, chi-squared test ratio, the `fusion_status` enum (per-axis on the 3D variant), and OOSM diagnostics (`time_since_meas_ms`, `history_steps`). + See [aid-source diagnostics](./vision_target_estimator_advanced.md#aid-source-diagnostics) for the full status table. + +## Operational Notes + +- Accurate timestamp alignment between measurement sources is critical. + Large skews will cause innovations to fail the NIS gate and be rejected. +- Absolute target pose is only published when `vehicle_local_position` reports a valid local frame. +- When you expect yaw alignment during landing, enable [PLD_YAW_EN](../advanced_config/parameter_reference.md#PLD_YAW_EN) and configure the mission land item for precision landing as described in [Precision landing](../advanced_features/precland.md#mission). + In practice this means setting the QGroundControl land waypoint `Precision landing` drop-down (or `MAV_CMD_NAV_LAND` `param2`) to Opportunistic or Required so the controller requests the estimator output. + Otherwise only positional cues are used. +- For extended parameter tuning see [Balancing process and observation noise](../advanced_features/vision_target_estimator_advanced.md#balancing-process-and-observation-noise), for log-analysis checklists see [Troubleshooting checklist](../advanced_features/vision_target_estimator_advanced.md#troubleshooting-checklist), and for developer workflows see [Development and debugging tips](../advanced_features/vision_target_estimator_advanced.md#development-and-debugging-tips). + +## Estimator Overview + +This section describes how the filter works internally. +It is recommended background reading and not required to set up or operate the feature. + +The Vision Target Estimator runs two independent estimators at a fixed 50 Hz: a **position filter** that tracks where the target is relative to the vehicle, and an **orientation filter** that tracks the target yaw. +The position filter is structured as three decoupled 1D Kalman filters, one per NED axis, so each axis can be tuned and validated independently. + +Each Kalman filter alternates between two operations: + +- A **prediction step** propagates the state forward at 50 Hz using the vehicle motion model. +- An **update step** corrects the state whenever a new sensor observation arrives and passes outlier detection. + Outliers are rejected by a chi-squared gate on the innovation (tunable through [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) and [VTE_YAW_NIS_THRE](../advanced_config/parameter_reference.md#VTE_YAW_NIS_THRE), defaulting to a 95% confidence interval). + +Fusion starts as soon as the filter is initialized: the position filter needs a recent vehicle velocity estimate together with at least one position-like observation; the orientation filter starts on the first valid vision yaw sample. + +The estimators only run while a runtime **task** is active. +[VTE_TASK_MASK](../advanced_config/parameter_reference.md#VTE_TASK_MASK) selects which tasks are eligible (currently precision landing and a debug-always-on bit). +Tasks are evaluated in priority order, and the first task whose readiness conditions are satisfied is the one that runs. + +If no measurement is fused for a sustained period, the affected filter resets and retries automatically once an enabled fusion source becomes available again. +See [Timeouts](#timeouts) for the relevant tuning knobs. + +### Dynamic Models + +The per-axis position state is $x = [ r, v^{uav}, b ]^T$: the relative NED displacement (target minus vehicle), the vehicle velocity, and the offset between the absolute target reference (GNSS or mission waypoint) and the vision-derived target position. +Assuming constant NED acceleration input $a^{uav}$ over the integration interval $dt$: + +$$ +\begin{aligned} +r_{k+1} &= r_k - dt\thinspace v^{uav}_k - \tfrac{1}{2}\thinspace dt^2\thinspace a^{uav} \\ +v^{uav}_{k+1} &= v^{uav}_k + dt\thinspace a^{uav} \\ +b_{k+1} &= b_k +\end{aligned} +$$ + +Once the bias is known, GNSS can keep the estimate centred on the target even if vision drops out. + +The yaw filter tracks $x = [ \psi, \dot{\psi} ]^T$ with a constant-rate prediction (yaw wrapped to $[-\pi, \pi]$): + +$$ +\begin{aligned} +\psi_{k+1} &= \text{wrap}\negthinspace\left(\psi_k + dt\thinspace\dot{\psi}_k\right) \\ +\dot{\psi}_{k+1} &= \dot{\psi}_k +\end{aligned} +$$ + +Unknown physical disturbances are modelled as continuous-time Gaussian white noise. +The runtime spectral densities ([VTE_ACC_D_UNC](../advanced_config/parameter_reference.md#VTE_ACC_D_UNC), [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC), [VTE_YAW_ACC_UNC](../advanced_config/parameter_reference.md#VTE_YAW_ACC_UNC)) and the initial-variance parameters are listed in [Noise and Gating](#noise-and-gating); for the full derivation see [Dynamic model process noise](../advanced_features/vision_target_estimator_advanced.md#dynamic-model-process-noise). + +For the experimental moving-target mode that adds target velocity and acceleration states, see [Moving-target mode](../advanced_features/vision_target_estimator_advanced.md#moving-target-mode-experimental). + +### Bias Estimation + +The GNSS bias $b$ becomes observable only when both GNSS and vision are available, and VTE takes one of two paths depending on which source arrived first. +When vision is already the active position reference, the bias is activated immediately on the first joint sample. +When GNSS is active first, VTE low-pass filters the early raw samples (tuned by [VTE_BIA_AVG_THR](../advanced_config/parameter_reference.md#VTE_BIA_AVG_THR) and [VTE_BIA_AVG_TOUT](../advanced_config/parameter_reference.md#VTE_BIA_AVG_TOUT)) so that vision is only fused once the offset has settled. + +For the full state-reset rules, the LPF exit condition, and the stale-GNSS fallback, see [Bias initialization design](../advanced_features/vision_target_estimator_advanced.md#bias-initialization-design). + +### Time Alignment + +Vision and GNSS observations can arrive delayed due to transport and processing latency. +The position and orientation filters therefore support an **Out-of-Sequence Measurements (OOSM)** approximation which uses a **history-consistent projected correction** strategy. +For the algorithm, the buffer sizing, and the approximation assumptions, see [OOSM Implementation](../advanced_features/vision_target_estimator_advanced.md#oosm-implementation) in the deep dive. + +### Measurement Sources + +All measurements are fused sequentially. +For each observation `z` a one-row Jacobian is formed and applied to a single axis (position filter) or to the yaw state (orientation filter). +Enabled sensors are defined by the [VTE_AID_MASK](#sensor-fusion-selection) bitmask. + +| Source | Тема uORB | H structure | Примітки | +| ----------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| Target GNSS position | [`target_gnss`](../msg_docs/TargetGnss.md) | $z = r + b$ once the bias is observable, otherwise $z = r$ | The vehicle GNSS sample is interpolated to the target timestamp using the vehicle velocity so the two receivers share a common epoch. Requires [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bit 0. Before bias activation, this source is held back if the estimator is already vision-referenced. | +| Mission landing waypoint | `navigator_mission_item` with validated `position_setpoint_triplet` fallback | $z = r$ | Provides a fallback absolute reference when target GNSS is unavailable. At precision-land task start VTEST caches the logical landing waypoint published by Navigator and keeps using that cached point even after precland rewrites the live triplet. The triplet remains a fallback for modes that do not publish `navigator_mission_item`. Enable [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bit 3 and avoid combining it with target GNSS because only one GNSS bias can be estimated. Before bias activation, this source is held back if the estimator is already vision-referenced. | +| Vision pose | [`fiducial_marker_pos_report`](../msg_docs/FiducialMarkerPosReport.md) | $z = r$ after rotating the measurement (`rel_pos`) into NED using `q` | Uses the message variances, lower-bounded by [VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE). Recent vision fusions are required for EKF aiding. During the initial GNSS/vision bias averaging phase, valid vision samples update the bias low-pass filter but are not fused into the position state yet. This averaging phase only exists when GNSS became the active reference first. | +| Vehicle GNSS velocity | `sensor_gps` | $z = v^{uav}$ | Removes rotation-induced velocity using `vehicle_gps_position.antenna_offset_{x,y,z}`, which are populated from the vehicle GPS antenna offset parameters (`SENS_GPS0_OFF*`). Enable [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bit 1. | +| Target GNSS velocity (moving mode) | `target_gnss` | $z = v^{t}$ | Only used by the experimental [Moving-target mode](../advanced_features/vision_target_estimator_advanced.md#moving-target-mode-experimental). | +| Vision yaw | [`fiducial_marker_yaw_report`](../msg_docs/FiducialMarkerYawReport.md) | $z = \psi$ | Only source used by the orientation filter. Requires [VTE_YAW_EN](../advanced_config/parameter_reference.md#VTE_YAW_EN) and [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bit 2. Variance is taken from the message and lower-bounded by [VTE_EVA_NOISE](../advanced_config/parameter_reference.md#VTE_EVA_NOISE). | + +All innovation data are published on dedicated topics (`vte_aid_gps_pos_target`, `vte_aid_fiducial_marker`, `vte_aid_ev_yaw`, etc.), making it easy to inspect residuals and test ratios in logs. +Every fusion attempt is published, including rejections: the per-axis `fusion_status` enum records the outcome (fused immediately, fused via OOSM history replay, rejected by the NIS gate, rejected as too old or too new, etc.), so tuning sessions can isolate time skew, noise mismatch, or buffer staleness without guessing. + +:::info +UWB and IRLock are candidates for future development once representative test data is available. +::: diff --git a/docs/uk/advanced_features/vision_target_estimator_advanced.md b/docs/uk/advanced_features/vision_target_estimator_advanced.md new file mode 100644 index 0000000000..bd2b4ae20d --- /dev/null +++ b/docs/uk/advanced_features/vision_target_estimator_advanced.md @@ -0,0 +1,1140 @@ +# Vision Target Estimator Deep Dive + + + +This guide expands on the [Vision Target Estimator module overview](../advanced_features/vision_target_estimator.md) and targets advanced users who want to tune, extend, and debug the estimator in detail. +It documents the system architecture of the Vision Target Estimator, and outlines workflows for log analysis and sensor integration. + +## Table of Contents + +[[toc]] + +## System Architecture + +The implementation is split across a scheduler, a task layer, and two independent estimators: + +- `VisionTargetEst` (`src/modules/vision_target_estimator/VisionTargetEst.cpp`) owns the work-queue task. + Its main loop handles generic vehicle inputs (`vehicle_attitude`, `vehicle_acceleration`, `vehicle_local_position`, `vehicle_gps_position`, and angular rates), downsamples acceleration, publishes [`vte_input`](../msg_docs/VteInput.md), and sends the samples to the position and orientation filters every 20 ms (50 Hz). + It also owns a priority-ordered registry of runtime tasks and keeps the generic logic for task dispatch, estimator start/stop, idle scheduling, and timeout handling. +- `tasks/VteTask.h` defines the task interface and the `VTE_TASK_MASK` bit constants. + A task owns all state that only exists for one VTE use-case, such as subscriptions to external status topics, cached mission setpoints, and end-of-task conditions. + `VisionTargetEst` polls each enabled task, then activates the first task in the registry whose readiness conditions are satisfied. +- `tasks/PrecLandTask.cpp` implements the precision-landing task. + It monitors [`prec_land_status`](../msg_docs/PrecLandStatus.md), caches the land waypoint from `navigator_mission_item` (with `position_setpoint_triplet` as a fallback), and completes when precland stops or touchdown is detected. +- `VTEPosition` (`Position/VTEPosition.cpp`) owns the three per-axis position filters. + It maintains observation buffers, enforces timeouts, and publishes `landing_target_pose`, [`vte_position`](../msg_docs/VtePosition.md), and every `vte_aid_*` innovation topic. + The state vector is `[r, v^uav, b]` (relative position, vehicle velocity, GNSS-vs-vision bias); see [Dynamic models](../advanced_features/vision_target_estimator.md#dynamic-models). + - It also runs the bias-initialization state machine described in [Bias Initialization Design](#bias-initialization-design), so the bias `b` is reconciled before it is fused. + - The math is delegated to `Position/KF_position.cpp`, which calls the SymForce-generated routines documented in [SymForce-generated derivations](#symforce-generated-derivations). + - Helper unions `SensorFusionMaskU` and `ObsValidMaskU` mirror the bit layout of [`VTE_AID_MASK`](../advanced_features/vision_target_estimator.md#sensor-fusion-selection), making it straightforward to add new observation types ([Adding new measurement sources](#adding-new-measurement-sources)). +- `VTEOrientation` (`Orientation/VTEOrientation.cpp`) handles yaw fusion with the same measurement staging helpers as the position filter, on a smaller `[psi, psi_dot]` state. + The math lives in `Orientation/KF_orientation.cpp`; prediction and the transition matrix are SymForce-generated, while innovation and correction stay hand-written so yaw can be wrapped to $[-\pi, \pi]$. +- Shared utilities live in `common.h` and `VTEOosm.h` (templated OOSM manager, see [OOSM Implementation](#oosm-implementation)). + +```text +VisionTargetEst (work item, 50 Hz) +├── tasks/ priority-ordered registry, scheduler picks the first ready task +│ ├── VteTask task interface + VTE_TASK_MASK bits +│ └── PrecLandTask precision-landing activation/exit logic +├── VTEPosition per-axis filters, observation buffers, vte_* topic publication +│ ├── KF_position 1D Kalman math (SymForce-generated predict/correct) +│ └── bias init state machine reconciles GNSS-vs-vision bias before fusion +├── VTEOrientation yaw fusion +│ └── KF_orientation SymForce-generated predict, hand-written correct with yaw wrap +└── shared utilities common.h, VTEOosm.h (templated OOSM history buffer) +``` + +## Bias Initialization Design + +The bias state exists because the absolute target reference and the relative vision reference do not necessarily agree: + +- If [`VTE_AID_MASK`](../advanced_features/vision_target_estimator.md#sensor-fusion-selection) uses the mission landing point, that waypoint can be offset from the real pad. +- If [`VTE_AID_MASK`](../advanced_features/vision_target_estimator.md#sensor-fusion-selection) uses target GNSS, the target receiver can still be off by metres when it is not RTK-grade. +- Vision measures the target relative to the vehicle, so it can be locally accurate even when the absolute GNSS reference is biased. + +VTE therefore models GNSS-like position observations as `z = r + b` once the bias becomes observable. +This lets corrected GNSS continue to point to the target when vision drops out. + +Naive bias initialization is not robust: + +- **Zero bias** assumes GNSS and vision already agree. + If the real offset is large, the first vision updates can look like outliers and get rejected. +- **Instantaneous bias from the first sample** trusts a single early vision frame. + If that frame is noisy and vision is lost soon after, the estimator can continue descending with the wrong corrected GNSS offset. + +The implementation therefore uses two different bias-initialization paths depending on which position source is trusted first: + +1. **Startup prerequisites**: `VTEPosition::initializeEstimator()` requires a recent local-velocity or UAV-GNSS-velocity estimate before the filter can start. + This is needed to initialize the `v^{uav}` state and also to support the GNSS-to-vision time alignment used by the bias logic. +2. **Raw bias sample**: whenever a valid GNSS-relative sample exists, the code computes the initial bias from `selectBiasGnssSample(sample_time)`, where `sample_time` is the vision timestamp. + If the GNSS-relative sample is older than vision but still valid, the helper propagates it forward with the UAV velocity estimate. + In other words, the bias logic uses `pos_rel_gnss(t_vision)`, not the stale stored `pos_rel_gnss`. +3. **Why the behavior is asymmetric**: if GNSS is already driving the position state, feeding in raw vision before the bias is ready would mix two frames that can differ by metres. + That is why VTE delays vision in the GNSS-first case. + If vision is already driving the position state, the safer choice is the opposite: keep the trusted vision-based `r` and solve for the bias immediately when GNSS and vision overlap for the first time. +4. **Immediate activation case**: when the estimator is already vision-referenced, VTE computes `b = pos_rel_gnss(t_vision) - pos_rel_vision` and keeps `r = pos_rel_vision`. + The same immediate-activation path is also used when [VTE_BIA_AVG_TOUT](../advanced_config/parameter_reference.md#VTE_BIA_AVG_TOUT)=0, even if GNSS was active first. +5. **Averaging case**: when GNSS is active first and averaging is enabled, vision updates the LPF at the vision rate while GNSS remains the active position source. + The raw sample is still `pos_rel_gnss(t_vision) - pos_rel_vision`, so the rate mismatch between GNSS and vision does not force the estimator to discard intermediate vision frames. +6. **Exit condition**: the LPF is accepted only after 5 consecutive raw-bias delta norms stay below [VTE_BIA_AVG_THR](../advanced_config/parameter_reference.md#VTE_BIA_AVG_THR) and at least `2 * tau` has elapsed (`tau = 0.3 s`), or when [VTE_BIA_AVG_TOUT](../advanced_config/parameter_reference.md#VTE_BIA_AVG_TOUT) expires. +7. **Activation after averaging**: once the LPF is accepted, the state reset is `activateBiasEstimate(gnss_sample - filtered_bias, filtered_bias)`, which means `r = pos_rel_gnss(t_vision) - b_filtered`, `b = b_filtered`. +8. **Stale-GNSS fallback**: if GNSS goes stale during averaging, `selectBiasGnssSample()` fails and the code intentionally switches to the current vision position while keeping the current filtered bias. + This is the only bias-initialization branch that does not use `pos_rel_gnss(t_vision)`, because no valid GNSS sample exists anymore. +9. **No re-initialization after recovery**: once the bias is set for the current estimator run, a temporary vision dropout does not restart the averaging phase. + When vision returns, the existing bias stays active. + +For the runtime tuning of the bias state (how aggressively it follows new observations once activated), see [Tuning the bias state](#tuning-the-bias-state) in the next section. + +## Balancing Process and Observation Noise + +Two distinct noise tunings shape the filter's behaviour, and the right trade-off has to be found on both: + +- The **observation noise** of each sensor sets how much that sensor is trusted relative to others within a single fusion step. + Larger reported variance means a smaller Kalman gain and less influence on the state. +- The **process noise** of the prediction model sets how much the prediction is trusted between updates. + A stiffer prediction (smaller process noise) shrinks the Kalman gain because the predicted covariance $P$ is smaller, so each observation moves the state less. + +The two interact through the Kalman gain $K \approx P / (P + R)$, where $P$ is the predicted state variance (grown by the process noise between updates) and $R$ is the observation variance the sensor reports for this sample. +The `VTE_*_NOISE` parameters can only raise $R$, not lower it: they impose a minimum below which a sensor's reported variance is clamped. +So two knobs shape $K$ for the same fusion step: how fast $P$ grows (set by the process-noise spectral densities) and how much $R$ is allowed to drop (set by the noise minima `VTE_*_NOISE` on each sensor). + +Pushing either knob to an extreme produces the same failure mode: + +- $P$ much larger than $R$ (loose prediction, or a noise minimum so low that $R$ matches a sensor under-reporting its noise) $\rightarrow K \approx 1 \rightarrow$ the state chases every sample. +- $P$ much smaller than $R$ (stiff prediction, or a noise minimum so high that good sensor variance is overridden) $\rightarrow K \approx 0 \rightarrow$ the filter under-reacts to legitimate corrections. + +Tune them together so the resulting gain produces the response speed and noise rejection you actually want. + +### Between Observation Sources + +How much the filter trusts vision relative to GNSS at any given moment is decided by the per-sample **observation variance** each sensor reports ([`fiducial_marker_pos_report.cov_rel_pos`](../msg_docs/FiducialMarkerPosReport.md), `sensor_gps.eph`, `sensor_gps.epv`, [`target_gnss.s_acc_m_s`](../msg_docs/TargetGnss.md)). +The bias-initialization section above explained how the two _frames_ are reconciled; this part covers how trust is split between sources within a single fusion step. + +The estimator can only override the sensor in one direction. +Each fused source has a noise-floor parameter that imposes a lower bound on its standard deviation; the effective observation variance used for fusion is: + +$$ +R_{\text{eff}} = \max\bigl(R_{\text{reported}},\ \text{VTE\_*\_NOISE}^2\bigr). +$$ + +| Параметр | Units | Default | Applies to | +| ------------------------------------------------------------------------------------------------------------------------------------------- | ----- | -------------------- | ----------------------------------------------------- | +| [VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE) | m | 0.10 | Vision relative position | +| [VTE_EVA_NOISE](../advanced_config/parameter_reference.md#VTE_EVA_NOISE) | rad | 0.07 | Vision yaw | +| [VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE) | m | 0.50 | GNSS position (target and mission) | +| [VTE_GPS_V_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_V_NOISE) | m/s | 0.30 | UAV and target GNSS velocity | + +These are **standard deviations**, not variances; the estimator squares them internally before clamping. +They only matter when the sensor under-reports its own noise. +If the reported variance already sits above the floor, the parameter has no effect. + +Two common mis-tunes: + +1. **Floor too tight** (for example `VTE_EVP_NOISE = 0.01` for a marker pipeline that is really 10 cm accurate): the filter is told to trust every sample to within 1 cm, so legitimate per-sample noise looks like outliers, the [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) gate fires often, and the few samples that pass cause state overshoots. +2. **Floor too loose** (for example `VTE_GPS_P_NOISE = 5.0` with an RTK receiver reporting 3 cm `eph`): the floor wins and the filter throws away the receiver's confidence. + `vte_position.cov_rel_pos` stays close to the prediction variance and the bias is never refined during descent. + +To tune, overlay `vte_aid_fiducial_marker.observation_variance` and `vte_aid_gps_pos_target.observation_variance` (or `vte_aid_gps_pos_mission`) on a typical descent and compare each curve to the accuracy you actually expect from the sensor at the relevant operating distance. +A healthy plot shows a crossover where the two sources are roughly equal, with `vte_position.cov_rel_pos` staying below both, as shown in the [estimator-output plot](#plot-examples) further down this page. + +### Process Noise: Variance Rates + +All process-noise parameters are continuous-time **power spectral densities** (PSDs). +A PSD describes the strength of a continuous white-noise process: it is the variance the noise injects per second into the state it directly drives, with units chosen so that `PSD × time` is the variance of that state. +See [Spectral density (Wikipedia)](https://en.wikipedia.org/wiki/Spectral_density) for background. + +| Параметр | Drives directly | Unit | What it represents | +| ------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------- | +| [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC) | `bias` (m) | $m^2/s$ | PSD of the bias random walk | +| [VTE_ACC_D_UNC](../advanced_config/parameter_reference.md#VTE_ACC_D_UNC) | `vel_uav` (m/s) | $m^2/s^3$ | PSD of white acceleration noise on the UAV acceleration input | +| [VTE_YAW_ACC_UNC](../advanced_config/parameter_reference.md#VTE_YAW_ACC_UNC) | `yaw_rate` (rad/s) | $rad^2/s^3$ | PSD of white yaw-acceleration noise | +| [VTE_ACC_T_UNC](../advanced_config/parameter_reference.md#VTE_ACC_T_UNC) | `acc_target` (m/s²) | $(m/s^2)^2/s = m^2/s^5$ | PSD of white jerk noise driving the target-acceleration random walk (moving-target builds) | + +The unit always follows the same rule: it is `[unit of the directly driven state]² / s`. +The bias is in metres, so its PSD is `m²/s`; the UAV velocity is in m/s, so the acceleration PSD that drives it is `(m/s)²/s = m²/s³`; and so on. +The YAML may list the same unit in two equivalent forms (for example `m²/s³` and `(m/s²)²/Hz`, since `Hz = 1/s`), but both refer to the same physical quantity. + +**Variance rate, not linear drift rate.** This is the most common source of confusion. +A spectral density is _not_ a velocity. +Every predict step the integrated process-noise contribution adds a term proportional to `spectral_density * dt` to the directly driven variance, so the 1-sigma expected change of that quantity grows with the _square root_ of elapsed time: + +$$ +\sigma(t) = \sqrt{\text{spectral density} \cdot t} +$$ + +Because the noise is scaled by `dt` at every predict step, the value is independent of the filter update rate. +Running the filter at 25 Hz, 50 Hz, or 100 Hz produces the same long-term allowance, so no retuning is required if the rate changes. + +### Tuning the UAV Acceleration Process Noise + +[VTE_ACC_D_UNC](../advanced_config/parameter_reference.md#VTE_ACC_D_UNC) (unit: $m^2/s^3$, default $0.02$) is the PSD of un-modelled UAV acceleration that drives the `vel_uav` state. +Larger values let measurements pull the state harder between updates; smaller values lock the state to the IMU-driven prediction. + +Applying the $\sigma_v(t) = \sqrt{\text{VTE\_ACC\_D\_UNC} \cdot t}$ rule gives the 1-sigma velocity allowance the filter accumulates between updates: + +| Elapsed time | `VTE_ACC_D_UNC = 0.02` (default) | `VTE_ACC_D_UNC = 0.2` | `VTE_ACC_D_UNC = 1.0` | +| --------------------- | --------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------ | +| 0.1 s | $\sqrt{0.002}\approx 0.045$ m/s | $\sqrt{0.02}\approx 0.14$ m/s | $\sqrt{0.1}\approx 0.32$ m/s | +| 1 s | $\sqrt{0.02}\approx 0.14$ m/s | $\sqrt{0.2}\approx 0.45$ m/s | $\sqrt{1.0} = 1.00$ m/s | +| 10 s | $\sqrt{0.2}\approx 0.45$ m/s | $\sqrt{2.0}\approx 1.41$ m/s | $\sqrt{10}\approx 3.16$ m/s | + +A useful first estimate comes from `vte_input.acc_xyz`: on a representative segment, read off the peak swing $\sigma_a$ and the time scale $\tau$ over which a given deviation persists, then use $\sigma_a^2 \cdot \tau$. +For example, a trace wandering between $-0.05$ and $+0.10$ m/s² in periods of order 1 s ($\sigma_a \approx 0.075$ m/s², $\tau \approx 1$ s) gives a starting value of $\approx 0.006$ $m^2/s^3$. + +Symptoms and fixes (visible on `vte_position.rel_pos` overlaid with the matching `vte_aid_*.observation`): + +1. **Staircase between fusions**: the state drifts away from the observation between samples and snaps back at each fusion. + `VTE_ACC_D_UNC` is too low. + Raise it. + Before pushing it far, first check `vte_input.acc_xyz` for a persistent bias (attitude/gravity leakage, lever-arm error, or real vehicle acceleration); raising process noise does not remove the bias itself. +2. **State copies the per-sample jitter** of the measurement, and the vehicle oscillates near the ground: `VTE_ACC_D_UNC` is too high. + Lower it, or raise the measurement-noise floor of the chased sensor ([VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE) for vision, [VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE) for GPS). + +After every change, `vte_aid_*.innovation` should look like zero-mean white noise rather than ramping with one sign or carrying a persistent offset. + +### Tuning the Bias State + +Once the bias is activated, two parameters govern how aggressively the filter lets `vte_position.bias` follow new observations: + +- [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC) (unit: $m^2/s$, default $0.001$) is the random-walk **process-noise spectral density** of the bias state. + Every predict step adds `VTE_BIAS_UNC * dt` to the bias variance, so this parameter is the runtime knob governing how much the bias can change between observations once the filter is settled. +- [VTE_BIA_UNC_IN](../advanced_config/parameter_reference.md#VTE_BIA_UNC_IN) (unit: $m^2$, default $1.0$) is the **initial** bias variance applied at filter initialization and at bias activation. + Once fusion has run for a few seconds, the runtime covariance is dominated by `VTE_BIAS_UNC` and the measurement updates, so this parameter does **not** influence steady-state bias behaviour. + Keep it large so initialization can absorb initial misalignments. + +Applying the $\sigma(t) = \sqrt{\text{VTE\_BIAS\_UNC} \cdot t}$ rule, `VTE_BIAS_UNC = 0.01` $m^2/s$ does _not_ mean the bias is allowed to change linearly by 10 cm every second. Concretely: + +| Elapsed time | $\sigma_{bias}$ with `VTE_BIAS_UNC = 0.01` $m^2/s$ | $\sigma_{bias}$ with `VTE_BIAS_UNC = 0.001` $m^2/s$ (default) | $\sigma_{bias}$ with `VTE_BIAS_UNC = 0.0001` $m^2/s$ (min) | +| ------------ | ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | +| 1 s | $\sqrt{0.01}\approx 0.10$ m | $\sqrt{0.001}\approx 0.032$ m | $\sqrt{0.0001} = 0.01$ m | +| 10 s | $\sqrt{0.10}\approx 0.32$ m | $\sqrt{0.01}\approx 0.10$ m | $\sqrt{0.001}\approx 0.032$ m | +| 36 s | $\sqrt{0.36}= 0.60$ m | $\sqrt{0.036}\approx 0.19$ m | $\sqrt{0.0036}= 0.06$ m | +| 100 s | $\sqrt{1.0}= 1.00$ m | $\sqrt{0.1}\approx 0.32$ m | $\sqrt{0.01}= 0.10$ m | + +Pick `VTE_BIAS_UNC` such that $\sqrt{\text{VTE\_BIAS\_UNC} \cdot T}$ matches the realistic physical drift of the absolute reference (target GNSS or mission waypoint, relative to the vision frame) over a representative interval `T`. +For consumer GNSS this is typically a few centimetres over tens of seconds. +RTK is even slower. + +Symptoms and fixes: + +1. **`vte_position.bias` jumps to chase a single bad vision sample that just passed the [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) gate**: `VTE_BIAS_UNC` is too high. + The runtime bias variance has grown to the point where the Kalman gain on bias dominates the response to vision innovations, so the filter passes the inconsistency into the bias state. + Lower the value. +2. **`vte_position.bias` never settles after activation and keeps drifting on a stationary target**: `VTE_BIAS_UNC` is too low. + The bias variance is too tight to absorb legitimate slow corrections, so the filter pushes them into `pos_rel` or rejects them via the NIS gate. + Raise the value. +3. **Bias activates correctly but corrected GNSS drifts visibly during a vision dropout**: `VTE_BIAS_UNC` allows more drift than the real receiver, so the bias has been overfit to recent vision. + Combine a lower `VTE_BIAS_UNC` with a stricter [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) or a higher [VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE) floor to keep borderline vision samples out of the bias state. + +`VTE_BIAS_UNC` complements the outlier-rejection gate ([VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE)) and the vision-noise floor ([VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE)). +A well-tuned filter combines all three: a realistic bias variance rate, a sensible NIS threshold, and a vision-noise floor that matches the actual quality of the relative-position sensor. + +### Tuning the Yaw Rate + +The yaw filter uses [VTE_YAW_ACC_UNC](../advanced_config/parameter_reference.md#VTE_YAW_ACC_UNC) as the spectral density of white yaw-acceleration noise that drives the yaw-rate state, with the same $\sqrt{\text{spectral density} \cdot t}$ semantics for yaw-rate growth. + +**Worked example.** With the default $0.004$ $rad^2/s^3$, the 1-sigma yaw-rate change the filter allows is about $3.6$ deg/s after $1$ s and $11.5$ deg/s after $10$ s, which is plenty of slack for a static target. +A value of $0.04$ allows an order of magnitude more (about $11.5$ deg/s already after one second), which is what makes the filter chase every yaw observation rather than holding the predicted heading. + +**Case study: yaw oscillation.** The [Orientation Filter plot](#plot-examples) further down was generated with [VTE_EVA_NOISE](../advanced_config/parameter_reference.md#VTE_EVA_NOISE) at 4 deg (about 0.07 rad) and [VTE_YAW_ACC_UNC](../advanced_config/parameter_reference.md#VTE_YAW_ACC_UNC) at $0.004$, both current defaults. +With earlier, more aggressive defaults (0.05 rad / 0.04) the filter jumped to follow every yaw observation, the controller chased the resulting setpoint changes, and the drone visibly oscillated. +The oscillation itself then degraded the next vision samples (motion blur and larger lever-arm effects make yaw harder to estimate), feeding the loop. +Trusting the process model more (smaller `VTE_YAW_ACC_UNC`) and the observations less (larger `VTE_EVA_NOISE`) breaks that loop: the state stays close to the underlying yaw trend, the drone holds steady, and the observations themselves become cleaner. +Lower these defaults only if the target is truly rotating or your camera is exceptionally accurate. + +### When the State Follows Per-Sample Jitter + +If the state in your logs follows the per-sample jitter rather than the underlying trend (the [Smoothing Through Bounded Noise](#smoothing-through-bounded-noise) plot illustrates the healthy case), three knobs make the output smoother: + +1. **Raise the observation-noise floors** [VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE) (vision), [VTE_EVA_NOISE](../advanced_config/parameter_reference.md#VTE_EVA_NOISE) (vision yaw), or [VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE) (GNSS) so the effective per-sample variance matches the actual sensor noise. + This is the right fix whenever the sensor under-reports its own accuracy: a larger $R$ shrinks the Kalman gain, so each sample moves the state less. + The clamping mechanism and typical mis-tunes are detailed in [Between observation sources](#between-observation-sources) above. +2. **Reduce the prediction process noise** [VTE_ACC_D_UNC](../advanced_config/parameter_reference.md#VTE_ACC_D_UNC), and for moving targets [VTE_ACC_T_UNC](../advanced_config/parameter_reference.md#VTE_ACC_T_UNC), only when the predicted state is already unbiased and the problem is excessive responsiveness to zero-mean jitter. + A smaller predicted variance $P$ also shrinks the Kalman gain. + If GNSS bias drift is contributing to the jitter, the same applies to [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC); see [Tuning the bias state](#tuning-the-bias-state) for worked examples. + Set the prediction noise too low and the filter lags real motion or rejects legitimate dynamics. +3. **Tighten the chi-squared gate** [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) (or [VTE_YAW_NIS_THRE](../advanced_config/parameter_reference.md#VTE_YAW_NIS_THRE)) only if the noise is a mix of in-distribution jitter and occasional outliers. + Against uniformly bounded noise every sample stays inside the gate, so lowering the threshold just throws good data away. + This knob targets outliers, not jitter. + +The underlying trade-off is the process-noise versus measurement-noise balance: each step toward a smoother state is also a step toward slower response to legitimate motion. +Watch `vte_aid_*.innovation` after retuning. +A healthy filter still has zero-mean white-noise innovations; a growing mean or persistent offset signals that the response has been damped too much. + +## Time Alignment + +Vision and GNSS observations can arrive delayed due to transport and processing latency. +The position and orientation filters therefore support an **Out-of-Sequence Measurements (OOSM)** approximation which uses a **history-consistent projected correction** strategy. + +### OOSM Implementation + +Each filter maintains a fixed-size ring buffer of recent state snapshots spanning roughly the last half second of operation (25 samples ≈ 0.5 s at 50 Hz). +For the position filter the snapshot stores $(t, x, P, a^{uav})$; for the orientation filter it stores $(t, x, P)$. +When a delayed scalar measurement arrives with timestamp $t_{meas}$: + +1. **Retrieve**: fetch the closest: + $(x_{old}, P_{old}, a^{uav}_{old})$ before $t_{meas}$. + + $$ + t_{old} ≤ t_{meas} + $$ + +2. **Predict**: use the KF model to predict the state $(x_{meas}, P_{meas})$ using $\Delta t = t_{meas} - t_{old}$ (for the orientation filter the control-input term is omitted). + + $$ + x_{meas} = \Phi(\Delta t) x_{old} + G a^{uav}_{old} \\ + P_{meas} = \Phi(\Delta t)P_{old}\Phi^T(\Delta t) + Q_d(\Delta t) + $$ + +3. **Innovate**: compute the innovation $y$ and innovation variance $S$: + + $$ + y = z - Hx_{meas} \\ + S = H P_{meas} H^T + R + $$ + +4. **Correct**: compute the optimal correction vector: + + $$ + \delta x_{meas} = Ky \\ \thickspace K = P_{meas} H^T S^{-1} + $$ + +5. **Project**: project this correction forward with the state transition matrix $\Phi(\Delta t)$: + + $$ + \delta x(t) = \Phi(t - t_{meas})\thinspace \delta x_{meas} = \Phi(t - t_{meas})\thinspace Ky + $$ + +6. **Apply**: apply the projected correction to the current live state _and_ to every stored history sample $i$ that occurred after $t_{meas}$, i.e. $t_{i} > t_{meas}$. + The corrected posterior at $t_{meas}$ is also written back into the history (replacing or inserting a sample at that timestamp), so a second delayed measurement in the same interval replays from the already-corrected state instead of from the stale pre-measurement floor. + + $$ + K_{i} = \Phi(t_{i} - t_{meas})K \\ + x_{i} = x_{i} + K_{i}y \\ + P_{i} = P_{i} - K_{i}SK_{i}^T + $$ + +Updating the history buffer keeps it self-consistent for subsequent delayed measurements and provides the practical benefits of a lag-smoother while remaining deterministic (fixed buffer, bounded runtime) and avoiding a full backward smoother over the timeline. + +The state prediction includes the control input, $x_{k+1} = \Phi x_k + G u_k$. +When projecting the correction forward, the $Gu_{k}$ term does not need to be used explicitly because it cancels out: + +$$ +(x'_{k+1} - x_{k+1}) = (\Phi x'_k + G u_k) - (\Phi x_k + G u_k) \\ +\Delta x_{k+1} = \Phi (x'_k - x_k) = \Phi \Delta x_k +$$ + +### OOSM Approximation Assumptions + +In Algorithm I of _Zhang et al. Optimal Update with Out-of-Sequence Measurements_, the optimal gain for an Out-of-Sequence Measurement (OOSM) depends on $U_{k,d}$, which represents the cross-covariance between the current state $x_k$ and the past-state error $\tilde{x}_{d|k}$: + +$$ +\hat{x}_{k|k,d} = \hat{x}_{k|k} + K_d (z_d - H_d \hat{x}_{d|k}) \\ +K_d = U_{k,d} H_d^T S_d^{-1} +$$ + +With the optimal recursion Eq. 5: + +$$ +U_{n+1,d} = (I - K_{n+1} H_{n+1})F_{n+1,n} U_{n,d} +$$ + +$F_{n+1,n}$ propagates the correlation forward in time based on system dynamics. +$(I - K_{n+1}H_{n+1})$ reduces the correlation based on the information gained from intermediate measurements processed between $t_d$ and $t_k$. + +**First approximation: projected gain** + +To avoid the computational complexity and storage required to track every intermediate gain $K_n$ and measurement matrix $H_n$, we approximate the cross-covariance term. +We assume that the reduction in correlation due to intermediate updates is negligible for the purpose of the OOSM projection. +Mathematically, this assumes the update factor is close to the identity matrix: + +$$ +(I - K_{n}H_{n}) \approx I +$$ + +Under this assumption, the recursion in Eq. (5) simplifies to a pure dynamic propagation: + +$$U_{n+1,d} \approx F_{n+1,n} U_{n,d}$$ + +By iterating this simplified recursion from the measurement time $d$ to the current time $k$, and recognizing that the initial cross-covariance $U_{d,d}$ corresponds to the prediction covariance $P_{d|d-1}$ (or $P_{d|k-l}$ in the paper's notation Eq. 6), we obtain: + +$$U_{k,d} \approx F_{k,d} U_{d,d} \approx \Phi_{k,d} P_{d|d-1}$$ + +Substituting this approximation back into the gain formula: +$$K_d \approx (\Phi_{k,d} P_{d|d-1}) H_d^T S_d^{-1}$$ + +Since the standard Kalman gain at time $d$ is $K = P_{d|d-1} H_d^T S_d^{-1}$, the OOSM gain simplifies to: + +$$K_d \approx \Phi_{k,d} K$$ + +Effectively, this justifies the "Project" step in the implementation: we calculate the correction vector using the snapshot at $t_{meas}$ and propagate it forward using only the state transition matrix $\Phi(\Delta t)$ ($F_{k,d}$), ignoring the complex coupling effects of intermediate measurements described in the optimal recursion. +This reduces storage complexity from $O(N)$ matrices to a simple circular buffer of snapshots while ensuring the correction remains consistent with the system's motion model. + +**Second approximation: stored prediction instead of full smoothing** + +The paper's globally optimal update uses the smoothed past-state estimate and covariance. + +- Optimal innovation: The innovation in Eq. (3) is defined as + $$\tilde{z}_{d|k} = z_d - H_d \hat{x}_{d|k}$$ + This $\hat{x}_{d|k}$ is the estimate of the state at time $d$ conditioned on all measurements up to time $k$. +- Optimal covariance: The innovation covariance $S_d$ in Eq. (4) uses $P_{d|k}$, which is the error covariance at time $d$ given all data up to $k$. + +The approximation: The current implementation calculates the innovation using a snapshot retrieved from history ($x_{old}$) and predicted to the measurement time ($x_{meas}$). +Since this snapshot was saved before the subsequent measurements ($z_{d+1} \dots z_k$) were processed, it only contains information available up to time $d$. + +- State approximation: The predicted state $\hat{x}_{d|d^-}$ (or filtered state $\hat{x}_{d|d}$) is substituted for the smoothed state $\hat{x}_{d|k}$. + $$\hat{x}_{d|k} \approx \hat{x}_{d|d^-}$$ +- Covariance approximation: Similarly, $S$ is calculated using $P_{meas}$ (which is $P_{d|d^-}$), substituting the prediction covariance for the smoothed covariance. + $$P_{d|k} \approx P_{d|d^-}$$ + +Justification and impact: Calculating the exact $\hat{x}_{d|k}$ and $P_{d|k}$ would require the backward-smoothing machinery described in the paper (Section 4.1), which means storing all intermediate measurements and transition matrices. +By using the stored snapshot, the implementation avoids this storage overhead. +This approximation assumes that the measurements received between $t_{meas}$ and $t_{now}$ ($z_{d+1} \dots z_k$) would not have significantly altered the estimate of the state at $t_{meas}$ had they been available. + +## Dynamic Model Process Noise + +### Process Noise Computation + +The deterministic prediction uses the measured inputs to advance the mean state. +Process noise describes how wrong that prediction might be. +For the static-target position filter, the per-axis continuous-time model can be read as: + +$$ +\begin{aligned} +\dot r &= -v^{uav} \\ +\dot v^{uav} &= a^{uav}_{meas} + w_a \\ +\dot b &= w_b +\end{aligned} +$$ + +де: + +- `r` is target position relative to the vehicle. +- `v^{uav}` is the vehicle velocity. +- `a^{uav}_{meas}` is the NED acceleration sample from `vte_input.acc_xyz`. +- `w_a` is unknown acceleration error on top of the measured acceleration. +- `w_b` is unknown GNSS/vision bias drift. + +This is the key intuition: [VTE_ACC_D_UNC](../advanced_config/parameter_reference.md#VTE_ACC_D_UNC) is an acceleration-error spectral density, but that error is applied to the **derivative of velocity**. +Position is affected one integration later because relative position depends on vehicle velocity. + +Over one prediction interval `dt`, a white acceleration-error spectral density `q_a = VTE_ACC_D_UNC` contributes: + +$$ +\Delta\,\text{var}(v^{uav}) = q_a\,dt, \qquad \Delta\,\text{var}(r) = q_a\,\frac{dt^3}{3}, \qquad \Delta\,\text{cov}(r, v^{uav}) = -q_a\,\frac{dt^2}{2}, +$$ + +The negative covariance term is expected: in the static-target model, a positive vehicle-velocity error makes the predicted relative position decrease. + +The bias noise is simpler. +Bias does not feed any other state in the prediction model, so [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC) contributes only: + +$$ +\Delta\,\text{var}(b) = q_b\,dt. +$$ + +In moving-target builds, [VTE_ACC_T_UNC](../advanced_config/parameter_reference.md#VTE_ACC_T_UNC) is target jerk noise. +It drives the derivative of target acceleration: + +$$ +\dot a^t = w_j. +$$ + +The target acceleration noise then reaches target velocity after one integration and relative position after two integrations. + +The implementation integrates the full continuous-time noise response, including cross-covariances, and SymForce writes the closed-form result into `Position/vtest_derivation/generated/predictCov.h`. +The standard continuous-to-discrete expression is + +$$ +Q = \int_{0}^{dt} G(\tau)\, Q_c\, G^T(\tau)\, d\tau, +$$ + +but users normally do not need to manipulate this formula. +Practically, tune the spectral densities using the variance-rate interpretation in [Process noise: variance rates](#process-noise-variance-rates). +The yaw filter uses the same idea for [VTE_YAW_ACC_UNC](../advanced_config/parameter_reference.md#VTE_YAW_ACC_UNC): yaw-acceleration error drives yaw-rate first, and yaw angle after one integration. + +### Assumptions + +- **Gaussian white noise.** Unknown physical disturbances are modelled as zero-mean continuous-time Gaussian white noise. + For the UAV, that means unmeasured forces (gusts, motor jitter not captured by the accelerometer) enter as white acceleration noise on top of the measured input. + For a moving target, target jerk is modelled as a white-noise driver, so target acceleration evolves as a Brownian-motion random walk. +- **Random-walk bias.** The GNSS-to-vision bias is modelled as a pure random walk. + The offset between the absolute GNSS frame and the relative vision frame drifts slowly and has no deterministic high-frequency dynamics. +- **Axis decoupling.** The three NED axes are integrated independently. + Cross-axis aerodynamic coupling exists in reality, but ignoring it keeps each filter one-dimensional with negligible loss in precision-landing accuracy. + +## Moving-target Mode (experimental) + +:::warning +The moving-target mode is marked experimental. +Initial flight tests have been performed (see [Moving target precision landing](#moving-target) further down), but coverage is limited compared to the static mode. +Use it only for controlled experiments. +::: + +When the firmware is built with `CONFIG_VTEST_MOVING=y`, the position filter is extended with two additional states per axis to track target dynamics: $x = [r, v^{uav}, b, a^{t}, v^{t}]^T$, where $v^{t}$ and $a^{t}$ are the target velocity and acceleration along the axis. +The discrete prediction model becomes + +$$ +\begin{aligned} +r_{k+1} &= r_k - dt\thinspace (v^{uav}_k - v^{t}_k) - \tfrac{1}{2}\thinspace dt^2\thinspace (a^{uav} - a^{t}_k) \\ +v^{uav}_{k+1} &= v^{uav}_k + dt\thinspace a^{uav} \\ +v^{t}_{k+1} &= v^{t}_k + dt\thinspace a^{t}_k \\ +a^{t}_{k+1} &= a^{t}_k \\ +b_{k+1} &= b_k +\end{aligned} +$$ + +Target jerk is modelled as continuous-time white noise with PSD [VTE_ACC_T_UNC](../advanced_config/parameter_reference.md#VTE_ACC_T_UNC); see [Process noise computation](#process-noise-computation). +The initial target-acceleration variance is set by [VTE_ACC_UNC_IN](../advanced_config/parameter_reference.md#VTE_ACC_UNC_IN). + +### Build Setup + +The moving-target firmware is selected by `CONFIG_VTEST_MOVING=y` in the [KConfig board configuration](../hardware/porting_guide_config.md). +Two prebuilt targets are available: + +- `make px4_fmu-v6c_visionTargetEstMoving`: experimental moving-target hardware build. +- `make px4_sitl_vtest-moving`: SITL experimental moving-target build. + +### Target GNSS Velocity Fusion + +With moving-target builds, bit 4 of [`VTE_AID_MASK`](../advanced_features/vision_target_estimator.md#sensor-fusion-selection) enables fusion of the target GNSS velocity from the `target_gnss` topic with observation model $z = v^{t}$. +This is the only measurement that directly informs the target-velocity state. + +### Precision-Landing Projection + +The estimator publishes the current target pose and velocity only. +The precision-landing controller applies a lookahead using [PLD_MOVING_T_MIN](../advanced_config/parameter_reference.md#PLD_MOVING_T_MIN) and [PLD_MOVING_T_MAX](../advanced_config/parameter_reference.md#PLD_MOVING_T_MAX). +It computes an intersection time $\Delta t$ by constraining $|z_{rel}| / |v_{descent}|$ between the two parameters, then shifts the horizontal landing setpoint by $\Delta t$ along the estimated target velocity. +The goal is to command the vehicle toward where the moving target will be at touchdown, not where it was at the last measurement. + +The two bounds play different roles: + +- **[PLD_MOVING_T_MAX](../advanced_config/parameter_reference.md#PLD_MOVING_T_MAX)** caps how far ahead the setpoint can lead the target. + Without a cap, at high altitude the projected setpoint can sit so far ahead that the camera no longer sees the target (target lost on vision), or so far that the horizontal error stays larger than [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD) forever (vehicle never enters the descent phase). +- **[PLD_MOVING_T_MIN](../advanced_config/parameter_reference.md#PLD_MOVING_T_MIN)** sets a floor on the lookahead so the vehicle is still leading the target at touchdown. + This matters because the horizontal velocity at contact should match the target's, not drop to zero. + +Tuning rule of thumb. +For an expected maximum target speed $|v^t|$ and a chosen [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD), pick `PLD_MOVING_T_MAX` so the maximum lookahead offset stays inside the acceptance radius: + +$$ +\text{PLD\_MOVING\_T\_MAX} \lesssim \frac{\text{PLD\_HACC\_RAD}}{|v^t|}. +$$ + +Worked example. +With a target at 0.5 m/s and [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD) at the 0.2 m default, the bound is $\text{T\_MAX} \lesssim 0.4$ s, which is short enough that the lookahead barely leads the target. +Raising [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD) to 1 m allows $\text{T\_MAX} \lesssim 2$ s, which is a much more useful lead. +As a rule, moving-target setups need [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD) and `PLD_MOVING_T_MAX` raised together. + +For `PLD_MOVING_T_MIN`, pick a value at least as large as the touchdown altitude window divided by the descent speed: + +$$ +\text{PLD\_MOVING\_T\_MIN} \gtrsim \frac{h_{touchdown}}{|v_{descent}|}. +$$ + +For a vehicle that descends at 0.5 m/s with the last 0.1 m being the touchdown window, $\text{T\_MIN} \gtrsim 0.2$ s. +This keeps the lookahead positive at touchdown so the vehicle keeps tracking the moving pad through contact. + +### Gazebo Simulation + +The moving-target SITL setup reuses the same `land_pad.sdf` model as the static configuration. +Build with `CONFIG_VTEST_MOVING=y` so the estimator tracks the target velocity, then edit `Tools/simulation/gazebo-classic/sitl_gazebo-classic/models/land_pad/land_pad.sdf` to enable pad motion through the `libgazebo_random_velocity_plugin.so` plugin: + +- `0.5 0 0` applies a constant velocity along the pad's X axis at simulation start. +- `0.5` scales the magnitude of newly drawn random velocities. + Set to `0` for purely constant motion (matches the plot below). +- `500` is the period in seconds between new random velocities. +- ``, ``, ``, `` clamp the velocity range per axis. + Keep `00` so the pad stays on the ground. + +Tips for a stable touchdown on a moving target in SITL: + +- **Enable target GNSS position and target GNSS velocity aiding** ([VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bits 0 and 4). + The target GNSS velocity is the only direct observation of $v^t$; without it the target-velocity state is poorly observed, the lookahead is noisy, and touchdown accuracy suffers. +- **Raise [PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD)** (try 2 to 3 m to start). + With the 0.2 m default, the lookahead-projected setpoint will sit outside the acceptance radius at altitude even for slow targets, blocking the transition to descent. +- **Make the pad visually larger** so vision detects it from a higher altitude (raise the visual box in `land_pad.sdf` to `1.5 1.5 0.01`). +- **Validate on a static pad first**: build with `CONFIG_VTEST_MOVING=y` but keep `0 0 0` for the first runs. + Confirm that the moving-mode filter is well behaved on a static target, then introduce motion. + This separates filter problems from precision-landing-projection problems. + +## Log Analysis and Expected Plots + +This section provides an overview of the topics and fields that matter during log review: the published [estimator outputs](#estimator-outputs) and the upstream [input feeds](#main-input-feeds). +Then log analysis guidance is provided in [What to look for in logs](#what-to-look-for-in-logs) and the [troubleshooting checklist](#troubleshooting-checklist). +The [plot examples](#plot-examples) at the end illustrate the expected convergence behaviour. + +### Estimator Outputs + +- Full state estimations with variance and validity flags for position and orientation filters: + - `vte_position` + - `vte_orientation` +- `vte_bias_init_status`: raw GNSS/vision bias sample, low-pass filtered bias, and the norm of the consecutive raw-bias delta while the initial bias averaging phase is running. +- `landing_target_pose`: controller-facing pose plus `rel_pos_valid`, `rel_vel_valid`, and `rel_vel_ekf2_valid` booleans. +- `vte_input`: downsampled acceleration in NED and the quaternion fed to each prediction step. + Can be used to correlate estimator behaviour with vehicle attitude changes. +- `vte_aid_*`: one topic per fused source (`vte_aid_gps_pos_target`, `vte_aid_gps_pos_mission`, `vte_aid_gps_vel_uav`, `vte_aid_gps_vel_target`, `vte_aid_fiducial_marker`, `vte_aid_ev_yaw`). + Each publishes the observation, observation variance, innovation, innovation variance, chi-squared `test_ratio`, the `fusion_status` outcome code (per-axis on the 3D variant), and OOSM diagnostics (`time_since_meas_ms`, `history_steps`, `time_last_predict`). + See [Aid-source diagnostics](#aid-source-diagnostics) for the meaning of each `fusion_status` value. + +### Aid-Source Diagnostics + +Every fusion attempt is logged on the corresponding `vte_aid_*` topic. +The `fusion_status` field records which fusion branch the filter took: + +| Значення | Status | Значення | Typical action | +| -------- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | `STATUS_IDLE` | No fusion attempted on this axis (e.g. measurement not provided for that axis). | None. | +| 1 | `STATUS_FUSED_CURRENT` | Measurement fused immediately against the live state. | Healthy. | +| 2 | `STATUS_FUSED_OOSM` | Measurement was delayed and fused via the OOSM history buffer; check `history_steps`, and `time_since_meas_ms`. | Healthy as long as `history_steps` stays below the buffer depth `kOosmHistorySize = 25`. | +| 3 | `STATUS_REJECT_NIS` | Innovation failed the chi-squared gate. | Check sensor variance, frame rotations, time skew. Compare with `test_ratio` and the matching `vte_input` sample. | +| 4 | `STATUS_REJECT_COV` | Innovation covariance was non-finite or non-positive. | Numerical issue: check process-noise parameters and that the state has not diverged. | +| 5 | `STATUS_REJECT_TOO_OLD` | Sample older than the OOSM buffer (`kOosmMaxTimeUs = 500 ms`) or older than the oldest stored snapshot. | Reduce sensor latency, raise the publication rate, or check transport timestamps. | +| 6 | `STATUS_REJECT_TOO_NEW` | Sample timestamped in the future relative to the latest filter prediction. | Time-sync problem: verify `mavlink_timesync` or the sensor clock. | +| 7 | `STATUS_REJECT_STALE` | Filter history was reset because no prediction had run for longer than the buffer span. | Expected after long pauses; otherwise investigate scheduler stalls. | +| 8 | `STATUS_REJECT_EMPTY` | History buffer not yet populated when the measurement arrived. | Expected on the first cycles after the estimator starts; persistent occurrences indicate a startup race. | + +Two additional fields make latency tractable without manual timestamp arithmetic: + +- `time_since_meas_ms = (time_last_predict - timestamp_sample) * 1e-3`. Negative values mean the measurement is timestamped after the latest prediction (i.e. the filter has not caught up yet). +- `history_steps` is non-zero only for `STATUS_FUSED_OOSM` and tells you how many 20 ms snapshots were replayed when projecting the correction forward. + +### Main Input Feeds + +- Vision: `fiducial_marker_pos_report` / `fiducial_marker_yaw_report` +- GNSS on the target: `target_gnss` +- Vehicle GNSS: `sensor_gps` (used to convert absolute GNSS measurements to relative vehicle-carried NED measurements) +- Mission position: cached from `navigator_mission_item`, with `position_setpoint_triplet` as a fallback when a valid LAND setpoint is available there first +- `vehicle_local_position` and `vehicle_attitude` (used for frame transforms and timeout checks) + +### What to Look For in Logs + +1. **Estimator output vs. observations**: In all axis directions, overlay the estimator outputs position `vte_position.rel_pos[0]`, `vte_orientation.yaw` with measurement observations `vte_aid_*.observation[0]` (e.g. `vte_aid_fiducial_marker.observation[0]` or the relevant GNSS observation). + The traces should converge after a short transient. + Large steady offsets point to calibration errors or incorrect measurement-frame-to-NED transforms. +2. **Initial bias averaging**: When GNSS is active before vision, inspect `vte_bias_init_status.raw_bias`, `vte_bias_init_status.filtered_bias`, and `vte_bias_init_status.delta_norm`. + Here `delta_norm` is the norm between consecutive raw bias samples, so it directly reflects the stability criterion used by the low-pass filter exit. + The filtered bias should settle before `vte_position.bias` is initialized. + Large swings in the raw bias or a persistently large `delta_norm` point to unstable early vision data or GNSS/vision time-alignment problems. + If vision is active first, you should normally see immediate bias activation instead of an averaging phase. +3. **Innovation behaviour**: `vte_aid_*.innovation` (e.g. `vte_aid_fiducial_marker.innovation`) should be centred at zero and resemble white noise. + Recall that the innovation is defined as the difference between the state prediction and the measurement observation of the state. + It follows that the drifting innovations can come from: + - State prediction errors: + - check the estimators state outputs which correspond to the prediction of the state when no measurements are fused + - check `vte_input` (accelerations, attitude) + - check the frequency of the prediction `dt` + - State update errors: + - errors in the measurement implementation, compare the raw sensor input (e.g. `fiducial_marker_pos_report`) with the processed observation (e.g. `vte_aid_fiducial_marker`) + - time delays between the attitude of the drone and the observation (causing biases in the frame transform from sensor to NED) + - Incorrect noise assumptions +4. **Measurement acceptance**: Inspect `fusion_status` alongside `test_ratio`. + `STATUS_FUSED_CURRENT` and `STATUS_FUSED_OOSM` are healthy; the various `STATUS_REJECT_*` codes each point to a different root cause (NIS gate, covariance, latency, time sync, scheduler stall). + See [Aid-source diagnostics](#aid-source-diagnostics) for the action mapped to each code. + Remember that gaps longer than [VTE_TGT_TOUT](../advanced_config/parameter_reference.md#VTE_TGT_TOUT) clear the validity flags, and exceeding [VTE_BTOUT](../advanced_config/parameter_reference.md#VTE_BTOUT) resets the affected estimator; it restarts as soon as the task remains active and enabled fusion input is available. +5. **Time alignment**: Use `time_since_meas_ms` on the `vte_aid_*` topic; it encodes `time_last_predict - timestamp_sample` in milliseconds. + For an immediately fused source it should stay within a few times the 20 ms estimator loop period. + Larger steady-state offsets, or a growing `history_steps` on `STATUS_FUSED_OOSM`, indicate delayed delivery or a missing time synchronisation step. +6. **Coordinate transforms**: Plot the raw measurement (e.g. `fiducial_marker_pos_report.rel_pos[0]`) together with its processed observation `vte_aid_fiducial_marker.observation`. + Ensure that there is no mistake in the rotation (`fiducial_marker_pos_report.q`), covariance handling, or offsets applied in the handler. +7. **Prediction inputs**: Use `vte_input` to track the downsampled acceleration and quaternion. + Compare them to `vehicle_attitude.q` and `vehicle_acceleration` to ensure the estimator sees the expected attitude, especially when diagnosing timestamp mismatches. + +### Troubleshooting Checklist + +Start by confirming that the estimator is running (`vision_target_estimator status`) and that the relevant `vte_aid_*` topic is present in the log. +If a topic is missing, verify that the upstream sensor message is publishing and that the fusion mask bit is enabled. + +:::tip +**Task activation**: Enable the debug bit in [VTE_TASK_MASK](../advanced_config/parameter_reference.md#VTE_TASK_MASK). +When the debug bit is set the estimator always runs, making it ideal for bench testing. +Enable **debug prints** (`PX4_DEBUG`). +::: + +| Symptom | Likely cause | Remedy | +| -------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Vehicle misses the pad or ignores target yaw | Mission land waypoint not set to precision mode or yaw alignment disabled | In QGroundControl set the land waypoint `Precision landing` field (or `MAV_CMD_NAV_LAND` `param2`) to Opportunistic/Required as described in [Precision landing missions](../advanced_features/precland.md#mission), and enable [PLD_YAW_EN](../advanced_config/parameter_reference.md#PLD_YAW_EN). In logs verify that `trajectory_setpoint.x/y` converge to `landing_target_pose.x_abs/y_abs` and that `trajectory_setpoint.yaw` follows `vte_orientation.yaw`. | +| Frequent innovation rejections | Incorrect noise floors, miscalibrated measurement variance, or timestamp skew | The NIS gate uses `test_ratio = innov^2 / S` with `S = H P H^T + R`, where `R` is the observation variance. If `R` is under-reported (measurement noise floor set too low), even small innovations exceed the gate and healthy data is rejected; if `R` is over-reported, even corrupted samples pass the gate and pollute the state. Read `fusion_status` to find which branch fires. `STATUS_REJECT_NIS` points at the noise floors and the [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) / [VTE_YAW_NIS_THRE](../advanced_config/parameter_reference.md#VTE_YAW_NIS_THRE) thresholds: for vision raise [VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE) or [VTE_EVA_NOISE](../advanced_config/parameter_reference.md#VTE_EVA_NOISE), for GNSS check [VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE) and [VTE_GPS_V_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_V_NOISE), and compare with the `observation_variance` field on the corresponding `vte_aid_*` topic. `STATUS_REJECT_TOO_OLD` / `STATUS_REJECT_TOO_NEW` point at latency or time-sync; `time_since_meas_ms` on the same `vte_aid_*` topic gives the latency directly. | +| Bias does not converge | No secondary position source, or the GNSS/vision agreement check is too strict for the available vision quality | Ensure vision fusion is enabled so the filter can observe GNSS bias. If GNSS is active before vision and the bias stays near zero, inspect the first GNSS/vision agreement window and tune [VTE_BIA_AVG_THR](../advanced_config/parameter_reference.md#VTE_BIA_AVG_THR) / [VTE_BIA_AVG_TOUT](../advanced_config/parameter_reference.md#VTE_BIA_AVG_TOUT). If vision is active first, expect the bias to appear on the first overlapping GNSS+vision sample rather than after an averaging phase. | +| Orientation estimate drifts | Missing yaw measurements or low NIS gate | Enable [VTE_YAW_EN](../advanced_config/parameter_reference.md#VTE_YAW_EN) and ensure vision yaw data is present. Increase [VTE_YAW_NIS_THRE](../advanced_config/parameter_reference.md#VTE_YAW_NIS_THRE) if legitimate data is being rejected. | +| `rel_pos_valid` toggles during descent | Position measurements arriving too slowly | Increase [VTE_TGT_TOUT](../advanced_config/parameter_reference.md#VTE_TGT_TOUT) or improve the measurement rate so updates remain inside [VTE_M_REC_TOUT](../advanced_config/parameter_reference.md#VTE_M_REC_TOUT). | +| No `vte_aid_*` topics in the log | Sensor not publishing or fusion mask disabled | Use `listener` on the raw sensor topic, confirm [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) includes the relevant bit, and rerun the test with the debug task active. | +| Estimator never starts | Task mask disabled or mission not requesting precision landing | Set [VTE_TASK_MASK](../advanced_config/parameter_reference.md#VTE_TASK_MASK)=1 (or 3 for continuous debugging) and verify that new measurements arrive with valid timestamps. | + +### Plot Examples + +The dashboards below provide hints on how to analyse the estimator: + +1. **Nominal behaviour**: how the position filter behaves, how the bias is initialised, what the innovations should look like, and how the orientation filter behaves. +2. **Out-of-sequence measurements (OOSM)**: how the filter handles delayed samples. +3. **Filter robustness**: what happens when vision drops out, when observations are noisy, and when an outlier slips through. +4. **Precision landing on a static target**: the controller actually lands on the pad. +5. **Moving target**: precision landing on a target in motion. + +:::tip +PlotJuggler (or the PX4 DevTools log viewer) is the easiest way to inspect the estimator as it allows you to group related signals into subplots that share the time axis. +::: + +:::tip +**Adding new plots**: the screenshots in this section use a fixed colour convention so the same family of signals is easy to recognise across dashboards. Re-use it when adding or updating plots: + +- Blue (`#1f77b4`): vision aid source (`vte_aid_fiducial_marker.*`) +- Red (`#d62728`): GNSS aid sources (`vte_aid_gps_pos_target.*`, `vte_aid_gps_pos_mission.*`, `vte_aid_gps_vel_uav.*`, `vte_aid_gps_vel_target.*`) +- Green (`#1ac938`): filter state output (`vte_position.*`) +- Purple (`#bd22a0`): controller-facing pose (`landing_target_pose.*`) +- Orange (`#ec8414`): EKF reference (`vehicle_local_position.*`) + +::: + +#### Nominal Behaviour + +**Estimator output and observation consistency**: Quick health check that the fused sensors agree with the estimated state during a real precision-landing approach using vision and the mission landing waypoint as the absolute reference. + +- **Top row (observations and state output)**: `vte_aid_fiducial_marker.observation[0]`, `vte_aid_gps_pos_mission.observation[0]`, `vte_position.rel_pos[0]`, and a custom trace `gps_pos_mission_bias_compensated = vte_aid_gps_pos_mission.observation[0] - vte_position.bias[0]`. + The bias itself is not plotted explicitly here, it is consumed to produce the compensated trace. + The filter follows vision most of the time because vision is the most precise source. +- **Second row (observation variances and posterior)**: `vte_aid_fiducial_marker.observation_variance[0]`, `vte_aid_gps_pos_mission.observation_variance[0]`, and `vte_position.cov_rel_pos[0]`. + At the vertical line, mission GNSS reports about $0.65\,m^2$, vision about $0.060\,m^2$, and the posterior `vte_position.cov_rel_pos` about $0.010\,m^2$, below either input. + This is the Kalman filter doing its job: combining independent measurements produces a posterior variance smaller than any of its inputs. +- **Third row (vehicle velocity)**: `vte_aid_gps_vel_uav.observation[0]` against the filter output `vte_position.vel_uav[0]`. + The filter trace stays smooth instead of copying the per-sample GNSS jitter, which confirms the velocity prediction and the GNSS velocity floor ([VTE_GPS_V_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_V_NOISE)) are tuned consistently. + +What this plot tells you: + +1. **Vision is the dominant source throughout the descent.** + The two observation variances never cross: vision is more precise than the mission GNSS at every altitude in this flight. + This is intentional because the GPS module on the vehicle is not RTK-grade and the reported variance reflects that. + If your receiver is more precise, retune [VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE) so the floor does not throw away its confidence. +2. **Higher altitudes have noisier vision.** + At the start of the descent vision is noisier and `vte_position.rel_pos[0]` deviates from individual vision samples. + The vertical red line marks the moment vision becomes very precise; from there the filter locks onto vision. +3. **A steady offset between the filter and the compensated GNSS is a tuning signal.** + During the last phase of the landing, a roughly 15 cm gap between `vte_position.rel_pos[0]` and `gps_pos_mission_bias_compensated` remains. + If a comparable gap is persistent in your logs, the bias state can be too tight to absorb the slow drift. + Loosen [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC) so the bias has more process noise, or lower [VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE) so GNSS pushes the bias harder. + Do not push either knob too far: a bias that moves too freely will drift when vision is lost, see [Vision occlusion during descent](#vision-occlusion-during-descent). +4. **End-of-flight vision loss.** + Vision stops detecting the target at the end of the trace and `vte_position.cov_rel_pos` starts to climb. + The corrected GNSS still points to the pad thanks to the latest bias value, so the vehicle keeps tracking it. + +![VTEST all observations](../../assets/vision_target_estimator/vtest_all_observations.png) + +**Initial bias averaging**: Shows the GNSS/vision bias low-pass filter while the estimator is in the GNSS-first averaging phase. +The plot was generated with [VTE_BIA_AVG_TOUT](../advanced_config/parameter_reference.md#VTE_BIA_AVG_TOUT)=10s and [VTE_BIA_AVG_THR](../advanced_config/parameter_reference.md#VTE_BIA_AVG_THR)=0.01 so the convergence threshold is never met and the full 10 s averaging window is exercised. + +- **Top row (raw vs filtered bias)**: `vte_bias_init_status.raw_bias` (per-axis raw GNSS minus vision delta) overlaid with `vte_bias_init_status.filtered_bias`. + The filtered bias is the LPF output (`tau = 0.3 s`); it should track the average of the raw samples and settle to a steady value as more vision observations arrive. +- **Second row (delta norm)**: `vte_bias_init_status.delta_norm` is the norm of consecutive raw-bias deltas which is the stability metric used by the convergence test. + With [VTE_BIA_AVG_THR](../advanced_config/parameter_reference.md#VTE_BIA_AVG_THR)=0.01 the filter would exit as soon as five consecutive deltas stay below 0.01 m and at least `2 * tau` has passed. + This threshold can be tuned based on the precision of the vision sensor. +- **Third row (state activation)**: `vte_position.bias` jumps from zero to the activated bias once averaging completes. + The reset uses `r = pos_rel_gnss(t_vision) - b_filtered`, `b = b_filtered`, so after activation `vte_position.rel_pos` aligns with the vision observation while `vte_position.bias` stores the GNSS offset. + +![VTEST bias averaging](../../assets/vision_target_estimator/vtest_bias_averaging.png) + +**Innovation consistency**: Confirms that every fused sensor produces zero-mean white-noise innovations. +Generated from the same real precision-landing flight as the dashboard above, with vision and the mission landing waypoint as the absolute reference. +The dashboard intentionally pairs a healthy aid source (vision) with a less well-tuned one (mission GNSS) so the two patterns can be compared side by side. + +- **Top row (vision innovations)**: `vte_aid_fiducial_marker.innovation[0..2]` on all three NED axes. + The innovations look like white noise centred on zero, which is the healthy signature. + They are slightly larger at higher altitudes where vision is noisier. +- **Second row (vision fusion status)**: `vte_aid_fiducial_marker.fusion_status[0..2]` stays at 2 (`STATUS_FUSED_OOSM`), so every sample is fused via the OOSM history replay. + The exact status code matters less than the fact that the sample is fused: `STATUS_FUSED_CURRENT` and `STATUS_FUSED_OOSM` are both healthy. +- **Third row (mission GNSS innovations)**: `vte_aid_gps_pos_mission.innovation[0..2]`. + The innovations are _not_ zero-mean white noise. + A persistent bias is visible (at the vertical red line, about $-0.18$ m in North, $+0.22$ m in East, and $+0.38$ m in Down), which means the bias state is too tight to absorb the slow drift between the GNSS frame and the vision frame, so the residual ends up in the innovation. + Loosen [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC) to let the bias track more of that drift, but only enough that the bias still stays stable when vision is lost (see [Vision occlusion during descent](#vision-occlusion-during-descent)). +- **Bottom row (mission GNSS fusion status)**: `vte_aid_gps_pos_mission.fusion_status[0..2]` is mostly `STATUS_FUSED_OOSM`, so the GNSS variance is wide enough to absorb the biased innovation through the NIS gate. + A short burst of `STATUS_REJECT_TOO_OLD` (status code 5) is also visible, meaning a GNSS sample arrived older than the OOSM buffer span (500 ms). + To investigate, plot `vte_aid_gps_pos_mission.time_since_meas_ms` next (the [OOSM under measurement delay](#oosm-under-measurement-delay) dashboard is the right template). + +![VTEST innovations](../../assets/vision_target_estimator/vtest_innovations.png) + +**Orientation filter**: Validates that yaw aiding stays smooth yet responsive without making the drone oscillate. +Generated from a real precision-landing flight; enable the orientation filter with [VTE_YAW_EN](../advanced_config/parameter_reference.md#VTE_YAW_EN) to log the same signals. + +- **Top row (yaw observation vs. state)**: `vte_aid_ev_yaw.observation` overlaid with `vte_orientation.yaw`. + The state should track the slow trend of the observation without copying its high-frequency jitter. +- **Second row (innovation, rad)**: `vte_aid_ev_yaw.innovation` should resemble white noise centred on zero. +- **Third row (innovation, deg)**: same signal converted to degrees, which is the unit most users intuitively reason about when setting [VTE_EVA_NOISE](../advanced_config/parameter_reference.md#VTE_EVA_NOISE). +- **Bottom row (test ratio)**: `vte_aid_ev_yaw.test_ratio` should stay below [VTE_YAW_NIS_THRE](../advanced_config/parameter_reference.md#VTE_YAW_NIS_THRE). + +If the yaw state follows the observation noise, the solution is the same as for position: raise the observation floor or stiffen the prediction. +See [When the state follows per-sample jitter](#when-the-state-follows-per-sample-jitter). + +![VTEST orientation](../../assets/vision_target_estimator/vtest_yaw.png) + +#### Out-of-Sequence Measurements + + + +**OOSM under measurement delay**: Shows that delayed measurements are still consumed correctly thanks to the OOSM history replay. +The plot was generated by delaying each simulated measurement by a uniform random value in [0, 500] ms before reaching the autopilot. + +- **Top two rows (measurement latency)**: `vte_aid_fiducial_marker.time_since_meas_ms` and `vte_position.history_steps`. + With a 0-500 ms delay we observe `time_since_meas_ms` ranging up to ~450 ms and `history_steps` proportional to it (`history_steps ≈ time_since_meas_ms / 20`, capped at the 25-sample buffer). +- **Third row (raw vs processed observation)**: `vte_position.rel_pos` overlaid with `vte_aid_fiducial_marker.observation`. + The processed observation lags the live state by roughly the measurement delay. + The OOSM allows fusing old data without forcing the live state to wait for it. +- **Fourth row (innovation)**: `vte_aid_fiducial_marker.innovation[0]` stays close to zero. + The innovation is computed against the predicted state at `t_meas`, not against the current live state, so the latency cancels out. + +A concrete sample from this run: at $t = 68.712$ s (vertical red line) the live state is `vte_position.rel_pos[0] = 0.026 m` and the measurement that just arrived is `vte_aid_fiducial_marker.observation[0] = 0.041 m`, with `time_since_meas_ms = 368 ms` and `history_steps = 21`. +Looking 368 ms back into the history at $t = 68.344$ s (blue vertical line), `vte_position.rel_pos[0] = 0.034 m`. +The OOSM innovation is computed against that historic prediction, giving $0.041 - 0.034 = 0.007$ m, which matches `vte_aid_fiducial_marker.innovation[0] = 0.007 m`. +Without OOSM the filter would compare the delayed measurement against the live state and produce $|0.026 - 0.041| = 0.015$ m instead which is roughly twice as large. +Under fast dynamics this kind of latency-induced error grows quickly and can repeatedly fail the chi-squared gate or pull the state in the wrong direction causing overshoots. + +![VTEST OOSM](../../assets/vision_target_estimator/vtest_oosm.png) + +#### Filter Robustness + + + +**Smoothing through bounded noise**: When the filter is well tuned, the state stays smooth even when individual observations are noisy. +The plot was generated by adding uniform random noise in the range $[-0.20, +0.20]$ m to both the vision (`vte_aid_fiducial_marker.observation`) and target-GNSS (`vte_aid_gps_pos_target.observation`) position observations on the x, y, z axes. +The injected noise stays within the NIS gate, so every sample is fused. + +- **Top row (x axis)**: `vte_aid_fiducial_marker.observation[0]` and `vte_aid_gps_pos_target.observation[0]` are visibly noisy, but `vte_position.rel_pos[0]` follows the underlying trend smoothly. +- **Bottom row (y axis)**: same behaviour on the lateral axis. + +The smoothness is the Kalman filter doing its job: each sample only contributes a fraction of its innovation to the state, weighted by the ratio of the predicted state variance to the observation variance. +As long as the noise stays inside the NIS gate, no rejection happens and the per-sample jitter averages out across many fusions. +If the state in your own logs follows the jitter instead of the trend, see [When the state follows per-sample jitter](#when-the-state-follows-per-sample-jitter) for the tuning recipe. + +![VTEST noisy measurements](../../assets/vision_target_estimator/vtest_noisy_measurements.png) + +**Rejecting a corrupted measurement**: Demonstrates how the estimator rejects a faulty measurement. +The plot was obtained by injecting during 6 seconds an additive bias uniformly sampled between -1 and 1 metre on the x-axis vision observation, while leaving the other axis untouched. +The healthy axes keep fusing as expected, while the corrupted axis repeatedly fails the NIS gate, which is what protects the state from following the outliers into the wrong solution. + +- **Top row (x observation)**: `vte_position.rel_pos[0]` follows `vte_aid_fiducial_marker.observation[0]` until the measurements are altered, at which point it does not follow the biased measurements. +- **Second row (x fusion status)**: `vte_aid_fiducial_marker.fusion_status[0]` flips to `STATUS_REJECT_NIS` whenever the observation disagrees with the filter prediction, confirming that the chi-squared gate is doing its job. +- **Third row (x test ratio)**: `vte_aid_fiducial_marker.test_ratio[1]` spikes and breaches [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) for the biased measurements. +- **Bottom row (y, z fusion status)**: `vte_aid_fiducial_marker.fusion_status` stays at 1: `STATUS_FUSED_CURRENT` or 2: `STATUS_FUSED_OOSM` in the y and z direction. + +What to do when you see this pattern in your own logs: + +1. Confirm that the rejection actually corresponds to a corrupted measurement and not a healthy sample being thrown out by an overly tight gate. + Compare the raw sensor topic (e.g. `fiducial_marker_pos_report`) with `vte_aid_fiducial_marker.observation` to be sure the input itself is bad rather than a frame transform or timestamp issue. +2. If the rejections are legitimate (the data really is corrupted), no parameter change is needed: the NIS gate is performing exactly the function it is there for. + Investigate the upstream sensor instead (camera exposure, marker visibility, attitude alignment). +3. If healthy samples are being rejected, the observation variance is the first thing to revisit. + As detailed in the [troubleshooting checklist](#troubleshooting-checklist) row on _Frequent innovation rejections_, an under-reported variance causes the NIS gate to fire on small innovations. Raise [VTE_EVP_NOISE](../advanced_config/parameter_reference.md#VTE_EVP_NOISE) (or [VTE_GPS_P_NOISE](../advanced_config/parameter_reference.md#VTE_GPS_P_NOISE) for GNSS) so the floor matches the actual sensor accuracy. +4. If both the upstream sensor and the variance look correct but legitimate outliers are still slipping through, loosen the gate slightly with [VTE_POS_NIS_THRE](../advanced_config/parameter_reference.md#VTE_POS_NIS_THRE) (defaults to $3.84$, i.e. a $5\%$ false-rejection rate; smaller values reject more aggressively, larger values are more permissive). + +![VTEST measurement not fused](../../assets/vision_target_estimator/vtest_meas_not_fused.png) + + + +**Vision dropout behaviour**: Illustrates what happens when vision is the only relative-position source and the marker is temporarily lost, and why fusing the vehicle GNSS velocity matters in practice. + +Both plots come from the same SITL scenario with a static target: the filter is well converged on vision, vision drops out for several seconds, then comes back. +The only difference between the two runs is whether [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bit 1 (vehicle GNSS velocity) is enabled. + +To make the full dropout visible, [VTE_BTOUT](../advanced_config/parameter_reference.md#VTE_BTOUT) was raised to 10 s for these runs (default 3 s) so the filter keeps predicting the state instead of resetting early. +On both plots the **vertical blue line** marks the moment vision is lost, and the **vertical red line** marks the estimator timeout 10 s later, when [VTE_BTOUT](../advanced_config/parameter_reference.md#VTE_BTOUT) expires and the filter is reset. + +The reason this case deserves its own plot is structural rather than a tuning issue. +The per-axis state $[r, v^{uav}, b]$ exposes $v^{uav}$ only through the $dt$ cross-term in the position prediction ($r_{k+1} = r_k - dt\thinspace v^{uav}_k - \tfrac{1}{2}\thinspace dt^2\thinspace a^{uav}$). Vision measures $r$ directly but does not touch $v^{uav}$. +While vision keeps arriving, the cross-coupling is enough to keep $v^{uav}$ close to truth indirectly. +When vision drops out that indirect anchor disappears and any small residual in $v^{uav}$ integrates straight into `vte_position.rel_pos`. + +**Plot 1, vision only**: [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) = vision only (bit 2). + +- **Top row (relative position)**: `vte_position.rel_pos[0]` overlaid with `vte_aid_fiducial_marker.observation[0]`. + The state stays close to the last vision sample for roughly 3 seconds after the dropout (the time it takes the residual $v^{uav}$ to integrate to a visible offset), then drifts by about 60 cm over the next 7 seconds. + When vision returns, the state snaps back by ~60 cm in a single innovation, which is the accumulated drift. +- **Bottom row (UAV velocity)**: `vte_position.vel_uav[0]`, `vehicle_local_position.vx`, and `sensor_gps.vel_n_m_s`. + The three traces agree while vision is fused. + As soon as vision drops, the filter estimate diverges by about 0.1 m/s from the EKF2 and GNSS references. + That ~0.1 m/s gap over 7 seconds is the position drift observed in the top row. + +![VTEST dropout, vision only](../../assets/vision_target_estimator/vtest_dropout_vision_only.png) + +**Plot 2, vision and vehicle GNSS velocity**: Same scenario, with [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bit 1 enabled. +Vehicle GNSS velocity is now fused as $z = v^{uav}$, which gives the velocity state a direct observation independent of vision. + +- **Top row (relative position)**: `vte_position.rel_pos[0]` properly follows the expected trend through the dropout. + The correction on vision recovery is small (in this run, from 0.26 m to 0.24 m, i.e. 2 cm), which is within the vision noise level rather than a real drift. +- **Bottom row (UAV velocity)**: `vte_position.vel_uav[0]` now tracks `vehicle_local_position.vx` and `sensor_gps.vel_n_m_s` for the full dropout, because GNSS velocity continues to constrain the state when no vision sample is available. + +![VTEST dropout, vision and GNSS velocity](../../assets/vision_target_estimator/vtest_dropout_vision_and_gnss_vel.png) + +What to take away from this comparison: + +1. With vision alone, the vehicle velocity state is only weakly observable, so the filter cannot estimate cleanly through gaps in vision. + Any additional source that touches the velocity state directly substantially extends how long the filter remains accurate without a vision sample. +2. The size of the relative-position jump on vision recovery is a useful diagnostic on its own: a large jump means the velocity state had drifted during the gap, not that the recovered vision sample is wrong. + + + +**Vision occlusion during descent (real flight)**: Demonstrates the central motivation behind multi-sensor fusion. +Once the bias between the absolute frame (here the mission landing waypoint) and the vision frame is estimated, the corrected GNSS observation still points at the pad after vision drops out, so the vehicle still lands precisely. +Generated by removing the vision fusion 5 m above the target during a real precision-landing flight. The drone landed at the center of the target despite the vision loss. + +The vertical blue line marks the moment vision is stopped, and the vertical red line marks touchdown. + +- **Top row (relative position and bias-compensated GNSS)**: `vte_aid_fiducial_marker.observation[0]`, `vte_aid_gps_pos_mission.observation[0]`, `vte_position.rel_pos[0]`, and the custom trace `gps_pos_mission_bias_compensated = vte_aid_gps_pos_mission.observation[0] - vte_position.bias[0]`. +- **Middle row (bias estimates)**: `vte_position.bias[0]` and `vte_position.bias[1]`. + The bias converges in roughly 6 seconds as the drone descends and vision becomes more precise. + Between the blue and red lines (8 seconds without vision), the deltas are about $-0.023$ m on x and $-0.008$ m on y, so the bias stays effectively stable. + By touchdown, the bias settles at about $-0.46$ m on x (north) and $+1.18$ m on y (east). + Without bias compensation the drone would have touched down 1.18 m east of the pad. +- **Bottom row (relative position covariance)**: `vte_position.cov_rel_pos[0]`. + The variance climbs by about $0.053\,m^2$ once vision is lost, corresponding to a 1-sigma growth of $\sqrt{0.053} \approx 0.23\,m$. + This is the filter reporting that the relative position is now less certain because no vision sample is constraining it. + +Why this matters: this is exactly the case multi-sensor fusion is meant to handle. +The mission landing waypoint reports the pad position with a metre-scale offset (the bias) that vision corrects. +Once the bias is observed, the corrected GNSS effectively becomes a second relative-position sensor for the remaining descent, including any segment where the marker temporarily disappears (motion blur, partial occlusion, or the marker leaving the camera field of view because it is too large at low altitude). +This is particularly important for large targets where the marker is expected to leave the camera frame in the final metres of descent. + +What to watch in your own logs: + +- The bias must already be settled before vision drops out. + If your dropout test shows the bias still moving when vision is lost, lower [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC). +- The post-dropout bias drift gives a direct read on how aggressively the bias is tuned. + The deltas above (a few centimetres over 8 seconds) match a well-tuned filter. + Larger drift means [VTE_BIAS_UNC](../advanced_config/parameter_reference.md#VTE_BIAS_UNC) is too loose; the filter overfit the bias to recent vision and now lets it walk away when vision is gone. + +![VTEST occlusion with GNSS mission](../../assets/vision_target_estimator/vtest_dropout_vision_and_gps_pos_mission.png) + +#### Precision Landing on a Static Target + +**Precision landing alignment**: Compares the precision-landing target with the vehicle position to confirm that the vehicle is actually navigating toward the target. +Generated from a real precision-landing flight. + +`landing_target_pose.x_abs` and `landing_target_pose.y_abs` are expressed in the local NED frame, which is fixed relative to the EKF2 origin. +For a static target both values should stay roughly constant for the duration of the approach: the estimator can refine the target position as new observations arrive, but big jumps or steady drift in this signal indicate noisy observations or an estimator that is following them too aggressively. +If you see this, [When the state follows per-sample jitter](#when-the-state-follows-per-sample-jitter) lists the right knobs. + +The plot is also useful for catching misconfigurations, for example [PLD_YAW_EN](../advanced_config/parameter_reference.md#PLD_YAW_EN) disabled when yaw alignment is expected. +If the controller struggles to follow even when the target signal is clean, review the [multicopter position tuning guide](../config_mc/pid_tuning_guide_multicopter.md). + +- **Top row (north alignment)**: `landing_target_pose.x_abs` against `vehicle_local_position.x`. + The curves should overlay once precision landing is triggered. +- **Second row (east alignment)**: `landing_target_pose.y_abs` against `vehicle_local_position.y`, same as north. +- **Third row (yaw alignment)**: `vte_orientation.yaw` should remain steady while `trajectory_setpoint.yaw` tracks it when [PLD_YAW_EN](../advanced_config/parameter_reference.md#PLD_YAW_EN) is enabled. +- **Bottom row (descent context)**: `vehicle_local_position.dist_bottom` shows when the final approach begins and how high above the pad the precision-landing alignment converged. + A higher convergence altitude is better. + +![VTEST precision landing](../../assets/vision_target_estimator/vtest_precland.png) + +#### Moving Target + +**Moving target precision landing**: Shows how the precision-landing controller projects the setpoint ahead of a moving target, how the lead converges onto the target as altitude drops, and how the moving-target states behave during the descent. +Generated from a real flight with a camera publishing target estimates at 10 Hz at $640 \times 480$ resolution; the firmware was built with `CONFIG_VTEST_MOVING=y`. + +- **Top row (axis along which the target moves)**: `vehicle_local_position.x`, `landing_target_pose.x_abs`, and `trajectory_setpoint.position[0]`. + The trajectory setpoint sits ahead of the estimated target position for most of the descent: that is the [PLD_MOVING_T_MAX](../advanced_config/parameter_reference.md#PLD_MOVING_T_MAX) lookahead leading the vehicle toward where the target will be at touchdown. + As altitude drops, the lookahead converges toward [PLD_MOVING_T_MIN](../advanced_config/parameter_reference.md#PLD_MOVING_T_MIN), the gap between setpoint and target closes, and the vehicle lands on the moving target rather than where it was at the start of the approach. +- **Second row (vision innovations)**: `vte_aid_fiducial_marker.innovation[0..2]` on all three NED axes. + They look like white noise centred on zero, which means the filter dynamics match the marker observations even as the target moves. +- **Third row (moving-target states)**: `vte_position.vel_target` and `vte_position.acc_target`. + These states only exist in the moving-target build and can be compared to the expected target velocity and acceleration. +- **Bottom row (descent context)**: `vehicle_local_position.dist_bottom` shows the distance to the ground and indicates the phase of the landing. + +What to take away: + +- **Add more sensors when you can.** + With vision only, the mission must end up somewhere the target is visible because the filter has no other observation of the target position. + Adding a target GNSS receiver gives the filter an absolute reference even before vision detects the marker: the filter converges faster, the vehicle can fly to a moving target before it is in view, and the risk of missing the target is reduced. + Any offset between the receiver and the marker is estimated by the bias state. +- **Add a direct target-velocity observation when you can.** + Target GNSS velocity ([VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) bit 4) is the only measurement that constrains $v^t$ directly. + Without it, target velocity is only weakly observable and the precision-landing lookahead becomes noisier. + This is the moving-target analogue of the static-target [Vision dropout behaviour](#vision-dropout-behaviour), where fusing vehicle GNSS velocity directly anchored the vehicle velocity state and removed the relative-position drift. +- **Publish target estimates at a high rate.** + With a 10 Hz camera the prediction has up to 100 ms of unconstrained motion between samples. + Raising the rate shrinks the predicted variance growth between fusions, makes the precision-landing setpoint smoother, and keeps `vte_aid_fiducial_marker.innovation` closer to zero through the descent. + +![VTEST moving target landing](../../assets/vision_target_estimator/vtest_moving_target.png) + +## Development and Debugging Tips + +- To print `PX4_DEBUG` statements from the module, launch SITL with `PX4_LOG_LEVEL=debug` (for example, `PX4_LOG_LEVEL=debug make px4_sitl_visionTargetEst`). + On hardware builds, compile with the debug configuration or enable the console log level before running tests so the additional diagnostics appear on the shell. +- Keep the estimator alive on the bench by setting [VTE_TASK_MASK](../advanced_config/parameter_reference.md#VTE_TASK_MASK)=3; the debug bit enables the continuous update of the position and orientation estimators (if enabled via [VTE_YAW_EN](../advanced_config/parameter_reference.md#VTE_YAW_EN) and [VTE_POS_EN](../advanced_config/parameter_reference.md#VTE_POS_EN)). +- Use shell helpers while iterating: `listener landing_target_pose`, `listener vte_bias_init_status`, `listener vte_aid_fiducial_marker` (or the relevant `vte_aid_*`) to inspect bias averaging and innovations, `listener vte_input 5` for prediction inputs, and `vision_target_estimator status` to ensure both filters are running. + +### SITL Simulation Pipeline + +The Gazebo Classic SITL setup produces both VTE inputs (`fiducial_marker_pos_report` and `target_gnss`) end-to-end, so the filter can be tested without real hardware. +This is also where you should inject extra noise or latency to stress-test the filter. + +The pipeline has four stages: + +1. **Aruco marker detection**: `arucoMarkerPlugin` (`Tools/simulation/gazebo-classic/sitl_gazebo-classic/src/gazebo_aruco_plugin.cpp`) runs on the simulated camera, detects the marker, and publishes a `TargetRelative` Gazebo message. + The reported standard deviations are hard-coded in `OnNewFrame()` (`set_std_x`, `set_std_y`, `set_std_z`, `set_yaw_std`); change them there to make the vision report more or less noise. + Marker visibility is controlled by `Tools/simulation/gazebo-classic/sitl_gazebo-classic/models/land_pad/land_pad.sdf`: the `` element sets the rendered Aruco square (the `` size is independent and just controls the physical pad). + The `` element on the `` block places the pad in the world; its last value is the pad yaw in radians (for example `0.0 0.0 0.06 0 0 0.7` rotates the pad by 0.7 rad, about 40 deg), which is the easiest way to exercise the orientation filter in SITL. +2. **Target GPS**: the `gps_target` model included from `land_pad.sdf` runs the standard Gazebo GPS plugin. + Tune the noise floors directly in `Tools/simulation/gazebo-classic/sitl_gazebo-classic/models/gps/gps.sdf` (the `` blocks for horizontal/vertical position and velocity). +3. **Mavlink bridge**: `gazebo_mavlink_interface.cpp` connects the two plugins to the autopilot. + `targetRelativeCallback()` packs the marker into a `TARGET_RELATIVE` mavlink message, and `TargetGpsCallback()` packs the GPS sample into `TARGET_ABSOLUTE`. +4. **PX4 side**: `SimulatorMavlink::handle_message_target_relative()` and `handle_message_target_absolute()` decode the mavlink messages back into `fiducial_marker_pos_report` and `target_gnss` (or directly into `landing_target_pose` when `VTE_EN=0`). + From there the filter sees exactly the same topics it would on real hardware, so anything you tune at the sensor level reproduces faithfully end to end. + +### Adding New Measurement Sources + +To integrate a new sensor: + +1. **Define a uORB message** that carries the measurement in either the vehicle body frame or NED, complete with variance estimates and timestamps. +2. **Extend the fusion mask**: add a bit to `SensorFusionMaskU` (`src/modules/vision_target_estimator/common.h`) and update the parameter definition for [VTE_AID_MASK](../advanced_config/parameter_reference.md#VTE_AID_MASK) (see also [sensor fusion selection](../advanced_features/vision_target_estimator.md#sensor-fusion-selection)) in `vision_target_estimator_params.yaml`. +3. **Augment observation enums**: append the new entry to the relevant `ObsType` enum (`VTEPosition.h` or `VTEOrientation.h`), update `ObsValidMaskU`, and update helper functions such as `hasNewNonGpsPositionSensorData()` and `selectInitialPosition()` if the measurement can provide a relative position. +4. **Subscribe and validate**: add a `uORB::Subscription` to the filter, check for finite values, and reject samples that are too old `isMeasUpdated` or timestamped in the future before marking the observation valid. +5. **Implement the handler** in `processObservations()`. + Convert the measurement into NED coordinates, populate `TargetObs::meas_xyz`, `meas_unc_xyz`, and the observation Jacobian (`meas_h_xyz` or `meas_h_theta`), and set the fusion-mask flag only after the data passes validation. +6. **Provide tunable noise**: declare a parameter (e.g. `VTE__NOISE`) and clamp it with `kMinObservationNoise` so the estimator never believes a measurement is perfect. +7. **Log the innovations**: add a publication member and ORB topic (see `vte_aid_fiducial_marker` for reference) so that logs include the innovation, variance, and `fusion_status` outcome for the new sensor. + Use the `FusionResult` returned by the filter to populate `fusion_status` so successes and rejections share the same status enum as the existing sources. +8. **Exercise SITL**: update the Gazebo (or other) simulation so that replay tests produce the new measurement. + This keeps CI coverage intact and provides a reference data set for tuning. +9. **Document the workflow**: update this deep dive and any setup how-tos so users know how to enable the new bit, calibrate the sensor, and interpret its logs. + +:::warning +**Timeout policy**: Every measurement must be time-aligned and checked so that stale data never reaches the update step. +Reject samples older than [VTE_M_REC_TOUT](../advanced_config/parameter_reference.md#VTE_M_REC_TOUT) (`isMeasRecent(hrt_abstime ts)`) and check `time_since_meas_ms` (and `fusion_status` for `STATUS_REJECT_TOO_OLD` / `STATUS_REJECT_TOO_NEW`) on the new `vte_aid_*` topic to confirm the sensor fits inside the estimator deadlines. +If observations are stored in cache, invalidate it inside `checkMeasurementInputs` when older than [VTE_M_UPD_TOUT](../advanced_config/parameter_reference.md#VTE_M_UPD_TOUT) (`isMeasUpdated(hrt_abstime ts)`). +::: + +### Adding New Tasks + +Add a new `VteTask` when the estimator should only run during a particular mission phase or flight-mode behavior, or when that behavior needs its own subscriptions, cached state, or completion logic. +Do not put that state back into `VisionTargetEst`; the whole point of the task layer is to keep the scheduler generic. + +Use this checklist: + +1. **Reserve a task-mask bit**: add the bit in `task_bits` (`tasks/VteTask.h`). + Those constants are the code-level source of truth for `VTE_TASK_MASK`. + Then update `vision_target_estimator_params.yaml` and the `VTE_TASK_MASK` + documentation so users can enable the new task. +2. **Create a task class**: add a new file under `src/modules/vision_target_estimator/tasks/` and derive it from `VteTask`. + Put all task-specific subscriptions and status flags in that class. +3. **Implement the interface deliberately**: `maskBit()` and `name()` identify the task, `pollStatus()` refreshes external state, `isReady()` exposes level-triggered readiness, and `isComplete()` reports self-termination. + Use `onActivate()` for one-shot state resets on task entry, and `onPosEstStart()` only when the position filter needs task-specific seeding such as a cached mission waypoint. +4. **Keep side effects out of readiness checks**: `pollStatus()` and `isReady()` are called every scheduler cycle while the task bit is enabled. + They should be cheap. + Transition-only work belongs in `onActivate()`. +5. **Register the task by priority**: add the task instance to `VisionTargetEst` and place it in `_task_registry` in descending priority order. + If multiple bits are enabled at the same time, the first ready task wins. +6. **Test lifecycle and cache behaviour**: extend `TEST_VTE_VisionTargetEst.cpp` with coverage for task activation completion, repeated starts, and any cached mission/context data that must survive estimator restarts within the same task. +7. **Document the operational meaning**: update the overview page, this deep dive, and any feature-specific docs so users understand when the new task is active and which `VTE_TASK_MASK` bit selects it. + +### SymForce-Generated Derivations + +The Kalman-filter math is not written by hand. +The symbolic state, prediction model, and covariance update are defined in Python and expanded into C++ by [SymForce](https://symforce.org/), so the C++ that runs on the autopilot always matches the model defined in `derivation.py`. + +**Source files (Python):** + +- `src/modules/vision_target_estimator/Position/vtest_derivation/derivation.py` for the position filter. +- `src/modules/vision_target_estimator/Orientation/vtest_derivation/derivation.py` for the yaw filter. + +**Generated outputs (C++ headers) used at runtime:** + +| Filter | Generated headers | +| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Положення | `state.h`, `predictState.h`, `predictCov.h`, `computeInnovCov.h`, `getTransitionMatrix.h`, `applyCorrection.h` | +| Орієнтація | `predictState.h`, `predictCov.h`, `getTransitionMatrix.h` (innovation computation and correction stay hand-written in `Orientation/KF_orientation.cpp` so yaw angles can be wrapped to $[-\pi, \pi]$) | + +**Build-time behavior:** + +- By default, CMake copies the committed pre-generated headers from `Position/vtest_derivation/generated/` into the build tree under `build//src/modules/vision_target_estimator/vtest_derivation/generated/`, and likewise for orientation. No SymForce install is required for the static build. +- `CONFIG_VTEST_MOVING=y` automatically sets `VTEST_SYMFORCE_GEN=ON` and requires SymForce in the Python environment so the 5-state moving-target headers are produced. +- Setting `-DVTEST_SYMFORCE_GEN=ON` manually regenerates both filters at configure time. + +The generated files are included from the build directory and must never be edited by hand. +To change the model, edit `derivation.py` and regenerate. + +#### Regenerating the symbolic model + +1. Configure CMake with `-DVTEST_SYMFORCE_GEN=ON` (automatic when `CONFIG_VTEST_MOVING=y`) and ensure SymForce is available in the Python environment. +2. Reconfigure with `cmake --fresh ...` so the custom command in `src/modules/vision_target_estimator/CMakeLists.txt` runs. + The outputs land in `build//src/modules/vision_target_estimator/vtest_derivation/generated/` (position) and `.../vte_orientation_derivation/generated/` (orientation). +3. To refresh the committed reference files, add `-DVTEST_UPDATE_COMMITTED_DERIVATION=ON` and commit the regenerated files in `Position/vtest_derivation/generated*/` once vetted. + +If the build fails during regeneration, inspect the CMake output for the SymForce invocation and rerun it manually inside `Position/vtest_derivation/` to catch Python errors. +After regenerating, rebuild the module to ensure the Jacobians and code stay in sync. + +## Runtime Performance on Hardware + +The estimator publishes per-section perf counters that can be read at any time on the shell: + +```sh +perf | grep "vision_target_estimator" +``` + +Each line reports event count, total elapsed time, average, min, max, and standard deviation in microseconds. +Six counters cover the vision target estimator: + +| Counter | What it covers | +| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `VTE cycle ` | One full work-queue of `VisionTargetEst::Run()`. Includes input subscription polls, task scheduling, and the dispatch into the position/orientation update steps. | +| `VTE cycle pos` | The position-filter part of the cycle (every prediction or measurement update for `VTEPosition`). | +| `VTE cycle yaw` | The orientation-filter part (same scope, for `VTEOrientation`). | +| `VTE prediction` | Just the Kalman prediction inside the position filter: `Predictstate` + `Predictcov` plus OOSM history. | +| `VTE update` | The full update step in the position filter, including measurement validation, frame transforms, fusion calls for every active aid source, and OOSM history maintenance. | +| `VTE fusion` | Just the per-axis fusion inside an update: innovation, gating, gain projection, and history correction. This is where OOSM scales with `history_steps`. | + +The numbers below come from a Pixhawk 6c running the static-target filter (`vte_aid_fiducial_marker` + `vte_aid_gps_pos_target` + `vte_aid_gps_vel_uav`) at the default 50 Hz cadence. + +**Baseline (no injected delay):** + +```text +VTE fusion: 20568 events, 297061us elapsed, 14.44us avg, min 1us max 88us 14.138us rms +VTE update: 6856 events, 318536us elapsed, 46.46us avg, min 3us max 163us 41.827us rms +VTE prediction: 18567 events, 105034us elapsed, 5.66us avg, min 5us max 52us 1.575us rms +VTE cycle : 92576 events, 1614647us elapsed, 17.44us avg, min 6us max 281us 27.204us rms +VTE cycle yaw: 18563 events, 125422us elapsed, 6.76us avg, min 4us max 60us 3.985us rms +VTE cycle pos: 18569 events, 803841us elapsed, 43.29us avg, min 22us max 253us 38.464us rms +``` + +**With `PX4_SIM_TARGET_MEASUREMENT_DELAY_MAX_MS=500` (≈ 480–500 ms latency, ~20 OOSM steps on average):** + +```text +VTE fusion: 31932 events, 1860362us elapsed, 58.26us avg, min 63us max 135us 23.520us rms +VTE update: 10644 events, 1894804us elapsed, 178.02us avg, min 4us max 301us 69.331us rms +VTE prediction: 29156 events, 166179us elapsed, 5.70us avg, min 5us max 52us 1.614us rms +VTE cycle : 163952 events, 4215369us elapsed, 25.71us avg, min 6us max 511us 57.621us rms +VTE cycle yaw: 32850 events, 274433us elapsed, 8.35us avg, min 1us max 86us 7.852us rms +VTE cycle pos: 32861 events, 2703185us elapsed, 82.26us avg, min 10us max 479us 96.704us rms +``` + +How to read these: + +- **`VTE prediction` is essentially constant** (~5.7 us). + Predictions do a fixed amount of math regardless of measurement latency, which is what we expect. +- **`VTE fusion` jumps from ~14 us to ~58 us** (≈ 4× increase). + This is the OOSM cost: the projection step touches every history sample after `t_meas`, so the runtime grows roughly linearly in `history_steps`. + With ~20 history steps the per-fusion cost is still well under 100 us on average. +- **`VTE update` follows the same trend** (~46 us → ~178 us) since it wraps multiple fusion calls. + The worst-case (~300 us) corresponds to a cycle where every aid source hits the OOSM path. +- **`VTE cycle pos` (~43 us → ~82 us)** confirms the same behaviour at the cycle level. + A full position cycle still completes in well under 0.5 ms even in the worst case, which is small relative to the 20 ms (50 Hz) loop budget. +- **`VTE cycle ` and `VTE cycle yaw` see only minor changes**: these counters are dominated by lightweight scheduling and yaw-only fusion that does not involve OOSM history projection. + +A few things to keep in mind when interpreting your own numbers: + +- The total `VTE cycle ` event count is roughly five times the `VTE cycle pos` count because `Run()` is woken on every input topic update, but the position estimator only ticks at 50 Hz. +- `history_steps` saturates at the buffer depth (`kOosmHistorySize = 25`). + If you see it pinned at 25 in the logs, the measurement is older than 500 ms and is being rejected as `STATUS_REJECT_TOO_OLD` rather than fused. + +Even with ~500 ms induced latency on every measurement the estimator stays inside its 20 ms loop budget on a Pixhawk 6c. + +## Unit Test Suites + +- `TEST_VTE_KF_position`: Kalman filter math for the position state (prediction, NIS gating, bias-aware H, OOSM gold standard). + Static model (state size 3) by default, moving-target tests (state size 5) build only when `CONFIG_VTEST_MOVING` is enabled. +- `TEST_VTE_KF_orientation`: Kalman filter math for yaw/yaw-rate (wrap logic, process noise, dt edge cases, covariance symmetry). +- `TEST_VTE_VTEPosition`: Module logic for vision/GNSS fusion, offsets, interpolation, ordering, and uORB innovation topics (static + moving gated by `CONFIG_VTEST_MOVING`). +- `TEST_VTE_VTEOrientation`: Module logic for yaw fusion, noise models, resets, and OOSM handling. +- `TEST_VTE_VTEOosm`: Generic OOSM manager behavior. + +Run locally: + +```sh +make tests TESTFILTER=TEST_VTE* +``` diff --git a/docs/uk/airframes/airframe_reference.md b/docs/uk/airframes/airframe_reference.md index 84f6e64533..61fa23b647 100644 --- a/docs/uk/airframes/airframe_reference.md +++ b/docs/uk/airframes/airframe_reference.md @@ -611,6 +611,10 @@ div.frame_variant td, div.frame_variant th { Aion Robotics R1 UGV Підтримувач: John Doe <john@example.com>

SYS_AUTOSTART = 50001

+ + Hiwonder Tracked + Підтримувач: John Doe <john@example.com>

SYS_AUTOSTART = 50002

+ Generic Rover Ackermann Підтримувач: John Doe <john@example.com>

SYS_AUTOSTART = 51000

@@ -623,10 +627,18 @@ div.frame_variant td, div.frame_variant th { NXP B3RB Rover Ackermann Підтримувач: John Doe <john@example.com>

SYS_AUTOSTART = 51002

+ + Hiwonder Ackermann + Підтримувач: John Doe <john@example.com>

SYS_AUTOSTART = 51003

+ Generic Rover Mecanum Підтримувач: John Doe <john@example.com>

SYS_AUTOSTART = 52000

+ + Hiwonder Mecanum + Підтримувач: John Doe <john@example.com>

SYS_AUTOSTART = 52001

+ diff --git a/docs/uk/config_mc/filter_tuning.md b/docs/uk/config_mc/filter_tuning.md index c1c961cf4e..3be4739a38 100644 --- a/docs/uk/config_mc/filter_tuning.md +++ b/docs/uk/config_mc/filter_tuning.md @@ -76,13 +76,13 @@ You might have to adjust the per-motor pole count (`DSHOT_MOT_POL1`–`DSHOT_MOT The following parameters should be set to enable and configure dynamic notch filters: -| Параметр | Опис | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| [IMU_GYRO_DNF_EN](../advanced_config/parameter_reference.md#IMU_GYRO_DNF_EN) | Enable IMU gyro dynamic notch filtering. `0`: ESC RPM, `1`: Onboard FFT. | -| [IMU_GYRO_FFT_EN](../advanced_config/parameter_reference.md#IMU_GYRO_FFT_EN) | Enable onboard FFT (required if `IMU_GYRO_DNF_EN` is set to `1`). | -| [IMU_GYRO_DNF_MIN](../advanced_config/parameter_reference.md#IMU_GYRO_DNF_MIN) | Minimum dynamic notch frequency in Hz. | -| [IMU_GYRO_DNF_BW](../advanced_config/parameter_reference.md#IMU_GYRO_DNF_BW) | Bandwidth for each notch filter in Hz. | -| [IMU_GYRO_DNF_HMC](../advanced_config/parameter_reference.md#IMU_GYRO_NF0_BW) | Number of harmonics to filter. | +| Параметр | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [IMU_GYRO_DNF_EN](../advanced_config/parameter_reference.md#IMU_GYRO_DNF_EN) | Enable IMU gyro dynamic notch filtering (bitmask). Bit `0`: ESC RPM, Bit `1`: Onboard FFT. | +| [IMU_GYRO_FFT_EN](../advanced_config/parameter_reference.md#IMU_GYRO_FFT_EN) | Enable onboard FFT (required if bit `1` of `IMU_GYRO_DNF_EN` is set). | +| [IMU_GYRO_DNF_MIN](../advanced_config/parameter_reference.md#IMU_GYRO_DNF_MIN) | Minimum dynamic notch frequency in Hz. | +| [IMU_GYRO_DNF_BW](../advanced_config/parameter_reference.md#IMU_GYRO_DNF_BW) | Bandwidth for each notch filter in Hz. | +| [IMU_GYRO_DNF_HMC](../advanced_config/parameter_reference.md#IMU_GYRO_NF0_BW) | Number of harmonics to filter. | ### Low-pass Filter diff --git a/docs/uk/flight_controller/ark_v6s.md b/docs/uk/flight_controller/ark_v6s.md new file mode 100644 index 0000000000..89898576e1 --- /dev/null +++ b/docs/uk/flight_controller/ark_v6s.md @@ -0,0 +1,86 @@ +# ARK Electronics ARKV6S + +:::warning +PX4 не розробляє цей (або будь-який інший) автопілот. +Contact the [manufacturer](https://arkelectron.com/contact-us/) for hardware support or compliance issues. +::: + +The USA-built [ARKV6S](https://arkelectron.gitbook.io/ark-documentation/flight-controllers/arkv6s) flight controller is a low-cost, single-IMU variant of the [ARKV6X](../flight_controller/ark_v6x.md), based on the [FMUV6X and Pixhawk Autopilot Bus open source standards](https://github.com/pixhawk/Pixhawk-Standards). + +The Pixhawk Autopilot Bus (PAB) form factor enables the ARKV6S to be used on any [PAB-compatible carrier board](../flight_controller/pixhawk_autopilot_bus.md), such as the [ARK Pixhawk Autopilot Bus Carrier](../flight_controller/ark_pab.md). + +![ARKV6S Main Photo](../../assets/flight_controller/arkv6s/ark_v6s_front.jpg) + +:::info +This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md). +::: + +## Where To Buy {#store} + +Order From [Ark Electronics](https://arkelectron.com/product/arkv6s/) (US) + +## Датчики + +- [Invensense IIM-42653 Industrial IMU](https://invensense.tdk.com/products/smartindustrial/iim-42653/) +- [Bosch BMP390 Barometer](https://www.bosch-sensortec.com/products/environmental-sensors/pressure-sensors/bmp390/) +- [ST IIS2MDC Magnetometer](https://www.st.com/en/mems-and-sensors/iis2mdc.html) + +## Мікропроцесор + +- [STM32H743IIK6 MCU](https://www.st.com/en/microcontrollers-microprocessors/stm32h743ii.html) + - 480MHz + - 2MB Flash + - 1MB RAM + +## Інші характеристики + +- FRAM +- [Pixhawk Autopilot Bus (PAB) Form Factor](https://github.com/pixhawk/Pixhawk-Standards/blob/master/DS-010%20Pixhawk%20Autopilot%20Bus%20Standard.pdf) +- LED індикатори +- Слот MicroSD +- USA Built +- Розроблений з нагрівачем потужністю 1 Вт. Підтримує датчики в теплі в екстремальних умовах + +## Вимоги до живлення + +- 5V +- 500 мА + - 300 мА для основної системи + - 200 мА для нагрівача + +## Додаткова інформація + +- Вага: 5.0 g +- Розміри: 3,6 x 2,9 x 0,5 см + +## Схема розташування виводів + +For pinout of the ARKV6S see the [DS-10 Pixhawk Autopilot Bus Standard](https://github.com/pixhawk/Pixhawk-Standards/blob/master/DS-010%20Pixhawk%20Autopilot%20Bus%20Standard.pdf) + +## Налаштування послідовного порту + +| UART | Пристрій | Порт | +| ------ | ---------- | ------------------------------- | +| USART1 | /dev/ttyS0 | GPS | +| USART2 | /dev/ttyS1 | TELEM3 | +| USART3 | /dev/ttyS2 | Debug Console | +| UART4 | /dev/ttyS3 | UART4 & I2C | +| UART5 | /dev/ttyS4 | TELEM2 | +| USART6 | /dev/ttyS5 | PX4IO/RC | +| UART7 | /dev/ttyS6 | TELEM1 | +| UART8 | /dev/ttyS7 | GPS2 | + +:::info +The mapping above applies to the running PX4 firmware. +The ARKV6S bootloader enables only `UART7` (TELEM1), so when flashing firmware over UART with [`px4_uploader.py`](https://github.com/PX4/PX4-Autopilot/blob/main/Tools/px4_uploader.py) you must connect to the `TELEM1` port — no other UART will respond in bootloader mode. +::: + +## Збірка прошивки + +```sh +make ark_fmu-v6s_default +``` + +## Дивіться також + +- [ARK Electronics ARKV6S](https://arkelectron.gitbook.io/ark-documentation/flight-controllers/arkv6s) (ARK Docs) diff --git a/docs/uk/flight_controller/ark_v6x.md b/docs/uk/flight_controller/ark_v6x.md index def83e76f8..c4b0819fda 100644 --- a/docs/uk/flight_controller/ark_v6x.md +++ b/docs/uk/flight_controller/ark_v6x.md @@ -32,7 +32,7 @@ Order From [Ark Electronics](https://arkelectron.com/product/arkv6x/) (US) - [STM32H743IIK6 MCU](https://www.st.com/en/microcontrollers-microprocessors/stm32h743ii.html) - 480MHz - 2MB Flash - - 1MB Flash + - 1MB RAM ## Інші характеристики @@ -72,6 +72,10 @@ For pinout of the ARKV6X see the [DS-10 Pixhawk Autopilot Bus Standard](https:// | UART7 | /dev/ttyS6 | TELEM1 | | UART8 | /dev/ttyS7 | GPS2 | +:::info +The mapping above applies to the running PX4 firmware. The ARKV6X bootloader enables only `UART7` (TELEM1), so when flashing firmware over UART with [`px4_uploader.py`](https://github.com/PX4/PX4-Autopilot/blob/main/Tools/px4_uploader.py) you must connect to the **TELEM1** port — no other UART will respond in bootloader mode. +::: + ## Збірка прошивки ```sh diff --git a/docs/uk/flight_controller/autopilot_manufacturer_supported.md b/docs/uk/flight_controller/autopilot_manufacturer_supported.md index e61718d652..d3f47086d2 100644 --- a/docs/uk/flight_controller/autopilot_manufacturer_supported.md +++ b/docs/uk/flight_controller/autopilot_manufacturer_supported.md @@ -16,6 +16,7 @@ This category includes boards that are not fully compliant with the pixhawk stan - [AirMind MindPX](../flight_controller/mindpx.md) - [AirMind MindRacer](../flight_controller/mindracer.md) - [ARK Electronics ARKV6X](../flight_controller/ark_v6x.md) (and [ARK Electronics Pixhawk Autopilot Bus Carrier](../flight_controller/ark_pab.md)) +- [ARK Electronics ARKV6S](../flight_controller/ark_v6s.md) - [ARK FPV Flight Controller](../flight_controller/ark_fpv.md) - [ARK Pi6X Flow Flight Controller](../flight_controller/ark_pi6x.md) - [CORVON 743v1](../flight_controller/corvon_743v1.md) diff --git a/docs/uk/flight_controller/pixhawk_autopilot_bus.md b/docs/uk/flight_controller/pixhawk_autopilot_bus.md index 368e2a24cf..cb1366f31d 100644 --- a/docs/uk/flight_controller/pixhawk_autopilot_bus.md +++ b/docs/uk/flight_controller/pixhawk_autopilot_bus.md @@ -22,6 +22,7 @@ The "Mechanical Design" section of the standard provides specific recommendation ## PAB сумісні політні контролери - [ARK Electronics ARKV6X](../flight_controller/ark_v6x.md) +- [ARK Electronics ARKV6S](../flight_controller/ark_v6s.md) - [Holybro Pixhawk 5X (FMUv5X)](../flight_controller/pixhawk5x.md) - [Holybro Pixhawk 6X (FMUv6X)](../flight_controller/pixhawk6x.md) - [CUAV Pixhawk V6X (FMUv6X)](../flight_controller/cuav_pixhawk_v6x.md) diff --git a/docs/uk/flight_modes_fw/guided_course.md b/docs/uk/flight_modes_fw/guided_course.md new file mode 100644 index 0000000000..8ff5e7fa04 --- /dev/null +++ b/docs/uk/flight_modes_fw/guided_course.md @@ -0,0 +1,74 @@ +# Guided Course Mode (Fixed-Wing) + + + +_Guided Course mode_ maintains a constant ground track (course), altitude, and airspeed without any manual stick input. +The operator controls the vehicle entirely via [GCS commands](#in-flight-commands), making it the guided equivalent of [Position mode](../flight_modes_fw/position.md). + +:::tip +This mode is suited to situations where an operator wants to guide a fixed-wing vehicle from a GCS without manual control. +::: + +::: info + +- Requires a horizontal velocity estimate (e.g. GPS/dead-reckoning). + Course commands will be rejected if the velocity estimate is unavailable. +- Manual control input is ignored. + + + +::: + +## Загальний огляд + +On activation, the vehicle captures its current velocity over ground vector as the initial course bearing and holds altitude and airspeed from the moment of activation. +The vehicle then flies that course indefinitely until the operator issues a new command. + +There is no waypoint sequencing or autonomous path planning: the GCS guides the vehicle in real time by sending individual commands. + +## Supported Commands + +The following commands are accepted while in Guided Course mode: + +| Команда | Effect | +| ------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [MAV\_CMD\_GUIDED\_CHANGE\_HEADING][MAV_CMD_GUIDED_CHANGE_HEADING] | Set a new course bearing (degrees, 0 = north) with `HEADING_TYPE = 0`. Rejected if horizontal velocity estimate is unavailable. | +| [MAV\_CMD\_DO\_CHANGE\_ALTITUDE][MAV_CMD_DO_CHANGE_ALTITUDE] | Set a new target altitude (AMSL, metres). | +| [MAV\_CMD\_DO\_CHANGE\_SPEED][MAV_CMD_DO_CHANGE_SPEED] | Set a new equivalent airspeed via param2 (m/s). If param2 ≤ 0, the default cruise speed is restored. | + +[MAV_CMD_GUIDED_CHANGE_HEADING]: https://mavlink.io/en/messages/common.html#MAV_CMD_GUIDED_CHANGE_HEADING +[MAV_CMD_DO_CHANGE_ALTITUDE]: https://mavlink.io/en/messages/common.html#MAV_CMD_DO_CHANGE_ALTITUDE +[MAV_CMD_DO_CHANGE_SPEED]: https://mavlink.io/en/messages/common.html#MAV_CMD_DO_CHANGE_SPEED + +## Технічний опис + +The navigator mode (`course.cpp`) sets a position setpoint with `course` (ground track bearing) and `alt` fields populated, and `yaw = NAN`. + +The fixed-wing mode manager (`FixedWingModeManager`) detects the finite `course` field and bypasses normal waypoint sequencing, calling `navigateBearing()` from the directional guidance library to compute lateral acceleration and course setpoints. +Longitudinal control targets the altitude and airspeed from the setpoint. + +## Failsafe Behaviour + +Guided Course is classified as an `AUTO` mode for failsafe purposes. +The following failsafe exception parameters apply: + +| Параметр | Bit | Effect when set | +| -------------------------------------------------------------------------------------------------------------------- | --------------------------------- | ----------------------------------------------------------------- | +| [COM_RCL_EXCEPT](../advanced_config/parameter_reference.md#COM_RCL_EXCEPT) | 1 (Auto modes) | RC loss does not trigger a failsafe in this mode. | +| [COM_DLL_EXCEPT](../advanced_config/parameter_reference.md#COM_DLL_EXCEPT) | 1 (Auto modes) | GCS connection loss does not trigger a failsafe. | + +:::warning +Since Guided Course is driven entirely by GCS commands, operators should carefully consider the datalink loss failsafe setting (`COM_DLL_EXCEPT` bit 1). +If the GCS link drops, the vehicle will continue on its last commanded course indefinitely. +It is strongly recommended to either leave the datalink failsafe active or ensure a secondary safety mechanism (e.g. geofence, battery failsafe) is in place. +::: + +## Параметри + +| Параметр | Опис | +| -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| [FW_AIRSPD_TRIM](../advanced_config/parameter_reference.md#FW_AIRSPD_TRIM) | Default cruise airspeed used on activation and when `MAV_CMD_DO_CHANGE_SPEED` is sent with value ≤ 0. | +| [FW_AIRSPD_MIN](../advanced_config/parameter_reference.md#FW_AIRSPD_MIN) | Minimum airspeed. Commanded airspeed is clamped to this value. | +| [FW_AIRSPD_MAX](../advanced_config/parameter_reference.md#FW_AIRSPD_MAX) | Maximum airspeed. Commanded airspeed is clamped to this value. | +| [COM_RCL_EXCEPT](../advanced_config/parameter_reference.md#COM_RCL_EXCEPT) | RC loss failsafe exceptions bitmask. Bit 1 covers all auto modes including Guided Course. | +| [COM_DLL_EXCEPT](../advanced_config/parameter_reference.md#COM_DLL_EXCEPT) | Datalink loss failsafe exceptions bitmask. Bit 1 covers all auto modes including Guided Course. | diff --git a/docs/uk/flight_modes_fw/index.md b/docs/uk/flight_modes_fw/index.md index 3a0799a7de..11dbb26f0f 100644 --- a/docs/uk/flight_modes_fw/index.md +++ b/docs/uk/flight_modes_fw/index.md @@ -39,6 +39,8 @@ Manual-Acrobatic - [Утримання](../flight_modes_fw/hold.md) — Літак кружляє навколо позиції утримання GPS на поточній висоті. Режим може бути використаний для призупинення місії або для допомоги у відновленні контролю над транспортним засобом у випадку надзвичайної ситуації. Це може бути активовано з попередньо налаштованим RC вимикачем або кнопкою паузи QGroundControl. +- [Guided Course](../flight_modes_fw/guided_course.md) — Vehicle maintains a constant ground track, altitude, and airspeed. + The operator commands course, altitude, and airspeed changes in real time from the GCS. Manual stick input is ignored. - [Повернення](../flight_modes_fw/return.md) — Транспортний засіб летить по чіткій траєкторії для посадки в безпечному місці. За замовчуванням призначенням є місіонний зразок посадки. Режим можна активувати вручну (через попередньо програмований RC перемикач) або автоматично (тобто в разі спрацювання аварійного режиму). diff --git a/docs/uk/middleware/dds_topics.md b/docs/uk/middleware/dds_topics.md index 844213a922..3f0a019a66 100644 --- a/docs/uk/middleware/dds_topics.md +++ b/docs/uk/middleware/dds_topics.md @@ -96,210 +96,220 @@ They are not build into the module, and hence are neither published or subscribe :::details See messages -- [PwmInput](../msg_docs/PwmInput.md) -- [GeofenceResult](../msg_docs/GeofenceResult.md) -- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md) -- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md) -- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md) -- [SensorGyroFft](../msg_docs/SensorGyroFft.md) -- [Cpuload](../msg_docs/Cpuload.md) -- [GeneratorStatus](../msg_docs/GeneratorStatus.md) -- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md) -- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md) -- [IrlockReport](../msg_docs/IrlockReport.md) -- [DatamanResponse](../msg_docs/DatamanResponse.md) -- [EstimatorBias](../msg_docs/EstimatorBias.md) -- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md) -- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md) -- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md) -- [EventV0](../msg_docs/EventV0.md) -- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md) -- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md) -- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md) -- [Airspeed](../msg_docs/Airspeed.md) -- [LoggerStatus](../msg_docs/LoggerStatus.md) -- [Rpm](../msg_docs/Rpm.md) -- [AirspeedWind](../msg_docs/AirspeedWind.md) -- [EscEepromWrite](../msg_docs/EscEepromWrite.md) -- [MavlinkLog](../msg_docs/MavlinkLog.md) -- [Ping](../msg_docs/Ping.md) -- [GpioIn](../msg_docs/GpioIn.md) -- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md) -- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md) -- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md) -- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md) -- [ActuatorArmed](../msg_docs/ActuatorArmed.md) -- [GpsInjectData](../msg_docs/GpsInjectData.md) -- [RangingBeacon](../msg_docs/RangingBeacon.md) -- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md) -- [OrbitStatus](../msg_docs/OrbitStatus.md) -- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md) -- [DatamanRequest](../msg_docs/DatamanRequest.md) -- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md) -- [GpioConfig](../msg_docs/GpioConfig.md) -- [Mission](../msg_docs/Mission.md) -- [HeaterStatus](../msg_docs/HeaterStatus.md) -- [RcParameterMap](../msg_docs/RcParameterMap.md) -- [TaskStackInfo](../msg_docs/TaskStackInfo.md) -- [CellularStatus](../msg_docs/CellularStatus.md) -- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md) -- [OrbTestLarge](../msg_docs/OrbTestLarge.md) -- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md) -- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md) -- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md) -- [CameraStatus](../msg_docs/CameraStatus.md) -- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md) -- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md) -- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md) -- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md) -- [LandingGearWheel](../msg_docs/LandingGearWheel.md) -- [Px4ioStatus](../msg_docs/Px4ioStatus.md) -- [SatelliteInfo](../msg_docs/SatelliteInfo.md) -- [PowerMonitor](../msg_docs/PowerMonitor.md) -- [UlogStreamAck](../msg_docs/UlogStreamAck.md) -- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md) -- [SensorGyro](../msg_docs/SensorGyro.md) -- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md) -- [SensorMag](../msg_docs/SensorMag.md) -- [EstimatorStatus](../msg_docs/EstimatorStatus.md) -- [SystemPower](../msg_docs/SystemPower.md) -- [LedControl](../msg_docs/LedControl.md) -- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md) -- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md) -- [FuelTankStatus](../msg_docs/FuelTankStatus.md) -- [EscReport](../msg_docs/EscReport.md) -- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md) -- [GpsDump](../msg_docs/GpsDump.md) -- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md) -- [ButtonEvent](../msg_docs/ButtonEvent.md) -- [SensorsStatus](../msg_docs/SensorsStatus.md) -- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md) -- [EstimatorStates](../msg_docs/EstimatorStates.md) -- [QshellReq](../msg_docs/QshellReq.md) -- [DebugValue](../msg_docs/DebugValue.md) -- [ParameterUpdate](../msg_docs/ParameterUpdate.md) -- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md) -- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md) -- [RaptorInput](../msg_docs/RaptorInput.md) -- [ActuatorTest](../msg_docs/ActuatorTest.md) -- [GpioOut](../msg_docs/GpioOut.md) -- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md) -- [OrbTest](../msg_docs/OrbTest.md) -- [UlogStream](../msg_docs/UlogStream.md) -- [Event](../msg_docs/Event.md) -- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md) -- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md) -- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md) -- [VehicleStatusV2](../msg_docs/VehicleStatusV2.md) -- [SensorBaro](../msg_docs/SensorBaro.md) -- [CameraTrigger](../msg_docs/CameraTrigger.md) -- [SensorAirflow](../msg_docs/SensorAirflow.md) -- [AdcReport](../msg_docs/AdcReport.md) -- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md) -- [NavigatorStatus](../msg_docs/NavigatorStatus.md) -- [SensorTemp](../msg_docs/SensorTemp.md) -- [EstimatorFusionControl](../msg_docs/EstimatorFusionControl.md) -- [VehicleRoi](../msg_docs/VehicleRoi.md) -- [InputRc](../msg_docs/InputRc.md) -- [DeviceInformation](../msg_docs/DeviceInformation.md) -- [PositionSetpoint](../msg_docs/PositionSetpoint.md) -- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md) -- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md) -- [LandingTargetPose](../msg_docs/LandingTargetPose.md) -- [SensorUwb](../msg_docs/SensorUwb.md) -- [WheelEncoders](../msg_docs/WheelEncoders.md) -- [VehicleImu](../msg_docs/VehicleImu.md) -- [GainCompression](../msg_docs/GainCompression.md) -- [MountOrientation](../msg_docs/MountOrientation.md) -- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md) -- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md) -- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md) -- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md) -- [TakeoffStatus](../msg_docs/TakeoffStatus.md) -- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md) -- [CameraCapture](../msg_docs/CameraCapture.md) -- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md) -- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md) -- [Vtx](../msg_docs/Vtx.md) -- [TecsStatus](../msg_docs/TecsStatus.md) -- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md) -- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md) -- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md) -- [DebugVect](../msg_docs/DebugVect.md) -- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md) -- [DebugKeyValue](../msg_docs/DebugKeyValue.md) -- [GimbalControls](../msg_docs/GimbalControls.md) -- [FigureEightStatus](../msg_docs/FigureEightStatus.md) -- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md) -- [GpioRequest](../msg_docs/GpioRequest.md) -- [RtlStatus](../msg_docs/RtlStatus.md) -- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md) -- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md) -- [DebugArray](../msg_docs/DebugArray.md) -- [RoverRateStatus](../msg_docs/RoverRateStatus.md) -- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md) -- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md) -- [SensorSelection](../msg_docs/SensorSelection.md) -- [SensorCorrection](../msg_docs/SensorCorrection.md) -- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md) -- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md) -- [PowerButtonState](../msg_docs/PowerButtonState.md) -- [RadioStatus](../msg_docs/RadioStatus.md) -- [HomePositionV0](../msg_docs/HomePositionV0.md) -- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md) -- [MagWorkerData](../msg_docs/MagWorkerData.md) -- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md) -- [OrbTestMedium](../msg_docs/OrbTestMedium.md) -- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md) -- [VehicleConstraints](../msg_docs/VehicleConstraints.md) -- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md) -- [RcChannels](../msg_docs/RcChannels.md) -- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md) -- [ActionRequest](../msg_docs/ActionRequest.md) -- [HealthReport](../msg_docs/HealthReport.md) -- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md) -- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md) -- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md) -- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md) -- [PpsCapture](../msg_docs/PpsCapture.md) -- [QshellRetval](../msg_docs/QshellRetval.md) -- [BatteryInfo](../msg_docs/BatteryInfo.md) -- [RegisterExtComponentRequestV1](../msg_docs/RegisterExtComponentRequestV1.md) -- [EscStatus](../msg_docs/EscStatus.md) -- [SensorHygrometer](../msg_docs/SensorHygrometer.md) -- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md) -- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md) -- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md) -- [DifferentialPressure](../msg_docs/DifferentialPressure.md) -- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md) -- [TuneControl](../msg_docs/TuneControl.md) -- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md) -- [VelocityLimits](../msg_docs/VelocityLimits.md) -- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md) -- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md) -- [MissionResult](../msg_docs/MissionResult.md) -- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md) -- [NeuralControl](../msg_docs/NeuralControl.md) -- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md) -- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md) -- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md) -- [EscEepromRead](../msg_docs/EscEepromRead.md) -- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md) -- [FollowTarget](../msg_docs/FollowTarget.md) -- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md) -- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md) -- [VehicleStatusV3](../msg_docs/VehicleStatusV3.md) -- [SensorAccel](../msg_docs/SensorAccel.md) -- [GeofenceStatus](../msg_docs/GeofenceStatus.md) -- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md) -- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md) -- [LogMessage](../msg_docs/LogMessage.md) -- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md) -- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md) -- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md) -- [VehicleAirData](../msg_docs/VehicleAirData.md) -- [Gripper](../msg_docs/Gripper.md) -- [RaptorStatus](../msg_docs/RaptorStatus.md) +- [FiducialMarkerPosReport](../msg_docs/FiducialMarkerPosReport.md) +- [VteOrientation](../msg_docs/VteOrientation.md) - [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md) +- [NeuralControl](../msg_docs/NeuralControl.md) +- [TaskStackInfo](../msg_docs/TaskStackInfo.md) +- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md) +- [SystemPower](../msg_docs/SystemPower.md) +- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md) +- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md) +- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md) +- [MavlinkLog](../msg_docs/MavlinkLog.md) +- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md) +- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md) +- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md) +- [VehicleRoi](../msg_docs/VehicleRoi.md) +- [SensorMag](../msg_docs/SensorMag.md) +- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md) +- [EstimatorStatus](../msg_docs/EstimatorStatus.md) +- [OrbTest](../msg_docs/OrbTest.md) +- [RaptorInput](../msg_docs/RaptorInput.md) +- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md) +- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md) +- [PowerMonitor](../msg_docs/PowerMonitor.md) +- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md) +- [MountOrientation](../msg_docs/MountOrientation.md) +- [VehicleStatusV2](../msg_docs/VehicleStatusV2.md) +- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md) +- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md) +- [EstimatorStates](../msg_docs/EstimatorStates.md) +- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md) +- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md) +- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md) +- [LandingGearWheel](../msg_docs/LandingGearWheel.md) +- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md) +- [ActuatorTest](../msg_docs/ActuatorTest.md) +- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md) +- [HeaterStatus](../msg_docs/HeaterStatus.md) +- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md) +- [CellularStatus](../msg_docs/CellularStatus.md) +- [SensorCorrection](../msg_docs/SensorCorrection.md) +- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md) +- [VteBiasInitStatus](../msg_docs/VteBiasInitStatus.md) +- [HealthReport](../msg_docs/HealthReport.md) +- [OrbTestLarge](../msg_docs/OrbTestLarge.md) +- [TecsStatus](../msg_docs/TecsStatus.md) +- [TakeoffStatus](../msg_docs/TakeoffStatus.md) +- [SensorGyro](../msg_docs/SensorGyro.md) +- [EscEepromWrite](../msg_docs/EscEepromWrite.md) +- [DeviceInformation](../msg_docs/DeviceInformation.md) +- [PrecLandStatus](../msg_docs/PrecLandStatus.md) +- [AdcReport](../msg_docs/AdcReport.md) +- [RcChannels](../msg_docs/RcChannels.md) +- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md) +- [CameraCapture](../msg_docs/CameraCapture.md) +- [ButtonEvent](../msg_docs/ButtonEvent.md) +- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md) +- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md) +- [FigureEightStatus](../msg_docs/FigureEightStatus.md) +- [FollowTarget](../msg_docs/FollowTarget.md) +- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md) +- [LedControl](../msg_docs/LedControl.md) +- [VelocityLimits](../msg_docs/VelocityLimits.md) +- [QshellReq](../msg_docs/QshellReq.md) +- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md) +- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md) +- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md) +- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md) +- [MissionResult](../msg_docs/MissionResult.md) +- [GpioConfig](../msg_docs/GpioConfig.md) +- [ActionRequest](../msg_docs/ActionRequest.md) +- [FuelTankStatus](../msg_docs/FuelTankStatus.md) +- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md) +- [GpsDump](../msg_docs/GpsDump.md) +- [RtlStatus](../msg_docs/RtlStatus.md) +- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md) +- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md) +- [GainCompression](../msg_docs/GainCompression.md) +- [EstimatorBias](../msg_docs/EstimatorBias.md) +- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md) +- [LogMessage](../msg_docs/LogMessage.md) +- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md) +- [Rpm](../msg_docs/Rpm.md) +- [CameraStatus](../msg_docs/CameraStatus.md) +- [NavigatorStatus](../msg_docs/NavigatorStatus.md) +- [GeneratorStatus](../msg_docs/GeneratorStatus.md) +- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md) +- [DebugKeyValue](../msg_docs/DebugKeyValue.md) +- [DebugValue](../msg_docs/DebugValue.md) +- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md) +- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md) +- [SensorUwb](../msg_docs/SensorUwb.md) +- [RangingBeacon](../msg_docs/RangingBeacon.md) +- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md) +- [DatamanRequest](../msg_docs/DatamanRequest.md) +- [IrlockReport](../msg_docs/IrlockReport.md) +- [ActuatorArmed](../msg_docs/ActuatorArmed.md) +- [Px4ioStatus](../msg_docs/Px4ioStatus.md) +- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md) +- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md) +- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md) +- [GeofenceStatus](../msg_docs/GeofenceStatus.md) +- [Airspeed](../msg_docs/Airspeed.md) +- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md) +- [VteAidSource1d](../msg_docs/VteAidSource1d.md) +- [DebugArray](../msg_docs/DebugArray.md) +- [VehicleConstraints](../msg_docs/VehicleConstraints.md) +- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md) +- [VehicleImu](../msg_docs/VehicleImu.md) +- [QshellRetval](../msg_docs/QshellRetval.md) +- [RegisterExtComponentRequestV1](../msg_docs/RegisterExtComponentRequestV1.md) +- [UlogStream](../msg_docs/UlogStream.md) +- [PpsCapture](../msg_docs/PpsCapture.md) +- [OrbitStatus](../msg_docs/OrbitStatus.md) +- [PowerButtonState](../msg_docs/PowerButtonState.md) +- [EscStatus](../msg_docs/EscStatus.md) +- [EstimatorFusionControl](../msg_docs/EstimatorFusionControl.md) +- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md) +- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md) +- [SensorBaro](../msg_docs/SensorBaro.md) +- [SensorAirflow](../msg_docs/SensorAirflow.md) +- [SensorTemp](../msg_docs/SensorTemp.md) +- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md) +- [OrbTestMedium](../msg_docs/OrbTestMedium.md) +- [Gripper](../msg_docs/Gripper.md) +- [SensorGyroFft](../msg_docs/SensorGyroFft.md) +- [SensorsStatus](../msg_docs/SensorsStatus.md) +- [TuneControl](../msg_docs/TuneControl.md) +- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md) +- [Vtx](../msg_docs/Vtx.md) +- [EventV0](../msg_docs/EventV0.md) +- [GpioOut](../msg_docs/GpioOut.md) +- [SatelliteInfo](../msg_docs/SatelliteInfo.md) +- [AirspeedWind](../msg_docs/AirspeedWind.md) +- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md) +- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md) +- [Ping](../msg_docs/Ping.md) +- [LoggerStatus](../msg_docs/LoggerStatus.md) +- [VteInput](../msg_docs/VteInput.md) +- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md) +- [VteAidSource3d](../msg_docs/VteAidSource3d.md) +- [CameraTrigger](../msg_docs/CameraTrigger.md) +- [GeofenceResult](../msg_docs/GeofenceResult.md) +- [TargetGnss](../msg_docs/TargetGnss.md) +- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md) +- [HomePositionV0](../msg_docs/HomePositionV0.md) +- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md) +- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md) +- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md) +- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md) +- [EscReport](../msg_docs/EscReport.md) +- [GimbalControls](../msg_docs/GimbalControls.md) +- [GpioIn](../msg_docs/GpioIn.md) +- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md) +- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md) +- [BatteryInfo](../msg_docs/BatteryInfo.md) +- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md) +- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md) +- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md) +- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md) +- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md) +- [ParameterUpdate](../msg_docs/ParameterUpdate.md) +- [FiducialMarkerYawReport](../msg_docs/FiducialMarkerYawReport.md) +- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md) +- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md) +- [VtePosition](../msg_docs/VtePosition.md) +- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md) +- [VehicleStatusV3](../msg_docs/VehicleStatusV3.md) +- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md) +- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md) +- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md) +- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md) +- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md) +- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md) +- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md) +- [VehicleAirData](../msg_docs/VehicleAirData.md) +- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md) +- [Cpuload](../msg_docs/Cpuload.md) +- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md) +- [Mission](../msg_docs/Mission.md) +- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md) +- [UlogStreamAck](../msg_docs/UlogStreamAck.md) +- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md) +- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md) +- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md) +- [PwmInput](../msg_docs/PwmInput.md) +- [InputRc](../msg_docs/InputRc.md) +- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md) +- [WheelEncoders](../msg_docs/WheelEncoders.md) +- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md) +- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md) +- [RadioStatus](../msg_docs/RadioStatus.md) +- [DebugVect](../msg_docs/DebugVect.md) +- [LandingTargetPose](../msg_docs/LandingTargetPose.md) +- [DifferentialPressure](../msg_docs/DifferentialPressure.md) +- [RoverRateStatus](../msg_docs/RoverRateStatus.md) +- [SensorHygrometer](../msg_docs/SensorHygrometer.md) +- [PositionSetpoint](../msg_docs/PositionSetpoint.md) +- [RaptorStatus](../msg_docs/RaptorStatus.md) +- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md) +- [DatamanResponse](../msg_docs/DatamanResponse.md) +- [RcParameterMap](../msg_docs/RcParameterMap.md) +- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md) +- [SensorSelection](../msg_docs/SensorSelection.md) +- [SensorAccel](../msg_docs/SensorAccel.md) +- [GpioRequest](../msg_docs/GpioRequest.md) +- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md) +- [MagWorkerData](../msg_docs/MagWorkerData.md) +- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md) +- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md) +- [Event](../msg_docs/Event.md) +- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md) +- [EscEepromRead](../msg_docs/EscEepromRead.md) +- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md) +- [GpsInjectData](../msg_docs/GpsInjectData.md) +- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md) ::: diff --git a/docs/uk/modules/modules_driver.md b/docs/uk/modules/modules_driver.md index 69b710ef74..160b67297c 100644 --- a/docs/uk/modules/modules_driver.md +++ b/docs/uk/modules/modules_driver.md @@ -509,16 +509,12 @@ Source: [drivers/power_monitor/ina226](https://github.com/PX4/PX4-Autopilot/tree ### Опис -Driver for the INA226 power monitor. +Driver for the Texas Instruments INA226 power monitor. -Multiple instances of this driver can run simultaneously, if each instance has a separate bus OR I2C address. +Multiple instances can run simultaneously on separate buses or different I2C addresses. -For example, one instance can run on Bus 2, address 0x41, and one can run on Bus 2, address 0x43. - -If the INA226 module is not powered, then by default, initialization of the driver will fail. To change this, use -the -f flag. If this flag is set, then if initialization fails, the driver will keep trying to initialize again -every 0.5 seconds. With this flag set, you can plug in a battery after the driver starts, and it will work. Without -this flag set, the battery must be plugged in before starting the driver. +If the device is not powered at startup, pass `-k` (keep_running) and the driver +will retry initialization every 500 ms so the battery can be plugged in later. ### Usage {#ina226_usage} @@ -535,7 +531,7 @@ ina226 [arguments...] [-a ] I2C address default: 65 [-k] if initialization (probing) fails, keep retrying periodically - [-t ] battery index for calibration values (1 or 3) + [-t ] battery index for calibration values (1-3) default: 1 stop @@ -589,16 +585,12 @@ Source: [drivers/power_monitor/ina238](https://github.com/PX4/PX4-Autopilot/tree ### Опис -Driver for the INA238 power monitor. +Driver for the Texas Instruments INA237 / INA238 power monitor. -Multiple instances of this driver can run simultaneously, if each instance has a separate bus OR I2C address. +Multiple instances can run simultaneously on separate buses or different I2C addresses. -For example, one instance can run on Bus 2, address 0x45, and one can run on Bus 2, address 0x45. - -If the INA238 module is not powered, then by default, initialization of the driver will fail. To change this, use -the -f flag. If this flag is set, then if initialization fails, the driver will keep trying to initialize again -every 0.5 seconds. With this flag set, you can plug in a battery after the driver starts, and it will work. Without -this flag set, the battery must be plugged in before starting the driver. +If the device is not powered at startup, pass `-k` (keep_running) and the driver +will retry initialization every 500 ms so the battery can be plugged in later. ### Usage {#ina238_usage} @@ -615,7 +607,7 @@ ina238 [arguments...] [-a ] I2C address default: 69 [-k] if initialization (probing) fails, keep retrying periodically - [-t ] battery index for calibration values (1 or 3) + [-t ] battery index for calibration values (1-3) default: 1 stop diff --git a/docs/uk/modules/modules_system.md b/docs/uk/modules/modules_system.md index 215a1b816b..44694beadd 100644 --- a/docs/uk/modules/modules_system.md +++ b/docs/uk/modules/modules_system.md @@ -151,8 +151,8 @@ commander [arguments...] mode Change flight mode manual|acro|offboard|stabilized|altctl|posctl|altitude_cruise|position:slow - |auto:mission|auto:loiter|auto:rtl|auto:takeoff|auto:land|auto: - precland|ext1 Flight mode + |auto:mission|auto:loiter|auto:course|auto:rtl|auto:takeoff|aut + o:land|auto:precland|ext1 Flight mode pair @@ -327,7 +327,7 @@ Source: [drivers/heater](https://github.com/PX4/PX4-Autopilot/tree/main/src/driv ### Опис -Background process running periodically on the INS{i} queue to regulate IMU temperature at a setpoint. +Background process running periodically on the INS{i} queue to regulate temperature at a setpoint. This task can be started at boot from the startup scripts by setting SENS_EN_THERMAL or via CLI. @@ -1108,6 +1108,28 @@ uxrce_dds_client [arguments...] status print status info ``` +## vision_target_estimator + +Source: [modules/vision_target_estimator](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/vision_target_estimator) + +### Опис + +Module to estimate the position and orientation of a target using relative sensors. + +The module runs periodically on the px4::wq_configurations::vte queue. + +### Usage {#vision_target_estimator_usage} + +``` +vision_target_estimator [arguments...] + Commands: + start Start the background task + + stop + + status print status info +``` + ## work_queue Source: [systemcmds/work_queue](https://github.com/PX4/PX4-Autopilot/tree/main/src/systemcmds/work_queue) diff --git a/docs/uk/msg_docs/ActionRequest.md b/docs/uk/msg_docs/ActionRequest.md index 077a3e2f07..ce0a3de740 100644 --- a/docs/uk/msg_docs/ActionRequest.md +++ b/docs/uk/msg_docs/ActionRequest.md @@ -14,17 +14,19 @@ Request are published by `manual_control` and subscribed by the `commander` and ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | -------- | ---------------------------------------------------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| action | `uint8` | | [ACTION](#ACTION) | Requested action | -| source | `uint8` | | [SOURCE](#SOURCE) | Request trigger type, such as a switch, button or gesture | -| mode | `uint8` | | | Requested mode. Only applies when `action` is `ACTION_SWITCH_MODE`. Values for this field are defined by the `vehicle_status_s::NAVIGATION_STATE_*` enumeration. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | -------- | ---------------------------------------------------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| action | `uint8` | | [ACTION](#ACTION) | Requested action | +| source | `uint8` | | [SOURCE](#SOURCE) | Request trigger type, such as a switch, button or gesture | +| mode | `uint8` | | | Requested mode. Only applies when `action` is `ACTION_SWITCH_MODE`. Values for this field are defined by the `vehicle_status_s::NAVIGATION_STATE_*` enumeration. | ## Enums ### ACTION {#ACTION} +Used in field(s): [action](#fld_action) + | Назва | Тип | Значення | Опис | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ---------------------------------------------------------------------------------------- | | ACTION_DISARM | `uint8` | 0 | Disarm vehicle | @@ -39,6 +41,8 @@ Request are published by `manual_control` and subscribed by the `commander` and ### SOURCE {#SOURCE} +Used in field(s): [source](#fld_source) + | Назва | Тип | Значення | Опис | | -------------------------------------------------------------------------------------------------------------------- | ------- | -------- | --------------------------------------------------------------- | | SOURCE_STICK_GESTURE | `uint8` | 0 | Triggered by holding the sticks in a certain position | diff --git a/docs/uk/msg_docs/ActuatorArmed.md b/docs/uk/msg_docs/ActuatorArmed.md index 9571672f6a..82821cb9f3 100644 --- a/docs/uk/msg_docs/ActuatorArmed.md +++ b/docs/uk/msg_docs/ActuatorArmed.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| armed | `bool` | | | Set to true if system is armed | -| prearmed | `bool` | | | Set to true if the actuator safety is disabled but motors are not armed | -| ready_to_arm | `bool` | | | Set to true if system is ready to be armed | -| lockdown | `bool` | | | Set to true if actuators are forced to being disabled (due to emergency or HIL) | -| kill | `bool` | | | Set to true if manual throttle kill switch is engaged | -| termination | `bool` | | | Send out failsafe (by default same as disarmed) output | -| in_esc_calibration_mode | `bool` | | | IO/FMU should ignore messages from the actuator controls topics | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| armed | `bool` | | | Set to true if system is armed | +| prearmed | `bool` | | | Set to true if the actuator safety is disabled but motors are not armed | +| ready_to_arm | `bool` | | | Set to true if system is ready to be armed | +| lockdown | `bool` | | | Set to true if actuators are forced to being disabled (due to emergency or HIL) | +| kill | `bool` | | | Set to true if manual throttle kill switch is engaged | +| termination | `bool` | | | Send out failsafe (by default same as disarmed) output | +| in_esc_calibration_mode | `bool` | | | IO/FMU should ignore messages from the actuator controls topics | ## Source Message diff --git a/docs/uk/msg_docs/ActuatorControlsStatus.md b/docs/uk/msg_docs/ActuatorControlsStatus.md index d7ecf6f6b5..5f37f0dc2f 100644 --- a/docs/uk/msg_docs/ActuatorControlsStatus.md +++ b/docs/uk/msg_docs/ActuatorControlsStatus.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| control_power | `float32[3]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| control_power | `float32[3]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/ActuatorMotors.md b/docs/uk/msg_docs/ActuatorMotors.md index bf5bc2f7fc..22b13ec68a 100644 --- a/docs/uk/msg_docs/ActuatorMotors.md +++ b/docs/uk/msg_docs/ActuatorMotors.md @@ -13,12 +13,12 @@ Published by the vehicle's allocation and consumed by the ESC protocol drivers e ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | -| reversible_flags | `uint16` | | | Bitset indicating which motors are configured to be reversible | -| control | `float32[12]` | | [-1 : 1] | Normalized thrust. Where 1 means maximum positive thrust, -1 maximum negative (if not supported by the output, <0 maps to NaN). NaN maps to disarmed (stop the motors) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | +| reversible_flags | `uint16` | | | Bitset indicating which motors are configured to be reversible | +| control | `float32[12]` | | [-1 : 1] | Normalized thrust. Where 1 means maximum positive thrust, -1 maximum negative (if not supported by the output, <0 maps to NaN). NaN maps to disarmed (stop the motors) | ## Constants diff --git a/docs/uk/msg_docs/ActuatorOutputs.md b/docs/uk/msg_docs/ActuatorOutputs.md index feb106b70a..cb3c8b7486 100644 --- a/docs/uk/msg_docs/ActuatorOutputs.md +++ b/docs/uk/msg_docs/ActuatorOutputs.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ------------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| noutputs | `uint32` | | | valid outputs | -| output | `float32[16]` | | | output data, in natural output units | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ------------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| noutputs | `uint32` | | | valid outputs | +| output | `float32[16]` | | | output data, in natural output units | ## Constants diff --git a/docs/uk/msg_docs/ActuatorServos.md b/docs/uk/msg_docs/ActuatorServos.md index 32f9ea9eca..9dd7e84083 100644 --- a/docs/uk/msg_docs/ActuatorServos.md +++ b/docs/uk/msg_docs/ActuatorServos.md @@ -13,11 +13,11 @@ Published by the vehicle's allocation and consumed by the actuator output driver ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | -| control | `float32[8]` | | [-1 : 1] | Normalized output. 1 means maximum positive position. -1 maximum negative position (if not supported by the output, <0 maps to NaN). NaN maps to disarmed. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | +| control | `float32[8]` | | [-1 : 1] | Normalized output. 1 means maximum positive position. -1 maximum negative position (if not supported by the output, <0 maps to NaN). NaN maps to disarmed. | ## Constants diff --git a/docs/uk/msg_docs/ActuatorServosTrim.md b/docs/uk/msg_docs/ActuatorServosTrim.md index bac3fddfc0..669176c81e 100644 --- a/docs/uk/msg_docs/ActuatorServosTrim.md +++ b/docs/uk/msg_docs/ActuatorServosTrim.md @@ -10,10 +10,10 @@ Servo trims, added as offset to servo outputs. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| trim | `float32[8]` | | | range: [-1, 1] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| trim | `float32[8]` | | | range: [-1, 1] | ## Constants diff --git a/docs/uk/msg_docs/ActuatorTest.md b/docs/uk/msg_docs/ActuatorTest.md index d6d667c985..d8a9d75653 100644 --- a/docs/uk/msg_docs/ActuatorTest.md +++ b/docs/uk/msg_docs/ActuatorTest.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| action | `uint8` | | | one of ACTION\_\* | -| function | `uint16` | | | actuator output function | -| value | `float32` | | | range: [-1, 1], where 1 means maximum positive output, | -| timeout_ms | `uint32` | | | timeout in ms after which to exit test mode (if 0, do not time out) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| action | `uint8` | | | one of ACTION\_\* | +| function | `uint16` | | | actuator output function | +| value | `float32` | | | range: [-1, 1], where 1 means maximum positive output, | +| timeout_ms | `uint32` | | | timeout in ms after which to exit test mode (if 0, do not time out) | ## Constants diff --git a/docs/uk/msg_docs/AdcReport.md b/docs/uk/msg_docs/AdcReport.md index 96718298b9..88c6b0e127 100644 --- a/docs/uk/msg_docs/AdcReport.md +++ b/docs/uk/msg_docs/AdcReport.md @@ -12,14 +12,14 @@ Communicates raw data from an analog-to-digital converter (ADC) to other modules ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| channel_id | `int16[16]` | | | ADC channel IDs, negative for non-existent, TODO: should be kept same as array index | -| raw_data | `int32[16]` | | | ADC channel raw value, accept negative value, valid if channel ID is positive | -| resolution | `uint32` | | | ADC channel resolution | -| v_ref | `float32` | V | | ADC channel voltage reference, use to calculate LSB voltage(lsb=scale/resolution) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| channel_id | `int16[16]` | | | ADC channel IDs, negative for non-existent, TODO: should be kept same as array index | +| raw_data | `int32[16]` | | | ADC channel raw value, accept negative value, valid if channel ID is positive | +| resolution | `uint32` | | | ADC channel resolution | +| v_ref | `float32` | V | | ADC channel voltage reference, use to calculate LSB voltage(lsb=scale/resolution) | ## Source Message diff --git a/docs/uk/msg_docs/Airspeed.md b/docs/uk/msg_docs/Airspeed.md index a9a866769b..19e6ef1e08 100644 --- a/docs/uk/msg_docs/Airspeed.md +++ b/docs/uk/msg_docs/Airspeed.md @@ -13,13 +13,13 @@ It is subscribed by the airspeed selector module, which validates the data from ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------- | -------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Timestamp of the raw data | -| indicated_airspeed_m_s | `float32` | m/s | | Indicated airspeed | -| true_airspeed_m_s | `float32` | m/s | | True airspeed | -| confidence | `float32` | | [0 : 1] | Confidence value for this sensor | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------- | -------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw data | +| indicated_airspeed_m_s | `float32` | m/s | | Indicated airspeed | +| true_airspeed_m_s | `float32` | m/s | | True airspeed | +| confidence | `float32` | | [0 : 1] | Confidence value for this sensor | ## Source Message diff --git a/docs/uk/msg_docs/AirspeedValidated.md b/docs/uk/msg_docs/AirspeedValidated.md index 405c978bdc..6e468fccad 100644 --- a/docs/uk/msg_docs/AirspeedValidated.md +++ b/docs/uk/msg_docs/AirspeedValidated.md @@ -13,23 +13,25 @@ Used by controllers, estimators and for airspeed reporting to operator. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| indicated_airspeed_m_s | `float32` | m/s | | Indicated airspeed (IAS) (Invalid: NaN) | -| calibrated_airspeed_m_s | `float32` | m/s | | Calibrated airspeed (CAS) (Invalid: NaN) | -| true_airspeed_m_s | `float32` | m/s | | True airspeed (TAS) (Invalid: NaN) | -| airspeed_source | `int8` | | [SOURCE](#SOURCE) | Source of currently published airspeed values | -| calibrated_ground_minus_wind_m_s | `float32` | m/s | | CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption (Invalid: NaN) | -| calibraded_airspeed_synth_m_s | `float32` | m/s | | Synthetic airspeed (Invalid: NaN) | -| airspeed_derivative_filtered | `float32` | m/s^2 | | Filtered indicated airspeed derivative | -| throttle_filtered | `float32` | | | Filtered fixed-wing throttle | -| pitch_filtered | `float32` | rad | | Filtered pitch | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| indicated_airspeed_m_s | `float32` | m/s | | Indicated airspeed (IAS) (Invalid: NaN) | +| calibrated_airspeed_m_s | `float32` | m/s | | Calibrated airspeed (CAS) (Invalid: NaN) | +| true_airspeed_m_s | `float32` | m/s | | True airspeed (TAS) (Invalid: NaN) | +| airspeed_source | `int8` | | [SOURCE](#SOURCE) | Source of currently published airspeed values | +| calibrated_ground_minus_wind_m_s | `float32` | m/s | | CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption (Invalid: NaN) | +| calibraded_airspeed_synth_m_s | `float32` | m/s | | Synthetic airspeed (Invalid: NaN) | +| airspeed_derivative_filtered | `float32` | m/s^2 | | Filtered indicated airspeed derivative | +| throttle_filtered | `float32` | | | Filtered fixed-wing throttle | +| pitch_filtered | `float32` | rad | | Filtered pitch | ## Enums ### SOURCE {#SOURCE} +Used in field(s): [airspeed_source](#fld_airspeed_source) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------ | ------ | -------- | ----------------------- | | SOURCE_DISABLED | `int8` | -1 | Disabled | diff --git a/docs/uk/msg_docs/AirspeedValidatedV0.md b/docs/uk/msg_docs/AirspeedValidatedV0.md index 76b8129af7..7b1a575d8c 100644 --- a/docs/uk/msg_docs/AirspeedValidatedV0.md +++ b/docs/uk/msg_docs/AirspeedValidatedV0.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| indicated_airspeed_m_s | `float32` | | | indicated airspeed in m/s (IAS), set to NAN if invalid | -| calibrated_airspeed_m_s | `float32` | | | calibrated airspeed in m/s (CAS, accounts for instrumentation errors), set to NAN if invalid | -| true_airspeed_m_s | `float32` | | | true filtered airspeed in m/s (TAS), set to NAN if invalid | -| calibrated_ground_minus_wind_m_s | `float32` | | | CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid | -| true_ground_minus_wind_m_s | `float32` | | | TAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid | -| airspeed_sensor_measurement_valid | `bool` | | | True if data from at least one airspeed sensor is declared valid. | -| selected_airspeed_index | `int8` | | | 1-3: airspeed sensor index, 0: groundspeed-windspeed, -1: airspeed invalid | -| airspeed_derivative_filtered | `float32` | | | filtered indicated airspeed derivative [m/s/s] | -| throttle_filtered | `float32` | | | filtered fixed-wing throttle [-] | -| pitch_filtered | `float32` | | | filtered pitch [rad] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| indicated_airspeed_m_s | `float32` | | | indicated airspeed in m/s (IAS), set to NAN if invalid | +| calibrated_airspeed_m_s | `float32` | | | calibrated airspeed in m/s (CAS, accounts for instrumentation errors), set to NAN if invalid | +| true_airspeed_m_s | `float32` | | | true filtered airspeed in m/s (TAS), set to NAN if invalid | +| calibrated_ground_minus_wind_m_s | `float32` | | | CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid | +| true_ground_minus_wind_m_s | `float32` | | | TAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid | +| airspeed_sensor_measurement_valid | `bool` | | | True if data from at least one airspeed sensor is declared valid. | +| selected_airspeed_index | `int8` | | | 1-3: airspeed sensor index, 0: groundspeed-windspeed, -1: airspeed invalid | +| airspeed_derivative_filtered | `float32` | | | filtered indicated airspeed derivative [m/s/s] | +| throttle_filtered | `float32` | | | filtered fixed-wing throttle [-] | +| pitch_filtered | `float32` | | | filtered pitch [rad] | ## Constants diff --git a/docs/uk/msg_docs/AirspeedWind.md b/docs/uk/msg_docs/AirspeedWind.md index e425dcba7d..eb649a0459 100644 --- a/docs/uk/msg_docs/AirspeedWind.md +++ b/docs/uk/msg_docs/AirspeedWind.md @@ -16,22 +16,22 @@ subscribed to by any other modules. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Timestamp of the raw data | -| windspeed_north | `float32` | m/s | | Wind component in north / X direction | -| windspeed_east | `float32` | m/s | | Wind component in east / Y direction | -| variance_north | `float32` | (m/s)^2 | | Wind estimate error variance in north / X direction (Invalid: 0 if not estimated) | -| variance_east | `float32` | (m/s)^2 | | Wind estimate error variance in east / Y direction (Invalid: 0 if not estimated) | -| tas_innov | `float32` | m/s | | True airspeed innovation | -| tas_innov_var | `float32` | m/s | | True airspeed innovation variance | -| tas_scale_raw | `float32` | | | Estimated true airspeed scale factor (not validated) | -| tas_scale_raw_var | `float32` | | | True airspeed scale factor variance | -| tas_scale_validated | `float32` | | | Estimated true airspeed scale factor after validation | -| beta_innov | `float32` | rad | | Sideslip measurement innovation | -| beta_innov_var | `float32` | rad^2 | | Sideslip measurement innovation variance | -| source | `uint8` | | | source of wind estimate | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw data | +| windspeed_north | `float32` | m/s | | Wind component in north / X direction | +| windspeed_east | `float32` | m/s | | Wind component in east / Y direction | +| variance_north | `float32` | (m/s)^2 | | Wind estimate error variance in north / X direction (Invalid: 0 if not estimated) | +| variance_east | `float32` | (m/s)^2 | | Wind estimate error variance in east / Y direction (Invalid: 0 if not estimated) | +| tas_innov | `float32` | m/s | | True airspeed innovation | +| tas_innov_var | `float32` | m/s | | True airspeed innovation variance | +| tas_scale_raw | `float32` | | | Estimated true airspeed scale factor (not validated) | +| tas_scale_raw_var | `float32` | | | True airspeed scale factor variance | +| tas_scale_validated | `float32` | | | Estimated true airspeed scale factor after validation | +| beta_innov | `float32` | rad | | Sideslip measurement innovation | +| beta_innov_var | `float32` | rad^2 | | Sideslip measurement innovation variance | +| source | `uint8` | | | source of wind estimate | ## Constants diff --git a/docs/uk/msg_docs/ArmingCheckReply.md b/docs/uk/msg_docs/ArmingCheckReply.md index 4f56cab405..eeb6a3fed2 100644 --- a/docs/uk/msg_docs/ArmingCheckReply.md +++ b/docs/uk/msg_docs/ArmingCheckReply.md @@ -17,34 +17,36 @@ The message is not used by internal/FMU components, as their mode requirements a ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start. | -| request_id | `uint8` | | | Id of ArmingCheckRequest for which this is a response | -| registration_id | `uint8` | | | Id of external component emitting this response | -| health_component_index | `uint8` | | [HEALTH_COMPONENT_INDEX](#HEALTH_COMPONENT_INDEX) | | -| health_component_is_present | `bool` | | | Unused. Intended for use with health events interface (health_component_t in events.json) | -| health_component_warning | `bool` | | | Unused. Intended for use with health events interface (health_component_t in events.json) | -| health_component_error | `bool` | | | Unused. Intended for use with health events interface (health_component_t in events.json) | -| can_arm_and_run | `bool` | | | True if the component can arm. For navigation mode components, true if the component can arm in the mode or switch to the mode when already armed | -| num_events | `uint8` | | | Number of queued failure messages (Event) in the events field | -| events | `Event[5]` | | | Arming failure reasons (Queue of events to report to GCS) | -| mode_req_angular_velocity | `bool` | | | Requires angular velocity estimate (e.g. from gyroscope) | -| mode_req_attitude | `bool` | | | Requires an attitude estimate | -| mode_req_local_alt | `bool` | | | Requires a local altitude estimate | -| mode_req_local_position | `bool` | | | Requires a local position estimate | -| mode_req_local_position_relaxed | `bool` | | | Requires a more relaxed global position estimate | -| mode_req_global_position | `bool` | | | Requires a global position estimate | -| mode_req_global_position_relaxed | `bool` | | | Requires a relaxed global position estimate | -| mode_req_mission | `bool` | | | Requires an uploaded mission | -| mode_req_home_position | `bool` | | | Requires a home position (such as RTL/Return mode) | -| mode_req_prevent_arming | `bool` | | | Prevent arming (such as in Land mode) | -| mode_req_manual_control | `bool` | | | Requires a manual controller | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start. | +| request_id | `uint8` | | | Id of ArmingCheckRequest for which this is a response | +| registration_id | `uint8` | | | Id of external component emitting this response | +| health_component_index | `uint8` | | [HEALTH_COMPONENT_INDEX](#HEALTH_COMPONENT_INDEX) | | +| health_component_is_present | `bool` | | | Unused. Intended for use with health events interface (health_component_t in events.json) | +| health_component_warning | `bool` | | | Unused. Intended for use with health events interface (health_component_t in events.json) | +| health_component_error | `bool` | | | Unused. Intended for use with health events interface (health_component_t in events.json) | +| can_arm_and_run | `bool` | | | True if the component can arm. For navigation mode components, true if the component can arm in the mode or switch to the mode when already armed | +| num_events | `uint8` | | | Number of queued failure messages (Event) in the events field | +| events | `Event[5]` | | | Arming failure reasons (Queue of events to report to GCS) | +| mode_req_angular_velocity | `bool` | | | Requires angular velocity estimate (e.g. from gyroscope) | +| mode_req_attitude | `bool` | | | Requires an attitude estimate | +| mode_req_local_alt | `bool` | | | Requires a local altitude estimate | +| mode_req_local_position | `bool` | | | Requires a local position estimate | +| mode_req_local_position_relaxed | `bool` | | | Requires a more relaxed global position estimate | +| mode_req_global_position | `bool` | | | Requires a global position estimate | +| mode_req_global_position_relaxed | `bool` | | | Requires a relaxed global position estimate | +| mode_req_mission | `bool` | | | Requires an uploaded mission | +| mode_req_home_position | `bool` | | | Requires a home position (such as RTL/Return mode) | +| mode_req_prevent_arming | `bool` | | | Prevent arming (such as in Land mode) | +| mode_req_manual_control | `bool` | | | Requires a manual controller | ## Enums ### HEALTH_COMPONENT_INDEX {#HEALTH_COMPONENT_INDEX} +Used in field(s): [health_component_index](#fld_health_component_index) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | --------------------------------------------------------- | | HEALTH_COMPONENT_INDEX_NONE | `uint8` | 0 | Index of health component for which this response applies | diff --git a/docs/uk/msg_docs/ArmingCheckReplyV0.md b/docs/uk/msg_docs/ArmingCheckReplyV0.md index 9233eac589..2fd553e742 100644 --- a/docs/uk/msg_docs/ArmingCheckReplyV0.md +++ b/docs/uk/msg_docs/ArmingCheckReplyV0.md @@ -8,28 +8,28 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| request_id | `uint8` | | | | -| registration_id | `uint8` | | | | -| health_component_index | `uint8` | | | HEALTH_COMPONENT_INDEX_\* | -| health_component_is_present | `bool` | | | | -| health_component_warning | `bool` | | | | -| health_component_error | `bool` | | | | -| can_arm_and_run | `bool` | | | whether arming is possible, and if it's a navigation mode, if it can run | -| num_events | `uint8` | | | | -| events | `EventV0[5]` | | | | -| mode_req_angular_velocity | `bool` | | | | -| mode_req_attitude | `bool` | | | | -| mode_req_local_alt | `bool` | | | | -| mode_req_local_position | `bool` | | | | -| mode_req_local_position_relaxed | `bool` | | | | -| mode_req_global_position | `bool` | | | | -| mode_req_mission | `bool` | | | | -| mode_req_home_position | `bool` | | | | -| mode_req_prevent_arming | `bool` | | | | -| mode_req_manual_control | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| request_id | `uint8` | | | | +| registration_id | `uint8` | | | | +| health_component_index | `uint8` | | | HEALTH_COMPONENT_INDEX_\* | +| health_component_is_present | `bool` | | | | +| health_component_warning | `bool` | | | | +| health_component_error | `bool` | | | | +| can_arm_and_run | `bool` | | | whether arming is possible, and if it's a navigation mode, if it can run | +| num_events | `uint8` | | | | +| events | `EventV0[5]` | | | | +| mode_req_angular_velocity | `bool` | | | | +| mode_req_attitude | `bool` | | | | +| mode_req_local_alt | `bool` | | | | +| mode_req_local_position | `bool` | | | | +| mode_req_local_position_relaxed | `bool` | | | | +| mode_req_global_position | `bool` | | | | +| mode_req_mission | `bool` | | | | +| mode_req_home_position | `bool` | | | | +| mode_req_prevent_arming | `bool` | | | | +| mode_req_manual_control | `bool` | | | | ## Constants diff --git a/docs/uk/msg_docs/ArmingCheckRequest.md b/docs/uk/msg_docs/ArmingCheckRequest.md index bdf54eccd5..50a548f40a 100644 --- a/docs/uk/msg_docs/ArmingCheckRequest.md +++ b/docs/uk/msg_docs/ArmingCheckRequest.md @@ -17,11 +17,11 @@ The reply will also include the registration_id for each external component, pro ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| request_id | `uint8` | | | Id of this request. Allows correlation with associated ArmingCheckReply messages. | -| valid_registrations_mask | `uint32` | | | Bitmask of valid registration ID's (the bit is also cleared if flagged as unresponsive) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| request_id | `uint8` | | | Id of this request. Allows correlation with associated ArmingCheckReply messages. | +| valid_registrations_mask | `uint32` | | | Bitmask of valid registration ID's (the bit is also cleared if flagged as unresponsive) | ## Constants diff --git a/docs/uk/msg_docs/ArmingCheckRequestV0.md b/docs/uk/msg_docs/ArmingCheckRequestV0.md index 058550cc30..153589ffb4 100644 --- a/docs/uk/msg_docs/ArmingCheckRequestV0.md +++ b/docs/uk/msg_docs/ArmingCheckRequestV0.md @@ -17,10 +17,10 @@ The reply will also include the registration_id for each external component, pro ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start. | -| request_id | `uint8` | | | Id of this request. Allows correlation with associated ArmingCheckReply messages. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start. | +| request_id | `uint8` | | | Id of this request. Allows correlation with associated ArmingCheckReply messages. | ## Constants diff --git a/docs/uk/msg_docs/AutotuneAttitudeControlStatus.md b/docs/uk/msg_docs/AutotuneAttitudeControlStatus.md index 2cec1fca89..8116378a02 100644 --- a/docs/uk/msg_docs/AutotuneAttitudeControlStatus.md +++ b/docs/uk/msg_docs/AutotuneAttitudeControlStatus.md @@ -15,28 +15,30 @@ The rate_sp field is consumed by the controllers, while the remaining fields (mo ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | ------------ | ---------------------------------------------------------------- | --------------- | -------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| coeff | `float32[5]` | | | Coefficients of the identified discrete-time model | -| coeff_var | `float32[5]` | | | Coefficients' variance of the identified discrete-time model | -| fitness | `float32` | | | Fitness of the parameter estimate | -| innov | `float32` | rad/s | | Innovation (residual error between model and measured output) | -| dt_model | `float32` | s | | Model sample time used for identification | -| kc | `float32` | | | Proportional rate-loop gain (ideal form) | -| ki | `float32` | | | Integral rate-loop gain (ideal form) | -| kd | `float32` | | | Derivative rate-loop gain (ideal form) | -| kff | `float32` | | | Feedforward rate-loop gain | -| att_p | `float32` | | | Proportional attitude gain | -| rate_sp | `float32[3]` | rad/s | | Rate setpoint commanded to the attitude controller. | -| u_filt | `float32` | | | Filtered input signal (normalized torque setpoint) used in system identification. | -| y_filt | `float32` | rad/s | | Filtered output signal (angular velocity) used in system identification. | -| state | `uint8` | | [STATE](#STATE) | Current state of the autotune procedure. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | --------------- | -------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| coeff | `float32[5]` | | | Coefficients of the identified discrete-time model | +| coeff_var | `float32[5]` | | | Coefficients' variance of the identified discrete-time model | +| fitness | `float32` | | | Fitness of the parameter estimate | +| innov | `float32` | rad/s | | Innovation (residual error between model and measured output) | +| dt_model | `float32` | s | | Model sample time used for identification | +| kc | `float32` | | | Proportional rate-loop gain (ideal form) | +| ki | `float32` | | | Integral rate-loop gain (ideal form) | +| kd | `float32` | | | Derivative rate-loop gain (ideal form) | +| kff | `float32` | | | Feedforward rate-loop gain | +| att_p | `float32` | | | Proportional attitude gain | +| rate_sp | `float32[3]` | rad/s | | Rate setpoint commanded to the attitude controller. | +| u_filt | `float32` | | | Filtered input signal (normalized torque setpoint) used in system identification. | +| y_filt | `float32` | rad/s | | Filtered output signal (angular velocity) used in system identification. | +| state | `uint8` | | [STATE](#STATE) | Current state of the autotune procedure. | ## Enums ### STATE {#STATE} +Used in field(s): [state](#fld_state) + | Назва | Тип | Значення | Опис | | -------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ------------------------------------------------------------------------------------------- | | STATE_IDLE | `uint8` | 0 | Idle (not running) | diff --git a/docs/uk/msg_docs/AuxGlobalPosition.md b/docs/uk/msg_docs/AuxGlobalPosition.md index c2720ad434..647fd5e04a 100644 --- a/docs/uk/msg_docs/AuxGlobalPosition.md +++ b/docs/uk/msg_docs/AuxGlobalPosition.md @@ -13,23 +13,25 @@ pseudolites, visual navigation, or other positioning system. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Timestamp of the raw data | -| id | `uint8` | | | Unique identifier for the AGP source | -| source | `uint8` | | [SOURCE](#SOURCE) | Source type of the position data (based on mavlink::GLOBAL_POSITION_SRC) | -| lat | `float64` | deg | | Latitude in WGS84 | -| lon | `float64` | deg | | Longitude in WGS84 | -| alt | `float32` | m | | Altitude above mean sea level (AMSL) (Invalid: NaN) | -| eph | `float32` | m | | Std dev of horizontal position, lower bounded by NOISE param (Invalid: NaN) | -| epv | `float32` | m | | Std dev of vertical position, lower bounded by NOISE param (Invalid: NaN) | -| lat_lon_reset_counter | `uint8` | | | Counter for reset events on horizontal position coordinates | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw data | +| id | `uint8` | | | Unique identifier for the AGP source | +| source | `uint8` | | [SOURCE](#SOURCE) | Source type of the position data (based on mavlink::GLOBAL_POSITION_SRC) | +| lat | `float64` | deg | | Latitude in WGS84 | +| lon | `float64` | deg | | Longitude in WGS84 | +| alt | `float32` | m | | Altitude above mean sea level (AMSL) (Invalid: NaN) | +| eph | `float32` | m | | Std dev of horizontal position, lower bounded by NOISE param (Invalid: NaN) | +| epv | `float32` | m | | Std dev of vertical position, lower bounded by NOISE param (Invalid: NaN) | +| lat_lon_reset_counter | `uint8` | | | Counter for reset events on horizontal position coordinates | ## Enums ### SOURCE {#SOURCE} +Used in field(s): [source](#fld_source) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------ | ------- | -------- | ------------------------------------------- | | SOURCE_UNKNOWN | `uint8` | 0 | Unknown source | diff --git a/docs/uk/msg_docs/BatteryInfo.md b/docs/uk/msg_docs/BatteryInfo.md index af6f4d4f1d..ef25f1236d 100644 --- a/docs/uk/msg_docs/BatteryInfo.md +++ b/docs/uk/msg_docs/BatteryInfo.md @@ -13,11 +13,11 @@ Should be streamed at low rate. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| id | `uint8` | | | Must match the id in the battery_status message for the same battery | -| serial_number | `char[32]` | | | Serial number of the battery pack in ASCII characters, 0 terminated (Invalid: 0 All bytes) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| id | `uint8` | | | Must match the id in the battery_status message for the same battery | +| serial_number | `char[32]` | | | Serial number of the battery pack in ASCII characters, 0 terminated (Invalid: 0 All bytes) | ## Source Message diff --git a/docs/uk/msg_docs/BatteryStatus.md b/docs/uk/msg_docs/BatteryStatus.md index 971272107a..9a8d73b143 100644 --- a/docs/uk/msg_docs/BatteryStatus.md +++ b/docs/uk/msg_docs/BatteryStatus.md @@ -14,51 +14,53 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------------------------------- | ------------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| connected | `bool` | | | Whether or not a battery is connected. For power modules this is based on a voltage threshold. | -| voltage_v | `float32` | V | | Battery voltage (Invalid: 0) | -| current_a | `float32` | A | | Battery current (Invalid: -1) | -| current_average_a | `float32` | A | | Battery current average (for FW average in level flight) (Invalid: -1) | -| discharged_mah | `float32` | mAh | | Discharged amount (Invalid: -1) | -| remaining | `float32` | | [0 : 1] | Remaining capacity (Invalid: -1) | -| scale | `float32` | | [1 : -] | Scaling factor to compensate for lower actuation power caused by voltage sag (Invalid: -1) | -| time_remaining_s | `float32` | s | | Predicted time remaining until battery is empty under previous averaged load (Invalid: NaN) | -| temperature | `float32` | degC | | Temperature of the battery (Invalid: NaN) | -| cell_count | `uint8` | | | Number of cells (Invalid: 0) | -| source | `uint8` | | [SOURCE](#SOURCE) | Battery source | -| priority | `uint8` | | | Zero based priority is the connection on the Power Controller V1..Vn AKA BrickN-1 | -| capacity | `uint16` | mAh | | Capacity of the battery when fully charged | -| cycle_count | `uint16` | | | Number of discharge cycles the battery has experienced | -| average_time_to_empty | `uint16` | minutes | | Predicted remaining battery capacity based on the average rate of discharge | -| manufacture_date | `uint16` | | | Manufacture date, part of serial number of the battery pack. Formatted as: Day + Month×32 + (Year–1980)×512 | -| state_of_health | `uint16` | % | [0 : 100] | State of health. FullChargeCapacity/DesignCapacity | -| max_error | `uint16` | % | [1 : 100] | Max error, expected margin of error in the state-of-charge calculation | -| id | `uint8` | | | ID number of a battery. Should be unique and consistent for the lifetime of a vehicle. 1-indexed | -| interface_error | `uint16` | | | Interface error counter | -| voltage_cell_v | `float32[14]` | V | | Battery individual cell voltages (Invalid: 0) | -| max_cell_voltage_delta | `float32` | V | | Max difference between individual cell voltages | -| is_powering_off | `bool` | | | Power off event imminent indication, false if unknown | -| is_required | `bool` | | | Set if the battery is explicitly required before arming | -| warning | `uint8` | | [WARNING](#WARNING)[STATE](#STATE) | Current battery warning | -| faults | `uint16` | | [FAULT](#FAULT) | Smart battery supply status/fault flags (bitmask) for health indication | -| full_charge_capacity_wh | `float32` | Wh | | Compensated battery capacity | -| remaining_capacity_wh | `float32` | Wh | | Compensated battery capacity remaining (Invalid: NaN) | -| over_discharge_count | `uint16` | | | Number of battery overdischarge | -| nominal_voltage | `float32` | V | | Nominal voltage of the battery pack (Invalid: NaN) | -| internal_resistance_estimate | `float32` | Ohm | | Internal resistance per cell estimate | -| ocv_estimate | `float32` | V | | Open circuit voltage estimate | -| ocv_estimate_filtered | `float32` | V | | Filtered open circuit voltage estimate | -| volt_based_soc_estimate | `float32` | | [0 : 1] | Normalized volt based state of charge estimate | -| voltage_prediction | `float32` | V | | Predicted voltage | -| prediction_error | `float32` | V | | Prediction error | -| estimation_covariance_norm | `float32` | | | Norm of the covariance matrix | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| connected | `bool` | | | Whether or not a battery is connected. For power modules this is based on a voltage threshold. | +| voltage_v | `float32` | V | | Battery voltage (Invalid: 0) | +| current_a | `float32` | A | | Battery current (Invalid: -1) | +| current_average_a | `float32` | A | | Battery current average (for FW average in level flight) (Invalid: -1) | +| discharged_mah | `float32` | mAh | | Discharged amount (Invalid: -1) | +| remaining | `float32` | | [0 : 1] | Remaining capacity (Invalid: -1) | +| scale | `float32` | | [1 : -] | Scaling factor to compensate for lower actuation power caused by voltage sag (Invalid: -1) | +| time_remaining_s | `float32` | s | | Predicted time remaining until battery is empty under previous averaged load (Invalid: NaN) | +| temperature | `float32` | degC | | Temperature of the battery (Invalid: NaN) | +| cell_count | `uint8` | | | Number of cells (Invalid: 0) | +| source | `uint8` | | [SOURCE](#SOURCE) | Battery source | +| priority | `uint8` | | | Zero based priority is the connection on the Power Controller V1..Vn AKA BrickN-1 | +| capacity | `uint16` | mAh | | Capacity of the battery when fully charged | +| cycle_count | `uint16` | | | Number of discharge cycles the battery has experienced | +| average_time_to_empty | `uint16` | minutes | | Predicted remaining battery capacity based on the average rate of discharge | +| manufacture_date | `uint16` | | | Manufacture date, part of serial number of the battery pack. Formatted as: Day + Month×32 + (Year–1980)×512 | +| state_of_health | `uint16` | % | [0 : 100] | State of health. FullChargeCapacity/DesignCapacity | +| max_error | `uint16` | % | [1 : 100] | Max error, expected margin of error in the state-of-charge calculation | +| id | `uint8` | | | ID number of a battery. Should be unique and consistent for the lifetime of a vehicle. 1-indexed | +| interface_error | `uint16` | | | Interface error counter | +| voltage_cell_v | `float32[14]` | V | | Battery individual cell voltages (Invalid: 0) | +| max_cell_voltage_delta | `float32` | V | | Max difference between individual cell voltages | +| is_powering_off | `bool` | | | Power off event imminent indication, false if unknown | +| is_required | `bool` | | | Set if the battery is explicitly required before arming | +| warning | `uint8` | | [WARNING](#WARNING), [STATE](#STATE) | Current battery warning | +| faults | `uint16` | | [FAULT](#FAULT) | Smart battery supply status/fault flags (bitmask) for health indication | +| full_charge_capacity_wh | `float32` | Wh | | Compensated battery capacity | +| remaining_capacity_wh | `float32` | Wh | | Compensated battery capacity remaining (Invalid: NaN) | +| over_discharge_count | `uint16` | | | Number of battery overdischarge | +| nominal_voltage | `float32` | V | | Nominal voltage of the battery pack (Invalid: NaN) | +| internal_resistance_estimate | `float32` | Ohm | | Internal resistance per cell estimate | +| ocv_estimate | `float32` | V | | Open circuit voltage estimate | +| ocv_estimate_filtered | `float32` | V | | Filtered open circuit voltage estimate | +| volt_based_soc_estimate | `float32` | | [0 : 1] | Normalized volt based state of charge estimate | +| voltage_prediction | `float32` | V | | Predicted voltage | +| prediction_error | `float32` | V | | Prediction error | +| estimation_covariance_norm | `float32` | | | Norm of the covariance matrix | ## Enums ### SOURCE {#SOURCE} +Used in field(s): [source](#fld_source) + | Назва | Тип | Значення | Опис | | ----------------------------------------------------------------------------------------------- | ------- | -------- | ----------------------------------------------------------------- | | SOURCE_POWER_MODULE | `uint8` | 0 | Power module (analog ADC or I2C power monitor) | @@ -67,6 +69,8 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### WARNING {#WARNING} +Used in field(s): [warning](#fld_warning) + | Назва | Тип | Значення | Опис | | ---------------------------------------------------------------------- | ------- | -------- | -------------------------------------------- | | WARNING_NONE | `uint8` | 0 | No battery low voltage warning active | @@ -77,6 +81,8 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### STATE {#STATE} +Used in field(s): [warning](#fld_warning) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------ | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | STATE_UNHEALTHY | `uint8` | 6 | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in faults field | @@ -84,6 +90,8 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### FAULT {#FAULT} +Used in field(s): [faults](#fld_faults) + | Назва | Тип | Значення | Опис | | -------------------------------------------------------------------------------------------------------------------- | ------- | -------- | --------------------------------------------------------------------------------------------------------------------------------- | | FAULT_DEEP_DISCHARGE | `uint8` | 0 | Battery has deep discharged | diff --git a/docs/uk/msg_docs/BatteryStatusV0.md b/docs/uk/msg_docs/BatteryStatusV0.md index 2abd411342..b6f20f03c5 100644 --- a/docs/uk/msg_docs/BatteryStatusV0.md +++ b/docs/uk/msg_docs/BatteryStatusV0.md @@ -14,52 +14,54 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------------------------------- | ------------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| connected | `bool` | | | Whether or not a battery is connected. For power modules this is based on a voltage threshold. | -| voltage_v | `float32` | V | | Battery voltage (Invalid: 0) | -| current_a | `float32` | A | | Battery current (Invalid: -1) | -| current_average_a | `float32` | A | | Battery current average (for FW average in level flight) (Invalid: -1) | -| discharged_mah | `float32` | mAh | | Discharged amount (Invalid: -1) | -| remaining | `float32` | | [0 : 1] | Remaining capacity (Invalid: -1) | -| scale | `float32` | | [1 : -] | Scaling factor to compensate for lower actuation power caused by voltage sag (Invalid: -1) | -| time_remaining_s | `float32` | s | | Predicted time remaining until battery is empty under previous averaged load (Invalid: NaN) | -| temperature | `float32` | °C | | Temperature of the battery (Invalid: NaN) | -| cell_count | `uint8` | | | Number of cells (Invalid: 0) | -| source | `uint8` | | [SOURCE](#SOURCE) | Battery source | -| priority | `uint8` | | | Zero based priority is the connection on the Power Controller V1..Vn AKA BrickN-1 | -| capacity | `uint16` | mAh | | Capacity of the battery when fully charged | -| cycle_count | `uint16` | | | Number of discharge cycles the battery has experienced | -| average_time_to_empty | `uint16` | minutes | | Predicted remaining battery capacity based on the average rate of discharge | -| serial_number | `uint16` | | | Serial number of the battery pack | -| manufacture_date | `uint16` | | | Manufacture date, part of serial number of the battery pack. Formatted as: Day + Month×32 + (Year–1980)×512 | -| state_of_health | `uint16` | % | [0 : 100] | State of health. FullChargeCapacity/DesignCapacity | -| max_error | `uint16` | % | [1 : 100] | Max error, expected margin of error in the state-of-charge calculation | -| id | `uint8` | | | ID number of a battery. Should be unique and consistent for the lifetime of a vehicle. 1-indexed | -| interface_error | `uint16` | | | Interface error counter | -| voltage_cell_v | `float32[14]` | V | | Battery individual cell voltages (Invalid: 0) | -| max_cell_voltage_delta | `float32` | | | Max difference between individual cell voltages | -| is_powering_off | `bool` | | | Power off event imminent indication, false if unknown | -| is_required | `bool` | | | Set if the battery is explicitly required before arming | -| warning | `uint8` | | [WARNING](#WARNING)[STATE](#STATE) | Current battery warning | -| faults | `uint16` | | [FAULT](#FAULT) | Smart battery supply status/fault flags (bitmask) for health indication | -| full_charge_capacity_wh | `float32` | Wh | | Compensated battery capacity | -| remaining_capacity_wh | `float32` | Wh | | Compensated battery capacity remaining | -| over_discharge_count | `uint16` | | | Number of battery overdischarge | -| nominal_voltage | `float32` | V | | Nominal voltage of the battery pack | -| internal_resistance_estimate | `float32` | Ohm | | Internal resistance per cell estimate | -| ocv_estimate | `float32` | V | | Open circuit voltage estimate | -| ocv_estimate_filtered | `float32` | V | | Filtered open circuit voltage estimate | -| volt_based_soc_estimate | `float32` | | [0 : 1] | Normalized volt based state of charge estimate | -| voltage_prediction | `float32` | V | | Predicted voltage | -| prediction_error | `float32` | V | | Prediction error | -| estimation_covariance_norm | `float32` | | | Norm of the covariance matrix | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| connected | `bool` | | | Whether or not a battery is connected. For power modules this is based on a voltage threshold. | +| voltage_v | `float32` | V | | Battery voltage (Invalid: 0) | +| current_a | `float32` | A | | Battery current (Invalid: -1) | +| current_average_a | `float32` | A | | Battery current average (for FW average in level flight) (Invalid: -1) | +| discharged_mah | `float32` | mAh | | Discharged amount (Invalid: -1) | +| remaining | `float32` | | [0 : 1] | Remaining capacity (Invalid: -1) | +| scale | `float32` | | [1 : -] | Scaling factor to compensate for lower actuation power caused by voltage sag (Invalid: -1) | +| time_remaining_s | `float32` | s | | Predicted time remaining until battery is empty under previous averaged load (Invalid: NaN) | +| temperature | `float32` | °C | | Temperature of the battery (Invalid: NaN) | +| cell_count | `uint8` | | | Number of cells (Invalid: 0) | +| source | `uint8` | | [SOURCE](#SOURCE) | Battery source | +| priority | `uint8` | | | Zero based priority is the connection on the Power Controller V1..Vn AKA BrickN-1 | +| capacity | `uint16` | mAh | | Capacity of the battery when fully charged | +| cycle_count | `uint16` | | | Number of discharge cycles the battery has experienced | +| average_time_to_empty | `uint16` | minutes | | Predicted remaining battery capacity based on the average rate of discharge | +| serial_number | `uint16` | | | Serial number of the battery pack | +| manufacture_date | `uint16` | | | Manufacture date, part of serial number of the battery pack. Formatted as: Day + Month×32 + (Year–1980)×512 | +| state_of_health | `uint16` | % | [0 : 100] | State of health. FullChargeCapacity/DesignCapacity | +| max_error | `uint16` | % | [1 : 100] | Max error, expected margin of error in the state-of-charge calculation | +| id | `uint8` | | | ID number of a battery. Should be unique and consistent for the lifetime of a vehicle. 1-indexed | +| interface_error | `uint16` | | | Interface error counter | +| voltage_cell_v | `float32[14]` | V | | Battery individual cell voltages (Invalid: 0) | +| max_cell_voltage_delta | `float32` | | | Max difference between individual cell voltages | +| is_powering_off | `bool` | | | Power off event imminent indication, false if unknown | +| is_required | `bool` | | | Set if the battery is explicitly required before arming | +| warning | `uint8` | | [WARNING](#WARNING), [STATE](#STATE) | Current battery warning | +| faults | `uint16` | | [FAULT](#FAULT) | Smart battery supply status/fault flags (bitmask) for health indication | +| full_charge_capacity_wh | `float32` | Wh | | Compensated battery capacity | +| remaining_capacity_wh | `float32` | Wh | | Compensated battery capacity remaining | +| over_discharge_count | `uint16` | | | Number of battery overdischarge | +| nominal_voltage | `float32` | V | | Nominal voltage of the battery pack | +| internal_resistance_estimate | `float32` | Ohm | | Internal resistance per cell estimate | +| ocv_estimate | `float32` | V | | Open circuit voltage estimate | +| ocv_estimate_filtered | `float32` | V | | Filtered open circuit voltage estimate | +| volt_based_soc_estimate | `float32` | | [0 : 1] | Normalized volt based state of charge estimate | +| voltage_prediction | `float32` | V | | Predicted voltage | +| prediction_error | `float32` | V | | Prediction error | +| estimation_covariance_norm | `float32` | | | Norm of the covariance matrix | ## Enums ### SOURCE {#SOURCE} +Used in field(s): [source](#fld_source) + | Назва | Тип | Значення | Опис | | ----------------------------------------------------------------------------------------------- | ------- | -------- | ----------------------------------------------------------------- | | SOURCE_POWER_MODULE | `uint8` | 0 | Power module (analog ADC or I2C power monitor) | @@ -68,6 +70,8 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### WARNING {#WARNING} +Used in field(s): [warning](#fld_warning) + | Назва | Тип | Значення | Опис | | ---------------------------------------------------------------------- | ------- | -------- | -------------------------------------------- | | WARNING_NONE | `uint8` | 0 | No battery low voltage warning active | @@ -78,6 +82,8 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### STATE {#STATE} +Used in field(s): [warning](#fld_warning) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------ | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | STATE_UNHEALTHY | `uint8` | 6 | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in faults field | @@ -85,6 +91,8 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### FAULT {#FAULT} +Used in field(s): [faults](#fld_faults) + | Назва | Тип | Значення | Опис | | -------------------------------------------------------------------------------------------------------------------- | ------- | -------- | --------------------------------------------------------------------------------------------------------------------------------- | | FAULT_DEEP_DISCHARGE | `uint8` | 0 | Battery has deep discharged | diff --git a/docs/uk/msg_docs/ButtonEvent.md b/docs/uk/msg_docs/ButtonEvent.md index cb8f817e0d..fb3b09c694 100644 --- a/docs/uk/msg_docs/ButtonEvent.md +++ b/docs/uk/msg_docs/ButtonEvent.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| triggered | `bool` | | | Set to true if the event is triggered | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| triggered | `bool` | | | Set to true if the event is triggered | ## Constants diff --git a/docs/uk/msg_docs/CameraCapture.md b/docs/uk/msg_docs/CameraCapture.md index 6d9ea6b5e5..d08b184457 100644 --- a/docs/uk/msg_docs/CameraCapture.md +++ b/docs/uk/msg_docs/CameraCapture.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_utc | `uint64` | | | Capture time in UTC / GPS time | -| seq | `uint32` | | | Image sequence number | -| lat | `float64` | | | Latitude in degrees (WGS84) | -| lon | `float64` | | | Longitude in degrees (WGS84) | -| alt | `float32` | | | Altitude (AMSL) | -| ground_distance | `float32` | | | Altitude above ground (meters) | -| q | `float32[4]` | | | Attitude of the camera relative to NED earth-fixed frame when using a gimbal, otherwise vehicle attitude | -| result | `int8` | | | 1 for success, 0 for failure, -1 if camera does not provide feedback | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_utc | `uint64` | | | Capture time in UTC / GPS time | +| seq | `uint32` | | | Image sequence number | +| lat | `float64` | | | Latitude in degrees (WGS84) | +| lon | `float64` | | | Longitude in degrees (WGS84) | +| alt | `float32` | | | Altitude (AMSL) | +| ground_distance | `float32` | | | Altitude above ground (meters) | +| q | `float32[4]` | | | Attitude of the camera relative to NED earth-fixed frame when using a gimbal, otherwise vehicle attitude | +| result | `int8` | | | 1 for success, 0 for failure, -1 if camera does not provide feedback | ## Source Message diff --git a/docs/uk/msg_docs/CameraStatus.md b/docs/uk/msg_docs/CameraStatus.md index 9bed7b71f2..a4e456c2ee 100644 --- a/docs/uk/msg_docs/CameraStatus.md +++ b/docs/uk/msg_docs/CameraStatus.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| active_sys_id | `uint8` | | | mavlink system id of the currently active camera | -| active_comp_id | `uint8` | | | mavlink component id of currently active camera | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| active_sys_id | `uint8` | | | mavlink system id of the currently active camera | +| active_comp_id | `uint8` | | | mavlink component id of currently active camera | ## Source Message diff --git a/docs/uk/msg_docs/CameraTrigger.md b/docs/uk/msg_docs/CameraTrigger.md index d12ab9bc1b..cd082f6668 100644 --- a/docs/uk/msg_docs/CameraTrigger.md +++ b/docs/uk/msg_docs/CameraTrigger.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_utc | `uint64` | | | UTC timestamp | -| seq | `uint32` | | | Image sequence number | -| feedback | `bool` | | | Trigger feedback from camera | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_utc | `uint64` | | | UTC timestamp | +| seq | `uint32` | | | Image sequence number | +| feedback | `bool` | | | Trigger feedback from camera | ## Constants diff --git a/docs/uk/msg_docs/CanInterfaceStatus.md b/docs/uk/msg_docs/CanInterfaceStatus.md index f9deefbe31..7d87d321e0 100644 --- a/docs/uk/msg_docs/CanInterfaceStatus.md +++ b/docs/uk/msg_docs/CanInterfaceStatus.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| інтерфейс | `uint8` | | | | -| io_errors | `uint64` | | | | -| frames_tx | `uint64` | | | | -| frames_rx | `uint64` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| interface | `uint8` | | | | +| io_errors | `uint64` | | | | +| frames_tx | `uint64` | | | | +| frames_rx | `uint64` | | | | ## Source Message diff --git a/docs/uk/msg_docs/CellularStatus.md b/docs/uk/msg_docs/CellularStatus.md index a4abb6239b..b504bed0fc 100644 --- a/docs/uk/msg_docs/CellularStatus.md +++ b/docs/uk/msg_docs/CellularStatus.md @@ -12,21 +12,23 @@ This is currently used only for logging cell status from MAVLink. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------- | -------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| status | `uint16` | | [STATUS_FLAG](#STATUS_FLAG) | Status bitmap | -| failure_reason | `uint8` | | [FAILURE_REASON](#FAILURE_REASON) | Failure reason | -| type | `uint8` | | [CELLULAR_NETWORK_RADIO_TYPE](#CELLULAR_NETWORK_RADIO_TYPE) | Cellular network radio type | -| quality | `uint8` | dBm | | Cellular network RSSI/RSRP, absolute value | -| mcc | `uint16` | | | Mobile country code (Invalid: UINT16_MAX) | -| mnc | `uint16` | | | Mobile network code (Invalid: UINT16_MAX) | -| lac | `uint16` | | | Location area code (Invalid: 0) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| status | `uint16` | | [STATUS_FLAG](#STATUS_FLAG) | Status bitmap | +| failure_reason | `uint8` | | [FAILURE_REASON](#FAILURE_REASON) | Failure reason | +| type | `uint8` | | [CELLULAR_NETWORK_RADIO_TYPE](#CELLULAR_NETWORK_RADIO_TYPE) | Cellular network radio type | +| quality | `uint8` | dBm | | Cellular network RSSI/RSRP, absolute value | +| mcc | `uint16` | | | Mobile country code (Invalid: UINT16_MAX) | +| mnc | `uint16` | | | Mobile network code (Invalid: UINT16_MAX) | +| lac | `uint16` | | | Location area code (Invalid: 0) | ## Enums ### STATUS_FLAG {#STATUS_FLAG} +Used in field(s): [status](#fld_status) + | Назва | Тип | Значення | Опис | | ----------------------------------------------------------------------------------------------------------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | STATUS_FLAG_UNKNOWN | `uint16` | 1 | State unknown or not reportable | @@ -45,6 +47,8 @@ This is currently used only for logging cell status from MAVLink. ### FAILURE_REASON {#FAILURE_REASON} +Used in field(s): [failure_reason](#fld_failure_reason) + | Назва | Тип | Значення | Опис | | ---------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ----------------------------------------------- | | FAILURE_REASON_NONE | `uint8` | 0 | No error | @@ -54,6 +58,8 @@ This is currently used only for logging cell status from MAVLink. ### CELLULAR_NETWORK_RADIO_TYPE {#CELLULAR_NETWORK_RADIO_TYPE} +Used in field(s): [type](#fld_type) + | Назва | Тип | Значення | Опис | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ----- | | CELLULAR_NETWORK_RADIO_TYPE_NONE | `uint8` | 0 | None | diff --git a/docs/uk/msg_docs/CollisionConstraints.md b/docs/uk/msg_docs/CollisionConstraints.md index 62f92fda19..8029d7cb5f 100644 --- a/docs/uk/msg_docs/CollisionConstraints.md +++ b/docs/uk/msg_docs/CollisionConstraints.md @@ -10,11 +10,11 @@ Local setpoint constraints in NED frame. setting something to NaN means that no ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| original_setpoint | `float32[2]` | | | velocities demanded | -| adapted_setpoint | `float32[2]` | | | velocities allowed | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| original_setpoint | `float32[2]` | | | velocities demanded | +| adapted_setpoint | `float32[2]` | | | velocities allowed | ## Source Message diff --git a/docs/uk/msg_docs/ConfigOverrides.md b/docs/uk/msg_docs/ConfigOverrides.md index 5a13d8e61d..4bddb35807 100644 --- a/docs/uk/msg_docs/ConfigOverrides.md +++ b/docs/uk/msg_docs/ConfigOverrides.md @@ -10,15 +10,15 @@ Configurable overrides by (external) modes or mode executors. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| disable_auto_disarm | `bool` | | | Prevent the drone from automatically disarming after landing (if configured) | -| defer_failsafes | `bool` | | | Defer all failsafes that can be deferred (until the flag is cleared) | -| defer_failsafes_timeout_s | `int16` | | | Maximum time a failsafe can be deferred. 0 = system default, -1 = no timeout | -| disable_auto_set_home | `bool` | | | Prevent the drone from automatically setting the home position on arm or takeoff | -| source_type | `int8` | | | | -| source_id | `uint8` | | | ID depending on source_type | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| disable_auto_disarm | `bool` | | | Prevent the drone from automatically disarming after landing (if configured) | +| defer_failsafes | `bool` | | | Defer all failsafes that can be deferred (until the flag is cleared) | +| defer_failsafes_timeout_s | `int16` | | | Maximum time a failsafe can be deferred. 0 = system default, -1 = no timeout | +| disable_auto_set_home | `bool` | | | Prevent the drone from automatically setting the home position on arm or takeoff | +| source_type | `int8` | | | | +| source_id | `uint8` | | | ID depending on source_type | ## Constants diff --git a/docs/uk/msg_docs/ConfigOverridesV0.md b/docs/uk/msg_docs/ConfigOverridesV0.md index 9274780467..66b4233dbf 100644 --- a/docs/uk/msg_docs/ConfigOverridesV0.md +++ b/docs/uk/msg_docs/ConfigOverridesV0.md @@ -10,14 +10,14 @@ Configurable overrides by (external) modes or mode executors. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| disable_auto_disarm | `bool` | | | Prevent the drone from automatically disarming after landing (if configured) | -| defer_failsafes | `bool` | | | Defer all failsafes that can be deferred (until the flag is cleared) | -| defer_failsafes_timeout_s | `int16` | | | Maximum time a failsafe can be deferred. 0 = system default, -1 = no timeout | -| source_type | `int8` | | | | -| source_id | `uint8` | | | ID depending on source_type | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| disable_auto_disarm | `bool` | | | Prevent the drone from automatically disarming after landing (if configured) | +| defer_failsafes | `bool` | | | Defer all failsafes that can be deferred (until the flag is cleared) | +| defer_failsafes_timeout_s | `int16` | | | Maximum time a failsafe can be deferred. 0 = system default, -1 = no timeout | +| source_type | `int8` | | | | +| source_id | `uint8` | | | ID depending on source_type | ## Constants diff --git a/docs/uk/msg_docs/ControlAllocatorStatus.md b/docs/uk/msg_docs/ControlAllocatorStatus.md index 5ffdf654c5..477652e8aa 100644 --- a/docs/uk/msg_docs/ControlAllocatorStatus.md +++ b/docs/uk/msg_docs/ControlAllocatorStatus.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| torque_setpoint_achieved | `bool` | | | Boolean indicating whether the 3D torque setpoint was correctly allocated to actuators. 0 if not achieved, 1 if achieved. | -| unallocated_torque | `float32[3]` | | | Unallocated torque. Equal to 0 if the setpoint was achieved. | -| thrust_setpoint_achieved | `bool` | | | Boolean indicating whether the 3D thrust setpoint was correctly allocated to actuators. 0 if not achieved, 1 if achieved. | -| unallocated_thrust | `float32[3]` | | | Unallocated thrust. Equal to 0 if the setpoint was achieved. | -| actuator_saturation | `int8[16]` | | | Indicates actuator saturation status. | -| handled_motor_failure_mask | `uint16` | | | Bitmask of failed motors that were removed from the allocation / effectiveness matrix. Not necessarily identical to the report from FailureDetector | -| motor_stop_mask | `uint16` | | | Bitmaks of motors stopped by failure injection | -| actuator_group_preflight_check_active | `bool` | | | True while an actuator group preflight check (VEHICLE_CMD_ACTUATOR_GROUP_TEST) is overriding the torque/thrust setpoint or collective-tilt | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| torque_setpoint_achieved | `bool` | | | Boolean indicating whether the 3D torque setpoint was correctly allocated to actuators. 0 if not achieved, 1 if achieved. | +| unallocated_torque | `float32[3]` | | | Unallocated torque. Equal to 0 if the setpoint was achieved. | +| thrust_setpoint_achieved | `bool` | | | Boolean indicating whether the 3D thrust setpoint was correctly allocated to actuators. 0 if not achieved, 1 if achieved. | +| unallocated_thrust | `float32[3]` | | | Unallocated thrust. Equal to 0 if the setpoint was achieved. | +| actuator_saturation | `int8[16]` | | | Indicates actuator saturation status. | +| handled_motor_failure_mask | `uint16` | | | Bitmask of failed motors that were removed from the allocation / effectiveness matrix. Not necessarily identical to the report from FailureDetector | +| motor_stop_mask | `uint16` | | | Bitmaks of motors stopped by failure injection | +| actuator_group_preflight_check_active | `bool` | | | True while an actuator group preflight check (VEHICLE_CMD_ACTUATOR_GROUP_TEST) is overriding the torque/thrust setpoint or collective-tilt | ## Constants diff --git a/docs/uk/msg_docs/Cpuload.md b/docs/uk/msg_docs/Cpuload.md index 74f34510eb..c291770a12 100644 --- a/docs/uk/msg_docs/Cpuload.md +++ b/docs/uk/msg_docs/Cpuload.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| load | `float32` | | | processor load from 0 to 1 | -| ram_usage | `float32` | | | RAM usage from 0 to 1 | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| load | `float32` | | | processor load from 0 to 1 | +| ram_usage | `float32` | | | RAM usage from 0 to 1 | ## Source Message diff --git a/docs/uk/msg_docs/DatamanRequest.md b/docs/uk/msg_docs/DatamanRequest.md index fe83821570..f6ffc9d476 100644 --- a/docs/uk/msg_docs/DatamanRequest.md +++ b/docs/uk/msg_docs/DatamanRequest.md @@ -8,15 +8,15 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| client_id | `uint8` | | | | -| request_type | `uint8` | | | id/read/write/clear | -| item | `uint8` | | | dm_item_t | -| index | `uint32` | | | | -| data | `uint8[56]` | | | | -| data_length | `uint32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| client_id | `uint8` | | | | +| request_type | `uint8` | | | id/read/write/clear | +| item | `uint8` | | | dm_item_t | +| index | `uint32` | | | | +| data | `uint8[56]` | | | | +| data_length | `uint32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/DatamanResponse.md b/docs/uk/msg_docs/DatamanResponse.md index 3f983efae3..cf1756a2d2 100644 --- a/docs/uk/msg_docs/DatamanResponse.md +++ b/docs/uk/msg_docs/DatamanResponse.md @@ -8,15 +8,15 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| client_id | `uint8` | | | | -| request_type | `uint8` | | | id/read/write/clear | -| item | `uint8` | | | dm_item_t | -| index | `uint32` | | | | -| data | `uint8[56]` | | | | -| status | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| client_id | `uint8` | | | | +| request_type | `uint8` | | | id/read/write/clear | +| item | `uint8` | | | dm_item_t | +| index | `uint32` | | | | +| data | `uint8[56]` | | | | +| status | `uint8` | | | | ## Constants diff --git a/docs/uk/msg_docs/DebugArray.md b/docs/uk/msg_docs/DebugArray.md index 503136b10b..0f1525ee89 100644 --- a/docs/uk/msg_docs/DebugArray.md +++ b/docs/uk/msg_docs/DebugArray.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ------------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| id | `uint16` | | | unique ID of debug array, used to discriminate between arrays | -| name | `char[10]` | | | name of the debug array (max. 10 characters) | -| data | `float32[58]` | | | data | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ------------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| id | `uint16` | | | unique ID of debug array, used to discriminate between arrays | +| name | `char[10]` | | | name of the debug array (max. 10 characters) | +| data | `float32[58]` | | | data | ## Constants diff --git a/docs/uk/msg_docs/DebugKeyValue.md b/docs/uk/msg_docs/DebugKeyValue.md index c79acead58..d37374e817 100644 --- a/docs/uk/msg_docs/DebugKeyValue.md +++ b/docs/uk/msg_docs/DebugKeyValue.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| key | `char[10]` | | | max. 10 characters as key / name | -| value | `float32` | | | the value to send as debug output | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| key | `char[10]` | | | max. 10 characters as key / name | +| value | `float32` | | | the value to send as debug output | ## Source Message diff --git a/docs/uk/msg_docs/DebugValue.md b/docs/uk/msg_docs/DebugValue.md index 229522b22c..9d3eca8c8a 100644 --- a/docs/uk/msg_docs/DebugValue.md +++ b/docs/uk/msg_docs/DebugValue.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| ind | `int8` | | | index of debug variable | -| value | `float32` | | | the value to send as debug output | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| ind | `int8` | | | index of debug variable | +| value | `float32` | | | the value to send as debug output | ## Source Message diff --git a/docs/uk/msg_docs/DebugVect.md b/docs/uk/msg_docs/DebugVect.md index 398a1f5c9b..feeb1a45fa 100644 --- a/docs/uk/msg_docs/DebugVect.md +++ b/docs/uk/msg_docs/DebugVect.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| name | `char[10]` | | | max. 10 characters as key / name | -| x | `float32` | | | x value | -| y | `float32` | | | y value | -| z | `float32` | | | z value | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| name | `char[10]` | | | max. 10 characters as key / name | +| x | `float32` | | | x value | +| y | `float32` | | | y value | +| z | `float32` | | | z value | ## Source Message diff --git a/docs/uk/msg_docs/DeviceInformation.md b/docs/uk/msg_docs/DeviceInformation.md index 8728432313..7ede6359db 100644 --- a/docs/uk/msg_docs/DeviceInformation.md +++ b/docs/uk/msg_docs/DeviceInformation.md @@ -13,20 +13,22 @@ as well as tracking of the used firmware versions on the devices. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ---------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_type | `uint8` | | [DEVICE_TYPE](#DEVICE_TYPE) | Type of the device. Matches MAVLink DEVICE_TYPE enum | -| name | `char[80]` | | | Name of device e.g. DroneCAN node name | -| `uint32` | | | Unique device ID for the sensor. Does not change between power cycles. (Invalid: 0 if not available) | | -| firmware_version | `char[24]` | | | Firmware version. (Invalid: empty if not available) | -| hardware_version | `char[24]` | | | Hardware version. (Invalid: empty if not available) | -| serial_number | `char[33]` | | | Device serial number or unique identifier. (Invalid: empty if not available) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_type | `uint8` | | [DEVICE_TYPE](#DEVICE_TYPE) | Type of the device. Matches MAVLink DEVICE_TYPE enum | +| name | `char[80]` | | | Name of device e.g. DroneCAN node name | +| | `uint32` | | | Unique device ID for the sensor. Does not change between power cycles. (Invalid: 0 if not available) | +| firmware_version | `char[24]` | | | Firmware version. (Invalid: empty if not available) | +| hardware_version | `char[24]` | | | Hardware version. (Invalid: empty if not available) | +| serial_number | `char[33]` | | | Device serial number or unique identifier. (Invalid: empty if not available) | ## Enums ### DEVICE_TYPE {#DEVICE_TYPE} +Used in field(s): [device_type](#fld_device_type) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | ---------------------- | | DEVICE_TYPE_GENERIC | `uint8` | 0 | Generic/unknown sensor | diff --git a/docs/uk/msg_docs/DifferentialPressure.md b/docs/uk/msg_docs/DifferentialPressure.md index 0f5c2c41d5..6ad32f9a4f 100644 --- a/docs/uk/msg_docs/DifferentialPressure.md +++ b/docs/uk/msg_docs/DifferentialPressure.md @@ -13,14 +13,14 @@ The information is published in the `SCALED_PRESSURE_n` MAVLink messages (along ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time of publication (since system start) | -| timestamp_sample | `uint64` | us | | Time of raw data capture | -| device_id | `uint32` | | | Unique device ID for the sensor that does not change between power cycles | -| differential_pressure_pa | `float32` | Pa | | Differential pressure reading (may be negative) | -| temperature | `float32` | degC | | Temperature (Invalid: NaN if unknown) | -| error_count | `uint32` | | | Number of errors detected by driver | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time of publication (since system start) | +| timestamp_sample | `uint64` | us | | Time of raw data capture | +| device_id | `uint32` | | | Unique device ID for the sensor that does not change between power cycles | +| differential_pressure_pa | `float32` | Pa | | Differential pressure reading (may be negative) | +| temperature | `float32` | degC | | Temperature (Invalid: NaN if unknown) | +| error_count | `uint32` | | | Number of errors detected by driver | ## Source Message diff --git a/docs/uk/msg_docs/DistanceSensor.md b/docs/uk/msg_docs/DistanceSensor.md index 318b12ab99..189c66775a 100644 --- a/docs/uk/msg_docs/DistanceSensor.md +++ b/docs/uk/msg_docs/DistanceSensor.md @@ -10,21 +10,21 @@ DISTANCE_SENSOR message data. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| min_distance | `float32` | | | Minimum distance the sensor can measure (in m) | -| max_distance | `float32` | | | Maximum distance the sensor can measure (in m) | -| current_distance | `float32` | | | Current distance reading (in m) | -| variance | `float32` | | | Measurement variance (in m^2), 0 for unknown / invalid readings | -| signal_quality | `int8` | | | Signal quality in percent (0...100%), where 0 = invalid signal, 100 = perfect signal, and -1 = unknown signal quality. | -| type | `uint8` | | | Type from MAV_DISTANCE_SENSOR enum | -| h_fov | `float32` | | | Sensor horizontal field of view (rad) | -| v_fov | `float32` | | | Sensor vertical field of view (rad) | -| q | `float32[4]` | | | Quaterion sensor orientation with respect to the vehicle body frame to specify the orientation ROTATION_CUSTOM | -| orientation | `uint8` | | | Direction the sensor faces from MAV_SENSOR_ORIENTATION enum | -| mode | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| min_distance | `float32` | | | Minimum distance the sensor can measure (in m) | +| max_distance | `float32` | | | Maximum distance the sensor can measure (in m) | +| current_distance | `float32` | | | Current distance reading (in m) | +| variance | `float32` | | | Measurement variance (in m^2), 0 for unknown / invalid readings | +| signal_quality | `int8` | | | Signal quality in percent (0...100%), where 0 = invalid signal, 100 = perfect signal, and -1 = unknown signal quality. | +| type | `uint8` | | | Type from MAV_DISTANCE_SENSOR enum | +| h_fov | `float32` | | | Sensor horizontal field of view (rad) | +| v_fov | `float32` | | | Sensor vertical field of view (rad) | +| q | `float32[4]` | | | Quaterion sensor orientation with respect to the vehicle body frame to specify the orientation ROTATION_CUSTOM | +| orientation | `uint8` | | | Direction the sensor faces from MAV_SENSOR_ORIENTATION enum | +| mode | `uint8` | | | | ## Constants diff --git a/docs/uk/msg_docs/DistanceSensorModeChangeRequest.md b/docs/uk/msg_docs/DistanceSensorModeChangeRequest.md index 1ac9ba3b7a..1566424c6b 100644 --- a/docs/uk/msg_docs/DistanceSensorModeChangeRequest.md +++ b/docs/uk/msg_docs/DistanceSensorModeChangeRequest.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| request_on_off | `uint8` | | | request to disable/enable the distance sensor | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| request_on_off | `uint8` | | | request to disable/enable the distance sensor | ## Constants diff --git a/docs/uk/msg_docs/DronecanNodeStatus.md b/docs/uk/msg_docs/DronecanNodeStatus.md index 59ac90abd2..4f30d65bfa 100644 --- a/docs/uk/msg_docs/DronecanNodeStatus.md +++ b/docs/uk/msg_docs/DronecanNodeStatus.md @@ -8,15 +8,15 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| node_id | `uint16` | | | The node ID which this data comes from | -| uptime_sec | `uint32` | | | Node uptime | -| health | `uint8` | | | | -| mode | `uint8` | | | | -| sub_mode | `uint8` | | | | -| vendor_specific_status_code | `uint16` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| node_id | `uint16` | | | The node ID which this data comes from | +| uptime_sec | `uint32` | | | Node uptime | +| health | `uint8` | | | | +| mode | `uint8` | | | | +| sub_mode | `uint8` | | | | +| vendor_specific_status_code | `uint16` | | | | ## Constants diff --git a/docs/uk/msg_docs/Ekf2Timestamps.md b/docs/uk/msg_docs/Ekf2Timestamps.md index 2002941ad2..c441d268c9 100644 --- a/docs/uk/msg_docs/Ekf2Timestamps.md +++ b/docs/uk/msg_docs/Ekf2Timestamps.md @@ -10,16 +10,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| airspeed_timestamp_rel | `int16` | | | | -| airspeed_validated_timestamp_rel | `int16` | | | | -| distance_sensor_timestamp_rel | `int16` | | | | -| optical_flow_timestamp_rel | `int16` | | | | -| vehicle_air_data_timestamp_rel | `int16` | | | | -| vehicle_magnetometer_timestamp_rel | `int16` | | | | -| visual_odometry_timestamp_rel | `int16` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| airspeed_timestamp_rel | `int16` | | | | +| airspeed_validated_timestamp_rel | `int16` | | | | +| distance_sensor_timestamp_rel | `int16` | | | | +| optical_flow_timestamp_rel | `int16` | | | | +| vehicle_air_data_timestamp_rel | `int16` | | | | +| vehicle_magnetometer_timestamp_rel | `int16` | | | | +| visual_odometry_timestamp_rel | `int16` | | | | ## Constants diff --git a/docs/uk/msg_docs/EscEepromRead.md b/docs/uk/msg_docs/EscEepromRead.md index 7e53e03217..b4ce977429 100644 --- a/docs/uk/msg_docs/EscEepromRead.md +++ b/docs/uk/msg_docs/EscEepromRead.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ----------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| firmware | `uint8` | | | ESC firmware type (see ESC_FIRMWARE enum in MAVLink) | -| index | `uint8` | | | Index of the ESC (0 = ESC1, 1 = ESC2, etc.) | -| length | `uint16` | | | Length of valid data | -| data | `uint8[48]` | | | Raw ESC EEPROM data | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| firmware | `uint8` | | | ESC firmware type (see ESC_FIRMWARE enum in MAVLink) | +| index | `uint8` | | | Index of the ESC (0 = ESC1, 1 = ESC2, etc.) | +| length | `uint16` | | | Length of valid data | +| data | `uint8[48]` | | | Raw ESC EEPROM data | ## Constants diff --git a/docs/uk/msg_docs/EscEepromWrite.md b/docs/uk/msg_docs/EscEepromWrite.md index ae74662268..18c8069836 100644 --- a/docs/uk/msg_docs/EscEepromWrite.md +++ b/docs/uk/msg_docs/EscEepromWrite.md @@ -8,14 +8,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| firmware | `uint8` | | | ESC firmware type (see ESC_FIRMWARE enum in MAVLink) | -| index | `uint8` | | | Index of the ESC (0 = ESC1, 1 = ESC2, etc, 255 = All) | -| length | `uint16` | | | Length of valid data | -| data | `uint8[48]` | | | Raw ESC EEPROM data | -| write_mask | `uint32[2]` | | | Bitmask indicating which bytes in the data array should be written (max 48 values) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| firmware | `uint8` | | | ESC firmware type (see ESC_FIRMWARE enum in MAVLink) | +| index | `uint8` | | | Index of the ESC (0 = ESC1, 1 = ESC2, etc, 255 = All) | +| length | `uint16` | | | Length of valid data | +| data | `uint8[48]` | | | Raw ESC EEPROM data | +| write_mask | `uint32[2]` | | | Bitmask indicating which bytes in the data array should be written (max 48 values) | ## Constants diff --git a/docs/uk/msg_docs/EscReport.md b/docs/uk/msg_docs/EscReport.md index 5ee09e6f92..8098f6f4b6 100644 --- a/docs/uk/msg_docs/EscReport.md +++ b/docs/uk/msg_docs/EscReport.md @@ -8,24 +8,26 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------- | --------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| esc_errorcount | `uint32` | | | Number of reported errors by ESC - if supported | -| esc_rpm | `int32` | rpm | | Motor RPM, negative for reverse rotation - if supported | -| esc_voltage | `float32` | V | | Voltage measured from current ESC - if supported | -| esc_current | `float32` | A | | Current measured from current ESC - if supported | -| esc_temperature | `float32` | degC | | Temperature measured from current ESC - if supported | -| motor_temperature | `int16` | degC | | Temperature measured from current motor - if supported | -| esc_state | `uint8` | | | State of ESC - depend on Vendor | -| actuator_function | `uint8` | | | Actuator output function (one of Motor1...MotorN) | -| failures | `uint16` | | [FAILURE](#FAILURE) | Bitmask to indicate the internal ESC faults | -| esc_power | `int8` | % | [0 : 100] | Applied power (negative values reserved) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| esc_errorcount | `uint32` | | | Number of reported errors by ESC - if supported | +| esc_rpm | `int32` | rpm | | Motor RPM, negative for reverse rotation - if supported | +| esc_voltage | `float32` | V | | Voltage measured from current ESC - if supported | +| esc_current | `float32` | A | | Current measured from current ESC - if supported | +| esc_temperature | `float32` | degC | | Temperature measured from current ESC - if supported | +| motor_temperature | `int16` | degC | | Temperature measured from current motor - if supported | +| esc_state | `uint8` | | | State of ESC - depend on Vendor | +| actuator_function | `uint8` | | | Actuator output function (one of Motor1...MotorN) | +| failures | `uint16` | | [FAILURE](#FAILURE) | Bitmask to indicate the internal ESC faults | +| esc_power | `int8` | % | [0 : 100] | Applied power (negative values reserved) | ## Enums ### FAILURE {#FAILURE} +Used in field(s): [failures](#fld_failures) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | FAILURE_OVER_CURRENT | `uint8` | 0 | (1 << 0) | diff --git a/docs/uk/msg_docs/EscStatus.md b/docs/uk/msg_docs/EscStatus.md index ed9e724a2b..8675d20208 100644 --- a/docs/uk/msg_docs/EscStatus.md +++ b/docs/uk/msg_docs/EscStatus.md @@ -8,20 +8,22 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | --------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| counter | `uint16` | | | Incremented by the writing thread everytime new data is stored | -| esc_count | `uint8` | | | Number of connected ESCs | -| esc_connectiontype | `uint8` | | [ESC_CONNECTION_TYPE](#ESC_CONNECTION_TYPE) | How ESCs connected to the system | -| esc_online_flags | `uint16` | | | Bitmask indicating which ESC is online/offline (in motor order) | -| esc_armed_flags | `uint16` | | | Bitmask indicating which ESC is armed (in motor order) | -| esc | `EscReport[12]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | --------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| counter | `uint16` | | | Incremented by the writing thread everytime new data is stored | +| esc_count | `uint8` | | | Number of connected ESCs | +| esc_connectiontype | `uint8` | | [ESC_CONNECTION_TYPE](#ESC_CONNECTION_TYPE) | How ESCs connected to the system | +| esc_online_flags | `uint16` | | | Bitmask indicating which ESC is online/offline (in motor order) | +| esc_armed_flags | `uint16` | | | Bitmask indicating which ESC is armed (in motor order) | +| esc | `EscReport[12]` | | | | ## Enums ### ESC_CONNECTION_TYPE {#ESC_CONNECTION_TYPE} +Used in field(s): [esc_connectiontype](#fld_esc_connectiontype) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | ------------------------ | | ESC_CONNECTION_TYPE_PPM | `uint8` | 0 | Traditional PPM ESC | diff --git a/docs/uk/msg_docs/EstimatorAidSource1d.md b/docs/uk/msg_docs/EstimatorAidSource1d.md index 87999a262f..d7f6fdfe95 100644 --- a/docs/uk/msg_docs/EstimatorAidSource1d.md +++ b/docs/uk/msg_docs/EstimatorAidSource1d.md @@ -8,22 +8,22 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| estimator_instance | `uint8` | | | | -| device_id | `uint32` | | | | -| time_last_fuse | `uint64` | | | | -| observation | `float32` | | | | -| observation_variance | `float32` | | | | -| innovation | `float32` | | | | -| innovation_filtered | `float32` | | | | -| innovation_variance | `float32` | | | | -| test_ratio | `float32` | | | normalized innovation squared | -| test_ratio_filtered | `float32` | | | signed filtered test ratio | -| innovation_rejected | `bool` | | | true if the observation has been rejected | -| fused | `bool` | | | true if the sample was successfully fused | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| estimator_instance | `uint8` | | | | +| device_id | `uint32` | | | | +| time_last_fuse | `uint64` | | | | +| observation | `float32` | | | | +| observation_variance | `float32` | | | | +| innovation | `float32` | | | | +| innovation_filtered | `float32` | | | | +| innovation_variance | `float32` | | | | +| test_ratio | `float32` | | | normalized innovation squared | +| test_ratio_filtered | `float32` | | | signed filtered test ratio | +| innovation_rejected | `bool` | | | true if the observation has been rejected | +| fused | `bool` | | | true if the sample was successfully fused | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorAidSource2d.md b/docs/uk/msg_docs/EstimatorAidSource2d.md index 8fd13db4b3..2735b333d6 100644 --- a/docs/uk/msg_docs/EstimatorAidSource2d.md +++ b/docs/uk/msg_docs/EstimatorAidSource2d.md @@ -8,22 +8,22 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| estimator_instance | `uint8` | | | | -| device_id | `uint32` | | | | -| time_last_fuse | `uint64` | | | | -| observation | `float64[2]` | | | | -| observation_variance | `float32[2]` | | | | -| innovation | `float32[2]` | | | | -| innovation_filtered | `float32[2]` | | | | -| innovation_variance | `float32[2]` | | | | -| test_ratio | `float32[2]` | | | normalized innovation squared | -| test_ratio_filtered | `float32[2]` | | | signed filtered test ratio | -| innovation_rejected | `bool` | | | true if the observation has been rejected | -| fused | `bool` | | | true if the sample was successfully fused | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| estimator_instance | `uint8` | | | | +| device_id | `uint32` | | | | +| time_last_fuse | `uint64` | | | | +| observation | `float64[2]` | | | | +| observation_variance | `float32[2]` | | | | +| innovation | `float32[2]` | | | | +| innovation_filtered | `float32[2]` | | | | +| innovation_variance | `float32[2]` | | | | +| test_ratio | `float32[2]` | | | normalized innovation squared | +| test_ratio_filtered | `float32[2]` | | | signed filtered test ratio | +| innovation_rejected | `bool` | | | true if the observation has been rejected | +| fused | `bool` | | | true if the sample was successfully fused | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorAidSource3d.md b/docs/uk/msg_docs/EstimatorAidSource3d.md index 5e90c2aa9f..7c9b2e90f5 100644 --- a/docs/uk/msg_docs/EstimatorAidSource3d.md +++ b/docs/uk/msg_docs/EstimatorAidSource3d.md @@ -8,22 +8,22 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| estimator_instance | `uint8` | | | | -| device_id | `uint32` | | | | -| time_last_fuse | `uint64` | | | | -| observation | `float32[3]` | | | | -| observation_variance | `float32[3]` | | | | -| innovation | `float32[3]` | | | | -| innovation_filtered | `float32[3]` | | | | -| innovation_variance | `float32[3]` | | | | -| test_ratio | `float32[3]` | | | normalized innovation squared | -| test_ratio_filtered | `float32[3]` | | | signed filtered test ratio | -| innovation_rejected | `bool` | | | true if the observation has been rejected | -| fused | `bool` | | | true if the sample was successfully fused | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| estimator_instance | `uint8` | | | | +| device_id | `uint32` | | | | +| time_last_fuse | `uint64` | | | | +| observation | `float32[3]` | | | | +| observation_variance | `float32[3]` | | | | +| innovation | `float32[3]` | | | | +| innovation_filtered | `float32[3]` | | | | +| innovation_variance | `float32[3]` | | | | +| test_ratio | `float32[3]` | | | normalized innovation squared | +| test_ratio_filtered | `float32[3]` | | | signed filtered test ratio | +| innovation_rejected | `bool` | | | true if the observation has been rejected | +| fused | `bool` | | | true if the sample was successfully fused | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorBias.md b/docs/uk/msg_docs/EstimatorBias.md index 8239338d7c..6dd0a539fc 100644 --- a/docs/uk/msg_docs/EstimatorBias.md +++ b/docs/uk/msg_docs/EstimatorBias.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| bias | `float32` | | | estimated barometric altitude bias (m) | -| bias_var | `float32` | | | estimated barometric altitude bias variance (m^2) | -| innov | `float32` | | | innovation of the last measurement fusion (m) | -| innov_var | `float32` | | | innovation variance of the last measurement fusion (m^2) | -| innov_test_ratio | `float32` | | | normalized innovation squared test ratio | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| bias | `float32` | | | estimated barometric altitude bias (m) | +| bias_var | `float32` | | | estimated barometric altitude bias variance (m^2) | +| innov | `float32` | | | innovation of the last measurement fusion (m) | +| innov_var | `float32` | | | innovation variance of the last measurement fusion (m^2) | +| innov_test_ratio | `float32` | | | normalized innovation squared test ratio | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorBias3d.md b/docs/uk/msg_docs/EstimatorBias3d.md index 35548f2562..9da8538d2d 100644 --- a/docs/uk/msg_docs/EstimatorBias3d.md +++ b/docs/uk/msg_docs/EstimatorBias3d.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| bias | `float32[3]` | | | estimated barometric altitude bias (m) | -| bias_var | `float32[3]` | | | estimated barometric altitude bias variance (m^2) | -| innov | `float32[3]` | | | innovation of the last measurement fusion (m) | -| innov_var | `float32[3]` | | | innovation variance of the last measurement fusion (m^2) | -| innov_test_ratio | `float32[3]` | | | normalized innovation squared test ratio | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| bias | `float32[3]` | | | estimated barometric altitude bias (m) | +| bias_var | `float32[3]` | | | estimated barometric altitude bias variance (m^2) | +| innov | `float32[3]` | | | innovation of the last measurement fusion (m) | +| innov_var | `float32[3]` | | | innovation variance of the last measurement fusion (m^2) | +| innov_test_ratio | `float32[3]` | | | normalized innovation squared test ratio | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorEventFlags.md b/docs/uk/msg_docs/EstimatorEventFlags.md index 889265b204..91d46488f8 100644 --- a/docs/uk/msg_docs/EstimatorEventFlags.md +++ b/docs/uk/msg_docs/EstimatorEventFlags.md @@ -8,28 +8,28 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| information_event_changes | `uint32` | | | number of information event changes | -| gps_checks_passed | `bool` | | | 0 - true when gps quality checks are passing passed | -| reset_vel_to_gps | `bool` | | | 1 - true when the velocity states are reset to the gps measurement | -| reset_vel_to_flow | `bool` | | | 2 - true when the velocity states are reset using the optical flow measurement | -| reset_vel_to_vision | `bool` | | | 3 - true when the velocity states are reset to the vision system measurement | -| reset_vel_to_zero | `bool` | | | 4 - true when the velocity states are reset to zero | -| reset_pos_to_last_known | `bool` | | | 5 - true when the position states are reset to the last known position | -| reset_pos_to_gps | `bool` | | | 6 - true when the position states are reset to the gps measurement | -| reset_pos_to_vision | `bool` | | | 7 - true when the position states are reset to the vision system measurement | -| starting_gps_fusion | `bool` | | | 8 - true when the filter starts using gps measurements to correct the state estimates | -| starting_vision_pos_fusion | `bool` | | | 9 - true when the filter starts using vision system position measurements to correct the state estimates | -| starting_vision_vel_fusion | `bool` | | | 10 - true when the filter starts using vision system velocity measurements to correct the state estimates | -| starting_vision_yaw_fusion | `bool` | | | 11 - true when the filter starts using vision system yaw measurements to correct the state estimates | -| yaw_aligned_to_imu_gps | `bool` | | | 12 - true when the filter resets the yaw to an estimate derived from IMU and GPS data | -| reset_hgt_to_baro | `bool` | | | 13 - true when the vertical position state is reset to the baro measurement | -| reset_hgt_to_gps | `bool` | | | 14 - true when the vertical position state is reset to the gps measurement | -| reset_hgt_to_rng | `bool` | | | 15 - true when the vertical position state is reset to the rng measurement | -| reset_hgt_to_ev | `bool` | | | 16 - true when the vertical position state is reset to the ev measurement | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| information_event_changes | `uint32` | | | number of information event changes | +| gps_checks_passed | `bool` | | | 0 - true when gps quality checks are passing passed | +| reset_vel_to_gps | `bool` | | | 1 - true when the velocity states are reset to the gps measurement | +| reset_vel_to_flow | `bool` | | | 2 - true when the velocity states are reset using the optical flow measurement | +| reset_vel_to_vision | `bool` | | | 3 - true when the velocity states are reset to the vision system measurement | +| reset_vel_to_zero | `bool` | | | 4 - true when the velocity states are reset to zero | +| reset_pos_to_last_known | `bool` | | | 5 - true when the position states are reset to the last known position | +| reset_pos_to_gps | `bool` | | | 6 - true when the position states are reset to the gps measurement | +| reset_pos_to_vision | `bool` | | | 7 - true when the position states are reset to the vision system measurement | +| starting_gps_fusion | `bool` | | | 8 - true when the filter starts using gps measurements to correct the state estimates | +| starting_vision_pos_fusion | `bool` | | | 9 - true when the filter starts using vision system position measurements to correct the state estimates | +| starting_vision_vel_fusion | `bool` | | | 10 - true when the filter starts using vision system velocity measurements to correct the state estimates | +| starting_vision_yaw_fusion | `bool` | | | 11 - true when the filter starts using vision system yaw measurements to correct the state estimates | +| yaw_aligned_to_imu_gps | `bool` | | | 12 - true when the filter resets the yaw to an estimate derived from IMU and GPS data | +| reset_hgt_to_baro | `bool` | | | 13 - true when the vertical position state is reset to the baro measurement | +| reset_hgt_to_gps | `bool` | | | 14 - true when the vertical position state is reset to the gps measurement | +| reset_hgt_to_rng | `bool` | | | 15 - true when the vertical position state is reset to the rng measurement | +| reset_hgt_to_ev | `bool` | | | 16 - true when the vertical position state is reset to the ev measurement | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorFusionControl.md b/docs/uk/msg_docs/EstimatorFusionControl.md index b413a30c58..8fe5071bd0 100644 --- a/docs/uk/msg_docs/EstimatorFusionControl.md +++ b/docs/uk/msg_docs/EstimatorFusionControl.md @@ -8,27 +8,27 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| gps_intended | `bool[2]` | | | | -| of_intended | `bool` | | | | -| ev_intended | `bool` | | | | -| agp_intended | `bool[4]` | | | | -| baro_intended | `bool` | | | | -| rng_intended | `bool` | | | | -| mag_intended | `bool` | | | | -| aspd_intended | `bool` | | | | -| rngbcn_intended | `bool` | | | | -| gps_active | `bool[2]` | | | | -| of_active | `bool` | | | | -| ev_active | `bool` | | | | -| agp_active | `bool[4]` | | | | -| baro_active | `bool` | | | | -| rng_active | `bool` | | | | -| mag_active | `bool` | | | | -| aspd_active | `bool` | | | | -| rngbcn_active | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| gps_intended | `bool[2]` | | | | +| of_intended | `bool` | | | | +| ev_intended | `bool` | | | | +| agp_intended | `bool[4]` | | | | +| baro_intended | `bool` | | | | +| rng_intended | `bool` | | | | +| mag_intended | `bool` | | | | +| aspd_intended | `bool` | | | | +| rngbcn_intended | `bool` | | | | +| gps_active | `bool[2]` | | | | +| of_active | `bool` | | | | +| ev_active | `bool` | | | | +| agp_active | `bool[4]` | | | | +| baro_active | `bool` | | | | +| rng_active | `bool` | | | | +| mag_active | `bool` | | | | +| aspd_active | `bool` | | | | +| rngbcn_active | `bool` | | | | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorGpsStatus.md b/docs/uk/msg_docs/EstimatorGpsStatus.md index b68473fbcd..e3f8f268f8 100644 --- a/docs/uk/msg_docs/EstimatorGpsStatus.md +++ b/docs/uk/msg_docs/EstimatorGpsStatus.md @@ -8,25 +8,25 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| checks_passed | `bool` | | | | -| check_fail_gps_fix | `bool` | | | 0 : insufficient fix type (no 3D solution) | -| check_fail_min_sat_count | `bool` | | | 1 : minimum required sat count fail | -| check_fail_max_pdop | `bool` | | | 2 : maximum allowed PDOP fail | -| check_fail_max_horz_err | `bool` | | | 3 : maximum allowed horizontal position error fail | -| check_fail_max_vert_err | `bool` | | | 4 : maximum allowed vertical position error fail | -| check_fail_max_spd_err | `bool` | | | 5 : maximum allowed speed error fail | -| check_fail_max_horz_drift | `bool` | | | 6 : maximum allowed horizontal position drift fail - requires stationary vehicle | -| check_fail_max_vert_drift | `bool` | | | 7 : maximum allowed vertical position drift fail - requires stationary vehicle | -| check_fail_max_horz_spd_err | `bool` | | | 8 : maximum allowed horizontal speed fail - requires stationary vehicle | -| check_fail_max_vert_spd_err | `bool` | | | 9 : maximum allowed vertical velocity discrepancy fail | -| check_fail_spoofed_gps | `bool` | | | 10 : GPS signal is spoofed | -| position_drift_rate_horizontal_m_s | `float32` | | | Horizontal position rate magnitude (m/s) | -| position_drift_rate_vertical_m_s | `float32` | | | Vertical position rate magnitude (m/s) | -| filtered_horizontal_speed_m_s | `float32` | | | Filtered horizontal velocity magnitude (m/s) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| checks_passed | `bool` | | | | +| check_fail_gps_fix | `bool` | | | 0 : insufficient fix type (no 3D solution) | +| check_fail_min_sat_count | `bool` | | | 1 : minimum required sat count fail | +| check_fail_max_pdop | `bool` | | | 2 : maximum allowed PDOP fail | +| check_fail_max_horz_err | `bool` | | | 3 : maximum allowed horizontal position error fail | +| check_fail_max_vert_err | `bool` | | | 4 : maximum allowed vertical position error fail | +| check_fail_max_spd_err | `bool` | | | 5 : maximum allowed speed error fail | +| check_fail_max_horz_drift | `bool` | | | 6 : maximum allowed horizontal position drift fail - requires stationary vehicle | +| check_fail_max_vert_drift | `bool` | | | 7 : maximum allowed vertical position drift fail - requires stationary vehicle | +| check_fail_max_horz_spd_err | `bool` | | | 8 : maximum allowed horizontal speed fail - requires stationary vehicle | +| check_fail_max_vert_spd_err | `bool` | | | 9 : maximum allowed vertical velocity discrepancy fail | +| check_fail_spoofed_gps | `bool` | | | 10 : GPS signal is spoofed | +| position_drift_rate_horizontal_m_s | `float32` | | | Horizontal position rate magnitude (m/s) | +| position_drift_rate_vertical_m_s | `float32` | | | Vertical position rate magnitude (m/s) | +| filtered_horizontal_speed_m_s | `float32` | | | Filtered horizontal velocity magnitude (m/s) | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorInnovations.md b/docs/uk/msg_docs/EstimatorInnovations.md index 2d477368a2..1248fbf16c 100644 --- a/docs/uk/msg_docs/EstimatorInnovations.md +++ b/docs/uk/msg_docs/EstimatorInnovations.md @@ -8,30 +8,30 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| gps_hvel | `float32[2]` | | | horizontal GPS velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | -| `float32` | | | vertical GPS velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | | -| gps_hpos | `float32[2]` | | | horizontal GPS position innovation (m) and innovation variance (m\*\*2) | -| `float32` | | | vertical GPS position innovation (m) and innovation variance (m\*\*2) | | -| ev_hvel | `float32[2]` | | | horizontal external vision velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | -| `float32` | | | vertical external vision velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | | -| ev_hpos | `float32[2]` | | | horizontal external vision position innovation (m) and innovation variance (m\*\*2) | -| `float32` | | | vertical external vision position innovation (m) and innovation variance (m\*\*2) | | -| rng_vpos | `float32` | | | range sensor height innovation (m) and innovation variance (m\*\*2) | -| baro_vpos | `float32` | | | barometer height innovation (m) and innovation variance (m\*\*2) | -| aux_hvel | `float32[2]` | | | horizontal auxiliary velocity innovation from landing target measurement (m/sec) and innovation variance ((m/sec)\*\*2) | -| flow | `float32[2]` | | | flow innvoation (rad/sec) and innovation variance ((rad/sec)\*\*2) | -| heading | `float32` | | | heading innovation (rad) and innovation variance (rad\*\*2) | -| mag_field | `float32[3]` | | | earth magnetic field innovation (Gauss) and innovation variance (Gauss\*\*2) | -| gravity | `float32[3]` | | | gravity innovation from accelerometerr vector (m/s\*\*2) | -| drag | `float32[2]` | | | drag specific force innovation (m/sec\*\*2) and innovation variance ((m/sec)\*\*2) | -| airspeed | `float32` | | | airspeed innovation (m/sec) and innovation variance ((m/sec)\*\*2) | -| beta | `float32` | | | synthetic sideslip innovation (rad) and innovation variance (rad\*\*2) | -| hagl | `float32` | | | height of ground innovation (m) and innovation variance (m\*\*2) | -| hagl_rate | `float32` | | | height of ground rate innovation (m/s) and innovation variance ((m/s)\*\*2) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| gps_hvel | `float32[2]` | | | horizontal GPS velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | +| | `float32` | | | vertical GPS velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | +| gps_hpos | `float32[2]` | | | horizontal GPS position innovation (m) and innovation variance (m\*\*2) | +| | `float32` | | | vertical GPS position innovation (m) and innovation variance (m\*\*2) | +| ev_hvel | `float32[2]` | | | horizontal external vision velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | +| | `float32` | | | vertical external vision velocity innovation (m/sec) and innovation variance ((m/sec)\*\*2) | +| ev_hpos | `float32[2]` | | | horizontal external vision position innovation (m) and innovation variance (m\*\*2) | +| | `float32` | | | vertical external vision position innovation (m) and innovation variance (m\*\*2) | +| rng_vpos | `float32` | | | range sensor height innovation (m) and innovation variance (m\*\*2) | +| baro_vpos | `float32` | | | barometer height innovation (m) and innovation variance (m\*\*2) | +| aux_hvel | `float32[2]` | | | horizontal auxiliary velocity innovation from landing target measurement (m/sec) and innovation variance ((m/sec)\*\*2) | +| flow | `float32[2]` | | | flow innvoation (rad/sec) and innovation variance ((rad/sec)\*\*2) | +| heading | `float32` | | | heading innovation (rad) and innovation variance (rad\*\*2) | +| mag_field | `float32[3]` | | | earth magnetic field innovation (Gauss) and innovation variance (Gauss\*\*2) | +| gravity | `float32[3]` | | | gravity innovation from accelerometerr vector (m/s\*\*2) | +| drag | `float32[2]` | | | drag specific force innovation (m/sec\*\*2) and innovation variance ((m/sec)\*\*2) | +| airspeed | `float32` | | | airspeed innovation (m/sec) and innovation variance ((m/sec)\*\*2) | +| beta | `float32` | | | synthetic sideslip innovation (rad) and innovation variance (rad\*\*2) | +| hagl | `float32` | | | height of ground innovation (m) and innovation variance (m\*\*2) | +| hagl_rate | `float32` | | | height of ground rate innovation (m/s) and innovation variance ((m/s)\*\*2) | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorSelectorStatus.md b/docs/uk/msg_docs/EstimatorSelectorStatus.md index 050615149d..9fa256e7ec 100644 --- a/docs/uk/msg_docs/EstimatorSelectorStatus.md +++ b/docs/uk/msg_docs/EstimatorSelectorStatus.md @@ -8,24 +8,24 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| primary_instance | `uint8` | | | | -| instances_available | `uint8` | | | | -| instance_changed_count | `uint32` | | | | -| last_instance_change | `uint64` | | | | -| accel_device_id | `uint32` | | | | -| baro_device_id | `uint32` | | | | -| gyro_device_id | `uint32` | | | | -| mag_device_id | `uint32` | | | | -| combined_test_ratio | `float32[9]` | | | | -| relative_test_ratio | `float32[9]` | | | | -| healthy | `bool[9]` | | | | -| accumulated_gyro_error | `float32[4]` | | | | -| accumulated_accel_error | `float32[4]` | | | | -| gyro_fault_detected | `bool` | | | | -| accel_fault_detected | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| primary_instance | `uint8` | | | | +| instances_available | `uint8` | | | | +| instance_changed_count | `uint32` | | | | +| last_instance_change | `uint64` | | | | +| accel_device_id | `uint32` | | | | +| baro_device_id | `uint32` | | | | +| gyro_device_id | `uint32` | | | | +| mag_device_id | `uint32` | | | | +| combined_test_ratio | `float32[9]` | | | | +| relative_test_ratio | `float32[9]` | | | | +| healthy | `bool[9]` | | | | +| accumulated_gyro_error | `float32[4]` | | | | +| accumulated_accel_error | `float32[4]` | | | | +| gyro_fault_detected | `bool` | | | | +| accel_fault_detected | `bool` | | | | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorSensorBias.md b/docs/uk/msg_docs/EstimatorSensorBias.md index 13816d7086..fdbe06ceed 100644 --- a/docs/uk/msg_docs/EstimatorSensorBias.md +++ b/docs/uk/msg_docs/EstimatorSensorBias.md @@ -10,28 +10,28 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| gyro_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| gyro_bias | `float32[3]` | | | gyroscope in-run bias in body frame (rad/s) | -| gyro_bias_limit | `float32` | | | magnitude of maximum gyroscope in-run bias in body frame (rad/s) | -| gyro_bias_variance | `float32[3]` | | | | -| gyro_bias_valid | `bool` | | | | -| gyro_bias_stable | `bool` | | | true when the gyro bias estimate is stable enough to use for calibration | -| accel_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| accel_bias | `float32[3]` | | | accelerometer in-run bias in body frame (m/s^2) | -| accel_bias_limit | `float32` | | | magnitude of maximum accelerometer in-run bias in body frame (m/s^2) | -| accel_bias_variance | `float32[3]` | | | | -| accel_bias_valid | `bool` | | | | -| accel_bias_stable | `bool` | | | true when the accel bias estimate is stable enough to use for calibration | -| mag_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| mag_bias | `float32[3]` | | | magnetometer in-run bias in body frame (Gauss) | -| mag_bias_limit | `float32` | | | magnitude of maximum magnetometer in-run bias in body frame (Gauss) | -| mag_bias_variance | `float32[3]` | | | | -| mag_bias_valid | `bool` | | | | -| mag_bias_stable | `bool` | | | true when the mag bias estimate is stable enough to use for calibration | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| gyro_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| gyro_bias | `float32[3]` | | | gyroscope in-run bias in body frame (rad/s) | +| gyro_bias_limit | `float32` | | | magnitude of maximum gyroscope in-run bias in body frame (rad/s) | +| gyro_bias_variance | `float32[3]` | | | | +| gyro_bias_valid | `bool` | | | | +| gyro_bias_stable | `bool` | | | true when the gyro bias estimate is stable enough to use for calibration | +| accel_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| accel_bias | `float32[3]` | | | accelerometer in-run bias in body frame (m/s^2) | +| accel_bias_limit | `float32` | | | magnitude of maximum accelerometer in-run bias in body frame (m/s^2) | +| accel_bias_variance | `float32[3]` | | | | +| accel_bias_valid | `bool` | | | | +| accel_bias_stable | `bool` | | | true when the accel bias estimate is stable enough to use for calibration | +| mag_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| mag_bias | `float32[3]` | | | magnetometer in-run bias in body frame (Gauss) | +| mag_bias_limit | `float32` | | | magnitude of maximum magnetometer in-run bias in body frame (Gauss) | +| mag_bias_variance | `float32[3]` | | | | +| mag_bias_valid | `bool` | | | | +| mag_bias_stable | `bool` | | | true when the mag bias estimate is stable enough to use for calibration | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorStates.md b/docs/uk/msg_docs/EstimatorStates.md index aade307f41..46293c08ac 100644 --- a/docs/uk/msg_docs/EstimatorStates.md +++ b/docs/uk/msg_docs/EstimatorStates.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| states | `float32[25]` | | | Internal filter states | -| n_states | `uint8` | | | Number of states effectively used | -| covariances | `float32[24]` | | | Diagonal Elements of Covariance Matrix | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| states | `float32[25]` | | | Internal filter states | +| n_states | `uint8` | | | Number of states effectively used | +| covariances | `float32[24]` | | | Diagonal Elements of Covariance Matrix | ## Source Message diff --git a/docs/uk/msg_docs/EstimatorStatus.md b/docs/uk/msg_docs/EstimatorStatus.md index 22058756d9..1445c36171 100644 --- a/docs/uk/msg_docs/EstimatorStatus.md +++ b/docs/uk/msg_docs/EstimatorStatus.md @@ -8,46 +8,46 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| output_tracking_error | `float32[3]` | | | return a vector containing the output predictor angular, velocity and position tracking error magnitudes (rad), (m/s), (m) | -| gps_check_fail_flags | `uint16` | | | Bitmask to indicate status of GPS checks - see definition below | -| control_mode_flags | `uint64` | | | Bitmask to indicate EKF logic state | -| filter_fault_flags | `uint32` | | | Bitmask to indicate EKF internal faults | -| pos_horiz_accuracy | `float32` | | | 1-Sigma estimated horizontal position accuracy relative to the estimators origin (m) | -| pos_vert_accuracy | `float32` | | | 1-Sigma estimated vertical position accuracy relative to the estimators origin (m) | -| hdg_test_ratio | `float32` | | | low-pass filtered ratio of the largest heading innovation component to the innovation test limit | -| vel_test_ratio | `float32` | | | low-pass filtered ratio of the largest velocity innovation component to the innovation test limit | -| pos_test_ratio | `float32` | | | low-pass filtered ratio of the largest horizontal position innovation component to the innovation test limit | -| hgt_test_ratio | `float32` | | | low-pass filtered ratio of the vertical position innovation to the innovation test limit | -| tas_test_ratio | `float32` | | | low-pass filtered ratio of the true airspeed innovation to the innovation test limit | -| hagl_test_ratio | `float32` | | | low-pass filtered ratio of the height above ground innovation to the innovation test limit | -| beta_test_ratio | `float32` | | | low-pass filtered ratio of the synthetic sideslip innovation to the innovation test limit | -| solution_status_flags | `uint16` | | | Bitmask indicating which filter kinematic state outputs are valid for flight control use. | -| reset_count_vel_ne | `uint8` | | | number of horizontal position reset events (allow to wrap if count exceeds 255) | -| reset_count_vel_d | `uint8` | | | number of vertical velocity reset events (allow to wrap if count exceeds 255) | -| reset_count_pos_ne | `uint8` | | | number of horizontal position reset events (allow to wrap if count exceeds 255) | -| reset_count_pod_d | `uint8` | | | number of vertical position reset events (allow to wrap if count exceeds 255) | -| reset_count_quat | `uint8` | | | number of quaternion reset events (allow to wrap if count exceeds 255) | -| time_slip | `float32` | | | cumulative amount of time in seconds that the EKF inertial calculation has slipped relative to system time | -| pre_flt_fail_innov_heading | `bool` | | | | -| pre_flt_fail_innov_height | `bool` | | | | -| pre_flt_fail_innov_pos_horiz | `bool` | | | | -| pre_flt_fail_innov_vel_horiz | `bool` | | | | -| pre_flt_fail_innov_vel_vert | `bool` | | | | -| pre_flt_fail_mag_field_disturbed | `bool` | | | | -| accel_device_id | `uint32` | | | | -| gyro_device_id | `uint32` | | | | -| baro_device_id | `uint32` | | | | -| mag_device_id | `uint32` | | | | -| health_flags | `uint8` | | | Bitmask to indicate sensor health states (vel, pos, hgt) | -| timeout_flags | `uint8` | | | Bitmask to indicate timeout flags (vel, pos, hgt) | -| mag_inclination_deg | `float32` | | | | -| mag_inclination_ref_deg | `float32` | | | | -| mag_strength_gs | `float32` | | | | -| mag_strength_ref_gs | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| output_tracking_error | `float32[3]` | | | return a vector containing the output predictor angular, velocity and position tracking error magnitudes (rad), (m/s), (m) | +| gps_check_fail_flags | `uint16` | | | Bitmask to indicate status of GPS checks - see definition below | +| control_mode_flags | `uint64` | | | Bitmask to indicate EKF logic state | +| filter_fault_flags | `uint32` | | | Bitmask to indicate EKF internal faults | +| pos_horiz_accuracy | `float32` | | | 1-Sigma estimated horizontal position accuracy relative to the estimators origin (m) | +| pos_vert_accuracy | `float32` | | | 1-Sigma estimated vertical position accuracy relative to the estimators origin (m) | +| hdg_test_ratio | `float32` | | | low-pass filtered ratio of the largest heading innovation component to the innovation test limit | +| vel_test_ratio | `float32` | | | low-pass filtered ratio of the largest velocity innovation component to the innovation test limit | +| pos_test_ratio | `float32` | | | low-pass filtered ratio of the largest horizontal position innovation component to the innovation test limit | +| hgt_test_ratio | `float32` | | | low-pass filtered ratio of the vertical position innovation to the innovation test limit | +| tas_test_ratio | `float32` | | | low-pass filtered ratio of the true airspeed innovation to the innovation test limit | +| hagl_test_ratio | `float32` | | | low-pass filtered ratio of the height above ground innovation to the innovation test limit | +| beta_test_ratio | `float32` | | | low-pass filtered ratio of the synthetic sideslip innovation to the innovation test limit | +| solution_status_flags | `uint16` | | | Bitmask indicating which filter kinematic state outputs are valid for flight control use. | +| reset_count_vel_ne | `uint8` | | | number of horizontal position reset events (allow to wrap if count exceeds 255) | +| reset_count_vel_d | `uint8` | | | number of vertical velocity reset events (allow to wrap if count exceeds 255) | +| reset_count_pos_ne | `uint8` | | | number of horizontal position reset events (allow to wrap if count exceeds 255) | +| reset_count_pod_d | `uint8` | | | number of vertical position reset events (allow to wrap if count exceeds 255) | +| reset_count_quat | `uint8` | | | number of quaternion reset events (allow to wrap if count exceeds 255) | +| time_slip | `float32` | | | cumulative amount of time in seconds that the EKF inertial calculation has slipped relative to system time | +| pre_flt_fail_innov_heading | `bool` | | | | +| pre_flt_fail_innov_height | `bool` | | | | +| pre_flt_fail_innov_pos_horiz | `bool` | | | | +| pre_flt_fail_innov_vel_horiz | `bool` | | | | +| pre_flt_fail_innov_vel_vert | `bool` | | | | +| pre_flt_fail_mag_field_disturbed | `bool` | | | | +| accel_device_id | `uint32` | | | | +| gyro_device_id | `uint32` | | | | +| baro_device_id | `uint32` | | | | +| mag_device_id | `uint32` | | | | +| health_flags | `uint8` | | | Bitmask to indicate sensor health states (vel, pos, hgt) | +| timeout_flags | `uint8` | | | Bitmask to indicate timeout flags (vel, pos, hgt) | +| mag_inclination_deg | `float32` | | | | +| mag_inclination_ref_deg | `float32` | | | | +| mag_strength_gs | `float32` | | | | +| mag_strength_ref_gs | `float32` | | | | ## Constants diff --git a/docs/uk/msg_docs/EstimatorStatusFlags.md b/docs/uk/msg_docs/EstimatorStatusFlags.md index 3a52606275..2fed7f6669 100644 --- a/docs/uk/msg_docs/EstimatorStatusFlags.md +++ b/docs/uk/msg_docs/EstimatorStatusFlags.md @@ -8,73 +8,73 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| control_status_changes | `uint32` | | | number of filter control status (cs) changes | -| cs_tilt_align | `bool` | | | 0 - true if the filter tilt alignment is complete | -| cs_yaw_align | `bool` | | | 1 - true if the filter yaw alignment is complete | -| cs_gnss_pos | `bool` | | | 2 - true if GNSS position measurement fusion is intended | -| cs_opt_flow | `bool` | | | 3 - true if optical flow measurements fusion is intended | -| cs_mag_hdg | `bool` | | | 4 - true if a simple magnetic yaw heading fusion is intended | -| cs_mag_3d | `bool` | | | 5 - true if 3-axis magnetometer measurement fusion is intended | -| cs_mag_dec | `bool` | | | 6 - true if synthetic magnetic declination measurements fusion is intended | -| cs_in_air | `bool` | | | 7 - true when the vehicle is airborne | -| cs_wind | `bool` | | | 8 - true when wind velocity is being estimated | -| cs_baro_hgt | `bool` | | | 9 - true when baro data is being fused | -| cs_rng_hgt | `bool` | | | 10 - true when range finder data is being fused for height aiding | -| cs_gps_hgt | `bool` | | | 11 - true when GPS altitude is being fused | -| cs_ev_pos | `bool` | | | 12 - true when local position data fusion from external vision is intended | -| cs_ev_yaw | `bool` | | | 13 - true when yaw data from external vision measurements fusion is intended | -| cs_ev_hgt | `bool` | | | 14 - true when height data from external vision measurements is being fused | -| cs_fuse_beta | `bool` | | | 15 - true when synthetic sideslip measurements are being fused | -| cs_mag_field_disturbed | `bool` | | | 16 - true when the mag field does not match the expected strength | -| cs_fixed_wing | `bool` | | | 17 - true when the vehicle is operating as a fixed wing vehicle | -| cs_mag_fault | `bool` | | | 18 - true when the magnetometer has been declared faulty and is no longer being used | -| cs_fuse_aspd | `bool` | | | 19 - true when airspeed measurements are being fused | -| cs_gnd_effect | `bool` | | | 20 - true when protection from ground effect induced static pressure rise is active | -| cs_rng_stuck | `bool` | | | 21 - true when rng data wasn't ready for more than 10s and new rng values haven't changed enough | -| cs_gnss_yaw | `bool` | | | 22 - true when yaw (not ground course) data fusion from a GPS receiver is intended | -| cs_mag_aligned_in_flight | `bool` | | | 23 - true when the in-flight mag field alignment has been completed | -| cs_ev_vel | `bool` | | | 24 - true when local frame velocity data fusion from external vision measurements is intended | -| cs_synthetic_mag_z | `bool` | | | 25 - true when we are using a synthesized measurement for the magnetometer Z component | -| cs_vehicle_at_rest | `bool` | | | 26 - true when the vehicle is at rest | -| cs_gnss_yaw_fault | `bool` | | | 27 - true when the GNSS heading has been declared faulty and is no longer being used | -| cs_rng_fault | `bool` | | | 28 - true when the range finder has been declared faulty and is no longer being used | -| cs_inertial_dead_reckoning | `bool` | | | 29 - true if we are no longer fusing measurements that constrain horizontal velocity drift | -| cs_wind_dead_reckoning | `bool` | | | 30 - true if we are navigationg reliant on wind relative measurements | -| cs_rng_kin_consistent | `bool` | | | 31 - true when the range finder kinematic consistency check is passing | -| cs_fake_pos | `bool` | | | 32 - true when fake position measurements are being fused | -| cs_fake_hgt | `bool` | | | 33 - true when fake height measurements are being fused | -| cs_gravity_vector | `bool` | | | 34 - true when gravity vector measurements are being fused | -| cs_mag | `bool` | | | 35 - true if 3-axis magnetometer measurement fusion (mag states only) is intended | -| cs_ev_yaw_fault | `bool` | | | 36 - true when the EV heading has been declared faulty and is no longer being used | -| cs_mag_heading_consistent | `bool` | | | 37 - true when the heading obtained from mag data is declared consistent with the filter | -| cs_aux_gpos | `bool` | | | 38 - true if auxiliary global position measurement fusion is intended | -| cs_rng_terrain | `bool` | | | 39 - true if we are fusing range finder data for terrain | -| cs_opt_flow_terrain | `bool` | | | 40 - true if we are fusing flow data for terrain | -| cs_valid_fake_pos | `bool` | | | 41 - true if a valid constant position is being fused | -| cs_constant_pos | `bool` | | | 42 - true if the vehicle is at a constant position | -| cs_baro_fault | `bool` | | | 43 - true when the current baro has been declared faulty and is no longer being used | -| cs_gnss_vel | `bool` | | | 44 - true if GNSS velocity measurement fusion is intended | -| cs_gnss_fault | `bool` | | | 45 - true if GNSS true if GNSS measurements (lat, lon, vel) have been declared faulty | -| cs_yaw_manual | `bool` | | | 46 - true if yaw has been set manually | -| cs_gnss_hgt_fault | `bool` | | | 47 - true if GNSS true if GNSS measurements (alt) have been declared faulty | -| cs_in_transition | `bool` | | | 48 - true if the vehicle is in vtol transition | -| cs_heading_observable | `bool` | | | 49 - true when heading is observable | -| fault_status_changes | `uint32` | | | number of filter fault status (fs) changes | -| fs_bad_mag_x | `bool` | | | 0 - true if the fusion of the magnetometer X-axis has encountered a numerical error | -| fs_bad_mag_y | `bool` | | | 1 - true if the fusion of the magnetometer Y-axis has encountered a numerical error | -| fs_bad_mag_z | `bool` | | | 2 - true if the fusion of the magnetometer Z-axis has encountered a numerical error | -| fs_bad_hdg | `bool` | | | 3 - true if the fusion of the heading angle has encountered a numerical error | -| fs_bad_mag_decl | `bool` | | | 4 - true if the fusion of the magnetic declination has encountered a numerical error | -| fs_bad_airspeed | `bool` | | | 5 - true if fusion of the airspeed has encountered a numerical error | -| fs_bad_sideslip | `bool` | | | 6 - true if fusion of the synthetic sideslip constraint has encountered a numerical error | -| fs_bad_optflow_x | `bool` | | | 7 - true if fusion of the optical flow X axis has encountered a numerical error | -| fs_bad_optflow_y | `bool` | | | 8 - true if fusion of the optical flow Y axis has encountered a numerical error | -| fs_bad_acc_vertical | `bool` | | | 10 - true if bad vertical accelerometer data has been detected | -| fs_bad_acc_clipping | `bool` | | | 11 - true if delta velocity data contains clipping (asymmetric railing) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| control_status_changes | `uint32` | | | number of filter control status (cs) changes | +| cs_tilt_align | `bool` | | | 0 - true if the filter tilt alignment is complete | +| cs_yaw_align | `bool` | | | 1 - true if the filter yaw alignment is complete | +| cs_gnss_pos | `bool` | | | 2 - true if GNSS position measurement fusion is intended | +| cs_opt_flow | `bool` | | | 3 - true if optical flow measurements fusion is intended | +| cs_mag_hdg | `bool` | | | 4 - true if a simple magnetic yaw heading fusion is intended | +| cs_mag_3d | `bool` | | | 5 - true if 3-axis magnetometer measurement fusion is intended | +| cs_mag_dec | `bool` | | | 6 - true if synthetic magnetic declination measurements fusion is intended | +| cs_in_air | `bool` | | | 7 - true when the vehicle is airborne | +| cs_wind | `bool` | | | 8 - true when wind velocity is being estimated | +| cs_baro_hgt | `bool` | | | 9 - true when baro data is being fused | +| cs_rng_hgt | `bool` | | | 10 - true when range finder data is being fused for height aiding | +| cs_gps_hgt | `bool` | | | 11 - true when GPS altitude is being fused | +| cs_ev_pos | `bool` | | | 12 - true when local position data fusion from external vision is intended | +| cs_ev_yaw | `bool` | | | 13 - true when yaw data from external vision measurements fusion is intended | +| cs_ev_hgt | `bool` | | | 14 - true when height data from external vision measurements is being fused | +| cs_fuse_beta | `bool` | | | 15 - true when synthetic sideslip measurements are being fused | +| cs_mag_field_disturbed | `bool` | | | 16 - true when the mag field does not match the expected strength | +| cs_fixed_wing | `bool` | | | 17 - true when the vehicle is operating as a fixed wing vehicle | +| cs_mag_fault | `bool` | | | 18 - true when the magnetometer has been declared faulty and is no longer being used | +| cs_fuse_aspd | `bool` | | | 19 - true when airspeed measurements are being fused | +| cs_gnd_effect | `bool` | | | 20 - true when protection from ground effect induced static pressure rise is active | +| cs_rng_stuck | `bool` | | | 21 - true when rng data wasn't ready for more than 10s and new rng values haven't changed enough | +| cs_gnss_yaw | `bool` | | | 22 - true when yaw (not ground course) data fusion from a GPS receiver is intended | +| cs_mag_aligned_in_flight | `bool` | | | 23 - true when the in-flight mag field alignment has been completed | +| cs_ev_vel | `bool` | | | 24 - true when local frame velocity data fusion from external vision measurements is intended | +| cs_synthetic_mag_z | `bool` | | | 25 - true when we are using a synthesized measurement for the magnetometer Z component | +| cs_vehicle_at_rest | `bool` | | | 26 - true when the vehicle is at rest | +| cs_gnss_yaw_fault | `bool` | | | 27 - true when the GNSS heading has been declared faulty and is no longer being used | +| cs_rng_fault | `bool` | | | 28 - true when the range finder has been declared faulty and is no longer being used | +| cs_inertial_dead_reckoning | `bool` | | | 29 - true if we are no longer fusing measurements that constrain horizontal velocity drift | +| cs_wind_dead_reckoning | `bool` | | | 30 - true if we are navigationg reliant on wind relative measurements | +| cs_rng_kin_consistent | `bool` | | | 31 - true when the range finder kinematic consistency check is passing | +| cs_fake_pos | `bool` | | | 32 - true when fake position measurements are being fused | +| cs_fake_hgt | `bool` | | | 33 - true when fake height measurements are being fused | +| cs_gravity_vector | `bool` | | | 34 - true when gravity vector measurements are being fused | +| cs_mag | `bool` | | | 35 - true if 3-axis magnetometer measurement fusion (mag states only) is intended | +| cs_ev_yaw_fault | `bool` | | | 36 - true when the EV heading has been declared faulty and is no longer being used | +| cs_mag_heading_consistent | `bool` | | | 37 - true when the heading obtained from mag data is declared consistent with the filter | +| cs_aux_gpos | `bool` | | | 38 - true if auxiliary global position measurement fusion is intended | +| cs_rng_terrain | `bool` | | | 39 - true if we are fusing range finder data for terrain | +| cs_opt_flow_terrain | `bool` | | | 40 - true if we are fusing flow data for terrain | +| cs_valid_fake_pos | `bool` | | | 41 - true if a valid constant position is being fused | +| cs_constant_pos | `bool` | | | 42 - true if the vehicle is at a constant position | +| cs_baro_fault | `bool` | | | 43 - true when the current baro has been declared faulty and is no longer being used | +| cs_gnss_vel | `bool` | | | 44 - true if GNSS velocity measurement fusion is intended | +| cs_gnss_fault | `bool` | | | 45 - true if GNSS true if GNSS measurements (lat, lon, vel) have been declared faulty | +| cs_yaw_manual | `bool` | | | 46 - true if yaw has been set manually | +| cs_gnss_hgt_fault | `bool` | | | 47 - true if GNSS true if GNSS measurements (alt) have been declared faulty | +| cs_in_transition | `bool` | | | 48 - true if the vehicle is in vtol transition | +| cs_heading_observable | `bool` | | | 49 - true when heading is observable | +| fault_status_changes | `uint32` | | | number of filter fault status (fs) changes | +| fs_bad_mag_x | `bool` | | | 0 - true if the fusion of the magnetometer X-axis has encountered a numerical error | +| fs_bad_mag_y | `bool` | | | 1 - true if the fusion of the magnetometer Y-axis has encountered a numerical error | +| fs_bad_mag_z | `bool` | | | 2 - true if the fusion of the magnetometer Z-axis has encountered a numerical error | +| fs_bad_hdg | `bool` | | | 3 - true if the fusion of the heading angle has encountered a numerical error | +| fs_bad_mag_decl | `bool` | | | 4 - true if the fusion of the magnetic declination has encountered a numerical error | +| fs_bad_airspeed | `bool` | | | 5 - true if fusion of the airspeed has encountered a numerical error | +| fs_bad_sideslip | `bool` | | | 6 - true if fusion of the synthetic sideslip constraint has encountered a numerical error | +| fs_bad_optflow_x | `bool` | | | 7 - true if fusion of the optical flow X axis has encountered a numerical error | +| fs_bad_optflow_y | `bool` | | | 8 - true if fusion of the optical flow Y axis has encountered a numerical error | +| fs_bad_acc_vertical | `bool` | | | 10 - true if bad vertical accelerometer data has been detected | +| fs_bad_acc_clipping | `bool` | | | 11 - true if delta velocity data contains clipping (asymmetric railing) | ## Source Message diff --git a/docs/uk/msg_docs/Event.md b/docs/uk/msg_docs/Event.md index 137d27ec40..48e218b8c2 100644 --- a/docs/uk/msg_docs/Event.md +++ b/docs/uk/msg_docs/Event.md @@ -10,13 +10,13 @@ Events interface. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| id | `uint32` | | | Event ID | -| event_sequence | `uint16` | | | Event sequence number | -| arguments | `uint8[25]` | | | (optional) arguments, depend on event id | -| log_levels | `uint8` | | | Log levels: 4 bits MSB: internal, 4 bits LSB: external | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------ | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| id | `uint32` | | | Event ID | +| event_sequence | `uint16` | | | Event sequence number | +| arguments | `uint8[25]` | | | (optional) arguments, depend on event id | +| log_levels | `uint8` | | | Log levels: 4 bits MSB: internal, 4 bits LSB: external | ## Constants diff --git a/docs/uk/msg_docs/EventV0.md b/docs/uk/msg_docs/EventV0.md index 430ed5404d..47a05fc3ab 100644 --- a/docs/uk/msg_docs/EventV0.md +++ b/docs/uk/msg_docs/EventV0.md @@ -10,13 +10,13 @@ this message is required here in the msg_old folder because other msg are depend ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| id | `uint32` | | | Event ID | -| event_sequence | `uint16` | | | Event sequence number | -| arguments | `uint8[25]` | | | (optional) arguments, depend on event id | -| log_levels | `uint8` | | | Log levels: 4 bits MSB: internal, 4 bits LSB: external | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------ | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| id | `uint32` | | | Event ID | +| event_sequence | `uint16` | | | Event sequence number | +| arguments | `uint8[25]` | | | (optional) arguments, depend on event id | +| log_levels | `uint8` | | | Log levels: 4 bits MSB: internal, 4 bits LSB: external | ## Constants diff --git a/docs/uk/msg_docs/FailsafeFlags.md b/docs/uk/msg_docs/FailsafeFlags.md index aca375b032..155bcedecf 100644 --- a/docs/uk/msg_docs/FailsafeFlags.md +++ b/docs/uk/msg_docs/FailsafeFlags.md @@ -13,54 +13,54 @@ The flag comments are used as label for the failsafe state machine simulation ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| mode_req_angular_velocity | `uint32` | | | | -| mode_req_attitude | `uint32` | | | | -| mode_req_local_alt | `uint32` | | | | -| mode_req_local_position | `uint32` | | | | -| mode_req_local_position_relaxed | `uint32` | | | | -| mode_req_global_position | `uint32` | | | | -| mode_req_global_position_relaxed | `uint32` | | | | -| mode_req_mission | `uint32` | | | | -| mode_req_offboard_signal | `uint32` | | | | -| mode_req_home_position | `uint32` | | | | -| mode_req_wind_and_flight_time_compliance | `uint32` | | | if set, mode cannot be entered if wind or flight time limit exceeded | -| mode_req_prevent_arming | `uint32` | | | if set, cannot arm while in this mode | -| mode_req_manual_control | `uint32` | | | | -| mode_req_other | `uint32` | | | other requirements, not covered above (for external modes) | -| angular_velocity_invalid | `bool` | | | Angular velocity invalid | -| attitude_invalid | `bool` | | | Attitude invalid | -| local_altitude_invalid | `bool` | | | Local altitude invalid | -| local_position_invalid | `bool` | | | Local position estimate invalid | -| local_position_invalid_relaxed | `bool` | | | Local position with reduced accuracy requirements invalid (e.g. flying with optical flow) | -| local_velocity_invalid | `bool` | | | Local velocity estimate invalid | -| global_position_invalid | `bool` | | | Global position estimate invalid | -| global_position_invalid_relaxed | `bool` | | | Global position estimate invalid with relaxed accuracy requirements | -| auto_mission_missing | `bool` | | | No mission available | -| offboard_control_signal_lost | `bool` | | | Offboard signal lost | -| home_position_invalid | `bool` | | | No home position available | -| manual_control_signal_lost | `bool` | | | Manual control (RC) signal lost | -| gcs_connection_lost | `bool` | | | GCS connection lost | -| battery_warning | `uint8` | | | Battery warning level (see BatteryStatus.msg) | -| battery_low_remaining_time | `bool` | | | Low battery based on remaining flight time | -| battery_unhealthy | `bool` | | | Battery unhealthy | -| fd_critical_failure | `bool` | | | Critical failure (attitude limit exceeded, or external ATS) | -| fd_esc_arming_failure | `bool` | | | ESC failed to arm | -| fd_imbalanced_prop | `bool` | | | Imbalanced propeller detected | -| fd_motor_failure | `bool` | | | Motor failure | -| fd_alt_loss | `bool` | | | Uncommanded altitude loss (rotary-wing, altitude-controlled flight) | -| geofence_breached | `bool` | | | Geofence breached (one or multiple) | -| mission_failure | `bool` | | | Mission failure | -| vtol_fixed_wing_system_failure | `bool` | | | vehicle in fixed-wing system failure failsafe mode (after quad-chute) | -| wind_limit_exceeded | `bool` | | | Wind limit exceeded | -| flight_time_limit_exceeded | `bool` | | | Maximum flight time exceeded | -| position_accuracy_low | `bool` | | | Position estimate has dropped below threshold, but is currently still declared valid | -| navigator_failure | `bool` | | | Navigator failed to execute a mode | -| parachute_unhealthy | `bool` | | | Parachute system missing or unhealthy | -| remote_id_unhealthy | `bool` | | | Remote ID (Open Drone ID) system missing or unhealthy | -| gnss_lost | `bool` | | | Active GNSS count dropped below SYS_HAS_NUM_GNSS, or two receivers report inconsistent positions | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| mode_req_angular_velocity | `uint32` | | | | +| mode_req_attitude | `uint32` | | | | +| mode_req_local_alt | `uint32` | | | | +| mode_req_local_position | `uint32` | | | | +| mode_req_local_position_relaxed | `uint32` | | | | +| mode_req_global_position | `uint32` | | | | +| mode_req_global_position_relaxed | `uint32` | | | | +| mode_req_mission | `uint32` | | | | +| mode_req_offboard_signal | `uint32` | | | | +| mode_req_home_position | `uint32` | | | | +| mode_req_wind_and_flight_time_compliance | `uint32` | | | if set, mode cannot be entered if wind or flight time limit exceeded | +| mode_req_prevent_arming | `uint32` | | | if set, cannot arm while in this mode | +| mode_req_manual_control | `uint32` | | | | +| mode_req_other | `uint32` | | | other requirements, not covered above (for external modes) | +| angular_velocity_invalid | `bool` | | | Angular velocity invalid | +| attitude_invalid | `bool` | | | Attitude invalid | +| local_altitude_invalid | `bool` | | | Local altitude invalid | +| local_position_invalid | `bool` | | | Local position estimate invalid | +| local_position_invalid_relaxed | `bool` | | | Local position with reduced accuracy requirements invalid (e.g. flying with optical flow) | +| local_velocity_invalid | `bool` | | | Local velocity estimate invalid | +| global_position_invalid | `bool` | | | Global position estimate invalid | +| global_position_invalid_relaxed | `bool` | | | Global position estimate invalid with relaxed accuracy requirements | +| auto_mission_missing | `bool` | | | No mission available | +| offboard_control_signal_lost | `bool` | | | Offboard signal lost | +| home_position_invalid | `bool` | | | No home position available | +| manual_control_signal_lost | `bool` | | | Manual control (RC) signal lost | +| gcs_connection_lost | `bool` | | | GCS connection lost | +| battery_warning | `uint8` | | | Battery warning level (see BatteryStatus.msg) | +| battery_low_remaining_time | `bool` | | | Low battery based on remaining flight time | +| battery_unhealthy | `bool` | | | Battery unhealthy | +| fd_critical_failure | `bool` | | | Critical failure (attitude limit exceeded, or external ATS) | +| fd_esc_arming_failure | `bool` | | | ESC failed to arm | +| fd_imbalanced_prop | `bool` | | | Imbalanced propeller detected | +| fd_motor_failure | `bool` | | | Motor failure | +| fd_alt_loss | `bool` | | | Uncommanded altitude loss (rotary-wing, altitude-controlled flight) | +| geofence_breached | `bool` | | | Geofence breached (one or multiple) | +| mission_failure | `bool` | | | Mission failure | +| vtol_fixed_wing_system_failure | `bool` | | | vehicle in fixed-wing system failure failsafe mode (after quad-chute) | +| wind_limit_exceeded | `bool` | | | Wind limit exceeded | +| flight_time_limit_exceeded | `bool` | | | Maximum flight time exceeded | +| position_accuracy_low | `bool` | | | Position estimate has dropped below threshold, but is currently still declared valid | +| navigator_failure | `bool` | | | Navigator failed to execute a mode | +| parachute_unhealthy | `bool` | | | Parachute system missing or unhealthy | +| remote_id_unhealthy | `bool` | | | Remote ID (Open Drone ID) system missing or unhealthy | +| gnss_lost | `bool` | | | Active GNSS count dropped below SYS_HAS_NUM_GNSS, or two receivers report inconsistent positions | ## Source Message diff --git a/docs/uk/msg_docs/FailureDetectorStatus.md b/docs/uk/msg_docs/FailureDetectorStatus.md index eea24c48fa..37884df488 100644 --- a/docs/uk/msg_docs/FailureDetectorStatus.md +++ b/docs/uk/msg_docs/FailureDetectorStatus.md @@ -8,20 +8,20 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| fd_roll | `bool` | | | | -| fd_pitch | `bool` | | | | -| fd_alt | `bool` | | | | -| fd_ext | `bool` | | | | -| fd_arm_escs | `bool` | | | | -| fd_battery | `bool` | | | | -| fd_imbalanced_prop | `bool` | | | | -| fd_motor | `bool` | | | | -| imbalanced_prop_metric | `float32` | | | Metric of the imbalanced propeller check (low-passed) | -| motor_failure_mask | `uint16` | | | Bit-mask with motor indices, indicating critical motor failures | -| motor_stop_mask | `uint16` | | | Bitmaks of motors stopped by failure injection | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| fd_roll | `bool` | | | | +| fd_pitch | `bool` | | | | +| fd_alt | `bool` | | | | +| fd_ext | `bool` | | | | +| fd_arm_escs | `bool` | | | | +| fd_battery | `bool` | | | | +| fd_imbalanced_prop | `bool` | | | | +| fd_motor | `bool` | | | | +| imbalanced_prop_metric | `float32` | | | Metric of the imbalanced propeller check (low-passed) | +| motor_failure_mask | `uint16` | | | Bit-mask with motor indices, indicating critical motor failures | +| motor_stop_mask | `uint16` | | | Bitmaks of motors stopped by failure injection | ## Source Message diff --git a/docs/uk/msg_docs/FiducialMarkerPosReport.md b/docs/uk/msg_docs/FiducialMarkerPosReport.md new file mode 100644 index 0000000000..6a34c94b20 --- /dev/null +++ b/docs/uk/msg_docs/FiducialMarkerPosReport.md @@ -0,0 +1,50 @@ +--- +pageClass: is-wide-page +--- + +# FiducialMarkerPosReport (UORB message) + +Relative position of a precision-landing target detected by a vision pipeline (e.g. an ArUco marker). + +Published by: vision pipelines (on-board or off-board over MAVLink TARGET_RELATIVE), decoded in mavlink_receiver. +Subscribed by: vision_target_estimator (VTEPosition). + +The measurement is expressed in an arbitrary sensor frame; the quaternion q rotates it into the NED earth frame. + +**TOPICS:** fiducial_marker_pos_report + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw observation | +| rel_pos | `float32[3]` | m | | Target position relative to vehicle, expressed in the frame defined by q | +| cov_rel_pos | `float32[3]` | m^2 | | Target position variance, expressed in the frame defined by q | +| q | `float32[4]` | | | Quaternion rotation from the rel_pos frame to the NED earth frame | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/FiducialMarkerPosReport.msg) + +:::details +Click here to see original file + +```c +# Relative position of a precision-landing target detected by a vision pipeline (e.g. an ArUco marker). +# +# Published by: vision pipelines (on-board or off-board over MAVLink TARGET_RELATIVE), decoded in mavlink_receiver. +# Subscribed by: vision_target_estimator (VTEPosition). +# +# The measurement is expressed in an arbitrary sensor frame; the quaternion q rotates it into the NED earth frame. + +uint64 timestamp # [us] Time since system start +uint64 timestamp_sample # [us] Timestamp of the raw observation + +float32[3] rel_pos # [m] Target position relative to vehicle, expressed in the frame defined by q +float32[3] cov_rel_pos # [m^2] Target position variance, expressed in the frame defined by q + +float32[4] q # [-] Quaternion rotation from the rel_pos frame to the NED earth frame +``` + +::: diff --git a/docs/uk/msg_docs/FiducialMarkerYawReport.md b/docs/uk/msg_docs/FiducialMarkerYawReport.md new file mode 100644 index 0000000000..c93c028b6e --- /dev/null +++ b/docs/uk/msg_docs/FiducialMarkerYawReport.md @@ -0,0 +1,43 @@ +--- +pageClass: is-wide-page +--- + +# FiducialMarkerYawReport (UORB message) + +Yaw of a precision-landing target relative to the NED (North, East, Down) frame, reported by a vision pipeline. + +Published by: vision pipelines (on-board or off-board over MAVLink TARGET_RELATIVE), decoded in mavlink_receiver. +Subscribed by: vision_target_estimator (VTEOrientation). + +**TOPICS:** fiducial_marker_yaw_report + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw observation | +| yaw_ned | `float32` | rad [NED] | | Orientation of the target relative to the NED frame [-Pi ; Pi] | +| yaw_var_ned | `float32` | rad^2 | | Orientation uncertainty | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/FiducialMarkerYawReport.msg) + +:::details +Click here to see original file + +```c +# Yaw of a precision-landing target relative to the NED (North, East, Down) frame, reported by a vision pipeline. +# +# Published by: vision pipelines (on-board or off-board over MAVLink TARGET_RELATIVE), decoded in mavlink_receiver. +# Subscribed by: vision_target_estimator (VTEOrientation). + +uint64 timestamp # [us] Time since system start +uint64 timestamp_sample # [us] Timestamp of the raw observation + +float32 yaw_ned # [rad] [@frame NED] Orientation of the target relative to the NED frame [-Pi ; Pi] +float32 yaw_var_ned # [rad^2] Orientation uncertainty +``` + +::: diff --git a/docs/uk/msg_docs/FigureEightStatus.md b/docs/uk/msg_docs/FigureEightStatus.md index 421dafaea8..c2677cc843 100644 --- a/docs/uk/msg_docs/FigureEightStatus.md +++ b/docs/uk/msg_docs/FigureEightStatus.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| major_radius | `float32` | | | Major axis radius of the figure eight [m]. Positive values orbit clockwise, negative values orbit counter-clockwise. | -| minor_radius | `float32` | | | Minor axis radius of the figure eight [m]. | -| orientation | `float32` | | | Orientation of the major axis of the figure eight [rad]. | -| frame | `uint8` | | | The coordinate system of the fields: x, y, z. | -| x | `int32` | | | X coordinate of center point. Coordinate system depends on frame field: local = x position in meters _ 1e4, global = latitude in degrees _ 1e7. | -| y | `int32` | | | Y coordinate of center point. Coordinate system depends on frame field: local = y position in meters _ 1e4, global = latitude in degrees _ 1e7. | -| z | `float32` | | | Altitude of center point. Coordinate system depends on frame field. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| major_radius | `float32` | | | Major axis radius of the figure eight [m]. Positive values orbit clockwise, negative values orbit counter-clockwise. | +| minor_radius | `float32` | | | Minor axis radius of the figure eight [m]. | +| orientation | `float32` | | | Orientation of the major axis of the figure eight [rad]. | +| frame | `uint8` | | | The coordinate system of the fields: x, y, z. | +| x | `int32` | | | X coordinate of center point. Coordinate system depends on frame field: local = x position in meters _ 1e4, global = latitude in degrees _ 1e7. | +| y | `int32` | | | Y coordinate of center point. Coordinate system depends on frame field: local = y position in meters _ 1e4, global = latitude in degrees _ 1e7. | +| z | `float32` | | | Altitude of center point. Coordinate system depends on frame field. | ## Source Message diff --git a/docs/uk/msg_docs/FixedWingLateralGuidanceStatus.md b/docs/uk/msg_docs/FixedWingLateralGuidanceStatus.md index 816eada352..aef1dc6423 100644 --- a/docs/uk/msg_docs/FixedWingLateralGuidanceStatus.md +++ b/docs/uk/msg_docs/FixedWingLateralGuidanceStatus.md @@ -10,17 +10,17 @@ Fixed Wing Lateral Guidance Status message. Published by fw_pos_control module t ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| course_setpoint | `float32` | rad | [-pi : pi] | Desired direction of travel over ground w.r.t (true) North. Set by guidance law | -| lateral_acceleration_ff | `float32` | FRD | | lateral acceleration demand only for maintaining curvature | -| bearing_feas | `float32` | | [0 : 1] | bearing feasibility | -| bearing_feas_on_track | `float32` | | [0 : 1] | on-track bearing feasibility | -| signed_track_error | `float32` | m | | signed track error | -| track_error_bound | `float32` | m | | track error bound | -| adapted_period | `float32` | s | | adapted period (if auto-tuning enabled) | -| wind_est_valid | `uint8` | boolean | | true = wind estimate is valid and/or being used by controller (also indicates if wind estimate usage is disabled despite being valid) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| course_setpoint | `float32` | rad | [-pi : pi] | Desired direction of travel over ground w.r.t (true) North. Set by guidance law | +| lateral_acceleration_ff | `float32` | FRD | | lateral acceleration demand only for maintaining curvature | +| bearing_feas | `float32` | | [0 : 1] | bearing feasibility | +| bearing_feas_on_track | `float32` | | [0 : 1] | on-track bearing feasibility | +| signed_track_error | `float32` | m | | signed track error | +| track_error_bound | `float32` | m | | track error bound | +| adapted_period | `float32` | s | | adapted period (if auto-tuning enabled) | +| wind_est_valid | `uint8` | boolean | | true = wind estimate is valid and/or being used by controller (also indicates if wind estimate usage is disabled despite being valid) | ## Source Message diff --git a/docs/uk/msg_docs/FixedWingLateralSetpoint.md b/docs/uk/msg_docs/FixedWingLateralSetpoint.md index 150025c21f..b2ce943ffa 100644 --- a/docs/uk/msg_docs/FixedWingLateralSetpoint.md +++ b/docs/uk/msg_docs/FixedWingLateralSetpoint.md @@ -13,12 +13,12 @@ At least one of course, airspeed_direction, or lateral_acceleration must be fini ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | us | | Time since system start | -| course | `float32` | rad | [-pi : pi] | Desired direction of travel over ground w.r.t (true) North. NAN if not controlled directly. | -| airspeed_direction | `float32` | rad | [-pi : pi] | Desired horizontal angle of airspeed vector w.r.t. (true) North. Same as vehicle heading if in the absence of sideslip. NAN if not controlled directly, takes precedence over course if finite. | -| lateral_acceleration | `float32` | m/s^2 [FRD] | | Lateral acceleration setpoint. NAN if not controlled directly, used as feedforward if either course setpoint or airspeed_direction is finite. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | us | | Time since system start | +| course | `float32` | rad | [-pi : pi] | Desired direction of travel over ground w.r.t (true) North. NAN if not controlled directly. | +| airspeed_direction | `float32` | rad | [-pi : pi] | Desired horizontal angle of airspeed vector w.r.t. (true) North. Same as vehicle heading if in the absence of sideslip. NAN if not controlled directly, takes precedence over course if finite. | +| lateral_acceleration | `float32` | m/s^2 [FRD] | | Lateral acceleration setpoint. NAN if not controlled directly, used as feedforward if either course setpoint or airspeed_direction is finite. | ## Constants diff --git a/docs/uk/msg_docs/FixedWingLateralStatus.md b/docs/uk/msg_docs/FixedWingLateralStatus.md index fd63176a7b..a95ee4854d 100644 --- a/docs/uk/msg_docs/FixedWingLateralStatus.md +++ b/docs/uk/msg_docs/FixedWingLateralStatus.md @@ -10,11 +10,11 @@ Fixed Wing Lateral Status message. Published by the fw_lateral_longitudinal_cont ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| lateral_acceleration_setpoint | `float32` | FRD | | resultant lateral acceleration setpoint | -| can_run_factor | `float32` | norm | [0 : 1] | estimate of certainty of the correct functionality of the npfg roll setpoint | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| lateral_acceleration_setpoint | `float32` | FRD | | resultant lateral acceleration setpoint | +| can_run_factor | `float32` | norm | [0 : 1] | estimate of certainty of the correct functionality of the npfg roll setpoint | ## Source Message diff --git a/docs/uk/msg_docs/FixedWingLongitudinalSetpoint.md b/docs/uk/msg_docs/FixedWingLongitudinalSetpoint.md index 4d34a51eed..673b906d8f 100644 --- a/docs/uk/msg_docs/FixedWingLongitudinalSetpoint.md +++ b/docs/uk/msg_docs/FixedWingLongitudinalSetpoint.md @@ -14,14 +14,14 @@ If both altitude and height_rate are NAN, the controller maintains the current a ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| altitude | `float32` | m | | Altitude setpoint AMSL, not controlled directly if NAN or if height_rate is finite | -| height_rate | `float32` | m/s [ENU] | | Scalar height rate setpoint. NAN if not controlled directly | -| equivalent_airspeed | `float32` | m/s | [0 : inf] | Scalar equivalent airspeed setpoint. NAN if system default should be used | -| pitch_direct | `float32` | rad [FRD] | [-pi : pi] | NAN if not controlled, overrides total energy controller | -| throttle_direct | `float32` | norm | [0 : 1] | NAN if not controlled, overrides total energy controller | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| altitude | `float32` | m | | Altitude setpoint AMSL, not controlled directly if NAN or if height_rate is finite | +| height_rate | `float32` | m/s [ENU] | | Scalar height rate setpoint. NAN if not controlled directly | +| equivalent_airspeed | `float32` | m/s | [0 : inf] | Scalar equivalent airspeed setpoint. NAN if system default should be used | +| pitch_direct | `float32` | rad [FRD] | [-pi : pi] | NAN if not controlled, overrides total energy controller | +| throttle_direct | `float32` | norm | [0 : 1] | NAN if not controlled, overrides total energy controller | ## Constants diff --git a/docs/uk/msg_docs/FixedWingRunwayControl.md b/docs/uk/msg_docs/FixedWingRunwayControl.md index d0ae616f4c..b14257a4e2 100644 --- a/docs/uk/msg_docs/FixedWingRunwayControl.md +++ b/docs/uk/msg_docs/FixedWingRunwayControl.md @@ -10,12 +10,12 @@ Auxiliary control fields for fixed-wing runway takeoff/landing. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | time since system start | -| runway_takeoff_state | `uint8` | | | Current state of runway takeoff state machine | -| wheel_steering_enabled | `bool` | | | Flag that enables the wheel steering. | -| wheel_steering_nudging_rate | `float32` | FRD | [-1 : 1] | Manual wheel nudging, added to controller output. NAN is interpreted as 0. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | time since system start | +| runway_takeoff_state | `uint8` | | | Current state of runway takeoff state machine | +| wheel_steering_enabled | `bool` | | | Flag that enables the wheel steering. | +| wheel_steering_nudging_rate | `float32` | FRD | [-1 : 1] | Manual wheel nudging, added to controller output. NAN is interpreted as 0. | ## Constants diff --git a/docs/uk/msg_docs/FlightPhaseEstimation.md b/docs/uk/msg_docs/FlightPhaseEstimation.md index f0d97a6c06..3f5adcf908 100644 --- a/docs/uk/msg_docs/FlightPhaseEstimation.md +++ b/docs/uk/msg_docs/FlightPhaseEstimation.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| flight_phase | `uint8` | | | Estimate of current flight phase | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| flight_phase | `uint8` | | | Estimate of current flight phase | ## Constants diff --git a/docs/uk/msg_docs/FollowTarget.md b/docs/uk/msg_docs/FollowTarget.md index 55c848731d..be6078bc01 100644 --- a/docs/uk/msg_docs/FollowTarget.md +++ b/docs/uk/msg_docs/FollowTarget.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| lat | `float64` | | | target position (deg \* 1e7) | -| lon | `float64` | | | target position (deg \* 1e7) | -| alt | `float32` | | | target position | -| vy | `float32` | | | target vel in y | -| vx | `float32` | | | target vel in x | -| vz | `float32` | | | target vel in z | -| est_cap | `uint8` | | | target reporting capabilities | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| lat | `float64` | | | target position (deg \* 1e7) | +| lon | `float64` | | | target position (deg \* 1e7) | +| alt | `float32` | | | target position | +| vy | `float32` | | | target vel in y | +| vx | `float32` | | | target vel in x | +| vz | `float32` | | | target vel in z | +| est_cap | `uint8` | | | target reporting capabilities | ## Source Message diff --git a/docs/uk/msg_docs/FollowTargetEstimator.md b/docs/uk/msg_docs/FollowTargetEstimator.md index 220880b739..a65305dac1 100644 --- a/docs/uk/msg_docs/FollowTargetEstimator.md +++ b/docs/uk/msg_docs/FollowTargetEstimator.md @@ -8,20 +8,20 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| last_filter_reset_timestamp | `uint64` | | | time of last filter reset (microseconds) | -| valid | `bool` | | | True if estimator states are okay to be used | -| stale | `bool` | | | True if estimator stopped receiving follow_target messages for some time. The estimate can still be valid, though it might be inaccurate. | -| lat_est | `float64` | | | Estimated target latitude | -| lon_est | `float64` | | | Estimated target longitude | -| alt_est | `float32` | | | Estimated target altitude | -| pos_est | `float32[3]` | | | Estimated target NED position (m) | -| vel_est | `float32[3]` | | | Estimated target NED velocity (m/s) | -| acc_est | `float32[3]` | | | Estimated target NED acceleration (m^2/s) | -| prediction_count | `uint64` | | | | -| fusion_count | `uint64` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| last_filter_reset_timestamp | `uint64` | | | time of last filter reset (microseconds) | +| valid | `bool` | | | True if estimator states are okay to be used | +| stale | `bool` | | | True if estimator stopped receiving follow_target messages for some time. The estimate can still be valid, though it might be inaccurate. | +| lat_est | `float64` | | | Estimated target latitude | +| lon_est | `float64` | | | Estimated target longitude | +| alt_est | `float32` | | | Estimated target altitude | +| pos_est | `float32[3]` | | | Estimated target NED position (m) | +| vel_est | `float32[3]` | | | Estimated target NED velocity (m/s) | +| acc_est | `float32[3]` | | | Estimated target NED acceleration (m^2/s) | +| prediction_count | `uint64` | | | | +| fusion_count | `uint64` | | | | ## Source Message diff --git a/docs/uk/msg_docs/FollowTargetStatus.md b/docs/uk/msg_docs/FollowTargetStatus.md index 4bcb73a290..e64d532fe5 100644 --- a/docs/uk/msg_docs/FollowTargetStatus.md +++ b/docs/uk/msg_docs/FollowTargetStatus.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | microseconds | | time since system start | -| tracked_target_course | `float32` | rad | | Tracked target course in NED local frame (North is course zero) | -| follow_angle | `float32` | rad | | Current follow angle setting | -| orbit_angle_setpoint | `float32` | rad | | Current orbit angle setpoint from the smooth trajectory generator | -| angular_rate_setpoint | `float32` | rad/s | | Angular rate commanded from Jerk-limited Orbit Angle trajectory for Orbit Angle | -| desired_position_raw | `float32[3]` | m | | Raw 'idealistic' desired drone position if a drone could teleport from place to places | -| in_emergency_ascent | `bool` | bool | | True when doing emergency ascent (when distance to ground is below safety altitude) | -| gimbal_pitch | `float32` | rad | | Gimbal pitch commanded to track target in the center of the frame | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | microseconds | | time since system start | +| tracked_target_course | `float32` | rad | | Tracked target course in NED local frame (North is course zero) | +| follow_angle | `float32` | rad | | Current follow angle setting | +| orbit_angle_setpoint | `float32` | rad | | Current orbit angle setpoint from the smooth trajectory generator | +| angular_rate_setpoint | `float32` | rad/s | | Angular rate commanded from Jerk-limited Orbit Angle trajectory for Orbit Angle | +| desired_position_raw | `float32[3]` | m | | Raw 'idealistic' desired drone position if a drone could teleport from place to places | +| in_emergency_ascent | `bool` | bool | | True when doing emergency ascent (when distance to ground is below safety altitude) | +| gimbal_pitch | `float32` | rad | | Gimbal pitch commanded to track target in the center of the frame | ## Source Message diff --git a/docs/uk/msg_docs/FuelTankStatus.md b/docs/uk/msg_docs/FuelTankStatus.md index fced3efcf0..2f62c148c8 100644 --- a/docs/uk/msg_docs/FuelTankStatus.md +++ b/docs/uk/msg_docs/FuelTankStatus.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| maximum_fuel_capacity | `float32` | | | maximum fuel capacity. Must always be provided, either from the driver or a parameter | -| consumed_fuel | `float32` | | | consumed fuel, NaN if not measured. Should not be inferred from the max fuel capacity | -| fuel_consumption_rate | `float32` | | | fuel consumption rate, NaN if not measured | -| percent_remaining | `uint8` | | | percentage of remaining fuel, UINT8_MAX if not provided | -| remaining_fuel | `float32` | | | remaining fuel, NaN if not measured. Should not be inferred from the max fuel capacity | -| fuel_tank_id | `uint8` | | | identifier for the fuel tank. Must match ID of other messages for same fuel system. 0 by default when only a single tank exists | -| fuel_type | `uint32` | | | type of fuel based on MAV_FUEL_TYPE enum. Set to MAV_FUEL_TYPE_UNKNOWN if unknown or it does not fit the provided types | -| temperature | `float32` | | | fuel temperature in Kelvin, NaN if not measured | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| maximum_fuel_capacity | `float32` | | | maximum fuel capacity. Must always be provided, either from the driver or a parameter | +| consumed_fuel | `float32` | | | consumed fuel, NaN if not measured. Should not be inferred from the max fuel capacity | +| fuel_consumption_rate | `float32` | | | fuel consumption rate, NaN if not measured | +| percent_remaining | `uint8` | | | percentage of remaining fuel, UINT8_MAX if not provided | +| remaining_fuel | `float32` | | | remaining fuel, NaN if not measured. Should not be inferred from the max fuel capacity | +| fuel_tank_id | `uint8` | | | identifier for the fuel tank. Must match ID of other messages for same fuel system. 0 by default when only a single tank exists | +| fuel_type | `uint32` | | | type of fuel based on MAV_FUEL_TYPE enum. Set to MAV_FUEL_TYPE_UNKNOWN if unknown or it does not fit the provided types | +| temperature | `float32` | | | fuel temperature in Kelvin, NaN if not measured | ## Constants diff --git a/docs/uk/msg_docs/GainCompression.md b/docs/uk/msg_docs/GainCompression.md index c128d6f3cc..0794f526d0 100644 --- a/docs/uk/msg_docs/GainCompression.md +++ b/docs/uk/msg_docs/GainCompression.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------- | -| timestamp | `uint64` | | | Time since system start (microseconds) | -| compression_gains | `float32[3]` | [FRD] | [0 : 1] | Multiplicative gain to modify the output of the controller per axis | -| spectral_damper_hpf | `float32[3]` | [FRD] | | Squared output of spectral damper high-pass filter | -| spectral_damper_out | `float32[3]` | [FRD] | | Spectral damper output squared | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------- | +| timestamp | `uint64` | | | Time since system start (microseconds) | +| compression_gains | `float32[3]` | [FRD] | [0 : 1] | Multiplicative gain to modify the output of the controller per axis | +| spectral_damper_hpf | `float32[3]` | [FRD] | | Squared output of spectral damper high-pass filter | +| spectral_damper_out | `float32[3]` | [FRD] | | Spectral damper output squared | ## Source Message diff --git a/docs/uk/msg_docs/GeneratorStatus.md b/docs/uk/msg_docs/GeneratorStatus.md index b80362f319..dcb2b65344 100644 --- a/docs/uk/msg_docs/GeneratorStatus.md +++ b/docs/uk/msg_docs/GeneratorStatus.md @@ -8,20 +8,20 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| status | `uint64` | | | Status flags | -| battery_current | `float32` | A | | Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. | -| load_current | `float32` | A | | Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided | -| power_generated | `float32` | W | | The power being generated. NaN: field not provided | -| bus_voltage | `float32` | V | | Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. | -| bat_current_setpoint | `float32` | A | | The target battery current. Positive for out. Negative for in. NaN: field not provided | -| runtime | `uint32` | s | | Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. | -| time_until_maintenance | `int32` | s | | Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. | -| generator_speed | `uint16` | rpm | | Speed of electrical generator or alternator. UINT16_MAX: field not provided. | -| rectifier_temperature | `int16` | degC | | The temperature of the rectifier or power converter. INT16_MAX: field not provided. | -| generator_temperature | `int16` | degC | | The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| status | `uint64` | | | Status flags | +| battery_current | `float32` | A | | Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. | +| load_current | `float32` | A | | Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided | +| power_generated | `float32` | W | | The power being generated. NaN: field not provided | +| bus_voltage | `float32` | V | | Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. | +| bat_current_setpoint | `float32` | A | | The target battery current. Positive for out. Negative for in. NaN: field not provided | +| runtime | `uint32` | s | | Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. | +| time_until_maintenance | `int32` | s | | Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. | +| generator_speed | `uint16` | rpm | | Speed of electrical generator or alternator. UINT16_MAX: field not provided. | +| rectifier_temperature | `int16` | degC | | The temperature of the rectifier or power converter. INT16_MAX: field not provided. | +| generator_temperature | `int16` | degC | | The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. | ## Constants diff --git a/docs/uk/msg_docs/GeofenceResult.md b/docs/uk/msg_docs/GeofenceResult.md index bcc6c18106..fa4ec7f34b 100644 --- a/docs/uk/msg_docs/GeofenceResult.md +++ b/docs/uk/msg_docs/GeofenceResult.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| geofence_max_dist_triggered | `bool` | | | true the check for max distance from Home is triggered | -| geofence_max_alt_triggered | `bool` | | | true the check for max altitude above Home is triggered | -| geofence_custom_fence_triggered | `bool` | | | true the check for custom inclusion/exclusion geofence(s) is triggered | -| geofence_action | `uint8` | | | action to take when the geofence is breached | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| geofence_max_dist_triggered | `bool` | | | true the check for max distance from Home is triggered | +| geofence_max_alt_triggered | `bool` | | | true the check for max altitude above Home is triggered | +| geofence_custom_fence_triggered | `bool` | | | true the check for custom inclusion/exclusion geofence(s) is triggered | +| geofence_action | `uint8` | | | action to take when the geofence is breached | ## Constants diff --git a/docs/uk/msg_docs/GeofenceStatus.md b/docs/uk/msg_docs/GeofenceStatus.md index 28f229fb7d..c4cc80af27 100644 --- a/docs/uk/msg_docs/GeofenceStatus.md +++ b/docs/uk/msg_docs/GeofenceStatus.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| geofence_id | `uint32` | | | loaded geofence id | -| status | `uint8` | | | Current geofence status | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| geofence_id | `uint32` | | | loaded geofence id | +| status | `uint8` | | | Current geofence status | ## Constants diff --git a/docs/uk/msg_docs/GimbalControls.md b/docs/uk/msg_docs/GimbalControls.md index a133967608..4d00779b96 100644 --- a/docs/uk/msg_docs/GimbalControls.md +++ b/docs/uk/msg_docs/GimbalControls.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp the data this control response is based on was sampled | -| control | `float32[3]` | | | Normalized output. 1 means maximum positive position. -1 maximum negative position. 0 means no deflection. NaN maps to disarmed. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp the data this control response is based on was sampled | +| control | `float32[3]` | | | Normalized output. 1 means maximum positive position. -1 maximum negative position. 0 means no deflection. NaN maps to disarmed. | ## Constants diff --git a/docs/uk/msg_docs/GimbalDeviceAttitudeStatus.md b/docs/uk/msg_docs/GimbalDeviceAttitudeStatus.md index 9b4ae4ee3a..350f4a8e54 100644 --- a/docs/uk/msg_docs/GimbalDeviceAttitudeStatus.md +++ b/docs/uk/msg_docs/GimbalDeviceAttitudeStatus.md @@ -8,21 +8,21 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| target_system | `uint8` | | | | -| target_component | `uint8` | | | | -| device_flags | `uint16` | | | | -| q | `float32[4]` | | | | -| angular_velocity_x | `float32` | | | | -| angular_velocity_y | `float32` | | | | -| angular_velocity_z | `float32` | | | | -| failure_flags | `uint32` | | | | -| delta_yaw | `float32` | | | | -| delta_yaw_velocity | `float32` | | | | -| gimbal_device_id | `uint8` | | | | -| received_from_mavlink | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| target_system | `uint8` | | | | +| target_component | `uint8` | | | | +| device_flags | `uint16` | | | | +| q | `float32[4]` | | | | +| angular_velocity_x | `float32` | | | | +| angular_velocity_y | `float32` | | | | +| angular_velocity_z | `float32` | | | | +| failure_flags | `uint32` | | | | +| delta_yaw | `float32` | | | | +| delta_yaw_velocity | `float32` | | | | +| gimbal_device_id | `uint8` | | | | +| received_from_mavlink | `bool` | | | | ## Constants diff --git a/docs/uk/msg_docs/GimbalDeviceInformation.md b/docs/uk/msg_docs/GimbalDeviceInformation.md index 1161d195ab..442bb43b0c 100644 --- a/docs/uk/msg_docs/GimbalDeviceInformation.md +++ b/docs/uk/msg_docs/GimbalDeviceInformation.md @@ -8,24 +8,24 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| vendor_name | `uint8[32]` | | | | -| model_name | `uint8[32]` | | | | -| custom_name | `uint8[32]` | | | | -| firmware_version | `uint32` | | | | -| hardware_version | `uint32` | | | | -| uid | `uint64` | | | | -| cap_flags | `uint16` | | | | -| custom_cap_flags | `uint16` | | | | -| roll_min | `float32` | rad | | | -| roll_max | `float32` | rad | | | -| pitch_min | `float32` | rad | | | -| pitch_max | `float32` | rad | | | -| yaw_min | `float32` | rad | | | -| yaw_max | `float32` | rad | | | -| gimbal_device_id | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| vendor_name | `uint8[32]` | | | | +| model_name | `uint8[32]` | | | | +| custom_name | `uint8[32]` | | | | +| firmware_version | `uint32` | | | | +| hardware_version | `uint32` | | | | +| uid | `uint64` | | | | +| cap_flags | `uint16` | | | | +| custom_cap_flags | `uint16` | | | | +| roll_min | `float32` | rad | | | +| roll_max | `float32` | rad | | | +| pitch_min | `float32` | rad | | | +| pitch_max | `float32` | rad | | | +| yaw_min | `float32` | rad | | | +| yaw_max | `float32` | rad | | | +| gimbal_device_id | `uint8` | | | | ## Constants diff --git a/docs/uk/msg_docs/GimbalDeviceSetAttitude.md b/docs/uk/msg_docs/GimbalDeviceSetAttitude.md index 63ccbec9b7..aeb31aa3da 100644 --- a/docs/uk/msg_docs/GimbalDeviceSetAttitude.md +++ b/docs/uk/msg_docs/GimbalDeviceSetAttitude.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| target_system | `uint8` | | | | -| target_component | `uint8` | | | | -| flags | `uint16` | | | | -| q | `float32[4]` | | | | -| angular_velocity_x | `float32` | | | | -| angular_velocity_y | `float32` | | | | -| angular_velocity_z | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| target_system | `uint8` | | | | +| target_component | `uint8` | | | | +| flags | `uint16` | | | | +| q | `float32[4]` | | | | +| angular_velocity_x | `float32` | | | | +| angular_velocity_y | `float32` | | | | +| angular_velocity_z | `float32` | | | | ## Constants diff --git a/docs/uk/msg_docs/GimbalManagerInformation.md b/docs/uk/msg_docs/GimbalManagerInformation.md index 6d0eb39f03..723be4db39 100644 --- a/docs/uk/msg_docs/GimbalManagerInformation.md +++ b/docs/uk/msg_docs/GimbalManagerInformation.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| cap_flags | `uint32` | | | | -| gimbal_device_id | `uint8` | | | | -| roll_min | `float32` | rad | | | -| roll_max | `float32` | rad | | | -| pitch_min | `float32` | rad | | | -| pitch_max | `float32` | rad | | | -| yaw_min | `float32` | rad | | | -| yaw_max | `float32` | rad | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| cap_flags | `uint32` | | | | +| gimbal_device_id | `uint8` | | | | +| roll_min | `float32` | rad | | | +| roll_max | `float32` | rad | | | +| pitch_min | `float32` | rad | | | +| pitch_max | `float32` | rad | | | +| yaw_min | `float32` | rad | | | +| yaw_max | `float32` | rad | | | ## Constants diff --git a/docs/uk/msg_docs/GimbalManagerSetAttitude.md b/docs/uk/msg_docs/GimbalManagerSetAttitude.md index 77f830e5cd..9a60f49d87 100644 --- a/docs/uk/msg_docs/GimbalManagerSetAttitude.md +++ b/docs/uk/msg_docs/GimbalManagerSetAttitude.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| origin_sysid | `uint8` | | | | -| origin_compid | `uint8` | | | | -| target_system | `uint8` | | | | -| target_component | `uint8` | | | | -| flags | `uint32` | | | | -| gimbal_device_id | `uint8` | | | | -| q | `float32[4]` | | | | -| angular_velocity_x | `float32` | | | | -| angular_velocity_y | `float32` | | | | -| angular_velocity_z | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| origin_sysid | `uint8` | | | | +| origin_compid | `uint8` | | | | +| target_system | `uint8` | | | | +| target_component | `uint8` | | | | +| flags | `uint32` | | | | +| gimbal_device_id | `uint8` | | | | +| q | `float32[4]` | | | | +| angular_velocity_x | `float32` | | | | +| angular_velocity_y | `float32` | | | | +| angular_velocity_z | `float32` | | | | ## Constants diff --git a/docs/uk/msg_docs/GimbalManagerSetManualControl.md b/docs/uk/msg_docs/GimbalManagerSetManualControl.md index 8891a55ada..37bc752280 100644 --- a/docs/uk/msg_docs/GimbalManagerSetManualControl.md +++ b/docs/uk/msg_docs/GimbalManagerSetManualControl.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| origin_sysid | `uint8` | | | | -| origin_compid | `uint8` | | | | -| target_system | `uint8` | | | | -| target_component | `uint8` | | | | -| flags | `uint32` | | | | -| gimbal_device_id | `uint8` | | | | -| pitch | `float32` | | | unitless -1..1, can be NAN | -| yaw | `float32` | | | unitless -1..1, can be NAN | -| pitch_rate | `float32` | | | unitless -1..1, can be NAN | -| yaw_rate | `float32` | | | unitless -1..1, can be NAN | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| origin_sysid | `uint8` | | | | +| origin_compid | `uint8` | | | | +| target_system | `uint8` | | | | +| target_component | `uint8` | | | | +| flags | `uint32` | | | | +| gimbal_device_id | `uint8` | | | | +| pitch | `float32` | | | unitless -1..1, can be NAN | +| yaw | `float32` | | | unitless -1..1, can be NAN | +| pitch_rate | `float32` | | | unitless -1..1, can be NAN | +| yaw_rate | `float32` | | | unitless -1..1, can be NAN | ## Constants diff --git a/docs/uk/msg_docs/GimbalManagerStatus.md b/docs/uk/msg_docs/GimbalManagerStatus.md index b75bafaaa5..7d27653212 100644 --- a/docs/uk/msg_docs/GimbalManagerStatus.md +++ b/docs/uk/msg_docs/GimbalManagerStatus.md @@ -8,15 +8,15 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| flags | `uint32` | | | | -| gimbal_device_id | `uint8` | | | | -| primary_control_sysid | `uint8` | | | | -| primary_control_compid | `uint8` | | | | -| secondary_control_sysid | `uint8` | | | | -| secondary_control_compid | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| flags | `uint32` | | | | +| gimbal_device_id | `uint8` | | | | +| primary_control_sysid | `uint8` | | | | +| primary_control_compid | `uint8` | | | | +| secondary_control_sysid | `uint8` | | | | +| secondary_control_compid | `uint8` | | | | ## Source Message diff --git a/docs/uk/msg_docs/GotoSetpoint.md b/docs/uk/msg_docs/GotoSetpoint.md index 5521f03b1e..62517b886b 100644 --- a/docs/uk/msg_docs/GotoSetpoint.md +++ b/docs/uk/msg_docs/GotoSetpoint.md @@ -16,18 +16,18 @@ Unset optional constraints default to vehicle specifications. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| положення | `float32[3]` | m [NED] | | NED local world frame | -| flag_control_heading | `bool` | | | true if heading is to be controlled | -| heading | `float32` | | | (optional) [rad] [-pi,pi] from North | -| flag_set_max_horizontal_speed | `bool` | | | true if setting a non-default horizontal speed limit | -| max_horizontal_speed | `float32` | m/s | | (optional) Maximum speed (absolute) in the NE-plane | -| flag_set_max_vertical_speed | `bool` | | | true if setting a non-default vertical speed limit | -| max_vertical_speed | `float32` | m/s | | (optional) Maximum speed (absolute) in the D-axis | -| flag_set_max_heading_rate | `bool` | | | true if setting a non-default heading rate limit | -| max_heading_rate | `float32` | rad/s | | (optional) Maximum heading rate (absolute) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| position | `float32[3]` | m [NED] | | NED local world frame | +| flag_control_heading | `bool` | | | true if heading is to be controlled | +| heading | `float32` | | | (optional) [rad] [-pi,pi] from North | +| flag_set_max_horizontal_speed | `bool` | | | true if setting a non-default horizontal speed limit | +| max_horizontal_speed | `float32` | m/s | | (optional) Maximum speed (absolute) in the NE-plane | +| flag_set_max_vertical_speed | `bool` | | | true if setting a non-default vertical speed limit | +| max_vertical_speed | `float32` | m/s | | (optional) Maximum speed (absolute) in the D-axis | +| flag_set_max_heading_rate | `bool` | | | true if setting a non-default heading rate limit | +| max_heading_rate | `float32` | rad/s | | (optional) Maximum heading rate (absolute) | ## Constants diff --git a/docs/uk/msg_docs/GpioConfig.md b/docs/uk/msg_docs/GpioConfig.md index df2d001e5a..6b9f6cf98c 100644 --- a/docs/uk/msg_docs/GpioConfig.md +++ b/docs/uk/msg_docs/GpioConfig.md @@ -10,13 +10,13 @@ GPIO configuration. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | Device id | -| mask | `uint32` | | | Pin mask | -| state | `uint32` | | | Initial pin output state | -| config | `uint32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | Device id | +| mask | `uint32` | | | Pin mask | +| state | `uint32` | | | Initial pin output state | +| config | `uint32` | | | | ## Constants diff --git a/docs/uk/msg_docs/GpioIn.md b/docs/uk/msg_docs/GpioIn.md index 6b3aee789c..9649130109 100644 --- a/docs/uk/msg_docs/GpioIn.md +++ b/docs/uk/msg_docs/GpioIn.md @@ -10,11 +10,11 @@ GPIO mask and state. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | Device id | -| state | `uint32` | | | pin state mask | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | Device id | +| state | `uint32` | | | pin state mask | ## Constants diff --git a/docs/uk/msg_docs/GpioOut.md b/docs/uk/msg_docs/GpioOut.md index 0f574b20c2..91899f4e8f 100644 --- a/docs/uk/msg_docs/GpioOut.md +++ b/docs/uk/msg_docs/GpioOut.md @@ -10,12 +10,12 @@ GPIO mask and state. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | Device id | -| mask | `uint32` | | | pin mask | -| state | `uint32` | | | pin state mask | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | Device id | +| mask | `uint32` | | | pin mask | +| state | `uint32` | | | pin state mask | ## Source Message diff --git a/docs/uk/msg_docs/GpioRequest.md b/docs/uk/msg_docs/GpioRequest.md index 5d2e11bf68..00aadd9a60 100644 --- a/docs/uk/msg_docs/GpioRequest.md +++ b/docs/uk/msg_docs/GpioRequest.md @@ -10,10 +10,10 @@ Request GPIO mask to be read. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | Device id | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | Device id | ## Source Message diff --git a/docs/uk/msg_docs/GpsDump.md b/docs/uk/msg_docs/GpsDump.md index 419ccbdadd..f9681d18c6 100644 --- a/docs/uk/msg_docs/GpsDump.md +++ b/docs/uk/msg_docs/GpsDump.md @@ -10,13 +10,13 @@ This message is used to dump the raw gps communication to the log. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| instance | `uint8` | | | Instance of GNSS receiver | -| device_id | `uint32` | | | | -| len | `uint8` | | | length of data, MSB bit set = message to the gps device, | -| data | `uint8[79]` | | | data to write to the log | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| instance | `uint8` | | | Instance of GNSS receiver | +| device_id | `uint32` | | | | +| len | `uint8` | | | length of data, MSB bit set = message to the gps device, | +| data | `uint8[79]` | | | data to write to the log | ## Constants diff --git a/docs/uk/msg_docs/GpsInjectData.md b/docs/uk/msg_docs/GpsInjectData.md index 730aa16c4e..4410440201 100644 --- a/docs/uk/msg_docs/GpsInjectData.md +++ b/docs/uk/msg_docs/GpsInjectData.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| len | `uint16` | | | length of data | -| flags | `uint8` | | | LSB: 1=fragmented across multiple uORB publications | -| data | `uint8[300]` | | | data chunk to write to GPS device (RTCM message) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| len | `uint16` | | | length of data | +| flags | `uint8` | | | LSB: 1=fragmented across multiple uORB publications | +| data | `uint8[300]` | | | data chunk to write to GPS device (RTCM message) | ## Constants diff --git a/docs/uk/msg_docs/Gripper.md b/docs/uk/msg_docs/Gripper.md index 4a8bbcd089..eeaeb1cafb 100644 --- a/docs/uk/msg_docs/Gripper.md +++ b/docs/uk/msg_docs/Gripper.md @@ -10,10 +10,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------- | -| timestamp | `uint64` | | | | -| command | `int8` | | | Commanded state for the gripper | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------- | +| timestamp | `uint64` | | | | +| command | `int8` | | | Commanded state for the gripper | ## Constants diff --git a/docs/uk/msg_docs/HealthReport.md b/docs/uk/msg_docs/HealthReport.md index 59735618e3..e358e57a76 100644 --- a/docs/uk/msg_docs/HealthReport.md +++ b/docs/uk/msg_docs/HealthReport.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| can_arm_mode_flags | `uint64` | | | bitfield for each flight mode (NAVIGATION_STATE_\*) if arming is possible | -| can_run_mode_flags | `uint64` | | | bitfield for each flight mode if it can run | -| health_is_present_flags | `uint64` | | | flags for each health_component_t | -| health_warning_flags | `uint64` | | | | -| health_error_flags | `uint64` | | | | -| arming_check_warning_flags | `uint64` | | | | -| arming_check_error_flags | `uint64` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| can_arm_mode_flags | `uint64` | | | bitfield for each flight mode (NAVIGATION_STATE_\*) if arming is possible | +| can_run_mode_flags | `uint64` | | | bitfield for each flight mode if it can run | +| health_is_present_flags | `uint64` | | | flags for each health_component_t | +| health_warning_flags | `uint64` | | | | +| health_error_flags | `uint64` | | | | +| arming_check_warning_flags | `uint64` | | | | +| arming_check_error_flags | `uint64` | | | | ## Source Message diff --git a/docs/uk/msg_docs/HeaterStatus.md b/docs/uk/msg_docs/HeaterStatus.md index 4549571607..05e2bce5b4 100644 --- a/docs/uk/msg_docs/HeaterStatus.md +++ b/docs/uk/msg_docs/HeaterStatus.md @@ -8,27 +8,33 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | | -| heater_on | `bool` | | | | -| temperature_target_met | `bool` | | | | -| temperature_sensor | `float32` | | | | -| temperature_target | `float32` | | | | -| controller_period_usec | `uint32` | | | | -| controller_time_on_usec | `uint32` | | | | -| proportional_value | `float32` | | | | -| integrator_value | `float32` | | | | -| feed_forward_value | `float32` | | | | -| mode | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | | +| heater_on | `bool` | | | | +| temperature_target_met | `bool` | | | | +| temperature_sensor | `float32` | | | | +| temperature_target | `float32` | | | | +| controller_period_usec | `uint32` | | | | +| controller_time_on_usec | `uint32` | | | | +| proportional_value | `float32` | | | | +| integrator_value | `float32` | | | | +| feed_forward_value | `float32` | | | | +| supply_voltage | `float32` | | | Supply voltage (V) | +| heater_current | `float32` | | | Heater current (A) | +| nominal_multiplier | `float32` | | | | +| mode | `uint8` | | | | +| temperature_source | `uint8` | | | | ## Constants -| Назва | Тип | Значення | Опис | -| -------------------------------------------------------- | ------- | -------- | ---- | -| MODE_GPIO | `uint8` | 1 | | -| MODE_PX4IO | `uint8` | 2 | | +| Назва | Тип | Значення | Опис | +| --------------------------------------------------------------------------------------------------------- | ------- | -------- | ---- | +| MODE_GPIO | `uint8` | 1 | | +| MODE_PX4IO | `uint8` | 2 | | +| TEMPERATURE_SOURCE_IMU | `uint8` | 0 | | +| TEMPERATURE_SOURCE_HYGRO | `uint8` | 1 | | ## Source Message @@ -55,9 +61,17 @@ float32 proportional_value float32 integrator_value float32 feed_forward_value +float32 supply_voltage # Supply voltage (V) +float32 heater_current # Heater current (A) +float32 nominal_multiplier + uint8 MODE_GPIO = 1 uint8 MODE_PX4IO = 2 uint8 mode + +uint8 TEMPERATURE_SOURCE_IMU = 0 +uint8 TEMPERATURE_SOURCE_HYGRO = 1 +uint8 temperature_source ``` ::: diff --git a/docs/uk/msg_docs/HomePosition.md b/docs/uk/msg_docs/HomePosition.md index 6d9c9c66fc..73589721a0 100644 --- a/docs/uk/msg_docs/HomePosition.md +++ b/docs/uk/msg_docs/HomePosition.md @@ -10,23 +10,23 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| lat | `float64` | | | Latitude in degrees | -| lon | `float64` | | | Longitude in degrees | -| alt | `float32` | | | Altitude in meters (AMSL) | -| x | `float32` | | | X coordinate in meters | -| y | `float32` | | | Y coordinate in meters | -| z | `float32` | | | Z coordinate in meters | -| roll | `float32` | | | Pitch angle in radians | -| pitch | `float32` | | | Roll angle in radians | -| yaw | `float32` | | | Yaw angle in radians | -| valid_alt | `bool` | | | true when the altitude has been set | -| valid_hpos | `bool` | | | true when the latitude and longitude have been set | -| valid_lpos | `bool` | | | true when the local position (xyz) has been set | -| manual_home | `bool` | | | true when home position was set manually | -| update_count | `uint32` | | | update counter of the home position | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| lat | `float64` | | | Latitude in degrees | +| lon | `float64` | | | Longitude in degrees | +| alt | `float32` | | | Altitude in meters (AMSL) | +| x | `float32` | | | X coordinate in meters | +| y | `float32` | | | Y coordinate in meters | +| z | `float32` | | | Z coordinate in meters | +| roll | `float32` | | | Pitch angle in radians | +| pitch | `float32` | | | Roll angle in radians | +| yaw | `float32` | | | Yaw angle in radians | +| valid_alt | `bool` | | | true when the altitude has been set | +| valid_hpos | `bool` | | | true when the latitude and longitude have been set | +| valid_lpos | `bool` | | | true when the local position (xyz) has been set | +| manual_home | `bool` | | | true when home position was set manually | +| update_count | `uint32` | | | update counter of the home position | ## Constants diff --git a/docs/uk/msg_docs/HomePositionV0.md b/docs/uk/msg_docs/HomePositionV0.md index adb22847a5..1bd0b03b20 100644 --- a/docs/uk/msg_docs/HomePositionV0.md +++ b/docs/uk/msg_docs/HomePositionV0.md @@ -10,21 +10,21 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| lat | `float64` | | | Latitude in degrees | -| lon | `float64` | | | Longitude in degrees | -| alt | `float32` | | | Altitude in meters (AMSL) | -| x | `float32` | | | X coordinate in meters | -| y | `float32` | | | Y coordinate in meters | -| z | `float32` | | | Z coordinate in meters | -| yaw | `float32` | | | Yaw angle in radians | -| valid_alt | `bool` | | | true when the altitude has been set | -| valid_hpos | `bool` | | | true when the latitude and longitude have been set | -| valid_lpos | `bool` | | | true when the local position (xyz) has been set | -| manual_home | `bool` | | | true when home position was set manually | -| update_count | `uint32` | | | update counter of the home position | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| lat | `float64` | | | Latitude in degrees | +| lon | `float64` | | | Longitude in degrees | +| alt | `float32` | | | Altitude in meters (AMSL) | +| x | `float32` | | | X coordinate in meters | +| y | `float32` | | | Y coordinate in meters | +| z | `float32` | | | Z coordinate in meters | +| yaw | `float32` | | | Yaw angle in radians | +| valid_alt | `bool` | | | true when the altitude has been set | +| valid_hpos | `bool` | | | true when the latitude and longitude have been set | +| valid_lpos | `bool` | | | true when the local position (xyz) has been set | +| manual_home | `bool` | | | true when home position was set manually | +| update_count | `uint32` | | | update counter of the home position | ## Constants diff --git a/docs/uk/msg_docs/HoverThrustEstimate.md b/docs/uk/msg_docs/HoverThrustEstimate.md index d72f9d1ccb..5f4f03e706 100644 --- a/docs/uk/msg_docs/HoverThrustEstimate.md +++ b/docs/uk/msg_docs/HoverThrustEstimate.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | time of corresponding sensor data last used for this estimate | -| hover_thrust | `float32` | | | estimated hover thrust [0.1, 0.9] | -| hover_thrust_var | `float32` | | | estimated hover thrust variance | -| accel_innov | `float32` | | | innovation of the last acceleration fusion | -| accel_innov_var | `float32` | | | innovation variance of the last acceleration fusion | -| accel_innov_test_ratio | `float32` | | | normalized innovation squared test ratio | -| accel_noise_var | `float32` | | | vertical acceleration noise variance estimated form innovation residual | -| valid | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | time of corresponding sensor data last used for this estimate | +| hover_thrust | `float32` | | | estimated hover thrust [0.1, 0.9] | +| hover_thrust_var | `float32` | | | estimated hover thrust variance | +| accel_innov | `float32` | | | innovation of the last acceleration fusion | +| accel_innov_var | `float32` | | | innovation variance of the last acceleration fusion | +| accel_innov_test_ratio | `float32` | | | normalized innovation squared test ratio | +| accel_noise_var | `float32` | | | vertical acceleration noise variance estimated form innovation residual | +| valid | `bool` | | | | ## Source Message diff --git a/docs/uk/msg_docs/InputRc.md b/docs/uk/msg_docs/InputRc.md index c187f86eab..f9346b2c2b 100644 --- a/docs/uk/msg_docs/InputRc.md +++ b/docs/uk/msg_docs/InputRc.md @@ -8,23 +8,23 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_last_signal | `uint64` | | | last valid reception time | -| channel_count | `uint8` | | | number of channels actually being seen | -| rssi | `int32` | | | receive signal strength indicator (RSSI): < 0: Undefined, 0: no signal, 100: full reception | -| rc_failsafe | `bool` | | | explicit failsafe flag: true on TX failure or TX out of range , false otherwise. Only the true state is reliable, as there are some (PPM) receivers on the market going into failsafe without telling us explicitly. | -| rc_lost | `bool` | | | RC receiver connection status: True,if no frame has arrived in the expected time, false otherwise. True usually means that the receiver has been disconnected, but can also indicate a radio link loss on "stupid" systems. Will remain false, if a RX with failsafe option continues to transmit frames after a link loss. | -| rc_lost_frame_count | `uint16` | | | Number of lost RC frames. Note: intended purpose: observe the radio link quality if RSSI is not available. This value must not be used to trigger any failsafe-alike functionality. | -| rc_total_frame_count | `uint16` | | | Number of total RC frames. Note: intended purpose: observe the radio link quality if RSSI is not available. This value must not be used to trigger any failsafe-alike functionality. | -| rc_ppm_frame_length | `uint16` | | | Length of a single PPM frame. Zero for non-PPM systems | -| rc_frame_rate | `uint16` | | | RC frame rate in msg/second. 0 = invalid | -| input_source | `uint8` | | | Input source | -| values | `uint16[18]` | | | measured pulse widths for each of the supported channels | -| link_quality | `int8` | | | link quality. Percentage 0-100%. -1 = invalid | -| rssi_dbm | `float32` | | | Actual rssi in units of dBm. NaN = invalid | -| link_snr | `int8` | | | link signal to noise ratio in units of dB. -1 = invalid | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_last_signal | `uint64` | | | last valid reception time | +| channel_count | `uint8` | | | number of channels actually being seen | +| rssi | `int32` | | | receive signal strength indicator (RSSI): < 0: Undefined, 0: no signal, 100: full reception | +| rc_failsafe | `bool` | | | explicit failsafe flag: true on TX failure or TX out of range , false otherwise. Only the true state is reliable, as there are some (PPM) receivers on the market going into failsafe without telling us explicitly. | +| rc_lost | `bool` | | | RC receiver connection status: True,if no frame has arrived in the expected time, false otherwise. True usually means that the receiver has been disconnected, but can also indicate a radio link loss on "stupid" systems. Will remain false, if a RX with failsafe option continues to transmit frames after a link loss. | +| rc_lost_frame_count | `uint16` | | | Number of lost RC frames. Note: intended purpose: observe the radio link quality if RSSI is not available. This value must not be used to trigger any failsafe-alike functionality. | +| rc_total_frame_count | `uint16` | | | Number of total RC frames. Note: intended purpose: observe the radio link quality if RSSI is not available. This value must not be used to trigger any failsafe-alike functionality. | +| rc_ppm_frame_length | `uint16` | | | Length of a single PPM frame. Zero for non-PPM systems | +| rc_frame_rate | `uint16` | | | RC frame rate in msg/second. 0 = invalid | +| input_source | `uint8` | | | Input source | +| values | `uint16[18]` | | | measured pulse widths for each of the supported channels | +| link_quality | `int8` | | | link quality. Percentage 0-100%. -1 = invalid | +| rssi_dbm | `float32` | | | Actual rssi in units of dBm. NaN = invalid | +| link_snr | `int8` | | | link signal to noise ratio in units of dB. -1 = invalid | ## Constants diff --git a/docs/uk/msg_docs/InternalCombustionEngineControl.md b/docs/uk/msg_docs/InternalCombustionEngineControl.md index c41be0444c..365537eba2 100644 --- a/docs/uk/msg_docs/InternalCombustionEngineControl.md +++ b/docs/uk/msg_docs/InternalCombustionEngineControl.md @@ -8,14 +8,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| ignition_on | `bool` | | | activate/deactivate ignition (spark plug) | -| throttle_control | `float32` | | | setpoint for throttle actuator, with slew rate if enabled, idles with 0 [norm] [@range 0,1] [@uncontrolled NAN to stop motor] | -| choke_control | `float32` | | | setpoint for choke actuator, 1: fully closed [norm] [@range 0,1] | -| starter_engine_control | `float32` | | | setpoint for (electric) starter motor [norm] [@range 0,1] | -| user_request | `uint8` | | | user intent for the ICE being on/off | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| ignition_on | `bool` | | | activate/deactivate ignition (spark plug) | +| throttle_control | `float32` | | | setpoint for throttle actuator, with slew rate if enabled, idles with 0 [norm] [@range 0,1] [@uncontrolled NAN to stop motor] | +| choke_control | `float32` | | | setpoint for choke actuator, 1: fully closed [norm] [@range 0,1] | +| starter_engine_control | `float32` | | | setpoint for (electric) starter motor [norm] [@range 0,1] | +| user_request | `uint8` | | | user intent for the ICE being on/off | ## Source Message diff --git a/docs/uk/msg_docs/InternalCombustionEngineStatus.md b/docs/uk/msg_docs/InternalCombustionEngineStatus.md index 0387faa670..fa5782336f 100644 --- a/docs/uk/msg_docs/InternalCombustionEngineStatus.md +++ b/docs/uk/msg_docs/InternalCombustionEngineStatus.md @@ -8,31 +8,31 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| state | `uint8` | | | | -| flags | `uint32` | | | | -| engine_load_percent | `uint8` | | | Engine load estimate, percent, [0, 127] | -| engine_speed_rpm | `uint32` | | | Engine speed, revolutions per minute | -| spark_dwell_time_ms | `float32` | | | Spark dwell time, millisecond | -| atmospheric_pressure_kpa | `float32` | | | Atmospheric (barometric) pressure, kilopascal | -| intake_manifold_pressure_kpa | `float32` | | | Engine intake manifold pressure, kilopascal | -| intake_manifold_temperature | `float32` | | | Engine intake manifold temperature, kelvin | -| coolant_temperature | `float32` | | | Engine coolant temperature, kelvin | -| oil_pressure | `float32` | | | Oil pressure, kilopascal | -| oil_temperature | `float32` | | | Oil temperature, kelvin | -| fuel_pressure | `float32` | | | Fuel pressure, kilopascal | -| fuel_consumption_rate_cm3pm | `float32` | | | Instant fuel consumption estimate, (centimeter^3)/minute | -| estimated_consumed_fuel_volume_cm3 | `float32` | | | Estimate of the consumed fuel since the start of the engine, centimeter^3 | -| throttle_position_percent | `uint8` | | | Throttle position, percent | -| ecu_index | `uint8` | | | The index of the publishing ECU | -| spark_plug_usage | `uint8` | | | Spark plug activity report. | -| ignition_timing_deg | `float32` | | | Cylinder ignition timing, angular degrees of the crankshaft | -| injection_time_ms | `float32` | | | Fuel injection time, millisecond | -| cylinder_head_temperature | `float32` | | | Cylinder head temperature (CHT), kelvin | -| exhaust_gas_temperature | `float32` | | | Exhaust gas temperature (EGT), kelvin | -| lambda_coefficient | `float32` | | | Estimated lambda coefficient, dimensionless ratio | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| state | `uint8` | | | | +| flags | `uint32` | | | | +| engine_load_percent | `uint8` | | | Engine load estimate, percent, [0, 127] | +| engine_speed_rpm | `uint32` | | | Engine speed, revolutions per minute | +| spark_dwell_time_ms | `float32` | | | Spark dwell time, millisecond | +| atmospheric_pressure_kpa | `float32` | | | Atmospheric (barometric) pressure, kilopascal | +| intake_manifold_pressure_kpa | `float32` | | | Engine intake manifold pressure, kilopascal | +| intake_manifold_temperature | `float32` | | | Engine intake manifold temperature, kelvin | +| coolant_temperature | `float32` | | | Engine coolant temperature, kelvin | +| oil_pressure | `float32` | | | Oil pressure, kilopascal | +| oil_temperature | `float32` | | | Oil temperature, kelvin | +| fuel_pressure | `float32` | | | Fuel pressure, kilopascal | +| fuel_consumption_rate_cm3pm | `float32` | | | Instant fuel consumption estimate, (centimeter^3)/minute | +| estimated_consumed_fuel_volume_cm3 | `float32` | | | Estimate of the consumed fuel since the start of the engine, centimeter^3 | +| throttle_position_percent | `uint8` | | | Throttle position, percent | +| ecu_index | `uint8` | | | The index of the publishing ECU | +| spark_plug_usage | `uint8` | | | Spark plug activity report. | +| ignition_timing_deg | `float32` | | | Cylinder ignition timing, angular degrees of the crankshaft | +| injection_time_ms | `float32` | | | Fuel injection time, millisecond | +| cylinder_head_temperature | `float32` | | | Cylinder head temperature (CHT), kelvin | +| exhaust_gas_temperature | `float32` | | | Exhaust gas temperature (EGT), kelvin | +| lambda_coefficient | `float32` | | | Estimated lambda coefficient, dimensionless ratio | ## Constants diff --git a/docs/uk/msg_docs/IridiumsbdStatus.md b/docs/uk/msg_docs/IridiumsbdStatus.md index a9504a64c3..625d06c672 100644 --- a/docs/uk/msg_docs/IridiumsbdStatus.md +++ b/docs/uk/msg_docs/IridiumsbdStatus.md @@ -8,23 +8,23 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| last_at_ok_timestamp | `uint64` | | | timestamp of the last "OK" received after the "AT" command | -| tx_buf_write_index | `uint16` | | | current size of the tx buffer | -| rx_buf_read_index | `uint16` | | | the rx buffer is parsed up to that index | -| rx_buf_end_index | `uint16` | | | current size of the rx buffer | -| failed_sbd_sessions | `uint16` | | | number of failed sbd sessions | -| successful_sbd_sessions | `uint16` | | | number of successful sbd sessions | -| num_tx_buf_reset | `uint16` | | | number of times the tx buffer was reset | -| signal_quality | `uint8` | | | current signal quality, 0 is no signal, 5 the best | -| state | `uint8` | | | current state of the driver, see the satcom_state of IridiumSBD.h for the definition | -| ring_pending | `bool` | | | indicates if a ring call is pending | -| tx_buf_write_pending | `bool` | | | indicates if a tx buffer write is pending | -| tx_session_pending | `bool` | | | indicates if a tx session is pending | -| rx_read_pending | `bool` | | | indicates if a rx read is pending | -| rx_session_pending | `bool` | | | indicates if a rx session is pending | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| last_at_ok_timestamp | `uint64` | | | timestamp of the last "OK" received after the "AT" command | +| tx_buf_write_index | `uint16` | | | current size of the tx buffer | +| rx_buf_read_index | `uint16` | | | the rx buffer is parsed up to that index | +| rx_buf_end_index | `uint16` | | | current size of the rx buffer | +| failed_sbd_sessions | `uint16` | | | number of failed sbd sessions | +| successful_sbd_sessions | `uint16` | | | number of successful sbd sessions | +| num_tx_buf_reset | `uint16` | | | number of times the tx buffer was reset | +| signal_quality | `uint8` | | | current signal quality, 0 is no signal, 5 the best | +| state | `uint8` | | | current state of the driver, see the satcom_state of IridiumSBD.h for the definition | +| ring_pending | `bool` | | | indicates if a ring call is pending | +| tx_buf_write_pending | `bool` | | | indicates if a tx buffer write is pending | +| tx_session_pending | `bool` | | | indicates if a tx session is pending | +| rx_read_pending | `bool` | | | indicates if a rx read is pending | +| rx_session_pending | `bool` | | | indicates if a rx session is pending | ## Source Message diff --git a/docs/uk/msg_docs/IrlockReport.md b/docs/uk/msg_docs/IrlockReport.md index e38ee0f851..99ceff10aa 100644 --- a/docs/uk/msg_docs/IrlockReport.md +++ b/docs/uk/msg_docs/IrlockReport.md @@ -10,14 +10,14 @@ IRLOCK_REPORT message data. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| signature | `uint16` | | | | -| pos_x | `float32` | | | tan(theta), where theta is the angle between the target and the camera center of projection in camera x-axis | -| pos_y | `float32` | | | tan(theta), where theta is the angle between the target and the camera center of projection in camera y-axis | -| size_x | `float32` | | | /\*\* size of target along camera x-axis in units of tan(theta) \*\*/ | -| size_y | `float32` | | | /\*\* size of target along camera y-axis in units of tan(theta) \*\*/ | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| signature | `uint16` | | | | +| pos_x | `float32` | | | tan(theta), where theta is the angle between the target and the camera center of projection in camera x-axis | +| pos_y | `float32` | | | tan(theta), where theta is the angle between the target and the camera center of projection in camera y-axis | +| size_x | `float32` | | | /\*\* size of target along camera x-axis in units of tan(theta) \*\*/ | +| size_y | `float32` | | | /\*\* size of target along camera y-axis in units of tan(theta) \*\*/ | ## Source Message diff --git a/docs/uk/msg_docs/LandingGear.md b/docs/uk/msg_docs/LandingGear.md index 11180579c0..3087874bb7 100644 --- a/docs/uk/msg_docs/LandingGear.md +++ b/docs/uk/msg_docs/LandingGear.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| landing_gear | `int8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| landing_gear | `int8` | | | | ## Constants diff --git a/docs/uk/msg_docs/LandingGearWheel.md b/docs/uk/msg_docs/LandingGearWheel.md index e30a8e8845..07d4efb79b 100644 --- a/docs/uk/msg_docs/LandingGearWheel.md +++ b/docs/uk/msg_docs/LandingGearWheel.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| normalized_wheel_setpoint | `float32` | | | negative is turning left, positive turning right [-1, 1] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| normalized_wheel_setpoint | `float32` | | | negative is turning left, positive turning right [-1, 1] | ## Source Message diff --git a/docs/uk/msg_docs/LandingTargetInnovations.md b/docs/uk/msg_docs/LandingTargetInnovations.md index c7a02a8335..072af3e8ec 100644 --- a/docs/uk/msg_docs/LandingTargetInnovations.md +++ b/docs/uk/msg_docs/LandingTargetInnovations.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| innov_x | `float32` | | | | -| innov_y | `float32` | | | | -| innov_cov_x | `float32` | | | | -| innov_cov_y | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| innov_x | `float32` | | | | +| innov_y | `float32` | | | | +| innov_cov_x | `float32` | | | | +| innov_cov_y | `float32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/LandingTargetPose.md b/docs/uk/msg_docs/LandingTargetPose.md index 547cbd1857..f1304d7213 100644 --- a/docs/uk/msg_docs/LandingTargetPose.md +++ b/docs/uk/msg_docs/LandingTargetPose.md @@ -10,25 +10,29 @@ Relative position of precision land target in navigation (body fixed, north alig ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| is_static | `bool` | | | Flag indicating whether the landing target is static or moving with respect to the ground | -| rel_pos_valid | `bool` | | | Flag showing whether relative position is valid | -| rel_vel_valid | `bool` | | | Flag showing whether relative velocity is valid | -| x_rel | `float32` | | | X/north position of target, relative to vehicle (navigation frame) [meters] | -| y_rel | `float32` | | | Y/east position of target, relative to vehicle (navigation frame) [meters] | -| z_rel | `float32` | | | Z/down position of target, relative to vehicle (navigation frame) [meters] | -| vx_rel | `float32` | | | X/north velocity of target, relative to vehicle (navigation frame) [meters/second] | -| vy_rel | `float32` | | | Y/east velocity of target, relative to vehicle (navigation frame) [meters/second] | -| cov_x_rel | `float32` | | | X/north position variance [meters^2] | -| cov_y_rel | `float32` | | | Y/east position variance [meters^2] | -| cov_vx_rel | `float32` | | | X/north velocity variance [(meters/second)^2] | -| cov_vy_rel | `float32` | | | Y/east velocity variance [(meters/second)^2] | -| abs_pos_valid | `bool` | | | Flag showing whether absolute position is valid | -| x_abs | `float32` | | | X/north position of target, relative to origin (navigation frame) [meters] | -| y_abs | `float32` | | | Y/east position of target, relative to origin (navigation frame) [meters] | -| z_abs | `float32` | | | Z/down position of target, relative to origin (navigation frame) [meters] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| is_static | `bool` | | | Flag indicating whether the landing target is static or moving with respect to the ground | +| rel_pos_valid | `bool` | | | Flag showing whether relative position is valid | +| rel_vel_valid | `bool` | | | Flag showing whether relative velocity is valid | +| rel_vel_ekf2_valid | `bool` | | | Flag showing whether relative velocity is valid for EKF2 auxiliary velocity aiding | +| x_rel | `float32` | m | | X/north position of target, relative to vehicle (navigation frame) | +| y_rel | `float32` | m | | Y/east position of target, relative to vehicle (navigation frame) | +| z_rel | `float32` | m | | Z/down position of target, relative to vehicle (navigation frame) | +| vx_rel | `float32` | m/s | | X/north velocity of target, relative to vehicle (navigation frame) | +| vy_rel | `float32` | m/s | | Y/east velocity of target, relative to vehicle (navigation frame) | +| vz_rel | `float32` | m/s | | Z/down velocity of target, relative to vehicle (navigation frame) | +| cov_x_rel | `float32` | m^2 | | X/north position variance | +| cov_y_rel | `float32` | m^2 | | Y/east position variance | +| cov_z_rel | `float32` | m^2 | | Z/down position variance | +| cov_vx_rel | `float32` | (m/s)^2 | | X/north velocity variance | +| cov_vy_rel | `float32` | (m/s)^2 | | Y/east velocity variance | +| cov_vz_rel | `float32` | (m/s)^2 | | Z/down velocity variance | +| abs_pos_valid | `bool` | | | Flag showing whether absolute position is valid | +| x_abs | `float32` | m | | X/north position of target, relative to origin (navigation frame) | +| y_abs | `float32` | m | | Y/east position of target, relative to origin (navigation frame) | +| z_abs | `float32` | m | | Z/down position of target, relative to origin (navigation frame) | ## Source Message @@ -40,30 +44,35 @@ Click here to see original file ```c # Relative position of precision land target in navigation (body fixed, north aligned, NED) and inertial (world fixed, north aligned, NED) frames -uint64 timestamp # time since system start (microseconds) +uint64 timestamp # [us] Time since system start -bool is_static # Flag indicating whether the landing target is static or moving with respect to the ground +bool is_static # [-] Flag indicating whether the landing target is static or moving with respect to the ground -bool rel_pos_valid # Flag showing whether relative position is valid -bool rel_vel_valid # Flag showing whether relative velocity is valid +bool rel_pos_valid # [-] Flag showing whether relative position is valid +bool rel_vel_valid # [-] Flag showing whether relative velocity is valid +bool rel_vel_ekf2_valid # [-] Flag showing whether relative velocity is valid for EKF2 auxiliary velocity aiding -float32 x_rel # X/north position of target, relative to vehicle (navigation frame) [meters] -float32 y_rel # Y/east position of target, relative to vehicle (navigation frame) [meters] -float32 z_rel # Z/down position of target, relative to vehicle (navigation frame) [meters] +float32 x_rel # [m] X/north position of target, relative to vehicle (navigation frame) +float32 y_rel # [m] Y/east position of target, relative to vehicle (navigation frame) +float32 z_rel # [m] Z/down position of target, relative to vehicle (navigation frame) -float32 vx_rel # X/north velocity of target, relative to vehicle (navigation frame) [meters/second] -float32 vy_rel # Y/east velocity of target, relative to vehicle (navigation frame) [meters/second] +float32 vx_rel # [m/s] X/north velocity of target, relative to vehicle (navigation frame) +float32 vy_rel # [m/s] Y/east velocity of target, relative to vehicle (navigation frame) +float32 vz_rel # [m/s] Z/down velocity of target, relative to vehicle (navigation frame) -float32 cov_x_rel # X/north position variance [meters^2] -float32 cov_y_rel # Y/east position variance [meters^2] +float32 cov_x_rel # [m^2] X/north position variance +float32 cov_y_rel # [m^2] Y/east position variance +float32 cov_z_rel # [m^2] Z/down position variance -float32 cov_vx_rel # X/north velocity variance [(meters/second)^2] -float32 cov_vy_rel # Y/east velocity variance [(meters/second)^2] +float32 cov_vx_rel # [(m/s)^2] X/north velocity variance +float32 cov_vy_rel # [(m/s)^2] Y/east velocity variance +float32 cov_vz_rel # [(m/s)^2] Z/down velocity variance -bool abs_pos_valid # Flag showing whether absolute position is valid -float32 x_abs # X/north position of target, relative to origin (navigation frame) [meters] -float32 y_abs # Y/east position of target, relative to origin (navigation frame) [meters] -float32 z_abs # Z/down position of target, relative to origin (navigation frame) [meters] +bool abs_pos_valid # [-] Flag showing whether absolute position is valid + +float32 x_abs # [m] X/north position of target, relative to origin (navigation frame) +float32 y_abs # [m] Y/east position of target, relative to origin (navigation frame) +float32 z_abs # [m] Z/down position of target, relative to origin (navigation frame) ``` ::: diff --git a/docs/uk/msg_docs/LateralControlConfiguration.md b/docs/uk/msg_docs/LateralControlConfiguration.md index d02c38a8a6..fbfdc25398 100644 --- a/docs/uk/msg_docs/LateralControlConfiguration.md +++ b/docs/uk/msg_docs/LateralControlConfiguration.md @@ -12,10 +12,10 @@ Used by the fw_lateral_longitudinal_control module to constrain FixedWingLateral ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| lateral_accel_max | `float32` | m/s^2 | | Currently maps to a maximum roll angle, accel_max = tan(roll_max) \* GRAVITY | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| lateral_accel_max | `float32` | m/s^2 | | Currently maps to a maximum roll angle, accel_max = tan(roll_max) \* GRAVITY | ## Constants diff --git a/docs/uk/msg_docs/LaunchDetectionStatus.md b/docs/uk/msg_docs/LaunchDetectionStatus.md index a5c73e80ad..bdda162963 100644 --- a/docs/uk/msg_docs/LaunchDetectionStatus.md +++ b/docs/uk/msg_docs/LaunchDetectionStatus.md @@ -10,11 +10,11 @@ Status of the launch detection state machine (fixed-wing only). ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| launch_detection_state | `uint8` | | | | -| selected_control_surface_disarmed | `bool` | | | flag indicating whether selected actuators should kept disarmed (have to be configured in control allocation) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| launch_detection_state | `uint8` | | | | +| selected_control_surface_disarmed | `bool` | | | flag indicating whether selected actuators should kept disarmed (have to be configured in control allocation) | ## Constants diff --git a/docs/uk/msg_docs/LedControl.md b/docs/uk/msg_docs/LedControl.md index 93af6135f5..071fb30864 100644 --- a/docs/uk/msg_docs/LedControl.md +++ b/docs/uk/msg_docs/LedControl.md @@ -10,14 +10,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| led_mask | `uint8` | | | bitmask which LED(s) to control, set to 0xff for all | -| color | `uint8` | | | see COLOR\_\* | -| mode | `uint8` | | | see MODE\_\* | -| num_blinks | `uint8` | | | how many times to blink (number of on-off cycles if mode is one of MODE_BLINK_\*) . Set to 0 for infinite | -| priority | `uint8` | | | priority: higher priority events will override current lower priority events (see MAX_PRIORITY) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| led_mask | `uint8` | | | bitmask which LED(s) to control, set to 0xff for all | +| color | `uint8` | | | see COLOR\_\* | +| mode | `uint8` | | | see MODE\_\* | +| num_blinks | `uint8` | | | how many times to blink (number of on-off cycles if mode is one of MODE_BLINK_\*) . Set to 0 for infinite | +| priority | `uint8` | | | priority: higher priority events will override current lower priority events (see MAX_PRIORITY) | ## Constants diff --git a/docs/uk/msg_docs/LogMessage.md b/docs/uk/msg_docs/LogMessage.md index 0870cf6e4d..505b8e9ad8 100644 --- a/docs/uk/msg_docs/LogMessage.md +++ b/docs/uk/msg_docs/LogMessage.md @@ -10,11 +10,11 @@ A logging message, output with PX4_WARN, PX4_ERR, PX4_INFO. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| severity | `uint8` | | | log level (same as in the linux kernel, starting with 0) | -| text | `char[127]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| severity | `uint8` | | | log level (same as in the linux kernel, starting with 0) | +| text | `char[127]` | | | | ## Constants diff --git a/docs/uk/msg_docs/LoggerStatus.md b/docs/uk/msg_docs/LoggerStatus.md index 0cbcf11138..7e196b3b54 100644 --- a/docs/uk/msg_docs/LoggerStatus.md +++ b/docs/uk/msg_docs/LoggerStatus.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| type | `uint8` | | | | -| backend | `uint8` | | | | -| is_logging | `bool` | | | | -| total_written_kb | `float32` | | | total written to log in kiloBytes | -| write_rate_kb_s | `float32` | | | write rate in kiloBytes/s | -| dropouts | `uint32` | | | number of failed buffer writes due to buffer overflow | -| message_gaps | `uint32` | | | messages misssed | -| buffer_used_bytes | `uint32` | | | current buffer fill in Bytes | -| buffer_size_bytes | `uint32` | | | total buffer size in Bytes | -| num_messages | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| type | `uint8` | | | | +| backend | `uint8` | | | | +| is_logging | `bool` | | | | +| total_written_kb | `float32` | | | total written to log in kiloBytes | +| write_rate_kb_s | `float32` | | | write rate in kiloBytes/s | +| dropouts | `uint32` | | | number of failed buffer writes due to buffer overflow | +| message_gaps | `uint32` | | | messages misssed | +| buffer_used_bytes | `uint32` | | | current buffer fill in Bytes | +| buffer_size_bytes | `uint32` | | | total buffer size in Bytes | +| num_messages | `uint8` | | | | ## Constants diff --git a/docs/uk/msg_docs/LongitudinalControlConfiguration.md b/docs/uk/msg_docs/LongitudinalControlConfiguration.md index b94efb64dc..f60e76837a 100644 --- a/docs/uk/msg_docs/LongitudinalControlConfiguration.md +++ b/docs/uk/msg_docs/LongitudinalControlConfiguration.md @@ -13,18 +13,18 @@ and configure the resultant setpoints. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| pitch_min | `float32` | rad | [-pi : pi] | Defaults to FW_P_LIM_MIN if NAN. | -| pitch_max | `float32` | rad | [-pi : pi] | Defaults to FW_P_LIM_MAX if NAN. | -| throttle_min | `float32` | norm | [0 : 1] | Defaults to FW_THR_MIN if NAN. | -| throttle_max | `float32` | norm | [0 : 1] | Defaults to FW_THR_MAX if NAN. | -| climb_rate_target | `float32` | m/s | | Target climbrate to change altitude. Defaults to FW_T_CLIMB_MAX if NAN. Not used if height_rate is directly set in FixedWingLongitudinalSetpoint. | -| sink_rate_target | `float32` | m/s | | Target sinkrate to change altitude. Defaults to FW_T_SINK_MAX if NAN. Not used if height_rate is directly set in FixedWingLongitudinalSetpoint. | -| speed_weight | `float32` | | [0 : 2] | 0=pitch controls altitude only, 2=pitch controls airspeed only | -| enforce_low_height_condition | `bool` | | | If true, the altitude controller is configured with an alternative timeconstant for tighter altitude tracking | -| disable_underspeed_protection | `bool` | | | If true, underspeed handling is disabled in the altitude controller | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| pitch_min | `float32` | rad | [-pi : pi] | Defaults to FW_P_LIM_MIN if NAN. | +| pitch_max | `float32` | rad | [-pi : pi] | Defaults to FW_P_LIM_MAX if NAN. | +| throttle_min | `float32` | norm | [0 : 1] | Defaults to FW_THR_MIN if NAN. | +| throttle_max | `float32` | norm | [0 : 1] | Defaults to FW_THR_MAX if NAN. | +| climb_rate_target | `float32` | m/s | | Target climbrate to change altitude. Defaults to FW_T_CLIMB_MAX if NAN. Not used if height_rate is directly set in FixedWingLongitudinalSetpoint. | +| sink_rate_target | `float32` | m/s | | Target sinkrate to change altitude. Defaults to FW_T_SINK_MAX if NAN. Not used if height_rate is directly set in FixedWingLongitudinalSetpoint. | +| speed_weight | `float32` | | [0 : 2] | 0=pitch controls altitude only, 2=pitch controls airspeed only | +| enforce_low_height_condition | `bool` | | | If true, the altitude controller is configured with an alternative timeconstant for tighter altitude tracking | +| disable_underspeed_protection | `bool` | | | If true, underspeed handling is disabled in the altitude controller | ## Constants diff --git a/docs/uk/msg_docs/MagWorkerData.md b/docs/uk/msg_docs/MagWorkerData.md index f97b55d4e4..db24a297a4 100644 --- a/docs/uk/msg_docs/MagWorkerData.md +++ b/docs/uk/msg_docs/MagWorkerData.md @@ -8,18 +8,18 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| done_count | `uint32` | | | | -| calibration_points_perside | `uint32` | | | | -| calibration_interval_perside_us | `uint64` | | | | -| calibration_counter_total | `uint32[4]` | | | | -| side_data_collected | `bool[4]` | | | | -| x | `float32[4]` | | | | -| y | `float32[4]` | | | | -| z | `float32[4]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| done_count | `uint32` | | | | +| calibration_points_perside | `uint32` | | | | +| calibration_interval_perside_us | `uint64` | | | | +| calibration_counter_total | `uint32[4]` | | | | +| side_data_collected | `bool[4]` | | | | +| x | `float32[4]` | | | | +| y | `float32[4]` | | | | +| z | `float32[4]` | | | | ## Constants diff --git a/docs/uk/msg_docs/MagnetometerBiasEstimate.md b/docs/uk/msg_docs/MagnetometerBiasEstimate.md index 6962a6479b..f89330e149 100644 --- a/docs/uk/msg_docs/MagnetometerBiasEstimate.md +++ b/docs/uk/msg_docs/MagnetometerBiasEstimate.md @@ -8,14 +8,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| bias_x | `float32[4]` | | | estimated X-bias of all the sensors | -| bias_y | `float32[4]` | | | estimated Y-bias of all the sensors | -| bias_z | `float32[4]` | | | estimated Z-bias of all the sensors | -| valid | `bool[4]` | | | true if the estimator has converged | -| stable | `bool[4]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| bias_x | `float32[4]` | | | estimated X-bias of all the sensors | +| bias_y | `float32[4]` | | | estimated Y-bias of all the sensors | +| bias_z | `float32[4]` | | | estimated Z-bias of all the sensors | +| valid | `bool[4]` | | | true if the estimator has converged | +| stable | `bool[4]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/ManualControlSetpoint.md b/docs/uk/msg_docs/ManualControlSetpoint.md index f46dd21c4a..7c1a7b5f2f 100644 --- a/docs/uk/msg_docs/ManualControlSetpoint.md +++ b/docs/uk/msg_docs/ManualControlSetpoint.md @@ -8,25 +8,25 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| valid | `bool` | | | | -| data_source | `uint8` | | | | -| roll | `float32` | | | move right, positive roll rotation, right side down | -| pitch | `float32` | | | move forward, negative pitch rotation, nose down | -| yaw | `float32` | | | positive yaw rotation, clockwise when seen top down | -| throttle | `float32` | | | move up, positive thrust, -1 is minimum available 0% or -100% +1 is 100% thrust | -| flaps | `float32` | | | position of flaps switch/knob/lever [-1, 1] | -| aux1 | `float32` | | | | -| aux2 | `float32` | | | | -| aux3 | `float32` | | | | -| aux4 | `float32` | | | | -| aux5 | `float32` | | | | -| aux6 | `float32` | | | | -| sticks_moving | `bool` | | | | -| buttons | `uint16` | | | From uint16 buttons field of Mavlink manual_control message | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| valid | `bool` | | | | +| data_source | `uint8` | | | | +| roll | `float32` | | | move right, positive roll rotation, right side down | +| pitch | `float32` | | | move forward, negative pitch rotation, nose down | +| yaw | `float32` | | | positive yaw rotation, clockwise when seen top down | +| throttle | `float32` | | | move up, positive thrust, -1 is minimum available 0% or -100% +1 is 100% thrust | +| flaps | `float32` | | | position of flaps switch/knob/lever [-1, 1] | +| aux1 | `float32` | | | | +| aux2 | `float32` | | | | +| aux3 | `float32` | | | | +| aux4 | `float32` | | | | +| aux5 | `float32` | | | | +| aux6 | `float32` | | | | +| sticks_moving | `bool` | | | | +| buttons | `uint16` | | | From uint16 buttons field of Mavlink manual_control message | ## Constants diff --git a/docs/uk/msg_docs/ManualControlSwitches.md b/docs/uk/msg_docs/ManualControlSwitches.md index b25def95e4..26a7db9bb4 100644 --- a/docs/uk/msg_docs/ManualControlSwitches.md +++ b/docs/uk/msg_docs/ManualControlSwitches.md @@ -8,24 +8,24 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| mode_slot | `uint8` | | | the slot a specific model selector is in | -| arm_switch | `uint8` | | | arm/disarm switch: _DISARMED_, ARMED | -| return_switch | `uint8` | | | return to launch 2 position switch (mandatory): _NORMAL_, RTL | -| loiter_switch | `uint8` | | | loiter 2 position switch (optional): _MISSION_, LOITER | -| offboard_switch | `uint8` | | | offboard 2 position switch (optional): _NORMAL_, OFFBOARD | -| kill_switch | `uint8` | | | throttle kill: _NORMAL_, KILL | -| termination_switch | `uint8` | | | trigger termination which cannot be undone | -| gear_switch | `uint8` | | | landing gear switch: _DOWN_, UP | -| transition_switch | `uint8` | | | VTOL transition switch: \_HOVER, FORWARD_FLIGHT | -| photo_switch | `uint8` | | | Photo trigger switch | -| video_switch | `uint8` | | | Photo trigger switch | -| engage_main_motor_switch | `uint8` | | | Engage the main motor (for helicopters) | -| payload_power_switch | `uint8` | | | Payload power switch | -| switch_changes | `uint32` | | | number of switch changes | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| mode_slot | `uint8` | | | the slot a specific model selector is in | +| arm_switch | `uint8` | | | arm/disarm switch: _DISARMED_, ARMED | +| return_switch | `uint8` | | | return to launch 2 position switch (mandatory): _NORMAL_, RTL | +| loiter_switch | `uint8` | | | loiter 2 position switch (optional): _MISSION_, LOITER | +| offboard_switch | `uint8` | | | offboard 2 position switch (optional): _NORMAL_, OFFBOARD | +| kill_switch | `uint8` | | | throttle kill: _NORMAL_, KILL | +| termination_switch | `uint8` | | | trigger termination which cannot be undone | +| gear_switch | `uint8` | | | landing gear switch: _DOWN_, UP | +| transition_switch | `uint8` | | | VTOL transition switch: \_HOVER, FORWARD_FLIGHT | +| photo_switch | `uint8` | | | Photo trigger switch | +| video_switch | `uint8` | | | Photo trigger switch | +| engage_main_motor_switch | `uint8` | | | Engage the main motor (for helicopters) | +| payload_power_switch | `uint8` | | | Payload power switch | +| switch_changes | `uint32` | | | number of switch changes | ## Constants diff --git a/docs/uk/msg_docs/MavlinkLog.md b/docs/uk/msg_docs/MavlinkLog.md index da1c7ef458..5af58660ec 100644 --- a/docs/uk/msg_docs/MavlinkLog.md +++ b/docs/uk/msg_docs/MavlinkLog.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| text | `char[127]` | | | | -| severity | `uint8` | | | log level (same as in the linux kernel, starting with 0) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| text | `char[127]` | | | | +| severity | `uint8` | | | log level (same as in the linux kernel, starting with 0) | ## Constants diff --git a/docs/uk/msg_docs/MavlinkTunnel.md b/docs/uk/msg_docs/MavlinkTunnel.md index 346feb7abb..e9221020f9 100644 --- a/docs/uk/msg_docs/MavlinkTunnel.md +++ b/docs/uk/msg_docs/MavlinkTunnel.md @@ -10,14 +10,14 @@ MAV_TUNNEL_PAYLOAD_TYPE enum. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | Time since system start (microseconds) | -| payload_type | `uint16` | | | A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the MAV_TUNNEL_PAYLOAD_TYPE enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. | -| target_system | `uint8` | | | System ID (can be 0 for broadcast, but this is discouraged) | -| target_component | `uint8` | | | Component ID (can be 0 for broadcast, but this is discouraged) | -| payload_length | `uint8` | | | Length of the data transported in payload | -| payload | `uint8[128]` | | | Data itself | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | Time since system start (microseconds) | +| payload_type | `uint16` | | | A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the MAV_TUNNEL_PAYLOAD_TYPE enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. | +| target_system | `uint8` | | | System ID (can be 0 for broadcast, but this is discouraged) | +| target_component | `uint8` | | | Component ID (can be 0 for broadcast, but this is discouraged) | +| payload_length | `uint8` | | | Length of the data transported in payload | +| payload | `uint8[128]` | | | Data itself | ## Constants diff --git a/docs/uk/msg_docs/MessageFormatRequest.md b/docs/uk/msg_docs/MessageFormatRequest.md index 8d2a57208b..bc9e7bf319 100644 --- a/docs/uk/msg_docs/MessageFormatRequest.md +++ b/docs/uk/msg_docs/MessageFormatRequest.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| protocol_version | `uint16` | | | Must be set to LATEST_PROTOCOL_VERSION. Do not change this field, it must be the first field after the timestamp | -| topic_name | `char[50]` | | | Наприклад, /fmu/in/vehicle_command | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| protocol_version | `uint16` | | | Must be set to LATEST_PROTOCOL_VERSION. Do not change this field, it must be the first field after the timestamp | +| topic_name | `char[50]` | | | Наприклад, /fmu/in/vehicle_command | ## Constants diff --git a/docs/uk/msg_docs/MessageFormatResponse.md b/docs/uk/msg_docs/MessageFormatResponse.md index 74cff8625f..e3993b8a36 100644 --- a/docs/uk/msg_docs/MessageFormatResponse.md +++ b/docs/uk/msg_docs/MessageFormatResponse.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| protocol_version | `uint16` | | | Must be set to LATEST_PROTOCOL_VERSION. Do not change this field, it must be the first field after the timestamp | -| topic_name | `char[50]` | | | Наприклад, /fmu/in/vehicle_command | -| success | `bool` | | | | -| message_hash | `uint32` | | | hash over all message fields | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| protocol_version | `uint16` | | | Must be set to LATEST_PROTOCOL_VERSION. Do not change this field, it must be the first field after the timestamp | +| topic_name | `char[50]` | | | Наприклад, /fmu/in/vehicle_command | +| success | `bool` | | | | +| message_hash | `uint32` | | | hash over all message fields | ## Source Message diff --git a/docs/uk/msg_docs/Mission.md b/docs/uk/msg_docs/Mission.md index 6d138c850e..dcc1d694b3 100644 --- a/docs/uk/msg_docs/Mission.md +++ b/docs/uk/msg_docs/Mission.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| mission_dataman_id | `uint8` | | | default 0, there are two offboard storage places in the dataman: 0 or 1 | -| fence_dataman_id | `uint8` | | | default 0, there are two offboard storage places in the dataman: 0 or 1 | -| safepoint_dataman_id | `uint8` | | | default 0, there are two offboard storage places in the dataman: 0 or 1 | -| count | `uint16` | | | count of the missions stored in the dataman | -| current_seq | `int32` | | | default -1, start at the one changed latest | -| land_start_index | `int32` | | | Index of the land start marker, if unavailable index of the land item, -1 otherwise | -| land_index | `int32` | | | Index of the land item, -1 otherwise | -| mission_id | `uint32` | | | indicates updates to the mission, reload from dataman if changed | -| geofence_id | `uint32` | | | indicates updates to the geofence, reload from dataman if changed | -| safe_points_id | `uint32` | | | indicates updates to the safe points, reload from dataman if changed | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| mission_dataman_id | `uint8` | | | default 0, there are two offboard storage places in the dataman: 0 or 1 | +| fence_dataman_id | `uint8` | | | default 0, there are two offboard storage places in the dataman: 0 or 1 | +| safepoint_dataman_id | `uint8` | | | default 0, there are two offboard storage places in the dataman: 0 or 1 | +| count | `uint16` | | | count of the missions stored in the dataman | +| current_seq | `int32` | | | default -1, start at the one changed latest | +| land_start_index | `int32` | | | Index of the land start marker, if unavailable index of the land item, -1 otherwise | +| land_index | `int32` | | | Index of the land item, -1 otherwise | +| mission_id | `uint32` | | | indicates updates to the mission, reload from dataman if changed | +| geofence_id | `uint32` | | | indicates updates to the geofence, reload from dataman if changed | +| safe_points_id | `uint32` | | | indicates updates to the safe points, reload from dataman if changed | ## Source Message diff --git a/docs/uk/msg_docs/MissionResult.md b/docs/uk/msg_docs/MissionResult.md index 8f8a00f2f5..aaf377e0c3 100644 --- a/docs/uk/msg_docs/MissionResult.md +++ b/docs/uk/msg_docs/MissionResult.md @@ -8,23 +8,23 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| mission_id | `uint32` | | | Id for the mission for which the result was generated | -| geofence_id | `uint32` | | | Id for the corresponding geofence for which the result was generated (used for mission feasibility) | -| home_position_counter | `uint32` | | | Counter of the home position for which the result was generated (used for mission feasibility) | -| seq_reached | `int32` | | | Sequence of the mission item which has been reached, default -1 | -| seq_current | `uint16` | | | Sequence of the current mission item | -| seq_total | `uint16` | | | Total number of mission items | -| valid | `bool` | | | true if mission is valid | -| warning | `bool` | | | true if mission is valid, but has potentially problematic items leading to safety warnings | -| finished | `bool` | | | true if mission has been completed | -| failure | `bool` | | | true if the mission cannot continue or be completed for some reason | -| item_do_jump_changed | `bool` | | | true if the number of do jumps remaining has changed | -| item_changed_index | `uint16` | | | indicate which item has changed | -| item_do_jump_remaining | `uint16` | | | set to the number of do jumps remaining for that item | -| execution_mode | `uint8` | | | indicates the mode in which the mission is executed | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| mission_id | `uint32` | | | Id for the mission for which the result was generated | +| geofence_id | `uint32` | | | Id for the corresponding geofence for which the result was generated (used for mission feasibility) | +| home_position_counter | `uint32` | | | Counter of the home position for which the result was generated (used for mission feasibility) | +| seq_reached | `int32` | | | Sequence of the mission item which has been reached, default -1 | +| seq_current | `uint16` | | | Sequence of the current mission item | +| seq_total | `uint16` | | | Total number of mission items | +| valid | `bool` | | | true if mission is valid | +| warning | `bool` | | | true if mission is valid, but has potentially problematic items leading to safety warnings | +| finished | `bool` | | | true if mission has been completed | +| failure | `bool` | | | true if the mission cannot continue or be completed for some reason | +| item_do_jump_changed | `bool` | | | true if the number of do jumps remaining has changed | +| item_changed_index | `uint16` | | | indicate which item has changed | +| item_do_jump_remaining | `uint16` | | | set to the number of do jumps remaining for that item | +| execution_mode | `uint8` | | | indicates the mode in which the mission is executed | ## Source Message diff --git a/docs/uk/msg_docs/ModeCompleted.md b/docs/uk/msg_docs/ModeCompleted.md index 7e1b79cc71..e87f7d868c 100644 --- a/docs/uk/msg_docs/ModeCompleted.md +++ b/docs/uk/msg_docs/ModeCompleted.md @@ -10,11 +10,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| result | `uint8` | | | One of RESULT\_\* | -| nav_state | `uint8` | | | Source mode (values in VehicleStatus) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| result | `uint8` | | | One of RESULT\_\* | +| nav_state | `uint8` | | | Source mode (values in VehicleStatus) | ## Constants diff --git a/docs/uk/msg_docs/MountOrientation.md b/docs/uk/msg_docs/MountOrientation.md index d8ca03793b..5f0a5875ee 100644 --- a/docs/uk/msg_docs/MountOrientation.md +++ b/docs/uk/msg_docs/MountOrientation.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| attitude_euler_angle | `float32[3]` | | | Attitude/direction of the mount as euler angles in rad | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| attitude_euler_angle | `float32[3]` | | | Attitude/direction of the mount as euler angles in rad | ## Source Message diff --git a/docs/uk/msg_docs/NavigatorMissionItem.md b/docs/uk/msg_docs/NavigatorMissionItem.md index 0478e298bc..07dc6b742e 100644 --- a/docs/uk/msg_docs/NavigatorMissionItem.md +++ b/docs/uk/msg_docs/NavigatorMissionItem.md @@ -8,25 +8,25 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| sequence_current | `uint16` | | | Sequence of the current mission item | -| nav_cmd | `uint16` | | | | -| latitude | `float32` | | | | -| longitude | `float32` | | | | -| time_inside | `float32` | | | time that the MAV should stay inside the radius before advancing in seconds | -| acceptance_radius | `float32` | | | default radius in which the mission is accepted as reached in meters | -| loiter_radius | `float32` | | | loiter radius in meters, 0 for a VTOL to hover, negative for counter-clockwise | -| yaw | `float32` | | | in radians NED -PI..+PI, NAN means don't change yaw | -| altitude | `float32` | | | altitude in meters (AMSL) | -| frame | `uint8` | | | mission frame | -| origin | `uint8` | | | mission item origin (onboard or mavlink) | -| loiter_exit_xtrack | `bool` | | | exit xtrack location: 0 for center of loiter wp, 1 for exit location | -| force_heading | `bool` | | | heading needs to be reached | -| altitude_is_relative | `bool` | | | true if altitude is relative from start point | -| autocontinue | `bool` | | | true if next waypoint should follow after this one | -| vtol_back_transition | `bool` | | | part of the vtol back transition sequence | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| sequence_current | `uint16` | | | Sequence of the current mission item | +| nav_cmd | `uint16` | | | | +| latitude | `float32` | | | | +| longitude | `float32` | | | | +| time_inside | `float32` | | | time that the MAV should stay inside the radius before advancing in seconds | +| acceptance_radius | `float32` | | | default radius in which the mission is accepted as reached in meters | +| loiter_radius | `float32` | | | loiter radius in meters, 0 for a VTOL to hover, negative for counter-clockwise | +| yaw | `float32` | | | in radians NED -PI..+PI, NAN means don't change yaw | +| altitude | `float32` | | | altitude in meters (AMSL) | +| frame | `uint8` | | | mission frame | +| origin | `uint8` | | | mission item origin (onboard or mavlink) | +| loiter_exit_xtrack | `bool` | | | exit xtrack location: 0 for center of loiter wp, 1 for exit location | +| force_heading | `bool` | | | heading needs to be reached | +| altitude_is_relative | `bool` | | | true if altitude is relative from start point | +| autocontinue | `bool` | | | true if next waypoint should follow after this one | +| vtol_back_transition | `bool` | | | part of the vtol back transition sequence | ## Source Message diff --git a/docs/uk/msg_docs/NavigatorStatus.md b/docs/uk/msg_docs/NavigatorStatus.md index 75525ee798..461f88b2d8 100644 --- a/docs/uk/msg_docs/NavigatorStatus.md +++ b/docs/uk/msg_docs/NavigatorStatus.md @@ -10,11 +10,11 @@ Current status of a Navigator mode. Можливі значення nav_state в ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| nav_state | `uint8` | | | Source mode (values in VehicleStatus) | -| failure | `uint8` | | | Navigator failure enum | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| nav_state | `uint8` | | | Source mode (values in VehicleStatus) | +| failure | `uint8` | | | Navigator failure enum | ## Constants diff --git a/docs/uk/msg_docs/NeuralControl.md b/docs/uk/msg_docs/NeuralControl.md index 0c9ad59799..21e3667cde 100644 --- a/docs/uk/msg_docs/NeuralControl.md +++ b/docs/uk/msg_docs/NeuralControl.md @@ -14,13 +14,13 @@ Subscriber: logger ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | ------------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| observation | `float32[15]` | | | Observation vector (pos error (3), att (6d), lin vel (3), ang vel (3)) | -| network_output | `float32[4]` | | | Output from neural network | -| controller_time | `int32` | us | | Time spent from input to output | -| inference_time | `int32` | us | | Time spent for NN inference | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | ------------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| observation | `float32[15]` | | | Observation vector (pos error (3), att (6d), lin vel (3), ang vel (3)) | +| network_output | `float32[4]` | | | Output from neural network | +| controller_time | `int32` | us | | Time spent from input to output | +| inference_time | `int32` | us | | Time spent for NN inference | ## Source Message diff --git a/docs/uk/msg_docs/NormalizedUnsignedSetpoint.md b/docs/uk/msg_docs/NormalizedUnsignedSetpoint.md index ef6afb1e6a..5fb01b62bf 100644 --- a/docs/uk/msg_docs/NormalizedUnsignedSetpoint.md +++ b/docs/uk/msg_docs/NormalizedUnsignedSetpoint.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| normalized_setpoint | `float32` | 0, 1 | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| normalized_setpoint | `float32` | 0, 1 | | | ## Source Message diff --git a/docs/uk/msg_docs/ObstacleDistance.md b/docs/uk/msg_docs/ObstacleDistance.md index e11f4c58de..7db07d3555 100644 --- a/docs/uk/msg_docs/ObstacleDistance.md +++ b/docs/uk/msg_docs/ObstacleDistance.md @@ -10,16 +10,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| frame | `uint8` | | | Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to MAV_FRAME_GLOBAL, which is North aligned. For body-mounted sensors use MAV_FRAME_BODY_FRD, which is vehicle front aligned. | -| sensor_type | `uint8` | | | Type from MAV_DISTANCE_SENSOR enum. | -| distances | `uint16[72]` | | | Distance of obstacles around the UAV with index 0 corresponding to local North. A value of 0 means that the obstacle is right in front of the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. | -| increment | `float32` | | | Angular width in degrees of each array element. | -| min_distance | `uint16` | | | Minimum distance the sensor can measure in centimeters. | -| max_distance | `uint16` | | | Maximum distance the sensor can measure in centimeters. | -| angle_offset | `float32` | | | Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| frame | `uint8` | | | Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to MAV_FRAME_GLOBAL, which is North aligned. For body-mounted sensors use MAV_FRAME_BODY_FRD, which is vehicle front aligned. | +| sensor_type | `uint8` | | | Type from MAV_DISTANCE_SENSOR enum. | +| distances | `uint16[72]` | | | Distance of obstacles around the UAV with index 0 corresponding to local North. A value of 0 means that the obstacle is right in front of the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. | +| increment | `float32` | | | Angular width in degrees of each array element. | +| min_distance | `uint16` | | | Minimum distance the sensor can measure in centimeters. | +| max_distance | `uint16` | | | Maximum distance the sensor can measure in centimeters. | +| angle_offset | `float32` | | | Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. | ## Constants diff --git a/docs/uk/msg_docs/OffboardControlMode.md b/docs/uk/msg_docs/OffboardControlMode.md index 79a3118fef..af4736a109 100644 --- a/docs/uk/msg_docs/OffboardControlMode.md +++ b/docs/uk/msg_docs/OffboardControlMode.md @@ -10,16 +10,16 @@ Off-board control mode. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| положення | `bool` | | | | -| швидкість | `bool` | | | | -| acceleration | `bool` | | | | -| attitude | `bool` | | | | -| body_rate | `bool` | | | | -| thrust_and_torque | `bool` | | | | -| direct_actuator | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| position | `bool` | | | | +| velocity | `bool` | | | | +| acceleration | `bool` | | | | +| attitude | `bool` | | | | +| body_rate | `bool` | | | | +| thrust_and_torque | `bool` | | | | +| direct_actuator | `bool` | | | | ## Source Message diff --git a/docs/uk/msg_docs/OnboardComputerStatus.md b/docs/uk/msg_docs/OnboardComputerStatus.md index b271a50d45..73ee37571f 100644 --- a/docs/uk/msg_docs/OnboardComputerStatus.md +++ b/docs/uk/msg_docs/OnboardComputerStatus.md @@ -10,28 +10,28 @@ ONBOARD_COMPUTER_STATUS message data. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------ | ----------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | time since system start (microseconds) | -| uptime | `uint32` | ms | | time since system boot of the companion (milliseconds) | -| type | `uint8` | | | type of onboard computer 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. | -| cpu_cores | `uint8[8]` | | | CPU usage on the component in percent | -| cpu_combined | `uint8[10]` | | | Combined CPU usage as the last 10 slices of 100 MS | -| gpu_cores | `uint8[4]` | | | GPU usage on the component in percent | -| gpu_combined | `uint8[10]` | | | Combined GPU usage as the last 10 slices of 100 MS | -| temperature_board | `int8` | degC | | Temperature of the board | -| temperature_core | `int8[8]` | degC | | Temperature of the CPU core | -| fan_speed | `int16[4]` | rpm | | Fan speeds | -| ram_usage | `uint32` | MB | | Amount of used RAM on the component system | -| ram_total | `uint32` | MB | | Total amount of RAM on the component system | -| storage_type | `uint32[4]` | | | Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable) | -| storage_usage | `uint32[4]` | MB | | Amount of used storage space on the component system | -| storage_total | `uint32[4]` | MB | | Total amount of storage space on the component system | -| link_type | `uint32[6]` | Kb/s | | Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary | -| link_tx_rate | `uint32[6]` | Kb/s | | Network traffic from the component system | -| link_rx_rate | `uint32[6]` | Kb/s | | Network traffic to the component system | -| link_tx_max | `uint32[6]` | Kb/s | | Network capacity from the component system | -| link_rx_max | `uint32[6]` | Kb/s | | Network capacity to the component system | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | time since system start (microseconds) | +| uptime | `uint32` | ms | | time since system boot of the companion (milliseconds) | +| type | `uint8` | | | type of onboard computer 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. | +| cpu_cores | `uint8[8]` | | | CPU usage on the component in percent | +| cpu_combined | `uint8[10]` | | | Combined CPU usage as the last 10 slices of 100 MS | +| gpu_cores | `uint8[4]` | | | GPU usage on the component in percent | +| gpu_combined | `uint8[10]` | | | Combined GPU usage as the last 10 slices of 100 MS | +| temperature_board | `int8` | degC | | Temperature of the board | +| temperature_core | `int8[8]` | degC | | Temperature of the CPU core | +| fan_speed | `int16[4]` | rpm | | Fan speeds | +| ram_usage | `uint32` | MB | | Amount of used RAM on the component system | +| ram_total | `uint32` | MB | | Total amount of RAM on the component system | +| storage_type | `uint32[4]` | | | Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable) | +| storage_usage | `uint32[4]` | MB | | Amount of used storage space on the component system | +| storage_total | `uint32[4]` | MB | | Total amount of storage space on the component system | +| link_type | `uint32[6]` | Kb/s | | Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary | +| link_tx_rate | `uint32[6]` | Kb/s | | Network traffic from the component system | +| link_rx_rate | `uint32[6]` | Kb/s | | Network traffic to the component system | +| link_tx_max | `uint32[6]` | Kb/s | | Network capacity from the component system | +| link_rx_max | `uint32[6]` | Kb/s | | Network capacity to the component system | ## Source Message diff --git a/docs/uk/msg_docs/OpenDroneIdArmStatus.md b/docs/uk/msg_docs/OpenDroneIdArmStatus.md index 9bafd98898..abe5d48112 100644 --- a/docs/uk/msg_docs/OpenDroneIdArmStatus.md +++ b/docs/uk/msg_docs/OpenDroneIdArmStatus.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ---------- | ---------------------------------------------------------------- | ---------- | ---- | -| timestamp | `uint64` | | | | -| status | `uint8` | | | | -| error | `char[50]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ---- | +| timestamp | `uint64` | | | | +| status | `uint8` | | | | +| error | `char[50]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/OpenDroneIdOperatorId.md b/docs/uk/msg_docs/OpenDroneIdOperatorId.md index 8c7d140048..9e78f34aa7 100644 --- a/docs/uk/msg_docs/OpenDroneIdOperatorId.md +++ b/docs/uk/msg_docs/OpenDroneIdOperatorId.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---- | -| timestamp | `uint64` | | | | -| id_or_mac | `uint8[20]` | | | | -| operator_id_type | `uint8` | | | | -| operator_id | `char[20]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---- | +| timestamp | `uint64` | | | | +| id_or_mac | `uint8[20]` | | | | +| operator_id_type | `uint8` | | | | +| operator_id | `char[20]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/OpenDroneIdSelfId.md b/docs/uk/msg_docs/OpenDroneIdSelfId.md index 66169b2cf5..28ee5322d9 100644 --- a/docs/uk/msg_docs/OpenDroneIdSelfId.md +++ b/docs/uk/msg_docs/OpenDroneIdSelfId.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---- | -| timestamp | `uint64` | | | | -| id_or_mac | `uint8[20]` | | | | -| description_type | `uint8` | | | | -| description | `char[23]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---- | +| timestamp | `uint64` | | | | +| id_or_mac | `uint8[20]` | | | | +| description_type | `uint8` | | | | +| description | `char[23]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/OpenDroneIdSystem.md b/docs/uk/msg_docs/OpenDroneIdSystem.md index e750d9fcdb..8bf806533e 100644 --- a/docs/uk/msg_docs/OpenDroneIdSystem.md +++ b/docs/uk/msg_docs/OpenDroneIdSystem.md @@ -8,21 +8,21 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---- | -| timestamp | `uint64` | | | | -| id_or_mac | `uint8[20]` | | | | -| operator_location_type | `uint8` | | | | -| classification_type | `uint8` | | | | -| operator_latitude | `int32` | | | | -| operator_longitude | `int32` | | | | -| area_count | `uint16` | | | | -| area_radius | `uint16` | | | | -| area_ceiling | `float32` | | | | -| area_floor | `float32` | | | | -| category_eu | `uint8` | | | | -| class_eu | `uint8` | | | | -| operator_altitude_geo | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ---- | +| timestamp | `uint64` | | | | +| id_or_mac | `uint8[20]` | | | | +| operator_location_type | `uint8` | | | | +| classification_type | `uint8` | | | | +| operator_latitude | `int32` | | | | +| operator_longitude | `int32` | | | | +| area_count | `uint16` | | | | +| area_radius | `uint16` | | | | +| area_ceiling | `float32` | | | | +| area_floor | `float32` | | | | +| category_eu | `uint8` | | | | +| class_eu | `uint8` | | | | +| operator_altitude_geo | `float32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/OrbTest.md b/docs/uk/msg_docs/OrbTest.md index 88e62c96f1..b407199184 100644 --- a/docs/uk/msg_docs/OrbTest.md +++ b/docs/uk/msg_docs/OrbTest.md @@ -8,10 +8,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| val | `int32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| val | `int32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/OrbTestLarge.md b/docs/uk/msg_docs/OrbTestLarge.md index ad335b4624..16d18b6311 100644 --- a/docs/uk/msg_docs/OrbTestLarge.md +++ b/docs/uk/msg_docs/OrbTestLarge.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| val | `int32` | | | | -| junk | `uint8[512]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| val | `int32` | | | | +| junk | `uint8[512]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/OrbTestMedium.md b/docs/uk/msg_docs/OrbTestMedium.md index 30fe74931f..42a9906d24 100644 --- a/docs/uk/msg_docs/OrbTestMedium.md +++ b/docs/uk/msg_docs/OrbTestMedium.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| val | `int32` | | | | -| junk | `uint8[64]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| val | `int32` | | | | +| junk | `uint8[64]` | | | | ## Constants diff --git a/docs/uk/msg_docs/OrbitStatus.md b/docs/uk/msg_docs/OrbitStatus.md index 30bdf7148c..b08abef780 100644 --- a/docs/uk/msg_docs/OrbitStatus.md +++ b/docs/uk/msg_docs/OrbitStatus.md @@ -16,20 +16,22 @@ Subscribed by the MAVLink module and streamed to the GCS as ORBIT_EXECUTION_STAT ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| radius | `float32` | m | | Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. | -| frame | `uint8` | | [FRAME](#FRAME) | The coordinate system of the fields: x, y, z | -| x | `float64` | | | X coordinate of center point. Coordinate system depends on frame field: `local = x position in meters * 1e4`, `global = latitude in degrees * 1e7`. | -| y | `float64` | | | Y coordinate of center point. Coordinate system depends on frame field: `local = y position in meters * 1e4`, `global = longitude in degrees * 1e7`. | -| z | `float32` | | | Altitude of center point. Coordinate system depends on frame field. | -| yaw_behaviour | `uint8` | | [ORBIT_YAW_BEHAVIOUR](#ORBIT_YAW_BEHAVIOUR) | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| radius | `float32` | m | | Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. | +| frame | `uint8` | | [FRAME](#FRAME) | The coordinate system of the fields: x, y, z | +| x | `float64` | | | X coordinate of center point. Coordinate system depends on frame field: `local = x position in meters * 1e4`, `global = latitude in degrees * 1e7`. | +| y | `float64` | | | Y coordinate of center point. Coordinate system depends on frame field: `local = y position in meters * 1e4`, `global = longitude in degrees * 1e7`. | +| z | `float32` | | | Altitude of center point. Coordinate system depends on frame field. | +| yaw_behaviour | `uint8` | | [ORBIT_YAW_BEHAVIOUR](#ORBIT_YAW_BEHAVIOUR) | | ## Enums ### FRAME {#FRAME} +Used in field(s): [frame](#fld_frame) + | Назва | Тип | Значення | Опис | | -------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ----------------------------------------------------------------------------------------------------------------------- | | FRAME_GLOBAL | `uint8` | 0 | WGS84 global frame, MSL altitude. x/y = latitude/longitude (degrees × 1e7) | @@ -39,6 +41,8 @@ Subscribed by the MAVLink module and streamed to the GCS as ORBIT_EXECUTION_STAT ### ORBIT_YAW_BEHAVIOUR {#ORBIT_YAW_BEHAVIOUR} +Used in field(s): [yaw_behaviour](#fld_yaw_behaviour) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER | `uint8` | 0 | Vehicle front points to the center (default). | diff --git a/docs/uk/msg_docs/ParameterResetRequest.md b/docs/uk/msg_docs/ParameterResetRequest.md index d1aea3f4b7..d00109782f 100644 --- a/docs/uk/msg_docs/ParameterResetRequest.md +++ b/docs/uk/msg_docs/ParameterResetRequest.md @@ -10,11 +10,11 @@ ParameterResetRequest : Used by the primary to reset one or all parameter value( ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | -| timestamp | `uint64` | | | | -| parameter_index | `uint16` | | | | -| reset_all | `bool` | | | If this is true then ignore parameter_index | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | +| timestamp | `uint64` | | | | +| parameter_index | `uint16` | | | | +| reset_all | `bool` | | | If this is true then ignore parameter_index | ## Constants diff --git a/docs/uk/msg_docs/ParameterSetUsedRequest.md b/docs/uk/msg_docs/ParameterSetUsedRequest.md index fd26f6e4e9..1be35403b1 100644 --- a/docs/uk/msg_docs/ParameterSetUsedRequest.md +++ b/docs/uk/msg_docs/ParameterSetUsedRequest.md @@ -10,10 +10,10 @@ ParameterSetUsedRequest : Used by a remote to update the used flag for a paramet ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | ---- | -| timestamp | `uint64` | | | | -| parameter_index | `uint16` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---- | +| timestamp | `uint64` | | | | +| parameter_index | `uint16` | | | | ## Constants diff --git a/docs/uk/msg_docs/ParameterSetValueRequest.md b/docs/uk/msg_docs/ParameterSetValueRequest.md index 69540d404c..1a63af05cb 100644 --- a/docs/uk/msg_docs/ParameterSetValueRequest.md +++ b/docs/uk/msg_docs/ParameterSetValueRequest.md @@ -10,12 +10,12 @@ ParameterSetValueRequest : Used by a remote or primary to update the value for a ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------- | -| timestamp | `uint64` | | | | -| parameter_index | `uint16` | | | | -| int_value | `int32` | | | Optional value for an integer parameter | -| float_value | `float32` | | | Optional value for a float parameter | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------- | +| timestamp | `uint64` | | | | +| parameter_index | `uint16` | | | | +| int_value | `int32` | | | Optional value for an integer parameter | +| float_value | `float32` | | | Optional value for a float parameter | ## Constants diff --git a/docs/uk/msg_docs/ParameterSetValueResponse.md b/docs/uk/msg_docs/ParameterSetValueResponse.md index 77010b5479..87b2cc76db 100644 --- a/docs/uk/msg_docs/ParameterSetValueResponse.md +++ b/docs/uk/msg_docs/ParameterSetValueResponse.md @@ -10,11 +10,11 @@ ParameterSetValueResponse : Response to a set value request by either primary or ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---- | -| timestamp | `uint64` | | | | -| request_timestamp | `uint64` | | | | -| parameter_index | `uint16` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | ---- | +| timestamp | `uint64` | | | | +| request_timestamp | `uint64` | | | | +| parameter_index | `uint16` | | | | ## Constants diff --git a/docs/uk/msg_docs/ParameterUpdate.md b/docs/uk/msg_docs/ParameterUpdate.md index 5f18f4615c..8da8e4987b 100644 --- a/docs/uk/msg_docs/ParameterUpdate.md +++ b/docs/uk/msg_docs/ParameterUpdate.md @@ -10,17 +10,17 @@ This message is used to notify the system about one or more parameter changes. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| instance | `uint32` | | | Instance count - constantly incrementing | -| get_count | `uint32` | | | | -| set_count | `uint32` | | | | -| find_count | `uint32` | | | | -| export_count | `uint32` | | | | -| active | `uint16` | | | | -| changed | `uint16` | | | | -| custom_default | `uint16` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| instance | `uint32` | | | Instance count - constantly incrementing | +| get_count | `uint32` | | | | +| set_count | `uint32` | | | | +| find_count | `uint32` | | | | +| export_count | `uint32` | | | | +| active | `uint16` | | | | +| changed | `uint16` | | | | +| custom_default | `uint16` | | | | ## Source Message diff --git a/docs/uk/msg_docs/Ping.md b/docs/uk/msg_docs/Ping.md index ce97584f23..bbd0251aee 100644 --- a/docs/uk/msg_docs/Ping.md +++ b/docs/uk/msg_docs/Ping.md @@ -8,15 +8,15 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| ping_time | `uint64` | | | Timestamp of the ping packet | -| ping_sequence | `uint32` | | | Sequence number of the ping packet | -| dropped_packets | `uint32` | | | Number of dropped ping packets | -| rtt_ms | `float32` | | | Round trip time (in ms) | -| system_id | `uint8` | | | System ID of the remote system | -| component_id | `uint8` | | | Component ID of the remote system | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| ping_time | `uint64` | | | Timestamp of the ping packet | +| ping_sequence | `uint32` | | | Sequence number of the ping packet | +| dropped_packets | `uint32` | | | Number of dropped ping packets | +| rtt_ms | `float32` | | | Round trip time (in ms) | +| system_id | `uint8` | | | System ID of the remote system | +| component_id | `uint8` | | | Component ID of the remote system | ## Source Message diff --git a/docs/uk/msg_docs/PositionControllerLandingStatus.md b/docs/uk/msg_docs/PositionControllerLandingStatus.md index d1e70e3918..e737753c42 100644 --- a/docs/uk/msg_docs/PositionControllerLandingStatus.md +++ b/docs/uk/msg_docs/PositionControllerLandingStatus.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------- | -| timestamp | `uint64` | us | | time since system start | -| lateral_touchdown_offset | `float32` | m | | lateral touchdown position offset manually commanded during landing | -| flaring | `bool` | | | true if the aircraft is flaring | -| abort_status | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------- | +| timestamp | `uint64` | us | | time since system start | +| lateral_touchdown_offset | `float32` | m | | lateral touchdown position offset manually commanded during landing | +| flaring | `bool` | | | true if the aircraft is flaring | +| abort_status | `uint8` | | | | ## Constants diff --git a/docs/uk/msg_docs/PositionControllerStatus.md b/docs/uk/msg_docs/PositionControllerStatus.md index cdde8f53c6..d236ed80f3 100644 --- a/docs/uk/msg_docs/PositionControllerStatus.md +++ b/docs/uk/msg_docs/PositionControllerStatus.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| nav_roll | `float32` | | | Roll setpoint [rad] | -| nav_pitch | `float32` | | | Pitch setpoint [rad] | -| nav_bearing | `float32` | | | Bearing angle[rad] | -| target_bearing | `float32` | | | Bearing angle from aircraft to current target [rad] | -| xtrack_error | `float32` | | | Signed track error [m] | -| wp_dist | `float32` | | | Distance to active (next) waypoint [m] | -| acceptance_radius | `float32` | | | Current horizontal acceptance radius [m] | -| type | `uint8` | | | Current (applied) position setpoint type (see PositionSetpoint.msg) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| nav_roll | `float32` | | | Roll setpoint [rad] | +| nav_pitch | `float32` | | | Pitch setpoint [rad] | +| nav_bearing | `float32` | | | Bearing angle[rad] | +| target_bearing | `float32` | | | Bearing angle from aircraft to current target [rad] | +| xtrack_error | `float32` | | | Signed track error [m] | +| wp_dist | `float32` | | | Distance to active (next) waypoint [m] | +| acceptance_radius | `float32` | | | Current horizontal acceptance radius [m] | +| type | `uint8` | | | Current (applied) position setpoint type (see PositionSetpoint.msg) | ## Source Message diff --git a/docs/uk/msg_docs/PositionSetpoint.md b/docs/uk/msg_docs/PositionSetpoint.md index af318bf176..c064dec387 100644 --- a/docs/uk/msg_docs/PositionSetpoint.md +++ b/docs/uk/msg_docs/PositionSetpoint.md @@ -10,28 +10,29 @@ this file is only used in the position_setpoint triple as a dependency. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| valid | `bool` | | | true if setpoint is valid | -| type | `uint8` | | | setpoint type to adjust behavior of position controller | -| vx | `float32` | | | local velocity setpoint in m/s in NED | -| vy | `float32` | | | local velocity setpoint in m/s in NED | -| vz | `float32` | | | local velocity setpoint in m/s in NED | -| lat | `float64` | | | latitude, in deg | -| lon | `float64` | | | longitude, in deg | -| alt | `float32` | | | altitude AMSL, in m | -| yaw | `float32` | | | yaw (only in hover), in rad [-PI..PI), NaN = leave to flight task | -| loiter_radius | `float32` | m | [0 : INF] | loiter major axis radius | -| loiter_minor_radius | `float32` | m | [0 : INF] | loiter minor axis radius (used for non-circular loiter shapes) | -| loiter_direction_counter_clockwise | `bool` | | | loiter direction is clockwise by default and can be changed using this field | -| loiter_orientation | `float32` | rad | [-pi : pi] | orientation of the major axis with respect to true north | -| loiter_pattern | `uint8` | | | loitern pattern to follow | -| acceptance_radius | `float32` | | | horizontal acceptance_radius (meters) | -| alt_acceptance_radius | `float32` | | | vertical acceptance radius, only used for fixed wing guidance, NAN = let guidance choose (meters) | -| cruising_speed | `float32` | | | the generally desired cruising speed (not a hard constraint) | -| gliding_enabled | `bool` | | | commands the vehicle to glide if the capability is available (fixed wing only) | -| cruising_throttle | `float32` | | | the generally desired cruising throttle (not a hard constraint), only has an effect for rover | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| valid | `bool` | | | true if setpoint is valid | +| type | `uint8` | | | setpoint type to adjust behavior of position controller | +| vx | `float32` | | | local velocity setpoint in m/s in NED | +| vy | `float32` | | | local velocity setpoint in m/s in NED | +| vz | `float32` | | | local velocity setpoint in m/s in NED | +| lat | `float64` | | | latitude, in deg | +| lon | `float64` | | | longitude, in deg | +| alt | `float32` | | | altitude AMSL, in m | +| yaw | `float32` | | | yaw (only in hover), in rad [-PI..PI), NaN = leave to flight task | +| loiter_radius | `float32` | m | [0 : INF] | loiter major axis radius | +| loiter_minor_radius | `float32` | m | [0 : INF] | loiter minor axis radius (used for non-circular loiter shapes) | +| loiter_direction_counter_clockwise | `bool` | | | loiter direction is clockwise by default and can be changed using this field | +| loiter_orientation | `float32` | rad | [-pi : pi] | orientation of the major axis with respect to true north | +| loiter_pattern | `uint8` | | | loitern pattern to follow | +| acceptance_radius | `float32` | | | horizontal acceptance_radius (meters) | +| alt_acceptance_radius | `float32` | | | vertical acceptance radius, only used for fixed wing guidance, NAN = let guidance choose (meters) | +| course | `float32` | rad | | desired course (bearing) over ground, NaN = unused | +| cruising_speed | `float32` | | | the generally desired cruising speed (not a hard constraint) | +| gliding_enabled | `bool` | | | commands the vehicle to glide if the capability is available (fixed wing only) | +| cruising_throttle | `float32` | | | the generally desired cruising throttle (not a hard constraint), only has an effect for rover | ## Constants @@ -89,6 +90,7 @@ uint8 loiter_pattern # loitern pattern to follow float32 acceptance_radius # horizontal acceptance_radius (meters) float32 alt_acceptance_radius # vertical acceptance radius, only used for fixed wing guidance, NAN = let guidance choose (meters) +float32 course # [rad] desired course (bearing) over ground, NaN = unused float32 cruising_speed # the generally desired cruising speed (not a hard constraint) bool gliding_enabled # commands the vehicle to glide if the capability is available (fixed wing only) float32 cruising_throttle # the generally desired cruising throttle (not a hard constraint), only has an effect for rover diff --git a/docs/uk/msg_docs/PositionSetpointTriplet.md b/docs/uk/msg_docs/PositionSetpointTriplet.md index c8482d7fe6..90740382f7 100644 --- a/docs/uk/msg_docs/PositionSetpointTriplet.md +++ b/docs/uk/msg_docs/PositionSetpointTriplet.md @@ -10,12 +10,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ------------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| previous | `PositionSetpoint` | | | | -| current | `PositionSetpoint` | | | | -| next | `PositionSetpoint` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ------------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| previous | `PositionSetpoint` | | | | +| current | `PositionSetpoint` | | | | +| next | `PositionSetpoint` | | | | ## Source Message diff --git a/docs/uk/msg_docs/PowerButtonState.md b/docs/uk/msg_docs/PowerButtonState.md index 49d8fc30c8..40e488e5a7 100644 --- a/docs/uk/msg_docs/PowerButtonState.md +++ b/docs/uk/msg_docs/PowerButtonState.md @@ -10,10 +10,10 @@ power button state notification message. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| event | `uint8` | | | one of PWR_BUTTON_STATE_\* | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| event | `uint8` | | | one of PWR_BUTTON_STATE_\* | ## Constants diff --git a/docs/uk/msg_docs/PowerMonitor.md b/docs/uk/msg_docs/PowerMonitor.md index 5d132aacf5..ceb02688b0 100644 --- a/docs/uk/msg_docs/PowerMonitor.md +++ b/docs/uk/msg_docs/PowerMonitor.md @@ -10,20 +10,20 @@ power monitor message. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | Time since system start (microseconds) | -| voltage_v | `float32` | | | Voltage in volts, 0 if unknown | -| current_a | `float32` | | | Current in amperes, -1 if unknown | -| power_w | `float32` | | | power in watts, -1 if unknown | -| rconf | `int16` | | | | -| rsv | `int16` | | | | -| rbv | `int16` | | | | -| rp | `int16` | | | | -| rc | `int16` | | | | -| rcal | `int16` | | | | -| me | `int16` | | | | -| al | `int16` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | Time since system start (microseconds) | +| voltage_v | `float32` | | | Voltage in volts, 0 if unknown | +| current_a | `float32` | | | Current in amperes, -1 if unknown | +| power_w | `float32` | | | power in watts, -1 if unknown | +| rconf | `int16` | | | | +| rsv | `int16` | | | | +| rbv | `int16` | | | | +| rp | `int16` | | | | +| rc | `int16` | | | | +| rcal | `int16` | | | | +| me | `int16` | | | | +| al | `int16` | | | | ## Source Message diff --git a/docs/uk/msg_docs/PpsCapture.md b/docs/uk/msg_docs/PpsCapture.md index 1be4052553..b4b2b62426 100644 --- a/docs/uk/msg_docs/PpsCapture.md +++ b/docs/uk/msg_docs/PpsCapture.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | -------- | ---------------------------------------------------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) at PPS capture event | -| rtc_timestamp | `uint64` | | | Corrected GPS UTC timestamp at PPS capture event | -| `uint8` | | | Increments when PPS dt < 50ms | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) at PPS capture event | +| rtc_timestamp | `uint64` | | | Corrected GPS UTC timestamp at PPS capture event | +| | `uint8` | | | Increments when PPS dt < 50ms | ## Source Message diff --git a/docs/uk/msg_docs/PrecLandStatus.md b/docs/uk/msg_docs/PrecLandStatus.md new file mode 100644 index 0000000000..06d358d841 --- /dev/null +++ b/docs/uk/msg_docs/PrecLandStatus.md @@ -0,0 +1,72 @@ +--- +pageClass: is-wide-page +--- + +# PrecLandStatus (UORB message) + +Precision-landing runtime status: a single state captures both whether precision landing is active and which phase it is in. + +Published by: navigator (precland.cpp). +Subscribed by: vision_target_estimator, flight_mode_manager (FlightTaskAuto). + +STOPPED is published when the precision-landing task is not active (just inactivated, or never started). +The phase values (START..FALLBACK) are only published while the task is running and not yet finished. +DONE is published once on successful completion, then STOPPED on the subsequent inactivation. + +**TOPICS:** prec_land_status + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | -------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| state | `uint8` | | [PREC_LAND_STATE](#PREC_LAND_STATE) | Current precision-landing state | + +## Enums + +### PREC_LAND_STATE {#PREC_LAND_STATE} + +Used in field(s): [state](#fld_state) + +| Назва | Тип | Значення | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ---------------------------------------------------------------------------------- | +| PREC_LAND_STATE_STOPPED | `uint8` | 0 | Task not active (inactivated or never started) | +| PREC_LAND_STATE_START | `uint8` | 1 | Task just activated, initial setup | +| PREC_LAND_STATE_HORIZONTAL | `uint8` | 2 | Positioning over landing target while maintaining altitude | +| PREC_LAND_STATE_DESCEND | `uint8` | 3 | Descending while staying over the target | +| PREC_LAND_STATE_FINAL | `uint8` | 4 | Final landing approach (continues even without target in sight) | +| PREC_LAND_STATE_SEARCH | `uint8` | 5 | Searching for the landing target | +| PREC_LAND_STATE_FALLBACK | `uint8` | 6 | Fallback landing method (no precision) | +| PREC_LAND_STATE_DONE | `uint8` | 7 | Precision landing finished | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/PrecLandStatus.msg) + +:::details +Click here to see original file + +```c +# Precision-landing runtime status: a single state captures both whether precision landing is active and which phase it is in. +# +# Published by: navigator (precland.cpp). +# Subscribed by: vision_target_estimator, flight_mode_manager (FlightTaskAuto). +# +# STOPPED is published when the precision-landing task is not active (just inactivated, or never started). +# The phase values (START..FALLBACK) are only published while the task is running and not yet finished. +# DONE is published once on successful completion, then STOPPED on the subsequent inactivation. + +uint64 timestamp # [us] Time since system start + +uint8 state # [@enum PREC_LAND_STATE] Current precision-landing state +uint8 PREC_LAND_STATE_STOPPED = 0 # Task not active (inactivated or never started) +uint8 PREC_LAND_STATE_START = 1 # Task just activated, initial setup +uint8 PREC_LAND_STATE_HORIZONTAL = 2 # Positioning over landing target while maintaining altitude +uint8 PREC_LAND_STATE_DESCEND = 3 # Descending while staying over the target +uint8 PREC_LAND_STATE_FINAL = 4 # Final landing approach (continues even without target in sight) +uint8 PREC_LAND_STATE_SEARCH = 5 # Searching for the landing target +uint8 PREC_LAND_STATE_FALLBACK = 6 # Fallback landing method (no precision) +uint8 PREC_LAND_STATE_DONE = 7 # Precision landing finished +``` + +::: diff --git a/docs/uk/msg_docs/PurePursuitStatus.md b/docs/uk/msg_docs/PurePursuitStatus.md index c803722e9b..97e9ae0a4a 100644 --- a/docs/uk/msg_docs/PurePursuitStatus.md +++ b/docs/uk/msg_docs/PurePursuitStatus.md @@ -10,14 +10,14 @@ Pure pursuit status. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| lookahead_distance | `float32` | m | [0 : inf] | Lookahead distance of pure the pursuit controller | -| target_bearing | `float32` | rad [NED] | [-pi : pi] | Target bearing calculated by the pure pursuit controller | -| crosstrack_error | `float32` | m | [-inf (Left of the path) : inf (Right of the path)] | Shortest distance from the vehicle to the path | -| distance_to_waypoint | `float32` | m | [-inf : inf] | Distance from the vehicle to the current waypoint | -| bearing_to_waypoint | `float32` | rad [NED] | [-pi : pi] | Bearing towards current waypoint | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| lookahead_distance | `float32` | m | [0 : inf] | Lookahead distance of pure the pursuit controller | +| target_bearing | `float32` | rad [NED] | [-pi : pi] | Target bearing calculated by the pure pursuit controller | +| crosstrack_error | `float32` | m | [-inf (Left of the path) : inf (Right of the path)] | Shortest distance from the vehicle to the path | +| distance_to_waypoint | `float32` | m | [-inf : inf] | Distance from the vehicle to the current waypoint | +| bearing_to_waypoint | `float32` | rad [NED] | [-pi : pi] | Bearing towards current waypoint | ## Source Message diff --git a/docs/uk/msg_docs/PwmInput.md b/docs/uk/msg_docs/PwmInput.md index 01c84d115f..3064bdae80 100644 --- a/docs/uk/msg_docs/PwmInput.md +++ b/docs/uk/msg_docs/PwmInput.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | -| timestamp | `uint64` | | | Time since system start (microseconds) | -| error_count | `uint64` | | | Timer overcapture error flag (AUX5 or MAIN5) | -| pulse_width | `uint32` | | | Pulse width, timer counts (microseconds) | -| period | `uint32` | | | Period, timer counts (microseconds) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | +| timestamp | `uint64` | | | Time since system start (microseconds) | +| error_count | `uint64` | | | Timer overcapture error flag (AUX5 or MAIN5) | +| pulse_width | `uint32` | | | Pulse width, timer counts (microseconds) | +| period | `uint32` | | | Period, timer counts (microseconds) | ## Source Message diff --git a/docs/uk/msg_docs/Px4ioStatus.md b/docs/uk/msg_docs/Px4ioStatus.md index d86cb89b4e..022f0c1421 100644 --- a/docs/uk/msg_docs/Px4ioStatus.md +++ b/docs/uk/msg_docs/Px4ioStatus.md @@ -8,40 +8,40 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| free_memory_bytes | `uint16` | | | | -| voltage_v | `float32` | | | Servo rail voltage in volts | -| rssi_v | `float32` | | | RSSI pin voltage in volts | -| status_arm_sync | `bool` | | | | -| status_failsafe | `bool` | | | | -| status_fmu_initialized | `bool` | | | | -| status_fmu_ok | `bool` | | | | -| status_init_ok | `bool` | | | | -| status_outputs_armed | `bool` | | | | -| status_raw_pwm | `bool` | | | | -| status_rc_ok | `bool` | | | | -| status_rc_dsm | `bool` | | | | -| status_rc_ppm | `bool` | | | | -| status_rc_sbus | `bool` | | | | -| status_rc_st24 | `bool` | | | | -| status_rc_sumd | `bool` | | | | -| status_safety_button_event | `bool` | | | px4io safety button was pressed for longer than 1 second | -| alarm_pwm_error | `bool` | | | | -| alarm_rc_lost | `bool` | | | | -| arming_failsafe_custom | `bool` | | | | -| arming_fmu_armed | `bool` | | | | -| arming_fmu_prearmed | `bool` | | | | -| arming_termination | `bool` | | | | -| arming_io_arm_ok | `bool` | | | | -| arming_lockdown | `bool` | | | | -| arming_termination_failsafe | `bool` | | | | -| pwm | `uint16[8]` | | | | -| pwm_disarmed | `uint16[8]` | | | | -| pwm_failsafe | `uint16[8]` | | | | -| pwm_rate_hz | `uint16[8]` | | | | -| raw_inputs | `uint16[18]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| free_memory_bytes | `uint16` | | | | +| voltage_v | `float32` | | | Servo rail voltage in volts | +| rssi_v | `float32` | | | RSSI pin voltage in volts | +| status_arm_sync | `bool` | | | | +| status_failsafe | `bool` | | | | +| status_fmu_initialized | `bool` | | | | +| status_fmu_ok | `bool` | | | | +| status_init_ok | `bool` | | | | +| status_outputs_armed | `bool` | | | | +| status_raw_pwm | `bool` | | | | +| status_rc_ok | `bool` | | | | +| status_rc_dsm | `bool` | | | | +| status_rc_ppm | `bool` | | | | +| status_rc_sbus | `bool` | | | | +| status_rc_st24 | `bool` | | | | +| status_rc_sumd | `bool` | | | | +| status_safety_button_event | `bool` | | | px4io safety button was pressed for longer than 1 second | +| alarm_pwm_error | `bool` | | | | +| alarm_rc_lost | `bool` | | | | +| arming_failsafe_custom | `bool` | | | | +| arming_fmu_armed | `bool` | | | | +| arming_fmu_prearmed | `bool` | | | | +| arming_termination | `bool` | | | | +| arming_io_arm_ok | `bool` | | | | +| arming_lockdown | `bool` | | | | +| arming_termination_failsafe | `bool` | | | | +| pwm | `uint16[8]` | | | | +| pwm_disarmed | `uint16[8]` | | | | +| pwm_failsafe | `uint16[8]` | | | | +| pwm_rate_hz | `uint16[8]` | | | | +| raw_inputs | `uint16[18]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/QshellReq.md b/docs/uk/msg_docs/QshellReq.md index 30c1adcc55..5769fdffd7 100644 --- a/docs/uk/msg_docs/QshellReq.md +++ b/docs/uk/msg_docs/QshellReq.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| cmd | `char[100]` | | | | -| strlen | `uint32` | | | | -| request_sequence | `uint32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| cmd | `char[100]` | | | | +| strlen | `uint32` | | | | +| request_sequence | `uint32` | | | | ## Constants diff --git a/docs/uk/msg_docs/QshellRetval.md b/docs/uk/msg_docs/QshellRetval.md index 06105dd16b..58e7e52046 100644 --- a/docs/uk/msg_docs/QshellRetval.md +++ b/docs/uk/msg_docs/QshellRetval.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| return_value | `int32` | | | | -| return_sequence | `uint32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| return_value | `int32` | | | | +| return_sequence | `uint32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/RadioStatus.md b/docs/uk/msg_docs/RadioStatus.md index acb3e990af..45fb0b1619 100644 --- a/docs/uk/msg_docs/RadioStatus.md +++ b/docs/uk/msg_docs/RadioStatus.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| rssi | `uint8` | | | local signal strength | -| remote_rssi | `uint8` | | | remote signal strength | -| txbuf | `uint8` | | | how full the tx buffer is as a percentage | -| noise | `uint8` | | | background noise level | -| remote_noise | `uint8` | | | remote background noise level | -| rxerrors | `uint16` | | | receive errors | -| fix | `uint16` | | | count of error corrected packets | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| rssi | `uint8` | | | local signal strength | +| remote_rssi | `uint8` | | | remote signal strength | +| txbuf | `uint8` | | | how full the tx buffer is as a percentage | +| noise | `uint8` | | | background noise level | +| remote_noise | `uint8` | | | remote background noise level | +| rxerrors | `uint16` | | | receive errors | +| fix | `uint16` | | | count of error corrected packets | ## Source Message diff --git a/docs/uk/msg_docs/RangingBeacon.md b/docs/uk/msg_docs/RangingBeacon.md index 6f563470d6..a6642a0ec2 100644 --- a/docs/uk/msg_docs/RangingBeacon.md +++ b/docs/uk/msg_docs/RangingBeacon.md @@ -10,27 +10,29 @@ Ranging beacon measurement data (e.g. LoRa, UWB). ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------ | ----------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | time since system start | -| timestamp_sample | `uint64` | us | | the timestamp of the raw data | -| beacon_id | `uint8` | | | | -| range | `float32` | m | | Range measurement | -| lat | `float64` | deg | | Latitude | -| lon | `float64` | deg | | Longitude | -| alt | `float32` | m | | Beacon altitude (frame defined in alt_type) | -| alt_type | `uint8` | | [ALT_TYPE](#ALT_TYPE) | Altitude frame for alt field | -| hacc | `float32` | m | | Groundbeacon horizontal accuracy | -| vacc | `float32` | m | | Groundbeacon vertical accuracy | -| sequence_nr | `uint8` | | | | -| status | `uint8` | | | | -| carrier_freq | `uint16` | MHz | | Carrier frequency | -| range_accuracy | `float32` | m | | Range accuracy estimate | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------ | ----------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | time since system start | +| timestamp_sample | `uint64` | us | | the timestamp of the raw data | +| beacon_id | `uint8` | | | | +| range | `float32` | m | | Range measurement | +| lat | `float64` | deg | | Latitude | +| lon | `float64` | deg | | Longitude | +| alt | `float32` | m | | Beacon altitude (frame defined in alt_type) | +| alt_type | `uint8` | | [ALT_TYPE](#ALT_TYPE) | Altitude frame for alt field | +| hacc | `float32` | m | | Groundbeacon horizontal accuracy | +| vacc | `float32` | m | | Groundbeacon vertical accuracy | +| sequence_nr | `uint8` | | | | +| status | `uint8` | | | | +| carrier_freq | `uint16` | MHz | | Carrier frequency | +| range_accuracy | `float32` | m | | Range accuracy estimate | ## Enums ### ALT_TYPE {#ALT_TYPE} +Used in field(s): [alt_type](#fld_alt_type) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------- | ------- | -------- | ------------------------------------------------------- | | ALT_TYPE_WGS84 | `uint8` | 0 | Altitude above WGS84 ellipsoid | diff --git a/docs/uk/msg_docs/RaptorInput.md b/docs/uk/msg_docs/RaptorInput.md index 9156c2716b..6d658df528 100644 --- a/docs/uk/msg_docs/RaptorInput.md +++ b/docs/uk/msg_docs/RaptorInput.md @@ -10,16 +10,16 @@ Raptor Input. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | -| active | `bool` | | | Signals if the policy is active (aka publishing actuator_motors) | -| положення | `float32[3]` | m [FLU] | | Position of the vehicle_local_position frame | -| orientation | `float32[4]` | | | Orientation in the vehicle_attitude frame but using the FLU convention as a unit quaternion (w, x, y, z) | -| linear_velocity | `float32[3]` | m/s [FLU] | | Linear velocity in the vehicle_local_position frame | -| angular_velocity | `float32[3]` | rad/s [FLU] | | Angular velocity in the body frame | -| previous_action | `float32[4]` | | [-1 : 1] | Previous action. Motor commands normalized to [-1, 1] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | +| active | `bool` | | | Signals if the policy is active (aka publishing actuator_motors) | +| position | `float32[3]` | m [FLU] | | Position of the vehicle_local_position frame | +| orientation | `float32[4]` | | | Orientation in the vehicle_attitude frame but using the FLU convention as a unit quaternion (w, x, y, z) | +| linear_velocity | `float32[3]` | m/s [FLU] | | Linear velocity in the vehicle_local_position frame | +| angular_velocity | `float32[3]` | rad/s [FLU] | | Angular velocity in the body frame | +| previous_action | `float32[4]` | | [-1 : 1] | Previous action. Motor commands normalized to [-1, 1] | ## Constants diff --git a/docs/uk/msg_docs/RaptorStatus.md b/docs/uk/msg_docs/RaptorStatus.md index 3cff868bc9..fd9b76be40 100644 --- a/docs/uk/msg_docs/RaptorStatus.md +++ b/docs/uk/msg_docs/RaptorStatus.md @@ -10,32 +10,32 @@ Raptor Status. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | -| subscription_update_angular_velocity | `bool` | bool | | Flag signalling if the vehicle_angular_velocity was updated | -| subscription_update_local_position | `bool` | bool | | Flag signalling if the vehicle_local_position was updated | -| subscription_update_attitude | `bool` | bool | | Flag signalling if the vehicle_attitude was updated | -| subscription_update_trajectory_setpoint | `bool` | bool | | Flag signalling if the trajectory_setpoint was updated | -| subscription_update_vehicle_status | `bool` | bool | | Flag signalling if the vehicle_status was updated | -| exit_reason | `uint8` | enum | | Exit reason identifier. Representing conditions that lead to the Raptor policy not being executed | -| timestamp_last_vehicle_angular_velocity | `uint32` | us | | Timestamp of the last received vehicle_angular_velocity message | -| timestamp_last_vehicle_local_position | `uint32` | us | | Timestamp of the last received vehicle_local_position message | -| timestamp_last_vehicle_attitude | `uint32` | us | | Timestamp of the last received vehicle_attitude message | -| timestamp_last_trajectory_setpoint | `uint32` | us | | Timestamp of the last received trajectory_setpoint message | -| vehicle_angular_velocity_stale | `bool` | bool | | True if vehicle_angular_velocity data is considered stale (exceeded timeout) | -| vehicle_local_position_stale | `bool` | bool | | True if vehicle_local_position data is considered stale (exceeded timeout) | -| vehicle_attitude_stale | `bool` | bool | | True if vehicle_attitude data is considered stale (exceeded timeout) | -| trajectory_setpoint_stale | `bool` | bool | | True if trajectory_setpoint data is considered stale (exceeded timeout) | -| active | `bool` | bool | | True if the Raptor policy is currently active (publishing actuator_motors) | -| substep | `uint8` | | | The policy is trained at a fixed frequency (e.g. 100 Hz) but we might want to use it for control at higher frequencies (e.g. 400 Hz), which leads to a number of intermediate steps before the actual policy state is advanced (in this case 4 = 400 Hz / 100 Hz). This field provides the current substep (e.g. 0-3). | -| control_interval | `float32` | s | | Time interval between control updates | -| trajectory_setpoint_dt_mean | `float32` | us | | The average trajectory setpoint arrival time interval (since Raptor mode activation within NUM_TRAJECTORY_SETPOINT_DTS received trajectory_setpoint messages) | -| trajectory_setpoint_dt_max | `float32` | us | | The max trajectory setpoint arrival time interval (since Raptor mode activation and within NUM_TRAJECTORY_SETPOINT_DTS received trajectory_setpoint messages) | -| trajectory_setpoint_dt_max_since_activation | `float32` | us | | The max trajectory setpoint arrival time interval (since Raptor mode activation) | -| internal_reference_position | `float32[3]` | m [FLU] | | Internal reference position | -| internal_reference_linear_velocity | `float32[3]` | m/s [FLU] | | Internal reference linear velocity | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Sampling timestamp of the data this control response is based on | +| subscription_update_angular_velocity | `bool` | bool | | Flag signalling if the vehicle_angular_velocity was updated | +| subscription_update_local_position | `bool` | bool | | Flag signalling if the vehicle_local_position was updated | +| subscription_update_attitude | `bool` | bool | | Flag signalling if the vehicle_attitude was updated | +| subscription_update_trajectory_setpoint | `bool` | bool | | Flag signalling if the trajectory_setpoint was updated | +| subscription_update_vehicle_status | `bool` | bool | | Flag signalling if the vehicle_status was updated | +| exit_reason | `uint8` | enum | | Exit reason identifier. Representing conditions that lead to the Raptor policy not being executed | +| timestamp_last_vehicle_angular_velocity | `uint32` | us | | Timestamp of the last received vehicle_angular_velocity message | +| timestamp_last_vehicle_local_position | `uint32` | us | | Timestamp of the last received vehicle_local_position message | +| timestamp_last_vehicle_attitude | `uint32` | us | | Timestamp of the last received vehicle_attitude message | +| timestamp_last_trajectory_setpoint | `uint32` | us | | Timestamp of the last received trajectory_setpoint message | +| vehicle_angular_velocity_stale | `bool` | bool | | True if vehicle_angular_velocity data is considered stale (exceeded timeout) | +| vehicle_local_position_stale | `bool` | bool | | True if vehicle_local_position data is considered stale (exceeded timeout) | +| vehicle_attitude_stale | `bool` | bool | | True if vehicle_attitude data is considered stale (exceeded timeout) | +| trajectory_setpoint_stale | `bool` | bool | | True if trajectory_setpoint data is considered stale (exceeded timeout) | +| active | `bool` | bool | | True if the Raptor policy is currently active (publishing actuator_motors) | +| substep | `uint8` | | | The policy is trained at a fixed frequency (e.g. 100 Hz) but we might want to use it for control at higher frequencies (e.g. 400 Hz), which leads to a number of intermediate steps before the actual policy state is advanced (in this case 4 = 400 Hz / 100 Hz). This field provides the current substep (e.g. 0-3). | +| control_interval | `float32` | s | | Time interval between control updates | +| trajectory_setpoint_dt_mean | `float32` | us | | The average trajectory setpoint arrival time interval (since Raptor mode activation within NUM_TRAJECTORY_SETPOINT_DTS received trajectory_setpoint messages) | +| trajectory_setpoint_dt_max | `float32` | us | | The max trajectory setpoint arrival time interval (since Raptor mode activation and within NUM_TRAJECTORY_SETPOINT_DTS received trajectory_setpoint messages) | +| trajectory_setpoint_dt_max_since_activation | `float32` | us | | The max trajectory setpoint arrival time interval (since Raptor mode activation) | +| internal_reference_position | `float32[3]` | m [FLU] | | Internal reference position | +| internal_reference_linear_velocity | `float32[3]` | m/s [FLU] | | Internal reference linear velocity | ## Constants diff --git a/docs/uk/msg_docs/RateCtrlStatus.md b/docs/uk/msg_docs/RateCtrlStatus.md index b952edc1aa..b393863044 100644 --- a/docs/uk/msg_docs/RateCtrlStatus.md +++ b/docs/uk/msg_docs/RateCtrlStatus.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| rollspeed_integ | `float32` | | | | -| pitchspeed_integ | `float32` | | | | -| yawspeed_integ | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| rollspeed_integ | `float32` | | | | +| pitchspeed_integ | `float32` | | | | +| yawspeed_integ | `float32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/RcChannels.md b/docs/uk/msg_docs/RcChannels.md index 270bd8452d..8afdb43acd 100644 --- a/docs/uk/msg_docs/RcChannels.md +++ b/docs/uk/msg_docs/RcChannels.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------- | ------------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_last_valid | `uint64` | | | Timestamp of last valid RC signal | -| channels | `float32[18]` | | | Scaled to -1..1 (throttle: 0..1) | -| channel_count | `uint8` | | | Number of valid channels | -| function | `int8[30]` | | | Functions mapping | -| rssi | `uint8` | | | Receive signal strength index | -| signal_lost | `bool` | | | Control signal lost, should be checked together with topic timeout | -| frame_drop_count | `uint32` | | | Number of dropped frames | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------- | ------------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_last_valid | `uint64` | | | Timestamp of last valid RC signal | +| channels | `float32[18]` | | | Scaled to -1..1 (throttle: 0..1) | +| channel_count | `uint8` | | | Number of valid channels | +| function | `int8[30]` | | | Functions mapping | +| rssi | `uint8` | | | Receive signal strength index | +| signal_lost | `bool` | | | Control signal lost, should be checked together with topic timeout | +| frame_drop_count | `uint32` | | | Number of dropped frames | ## Constants diff --git a/docs/uk/msg_docs/RcParameterMap.md b/docs/uk/msg_docs/RcParameterMap.md index 8978eeb8cb..10912ae347 100644 --- a/docs/uk/msg_docs/RcParameterMap.md +++ b/docs/uk/msg_docs/RcParameterMap.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| valid | `bool[3]` | | | true for RC-Param channels which are mapped to a param | -| param_index | `int32[3]` | | | corresponding param index, this field is ignored if set to -1, in this case param_id will be used | -| param_id | `char[51]` | | | MAP_NCHAN \* (ID_LEN + 1) chars, corresponding param id, null terminated | -| scale | `float32[3]` | | | scale to map the RC input [-1, 1] to a parameter value | -| value0 | `float32[3]` | | | initial value around which the parameter value is changed | -| value_min | `float32[3]` | | | minimal parameter value | -| value_max | `float32[3]` | | | minimal parameter value | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| valid | `bool[3]` | | | true for RC-Param channels which are mapped to a param | +| param_index | `int32[3]` | | | corresponding param index, this field is ignored if set to -1, in this case param_id will be used | +| param_id | `char[51]` | | | MAP_NCHAN \* (ID_LEN + 1) chars, corresponding param id, null terminated | +| scale | `float32[3]` | | | scale to map the RC input [-1, 1] to a parameter value | +| value0 | `float32[3]` | | | initial value around which the parameter value is changed | +| value_min | `float32[3]` | | | minimal parameter value | +| value_max | `float32[3]` | | | minimal parameter value | ## Constants diff --git a/docs/uk/msg_docs/RegisterExtComponentReply.md b/docs/uk/msg_docs/RegisterExtComponentReply.md index 3863499e03..483dac3be7 100644 --- a/docs/uk/msg_docs/RegisterExtComponentReply.md +++ b/docs/uk/msg_docs/RegisterExtComponentReply.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| request_id | `uint64` | | | ID from the request | -| name | `char[25]` | | | name from the request | -| px4_ros2_api_version | `uint16` | | | | -| success | `bool` | | | | -| arming_check_id | `int8` | | | arming check registration ID (-1 if invalid) | -| mode_id | `int8` | | | assigned mode ID (-1 if invalid) | -| mode_executor_id | `int8` | | | assigned mode executor ID (-1 if invalid) | -| not_user_selectable | `bool` | | | mode cannot be selected by the user | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------ | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| request_id | `uint64` | | | ID from the request | +| name | `char[25]` | | | name from the request | +| px4_ros2_api_version | `uint16` | | | | +| success | `bool` | | | | +| arming_check_id | `int8` | | | arming check registration ID (-1 if invalid) | +| mode_id | `int8` | | | assigned mode ID (-1 if invalid) | +| mode_executor_id | `int8` | | | assigned mode executor ID (-1 if invalid) | +| not_user_selectable | `bool` | | | mode cannot be selected by the user | ## Constants diff --git a/docs/uk/msg_docs/RegisterExtComponentReplyV0.md b/docs/uk/msg_docs/RegisterExtComponentReplyV0.md index 7c2af9fe7e..b8608f27e6 100644 --- a/docs/uk/msg_docs/RegisterExtComponentReplyV0.md +++ b/docs/uk/msg_docs/RegisterExtComponentReplyV0.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| request_id | `uint64` | | | ID from the request | -| name | `char[25]` | | | name from the request | -| px4_ros2_api_version | `uint16` | | | | -| success | `bool` | | | | -| arming_check_id | `int8` | | | arming check registration ID (-1 if invalid) | -| mode_id | `int8` | | | assigned mode ID (-1 if invalid) | -| mode_executor_id | `int8` | | | assigned mode executor ID (-1 if invalid) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------ | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| request_id | `uint64` | | | ID from the request | +| name | `char[25]` | | | name from the request | +| px4_ros2_api_version | `uint16` | | | | +| success | `bool` | | | | +| arming_check_id | `int8` | | | arming check registration ID (-1 if invalid) | +| mode_id | `int8` | | | assigned mode ID (-1 if invalid) | +| mode_executor_id | `int8` | | | assigned mode executor ID (-1 if invalid) | ## Constants diff --git a/docs/uk/msg_docs/RegisterExtComponentRequest.md b/docs/uk/msg_docs/RegisterExtComponentRequest.md index e201cc8826..0442a1d135 100644 --- a/docs/uk/msg_docs/RegisterExtComponentRequest.md +++ b/docs/uk/msg_docs/RegisterExtComponentRequest.md @@ -10,20 +10,20 @@ Request to register an external component. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| request_id | `uint64` | | | ID, set this to a random value | -| name | `char[25]` | | | either the requested mode name, or component name | -| px4_ros2_api_version | `uint16` | | | Set to LATEST_PX4_ROS2_API_VERSION | -| register_arming_check | `bool` | | | | -| register_mode | `bool` | | | registering a mode also requires arming_check to be set | -| register_mode_executor | `bool` | | | registering an executor also requires a mode to be registered (which is the owned mode by the executor) | -| enable_replace_internal_mode | `bool` | | | set to true if an internal mode should be replaced | -| replace_internal_mode | `uint8` | | | vehicle_status::NAVIGATION_STATE_\* | -| activate_mode_immediately | `bool` | | | switch to the registered mode (can only be set in combination with an executor) | -| not_user_selectable | `bool` | | | mode cannot be selected by the user | -| request_offboard_setpoints | `bool` | | | set to true if the registered mode wants to receive offboard trajectory setpoints via MAVLink | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| request_id | `uint64` | | | ID, set this to a random value | +| name | `char[25]` | | | either the requested mode name, or component name | +| px4_ros2_api_version | `uint16` | | | Set to LATEST_PX4_ROS2_API_VERSION | +| register_arming_check | `bool` | | | | +| register_mode | `bool` | | | registering a mode also requires arming_check to be set | +| register_mode_executor | `bool` | | | registering an executor also requires a mode to be registered (which is the owned mode by the executor) | +| enable_replace_internal_mode | `bool` | | | set to true if an internal mode should be replaced | +| replace_internal_mode | `uint8` | | | vehicle_status::NAVIGATION_STATE_\* | +| activate_mode_immediately | `bool` | | | switch to the registered mode (can only be set in combination with an executor) | +| not_user_selectable | `bool` | | | mode cannot be selected by the user | +| request_offboard_setpoints | `bool` | | | set to true if the registered mode wants to receive offboard trajectory setpoints via MAVLink | ## Constants diff --git a/docs/uk/msg_docs/RegisterExtComponentRequestV0.md b/docs/uk/msg_docs/RegisterExtComponentRequestV0.md index 09c8671ac2..2eeaf757f6 100644 --- a/docs/uk/msg_docs/RegisterExtComponentRequestV0.md +++ b/docs/uk/msg_docs/RegisterExtComponentRequestV0.md @@ -10,18 +10,18 @@ Request to register an external component. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| request_id | `uint64` | | | ID, set this to a random value | -| name | `char[25]` | | | either the requested mode name, or component name | -| px4_ros2_api_version | `uint16` | | | Set to LATEST_PX4_ROS2_API_VERSION | -| register_arming_check | `bool` | | | | -| register_mode | `bool` | | | registering a mode also requires arming_check to be set | -| register_mode_executor | `bool` | | | registering an executor also requires a mode to be registered (which is the owned mode by the executor) | -| enable_replace_internal_mode | `bool` | | | set to true if an internal mode should be replaced | -| replace_internal_mode | `uint8` | | | vehicle_status::NAVIGATION_STATE_\* | -| activate_mode_immediately | `bool` | | | switch to the registered mode (can only be set in combination with an executor) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| request_id | `uint64` | | | ID, set this to a random value | +| name | `char[25]` | | | either the requested mode name, or component name | +| px4_ros2_api_version | `uint16` | | | Set to LATEST_PX4_ROS2_API_VERSION | +| register_arming_check | `bool` | | | | +| register_mode | `bool` | | | registering a mode also requires arming_check to be set | +| register_mode_executor | `bool` | | | registering an executor also requires a mode to be registered (which is the owned mode by the executor) | +| enable_replace_internal_mode | `bool` | | | set to true if an internal mode should be replaced | +| replace_internal_mode | `uint8` | | | vehicle_status::NAVIGATION_STATE_\* | +| activate_mode_immediately | `bool` | | | switch to the registered mode (can only be set in combination with an executor) | ## Constants diff --git a/docs/uk/msg_docs/RegisterExtComponentRequestV1.md b/docs/uk/msg_docs/RegisterExtComponentRequestV1.md index c5efb4ea21..22f5ecd88a 100644 --- a/docs/uk/msg_docs/RegisterExtComponentRequestV1.md +++ b/docs/uk/msg_docs/RegisterExtComponentRequestV1.md @@ -10,19 +10,19 @@ Request to register an external component. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| request_id | `uint64` | | | ID, set this to a random value | -| name | `char[25]` | | | either the requested mode name, or component name | -| px4_ros2_api_version | `uint16` | | | Set to LATEST_PX4_ROS2_API_VERSION | -| register_arming_check | `bool` | | | | -| register_mode | `bool` | | | registering a mode also requires arming_check to be set | -| register_mode_executor | `bool` | | | registering an executor also requires a mode to be registered (which is the owned mode by the executor) | -| enable_replace_internal_mode | `bool` | | | set to true if an internal mode should be replaced | -| replace_internal_mode | `uint8` | | | vehicle_status::NAVIGATION_STATE_\* | -| activate_mode_immediately | `bool` | | | switch to the registered mode (can only be set in combination with an executor) | -| not_user_selectable | `bool` | | | mode cannot be selected by the user | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| request_id | `uint64` | | | ID, set this to a random value | +| name | `char[25]` | | | either the requested mode name, or component name | +| px4_ros2_api_version | `uint16` | | | Set to LATEST_PX4_ROS2_API_VERSION | +| register_arming_check | `bool` | | | | +| register_mode | `bool` | | | registering a mode also requires arming_check to be set | +| register_mode_executor | `bool` | | | registering an executor also requires a mode to be registered (which is the owned mode by the executor) | +| enable_replace_internal_mode | `bool` | | | set to true if an internal mode should be replaced | +| replace_internal_mode | `uint8` | | | vehicle_status::NAVIGATION_STATE_\* | +| activate_mode_immediately | `bool` | | | switch to the registered mode (can only be set in combination with an executor) | +| not_user_selectable | `bool` | | | mode cannot be selected by the user | ## Constants diff --git a/docs/uk/msg_docs/RoverAttitudeSetpoint.md b/docs/uk/msg_docs/RoverAttitudeSetpoint.md index 3b4d0676f5..83ef7dc7a0 100644 --- a/docs/uk/msg_docs/RoverAttitudeSetpoint.md +++ b/docs/uk/msg_docs/RoverAttitudeSetpoint.md @@ -10,10 +10,10 @@ Rover Attitude Setpoint. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | --------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ----------------------- | -| timestamp | `uint64` | us | | Time since system start | -| yaw_setpoint | `float32` | rad [NED] | [-inf : inf] | Yaw setpoint | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ----------------------- | +| timestamp | `uint64` | us | | Time since system start | +| yaw_setpoint | `float32` | rad [NED] | [-inf : inf] | Yaw setpoint | ## Source Message diff --git a/docs/uk/msg_docs/RoverAttitudeStatus.md b/docs/uk/msg_docs/RoverAttitudeStatus.md index 499bc02edb..450d8c514c 100644 --- a/docs/uk/msg_docs/RoverAttitudeStatus.md +++ b/docs/uk/msg_docs/RoverAttitudeStatus.md @@ -10,11 +10,11 @@ Rover Attitude Status. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | -------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| measured_yaw | `float32` | rad [NED] | [-pi : pi] | Measured yaw | -| adjusted_yaw_setpoint | `float32` | rad [NED] | [-pi : pi] | Yaw setpoint that is being tracked (Applied slew rates) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | -------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| measured_yaw | `float32` | rad [NED] | [-pi : pi] | Measured yaw | +| adjusted_yaw_setpoint | `float32` | rad [NED] | [-pi : pi] | Yaw setpoint that is being tracked (Applied slew rates) | ## Source Message diff --git a/docs/uk/msg_docs/RoverPositionSetpoint.md b/docs/uk/msg_docs/RoverPositionSetpoint.md index ff03dd395f..3f97b7d977 100644 --- a/docs/uk/msg_docs/RoverPositionSetpoint.md +++ b/docs/uk/msg_docs/RoverPositionSetpoint.md @@ -10,14 +10,14 @@ Rover Position Setpoint. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------- | ------------ | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| position_ned | `float32[2]` | m [NED] | [-inf : inf] | Target position | -| start_ned | `float32[2]` | m [NED] | [-inf : inf] | Start position which specifies a line for the rover to track (Invalid: NaN Defaults to vehicle position) | -| cruising_speed | `float32` | m/s | [0 : inf] | Cruising speed (Invalid: NaN Defaults to maximum speed) | -| arrival_speed | `float32` | m/s | [0 : inf] | Speed the rover should arrive at the target with (Invalid: NaN Defaults to 0) | -| yaw | `float32` | rad [NED] | [-pi : pi] | Mecanum only: Specify vehicle yaw during travel (Invalid: NaN Defaults to vehicle yaw) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| position_ned | `float32[2]` | m [NED] | [-inf : inf] | Target position | +| start_ned | `float32[2]` | m [NED] | [-inf : inf] | Start position which specifies a line for the rover to track (Invalid: NaN Defaults to vehicle position) | +| cruising_speed | `float32` | m/s | [0 : inf] | Cruising speed (Invalid: NaN Defaults to maximum speed) | +| arrival_speed | `float32` | m/s | [0 : inf] | Speed the rover should arrive at the target with (Invalid: NaN Defaults to 0) | +| yaw | `float32` | rad [NED] | [-pi : pi] | Mecanum only: Specify vehicle yaw during travel (Invalid: NaN Defaults to vehicle yaw) | ## Source Message diff --git a/docs/uk/msg_docs/RoverRateSetpoint.md b/docs/uk/msg_docs/RoverRateSetpoint.md index 87d1035870..d7067dff02 100644 --- a/docs/uk/msg_docs/RoverRateSetpoint.md +++ b/docs/uk/msg_docs/RoverRateSetpoint.md @@ -10,10 +10,10 @@ Rover Rate setpoint. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------- | --------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ----------------------- | -| timestamp | `uint64` | us | | Time since system start | -| yaw_rate_setpoint | `float32` | rad/s [NED] | [-inf : inf] | Yaw rate setpoint | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ----------------------- | +| timestamp | `uint64` | us | | Time since system start | +| yaw_rate_setpoint | `float32` | rad/s [NED] | [-inf : inf] | Yaw rate setpoint | ## Source Message diff --git a/docs/uk/msg_docs/RoverRateStatus.md b/docs/uk/msg_docs/RoverRateStatus.md index 115ca78608..e240fdbbc7 100644 --- a/docs/uk/msg_docs/RoverRateStatus.md +++ b/docs/uk/msg_docs/RoverRateStatus.md @@ -10,12 +10,12 @@ Rover Rate Status. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| measured_yaw_rate | `float32` | rad/s [NED] | [-inf : inf] | Measured yaw rate | -| adjusted_yaw_rate_setpoint | `float32` | rad/s [NED] | [-inf : inf] | Yaw rate setpoint that is being tracked (Applied slew rates) | -| pid_yaw_rate_integral | `float32` | | [-1 : 1] | Integral of the PID for the closed loop yaw rate controller | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| measured_yaw_rate | `float32` | rad/s [NED] | [-inf : inf] | Measured yaw rate | +| adjusted_yaw_rate_setpoint | `float32` | rad/s [NED] | [-inf : inf] | Yaw rate setpoint that is being tracked (Applied slew rates) | +| pid_yaw_rate_integral | `float32` | | [-1 : 1] | Integral of the PID for the closed loop yaw rate controller | ## Source Message diff --git a/docs/uk/msg_docs/RoverSpeedSetpoint.md b/docs/uk/msg_docs/RoverSpeedSetpoint.md index 6927a5fc53..a753ce9ea0 100644 --- a/docs/uk/msg_docs/RoverSpeedSetpoint.md +++ b/docs/uk/msg_docs/RoverSpeedSetpoint.md @@ -10,11 +10,11 @@ Rover Speed Setpoint. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------ | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| speed_body_x | `float32` | m/s [Body] | [-inf (Backwards) : inf (Forwards)] | Speed setpoint in body x direction | -| speed_body_y | `float32` | m/s [Body] | [-inf (Left) : inf (Right)] | Mecanum only: Speed setpoint in body y direction (Invalid: NaN If not mecanum) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| speed_body_x | `float32` | m/s [Body] | [-inf (Backwards) : inf (Forwards)] | Speed setpoint in body x direction | +| speed_body_y | `float32` | m/s [Body] | [-inf (Left) : inf (Right)] | Mecanum only: Speed setpoint in body y direction (Invalid: NaN If not mecanum) | ## Source Message diff --git a/docs/uk/msg_docs/RoverSpeedStatus.md b/docs/uk/msg_docs/RoverSpeedStatus.md index 019e3a8fc3..dcd050e17d 100644 --- a/docs/uk/msg_docs/RoverSpeedStatus.md +++ b/docs/uk/msg_docs/RoverSpeedStatus.md @@ -10,15 +10,15 @@ Rover Velocity Status. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| measured_speed_body_x | `float32` | m/s [Body] | [-inf (Backwards) : inf (Forwards)] | Measured speed in body x direction | -| adjusted_speed_body_x_setpoint | `float32` | m/s [Body] | [-inf (Backwards) : inf (Forwards)] | Speed setpoint in body x direction that is being tracked (Applied slew rates) | -| pid_throttle_body_x_integral | `float32` | | [-1 : 1] | Integral of the PID for the closed loop controller of the speed in body x direction | -| measured_speed_body_y | `float32` | m/s [Body] | [-inf (Left) : inf (Right)] | Mecanum only: Measured speed in body y direction (Invalid: NaN If not mecanum) | -| adjusted_speed_body_y_setpoint | `float32` | m/s [Body] | [-inf (Left) : inf (Right)] | Mecanum only: Speed setpoint in body y direction that is being tracked (Applied slew rates) (Invalid: NaN If not mecanum) | -| pid_throttle_body_y_integral | `float32` | | [-1 : 1] | Mecanum only: Integral of the PID for the closed loop controller of the speed in body y direction (Invalid: NaN If not mecanum) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| measured_speed_body_x | `float32` | m/s [Body] | [-inf (Backwards) : inf (Forwards)] | Measured speed in body x direction | +| adjusted_speed_body_x_setpoint | `float32` | m/s [Body] | [-inf (Backwards) : inf (Forwards)] | Speed setpoint in body x direction that is being tracked (Applied slew rates) | +| pid_throttle_body_x_integral | `float32` | | [-1 : 1] | Integral of the PID for the closed loop controller of the speed in body x direction | +| measured_speed_body_y | `float32` | m/s [Body] | [-inf (Left) : inf (Right)] | Mecanum only: Measured speed in body y direction (Invalid: NaN If not mecanum) | +| adjusted_speed_body_y_setpoint | `float32` | m/s [Body] | [-inf (Left) : inf (Right)] | Mecanum only: Speed setpoint in body y direction that is being tracked (Applied slew rates) (Invalid: NaN If not mecanum) | +| pid_throttle_body_y_integral | `float32` | | [-1 : 1] | Mecanum only: Integral of the PID for the closed loop controller of the speed in body y direction (Invalid: NaN If not mecanum) | ## Source Message diff --git a/docs/uk/msg_docs/RoverSteeringSetpoint.md b/docs/uk/msg_docs/RoverSteeringSetpoint.md index 7fdd9107b1..2f67bddf0e 100644 --- a/docs/uk/msg_docs/RoverSteeringSetpoint.md +++ b/docs/uk/msg_docs/RoverSteeringSetpoint.md @@ -10,10 +10,10 @@ Rover Steering setpoint. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| normalized_steering_setpoint | `float32` | [Body] | [-1 (Left) : 1 (Right)] | Ackermann: Normalized steering angle, Differential/Mecanum: Normalized speed difference between the left and right wheels | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| normalized_steering_setpoint | `float32` | [Body] | [-1 (Left) : 1 (Right)] | Ackermann: Normalized steering angle, Differential/Mecanum: Normalized speed difference between the left and right wheels | ## Source Message diff --git a/docs/uk/msg_docs/RoverThrottleSetpoint.md b/docs/uk/msg_docs/RoverThrottleSetpoint.md index 98b6ec4ec0..ccd59207b0 100644 --- a/docs/uk/msg_docs/RoverThrottleSetpoint.md +++ b/docs/uk/msg_docs/RoverThrottleSetpoint.md @@ -10,11 +10,11 @@ Rover Throttle setpoint. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| throttle_body_x | `float32` | [Body] | [-1 (Backwards) : 1 (Forwards)] | Throttle setpoint along body X axis | -| throttle_body_y | `float32` | [Body] | [-1 (Left) : 1 (Right)] | Mecanum only: Throttle setpoint along body Y axis (Invalid: NaN If not mecanum) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| throttle_body_x | `float32` | [Body] | [-1 (Backwards) : 1 (Forwards)] | Throttle setpoint along body X axis | +| throttle_body_y | `float32` | [Body] | [-1 (Left) : 1 (Right)] | Mecanum only: Throttle setpoint along body Y axis (Invalid: NaN If not mecanum) | ## Source Message diff --git a/docs/uk/msg_docs/Rpm.md b/docs/uk/msg_docs/Rpm.md index 83fc3da337..38f24a806e 100644 --- a/docs/uk/msg_docs/Rpm.md +++ b/docs/uk/msg_docs/Rpm.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| rpm_estimate | `float32` | | | filtered revolutions per minute | -| rpm_raw | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| rpm_estimate | `float32` | | | filtered revolutions per minute | +| rpm_raw | `float32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/RtlStatus.md b/docs/uk/msg_docs/RtlStatus.md index 08a2a622dd..51b6f6fb53 100644 --- a/docs/uk/msg_docs/RtlStatus.md +++ b/docs/uk/msg_docs/RtlStatus.md @@ -8,14 +8,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| safe_points_id | `uint32` | | | unique ID of active set of safe_point_items | -| is_evaluation_pending | `bool` | | | flag if the RTL point needs reevaluation (e.g. new safe points available, but need loading). | -| has_vtol_approach | `bool` | | | flag if approaches are defined for current RTL_TYPE parameter setting | -| rtl_type | `uint8` | | | Type of RTL chosen | -| safe_point_index | `uint8` | | | index of the chosen safe point, UINT8_MAX if no rally point was chosen | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| safe_points_id | `uint32` | | | unique ID of active set of safe_point_items | +| is_evaluation_pending | `bool` | | | flag if the RTL point needs reevaluation (e.g. new safe points available, but need loading). | +| has_vtol_approach | `bool` | | | flag if approaches are defined for current RTL_TYPE parameter setting | +| rtl_type | `uint8` | | | Type of RTL chosen | +| safe_point_index | `uint8` | | | index of the chosen safe point, UINT8_MAX if no rally point was chosen | ## Constants diff --git a/docs/uk/msg_docs/RtlTimeEstimate.md b/docs/uk/msg_docs/RtlTimeEstimate.md index 8f825b892c..b61ce925db 100644 --- a/docs/uk/msg_docs/RtlTimeEstimate.md +++ b/docs/uk/msg_docs/RtlTimeEstimate.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| valid | `bool` | | | Flag indicating whether the time estiamtes are valid | -| time_estimate | `float32` | s | | Estimated time for RTL | -| safe_time_estimate | `float32` | s | | Same as time_estimate, but with safety factor and safety margin included (factor\*t + margin) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| valid | `bool` | | | Flag indicating whether the time estiamtes are valid | +| time_estimate | `float32` | s | | Estimated time for RTL | +| safe_time_estimate | `float32` | s | | Same as time_estimate, but with safety factor and safety margin included (factor\*t + margin) | ## Source Message diff --git a/docs/uk/msg_docs/SatelliteInfo.md b/docs/uk/msg_docs/SatelliteInfo.md index f62a55be04..8d2de0de39 100644 --- a/docs/uk/msg_docs/SatelliteInfo.md +++ b/docs/uk/msg_docs/SatelliteInfo.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------- | ----------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| count | `uint8` | | | Number of satellites visible to the receiver | -| svid | `uint8[40]` | | | Space vehicle ID [1..255], see scheme below | -| used | `uint8[40]` | | | 0: Satellite not used, 1: used for navigation | -| elevation | `uint8[40]` | | | Elevation (0: right on top of receiver, 90: on the horizon) of satellite | -| azimuth | `uint8[40]` | | | Direction of satellite, 0: 0 deg, 255: 360 deg. | -| snr | `uint8[40]` | | | dBHz, Signal to noise ratio of satellite C/N0, range 0..99, zero when not tracking this satellite. | -| prn | `uint8[40]` | | | Satellite PRN code assignment, (psuedorandom number SBAS, valid codes are 120-144) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| count | `uint8` | | | Number of satellites visible to the receiver | +| svid | `uint8[40]` | | | Space vehicle ID [1..255], see scheme below | +| used | `uint8[40]` | | | 0: Satellite not used, 1: used for navigation | +| elevation | `uint8[40]` | | | Elevation (0: right on top of receiver, 90: on the horizon) of satellite | +| azimuth | `uint8[40]` | | | Direction of satellite, 0: 0 deg, 255: 360 deg. | +| snr | `uint8[40]` | | | dBHz, Signal to noise ratio of satellite C/N0, range 0..99, zero when not tracking this satellite. | +| prn | `uint8[40]` | | | Satellite PRN code assignment, (psuedorandom number SBAS, valid codes are 120-144) | ## Constants diff --git a/docs/uk/msg_docs/SensorAccel.md b/docs/uk/msg_docs/SensorAccel.md index 2ab0cf9964..21066aa940 100644 --- a/docs/uk/msg_docs/SensorAccel.md +++ b/docs/uk/msg_docs/SensorAccel.md @@ -8,18 +8,18 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| x | `float32` | | | acceleration in the FRD board frame X-axis in m/s^2 | -| y | `float32` | | | acceleration in the FRD board frame Y-axis in m/s^2 | -| z | `float32` | | | acceleration in the FRD board frame Z-axis in m/s^2 | -| temperature | `float32` | | | temperature in degrees Celsius | -| error_count | `uint32` | | | | -| clip_counter | `uint8[3]` | | | clip count per axis in the sample period | -| samples | `uint8` | | | number of raw samples that went into this message | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| x | `float32` | | | acceleration in the FRD board frame X-axis in m/s^2 | +| y | `float32` | | | acceleration in the FRD board frame Y-axis in m/s^2 | +| z | `float32` | | | acceleration in the FRD board frame Z-axis in m/s^2 | +| temperature | `float32` | | | temperature in degrees Celsius | +| error_count | `uint32` | | | | +| clip_counter | `uint8[3]` | | | clip count per axis in the sample period | +| samples | `uint8` | | | number of raw samples that went into this message | ## Constants diff --git a/docs/uk/msg_docs/SensorAccelFifo.md b/docs/uk/msg_docs/SensorAccelFifo.md index c420dbe7d5..c2f0cb5a53 100644 --- a/docs/uk/msg_docs/SensorAccelFifo.md +++ b/docs/uk/msg_docs/SensorAccelFifo.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| dt | `float32` | | | delta time between samples (microseconds) | -| scale | `float32` | | | | -| samples | `uint8` | | | number of valid samples | -| x | `int16[32]` | | | acceleration in the FRD board frame X-axis in m/s^2 | -| y | `int16[32]` | | | acceleration in the FRD board frame Y-axis in m/s^2 | -| z | `int16[32]` | | | acceleration in the FRD board frame Z-axis in m/s^2 | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| dt | `float32` | | | delta time between samples (microseconds) | +| scale | `float32` | | | | +| samples | `uint8` | | | number of valid samples | +| x | `int16[32]` | | | acceleration in the FRD board frame X-axis in m/s^2 | +| y | `int16[32]` | | | acceleration in the FRD board frame Y-axis in m/s^2 | +| z | `int16[32]` | | | acceleration in the FRD board frame Z-axis in m/s^2 | ## Source Message diff --git a/docs/uk/msg_docs/SensorAirflow.md b/docs/uk/msg_docs/SensorAirflow.md index 0b3fbd0ac3..d17538caa9 100644 --- a/docs/uk/msg_docs/SensorAirflow.md +++ b/docs/uk/msg_docs/SensorAirflow.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| speed | `float32` | | | the speed being reported by the wind / airflow sensor | -| direction | `float32` | | | the direction being reported by the wind / airflow sensor | -| status | `uint8` | | | Status code from the sensor | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| speed | `float32` | | | the speed being reported by the wind / airflow sensor | +| direction | `float32` | | | the direction being reported by the wind / airflow sensor | +| status | `uint8` | | | Status code from the sensor | ## Source Message diff --git a/docs/uk/msg_docs/SensorBaro.md b/docs/uk/msg_docs/SensorBaro.md index 613f2d5f4c..452f1d50f7 100644 --- a/docs/uk/msg_docs/SensorBaro.md +++ b/docs/uk/msg_docs/SensorBaro.md @@ -13,14 +13,14 @@ The information is published in the `SCALED_PRESSURE_n` MAVLink messages (along ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time of publication (since system start) | -| timestamp_sample | `uint64` | us | | Time of raw data capture | -| device_id | `uint32` | | | Unique device ID for the sensor that does not change between power cycles | -| pressure | `float32` | Pa | | Static pressure measurement | -| temperature | `float32` | degC | | Temperature. | -| error_count | `uint32` | | | Number of errors detected by driver. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time of publication (since system start) | +| timestamp_sample | `uint64` | us | | Time of raw data capture | +| device_id | `uint32` | | | Unique device ID for the sensor that does not change between power cycles | +| pressure | `float32` | Pa | | Static pressure measurement | +| temperature | `float32` | degC | | Temperature. | +| error_count | `uint32` | | | Number of errors detected by driver. | ## Constants diff --git a/docs/uk/msg_docs/SensorCombined.md b/docs/uk/msg_docs/SensorCombined.md index d044dfaf50..a362316928 100644 --- a/docs/uk/msg_docs/SensorCombined.md +++ b/docs/uk/msg_docs/SensorCombined.md @@ -10,18 +10,18 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| gyro_rad | `float32[3]` | | | average angular rate measured in the FRD body frame XYZ-axis in rad/s over the last gyro sampling period | -| gyro_integral_dt | `uint32` | | | gyro measurement sampling period in microseconds | -| accelerometer_timestamp_relative | `int32` | | | timestamp + accelerometer_timestamp_relative = Accelerometer timestamp | -| accelerometer_m_s2 | `float32[3]` | | | average value acceleration measured in the FRD body frame XYZ-axis in m/s^2 over the last accelerometer sampling period | -| accelerometer_integral_dt | `uint32` | | | accelerometer measurement sampling period in microseconds | -| accelerometer_clipping | `uint8` | | | bitfield indicating if there was any accelerometer clipping (per axis) during the integration time frame | -| gyro_clipping | `uint8` | | | bitfield indicating if there was any gyro clipping (per axis) during the integration time frame | -| accel_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever accelermeter calibration changes. | -| gyro_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever rate gyro calibration changes. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| gyro_rad | `float32[3]` | | | average angular rate measured in the FRD body frame XYZ-axis in rad/s over the last gyro sampling period | +| gyro_integral_dt | `uint32` | | | gyro measurement sampling period in microseconds | +| accelerometer_timestamp_relative | `int32` | | | timestamp + accelerometer_timestamp_relative = Accelerometer timestamp | +| accelerometer_m_s2 | `float32[3]` | | | average value acceleration measured in the FRD body frame XYZ-axis in m/s^2 over the last accelerometer sampling period | +| accelerometer_integral_dt | `uint32` | | | accelerometer measurement sampling period in microseconds | +| accelerometer_clipping | `uint8` | | | bitfield indicating if there was any accelerometer clipping (per axis) during the integration time frame | +| gyro_clipping | `uint8` | | | bitfield indicating if there was any gyro clipping (per axis) during the integration time frame | +| accel_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever accelermeter calibration changes. | +| gyro_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever rate gyro calibration changes. | ## Constants diff --git a/docs/uk/msg_docs/SensorCorrection.md b/docs/uk/msg_docs/SensorCorrection.md index b85fce0cd7..3f9f6f1500 100644 --- a/docs/uk/msg_docs/SensorCorrection.md +++ b/docs/uk/msg_docs/SensorCorrection.md @@ -10,33 +10,33 @@ Sensor corrections in SI-unit form for the voted sensor. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| accel_device_ids | `uint32[4]` | | | | -| accel_temperature | `float32[4]` | | | | -| accel_offset_0 | `float32[3]` | | | accelerometer 0 offsets in the FRD board frame XYZ-axis in m/s^s | -| accel_offset_1 | `float32[3]` | | | accelerometer 1 offsets in the FRD board frame XYZ-axis in m/s^s | -| accel_offset_2 | `float32[3]` | | | accelerometer 2 offsets in the FRD board frame XYZ-axis in m/s^s | -| accel_offset_3 | `float32[3]` | | | accelerometer 3 offsets in the FRD board frame XYZ-axis in m/s^s | -| gyro_device_ids | `uint32[4]` | | | | -| gyro_temperature | `float32[4]` | | | | -| gyro_offset_0 | `float32[3]` | | | gyro 0 XYZ offsets in the sensor frame in rad/s | -| gyro_offset_1 | `float32[3]` | | | gyro 1 XYZ offsets in the sensor frame in rad/s | -| gyro_offset_2 | `float32[3]` | | | gyro 2 XYZ offsets in the sensor frame in rad/s | -| gyro_offset_3 | `float32[3]` | | | gyro 3 XYZ offsets in the sensor frame in rad/s | -| mag_device_ids | `uint32[4]` | | | | -| mag_temperature | `float32[4]` | | | | -| mag_offset_0 | `float32[3]` | | | magnetometer 0 offsets in the FRD board frame XYZ-axis in m/s^s | -| mag_offset_1 | `float32[3]` | | | magnetometer 1 offsets in the FRD board frame XYZ-axis in m/s^s | -| mag_offset_2 | `float32[3]` | | | magnetometer 2 offsets in the FRD board frame XYZ-axis in m/s^s | -| mag_offset_3 | `float32[3]` | | | magnetometer 3 offsets in the FRD board frame XYZ-axis in m/s^s | -| baro_device_ids | `uint32[4]` | | | | -| baro_temperature | `float32[4]` | | | | -| baro_offset_0 | `float32` | | | barometric pressure 0 offsets in the sensor frame in Pascals | -| baro_offset_1 | `float32` | | | barometric pressure 1 offsets in the sensor frame in Pascals | -| baro_offset_2 | `float32` | | | barometric pressure 2 offsets in the sensor frame in Pascals | -| baro_offset_3 | `float32` | | | barometric pressure 3 offsets in the sensor frame in Pascals | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| accel_device_ids | `uint32[4]` | | | | +| accel_temperature | `float32[4]` | | | | +| accel_offset_0 | `float32[3]` | | | accelerometer 0 offsets in the FRD board frame XYZ-axis in m/s^s | +| accel_offset_1 | `float32[3]` | | | accelerometer 1 offsets in the FRD board frame XYZ-axis in m/s^s | +| accel_offset_2 | `float32[3]` | | | accelerometer 2 offsets in the FRD board frame XYZ-axis in m/s^s | +| accel_offset_3 | `float32[3]` | | | accelerometer 3 offsets in the FRD board frame XYZ-axis in m/s^s | +| gyro_device_ids | `uint32[4]` | | | | +| gyro_temperature | `float32[4]` | | | | +| gyro_offset_0 | `float32[3]` | | | gyro 0 XYZ offsets in the sensor frame in rad/s | +| gyro_offset_1 | `float32[3]` | | | gyro 1 XYZ offsets in the sensor frame in rad/s | +| gyro_offset_2 | `float32[3]` | | | gyro 2 XYZ offsets in the sensor frame in rad/s | +| gyro_offset_3 | `float32[3]` | | | gyro 3 XYZ offsets in the sensor frame in rad/s | +| mag_device_ids | `uint32[4]` | | | | +| mag_temperature | `float32[4]` | | | | +| mag_offset_0 | `float32[3]` | | | magnetometer 0 offsets in the FRD board frame XYZ-axis in m/s^s | +| mag_offset_1 | `float32[3]` | | | magnetometer 1 offsets in the FRD board frame XYZ-axis in m/s^s | +| mag_offset_2 | `float32[3]` | | | magnetometer 2 offsets in the FRD board frame XYZ-axis in m/s^s | +| mag_offset_3 | `float32[3]` | | | magnetometer 3 offsets in the FRD board frame XYZ-axis in m/s^s | +| baro_device_ids | `uint32[4]` | | | | +| baro_temperature | `float32[4]` | | | | +| baro_offset_0 | `float32` | | | barometric pressure 0 offsets in the sensor frame in Pascals | +| baro_offset_1 | `float32` | | | barometric pressure 1 offsets in the sensor frame in Pascals | +| baro_offset_2 | `float32` | | | barometric pressure 2 offsets in the sensor frame in Pascals | +| baro_offset_3 | `float32` | | | barometric pressure 3 offsets in the sensor frame in Pascals | ## Source Message diff --git a/docs/uk/msg_docs/SensorGnssRelative.md b/docs/uk/msg_docs/SensorGnssRelative.md index a459d0098e..4089ee3281 100644 --- a/docs/uk/msg_docs/SensorGnssRelative.md +++ b/docs/uk/msg_docs/SensorGnssRelative.md @@ -10,29 +10,29 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| time_utc_usec | `uint64` | | | Timestamp (microseconds, UTC), this is the timestamp which comes from the gps module. It might be unavailable right after cold start, indicated by a value of 0 | -| reference_station_id | `uint16` | | | Reference Station ID | -| положення | `float32[3]` | | | GPS NED relative position vector (m) | -| position_accuracy | `float32[3]` | | | Accuracy of relative position (m) | -| heading | `float32` | | | Heading of the relative position vector (radians) | -| heading_accuracy | `float32` | | | Accuracy of heading of the relative position vector (radians) | -| position_length | `float32` | | | Length of the position vector (m) | -| accuracy_length | `float32` | | | Accuracy of the position length (m) | -| gnss_fix_ok | `bool` | | | GNSS valid fix (i.e within DOP & accuracy masks) | -| differential_solution | `bool` | | | differential corrections were applied | -| relative_position_valid | `bool` | | | | -| carrier_solution_floating | `bool` | | | carrier phase range solution with floating ambiguities | -| carrier_solution_fixed | `bool` | | | carrier phase range solution with fixed ambiguities | -| moving_base_mode | `bool` | | | if the receiver is operating in moving base mode | -| reference_position_miss | `bool` | | | extrapolated reference position was used to compute moving base solution this epoch | -| reference_observations_miss | `bool` | | | extrapolated reference observations were used to compute moving base solution this epoch | -| heading_valid | `bool` | | | | -| relative_position_normalized | `bool` | | | the components of the relative position vector (including the high-precision parts) are normalized | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| time_utc_usec | `uint64` | | | Timestamp (microseconds, UTC), this is the timestamp which comes from the gps module. It might be unavailable right after cold start, indicated by a value of 0 | +| reference_station_id | `uint16` | | | Reference Station ID | +| position | `float32[3]` | | | GPS NED relative position vector (m) | +| position_accuracy | `float32[3]` | | | Accuracy of relative position (m) | +| heading | `float32` | | | Heading of the relative position vector (radians) | +| heading_accuracy | `float32` | | | Accuracy of heading of the relative position vector (radians) | +| position_length | `float32` | | | Length of the position vector (m) | +| accuracy_length | `float32` | | | Accuracy of the position length (m) | +| gnss_fix_ok | `bool` | | | GNSS valid fix (i.e within DOP & accuracy masks) | +| differential_solution | `bool` | | | differential corrections were applied | +| relative_position_valid | `bool` | | | | +| carrier_solution_floating | `bool` | | | carrier phase range solution with floating ambiguities | +| carrier_solution_fixed | `bool` | | | carrier phase range solution with fixed ambiguities | +| moving_base_mode | `bool` | | | if the receiver is operating in moving base mode | +| reference_position_miss | `bool` | | | extrapolated reference position was used to compute moving base solution this epoch | +| reference_observations_miss | `bool` | | | extrapolated reference observations were used to compute moving base solution this epoch | +| heading_valid | `bool` | | | | +| relative_position_normalized | `bool` | | | the components of the relative position vector (including the high-precision parts) are normalized | ## Source Message diff --git a/docs/uk/msg_docs/SensorGnssStatus.md b/docs/uk/msg_docs/SensorGnssStatus.md index f4cbac9a04..65465f2d85 100644 --- a/docs/uk/msg_docs/SensorGnssStatus.md +++ b/docs/uk/msg_docs/SensorGnssStatus.md @@ -10,15 +10,15 @@ Gnss quality indicators. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ----------------------------------------------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| `bool` | | | Set to true if quality indicators are available | | -| quality_corrections | `uint8` | | | Corrections quality from 0 to 10, or 255 if not available | -| quality_receiver | `uint8` | | | Overall receiver operating status from 0 to 10, or 255 if not available | -| quality_gnss_signals | `uint8` | | | Quality of GNSS signals from 0 to 10, or 255 if not available | -| quality_post_processing | `uint8` | | | Expected post processing quality from 0 to 10, or 255 if not available | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| | `bool` | | | Set to true if quality indicators are available | +| quality_corrections | `uint8` | | | Corrections quality from 0 to 10, or 255 if not available | +| quality_receiver | `uint8` | | | Overall receiver operating status from 0 to 10, or 255 if not available | +| quality_gnss_signals | `uint8` | | | Quality of GNSS signals from 0 to 10, or 255 if not available | +| quality_post_processing | `uint8` | | | Expected post processing quality from 0 to 10, or 255 if not available | ## Source Message diff --git a/docs/uk/msg_docs/SensorGps.md b/docs/uk/msg_docs/SensorGps.md index 3ec35115b2..4fbea9a3b0 100644 --- a/docs/uk/msg_docs/SensorGps.md +++ b/docs/uk/msg_docs/SensorGps.md @@ -10,48 +10,48 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| latitude_deg | `float64` | | | Latitude in degrees, allows centimeter level RTK precision | -| longitude_deg | `float64` | | | Longitude in degrees, allows centimeter level RTK precision | -| altitude_msl_m | `float64` | | | Altitude above MSL, meters | -| altitude_ellipsoid_m | `float64` | | | Altitude above Ellipsoid, meters | -| s_variance_m_s | `float32` | | | GPS speed accuracy estimate, (metres/sec) | -| c_variance_rad | `float32` | | | GPS course accuracy estimate, (radians) | -| fix_type | `uint8` | | | Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. | -| eph | `float32` | | | GPS horizontal position accuracy (metres) | -| epv | `float32` | | | GPS vertical position accuracy (metres) | -| hdop | `float32` | | | Horizontal dilution of precision | -| vdop | `float32` | | | Vertical dilution of precision | -| noise_per_ms | `int32` | | | GPS noise per millisecond | -| automatic_gain_control | `uint16` | | | Automatic gain control monitor | -| jamming_state | `uint8` | | | indicates whether jamming has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Mitigated, 3: Detected | -| jamming_indicator | `int32` | | | indicates jamming is occurring | -| spoofing_state | `uint8` | | | indicates whether spoofing has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Mitigated, 3: Detected | -| authentication_state | `uint8` | | | GPS signal authentication state | -| vel_m_s | `float32` | | | GPS ground speed, (metres/sec) | -| vel_n_m_s | `float32` | | | GPS North velocity, (metres/sec) | -| vel_e_m_s | `float32` | | | GPS East velocity, (metres/sec) | -| vel_d_m_s | `float32` | | | GPS Down velocity, (metres/sec) | -| cog_rad | `float32` | | | Course over ground (NOT heading, but direction of movement), -PI..PI, (radians) | -| vel_ned_valid | `bool` | | | True if NED velocity is valid | -| timestamp_time_relative | `int32` | | | timestamp + timestamp_time_relative = Time of the UTC timestamp since system start, (microseconds) | -| time_utc_usec | `uint64` | | | Timestamp (microseconds, UTC), this is the timestamp which comes from the gps module. It might be unavailable right after cold start, indicated by a value of 0 | -| satellites_used | `uint8` | | | Number of satellites used | -| system_error | `uint32` | | | General errors with the connected GPS receiver | -| heading | `float32` | | | heading angle of XYZ body frame rel to NED. Set to NaN if not available and updated (used for dual antenna GPS), (rad, [-PI, PI]) | -| heading_offset | `float32` | | | heading offset of dual antenna array in body frame. Set to NaN if not applicable. (rad, [-PI, PI]) | -| heading_accuracy | `float32` | | | heading accuracy (rad, [0, 2PI]) | -| rtcm_injection_rate | `float32` | | | RTCM message injection rate Hz | -| selected_rtcm_instance | `uint8` | | | uorb instance that is being used for RTCM corrections | -| rtcm_crc_failed | `bool` | | | RTCM message CRC failure detected | -| rtcm_msg_used | `uint8` | | | Indicates if the RTCM message was used successfully by the receiver | -| antenna_offset_x | `float32` | m [body frame FRD] | | X Position of GNSS antenna | -| antenna_offset_y | `float32` | m [body frame FRD] | | Y Position of GNSS antenna | -| antenna_offset_z | `float32` | m [body frame FRD] | | Z Position of GNSS antenna | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| latitude_deg | `float64` | | | Latitude in degrees, allows centimeter level RTK precision | +| longitude_deg | `float64` | | | Longitude in degrees, allows centimeter level RTK precision | +| altitude_msl_m | `float64` | | | Altitude above MSL, meters | +| altitude_ellipsoid_m | `float64` | | | Altitude above Ellipsoid, meters | +| s_variance_m_s | `float32` | | | GPS speed accuracy estimate, (metres/sec) | +| c_variance_rad | `float32` | | | GPS course accuracy estimate, (radians) | +| fix_type | `uint8` | | | Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. | +| eph | `float32` | | | GPS horizontal position accuracy (metres) | +| epv | `float32` | | | GPS vertical position accuracy (metres) | +| hdop | `float32` | | | Horizontal dilution of precision | +| vdop | `float32` | | | Vertical dilution of precision | +| noise_per_ms | `int32` | | | GPS noise per millisecond | +| automatic_gain_control | `uint16` | | | Automatic gain control monitor | +| jamming_state | `uint8` | | | indicates whether jamming has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Mitigated, 3: Detected | +| jamming_indicator | `int32` | | | indicates jamming is occurring | +| spoofing_state | `uint8` | | | indicates whether spoofing has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Mitigated, 3: Detected | +| authentication_state | `uint8` | | | GPS signal authentication state | +| vel_m_s | `float32` | | | GPS ground speed, (metres/sec) | +| vel_n_m_s | `float32` | | | GPS North velocity, (metres/sec) | +| vel_e_m_s | `float32` | | | GPS East velocity, (metres/sec) | +| vel_d_m_s | `float32` | | | GPS Down velocity, (metres/sec) | +| cog_rad | `float32` | | | Course over ground (NOT heading, but direction of movement), -PI..PI, (radians) | +| vel_ned_valid | `bool` | | | True if NED velocity is valid | +| timestamp_time_relative | `int32` | | | timestamp + timestamp_time_relative = Time of the UTC timestamp since system start, (microseconds) | +| time_utc_usec | `uint64` | | | Timestamp (microseconds, UTC), this is the timestamp which comes from the gps module. It might be unavailable right after cold start, indicated by a value of 0 | +| satellites_used | `uint8` | | | Number of satellites used | +| system_error | `uint32` | | | General errors with the connected GPS receiver | +| heading | `float32` | | | heading angle of XYZ body frame rel to NED. Set to NaN if not available and updated (used for dual antenna GPS), (rad, [-PI, PI]) | +| heading_offset | `float32` | | | heading offset of dual antenna array in body frame. Set to NaN if not applicable. (rad, [-PI, PI]) | +| heading_accuracy | `float32` | | | heading accuracy (rad, [0, 2PI]) | +| rtcm_injection_rate | `float32` | | | RTCM message injection rate Hz | +| selected_rtcm_instance | `uint8` | | | uorb instance that is being used for RTCM corrections | +| rtcm_crc_failed | `bool` | | | RTCM message CRC failure detected | +| rtcm_msg_used | `uint8` | | | Indicates if the RTCM message was used successfully by the receiver | +| antenna_offset_x | `float32` | m [body frame FRD] | | X Position of GNSS antenna | +| antenna_offset_y | `float32` | m [body frame FRD] | | Y Position of GNSS antenna | +| antenna_offset_z | `float32` | m [body frame FRD] | | Z Position of GNSS antenna | ## Constants diff --git a/docs/uk/msg_docs/SensorGyro.md b/docs/uk/msg_docs/SensorGyro.md index c8a7aa29ff..1a2932512b 100644 --- a/docs/uk/msg_docs/SensorGyro.md +++ b/docs/uk/msg_docs/SensorGyro.md @@ -8,18 +8,18 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| x | `float32` | | | angular velocity in the FRD board frame X-axis in rad/s | -| y | `float32` | | | angular velocity in the FRD board frame Y-axis in rad/s | -| z | `float32` | | | angular velocity in the FRD board frame Z-axis in rad/s | -| temperature | `float32` | | | temperature in degrees Celsius | -| error_count | `uint32` | | | | -| clip_counter | `uint8[3]` | | | clip count per axis in the sample period | -| samples | `uint8` | | | number of raw samples that went into this message | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| x | `float32` | | | angular velocity in the FRD board frame X-axis in rad/s | +| y | `float32` | | | angular velocity in the FRD board frame Y-axis in rad/s | +| z | `float32` | | | angular velocity in the FRD board frame Z-axis in rad/s | +| temperature | `float32` | | | temperature in degrees Celsius | +| error_count | `uint32` | | | | +| clip_counter | `uint8[3]` | | | clip count per axis in the sample period | +| samples | `uint8` | | | number of raw samples that went into this message | ## Constants diff --git a/docs/uk/msg_docs/SensorGyroFft.md b/docs/uk/msg_docs/SensorGyroFft.md index d407024df1..22a4b7396a 100644 --- a/docs/uk/msg_docs/SensorGyroFft.md +++ b/docs/uk/msg_docs/SensorGyroFft.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| sensor_sample_rate_hz | `float32` | | | | -| resolution_hz | `float32` | | | | -| peak_frequencies_x | `float32[3]` | | | x axis peak frequencies | -| peak_frequencies_y | `float32[3]` | | | y axis peak frequencies | -| peak_frequencies_z | `float32[3]` | | | z axis peak frequencies | -| peak_snr_x | `float32[3]` | | | x axis peak SNR | -| peak_snr_y | `float32[3]` | | | y axis peak SNR | -| peak_snr_z | `float32[3]` | | | z axis peak SNR | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| sensor_sample_rate_hz | `float32` | | | | +| resolution_hz | `float32` | | | | +| peak_frequencies_x | `float32[3]` | | | x axis peak frequencies | +| peak_frequencies_y | `float32[3]` | | | y axis peak frequencies | +| peak_frequencies_z | `float32[3]` | | | z axis peak frequencies | +| peak_snr_x | `float32[3]` | | | x axis peak SNR | +| peak_snr_y | `float32[3]` | | | y axis peak SNR | +| peak_snr_z | `float32[3]` | | | z axis peak SNR | ## Source Message diff --git a/docs/uk/msg_docs/SensorGyroFifo.md b/docs/uk/msg_docs/SensorGyroFifo.md index 981577a76c..0b8df8d00b 100644 --- a/docs/uk/msg_docs/SensorGyroFifo.md +++ b/docs/uk/msg_docs/SensorGyroFifo.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| dt | `float32` | | | delta time between samples (microseconds) | -| scale | `float32` | | | | -| samples | `uint8` | | | number of valid samples | -| x | `int16[32]` | | | angular velocity in the FRD board frame X-axis in rad/s | -| y | `int16[32]` | | | angular velocity in the FRD board frame Y-axis in rad/s | -| z | `int16[32]` | | | angular velocity in the FRD board frame Z-axis in rad/s | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| dt | `float32` | | | delta time between samples (microseconds) | +| scale | `float32` | | | | +| samples | `uint8` | | | number of valid samples | +| x | `int16[32]` | | | angular velocity in the FRD board frame X-axis in rad/s | +| y | `int16[32]` | | | angular velocity in the FRD board frame Y-axis in rad/s | +| z | `int16[32]` | | | angular velocity in the FRD board frame Z-axis in rad/s | ## Constants diff --git a/docs/uk/msg_docs/SensorHygrometer.md b/docs/uk/msg_docs/SensorHygrometer.md index 0589b43b24..2ad38fdda4 100644 --- a/docs/uk/msg_docs/SensorHygrometer.md +++ b/docs/uk/msg_docs/SensorHygrometer.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | --------- | ---------------------------------------------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| `float32` | | | Temperature provided by sensor (Celsius) | | -| humidity | `float32` | | | Humidity provided by sensor | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| | `float32` | | | Temperature provided by sensor (Celsius) | +| humidity | `float32` | | | Humidity provided by sensor | ## Source Message diff --git a/docs/uk/msg_docs/SensorMag.md b/docs/uk/msg_docs/SensorMag.md index 18eb238d0b..b7f6cab074 100644 --- a/docs/uk/msg_docs/SensorMag.md +++ b/docs/uk/msg_docs/SensorMag.md @@ -8,16 +8,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| x | `float32` | | | magnetic field in the FRD board frame X-axis in Gauss | -| y | `float32` | | | magnetic field in the FRD board frame Y-axis in Gauss | -| z | `float32` | | | magnetic field in the FRD board frame Z-axis in Gauss | -| temperature | `float32` | | | temperature in degrees Celsius | -| error_count | `uint32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| x | `float32` | | | magnetic field in the FRD board frame X-axis in Gauss | +| y | `float32` | | | magnetic field in the FRD board frame Y-axis in Gauss | +| z | `float32` | | | magnetic field in the FRD board frame Z-axis in Gauss | +| temperature | `float32` | | | temperature in degrees Celsius | +| error_count | `uint32` | | | | ## Constants diff --git a/docs/uk/msg_docs/SensorOpticalFlow.md b/docs/uk/msg_docs/SensorOpticalFlow.md index d9acccbeb0..7ed6a2e605 100644 --- a/docs/uk/msg_docs/SensorOpticalFlow.md +++ b/docs/uk/msg_docs/SensorOpticalFlow.md @@ -8,23 +8,23 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| pixel_flow | `float32[2]` | | | (radians) optical flow in radians where a positive value is produced by a RH rotation of the sensor about the body axis | -| delta_angle | `float32[3]` | | | (radians) accumulated gyro radians where a positive value is produced by a RH rotation about the body axis. Set to NaN if flow sensor does not have 3-axis gyro data. | -| delta_angle_available | `bool` | | | | -| distance_m | `float32` | | | (meters) Distance to the center of the flow field | -| distance_available | `bool` | | | | -| integration_timespan_us | `uint32` | | | (microseconds) accumulation timespan in microseconds | -| quality | `uint8` | | | quality, 0: bad quality, 255: maximum quality | -| error_count | `uint32` | | | | -| max_flow_rate | `float32` | | | (radians/s) Magnitude of maximum angular which the optical flow sensor can measure reliably | -| min_ground_distance | `float32` | | | (meters) Minimum distance from ground at which the optical flow sensor operates reliably | -| max_ground_distance | `float32` | | | (meters) Maximum distance from ground at which the optical flow sensor operates reliably | -| mode | `uint8` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| pixel_flow | `float32[2]` | | | (radians) optical flow in radians where a positive value is produced by a RH rotation of the sensor about the body axis | +| delta_angle | `float32[3]` | | | (radians) accumulated gyro radians where a positive value is produced by a RH rotation about the body axis. Set to NaN if flow sensor does not have 3-axis gyro data. | +| delta_angle_available | `bool` | | | | +| distance_m | `float32` | | | (meters) Distance to the center of the flow field | +| distance_available | `bool` | | | | +| integration_timespan_us | `uint32` | | | (microseconds) accumulation timespan in microseconds | +| quality | `uint8` | | | quality, 0: bad quality, 255: maximum quality | +| error_count | `uint32` | | | | +| max_flow_rate | `float32` | | | (radians/s) Magnitude of maximum angular which the optical flow sensor can measure reliably | +| min_ground_distance | `float32` | | | (meters) Minimum distance from ground at which the optical flow sensor operates reliably | +| max_ground_distance | `float32` | | | (meters) Maximum distance from ground at which the optical flow sensor operates reliably | +| mode | `uint8` | | | | ## Constants diff --git a/docs/uk/msg_docs/SensorPreflightMag.md b/docs/uk/msg_docs/SensorPreflightMag.md index f4b1de646b..4c244f84d7 100644 --- a/docs/uk/msg_docs/SensorPreflightMag.md +++ b/docs/uk/msg_docs/SensorPreflightMag.md @@ -10,10 +10,10 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| mag_inconsistency_angle | `float32` | | | maximum angle between magnetometer instance field vectors in radians. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| mag_inconsistency_angle | `float32` | | | maximum angle between magnetometer instance field vectors in radians. | ## Source Message diff --git a/docs/uk/msg_docs/SensorSelection.md b/docs/uk/msg_docs/SensorSelection.md index 805128dc21..6d26c14090 100644 --- a/docs/uk/msg_docs/SensorSelection.md +++ b/docs/uk/msg_docs/SensorSelection.md @@ -10,11 +10,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| accel_device_id | `uint32` | | | unique device ID for the selected accelerometers | -| gyro_device_id | `uint32` | | | unique device ID for the selected rate gyros | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| accel_device_id | `uint32` | | | unique device ID for the selected accelerometers | +| gyro_device_id | `uint32` | | | unique device ID for the selected rate gyros | ## Source Message diff --git a/docs/uk/msg_docs/SensorTemp.md b/docs/uk/msg_docs/SensorTemp.md index 5aafcaf494..a4dd9a3081 100644 --- a/docs/uk/msg_docs/SensorTemp.md +++ b/docs/uk/msg_docs/SensorTemp.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------ | -------- | ---------------------------------------------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| `float32` | | | Temperature provided by sensor (Celsius) | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| | `float32` | | | Temperature provided by sensor (Celsius) | ## Source Message diff --git a/docs/uk/msg_docs/SensorUwb.md b/docs/uk/msg_docs/SensorUwb.md index b3a3053c00..577a866065 100644 --- a/docs/uk/msg_docs/SensorUwb.md +++ b/docs/uk/msg_docs/SensorUwb.md @@ -10,29 +10,29 @@ UWB distance contains the distance information measured by an ultra-wideband pos ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| sessionid | `uint32` | | | UWB SessionID | -| time_offset | `uint32` | | | Time between Ranging Rounds in ms | -| counter | `uint32` | | | Number of Ranges since last Start of Ranging | -| mac | `uint16` | | | MAC adress of Initiator (controller) | -| mac_dest | `uint16` | | | MAC adress of Responder (Controlee) | -| status | `uint16` | | | status feedback # | -| nlos | `uint8` | | | None line of site condition y/n | -| distance | `float32` | | | distance in m to the UWB receiver | -| aoa_azimuth_dev | `float32` | | | Angle of arrival of first incomming RX msg | -| aoa_elevation_dev | `float32` | | | Angle of arrival of first incomming RX msg | -| aoa_azimuth_resp | `float32` | | | Angle of arrival of first incomming RX msg at the responder | -| aoa_elevation_resp | `float32` | | | Angle of arrival of first incomming RX msg at the responder | -| aoa_azimuth_fom | `uint8` | | | AOA Azimuth FOM | -| aoa_elevation_fom | `uint8` | | | AOA Elevation FOM | -| aoa_dest_azimuth_fom | `uint8` | | | AOA Azimuth FOM | -| aoa_dest_elevation_fom | `uint8` | | | AOA Elevation FOM | -| orientation | `uint8` | | | Direction the sensor faces from MAV_SENSOR_ORIENTATION enum | -| offset_x | `float32` | | | UWB initiator offset in X axis (NED drone frame) | -| offset_y | `float32` | | | UWB initiator offset in Y axis (NED drone frame) | -| offset_z | `float32` | | | UWB initiator offset in Z axis (NED drone frame) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| sessionid | `uint32` | | | UWB SessionID | +| time_offset | `uint32` | | | Time between Ranging Rounds in ms | +| counter | `uint32` | | | Number of Ranges since last Start of Ranging | +| mac | `uint16` | | | MAC adress of Initiator (controller) | +| mac_dest | `uint16` | | | MAC adress of Responder (Controlee) | +| status | `uint16` | | | status feedback # | +| nlos | `uint8` | | | None line of site condition y/n | +| distance | `float32` | | | distance in m to the UWB receiver | +| aoa_azimuth_dev | `float32` | | | Angle of arrival of first incomming RX msg | +| aoa_elevation_dev | `float32` | | | Angle of arrival of first incomming RX msg | +| aoa_azimuth_resp | `float32` | | | Angle of arrival of first incomming RX msg at the responder | +| aoa_elevation_resp | `float32` | | | Angle of arrival of first incomming RX msg at the responder | +| aoa_azimuth_fom | `uint8` | | | AOA Azimuth FOM | +| aoa_elevation_fom | `uint8` | | | AOA Elevation FOM | +| aoa_dest_azimuth_fom | `uint8` | | | AOA Azimuth FOM | +| aoa_dest_elevation_fom | `uint8` | | | AOA Elevation FOM | +| orientation | `uint8` | | | Direction the sensor faces from MAV_SENSOR_ORIENTATION enum | +| offset_x | `float32` | | | UWB initiator offset in X axis (NED drone frame) | +| offset_y | `float32` | | | UWB initiator offset in Y axis (NED drone frame) | +| offset_z | `float32` | | | UWB initiator offset in Z axis (NED drone frame) | ## Source Message diff --git a/docs/uk/msg_docs/SensorsStatus.md b/docs/uk/msg_docs/SensorsStatus.md index 16703b8b07..54189a9c18 100644 --- a/docs/uk/msg_docs/SensorsStatus.md +++ b/docs/uk/msg_docs/SensorsStatus.md @@ -10,16 +10,16 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| device_id_primary | `uint32` | | | current primary device id for reference | -| device_ids | `uint32[4]` | | | | -| inconsistency | `float32[4]` | | | magnitude of difference between sensor instance and mean | -| healthy | `bool[4]` | | | sensor healthy | -| priority | `uint8[4]` | | | | -| enabled | `bool[4]` | | | | -| external | `bool[4]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| device_id_primary | `uint32` | | | current primary device id for reference | +| device_ids | `uint32[4]` | | | | +| inconsistency | `float32[4]` | | | magnitude of difference between sensor instance and mean | +| healthy | `bool[4]` | | | sensor healthy | +| priority | `uint8[4]` | | | | +| enabled | `bool[4]` | | | | +| external | `bool[4]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/SensorsStatusImu.md b/docs/uk/msg_docs/SensorsStatusImu.md index d4d8beb01d..571ce574ce 100644 --- a/docs/uk/msg_docs/SensorsStatusImu.md +++ b/docs/uk/msg_docs/SensorsStatusImu.md @@ -10,19 +10,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| accel_device_id_primary | `uint32` | | | current primary accel device id for reference | -| accel_device_ids | `uint32[4]` | | | | -| accel_inconsistency_m_s_s | `float32[4]` | | | magnitude of acceleration difference between IMU instance and mean in m/s^2. | -| accel_healthy | `bool[4]` | | | | -| accel_priority | `uint8[4]` | | | | -| gyro_device_id_primary | `uint32` | | | current primary gyro device id for reference | -| gyro_device_ids | `uint32[4]` | | | | -| gyro_inconsistency_rad_s | `float32[4]` | | | magnitude of angular rate difference between IMU instance and mean in (rad/s). | -| gyro_healthy | `bool[4]` | | | | -| gyro_priority | `uint8[4]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| accel_device_id_primary | `uint32` | | | current primary accel device id for reference | +| accel_device_ids | `uint32[4]` | | | | +| accel_inconsistency_m_s_s | `float32[4]` | | | magnitude of acceleration difference between IMU instance and mean in m/s^2. | +| accel_healthy | `bool[4]` | | | | +| accel_priority | `uint8[4]` | | | | +| gyro_device_id_primary | `uint32` | | | current primary gyro device id for reference | +| gyro_device_ids | `uint32[4]` | | | | +| gyro_inconsistency_rad_s | `float32[4]` | | | magnitude of angular rate difference between IMU instance and mean in (rad/s). | +| gyro_healthy | `bool[4]` | | | | +| gyro_priority | `uint8[4]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/SystemPower.md b/docs/uk/msg_docs/SystemPower.md index 48dcbd8e69..8278f6b398 100644 --- a/docs/uk/msg_docs/SystemPower.md +++ b/docs/uk/msg_docs/SystemPower.md @@ -8,22 +8,22 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| voltage5v_v | `float32` | | | peripheral 5V rail voltage | -| voltage_payload_v | `float32` | | | payload rail voltage | -| sensors3v3 | `float32[4]` | | | Sensors 3V3 rail voltage | -| sensors3v3_valid | `uint8` | | | Sensors 3V3 rail voltage was read (bitfield). | -| usb_connected | `uint8` | | | USB is connected when 1 | -| brick_valid | `uint8` | | | brick bits power is good when bit 1 | -| usb_valid | `uint8` | | | USB is valid when 1 | -| servo_valid | `uint8` | | | servo power is good when 1 | -| periph_5v_oc | `uint8` | | | peripheral overcurrent when 1 | -| hipower_5v_oc | `uint8` | | | high power peripheral overcurrent when 1 | -| comp_5v_valid | `uint8` | | | 5V to companion valid | -| can1_gps1_5v_valid | `uint8` | | | 5V for CAN1/GPS1 valid | -| payload_v_valid | `uint8` | | | payload rail voltage is valid | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| voltage5v_v | `float32` | | | peripheral 5V rail voltage | +| voltage_payload_v | `float32` | | | payload rail voltage | +| sensors3v3 | `float32[4]` | | | Sensors 3V3 rail voltage | +| sensors3v3_valid | `uint8` | | | Sensors 3V3 rail voltage was read (bitfield). | +| usb_connected | `uint8` | | | USB is connected when 1 | +| brick_valid | `uint8` | | | brick bits power is good when bit 1 | +| usb_valid | `uint8` | | | USB is valid when 1 | +| servo_valid | `uint8` | | | servo power is good when 1 | +| periph_5v_oc | `uint8` | | | peripheral overcurrent when 1 | +| hipower_5v_oc | `uint8` | | | high power peripheral overcurrent when 1 | +| comp_5v_valid | `uint8` | | | 5V to companion valid | +| can1_gps1_5v_valid | `uint8` | | | 5V for CAN1/GPS1 valid | +| payload_v_valid | `uint8` | | | payload rail voltage is valid | ## Constants diff --git a/docs/uk/msg_docs/TakeoffStatus.md b/docs/uk/msg_docs/TakeoffStatus.md index f7e1fbe997..509c02d94f 100644 --- a/docs/uk/msg_docs/TakeoffStatus.md +++ b/docs/uk/msg_docs/TakeoffStatus.md @@ -10,11 +10,11 @@ Status of the takeoff state machine currently just available for multicopters. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| takeoff_state | `uint8` | | | | -| tilt_limit | `float32` | | | limited tilt feasibility during takeoff, contains maximum tilt otherwise | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| takeoff_state | `uint8` | | | | +| tilt_limit | `float32` | | | limited tilt feasibility during takeoff, contains maximum tilt otherwise | ## Constants diff --git a/docs/uk/msg_docs/TargetGnss.md b/docs/uk/msg_docs/TargetGnss.md new file mode 100644 index 0000000000..34e3c20133 --- /dev/null +++ b/docs/uk/msg_docs/TargetGnss.md @@ -0,0 +1,70 @@ +--- +pageClass: is-wide-page +--- + +# TargetGnss (UORB message) + +Landing target GNSS position in WGS84 coordinates, and optional NED velocity, from a target-mounted receiver. + +Published by: mavlink_receiver (when decoding TARGET_ABSOLUTE with position/velocity capability bits set). +Subscribed by: vision_target_estimator (VTEPosition). + +abs_pos_updated / vel_ned_updated tell the estimator which fields in this sample are fresh. + +**TOPICS:** target_gnss + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------ | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw observation | +| latitude_deg | `float64` | deg | | Latitude, allows centimeter level RTK precision | +| longitude_deg | `float64` | deg | | Longitude, allows centimeter level RTK precision | +| altitude_msl_m | `float32` | m | | Altitude above MSL | +| eph | `float32` | m | | GNSS horizontal position accuracy | +| epv | `float32` | m | | GNSS vertical position accuracy | +| abs_pos_updated | `bool` | | | True if WGS84 position is updated | +| vel_n_m_s | `float32` | m/s | | GNSS North velocity | +| vel_e_m_s | `float32` | m/s | | GNSS East velocity | +| vel_d_m_s | `float32` | m/s | | GNSS Down velocity | +| s_acc_m_s | `float32` | m/s | | GNSS speed accuracy estimate | +| vel_ned_updated | `bool` | | | True if NED velocity is updated | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/TargetGnss.msg) + +:::details +Click here to see original file + +```c +# Landing target GNSS position in WGS84 coordinates, and optional NED velocity, from a target-mounted receiver. +# +# Published by: mavlink_receiver (when decoding TARGET_ABSOLUTE with position/velocity capability bits set). +# Subscribed by: vision_target_estimator (VTEPosition). +# +# abs_pos_updated / vel_ned_updated tell the estimator which fields in this sample are fresh. + +uint64 timestamp # [us] Time since system start +uint64 timestamp_sample # [us] Timestamp of the raw observation + +float64 latitude_deg # [deg] Latitude, allows centimeter level RTK precision +float64 longitude_deg # [deg] Longitude, allows centimeter level RTK precision +float32 altitude_msl_m # [m] Altitude above MSL + +float32 eph # [m] GNSS horizontal position accuracy +float32 epv # [m] GNSS vertical position accuracy + +bool abs_pos_updated # True if WGS84 position is updated + +float32 vel_n_m_s # [m/s] GNSS North velocity +float32 vel_e_m_s # [m/s] GNSS East velocity +float32 vel_d_m_s # [m/s] GNSS Down velocity + +float32 s_acc_m_s # [m/s] GNSS speed accuracy estimate + +bool vel_ned_updated # True if NED velocity is updated +``` + +::: diff --git a/docs/uk/msg_docs/TaskStackInfo.md b/docs/uk/msg_docs/TaskStackInfo.md index 2189c2181d..6522123048 100644 --- a/docs/uk/msg_docs/TaskStackInfo.md +++ b/docs/uk/msg_docs/TaskStackInfo.md @@ -10,11 +10,11 @@ stack information for a single running process. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| stack_free | `uint16` | | | | -| task_name | `char[24]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| stack_free | `uint16` | | | | +| task_name | `char[24]` | | | | ## Constants diff --git a/docs/uk/msg_docs/TecsStatus.md b/docs/uk/msg_docs/TecsStatus.md index e74953099a..b14d0ae414 100644 --- a/docs/uk/msg_docs/TecsStatus.md +++ b/docs/uk/msg_docs/TecsStatus.md @@ -8,33 +8,33 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| altitude_sp | `float32` | | | Altitude setpoint AMSL [m] | -| altitude_reference | `float32` | | | Altitude setpoint reference AMSL [m] | -| altitude_time_constant | `float32` | | | Time constant of the altitude tracker [s] | -| height_rate_reference | `float32` | | | Height rate setpoint reference [m/s] | -| height_rate_direct | `float32` | | | Direct height rate setpoint from velocity reference generator [m/s] | -| height_rate_setpoint | `float32` | | | Height rate setpoint [m/s] | -| height_rate | `float32` | | | Height rate [m/s] | -| equivalent_airspeed_sp | `float32` | | | Equivalent airspeed setpoint [m/s] | -| true_airspeed_sp | `float32` | | | True airspeed setpoint [m/s] | -| true_airspeed_filtered | `float32` | | | True airspeed filtered [m/s] | -| true_airspeed_derivative_sp | `float32` | | | True airspeed derivative setpoint [m/s^2] | -| true_airspeed_derivative | `float32` | | | True airspeed derivative [m/s^2] | -| true_airspeed_derivative_raw | `float32` | | | True airspeed derivative raw [m/s^2] | -| total_energy_rate_sp | `float32` | | | Total energy rate setpoint [m^2/s^3] | -| total_energy_rate | `float32` | | | Total energy rate estimate [m^2/s^3] | -| total_energy_balance_rate_sp | `float32` | | | Energy balance rate setpoint [m^2/s^3] | -| total_energy_balance_rate | `float32` | | | Energy balance rate estimate [m^2/s^3] | -| throttle_integ | `float32` | | | Throttle integrator value [-] | -| pitch_integ | `float32` | | | Pitch integrator value [rad] | -| throttle_sp | `float32` | | | Current throttle setpoint [-] | -| pitch_sp_rad | `float32` | | | Current pitch setpoint [rad] | -| throttle_trim | `float32` | | | estimated throttle value [0,1] required to fly level at equivalent_airspeed_sp in the current atmospheric conditions | -| underspeed_ratio | `float32` | | | 0: no underspeed, 1: maximal underspeed. Controller takes measures to avoid stall proportional to ratio if >0. | -| fast_descend_ratio | `float32` | | | value indicating if fast descend mode is enabled with ramp up and ramp down [0-1] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| altitude_sp | `float32` | | | Altitude setpoint AMSL [m] | +| altitude_reference | `float32` | | | Altitude setpoint reference AMSL [m] | +| altitude_time_constant | `float32` | | | Time constant of the altitude tracker [s] | +| height_rate_reference | `float32` | | | Height rate setpoint reference [m/s] | +| height_rate_direct | `float32` | | | Direct height rate setpoint from velocity reference generator [m/s] | +| height_rate_setpoint | `float32` | | | Height rate setpoint [m/s] | +| height_rate | `float32` | | | Height rate [m/s] | +| equivalent_airspeed_sp | `float32` | | | Equivalent airspeed setpoint [m/s] | +| true_airspeed_sp | `float32` | | | True airspeed setpoint [m/s] | +| true_airspeed_filtered | `float32` | | | True airspeed filtered [m/s] | +| true_airspeed_derivative_sp | `float32` | | | True airspeed derivative setpoint [m/s^2] | +| true_airspeed_derivative | `float32` | | | True airspeed derivative [m/s^2] | +| true_airspeed_derivative_raw | `float32` | | | True airspeed derivative raw [m/s^2] | +| total_energy_rate_sp | `float32` | | | Total energy rate setpoint [m^2/s^3] | +| total_energy_rate | `float32` | | | Total energy rate estimate [m^2/s^3] | +| total_energy_balance_rate_sp | `float32` | | | Energy balance rate setpoint [m^2/s^3] | +| total_energy_balance_rate | `float32` | | | Energy balance rate estimate [m^2/s^3] | +| throttle_integ | `float32` | | | Throttle integrator value [-] | +| pitch_integ | `float32` | | | Pitch integrator value [rad] | +| throttle_sp | `float32` | | | Current throttle setpoint [-] | +| pitch_sp_rad | `float32` | | | Current pitch setpoint [rad] | +| throttle_trim | `float32` | | | estimated throttle value [0,1] required to fly level at equivalent_airspeed_sp in the current atmospheric conditions | +| underspeed_ratio | `float32` | | | 0: no underspeed, 1: maximal underspeed. Controller takes measures to avoid stall proportional to ratio if >0. | +| fast_descend_ratio | `float32` | | | value indicating if fast descend mode is enabled with ramp up and ramp down [0-1] | ## Source Message diff --git a/docs/uk/msg_docs/TelemetryStatus.md b/docs/uk/msg_docs/TelemetryStatus.md index 8aeb7813e9..523d9f09d1 100644 --- a/docs/uk/msg_docs/TelemetryStatus.md +++ b/docs/uk/msg_docs/TelemetryStatus.md @@ -8,47 +8,47 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| type | `uint8` | | | type of the radio hardware (LINK_TYPE_\*) | -| mode | `uint8` | | | | -| flow_control | `bool` | | | | -| forwarding | `bool` | | | | -| mavlink_v2 | `bool` | | | | -| ftp | `bool` | | | | -| streams | `uint8` | | | | -| data_rate | `float32` | | | configured maximum data rate (Bytes/s) | -| rate_multiplier | `float32` | | | | -| tx_rate_avg | `float32` | | | transmit rate average (Bytes/s) | -| tx_error_rate_avg | `float32` | | | transmit error rate average (Bytes/s) | -| tx_message_count | `uint32` | | | total message sent count | -| tx_buffer_overruns | `uint32` | | | number of TX buffer overruns | -| rx_rate_avg | `float32` | | | transmit rate average (Bytes/s) | -| rx_message_count | `uint32` | | | count of total messages received | -| rx_message_lost_count | `uint32` | | | | -| rx_buffer_overruns | `uint32` | | | number of RX buffer overruns | -| rx_parse_errors | `uint32` | | | number of parse errors | -| rx_packet_drop_count | `uint32` | | | number of packet drops | -| rx_message_lost_rate | `float32` | | | | -| heartbeat_type_antenna_tracker | `bool` | | | MAV_TYPE_ANTENNA_TRACKER | -| heartbeat_type_gcs | `bool` | | | MAV_TYPE_GCS | -| heartbeat_type_onboard_controller | `bool` | | | MAV_TYPE_ONBOARD_CONTROLLER | -| heartbeat_type_gimbal | `bool` | | | MAV_TYPE_GIMBAL | -| heartbeat_type_adsb | `bool` | | | MAV_TYPE_ADSB | -| heartbeat_type_flarm | `bool` | | | MAV_TYPE_FLARM | -| heartbeat_type_camera | `bool` | | | MAV_TYPE_CAMERA | -| heartbeat_type_parachute | `bool` | | | MAV_TYPE_PARACHUTE | -| heartbeat_type_open_drone_id | `bool` | | | MAV_TYPE_ODID | -| heartbeat_component_telemetry_radio | `bool` | | | MAV_COMP_ID_TELEMETRY_RADIO | -| heartbeat_component_log | `bool` | | | MAV_COMP_ID_LOG | -| heartbeat_component_osd | `bool` | | | MAV_COMP_ID_OSD | -| heartbeat_component_vio | `bool` | | | MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY | -| heartbeat_component_pairing_manager | `bool` | | | MAV_COMP_ID_PAIRING_MANAGER | -| heartbeat_component_udp_bridge | `bool` | | | MAV_COMP_ID_UDP_BRIDGE | -| heartbeat_component_uart_bridge | `bool` | | | MAV_COMP_ID_UART_BRIDGE | -| open_drone_id_system_healthy | `bool` | | | | -| parachute_system_healthy | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| type | `uint8` | | | type of the radio hardware (LINK_TYPE_\*) | +| mode | `uint8` | | | | +| flow_control | `bool` | | | | +| forwarding | `bool` | | | | +| mavlink_v2 | `bool` | | | | +| ftp | `bool` | | | | +| streams | `uint8` | | | | +| data_rate | `float32` | | | configured maximum data rate (Bytes/s) | +| rate_multiplier | `float32` | | | | +| tx_rate_avg | `float32` | | | transmit rate average (Bytes/s) | +| tx_error_rate_avg | `float32` | | | transmit error rate average (Bytes/s) | +| tx_message_count | `uint32` | | | total message sent count | +| tx_buffer_overruns | `uint32` | | | number of TX buffer overruns | +| rx_rate_avg | `float32` | | | transmit rate average (Bytes/s) | +| rx_message_count | `uint32` | | | count of total messages received | +| rx_message_lost_count | `uint32` | | | | +| rx_buffer_overruns | `uint32` | | | number of RX buffer overruns | +| rx_parse_errors | `uint32` | | | number of parse errors | +| rx_packet_drop_count | `uint32` | | | number of packet drops | +| rx_message_lost_rate | `float32` | | | | +| heartbeat_type_antenna_tracker | `bool` | | | MAV_TYPE_ANTENNA_TRACKER | +| heartbeat_type_gcs | `bool` | | | MAV_TYPE_GCS | +| heartbeat_type_onboard_controller | `bool` | | | MAV_TYPE_ONBOARD_CONTROLLER | +| heartbeat_type_gimbal | `bool` | | | MAV_TYPE_GIMBAL | +| heartbeat_type_adsb | `bool` | | | MAV_TYPE_ADSB | +| heartbeat_type_flarm | `bool` | | | MAV_TYPE_FLARM | +| heartbeat_type_camera | `bool` | | | MAV_TYPE_CAMERA | +| heartbeat_type_parachute | `bool` | | | MAV_TYPE_PARACHUTE | +| heartbeat_type_open_drone_id | `bool` | | | MAV_TYPE_ODID | +| heartbeat_component_telemetry_radio | `bool` | | | MAV_COMP_ID_TELEMETRY_RADIO | +| heartbeat_component_log | `bool` | | | MAV_COMP_ID_LOG | +| heartbeat_component_osd | `bool` | | | MAV_COMP_ID_OSD | +| heartbeat_component_vio | `bool` | | | MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY | +| heartbeat_component_pairing_manager | `bool` | | | MAV_COMP_ID_PAIRING_MANAGER | +| heartbeat_component_udp_bridge | `bool` | | | MAV_COMP_ID_UDP_BRIDGE | +| heartbeat_component_uart_bridge | `bool` | | | MAV_COMP_ID_UART_BRIDGE | +| open_drone_id_system_healthy | `bool` | | | | +| parachute_system_healthy | `bool` | | | | ## Constants diff --git a/docs/uk/msg_docs/TiltrotorExtraControls.md b/docs/uk/msg_docs/TiltrotorExtraControls.md index 6f8fb44c7d..ecd7a240d1 100644 --- a/docs/uk/msg_docs/TiltrotorExtraControls.md +++ b/docs/uk/msg_docs/TiltrotorExtraControls.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| collective_tilt_normalized_setpoint | `float32` | | | Collective tilt angle of motors of tiltrotor, 0: vertical, 1: horizontal [0, 1] | -| collective_thrust_normalized_setpoint | `float32` | | | Collective thrust setpoint [0, 1] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| collective_tilt_normalized_setpoint | `float32` | | | Collective tilt angle of motors of tiltrotor, 0: vertical, 1: horizontal [0, 1] | +| collective_thrust_normalized_setpoint | `float32` | | | Collective thrust setpoint [0, 1] | ## Source Message diff --git a/docs/uk/msg_docs/TimesyncStatus.md b/docs/uk/msg_docs/TimesyncStatus.md index 72691c5dc8..dd54b61841 100644 --- a/docs/uk/msg_docs/TimesyncStatus.md +++ b/docs/uk/msg_docs/TimesyncStatus.md @@ -8,14 +8,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| source_protocol | `uint8` | | | timesync source | -| remote_timestamp | `uint64` | | | remote system timestamp (microseconds) | -| observed_offset | `int64` | | | raw time offset directly observed from this timesync packet (microseconds) | -| estimated_offset | `int64` | | | smoothed time offset between companion system and PX4 (microseconds) | -| round_trip_time | `uint32` | | | round trip time of this timesync packet (microseconds) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| source_protocol | `uint8` | | | timesync source | +| remote_timestamp | `uint64` | | | remote system timestamp (microseconds) | +| observed_offset | `int64` | | | raw time offset directly observed from this timesync packet (microseconds) | +| estimated_offset | `int64` | | | smoothed time offset between companion system and PX4 (microseconds) | +| round_trip_time | `uint32` | | | round trip time of this timesync packet (microseconds) | ## Constants diff --git a/docs/uk/msg_docs/TrajectorySetpoint.md b/docs/uk/msg_docs/TrajectorySetpoint.md index 276876882b..15b30bf93a 100644 --- a/docs/uk/msg_docs/TrajectorySetpoint.md +++ b/docs/uk/msg_docs/TrajectorySetpoint.md @@ -10,15 +10,15 @@ Trajectory setpoint in NED frame. Input to PID position controller. Потріб ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------ | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| положення | `float32[3]` | | | in meters | -| швидкість | `float32[3]` | | | in meters/second | -| acceleration | `float32[3]` | | | in meters/second^2 | -| jerk | `float32[3]` | | | in meters/second^3 (for logging only) | -| yaw | `float32` | | | euler angle of desired attitude in radians -PI..+PI | -| yawspeed | `float32` | | | angular velocity around NED frame z-axis in radians/second | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| position | `float32[3]` | | | in meters | +| velocity | `float32[3]` | | | in meters/second | +| acceleration | `float32[3]` | | | in meters/second^2 | +| jerk | `float32[3]` | | | in meters/second^3 (for logging only) | +| yaw | `float32` | | | euler angle of desired attitude in radians -PI..+PI | +| yawspeed | `float32` | | | angular velocity around NED frame z-axis in radians/second | ## Constants diff --git a/docs/uk/msg_docs/TrajectorySetpoint6dof.md b/docs/uk/msg_docs/TrajectorySetpoint6dof.md index 0bd68e8087..62f2e800e6 100644 --- a/docs/uk/msg_docs/TrajectorySetpoint6dof.md +++ b/docs/uk/msg_docs/TrajectorySetpoint6dof.md @@ -10,15 +10,15 @@ Trajectory setpoint in NED frame. Input to position controller. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| положення | `float32[3]` | | | in meters | -| швидкість | `float32[3]` | | | in meters/second | -| acceleration | `float32[3]` | | | in meters/second^2 | -| jerk | `float32[3]` | | | in meters/second^3 (for logging only) | -| quaternion | `float32[4]` | | | unit quaternion | -| angular_velocity | `float32[3]` | | | angular velocity in radians/second | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| position | `float32[3]` | | | in meters | +| velocity | `float32[3]` | | | in meters/second | +| acceleration | `float32[3]` | | | in meters/second^2 | +| jerk | `float32[3]` | | | in meters/second^3 (for logging only) | +| quaternion | `float32[4]` | | | unit quaternion | +| angular_velocity | `float32[3]` | | | angular velocity in radians/second | ## Source Message diff --git a/docs/uk/msg_docs/TransponderReport.md b/docs/uk/msg_docs/TransponderReport.md index 69f57c5218..c5fcf5b76d 100644 --- a/docs/uk/msg_docs/TransponderReport.md +++ b/docs/uk/msg_docs/TransponderReport.md @@ -8,23 +8,23 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| icao_address | `uint32` | | | ICAO address | -| lat | `float64` | | | Latitude, expressed as degrees | -| lon | `float64` | | | Longitude, expressed as degrees | -| altitude_type | `uint8` | | | Type from ADSB_ALTITUDE_TYPE enum | -| altitude | `float32` | | | Altitude(ASL) in meters | -| heading | `float32` | | | Course over ground in radians, 0 to 2pi, 0 is north | -| hor_velocity | `float32` | | | The horizontal velocity in m/s | -| ver_velocity | `float32` | | | The vertical velocity in m/s, positive is up | -| callsign | `char[9]` | | | The callsign, 8+null | -| emitter_type | `uint8` | | | Type from ADSB_EMITTER_TYPE enum | -| tslc | `uint8` | | | Time since last communication in seconds | -| flags | `uint16` | | | Flags to indicate various statuses including valid data fields | -| squawk | `uint16` | | | Squawk code | -| uas_id | `uint8[18]` | | | Unique UAS ID | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| icao_address | `uint32` | | | ICAO address | +| lat | `float64` | | | Latitude, expressed as degrees | +| lon | `float64` | | | Longitude, expressed as degrees | +| altitude_type | `uint8` | | | Type from ADSB_ALTITUDE_TYPE enum | +| altitude | `float32` | | | Altitude(ASL) in meters | +| heading | `float32` | | | Course over ground in radians, 0 to 2pi, 0 is north | +| hor_velocity | `float32` | | | The horizontal velocity in m/s | +| ver_velocity | `float32` | | | The vertical velocity in m/s, positive is up | +| callsign | `char[9]` | | | The callsign, 8+null | +| emitter_type | `uint8` | | | Type from ADSB_EMITTER_TYPE enum | +| tslc | `uint8` | | | Time since last communication in seconds | +| flags | `uint16` | | | Flags to indicate various statuses including valid data fields | +| squawk | `uint16` | | | Squawk code | +| uas_id | `uint8[18]` | | | Unique UAS ID | ## Constants diff --git a/docs/uk/msg_docs/TuneControl.md b/docs/uk/msg_docs/TuneControl.md index c9bb6fb193..ebfe6d8813 100644 --- a/docs/uk/msg_docs/TuneControl.md +++ b/docs/uk/msg_docs/TuneControl.md @@ -10,15 +10,15 @@ This message is used to control the tunes, when the tune_id is set to CUSTOM. th ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| tune_id | `uint8` | | | tune_id corresponding to TuneID::\* from the tune_defaults.h in the tunes library | -| tune_override | `bool` | | | if true the tune which is playing will be stopped and the new started | -| frequency | `uint16` | | | in Hz | -| duration | `uint32` | | | in us | -| silence | `uint32` | | | in us | -| volume | `uint8` | | | value between 0-100 if supported by backend | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| tune_id | `uint8` | | | tune_id corresponding to TuneID::\* from the tune_defaults.h in the tunes library | +| tune_override | `bool` | | | if true the tune which is playing will be stopped and the new started | +| frequency | `uint16` | | | in Hz | +| duration | `uint32` | | | in us | +| silence | `uint32` | | | in us | +| volume | `uint8` | | | value between 0-100 if supported by backend | ## Constants diff --git a/docs/uk/msg_docs/UavcanParameterRequest.md b/docs/uk/msg_docs/UavcanParameterRequest.md index 513e8d2eab..36da1be1e8 100644 --- a/docs/uk/msg_docs/UavcanParameterRequest.md +++ b/docs/uk/msg_docs/UavcanParameterRequest.md @@ -10,16 +10,16 @@ UAVCAN-MAVLink parameter bridge request type. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| message_type | `uint8` | | | MAVLink message type: PARAM_REQUEST_READ, PARAM_REQUEST_LIST, PARAM_SET | -| node_id | `uint8` | | | UAVCAN node ID mapped from MAVLink component ID | -| param_id | `char[17]` | | | MAVLink/UAVCAN parameter name | -| param_index | `int16` | | | -1 if the param_id field should be used as identifier | -| param_type | `uint8` | | | MAVLink parameter type | -| int_value | `int64` | | | current value if param_type is int-like | -| real_value | `float32` | | | current value if param_type is float-like | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| message_type | `uint8` | | | MAVLink message type: PARAM_REQUEST_READ, PARAM_REQUEST_LIST, PARAM_SET | +| node_id | `uint8` | | | UAVCAN node ID mapped from MAVLink component ID | +| param_id | `char[17]` | | | MAVLink/UAVCAN parameter name | +| param_index | `int16` | | | -1 if the param_id field should be used as identifier | +| param_type | `uint8` | | | MAVLink parameter type | +| int_value | `int64` | | | current value if param_type is int-like | +| real_value | `float32` | | | current value if param_type is float-like | ## Constants diff --git a/docs/uk/msg_docs/UavcanParameterValue.md b/docs/uk/msg_docs/UavcanParameterValue.md index 73bacccf3f..5d6ce62e8e 100644 --- a/docs/uk/msg_docs/UavcanParameterValue.md +++ b/docs/uk/msg_docs/UavcanParameterValue.md @@ -10,16 +10,16 @@ UAVCAN-MAVLink parameter bridge response type. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| node_id | `uint8` | | | UAVCAN node ID mapped from MAVLink component ID | -| param_id | `char[17]` | | | MAVLink/UAVCAN parameter name | -| param_index | `int16` | | | parameter index, if known | -| param_count | `uint16` | | | number of parameters exposed by the node | -| param_type | `uint8` | | | MAVLink parameter type | -| int_value | `int64` | | | current value if param_type is int-like | -| real_value | `float32` | | | current value if param_type is float-like | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------ | ---------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| node_id | `uint8` | | | UAVCAN node ID mapped from MAVLink component ID | +| param_id | `char[17]` | | | MAVLink/UAVCAN parameter name | +| param_index | `int16` | | | parameter index, if known | +| param_count | `uint16` | | | number of parameters exposed by the node | +| param_type | `uint8` | | | MAVLink parameter type | +| int_value | `int64` | | | current value if param_type is int-like | +| real_value | `float32` | | | current value if param_type is float-like | ## Source Message diff --git a/docs/uk/msg_docs/UlogStream.md b/docs/uk/msg_docs/UlogStream.md index 25dadb8bdc..2a268b1812 100644 --- a/docs/uk/msg_docs/UlogStream.md +++ b/docs/uk/msg_docs/UlogStream.md @@ -10,14 +10,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| length | `uint8` | | | length of data | -| first_message_offset | `uint8` | | | offset into data where first message starts. This | -| msg_sequence | `uint16` | | | allows determine drops | -| flags | `uint8` | | | see FLAGS\_\* | -| data | `uint8[249]` | | | ulog data | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| length | `uint8` | | | length of data | +| first_message_offset | `uint8` | | | offset into data where first message starts. This | +| msg_sequence | `uint16` | | | allows determine drops | +| flags | `uint8` | | | see FLAGS\_\* | +| data | `uint8[249]` | | | ulog data | ## Constants diff --git a/docs/uk/msg_docs/UlogStreamAck.md b/docs/uk/msg_docs/UlogStreamAck.md index 7359f78a69..fe60266ba2 100644 --- a/docs/uk/msg_docs/UlogStreamAck.md +++ b/docs/uk/msg_docs/UlogStreamAck.md @@ -10,10 +10,10 @@ Ack a previously sent ulog_stream message that had. the NEED_ACK flag set. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| msg_sequence | `uint16` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| msg_sequence | `uint16` | | | | ## Constants diff --git a/docs/uk/msg_docs/UnregisterExtComponent.md b/docs/uk/msg_docs/UnregisterExtComponent.md index 3e90ce448e..3c881a9e44 100644 --- a/docs/uk/msg_docs/UnregisterExtComponent.md +++ b/docs/uk/msg_docs/UnregisterExtComponent.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| name | `char[25]` | | | either the mode name, or component name | -| arming_check_id | `int8` | | | arming check registration ID (-1 if not registered) | -| mode_id | `int8` | | | assigned mode ID (-1 if not registered) | -| mode_executor_id | `int8` | | | assigned mode executor ID (-1 if not registered) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| name | `char[25]` | | | either the mode name, or component name | +| arming_check_id | `int8` | | | arming check registration ID (-1 if not registered) | +| mode_id | `int8` | | | assigned mode ID (-1 if not registered) | +| mode_executor_id | `int8` | | | assigned mode executor ID (-1 if not registered) | ## Constants diff --git a/docs/uk/msg_docs/VehicleAcceleration.md b/docs/uk/msg_docs/VehicleAcceleration.md index 2e77f93989..c72a787924 100644 --- a/docs/uk/msg_docs/VehicleAcceleration.md +++ b/docs/uk/msg_docs/VehicleAcceleration.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| xyz | `float32[3]` | | | Bias corrected acceleration (including gravity) in the FRD body frame XYZ-axis in m/s^2 | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| xyz | `float32[3]` | | | Bias corrected acceleration (including gravity) in the FRD body frame XYZ-axis in m/s^2 | ## Source Message diff --git a/docs/uk/msg_docs/VehicleAirData.md b/docs/uk/msg_docs/VehicleAirData.md index 35614ebce3..558756e6ab 100644 --- a/docs/uk/msg_docs/VehicleAirData.md +++ b/docs/uk/msg_docs/VehicleAirData.md @@ -13,17 +13,17 @@ Includes calculated data such as barometric altitude and air density. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Timestamp of the raw data | -| baro_device_id | `uint32` | | | Unique device ID for the selected barometer | -| baro_alt_meter | `float32` | m [MSL] | | Altitude above MSL calculated from temperature compensated baro sensor data using an ISA corrected for sea level pressure SENS_BARO_QNH | -| baro_pressure_pa | `float32` | Pa | | Absolute pressure | -| ambient_temperature | `float32` | degC | | Температура середовища | -| temperature_source | `uint8` | | | Source of temperature data: 0: Default Temperature (15°C), 1: External Baro, 2: Airspeed | -| rho | `float32` | kg/m^3 | | Air density | -| calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever calibration changes. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw data | +| baro_device_id | `uint32` | | | Unique device ID for the selected barometer | +| baro_alt_meter | `float32` | m [MSL] | | Altitude above MSL calculated from temperature compensated baro sensor data using an ISA corrected for sea level pressure SENS_BARO_QNH | +| baro_pressure_pa | `float32` | Pa | | Absolute pressure | +| ambient_temperature | `float32` | degC | | Температура середовища | +| temperature_source | `uint8` | | | Source of temperature data: 0: Default Temperature (15°C), 1: External Baro, 2: Airspeed | +| rho | `float32` | kg/m^3 | | Air density | +| calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever calibration changes. | ## Source Message diff --git a/docs/uk/msg_docs/VehicleAngularAccelerationSetpoint.md b/docs/uk/msg_docs/VehicleAngularAccelerationSetpoint.md index 94df7a0b8f..1ef3201ad2 100644 --- a/docs/uk/msg_docs/VehicleAngularAccelerationSetpoint.md +++ b/docs/uk/msg_docs/VehicleAngularAccelerationSetpoint.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | -| xyz | `float32[3]` | | | angular acceleration about X, Y, Z body axis in rad/s^2 | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | +| xyz | `float32[3]` | | | angular acceleration about X, Y, Z body axis in rad/s^2 | ## Source Message diff --git a/docs/uk/msg_docs/VehicleAngularVelocity.md b/docs/uk/msg_docs/VehicleAngularVelocity.md index db027b7668..9331030c3b 100644 --- a/docs/uk/msg_docs/VehicleAngularVelocity.md +++ b/docs/uk/msg_docs/VehicleAngularVelocity.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | -| xyz | `float32[3]` | | | Bias corrected angular velocity about the FRD body frame XYZ-axis in rad/s | -| xyz_derivative | `float32[3]` | | | angular acceleration about the FRD body frame XYZ-axis in rad/s^2 | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | +| xyz | `float32[3]` | | | Bias corrected angular velocity about the FRD body frame XYZ-axis in rad/s | +| xyz_derivative | `float32[3]` | | | angular acceleration about the FRD body frame XYZ-axis in rad/s^2 | ## Constants diff --git a/docs/uk/msg_docs/VehicleAttitude.md b/docs/uk/msg_docs/VehicleAttitude.md index 4dfe58a81c..fa9be5b86c 100644 --- a/docs/uk/msg_docs/VehicleAttitude.md +++ b/docs/uk/msg_docs/VehicleAttitude.md @@ -10,13 +10,13 @@ This is similar to the mavlink message ATTITUDE_QUATERNION, but for onboard use. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| q | `float32[4]` | | | Quaternion rotation from the FRD body frame to the NED earth frame | -| delta_q_reset | `float32[4]` | | | Amount by which quaternion has changed during last reset | -| quat_reset_counter | `uint8` | | | Quaternion reset counter | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| q | `float32[4]` | | | Quaternion rotation from the FRD body frame to the NED earth frame | +| delta_q_reset | `float32[4]` | | | Amount by which quaternion has changed during last reset | +| quat_reset_counter | `uint8` | | | Quaternion reset counter | ## Constants diff --git a/docs/uk/msg_docs/VehicleAttitudeSetpoint.md b/docs/uk/msg_docs/VehicleAttitudeSetpoint.md index 5db60e3d47..6041266729 100644 --- a/docs/uk/msg_docs/VehicleAttitudeSetpoint.md +++ b/docs/uk/msg_docs/VehicleAttitudeSetpoint.md @@ -8,12 +8,12 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| yaw_sp_move_rate | `float32` | | | rad/s (commanded by user) | -| q_d | `float32[4]` | | | Desired quaternion for quaternion control | -| thrust_body | `float32[3]` | | | Normalized thrust command in body FRD frame [-1,1] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| yaw_sp_move_rate | `float32` | | | rad/s (commanded by user) | +| q_d | `float32[4]` | | | Desired quaternion for quaternion control | +| thrust_body | `float32[3]` | | | Normalized thrust command in body FRD frame [-1,1] | ## Constants diff --git a/docs/uk/msg_docs/VehicleAttitudeSetpointV0.md b/docs/uk/msg_docs/VehicleAttitudeSetpointV0.md index 98ef4303cd..c677072eaa 100644 --- a/docs/uk/msg_docs/VehicleAttitudeSetpointV0.md +++ b/docs/uk/msg_docs/VehicleAttitudeSetpointV0.md @@ -8,14 +8,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| yaw_sp_move_rate | `float32` | | | rad/s (commanded by user) | -| q_d | `float32[4]` | | | Desired quaternion for quaternion control | -| thrust_body | `float32[3]` | | | Normalized thrust command in body FRD frame [-1,1] | -| reset_integral | `bool` | | | Reset roll/pitch/yaw integrals (navigation logic change) | -| fw_control_yaw_wheel | `bool` | | | control heading with steering wheel (used for auto takeoff on runway) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| yaw_sp_move_rate | `float32` | | | rad/s (commanded by user) | +| q_d | `float32[4]` | | | Desired quaternion for quaternion control | +| thrust_body | `float32[3]` | | | Normalized thrust command in body FRD frame [-1,1] | +| reset_integral | `bool` | | | Reset roll/pitch/yaw integrals (navigation logic change) | +| fw_control_yaw_wheel | `bool` | | | control heading with steering wheel (used for auto takeoff on runway) | ## Constants diff --git a/docs/uk/msg_docs/VehicleCommand.md b/docs/uk/msg_docs/VehicleCommand.md index bda0dbc6d7..9790dc7e6a 100644 --- a/docs/uk/msg_docs/VehicleCommand.md +++ b/docs/uk/msg_docs/VehicleCommand.md @@ -10,23 +10,23 @@ Vehicle Command uORB повідомлення. Використовується ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start. | -| param1 | `float32` | | | Parameter 1, as defined by MAVLink uint16 VEHICLE_CMD enum. | -| param2 | `float32` | | | Parameter 2, as defined by MAVLink uint16 VEHICLE_CMD enum. | -| param3 | `float32` | | | Parameter 3, as defined by MAVLink uint16 VEHICLE_CMD enum. | -| param4 | `float32` | | | Parameter 4, as defined by MAVLink uint16 VEHICLE_CMD enum. | -| param5 | `float64` | | | Parameter 5, as defined by MAVLink uint16 VEHICLE_CMD enum. | -| param6 | `float64` | | | Parameter 6, as defined by MAVLink uint16 VEHICLE_CMD enum. | -| param7 | `float32` | | | Parameter 7, as defined by MAVLink uint16 VEHICLE_CMD enum. | -| command | `uint32` | | | Command ID. | -| target_system | `uint8` | | | System which should execute the command. | -| target_component | `uint8` | | | Component which should execute the command, 0 for all components. | -| source_system | `uint8` | | | System sending the command. | -| source_component | `uint16` | | | Component / mode executor sending the command. | -| confirmation | `uint8` | | | 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command). | -| from_external | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start. | +| param1 | `float32` | | | Parameter 1, as defined by MAVLink uint16 VEHICLE_CMD enum. | +| param2 | `float32` | | | Parameter 2, as defined by MAVLink uint16 VEHICLE_CMD enum. | +| param3 | `float32` | | | Parameter 3, as defined by MAVLink uint16 VEHICLE_CMD enum. | +| param4 | `float32` | | | Parameter 4, as defined by MAVLink uint16 VEHICLE_CMD enum. | +| param5 | `float64` | | | Parameter 5, as defined by MAVLink uint16 VEHICLE_CMD enum. | +| param6 | `float64` | | | Parameter 6, as defined by MAVLink uint16 VEHICLE_CMD enum. | +| param7 | `float32` | | | Parameter 7, as defined by MAVLink uint16 VEHICLE_CMD enum. | +| command | `uint32` | | | Command ID. | +| target_system | `uint8` | | | System which should execute the command. | +| target_component | `uint8` | | | Component which should execute the command, 0 for all components. | +| source_system | `uint8` | | | System sending the command. | +| source_component | `uint16` | | | Component / mode executor sending the command. | +| confirmation | `uint8` | | | 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command). | +| from_external | `bool` | | | | ## Commands @@ -1528,6 +1528,20 @@ Change mode by specifying nav_state directly. | 6 | | | Unused | | 7 | | | Unused | +### VEHICLE_CMD_GUIDED_CHANGE_HEADING (43002) + +Change heading/course. param1: heading type (0=course-over-ground, 1=heading). param2: target [deg]. param3: max rate [deg/s]. + +| Param | Units | Range/Enum | Опис | +| ----- | ----- | ---------- | ----------------------------------------------------------------------------------------------------------- | +| 1 | | | Heading type (HEADING_TYPE enum) | +| 2 | deg | | Target bearing [0..360] | +| 3 | deg/s | | Max rate of change | +| 4 | | | Unused | +| 5 | | | Unused | +| 6 | | | Unused | +| 7 | | | Unused | + ## Enums ### ORBIT_YAW_BEHAVIOUR {#ORBIT_YAW_BEHAVIOUR} @@ -1783,6 +1797,8 @@ uint32 VEHICLE_CMD_PX4_INTERNAL_START = 65537 # Start of PX4 internal only vehic uint32 VEHICLE_CMD_SET_GPS_GLOBAL_ORIGIN = 100000 # Sets the GPS coordinates of the vehicle local origin (0,0,0) position. |Unused|Unused|Unused|Unused|Latitude (WGS-84)|Longitude (WGS-84)|[m] Altitude (AMSL from GNSS, positive above ground)| uint32 VEHICLE_CMD_SET_NAV_STATE = 100001 # Change mode by specifying nav_state directly. |nav_state|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_GUIDED_CHANGE_HEADING = 43002 # Change heading/course. param1: heading type (0=course-over-ground, 1=heading). param2: target [deg]. param3: max rate [deg/s]. |Heading type (HEADING_TYPE enum)|[deg] Target bearing [0..360]|[deg/s] Max rate of change|Unused|Unused|Unused|Unused| + uint8 VEHICLE_MOUNT_MODE_RETRACT = 0 # Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization. uint8 VEHICLE_MOUNT_MODE_NEUTRAL = 1 # Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. uint8 VEHICLE_MOUNT_MODE_MAVLINK_TARGETING = 2 # Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization. diff --git a/docs/uk/msg_docs/VehicleCommandAck.md b/docs/uk/msg_docs/VehicleCommandAck.md index c5bcc8c4cd..20744586ae 100644 --- a/docs/uk/msg_docs/VehicleCommandAck.md +++ b/docs/uk/msg_docs/VehicleCommandAck.md @@ -13,21 +13,23 @@ Follows the MAVLink COMMAND_ACK message definition ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | -------- | ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | time since system start | -| command | `uint32` | | | Command that is being acknowledged | -| result | `uint8` | | [VEHICLE_CMD_RESULT](#VEHICLE_CMD_RESULT) | Command result | -| result_param1 | `uint8` | | | Can be set with the reason why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS (%) | -| result_param2 | `int32` | enum ARM_AUTH_DENIED_REASON | | Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied, or what ARM_AUTH_DENIED_REASON | -| target_system | `uint8` | | | Target system | -| target_component | `uint16` | | | Target component / mode executor | -| from_external | `bool` | | | Indicates if the command came from an external source | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | time since system start | +| command | `uint32` | | | Command that is being acknowledged | +| result | `uint8` | | [VEHICLE_CMD_RESULT](#VEHICLE_CMD_RESULT) | Command result | +| result_param1 | `uint8` | | | Can be set with the reason why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS (%) | +| result_param2 | `int32` | enum ARM_AUTH_DENIED_REASON | | Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied, or what ARM_AUTH_DENIED_REASON | +| target_system | `uint8` | | | Target system | +| target_component | `uint16` | | | Target component / mode executor | +| from_external | `bool` | | | Indicates if the command came from an external source | ## Enums ### VEHICLE_CMD_RESULT {#VEHICLE_CMD_RESULT} +Used in field(s): [result](#fld_result) + | Назва | Тип | Значення | Опис | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ------------------------------------------------------------------------- | | VEHICLE_CMD_RESULT_ACCEPTED | `uint8` | 0 | Command ACCEPTED and EXECUTED | diff --git a/docs/uk/msg_docs/VehicleCommandAckV0.md b/docs/uk/msg_docs/VehicleCommandAckV0.md index 9c31766d0f..042e1b2b96 100644 --- a/docs/uk/msg_docs/VehicleCommandAckV0.md +++ b/docs/uk/msg_docs/VehicleCommandAckV0.md @@ -10,16 +10,16 @@ Vehicle Command Ackonwledgement uORB message. Used for acknowledging the vehicle ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| command | `uint32` | | | Command that is being acknowledged | -| result | `uint8` | | | Command result | -| result_param1 | `uint8` | | | Also used as progress[%], it can be set with the reason why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS | -| result_param2 | `int32` | | | Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied. | -| target_system | `uint8` | | | | -| target_component | `uint16` | | | Target component / mode executor | -| from_external | `bool` | | | Indicates if the command came from an external source | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| command | `uint32` | | | Command that is being acknowledged | +| result | `uint8` | | | Command result | +| result_param1 | `uint8` | | | Also used as progress[%], it can be set with the reason why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS | +| result_param2 | `int32` | | | Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied. | +| target_system | `uint8` | | | | +| target_component | `uint16` | | | Target component / mode executor | +| from_external | `bool` | | | Indicates if the command came from an external source | ## Constants diff --git a/docs/uk/msg_docs/VehicleConstraints.md b/docs/uk/msg_docs/VehicleConstraints.md index e7f3dd959c..89ac7fb63c 100644 --- a/docs/uk/msg_docs/VehicleConstraints.md +++ b/docs/uk/msg_docs/VehicleConstraints.md @@ -10,12 +10,12 @@ Local setpoint constraints in NED frame. setting something to NaN means that no ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| speed_up | `float32` | | | in meters/sec | -| speed_down | `float32` | | | in meters/sec | -| want_takeoff | `bool` | | | tell the controller to initiate takeoff when idling (ignored during flight) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| speed_up | `float32` | | | in meters/sec | +| speed_down | `float32` | | | in meters/sec | +| want_takeoff | `bool` | | | tell the controller to initiate takeoff when idling (ignored during flight) | ## Source Message diff --git a/docs/uk/msg_docs/VehicleControlMode.md b/docs/uk/msg_docs/VehicleControlMode.md index 1821f46f01..5bea85b868 100644 --- a/docs/uk/msg_docs/VehicleControlMode.md +++ b/docs/uk/msg_docs/VehicleControlMode.md @@ -8,24 +8,24 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| flag_armed | `bool` | | | synonym for actuator_armed.armed | -| flag_multicopter_position_control_enabled | `bool` | | | | -| flag_control_manual_enabled | `bool` | | | true if manual input is mixed in | -| flag_control_auto_enabled | `bool` | | | true if onboard autopilot should act | -| flag_control_offboard_enabled | `bool` | | | true if offboard control should be used | -| flag_control_position_enabled | `bool` | | | true if position is controlled | -| flag_control_velocity_enabled | `bool` | | | true if horizontal velocity (implies direction) is controlled | -| flag_control_altitude_enabled | `bool` | | | true if altitude is controlled | -| flag_control_climb_rate_enabled | `bool` | | | true if climb rate is controlled | -| flag_control_acceleration_enabled | `bool` | | | true if acceleration is controlled | -| flag_control_attitude_enabled | `bool` | | | true if attitude stabilization is mixed in | -| flag_control_rates_enabled | `bool` | | | true if rates are stabilized | -| flag_control_allocation_enabled | `bool` | | | true if control allocation is enabled | -| flag_control_termination_enabled | `bool` | | | true if flighttermination is enabled | -| source_id | `uint8` | | | Mode ID (nav_state) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| flag_armed | `bool` | | | synonym for actuator_armed.armed | +| flag_multicopter_position_control_enabled | `bool` | | | | +| flag_control_manual_enabled | `bool` | | | true if manual input is mixed in | +| flag_control_auto_enabled | `bool` | | | true if onboard autopilot should act | +| flag_control_offboard_enabled | `bool` | | | true if offboard control should be used | +| flag_control_position_enabled | `bool` | | | true if position is controlled | +| flag_control_velocity_enabled | `bool` | | | true if horizontal velocity (implies direction) is controlled | +| flag_control_altitude_enabled | `bool` | | | true if altitude is controlled | +| flag_control_climb_rate_enabled | `bool` | | | true if climb rate is controlled | +| flag_control_acceleration_enabled | `bool` | | | true if acceleration is controlled | +| flag_control_attitude_enabled | `bool` | | | true if attitude stabilization is mixed in | +| flag_control_rates_enabled | `bool` | | | true if rates are stabilized | +| flag_control_allocation_enabled | `bool` | | | true if control allocation is enabled | +| flag_control_termination_enabled | `bool` | | | true if flighttermination is enabled | +| source_id | `uint8` | | | Mode ID (nav_state) | ## Constants diff --git a/docs/uk/msg_docs/VehicleGlobalPosition.md b/docs/uk/msg_docs/VehicleGlobalPosition.md index 4e9593bc6b..89520c8e56 100644 --- a/docs/uk/msg_docs/VehicleGlobalPosition.md +++ b/docs/uk/msg_docs/VehicleGlobalPosition.md @@ -10,26 +10,26 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| lat | `float64` | | | Latitude, (degrees) | -| lon | `float64` | | | Longitude, (degrees) | -| alt | `float32` | | | Altitude AMSL, (meters) | -| alt_ellipsoid | `float32` | | | Altitude above ellipsoid, (meters) | -| lat_lon_valid | `bool` | | | | -| alt_valid | `bool` | | | | -| delta_alt | `float32` | | | Reset delta for altitude | -| delta_terrain | `float32` | | | Reset delta for terrain | -| lat_lon_reset_counter | `uint8` | | | Counter for reset events on horizontal position coordinates | -| alt_reset_counter | `uint8` | | | Counter for reset events on altitude | -| terrain_reset_counter | `uint8` | | | Counter for reset events on terrain | -| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | -| epv | `float32` | | | Standard deviation of vertical position error, (metres) | -| terrain_alt | `float32` | | | Terrain altitude WGS84, (metres) | -| terrain_alt_valid | `bool` | | | Terrain altitude estimate is valid | -| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| lat | `float64` | | | Latitude, (degrees) | +| lon | `float64` | | | Longitude, (degrees) | +| alt | `float32` | | | Altitude AMSL, (meters) | +| alt_ellipsoid | `float32` | | | Altitude above ellipsoid, (meters) | +| lat_lon_valid | `bool` | | | | +| alt_valid | `bool` | | | | +| delta_alt | `float32` | | | Reset delta for altitude | +| delta_terrain | `float32` | | | Reset delta for terrain | +| lat_lon_reset_counter | `uint8` | | | Counter for reset events on horizontal position coordinates | +| alt_reset_counter | `uint8` | | | Counter for reset events on altitude | +| terrain_reset_counter | `uint8` | | | Counter for reset events on terrain | +| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | +| epv | `float32` | | | Standard deviation of vertical position error, (metres) | +| terrain_alt | `float32` | | | Terrain altitude WGS84, (metres) | +| terrain_alt_valid | `bool` | | | Terrain altitude estimate is valid | +| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | ## Constants diff --git a/docs/uk/msg_docs/VehicleGlobalPositionV0.md b/docs/uk/msg_docs/VehicleGlobalPositionV0.md index 5b7bc51385..fc2a77eea4 100644 --- a/docs/uk/msg_docs/VehicleGlobalPositionV0.md +++ b/docs/uk/msg_docs/VehicleGlobalPositionV0.md @@ -10,26 +10,26 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------ | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| lat | `float64` | | | Latitude, (degrees) | -| lon | `float64` | | | Longitude, (degrees) | -| alt | `float32` | | | Altitude AMSL, (meters) | -| alt_ellipsoid | `float32` | | | Altitude above ellipsoid, (meters) | -| lat_lon_valid | `bool` | | | | -| alt_valid | `bool` | | | | -| delta_alt | `float32` | | | Reset delta for altitude | -| delta_terrain | `float32` | | | Reset delta for terrain | -| lat_lon_reset_counter | `uint8` | | | Counter for reset events on horizontal position coordinates | -| alt_reset_counter | `uint8` | | | Counter for reset events on altitude | -| terrain_reset_counter | `uint8` | | | Counter for reset events on terrain | -| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | -| epv | `float32` | | | Standard deviation of vertical position error, (metres) | -| terrain_alt | `float32` | | | Terrain altitude WGS84, (metres) | -| terrain_alt_valid | `bool` | | | Terrain altitude estimate is valid | -| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| lat | `float64` | | | Latitude, (degrees) | +| lon | `float64` | | | Longitude, (degrees) | +| alt | `float32` | | | Altitude AMSL, (meters) | +| alt_ellipsoid | `float32` | | | Altitude above ellipsoid, (meters) | +| lat_lon_valid | `bool` | | | | +| alt_valid | `bool` | | | | +| delta_alt | `float32` | | | Reset delta for altitude | +| delta_terrain | `float32` | | | Reset delta for terrain | +| lat_lon_reset_counter | `uint8` | | | Counter for reset events on horizontal position coordinates | +| alt_reset_counter | `uint8` | | | Counter for reset events on altitude | +| terrain_reset_counter | `uint8` | | | Counter for reset events on terrain | +| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | +| epv | `float32` | | | Standard deviation of vertical position error, (metres) | +| terrain_alt | `float32` | | | Terrain altitude WGS84, (metres) | +| terrain_alt_valid | `bool` | | | Terrain altitude estimate is valid | +| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | ## Constants diff --git a/docs/uk/msg_docs/VehicleImu.md b/docs/uk/msg_docs/VehicleImu.md index 58426f92e6..ed85f41c8e 100644 --- a/docs/uk/msg_docs/VehicleImu.md +++ b/docs/uk/msg_docs/VehicleImu.md @@ -10,20 +10,20 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| accel_device_id | `uint32` | | | Accelerometer unique device ID for the sensor that does not change between power cycles | -| gyro_device_id | `uint32` | | | Gyroscope unique device ID for the sensor that does not change between power cycles | -| delta_angle | `float32[3]` | | | delta angle about the FRD body frame XYZ-axis in rad over the integration time frame (delta_angle_dt) | -| delta_velocity | `float32[3]` | | | delta velocity in the FRD body frame XYZ-axis in m/s over the integration time frame (delta_velocity_dt) | -| delta_angle_dt | `uint32` | | | integration period in microseconds | -| delta_velocity_dt | `uint32` | | | integration period in microseconds | -| delta_angle_clipping | `uint8` | | | bitfield indicating if there was any gyro clipping (per axis) during the integration time frame | -| delta_velocity_clipping | `uint8` | | | bitfield indicating if there was any accelerometer clipping (per axis) during the integration time frame | -| accel_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever accelermeter calibration changes. | -| gyro_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever rate gyro calibration changes. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| accel_device_id | `uint32` | | | Accelerometer unique device ID for the sensor that does not change between power cycles | +| gyro_device_id | `uint32` | | | Gyroscope unique device ID for the sensor that does not change between power cycles | +| delta_angle | `float32[3]` | | | delta angle about the FRD body frame XYZ-axis in rad over the integration time frame (delta_angle_dt) | +| delta_velocity | `float32[3]` | | | delta velocity in the FRD body frame XYZ-axis in m/s over the integration time frame (delta_velocity_dt) | +| delta_angle_dt | `uint32` | | | integration period in microseconds | +| delta_velocity_dt | `uint32` | | | integration period in microseconds | +| delta_angle_clipping | `uint8` | | | bitfield indicating if there was any gyro clipping (per axis) during the integration time frame | +| delta_velocity_clipping | `uint8` | | | bitfield indicating if there was any accelerometer clipping (per axis) during the integration time frame | +| accel_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever accelermeter calibration changes. | +| gyro_calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever rate gyro calibration changes. | ## Constants diff --git a/docs/uk/msg_docs/VehicleImuStatus.md b/docs/uk/msg_docs/VehicleImuStatus.md index 9393287a3c..9f8505648a 100644 --- a/docs/uk/msg_docs/VehicleImuStatus.md +++ b/docs/uk/msg_docs/VehicleImuStatus.md @@ -8,28 +8,28 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| accel_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| gyro_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| accel_clipping | `uint32[3]` | | | total clipping per axis | -| gyro_clipping | `uint32[3]` | | | total clipping per axis | -| accel_error_count | `uint32` | | | | -| gyro_error_count | `uint32` | | | | -| accel_rate_hz | `float32` | | | | -| gyro_rate_hz | `float32` | | | | -| accel_raw_rate_hz | `float32` | | | full raw sensor sample rate (Hz) | -| gyro_raw_rate_hz | `float32` | | | full raw sensor sample rate (Hz) | -| accel_vibration_metric | `float32` | | | high frequency vibration level in the accelerometer data (m/s/s) | -| gyro_vibration_metric | `float32` | | | high frequency vibration level in the gyro data (rad/s) | -| delta_angle_coning_metric | `float32` | | | average IMU delta angle coning correction (rad^2) | -| mean_accel | `float32[3]` | | | average accelerometer readings since last publication | -| mean_gyro | `float32[3]` | | | average gyroscope readings since last publication | -| var_accel | `float32[3]` | | | accelerometer variance since last publication | -| var_gyro | `float32[3]` | | | gyroscope variance since last publication | -| temperature_accel | `float32` | | | | -| temperature_gyro | `float32` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| accel_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| gyro_device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| accel_clipping | `uint32[3]` | | | total clipping per axis | +| gyro_clipping | `uint32[3]` | | | total clipping per axis | +| accel_error_count | `uint32` | | | | +| gyro_error_count | `uint32` | | | | +| accel_rate_hz | `float32` | | | | +| gyro_rate_hz | `float32` | | | | +| accel_raw_rate_hz | `float32` | | | full raw sensor sample rate (Hz) | +| gyro_raw_rate_hz | `float32` | | | full raw sensor sample rate (Hz) | +| accel_vibration_metric | `float32` | | | high frequency vibration level in the accelerometer data (m/s/s) | +| gyro_vibration_metric | `float32` | | | high frequency vibration level in the gyro data (rad/s) | +| delta_angle_coning_metric | `float32` | | | average IMU delta angle coning correction (rad^2) | +| mean_accel | `float32[3]` | | | average accelerometer readings since last publication | +| mean_gyro | `float32[3]` | | | average gyroscope readings since last publication | +| var_accel | `float32[3]` | | | accelerometer variance since last publication | +| var_gyro | `float32[3]` | | | gyroscope variance since last publication | +| temperature_accel | `float32` | | | | +| temperature_gyro | `float32` | | | | ## Source Message diff --git a/docs/uk/msg_docs/VehicleLandDetected.md b/docs/uk/msg_docs/VehicleLandDetected.md index 418b19cba9..cd293348cd 100644 --- a/docs/uk/msg_docs/VehicleLandDetected.md +++ b/docs/uk/msg_docs/VehicleLandDetected.md @@ -8,21 +8,21 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| freefall | `bool` | | | true if vehicle is currently in free-fall | -| ground_contact | `bool` | | | true if vehicle has ground contact but is not landed (1. stage) | -| maybe_landed | `bool` | | | true if the vehicle might have landed (2. stage) | -| landed | `bool` | | | true if vehicle is currently landed on the ground (3. stage) | -| in_ground_effect | `bool` | | | indicates if from the perspective of the landing detector the vehicle might be in ground effect (baro). This flag will become true if the vehicle is not moving horizontally and is descending (crude assumption that user is landing). | -| in_descend | `bool` | | | | -| has_low_throttle | `bool` | | | | -| vertical_movement | `bool` | | | | -| horizontal_movement | `bool` | | | | -| rotational_movement | `bool` | | | | -| close_to_ground_or_skipped_check | `bool` | | | | -| at_rest | `bool` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| freefall | `bool` | | | true if vehicle is currently in free-fall | +| ground_contact | `bool` | | | true if vehicle has ground contact but is not landed (1. stage) | +| maybe_landed | `bool` | | | true if the vehicle might have landed (2. stage) | +| landed | `bool` | | | true if vehicle is currently landed on the ground (3. stage) | +| in_ground_effect | `bool` | | | indicates if from the perspective of the landing detector the vehicle might be in ground effect (baro). This flag will become true if the vehicle is not moving horizontally and is descending (crude assumption that user is landing). | +| in_descend | `bool` | | | | +| has_low_throttle | `bool` | | | | +| vertical_movement | `bool` | | | | +| horizontal_movement | `bool` | | | | +| rotational_movement | `bool` | | | | +| close_to_ground_or_skipped_check | `bool` | | | | +| at_rest | `bool` | | | | ## Constants diff --git a/docs/uk/msg_docs/VehicleLocalPosition.md b/docs/uk/msg_docs/VehicleLocalPosition.md index d3395dffb2..a8ae3ea187 100644 --- a/docs/uk/msg_docs/VehicleLocalPosition.md +++ b/docs/uk/msg_docs/VehicleLocalPosition.md @@ -10,61 +10,61 @@ Fused local position in NED. The coordinate system origin is the vehicle positio ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| xy_valid | `bool` | | | true if x and y are valid | -| z_valid | `bool` | | | true if z is valid | -| v_xy_valid | `bool` | | | true if vx and vy are valid | -| v_z_valid | `bool` | | | true if vz is valid | -| x | `float32` | | | North position in NED earth-fixed frame, (metres) | -| y | `float32` | | | East position in NED earth-fixed frame, (metres) | -| z | `float32` | | | Down position (negative altitude) in NED earth-fixed frame, (metres) | -| delta_xy | `float32[2]` | | | Amount of lateral shift of position estimate in latest reset (in x and y) [m] | -| xy_reset_counter | `uint8` | | | Index of latest lateral position estimate reset | -| delta_z | `float32` | | | Amount of vertical shift of position estimate in latest reset [m] | -| z_reset_counter | `uint8` | | | Index of latest vertical position estimate reset | -| vx | `float32` | | | North velocity in NED earth-fixed frame, (metres/sec) | -| vy | `float32` | | | East velocity in NED earth-fixed frame, (metres/sec) | -| vz | `float32` | | | Down velocity in NED earth-fixed frame, (metres/sec) | -| z_deriv | `float32` | | | Down position time derivative in NED earth-fixed frame, (metres/sec) | -| delta_vxy | `float32[2]` | | | Amount of lateral shift of velocity estimate in latest reset (in x and y) [m/s] | -| vxy_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | -| delta_vz | `float32` | | | Amount of vertical shift of velocity estimate in latest reset [m/s] | -| vz_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | -| ax | `float32` | | | North velocity derivative in NED earth-fixed frame, (metres/sec^2) | -| ay | `float32` | | | East velocity derivative in NED earth-fixed frame, (metres/sec^2) | -| az | `float32` | | | Down velocity derivative in NED earth-fixed frame, (metres/sec^2) | -| heading | `float32` | | | Euler yaw angle transforming the tangent plane relative to NED earth-fixed frame, -PI..+PI, (radians) | -| heading_var | `float32` | | | | -| unaided_heading | `float32` | | | Same as heading but generated by integrating corrected gyro data only | -| delta_heading | `float32` | | | Heading delta caused by latest heading reset [rad] | -| heading_reset_counter | `uint8` | | | Index of latest heading reset | -| heading_good_for_control | `bool` | | | | -| tilt_var | `float32` | | | | -| xy_global | `bool` | | | true if position (x, y) has a valid global reference (ref_lat, ref_lon) | -| z_global | `bool` | | | true if z has a valid global reference (ref_alt) | -| ref_timestamp | `uint64` | | | Time when reference position was set since system start, (microseconds) | -| ref_lat | `float64` | | | Reference point latitude, (degrees) | -| ref_lon | `float64` | | | Reference point longitude, (degrees) | -| ref_alt | `float32` | | | Reference altitude AMSL, (metres) | -| dist_bottom_valid | `bool` | | | true if distance to bottom surface is valid | -| dist_bottom | `float32` | | | Distance from from bottom surface to ground, (metres) | -| dist_bottom_var | `float32` | | | terrain estimate variance (m^2) | -| delta_dist_bottom | `float32` | | | Amount of vertical shift of dist bottom estimate in latest reset [m] | -| dist_bottom_reset_counter | `uint8` | | | Index of latest dist bottom estimate reset | -| dist_bottom_sensor_bitfield | `uint8` | | | bitfield indicating what type of sensor is used to estimate dist_bottom | -| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | -| epv | `float32` | | | Standard deviation of vertical position error, (metres) | -| evh | `float32` | | | Standard deviation of horizontal velocity error, (metres/sec) | -| evv | `float32` | | | Standard deviation of vertical velocity error, (metres/sec) | -| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | -| vxy_max | `float32` | | | maximum horizontal speed (meters/sec) | -| vz_max | `float32` | | | maximum vertical speed (meters/sec) | -| hagl_min | `float32` | | | minimum height above ground level (meters) | -| hagl_max_z | `float32` | | | maximum height above ground level for z-control (meters) | -| hagl_max_xy | `float32` | | | maximum height above ground level for xy-control (meters) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| xy_valid | `bool` | | | true if x and y are valid | +| z_valid | `bool` | | | true if z is valid | +| v_xy_valid | `bool` | | | true if vx and vy are valid | +| v_z_valid | `bool` | | | true if vz is valid | +| x | `float32` | | | North position in NED earth-fixed frame, (metres) | +| y | `float32` | | | East position in NED earth-fixed frame, (metres) | +| z | `float32` | | | Down position (negative altitude) in NED earth-fixed frame, (metres) | +| delta_xy | `float32[2]` | | | Amount of lateral shift of position estimate in latest reset (in x and y) [m] | +| xy_reset_counter | `uint8` | | | Index of latest lateral position estimate reset | +| delta_z | `float32` | | | Amount of vertical shift of position estimate in latest reset [m] | +| z_reset_counter | `uint8` | | | Index of latest vertical position estimate reset | +| vx | `float32` | | | North velocity in NED earth-fixed frame, (metres/sec) | +| vy | `float32` | | | East velocity in NED earth-fixed frame, (metres/sec) | +| vz | `float32` | | | Down velocity in NED earth-fixed frame, (metres/sec) | +| z_deriv | `float32` | | | Down position time derivative in NED earth-fixed frame, (metres/sec) | +| delta_vxy | `float32[2]` | | | Amount of lateral shift of velocity estimate in latest reset (in x and y) [m/s] | +| vxy_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | +| delta_vz | `float32` | | | Amount of vertical shift of velocity estimate in latest reset [m/s] | +| vz_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | +| ax | `float32` | | | North velocity derivative in NED earth-fixed frame, (metres/sec^2) | +| ay | `float32` | | | East velocity derivative in NED earth-fixed frame, (metres/sec^2) | +| az | `float32` | | | Down velocity derivative in NED earth-fixed frame, (metres/sec^2) | +| heading | `float32` | | | Euler yaw angle transforming the tangent plane relative to NED earth-fixed frame, -PI..+PI, (radians) | +| heading_var | `float32` | | | | +| unaided_heading | `float32` | | | Same as heading but generated by integrating corrected gyro data only | +| delta_heading | `float32` | | | Heading delta caused by latest heading reset [rad] | +| heading_reset_counter | `uint8` | | | Index of latest heading reset | +| heading_good_for_control | `bool` | | | | +| tilt_var | `float32` | | | | +| xy_global | `bool` | | | true if position (x, y) has a valid global reference (ref_lat, ref_lon) | +| z_global | `bool` | | | true if z has a valid global reference (ref_alt) | +| ref_timestamp | `uint64` | | | Time when reference position was set since system start, (microseconds) | +| ref_lat | `float64` | | | Reference point latitude, (degrees) | +| ref_lon | `float64` | | | Reference point longitude, (degrees) | +| ref_alt | `float32` | | | Reference altitude AMSL, (metres) | +| dist_bottom_valid | `bool` | | | true if distance to bottom surface is valid | +| dist_bottom | `float32` | | | Distance from from bottom surface to ground, (metres) | +| dist_bottom_var | `float32` | | | height above ground estimate variance (m^2) | +| delta_dist_bottom | `float32` | | | Amount of vertical shift of dist bottom estimate in latest reset [m] | +| dist_bottom_reset_counter | `uint8` | | | Index of latest dist bottom estimate reset | +| dist_bottom_sensor_bitfield | `uint8` | | | bitfield indicating what type of sensor is used to estimate dist_bottom | +| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | +| epv | `float32` | | | Standard deviation of vertical position error, (metres) | +| evh | `float32` | | | Standard deviation of horizontal velocity error, (metres/sec) | +| evv | `float32` | | | Standard deviation of vertical velocity error, (metres/sec) | +| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | +| vxy_max | `float32` | | | maximum horizontal speed (meters/sec) | +| vz_max | `float32` | | | maximum vertical speed (meters/sec) | +| hagl_min | `float32` | | | minimum height above ground level (meters) | +| hagl_max_z | `float32` | | | maximum height above ground level for z-control (meters) | +| hagl_max_xy | `float32` | | | maximum height above ground level for xy-control (meters) | ## Constants @@ -144,7 +144,7 @@ float32 ref_alt # Reference altitude AMSL, (metres) # Distance to surface bool dist_bottom_valid # true if distance to bottom surface is valid float32 dist_bottom # Distance from from bottom surface to ground, (metres) -float32 dist_bottom_var # terrain estimate variance (m^2) +float32 dist_bottom_var # height above ground estimate variance (m^2) float32 delta_dist_bottom # Amount of vertical shift of dist bottom estimate in latest reset [m] uint8 dist_bottom_reset_counter # Index of latest dist bottom estimate reset diff --git a/docs/uk/msg_docs/VehicleLocalPositionSetpoint.md b/docs/uk/msg_docs/VehicleLocalPositionSetpoint.md index a3cd039857..f307232dbf 100644 --- a/docs/uk/msg_docs/VehicleLocalPositionSetpoint.md +++ b/docs/uk/msg_docs/VehicleLocalPositionSetpoint.md @@ -10,19 +10,19 @@ Local position setpoint in NED frame. Telemetry of PID position controller to mo ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------ | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| x | `float32` | | | in meters NED | -| y | `float32` | | | in meters NED | -| z | `float32` | | | in meters NED | -| vx | `float32` | | | in meters/sec | -| vy | `float32` | | | in meters/sec | -| vz | `float32` | | | in meters/sec | -| acceleration | `float32[3]` | | | in meters/sec^2 | -| thrust | `float32[3]` | | | normalized thrust vector in NED | -| yaw | `float32` | | | in radians NED -PI..+PI | -| yawspeed | `float32` | | | in radians/sec | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| x | `float32` | | | in meters NED | +| y | `float32` | | | in meters NED | +| z | `float32` | | | in meters NED | +| vx | `float32` | | | in meters/sec | +| vy | `float32` | | | in meters/sec | +| vz | `float32` | | | in meters/sec | +| acceleration | `float32[3]` | | | in meters/sec^2 | +| thrust | `float32[3]` | | | normalized thrust vector in NED | +| yaw | `float32` | | | in radians NED -PI..+PI | +| yawspeed | `float32` | | | in radians/sec | ## Source Message diff --git a/docs/uk/msg_docs/VehicleLocalPositionV0.md b/docs/uk/msg_docs/VehicleLocalPositionV0.md index bcc377356d..17bc5f5929 100644 --- a/docs/uk/msg_docs/VehicleLocalPositionV0.md +++ b/docs/uk/msg_docs/VehicleLocalPositionV0.md @@ -10,60 +10,60 @@ Fused local position in NED. The coordinate system origin is the vehicle positio ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| xy_valid | `bool` | | | true if x and y are valid | -| z_valid | `bool` | | | true if z is valid | -| v_xy_valid | `bool` | | | true if vx and vy are valid | -| v_z_valid | `bool` | | | true if vz is valid | -| x | `float32` | | | North position in NED earth-fixed frame, (metres) | -| y | `float32` | | | East position in NED earth-fixed frame, (metres) | -| z | `float32` | | | Down position (negative altitude) in NED earth-fixed frame, (metres) | -| delta_xy | `float32[2]` | | | Amount of lateral shift of position estimate in latest reset (in x and y) [m] | -| xy_reset_counter | `uint8` | | | Index of latest lateral position estimate reset | -| delta_z | `float32` | | | Amount of vertical shift of position estimate in latest reset [m] | -| z_reset_counter | `uint8` | | | Index of latest vertical position estimate reset | -| vx | `float32` | | | North velocity in NED earth-fixed frame, (metres/sec) | -| vy | `float32` | | | East velocity in NED earth-fixed frame, (metres/sec) | -| vz | `float32` | | | Down velocity in NED earth-fixed frame, (metres/sec) | -| z_deriv | `float32` | | | Down position time derivative in NED earth-fixed frame, (metres/sec) | -| delta_vxy | `float32[2]` | | | Amount of lateral shift of velocity estimate in latest reset (in x and y) [m/s] | -| vxy_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | -| delta_vz | `float32` | | | Amount of vertical shift of velocity estimate in latest reset [m/s] | -| vz_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | -| ax | `float32` | | | North velocity derivative in NED earth-fixed frame, (metres/sec^2) | -| ay | `float32` | | | East velocity derivative in NED earth-fixed frame, (metres/sec^2) | -| az | `float32` | | | Down velocity derivative in NED earth-fixed frame, (metres/sec^2) | -| heading | `float32` | | | Euler yaw angle transforming the tangent plane relative to NED earth-fixed frame, -PI..+PI, (radians) | -| heading_var | `float32` | | | | -| unaided_heading | `float32` | | | Same as heading but generated by integrating corrected gyro data only | -| delta_heading | `float32` | | | Heading delta caused by latest heading reset [rad] | -| heading_reset_counter | `uint8` | | | Index of latest heading reset | -| heading_good_for_control | `bool` | | | | -| tilt_var | `float32` | | | | -| xy_global | `bool` | | | true if position (x, y) has a valid global reference (ref_lat, ref_lon) | -| z_global | `bool` | | | true if z has a valid global reference (ref_alt) | -| ref_timestamp | `uint64` | | | Time when reference position was set since system start, (microseconds) | -| ref_lat | `float64` | | | Reference point latitude, (degrees) | -| ref_lon | `float64` | | | Reference point longitude, (degrees) | -| ref_alt | `float32` | | | Reference altitude AMSL, (metres) | -| dist_bottom_valid | `bool` | | | true if distance to bottom surface is valid | -| dist_bottom | `float32` | | | Distance from from bottom surface to ground, (metres) | -| dist_bottom_var | `float32` | | | terrain estimate variance (m^2) | -| delta_dist_bottom | `float32` | | | Amount of vertical shift of dist bottom estimate in latest reset [m] | -| dist_bottom_reset_counter | `uint8` | | | Index of latest dist bottom estimate reset | -| dist_bottom_sensor_bitfield | `uint8` | | | bitfield indicating what type of sensor is used to estimate dist_bottom | -| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | -| epv | `float32` | | | Standard deviation of vertical position error, (metres) | -| evh | `float32` | | | Standard deviation of horizontal velocity error, (metres/sec) | -| evv | `float32` | | | Standard deviation of vertical velocity error, (metres/sec) | -| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | -| vxy_max | `float32` | | | maximum horizontal speed - set to 0 when limiting not required (meters/sec) | -| vz_max | `float32` | | | maximum vertical speed - set to 0 when limiting not required (meters/sec) | -| hagl_min | `float32` | | | minimum height above ground level - set to 0 when limiting not required (meters) | -| hagl_max | `float32` | | | maximum height above ground level - set to 0 when limiting not required (meters) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| xy_valid | `bool` | | | true if x and y are valid | +| z_valid | `bool` | | | true if z is valid | +| v_xy_valid | `bool` | | | true if vx and vy are valid | +| v_z_valid | `bool` | | | true if vz is valid | +| x | `float32` | | | North position in NED earth-fixed frame, (metres) | +| y | `float32` | | | East position in NED earth-fixed frame, (metres) | +| z | `float32` | | | Down position (negative altitude) in NED earth-fixed frame, (metres) | +| delta_xy | `float32[2]` | | | Amount of lateral shift of position estimate in latest reset (in x and y) [m] | +| xy_reset_counter | `uint8` | | | Index of latest lateral position estimate reset | +| delta_z | `float32` | | | Amount of vertical shift of position estimate in latest reset [m] | +| z_reset_counter | `uint8` | | | Index of latest vertical position estimate reset | +| vx | `float32` | | | North velocity in NED earth-fixed frame, (metres/sec) | +| vy | `float32` | | | East velocity in NED earth-fixed frame, (metres/sec) | +| vz | `float32` | | | Down velocity in NED earth-fixed frame, (metres/sec) | +| z_deriv | `float32` | | | Down position time derivative in NED earth-fixed frame, (metres/sec) | +| delta_vxy | `float32[2]` | | | Amount of lateral shift of velocity estimate in latest reset (in x and y) [m/s] | +| vxy_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | +| delta_vz | `float32` | | | Amount of vertical shift of velocity estimate in latest reset [m/s] | +| vz_reset_counter | `uint8` | | | Index of latest vertical velocity estimate reset | +| ax | `float32` | | | North velocity derivative in NED earth-fixed frame, (metres/sec^2) | +| ay | `float32` | | | East velocity derivative in NED earth-fixed frame, (metres/sec^2) | +| az | `float32` | | | Down velocity derivative in NED earth-fixed frame, (metres/sec^2) | +| heading | `float32` | | | Euler yaw angle transforming the tangent plane relative to NED earth-fixed frame, -PI..+PI, (radians) | +| heading_var | `float32` | | | | +| unaided_heading | `float32` | | | Same as heading but generated by integrating corrected gyro data only | +| delta_heading | `float32` | | | Heading delta caused by latest heading reset [rad] | +| heading_reset_counter | `uint8` | | | Index of latest heading reset | +| heading_good_for_control | `bool` | | | | +| tilt_var | `float32` | | | | +| xy_global | `bool` | | | true if position (x, y) has a valid global reference (ref_lat, ref_lon) | +| z_global | `bool` | | | true if z has a valid global reference (ref_alt) | +| ref_timestamp | `uint64` | | | Time when reference position was set since system start, (microseconds) | +| ref_lat | `float64` | | | Reference point latitude, (degrees) | +| ref_lon | `float64` | | | Reference point longitude, (degrees) | +| ref_alt | `float32` | | | Reference altitude AMSL, (metres) | +| dist_bottom_valid | `bool` | | | true if distance to bottom surface is valid | +| dist_bottom | `float32` | | | Distance from from bottom surface to ground, (metres) | +| dist_bottom_var | `float32` | | | terrain estimate variance (m^2) | +| delta_dist_bottom | `float32` | | | Amount of vertical shift of dist bottom estimate in latest reset [m] | +| dist_bottom_reset_counter | `uint8` | | | Index of latest dist bottom estimate reset | +| dist_bottom_sensor_bitfield | `uint8` | | | bitfield indicating what type of sensor is used to estimate dist_bottom | +| eph | `float32` | | | Standard deviation of horizontal position error, (metres) | +| epv | `float32` | | | Standard deviation of vertical position error, (metres) | +| evh | `float32` | | | Standard deviation of horizontal velocity error, (metres/sec) | +| evv | `float32` | | | Standard deviation of vertical velocity error, (metres/sec) | +| dead_reckoning | `bool` | | | True if this position is estimated through dead-reckoning | +| vxy_max | `float32` | | | maximum horizontal speed - set to 0 when limiting not required (meters/sec) | +| vz_max | `float32` | | | maximum vertical speed - set to 0 when limiting not required (meters/sec) | +| hagl_min | `float32` | | | minimum height above ground level - set to 0 when limiting not required (meters) | +| hagl_max | `float32` | | | maximum height above ground level - set to 0 when limiting not required (meters) | ## Constants diff --git a/docs/uk/msg_docs/VehicleMagnetometer.md b/docs/uk/msg_docs/VehicleMagnetometer.md index aee0f8a1b7..3155b60a7c 100644 --- a/docs/uk/msg_docs/VehicleMagnetometer.md +++ b/docs/uk/msg_docs/VehicleMagnetometer.md @@ -8,13 +8,13 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| device_id | `uint32` | | | unique device ID for the selected magnetometer | -| magnetometer_ga | `float32[3]` | | | Magnetic field in the FRD body frame XYZ-axis in Gauss | -| calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever calibration changes. | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| device_id | `uint32` | | | unique device ID for the selected magnetometer | +| magnetometer_ga | `float32[3]` | | | Magnetic field in the FRD body frame XYZ-axis in Gauss | +| calibration_count | `uint8` | | | Calibration changed counter. Monotonically increases whenever calibration changes. | ## Source Message diff --git a/docs/uk/msg_docs/VehicleOdometry.md b/docs/uk/msg_docs/VehicleOdometry.md index 3b1cec6482..0fac73ea30 100644 --- a/docs/uk/msg_docs/VehicleOdometry.md +++ b/docs/uk/msg_docs/VehicleOdometry.md @@ -12,26 +12,28 @@ Fits ROS REP 147 for aerial vehicles ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------- | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Timestamp sample | -| pose_frame | `uint8` | | [POSE_FRAME](#POSE_FRAME) | Position and orientation frame of reference | -| положення | `float32[3]` | m [local frame] | | Position. Origin is position of GC at startup. (Invalid: NaN If invalid/unknown) | -| q | `float32[4]` | | | Attitude (expressed as a quaternion) relative to pose reference frame at current location. Follows the Hamiltonian convention (w, x, y, z, right-handed, passive rotations from body to world) (Invalid: NaN First value if invalid/unknown) | -| velocity_frame | `uint8` | | [VELOCITY_FRAME](#VELOCITY_FRAME) | Reference frame of the velocity data | -| швидкість | `float32[3]` | m/s [@velocity_frame] | | Velocity. (Invalid: NaN If invalid/unknown) | -| angular_velocity | `float32[3]` | rad/s [@VELOCITY_FRAME_BODY_FRD] | | Angular velocity in body-fixed frame (Invalid: NaN If invalid/unknown) | -| position_variance | `float32[3]` | m^2 | | Variance of position error | -| orientation_variance | `float32[3]` | rad^2 | | Variance of orientation/attitude error (expressed in body frame) | -| velocity_variance | `float32[3]` | m^2/s^2 | | Variance of velocity error | -| reset_counter | `uint8` | | | Reset counter. Counts reset events on attitude, velocity and position. | -| quality | `int8` | | | Quality. Unused. (Invalid: 0) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp sample | +| pose_frame | `uint8` | | [POSE_FRAME](#POSE_FRAME) | Position and orientation frame of reference | +| position | `float32[3]` | m [local frame] | | Position. Origin is position of GC at startup. (Invalid: NaN If invalid/unknown) | +| q | `float32[4]` | | | Attitude (expressed as a quaternion) relative to pose reference frame at current location. Follows the Hamiltonian convention (w, x, y, z, right-handed, passive rotations from body to world) (Invalid: NaN First value if invalid/unknown) | +| velocity_frame | `uint8` | | [VELOCITY_FRAME](#VELOCITY_FRAME) | Reference frame of the velocity data | +| velocity | `float32[3]` | m/s [@velocity_frame] | | Velocity. (Invalid: NaN If invalid/unknown) | +| angular_velocity | `float32[3]` | rad/s [@VELOCITY_FRAME_BODY_FRD] | | Angular velocity in body-fixed frame (Invalid: NaN If invalid/unknown) | +| position_variance | `float32[3]` | m^2 | | Variance of position error | +| orientation_variance | `float32[3]` | rad^2 | | Variance of orientation/attitude error (expressed in body frame) | +| velocity_variance | `float32[3]` | m^2/s^2 | | Variance of velocity error | +| reset_counter | `uint8` | | | Reset counter. Counts reset events on attitude, velocity and position. | +| quality | `int8` | | | Quality. Unused. (Invalid: 0) | ## Enums ### POSE_FRAME {#POSE_FRAME} +Used in field(s): [pose_frame](#fld_pose_frame) + | Назва | Тип | Значення | Опис | | --------------------------------------------------------------------------------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | | POSE_FRAME_UNKNOWN | `uint8` | 0 | Unknown frame | @@ -40,6 +42,8 @@ Fits ROS REP 147 for aerial vehicles ### VELOCITY_FRAME {#VELOCITY_FRAME} +Used in field(s): [velocity_frame](#fld_velocity_frame) + | Назва | Тип | Значення | Опис | | ---------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | | VELOCITY_FRAME_UNKNOWN | `uint8` | 0 | Unknown frame | diff --git a/docs/uk/msg_docs/VehicleOpticalFlow.md b/docs/uk/msg_docs/VehicleOpticalFlow.md index 0b3d931378..8416d6db22 100644 --- a/docs/uk/msg_docs/VehicleOpticalFlow.md +++ b/docs/uk/msg_docs/VehicleOpticalFlow.md @@ -10,19 +10,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | | -| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | -| pixel_flow | `float32[2]` | | | (radians) accumulated optical flow in radians where a positive value is produced by a RH rotation about the body axis | -| delta_angle | `float32[3]` | | | (radians) accumulated gyro radians where a positive value is produced by a RH rotation of the sensor about the body axis. (NAN if unavailable) | -| distance_m | `float32` | | | (meters) Distance to the center of the flow field (NAN if unavailable) | -| integration_timespan_us | `uint32` | | | (microseconds) accumulation timespan in microseconds | -| quality | `uint8` | | | Average of quality of accumulated frames, 0: bad quality, 255: maximum quality | -| max_flow_rate | `float32` | | | (radians/s) Magnitude of maximum angular which the optical flow sensor can measure reliably | -| min_ground_distance | `float32` | | | (meters) Minimum distance from ground at which the optical flow sensor operates reliably | -| max_ground_distance | `float32` | | | (meters) Maximum distance from ground at which the optical flow sensor operates reliably | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | | +| device_id | `uint32` | | | unique device ID for the sensor that does not change between power cycles | +| pixel_flow | `float32[2]` | | | (radians) accumulated optical flow in radians where a positive value is produced by a RH rotation about the body axis | +| delta_angle | `float32[3]` | | | (radians) accumulated gyro radians where a positive value is produced by a RH rotation of the sensor about the body axis. (NAN if unavailable) | +| distance_m | `float32` | | | (meters) Distance to the center of the flow field (NAN if unavailable) | +| integration_timespan_us | `uint32` | | | (microseconds) accumulation timespan in microseconds | +| quality | `uint8` | | | Average of quality of accumulated frames, 0: bad quality, 255: maximum quality | +| max_flow_rate | `float32` | | | (radians/s) Magnitude of maximum angular which the optical flow sensor can measure reliably | +| min_ground_distance | `float32` | | | (meters) Minimum distance from ground at which the optical flow sensor operates reliably | +| max_ground_distance | `float32` | | | (meters) Maximum distance from ground at which the optical flow sensor operates reliably | ## Source Message diff --git a/docs/uk/msg_docs/VehicleOpticalFlowVel.md b/docs/uk/msg_docs/VehicleOpticalFlowVel.md index 3aee1f2bb6..f222fef401 100644 --- a/docs/uk/msg_docs/VehicleOpticalFlowVel.md +++ b/docs/uk/msg_docs/VehicleOpticalFlowVel.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| vel_body | `float32[2]` | | | velocity obtained from gyro-compensated and distance-scaled optical flow raw measurements in body frame(m/s) | -| vel_ne | `float32[2]` | | | same as vel_body but in local frame (m/s) | -| vel_body_filtered | `float32[2]` | | | filtered velocity obtained from gyro-compensated and distance-scaled optical flow raw measurements in body frame(m/s) | -| vel_ne_filtered | `float32[2]` | | | filtered same as vel_body_filtered but in local frame (m/s) | -| flow_rate_uncompensated | `float32[2]` | | | integrated optical flow measurement (rad/s) | -| flow_rate_compensated | `float32[2]` | | | integrated optical flow measurement compensated for angular motion (rad/s) | -| gyro_rate | `float32[3]` | | | gyro measurement synchronized with flow measurements (rad/s) | -| gyro_bias | `float32[3]` | | | | -| ref_gyro | `float32[3]` | | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| vel_body | `float32[2]` | | | velocity obtained from gyro-compensated and distance-scaled optical flow raw measurements in body frame(m/s) | +| vel_ne | `float32[2]` | | | same as vel_body but in local frame (m/s) | +| vel_body_filtered | `float32[2]` | | | filtered velocity obtained from gyro-compensated and distance-scaled optical flow raw measurements in body frame(m/s) | +| vel_ne_filtered | `float32[2]` | | | filtered same as vel_body_filtered but in local frame (m/s) | +| flow_rate_uncompensated | `float32[2]` | | | integrated optical flow measurement (rad/s) | +| flow_rate_compensated | `float32[2]` | | | integrated optical flow measurement compensated for angular motion (rad/s) | +| gyro_rate | `float32[3]` | | | gyro measurement synchronized with flow measurements (rad/s) | +| gyro_bias | `float32[3]` | | | | +| ref_gyro | `float32[3]` | | | | ## Source Message diff --git a/docs/uk/msg_docs/VehicleRatesSetpoint.md b/docs/uk/msg_docs/VehicleRatesSetpoint.md index 66ac32c7b2..525b32559c 100644 --- a/docs/uk/msg_docs/VehicleRatesSetpoint.md +++ b/docs/uk/msg_docs/VehicleRatesSetpoint.md @@ -8,14 +8,14 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ----------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| roll | `float32` | rad/s | | roll rate setpoint | -| pitch | `float32` | rad/s | | pitch rate setpoint | -| yaw | `float32` | rad/s | | yaw rate setpoint | -| thrust_body | `float32[3]` | | | Normalized thrust command in body NED frame [-1,1] | -| reset_integral | `bool` | | | Reset roll/pitch/yaw integrals (navigation logic change) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| roll | `float32` | rad/s | | roll rate setpoint | +| pitch | `float32` | rad/s | | pitch rate setpoint | +| yaw | `float32` | rad/s | | yaw rate setpoint | +| thrust_body | `float32[3]` | | | Normalized thrust command in body NED frame [-1,1] | +| reset_integral | `bool` | | | Reset roll/pitch/yaw integrals (navigation logic change) | ## Constants diff --git a/docs/uk/msg_docs/VehicleRoi.md b/docs/uk/msg_docs/VehicleRoi.md index 7f78801914..57781f602c 100644 --- a/docs/uk/msg_docs/VehicleRoi.md +++ b/docs/uk/msg_docs/VehicleRoi.md @@ -10,16 +10,16 @@ Vehicle Region Of Interest (ROI). ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| --------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| mode | `uint8` | | | ROI mode (see above) | -| lat | `float64` | | | Latitude to point to | -| lon | `float64` | | | Longitude to point to | -| alt | `float32` | | | Altitude to point to | -| roll_offset | `float32` | | | angle offset in rad | -| pitch_offset | `float32` | | | angle offset in rad | -| yaw_offset | `float32` | | | angle offset in rad | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| mode | `uint8` | | | ROI mode (see above) | +| lat | `float64` | | | Latitude to point to | +| lon | `float64` | | | Longitude to point to | +| alt | `float32` | | | Altitude to point to | +| roll_offset | `float32` | | | angle offset in rad | +| pitch_offset | `float32` | | | angle offset in rad | +| yaw_offset | `float32` | | | angle offset in rad | ## Constants diff --git a/docs/uk/msg_docs/VehicleStatus.md b/docs/uk/msg_docs/VehicleStatus.md index 1b17eb11c5..e9a256a600 100644 --- a/docs/uk/msg_docs/VehicleStatus.md +++ b/docs/uk/msg_docs/VehicleStatus.md @@ -10,108 +10,108 @@ Encodes the system state of the vehicle published by commander. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| armed_time | `uint64` | | | Arming timestamp (microseconds) | -| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | -| arming_state | `uint8` | | | | -| latest_arming_reason | `uint8` | | | | -| latest_disarming_reason | `uint8` | | | | -| nav_state_timestamp | `uint64` | | | time when current nav_state activated | -| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | -| nav_state | `uint8` | | | Currently active mode | -| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | -| nav_state_display | `uint8` | | | User-visible nav state sent via MAVLink (executor state if active, otherwise nav_state) | -| accepts_offboard_setpoints | `bool` | | | True if the current mode accepts offboard trajectory setpoints via MAVLink | -| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | -| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | -| hil_state | `uint8` | | | | -| vehicle_type | `uint8` | | | | -| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | -| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | -| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | -| gcs_connection_lost | `bool` | | | datalink to GCS lost | -| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | -| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | -| is_vtol | `bool` | | | True if the system is VTOL capable | -| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | -| in_transition_mode | `bool` | | | True if VTOL is doing a transition | -| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | -| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | -| system_id | `uint8` | | | system id, contains MAVLink's system ID field | -| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | -| safety_button_available | `bool` | | | Set to true if a safety button is connected | -| safety_off | `bool` | | | Set to true if safety is off | -| power_input_valid | `bool` | | | set if input power is valid | -| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | -| open_drone_id_system_present | `bool` | | | | -| open_drone_id_system_healthy | `bool` | | | | -| parachute_system_present | `bool` | | | | -| parachute_system_healthy | `bool` | | | | -| traffic_avoidance_system_present | `bool` | | | | -| rc_calibration_in_progress | `bool` | | | | -| calibration_enabled | `bool` | | | | -| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| armed_time | `uint64` | | | Arming timestamp (microseconds) | +| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | +| arming_state | `uint8` | | | | +| latest_arming_reason | `uint8` | | | | +| latest_disarming_reason | `uint8` | | | | +| nav_state_timestamp | `uint64` | | | time when current nav_state activated | +| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | +| nav_state | `uint8` | | | Currently active mode | +| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | +| nav_state_display | `uint8` | | | User-visible nav state sent via MAVLink (executor state if active, otherwise nav_state) | +| accepts_offboard_setpoints | `bool` | | | True if the current mode accepts offboard trajectory setpoints via MAVLink | +| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | +| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | +| hil_state | `uint8` | | | | +| vehicle_type | `uint8` | | | | +| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | +| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | +| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | +| gcs_connection_lost | `bool` | | | datalink to GCS lost | +| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | +| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | +| is_vtol | `bool` | | | True if the system is VTOL capable | +| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | +| in_transition_mode | `bool` | | | True if VTOL is doing a transition | +| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | +| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | +| system_id | `uint8` | | | system id, contains MAVLink's system ID field | +| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | +| safety_button_available | `bool` | | | Set to true if a safety button is connected | +| safety_off | `bool` | | | Set to true if safety is off | +| power_input_valid | `bool` | | | set if input power is valid | +| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | +| open_drone_id_system_present | `bool` | | | | +| open_drone_id_system_healthy | `bool` | | | | +| parachute_system_present | `bool` | | | | +| parachute_system_healthy | `bool` | | | | +| traffic_avoidance_system_present | `bool` | | | | +| rc_calibration_in_progress | `bool` | | | | +| calibration_enabled | `bool` | | | | +| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | ## Constants -| Назва | Тип | Значення | Опис | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------- | ----------------------------------------------------- | -| MESSAGE_VERSION | `uint32` | 4 | | -| ARMING_STATE_DISARMED | `uint8` | 1 | | -| ARMING_STATE_ARMED | `uint8` | 2 | | -| ARM_DISARM_REASON_STICK_GESTURE | `uint8` | 1 | | -| ARM_DISARM_REASON_RC_SWITCH | `uint8` | 2 | | -| ARM_DISARM_REASON_COMMAND_INTERNAL | `uint8` | 3 | | -| ARM_DISARM_REASON_COMMAND_EXTERNAL | `uint8` | 4 | | -| ARM_DISARM_REASON_MISSION_START | `uint8` | 5 | | -| ARM_DISARM_REASON_LANDING | `uint8` | 6 | | -| ARM_DISARM_REASON_PREFLIGHT_INACTION | `uint8` | 7 | | -| ARM_DISARM_REASON_KILL_SWITCH | `uint8` | 8 | | -| ARM_DISARM_REASON_RC_BUTTON | `uint8` | 13 | | -| ARM_DISARM_REASON_FAILSAFE | `uint8` | 14 | | -| NAVIGATION_STATE_MANUAL | `uint8` | 0 | Manual mode | -| NAVIGATION_STATE_ALTCTL | `uint8` | 1 | Altitude control mode | -| NAVIGATION_STATE_POSCTL | `uint8` | 2 | Position control mode | -| NAVIGATION_STATE_AUTO_MISSION | `uint8` | 3 | Auto mission mode | -| NAVIGATION_STATE_AUTO_LOITER | `uint8` | 4 | Auto loiter mode | -| NAVIGATION_STATE_AUTO_RTL | `uint8` | 5 | Auto return to launch mode | -| NAVIGATION_STATE_POSITION_SLOW | `uint8` | 6 | | -| NAVIGATION_STATE_FREE5 | `uint8` | 7 | | -| NAVIGATION_STATE_ALTITUDE_CRUISE | `uint8` | 8 | Altitude with Cruise mode | -| NAVIGATION_STATE_FREE3 | `uint8` | 9 | | -| NAVIGATION_STATE_ACRO | `uint8` | 10 | Acro mode | -| NAVIGATION_STATE_FREE2 | `uint8` | 11 | | -| NAVIGATION_STATE_DESCEND | `uint8` | 12 | Descend mode (no position control) | -| NAVIGATION_STATE_TERMINATION | `uint8` | 13 | Termination mode | -| NAVIGATION_STATE_OFFBOARD | `uint8` | 14 | | -| NAVIGATION_STATE_STAB | `uint8` | 15 | Stabilized mode | -| NAVIGATION_STATE_FREE1 | `uint8` | 16 | | -| NAVIGATION_STATE_AUTO_TAKEOFF | `uint8` | 17 | Takeoff | -| NAVIGATION_STATE_AUTO_LAND | `uint8` | 18 | Land | -| NAVIGATION_STATE_AUTO_FOLLOW_TARGET | `uint8` | 19 | Auto Follow | -| NAVIGATION_STATE_AUTO_PRECLAND | `uint8` | 20 | Precision land with landing target | -| NAVIGATION_STATE_ORBIT | `uint8` | 21 | Orbit in a circle | -| NAVIGATION_STATE_AUTO_VTOL_TAKEOFF | `uint8` | 22 | Takeoff, transition, establish loiter | -| NAVIGATION_STATE_EXTERNAL1 | `uint8` | 23 | | -| NAVIGATION_STATE_EXTERNAL2 | `uint8` | 24 | | -| NAVIGATION_STATE_EXTERNAL3 | `uint8` | 25 | | -| NAVIGATION_STATE_EXTERNAL4 | `uint8` | 26 | | -| NAVIGATION_STATE_EXTERNAL5 | `uint8` | 27 | | -| NAVIGATION_STATE_EXTERNAL6 | `uint8` | 28 | | -| NAVIGATION_STATE_EXTERNAL7 | `uint8` | 29 | | -| NAVIGATION_STATE_EXTERNAL8 | `uint8` | 30 | | -| NAVIGATION_STATE_MAX | `uint8` | 31 | | -| HIL_STATE_OFF | `uint8` | 0 | | -| HIL_STATE_ON | `uint8` | 1 | | -| VEHICLE_TYPE_UNSPECIFIED | `uint8` | 0 | | -| VEHICLE_TYPE_ROTARY_WING | `uint8` | 1 | | -| VEHICLE_TYPE_FIXED_WING | `uint8` | 2 | | -| VEHICLE_TYPE_ROVER | `uint8` | 3 | | -| FAILSAFE_DEFER_STATE_DISABLED | `uint8` | 0 | | -| FAILSAFE_DEFER_STATE_ENABLED | `uint8` | 1 | | -| FAILSAFE_DEFER_STATE_WOULD_FAILSAFE | `uint8` | 2 | Failsafes deferred, but would trigger a failsafe | +| Назва | Тип | Значення | Опис | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------- | ------------------------------------------------------------------------------------- | +| MESSAGE_VERSION | `uint32` | 4 | | +| ARMING_STATE_DISARMED | `uint8` | 1 | | +| ARMING_STATE_ARMED | `uint8` | 2 | | +| ARM_DISARM_REASON_STICK_GESTURE | `uint8` | 1 | | +| ARM_DISARM_REASON_RC_SWITCH | `uint8` | 2 | | +| ARM_DISARM_REASON_COMMAND_INTERNAL | `uint8` | 3 | | +| ARM_DISARM_REASON_COMMAND_EXTERNAL | `uint8` | 4 | | +| ARM_DISARM_REASON_MISSION_START | `uint8` | 5 | | +| ARM_DISARM_REASON_LANDING | `uint8` | 6 | | +| ARM_DISARM_REASON_PREFLIGHT_INACTION | `uint8` | 7 | | +| ARM_DISARM_REASON_KILL_SWITCH | `uint8` | 8 | | +| ARM_DISARM_REASON_RC_BUTTON | `uint8` | 13 | | +| ARM_DISARM_REASON_FAILSAFE | `uint8` | 14 | | +| NAVIGATION_STATE_MANUAL | `uint8` | 0 | Manual mode | +| NAVIGATION_STATE_ALTCTL | `uint8` | 1 | Altitude control mode | +| NAVIGATION_STATE_POSCTL | `uint8` | 2 | Position control mode | +| NAVIGATION_STATE_AUTO_MISSION | `uint8` | 3 | Auto mission mode | +| NAVIGATION_STATE_AUTO_LOITER | `uint8` | 4 | Auto loiter mode | +| NAVIGATION_STATE_AUTO_RTL | `uint8` | 5 | Auto return to launch mode | +| NAVIGATION_STATE_POSITION_SLOW | `uint8` | 6 | | +| NAVIGATION_STATE_GUIDED_COURSE | `uint8` | 7 | Guided Course mode (FW: maintain course/alt/speed) | +| NAVIGATION_STATE_ALTITUDE_CRUISE | `uint8` | 8 | Altitude with Cruise mode | +| NAVIGATION_STATE_FREE3 | `uint8` | 9 | | +| NAVIGATION_STATE_ACRO | `uint8` | 10 | Acro mode | +| NAVIGATION_STATE_FREE2 | `uint8` | 11 | | +| NAVIGATION_STATE_DESCEND | `uint8` | 12 | Descend mode (no position control) | +| NAVIGATION_STATE_TERMINATION | `uint8` | 13 | Termination mode | +| NAVIGATION_STATE_OFFBOARD | `uint8` | 14 | | +| NAVIGATION_STATE_STAB | `uint8` | 15 | Stabilized mode | +| NAVIGATION_STATE_FREE1 | `uint8` | 16 | | +| NAVIGATION_STATE_AUTO_TAKEOFF | `uint8` | 17 | Takeoff | +| NAVIGATION_STATE_AUTO_LAND | `uint8` | 18 | Land | +| NAVIGATION_STATE_AUTO_FOLLOW_TARGET | `uint8` | 19 | Auto Follow | +| NAVIGATION_STATE_AUTO_PRECLAND | `uint8` | 20 | Precision land with landing target | +| NAVIGATION_STATE_ORBIT | `uint8` | 21 | Orbit in a circle | +| NAVIGATION_STATE_AUTO_VTOL_TAKEOFF | `uint8` | 22 | Takeoff, transition, establish loiter | +| NAVIGATION_STATE_EXTERNAL1 | `uint8` | 23 | | +| NAVIGATION_STATE_EXTERNAL2 | `uint8` | 24 | | +| NAVIGATION_STATE_EXTERNAL3 | `uint8` | 25 | | +| NAVIGATION_STATE_EXTERNAL4 | `uint8` | 26 | | +| NAVIGATION_STATE_EXTERNAL5 | `uint8` | 27 | | +| NAVIGATION_STATE_EXTERNAL6 | `uint8` | 28 | | +| NAVIGATION_STATE_EXTERNAL7 | `uint8` | 29 | | +| NAVIGATION_STATE_EXTERNAL8 | `uint8` | 30 | | +| NAVIGATION_STATE_MAX | `uint8` | 31 | | +| HIL_STATE_OFF | `uint8` | 0 | | +| HIL_STATE_ON | `uint8` | 1 | | +| VEHICLE_TYPE_UNSPECIFIED | `uint8` | 0 | | +| VEHICLE_TYPE_ROTARY_WING | `uint8` | 1 | | +| VEHICLE_TYPE_FIXED_WING | `uint8` | 2 | | +| VEHICLE_TYPE_ROVER | `uint8` | 3 | | +| FAILSAFE_DEFER_STATE_DISABLED | `uint8` | 0 | | +| FAILSAFE_DEFER_STATE_ENABLED | `uint8` | 1 | | +| FAILSAFE_DEFER_STATE_WOULD_FAILSAFE | `uint8` | 2 | Failsafes deferred, but would trigger a failsafe | ## Source Message @@ -159,7 +159,7 @@ uint8 NAVIGATION_STATE_AUTO_MISSION = 3 # Auto mission mode uint8 NAVIGATION_STATE_AUTO_LOITER = 4 # Auto loiter mode uint8 NAVIGATION_STATE_AUTO_RTL = 5 # Auto return to launch mode uint8 NAVIGATION_STATE_POSITION_SLOW = 6 -uint8 NAVIGATION_STATE_FREE5 = 7 +uint8 NAVIGATION_STATE_GUIDED_COURSE = 7 # Guided Course mode (FW: maintain course/alt/speed) uint8 NAVIGATION_STATE_ALTITUDE_CRUISE = 8 # Altitude with Cruise mode uint8 NAVIGATION_STATE_FREE3 = 9 uint8 NAVIGATION_STATE_ACRO = 10 # Acro mode diff --git a/docs/uk/msg_docs/VehicleStatusV0.md b/docs/uk/msg_docs/VehicleStatusV0.md index a5f5caae0c..3c78415c0c 100644 --- a/docs/uk/msg_docs/VehicleStatusV0.md +++ b/docs/uk/msg_docs/VehicleStatusV0.md @@ -10,49 +10,49 @@ Encodes the system state of the vehicle published by commander. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| armed_time | `uint64` | | | Arming timestamp (microseconds) | -| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | -| arming_state | `uint8` | | | | -| latest_arming_reason | `uint8` | | | | -| latest_disarming_reason | `uint8` | | | | -| nav_state_timestamp | `uint64` | | | time when current nav_state activated | -| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | -| nav_state | `uint8` | | | Currently active mode | -| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | -| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | -| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | -| failure_detector_status | `uint16` | | | | -| hil_state | `uint8` | | | | -| vehicle_type | `uint8` | | | | -| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | -| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | -| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | -| gcs_connection_lost | `bool` | | | datalink to GCS lost | -| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | -| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | -| is_vtol | `bool` | | | True if the system is VTOL capable | -| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | -| in_transition_mode | `bool` | | | True if VTOL is doing a transition | -| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | -| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | -| system_id | `uint8` | | | system id, contains MAVLink's system ID field | -| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | -| safety_button_available | `bool` | | | Set to true if a safety button is connected | -| safety_off | `bool` | | | Set to true if safety is off | -| power_input_valid | `bool` | | | set if input power is valid | -| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | -| open_drone_id_system_present | `bool` | | | | -| open_drone_id_system_healthy | `bool` | | | | -| parachute_system_present | `bool` | | | | -| parachute_system_healthy | `bool` | | | | -| avoidance_system_required | `bool` | | | Set to true if avoidance system is enabled via COM_OBS_AVOID parameter | -| avoidance_system_valid | `bool` | | | Status of the obstacle avoidance system | -| rc_calibration_in_progress | `bool` | | | | -| calibration_enabled | `bool` | | | | -| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| armed_time | `uint64` | | | Arming timestamp (microseconds) | +| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | +| arming_state | `uint8` | | | | +| latest_arming_reason | `uint8` | | | | +| latest_disarming_reason | `uint8` | | | | +| nav_state_timestamp | `uint64` | | | time when current nav_state activated | +| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | +| nav_state | `uint8` | | | Currently active mode | +| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | +| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | +| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | +| failure_detector_status | `uint16` | | | | +| hil_state | `uint8` | | | | +| vehicle_type | `uint8` | | | | +| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | +| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | +| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | +| gcs_connection_lost | `bool` | | | datalink to GCS lost | +| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | +| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | +| is_vtol | `bool` | | | True if the system is VTOL capable | +| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | +| in_transition_mode | `bool` | | | True if VTOL is doing a transition | +| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | +| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | +| system_id | `uint8` | | | system id, contains MAVLink's system ID field | +| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | +| safety_button_available | `bool` | | | Set to true if a safety button is connected | +| safety_off | `bool` | | | Set to true if safety is off | +| power_input_valid | `bool` | | | set if input power is valid | +| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | +| open_drone_id_system_present | `bool` | | | | +| open_drone_id_system_healthy | `bool` | | | | +| parachute_system_present | `bool` | | | | +| parachute_system_healthy | `bool` | | | | +| avoidance_system_required | `bool` | | | Set to true if avoidance system is enabled via COM_OBS_AVOID parameter | +| avoidance_system_valid | `bool` | | | Status of the obstacle avoidance system | +| rc_calibration_in_progress | `bool` | | | | +| calibration_enabled | `bool` | | | | +| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | ## Constants diff --git a/docs/uk/msg_docs/VehicleStatusV1.md b/docs/uk/msg_docs/VehicleStatusV1.md index 394657e460..d6a6f4aa30 100644 --- a/docs/uk/msg_docs/VehicleStatusV1.md +++ b/docs/uk/msg_docs/VehicleStatusV1.md @@ -10,52 +10,54 @@ Encodes the system state of the vehicle published by commander. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| armed_time | `uint64` | us | | Arming timestamp | -| takeoff_time | `uint64` | us | | Takeoff timestamp | -| arming_state | `uint8` | | | | -| latest_arming_reason | `uint8` | | | | -| latest_disarming_reason | `uint8` | | | | -| nav_state_timestamp | `uint64` | | | Time when current nav_state activated | -| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | -| nav_state | `uint8` | | [NAVIGATION_STATE](#NAVIGATION_STATE) | Currently active mode | -| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | -| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | -| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | -| failure_detector_status | `uint16` | | [FAILURE](#FAILURE) | | -| hil_state | `uint8` | enum HIL_STATE | | | -| vehicle_type | `uint8` | | [VEHICLE_TYPE](#VEHICLE_TYPE) | | -| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | -| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | -| failsafe_defer_state | `uint8` | | [FAILSAFE_DEFER_STATE](#FAILSAFE_DEFER_STATE) | | -| gcs_connection_lost | `bool` | | | datalink to GCS lost | -| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | -| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | -| is_vtol | `bool` | | | True if the system is VTOL capable | -| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | -| in_transition_mode | `bool` | | | True if VTOL is doing a transition | -| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | -| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | -| system_id | `uint8` | | | system id, contains MAVLink's system ID field | -| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | -| safety_button_available | `bool` | | | Set to true if a safety button is connected | -| safety_off | `bool` | | | Set to true if safety is off | -| power_input_valid | `bool` | | | Set if input power is valid | -| usb_connected | `bool` | | | Set to true (never cleared) once telemetry received from usb link | -| open_drone_id_system_present | `bool` | | | | -| open_drone_id_system_healthy | `bool` | | | | -| parachute_system_present | `bool` | | | | -| parachute_system_healthy | `bool` | | | | -| rc_calibration_in_progress | `bool` | | | | -| calibration_enabled | `bool` | | | | -| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| armed_time | `uint64` | us | | Arming timestamp | +| takeoff_time | `uint64` | us | | Takeoff timestamp | +| arming_state | `uint8` | | | | +| latest_arming_reason | `uint8` | | | | +| latest_disarming_reason | `uint8` | | | | +| nav_state_timestamp | `uint64` | | | Time when current nav_state activated | +| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | +| nav_state | `uint8` | | [NAVIGATION_STATE](#NAVIGATION_STATE) | Currently active mode | +| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | +| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | +| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | +| failure_detector_status | `uint16` | | [FAILURE](#FAILURE) | | +| hil_state | `uint8` | enum HIL_STATE | | | +| vehicle_type | `uint8` | | [VEHICLE_TYPE](#VEHICLE_TYPE) | | +| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | +| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | +| failsafe_defer_state | `uint8` | | [FAILSAFE_DEFER_STATE](#FAILSAFE_DEFER_STATE) | | +| gcs_connection_lost | `bool` | | | datalink to GCS lost | +| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | +| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | +| is_vtol | `bool` | | | True if the system is VTOL capable | +| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | +| in_transition_mode | `bool` | | | True if VTOL is doing a transition | +| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | +| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | +| system_id | `uint8` | | | system id, contains MAVLink's system ID field | +| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | +| safety_button_available | `bool` | | | Set to true if a safety button is connected | +| safety_off | `bool` | | | Set to true if safety is off | +| power_input_valid | `bool` | | | Set if input power is valid | +| usb_connected | `bool` | | | Set to true (never cleared) once telemetry received from usb link | +| open_drone_id_system_present | `bool` | | | | +| open_drone_id_system_healthy | `bool` | | | | +| parachute_system_present | `bool` | | | | +| parachute_system_healthy | `bool` | | | | +| rc_calibration_in_progress | `bool` | | | | +| calibration_enabled | `bool` | | | | +| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | ## Enums ### NAVIGATION_STATE {#NAVIGATION_STATE} +Used in field(s): [nav_state](#fld_nav_state) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ----------------------------------------------------- | | NAVIGATION_STATE_MANUAL | `uint8` | 0 | Manual mode | @@ -93,6 +95,8 @@ Encodes the system state of the vehicle published by commander. ### FAILURE {#FAILURE} +Used in field(s): [failure_detector_status](#fld_failure_detector_status) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------- | -------- | -------- | ----------------------------------------------------------------------------- | | FAILURE_NONE | `uint16` | 0 | | @@ -107,6 +111,8 @@ Encodes the system state of the vehicle published by commander. ### VEHICLE_TYPE {#VEHICLE_TYPE} +Used in field(s): [vehicle_type](#fld_vehicle_type) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | ---- | | VEHICLE_TYPE_UNSPECIFIED | `uint8` | 0 | | @@ -116,6 +122,8 @@ Encodes the system state of the vehicle published by commander. ### FAILSAFE_DEFER_STATE {#FAILSAFE_DEFER_STATE} +Used in field(s): [failsafe_defer_state](#fld_failsafe_defer_state) + | Назва | Тип | Значення | Опис | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | ------------------------------------------------ | | FAILSAFE_DEFER_STATE_DISABLED | `uint8` | 0 | | diff --git a/docs/uk/msg_docs/VehicleStatusV2.md b/docs/uk/msg_docs/VehicleStatusV2.md index 09f0d8d785..85604dce7b 100644 --- a/docs/uk/msg_docs/VehicleStatusV2.md +++ b/docs/uk/msg_docs/VehicleStatusV2.md @@ -10,49 +10,49 @@ Encodes the system state of the vehicle published by commander. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| armed_time | `uint64` | | | Arming timestamp (microseconds) | -| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | -| arming_state | `uint8` | | | | -| latest_arming_reason | `uint8` | | | | -| latest_disarming_reason | `uint8` | | | | -| nav_state_timestamp | `uint64` | | | time when current nav_state activated | -| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | -| nav_state | `uint8` | | | Currently active mode | -| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | -| nav_state_display | `uint8` | | | User-visible nav state sent via MAVLink (executor state if active, otherwise nav_state) | -| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | -| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | -| failure_detector_status | `uint16` | | | | -| hil_state | `uint8` | | | | -| vehicle_type | `uint8` | | | | -| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | -| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | -| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | -| gcs_connection_lost | `bool` | | | datalink to GCS lost | -| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | -| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | -| is_vtol | `bool` | | | True if the system is VTOL capable | -| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | -| in_transition_mode | `bool` | | | True if VTOL is doing a transition | -| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | -| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | -| system_id | `uint8` | | | system id, contains MAVLink's system ID field | -| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | -| safety_button_available | `bool` | | | Set to true if a safety button is connected | -| safety_off | `bool` | | | Set to true if safety is off | -| power_input_valid | `bool` | | | set if input power is valid | -| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | -| open_drone_id_system_present | `bool` | | | | -| open_drone_id_system_healthy | `bool` | | | | -| parachute_system_present | `bool` | | | | -| parachute_system_healthy | `bool` | | | | -| traffic_avoidance_system_present | `bool` | | | | -| rc_calibration_in_progress | `bool` | | | | -| calibration_enabled | `bool` | | | | -| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| armed_time | `uint64` | | | Arming timestamp (microseconds) | +| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | +| arming_state | `uint8` | | | | +| latest_arming_reason | `uint8` | | | | +| latest_disarming_reason | `uint8` | | | | +| nav_state_timestamp | `uint64` | | | time when current nav_state activated | +| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | +| nav_state | `uint8` | | | Currently active mode | +| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | +| nav_state_display | `uint8` | | | User-visible nav state sent via MAVLink (executor state if active, otherwise nav_state) | +| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | +| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | +| failure_detector_status | `uint16` | | | | +| hil_state | `uint8` | | | | +| vehicle_type | `uint8` | | | | +| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | +| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | +| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | +| gcs_connection_lost | `bool` | | | datalink to GCS lost | +| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | +| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | +| is_vtol | `bool` | | | True if the system is VTOL capable | +| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | +| in_transition_mode | `bool` | | | True if VTOL is doing a transition | +| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | +| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | +| system_id | `uint8` | | | system id, contains MAVLink's system ID field | +| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | +| safety_button_available | `bool` | | | Set to true if a safety button is connected | +| safety_off | `bool` | | | Set to true if safety is off | +| power_input_valid | `bool` | | | set if input power is valid | +| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | +| open_drone_id_system_present | `bool` | | | | +| open_drone_id_system_healthy | `bool` | | | | +| parachute_system_present | `bool` | | | | +| parachute_system_healthy | `bool` | | | | +| traffic_avoidance_system_present | `bool` | | | | +| rc_calibration_in_progress | `bool` | | | | +| calibration_enabled | `bool` | | | | +| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | ## Constants diff --git a/docs/uk/msg_docs/VehicleStatusV3.md b/docs/uk/msg_docs/VehicleStatusV3.md index 28c9a554b7..71b8e57855 100644 --- a/docs/uk/msg_docs/VehicleStatusV3.md +++ b/docs/uk/msg_docs/VehicleStatusV3.md @@ -10,48 +10,48 @@ Encodes the system state of the vehicle published by commander. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| armed_time | `uint64` | | | Arming timestamp (microseconds) | -| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | -| arming_state | `uint8` | | | | -| latest_arming_reason | `uint8` | | | | -| latest_disarming_reason | `uint8` | | | | -| nav_state_timestamp | `uint64` | | | time when current nav_state activated | -| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | -| nav_state | `uint8` | | | Currently active mode | -| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | -| nav_state_display | `uint8` | | | User-visible nav state sent via MAVLink (executor state if active, otherwise nav_state) | -| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | -| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | -| hil_state | `uint8` | | | | -| vehicle_type | `uint8` | | | | -| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | -| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | -| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | -| gcs_connection_lost | `bool` | | | datalink to GCS lost | -| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | -| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | -| is_vtol | `bool` | | | True if the system is VTOL capable | -| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | -| in_transition_mode | `bool` | | | True if VTOL is doing a transition | -| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | -| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | -| system_id | `uint8` | | | system id, contains MAVLink's system ID field | -| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | -| safety_button_available | `bool` | | | Set to true if a safety button is connected | -| safety_off | `bool` | | | Set to true if safety is off | -| power_input_valid | `bool` | | | set if input power is valid | -| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | -| open_drone_id_system_present | `bool` | | | | -| open_drone_id_system_healthy | `bool` | | | | -| parachute_system_present | `bool` | | | | -| parachute_system_healthy | `bool` | | | | -| traffic_avoidance_system_present | `bool` | | | | -| rc_calibration_in_progress | `bool` | | | | -| calibration_enabled | `bool` | | | | -| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| armed_time | `uint64` | | | Arming timestamp (microseconds) | +| takeoff_time | `uint64` | | | Takeoff timestamp (microseconds) | +| arming_state | `uint8` | | | | +| latest_arming_reason | `uint8` | | | | +| latest_disarming_reason | `uint8` | | | | +| nav_state_timestamp | `uint64` | | | time when current nav_state activated | +| nav_state_user_intention | `uint8` | | | Mode that the user selected (might be different from nav_state in a failsafe situation) | +| nav_state | `uint8` | | | Currently active mode | +| executor_in_charge | `uint8` | | | Current mode executor in charge (0=Autopilot) | +| nav_state_display | `uint8` | | | User-visible nav state sent via MAVLink (executor state if active, otherwise nav_state) | +| valid_nav_states_mask | `uint32` | | | Bitmask for all valid nav_state values | +| can_set_nav_states_mask | `uint32` | | | Bitmask for all modes that a user can select | +| hil_state | `uint8` | | | | +| vehicle_type | `uint8` | | | | +| failsafe | `bool` | | | true if system is in failsafe state (e.g.:RTL, Hover, Terminate, ...) | +| failsafe_and_user_took_over | `bool` | | | true if system is in failsafe state but the user took over control | +| failsafe_defer_state | `uint8` | | | one of FAILSAFE_DEFER_STATE_\* | +| gcs_connection_lost | `bool` | | | datalink to GCS lost | +| gcs_connection_lost_counter | `uint8` | | | counts unique GCS connection lost events | +| high_latency_data_link_lost | `bool` | | | Set to true if the high latency data link (eg. RockBlock Iridium 9603 telemetry module) is lost | +| is_vtol | `bool` | | | True if the system is VTOL capable | +| is_vtol_tailsitter | `bool` | | | True if the system performs a 90° pitch down rotation during transition from MC to FW | +| in_transition_mode | `bool` | | | True if VTOL is doing a transition | +| in_transition_to_fw | `bool` | | | True if VTOL is doing a transition from MC to FW | +| system_type | `uint8` | | | system type, contains mavlink MAV_TYPE | +| system_id | `uint8` | | | system id, contains MAVLink's system ID field | +| component_id | `uint8` | | | subsystem / component id, contains MAVLink's component ID field | +| safety_button_available | `bool` | | | Set to true if a safety button is connected | +| safety_off | `bool` | | | Set to true if safety is off | +| power_input_valid | `bool` | | | set if input power is valid | +| usb_connected | `bool` | | | set to true (never cleared) once telemetry received from usb link | +| open_drone_id_system_present | `bool` | | | | +| open_drone_id_system_healthy | `bool` | | | | +| parachute_system_present | `bool` | | | | +| parachute_system_healthy | `bool` | | | | +| traffic_avoidance_system_present | `bool` | | | | +| rc_calibration_in_progress | `bool` | | | | +| calibration_enabled | `bool` | | | | +| pre_flight_checks_pass | `bool` | | | true if all checks necessary to arm pass | ## Constants diff --git a/docs/uk/msg_docs/VehicleThrustSetpoint.md b/docs/uk/msg_docs/VehicleThrustSetpoint.md index 09c5a131d0..1667cd8687 100644 --- a/docs/uk/msg_docs/VehicleThrustSetpoint.md +++ b/docs/uk/msg_docs/VehicleThrustSetpoint.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | -| xyz | `float32[3]` | | | thrust setpoint along X, Y, Z body axis [-1, 1] | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | +| xyz | `float32[3]` | | | thrust setpoint along X, Y, Z body axis [-1, 1] | ## Source Message diff --git a/docs/uk/msg_docs/VehicleTorqueSetpoint.md b/docs/uk/msg_docs/VehicleTorqueSetpoint.md index 566ce3a841..87710046b0 100644 --- a/docs/uk/msg_docs/VehicleTorqueSetpoint.md +++ b/docs/uk/msg_docs/VehicleTorqueSetpoint.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | -| xyz | `float32[3]` | | | torque setpoint about X, Y, Z body axis (normalized) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | timestamp of the data sample on which this message is based (microseconds) | +| xyz | `float32[3]` | | | torque setpoint about X, Y, Z body axis (normalized) | ## Source Message diff --git a/docs/uk/msg_docs/VelocityLimits.md b/docs/uk/msg_docs/VelocityLimits.md index 11f15011f2..a2fd162688 100644 --- a/docs/uk/msg_docs/VelocityLimits.md +++ b/docs/uk/msg_docs/VelocityLimits.md @@ -10,12 +10,12 @@ Velocity and yaw rate limits for a multicopter position slow mode only. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| horizontal_velocity | `float32` | m/s | | | -| vertical_velocity | `float32` | m/s | | | -| yaw_rate | `float32` | rad/s | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| horizontal_velocity | `float32` | m/s | | | +| vertical_velocity | `float32` | m/s | | | +| yaw_rate | `float32` | rad/s | | | ## Source Message diff --git a/docs/uk/msg_docs/VteAidSource1d.md b/docs/uk/msg_docs/VteAidSource1d.md new file mode 100644 index 0000000000..229a1219d6 --- /dev/null +++ b/docs/uk/msg_docs/VteAidSource1d.md @@ -0,0 +1,97 @@ +--- +pageClass: is-wide-page +--- + +# VteAidSource1d (UORB message) + +Vision Target Estimator 1D fusion aid-source diagnostics (e.g. yaw). + +Published by: vision_target_estimator (VTEOrientation) on every fusion attempt, including rejected ones. +Subscribed by: logger only. Inspect observation, innovation, test_ratio, and fusion_status to debug why a measurement was or was not fused. + +**TOPICS:** vte_aid_ev_yaw + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw observation | +| time_last_predict | `uint64` | us | | Timestamp of last filter prediction | +| observation | `float32` | | | Observation attempted to be fused | +| observation_variance | `float32` | | | Variance of observation attempted to be fused | +| innovation | `float32` | | | Kalman Filter innovation (y = z - Hx) | +| innovation_variance | `float32` | | | Kalman Filter variance of the innovation | +| test_ratio | `float32` | | | Normalized innovation squared (NIS) | +| fusion_status | `uint8` | | [VTE_FUSION_STATUS](#VTE_FUSION_STATUS) | Fusion status code | +| time_since_meas_ms | `float32` | ms | | (now - timestamp_sample) | +| history_steps | `uint8` | | | Number of steps replayed in OOSM (0 if current or failed) | + +## Enums + +### VTE_FUSION_STATUS {#VTE_FUSION_STATUS} + +Used in field(s): [fusion_status](#fld_fusion_status) + +| Назва | Тип | Значення | Опис | +| ----- | --- | -------- | ---- | + +## Constants + +| Назва | Тип | Значення | Опис | +| ------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | ------------------------------------------------------------------------------------------------------ | +| STATUS_IDLE | `uint8` | 0 | No fusion attempted yet | +| STATUS_FUSED_CURRENT | `uint8` | 1 | Fused immediately (low latency) | +| STATUS_FUSED_OOSM | `uint8` | 2 | Fused via history buffer | +| STATUS_REJECT_NIS | `uint8` | 3 | Rejected by Normalized Innovation Squared check | +| STATUS_REJECT_COV | `uint8` | 4 | Rejected due to invalid/infinite covariance or numerical error | +| STATUS_REJECT_TOO_OLD | `uint8` | 5 | Rejected: older than buffer limit (kOosmMaxTimeUs) or oldest sample | +| STATUS_REJECT_TOO_NEW | `uint8` | 6 | Rejected: timestamp in the future (beyond tolerance) | +| STATUS_REJECT_STALE | `uint8` | 7 | Rejected: history was reset due to staleness/discontinuity | +| STATUS_REJECT_EMPTY | `uint8` | 8 | Rejected: history buffer not yet populated | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/VteAidSource1d.msg) + +:::details +Click here to see original file + +```c +# Vision Target Estimator 1D fusion aid-source diagnostics (e.g. yaw). +# +# Published by: vision_target_estimator (VTEOrientation) on every fusion attempt, including rejected ones. +# Subscribed by: logger only. Inspect observation, innovation, test_ratio, and fusion_status to debug why a measurement was or was not fused. + +uint64 timestamp # [us] Time since system start +uint64 timestamp_sample # [us] Timestamp of the raw observation +uint64 time_last_predict # [us] Timestamp of last filter prediction + +# Observation & Innovation +float32 observation # [-] Observation attempted to be fused +float32 observation_variance # [-] Variance of observation attempted to be fused + +float32 innovation # [-] Kalman Filter innovation (y = z - Hx) +float32 innovation_variance # [-] Kalman Filter variance of the innovation + +float32 test_ratio # [-] Normalized innovation squared (NIS) + +uint8 fusion_status # [@enum VTE_FUSION_STATUS] Fusion status code +uint8 STATUS_IDLE = 0 # No fusion attempted yet +uint8 STATUS_FUSED_CURRENT = 1 # Fused immediately (low latency) +uint8 STATUS_FUSED_OOSM = 2 # Fused via history buffer +uint8 STATUS_REJECT_NIS = 3 # Rejected by Normalized Innovation Squared check +uint8 STATUS_REJECT_COV = 4 # Rejected due to invalid/infinite covariance or numerical error +uint8 STATUS_REJECT_TOO_OLD = 5 # Rejected: older than buffer limit (kOosmMaxTimeUs) or oldest sample +uint8 STATUS_REJECT_TOO_NEW = 6 # Rejected: timestamp in the future (beyond tolerance) +uint8 STATUS_REJECT_STALE = 7 # Rejected: history was reset due to staleness/discontinuity +uint8 STATUS_REJECT_EMPTY = 8 # Rejected: history buffer not yet populated + +# OOSM Diagnostics +float32 time_since_meas_ms # [ms] (now - timestamp_sample) +uint8 history_steps # [-] Number of steps replayed in OOSM (0 if current or failed) + +# TOPICS vte_aid_ev_yaw +``` + +::: diff --git a/docs/uk/msg_docs/VteAidSource3d.md b/docs/uk/msg_docs/VteAidSource3d.md new file mode 100644 index 0000000000..70846ecfb8 --- /dev/null +++ b/docs/uk/msg_docs/VteAidSource3d.md @@ -0,0 +1,98 @@ +--- +pageClass: is-wide-page +--- + +# VteAidSource3d (UORB message) + +Vision Target Estimator 3D fusion aid-source diagnostics, one fusion_status per NED axis. + +Published by: vision_target_estimator (VTEPosition) on every fusion attempt, including rejected ones. +Subscribed by: logger only. Inspect observation, innovation, test_ratio, and per-axis fusion_status to debug why a measurement was or was not fused. + +**TOPICS:** vte_aid_gps_pos_target vte_aid_gps_pos_mission vte_aid_gps_vel_target vte_aid_gps_vel_uav vte_aid_fiducial_marker + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| -------------------------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | --------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw observation | +| time_last_predict | `uint64` | us | | Timestamp of last filter prediction | +| observation | `float32[3]` | [NED] | | Sensor observation attempted to be fused | +| observation_variance | `float32[3]` | [NED] | | Variance of the observation attempted to be fused | +| innovation | `float32[3]` | [NED] | | Kalman Filter innovation (y = z - Hx) | +| innovation_variance | `float32[3]` | [NED] | | Kalman Filter variance of the innovation | +| test_ratio | `float32[3]` | | | Normalized innovation squared (NIS) | +| fusion_status | `uint8[3]` | | [VTE_FUSION_STATUS](#VTE_FUSION_STATUS) | Fusion status code per axis | +| time_since_meas_ms | `float32` | ms | | (now - timestamp_sample) | +| history_steps | `uint8` | | | Number of steps replayed in OOSM (0 if current or failed) | + +## Enums + +### VTE_FUSION_STATUS {#VTE_FUSION_STATUS} + +Used in field(s): [fusion_status](#fld_fusion_status) + +| Назва | Тип | Значення | Опис | +| ----- | --- | -------- | ---- | + +## Constants + +| Назва | Тип | Значення | Опис | +| ------------------------------------------------------------------------------------------------------------------------ | ------- | -------- | ------------------------------------------------------------------------------------------------------ | +| STATUS_IDLE | `uint8` | 0 | No fusion attempted yet | +| STATUS_FUSED_CURRENT | `uint8` | 1 | Fused immediately (low latency) | +| STATUS_FUSED_OOSM | `uint8` | 2 | Fused via history buffer | +| STATUS_REJECT_NIS | `uint8` | 3 | Rejected by Normalized Innovation Squared check | +| STATUS_REJECT_COV | `uint8` | 4 | Rejected due to invalid/infinite covariance or numerical error | +| STATUS_REJECT_TOO_OLD | `uint8` | 5 | Rejected: older than buffer limit (kOosmMaxTimeUs) or oldest sample | +| STATUS_REJECT_TOO_NEW | `uint8` | 6 | Rejected: timestamp in the future (beyond tolerance) | +| STATUS_REJECT_STALE | `uint8` | 7 | Rejected: history was reset due to staleness/discontinuity | +| STATUS_REJECT_EMPTY | `uint8` | 8 | Rejected: history buffer not yet populated | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/VteAidSource3d.msg) + +:::details +Click here to see original file + +```c +# Vision Target Estimator 3D fusion aid-source diagnostics, one fusion_status per NED axis. +# +# Published by: vision_target_estimator (VTEPosition) on every fusion attempt, including rejected ones. +# Subscribed by: logger only. Inspect observation, innovation, test_ratio, and per-axis fusion_status to debug why a measurement was or was not fused. + +uint64 timestamp # [us] Time since system start +uint64 timestamp_sample # [us] Timestamp of the raw observation +uint64 time_last_predict # [us] Timestamp of last filter prediction + +# Observation & Innovation +float32[3] observation # [-] [@frame NED] Sensor observation attempted to be fused +float32[3] observation_variance # [-] [@frame NED] Variance of the observation attempted to be fused + +float32[3] innovation # [-] [@frame NED] Kalman Filter innovation (y = z - Hx) +float32[3] innovation_variance # [-] [@frame NED] Kalman Filter variance of the innovation + +float32[3] test_ratio # [-] Normalized innovation squared (NIS) + +uint8[3] fusion_status # [@enum VTE_FUSION_STATUS] Fusion status code per axis +uint8 STATUS_IDLE = 0 # No fusion attempted yet +uint8 STATUS_FUSED_CURRENT = 1 # Fused immediately (low latency) +uint8 STATUS_FUSED_OOSM = 2 # Fused via history buffer +uint8 STATUS_REJECT_NIS = 3 # Rejected by Normalized Innovation Squared check +uint8 STATUS_REJECT_COV = 4 # Rejected due to invalid/infinite covariance or numerical error +uint8 STATUS_REJECT_TOO_OLD = 5 # Rejected: older than buffer limit (kOosmMaxTimeUs) or oldest sample +uint8 STATUS_REJECT_TOO_NEW = 6 # Rejected: timestamp in the future (beyond tolerance) +uint8 STATUS_REJECT_STALE = 7 # Rejected: history was reset due to staleness/discontinuity +uint8 STATUS_REJECT_EMPTY = 8 # Rejected: history buffer not yet populated + +# OOSM Diagnostics (Shared across axes) +float32 time_since_meas_ms # [ms] (now - timestamp_sample) +uint8 history_steps # [-] Number of steps replayed in OOSM (0 if current or failed) + +# TOPICS vte_aid_gps_pos_target vte_aid_gps_pos_mission vte_aid_gps_vel_target vte_aid_gps_vel_uav +# TOPICS vte_aid_fiducial_marker +``` + +::: diff --git a/docs/uk/msg_docs/VteBiasInitStatus.md b/docs/uk/msg_docs/VteBiasInitStatus.md new file mode 100644 index 0000000000..b1c9f0e2b0 --- /dev/null +++ b/docs/uk/msg_docs/VteBiasInitStatus.md @@ -0,0 +1,43 @@ +--- +pageClass: is-wide-page +--- + +# VteBiasInitStatus (UORB message) + +Diagnostics for the initial GNSS/vision bias averaging phase in the Vision Target Estimator. + +Published by: vision_target_estimator (VTEPosition) while the bias low-pass filter is running. +Subscribed by: logger only, to verify that the bias settles before the estimator starts fusing vision. + +**TOPICS:** vte_bias_init_status + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| raw_bias | `float32[3]` | m [NED] | | Current GNSS-vision bias sample | +| filtered_bias | `float32[3]` | m [NED] | | Low-pass filtered bias sample | +| delta_norm | `float32` | m | | norm(raw_bias_k - raw_bias_k-1) | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/VteBiasInitStatus.msg) + +:::details +Click here to see original file + +```c +# Diagnostics for the initial GNSS/vision bias averaging phase in the Vision Target Estimator. +# +# Published by: vision_target_estimator (VTEPosition) while the bias low-pass filter is running. +# Subscribed by: logger only, to verify that the bias settles before the estimator starts fusing vision. + +uint64 timestamp # [us] Time since system start + +float32[3] raw_bias # [m] [@frame NED] Current GNSS-vision bias sample +float32[3] filtered_bias # [m] [@frame NED] Low-pass filtered bias sample +float32 delta_norm # [m] norm(raw_bias_k - raw_bias_k-1) +``` + +::: diff --git a/docs/uk/msg_docs/VteInput.md b/docs/uk/msg_docs/VteInput.md new file mode 100644 index 0000000000..e1e98d632a --- /dev/null +++ b/docs/uk/msg_docs/VteInput.md @@ -0,0 +1,45 @@ +--- +pageClass: is-wide-page +--- + +# VteInput (UORB message) + +Vehicle inputs fed into the Vision Target Estimator position prediction step, logged for tuning. + +Published by: vision_target_estimator (VisionTargetEst work item). +Subscribed by: logger only. + +**TOPICS:** vte_input + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw input data | +| acc_xyz | `float32[3]` | m/s^2 [NED] | | Downsampled UAV bias-corrected acceleration (including gravity) | +| q_att | `float32[4]` | | | Downsampled UAV attitude quaternion (FRD body -> NED earth) | +| acc_sample_count | `uint32` | | | Number of raw samples averaged into acc_xyz this cycle | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/VteInput.msg) + +:::details +Click here to see original file + +```c +# Vehicle inputs fed into the Vision Target Estimator position prediction step, logged for tuning. +# +# Published by: vision_target_estimator (VisionTargetEst work item). +# Subscribed by: logger only. + +uint64 timestamp # [us] Time since system start +uint64 timestamp_sample # [us] Timestamp of the raw input data + +float32[3] acc_xyz # [m/s^2] [@frame NED] Downsampled UAV bias-corrected acceleration (including gravity) +float32[4] q_att # [-] Downsampled UAV attitude quaternion (FRD body -> NED earth) +uint32 acc_sample_count # [-] Number of raw samples averaged into acc_xyz this cycle +``` + +::: diff --git a/docs/uk/msg_docs/VteOrientation.md b/docs/uk/msg_docs/VteOrientation.md new file mode 100644 index 0000000000..28a1a1ede4 --- /dev/null +++ b/docs/uk/msg_docs/VteOrientation.md @@ -0,0 +1,49 @@ +--- +pageClass: is-wide-page +--- + +# VteOrientation (UORB message) + +Vision Target Estimator orientation state, exposing the full yaw filter output with covariances for logging and tuning. + +Published by: vision_target_estimator (VTEOrientation). +Subscribed by: logger only. The orientation-related fields consumed elsewhere (precision landing) are exposed on landing_target_pose. + +**TOPICS:** vte_orientation + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ----------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | ----------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| orientation_valid | `bool` | | | Relative orientation estimate valid | +| yaw | `float32` | rad [NED] | | Target yaw angle | +| cov_yaw | `float32` | rad^2 | | Variance of yaw | +| yaw_rate | `float32` | rad/s [NED] | | Target yaw rate | +| cov_yaw_rate | `float32` | (rad/s)^2 | | Variance of yaw_rate | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/VteOrientation.msg) + +:::details +Click here to see original file + +```c +# Vision Target Estimator orientation state, exposing the full yaw filter output with covariances for logging and tuning. +# +# Published by: vision_target_estimator (VTEOrientation). +# Subscribed by: logger only. The orientation-related fields consumed elsewhere (precision landing) are exposed on landing_target_pose. + +uint64 timestamp # [us] Time since system start + +bool orientation_valid # [-] Relative orientation estimate valid + +float32 yaw # [rad] [@frame NED] Target yaw angle +float32 cov_yaw # [rad^2] Variance of yaw + +float32 yaw_rate # [rad/s] [@frame NED] Target yaw rate +float32 cov_yaw_rate # [(rad/s)^2] Variance of yaw_rate +``` + +::: diff --git a/docs/uk/msg_docs/VtePosition.md b/docs/uk/msg_docs/VtePosition.md new file mode 100644 index 0000000000..d8dde9a017 --- /dev/null +++ b/docs/uk/msg_docs/VtePosition.md @@ -0,0 +1,67 @@ +--- +pageClass: is-wide-page +--- + +# VtePosition (UORB message) + +Vision Target Estimator position state, exposing the full per-axis Kalman filter state with covariances for logging and tuning. + +Published by: vision_target_estimator (VTEPosition). +Subscribed by: logger only. The position-related fields consumed elsewhere (precision landing, EKF2 aiding) are exposed on landing_target_pose. + +vel_target and acc_target are only populated when the firmware is built with CONFIG_VTEST_MOVING=y; otherwise they stay at zero. + +**TOPICS:** vte_position + +## Fields + +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------- | ------------ | -------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| rel_pos_valid | `bool` | | | Relative position estimate valid | +| rel_vel_valid | `bool` | | | Relative velocity estimate valid | +| rel_pos | `float32[3]` | m [NED] | | Target position relative to vehicle | +| vel_uav | `float32[3]` | m/s [NED] | | Vehicle velocity | +| vel_target | `float32[3]` | m/s [NED] | | Target velocity | +| bias | `float32[3]` | m [NED] | | GNSS bias between vehicle and target receivers | +| acc_target | `float32[3]` | m/s^2 [NED] | | Target acceleration | +| cov_rel_pos | `float32[3]` | m^2 [NED] | | Variance of rel_pos | +| cov_vel_uav | `float32[3]` | (m/s)^2 [NED] | | Variance of vel_uav | +| cov_bias | `float32[3]` | m^2 [NED] | | Variance of bias | +| cov_vel_target | `float32[3]` | (m/s)^2 [NED] | | Variance of vel_target | +| cov_acc_target | `float32[3]` | (m/s^2)^2 [NED] | | Variance of acc_target | + +## Source Message + +[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/VtePosition.msg) + +:::details +Click here to see original file + +```c +# Vision Target Estimator position state, exposing the full per-axis Kalman filter state with covariances for logging and tuning. +# +# Published by: vision_target_estimator (VTEPosition). +# Subscribed by: logger only. The position-related fields consumed elsewhere (precision landing, EKF2 aiding) are exposed on landing_target_pose. +# +# vel_target and acc_target are only populated when the firmware is built with CONFIG_VTEST_MOVING=y; otherwise they stay at zero. + +uint64 timestamp # [us] Time since system start + +bool rel_pos_valid # [-] Relative position estimate valid +bool rel_vel_valid # [-] Relative velocity estimate valid + +float32[3] rel_pos # [m] [@frame NED] Target position relative to vehicle +float32[3] vel_uav # [m/s] [@frame NED] Vehicle velocity +float32[3] vel_target # [m/s] [@frame NED] Target velocity +float32[3] bias # [m] [@frame NED] GNSS bias between vehicle and target receivers +float32[3] acc_target # [m/s^2] [@frame NED] Target acceleration + +float32[3] cov_rel_pos # [m^2] [@frame NED] Variance of rel_pos +float32[3] cov_vel_uav # [(m/s)^2] [@frame NED] Variance of vel_uav +float32[3] cov_bias # [m^2] [@frame NED] Variance of bias +float32[3] cov_vel_target # [(m/s)^2] [@frame NED] Variance of vel_target +float32[3] cov_acc_target # [(m/s^2)^2] [@frame NED] Variance of acc_target +``` + +::: diff --git a/docs/uk/msg_docs/VtolVehicleStatus.md b/docs/uk/msg_docs/VtolVehicleStatus.md index bf469cc0b5..b1709ceb16 100644 --- a/docs/uk/msg_docs/VtolVehicleStatus.md +++ b/docs/uk/msg_docs/VtolVehicleStatus.md @@ -10,11 +10,11 @@ VEHICLE_VTOL_STATE, should match 1:1 MAVLinks's MAV_VTOL_STATE. ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ---------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| vehicle_vtol_state | `uint8` | | | current state of the vtol, see VEHICLE_VTOL_STATE | -| fixed_wing_system_failure | `bool` | | | vehicle in fixed-wing system failure failsafe mode (after quad-chute) | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ---------------------------------------------------------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| vehicle_vtol_state | `uint8` | | | current state of the vtol, see VEHICLE_VTOL_STATE | +| fixed_wing_system_failure | `bool` | | | vehicle in fixed-wing system failure failsafe mode (after quad-chute) | ## Constants diff --git a/docs/uk/msg_docs/Vtx.md b/docs/uk/msg_docs/Vtx.md index 64c45c39a4..4c232386ea 100644 --- a/docs/uk/msg_docs/Vtx.md +++ b/docs/uk/msg_docs/Vtx.md @@ -8,19 +8,19 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------- | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| protocol | `uint8` | | | | -| device | `uint8` | | | | -| mode | `uint8` | | | | -| band | `int8` | | | Band number (0-23), negative values indicate frequency mode | -| channel | `int8` | | | Channel number (0-15), negative values indicate frequency mode | -| frequency | `uint16` | | | Frequency in MHz, zero indicates unknown | -| band_letter | `uint8` | | | Band letter as ASCII | -| band_name | `uint8[12]` | | | Band name in ASCII without null termination | -| power_level | `int8` | | | Current power level (0-15), negative values indicate unknown | -| power_label | `uint8[4]` | | | Current power label in ASCII without null termination | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------ | ----------- | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| protocol | `uint8` | | | | +| device | `uint8` | | | | +| mode | `uint8` | | | | +| band | `int8` | | | Band number (0-23), negative values indicate frequency mode | +| channel | `int8` | | | Channel number (0-15), negative values indicate frequency mode | +| frequency | `uint16` | | | Frequency in MHz, zero indicates unknown | +| band_letter | `uint8` | | | Band letter as ASCII | +| band_name | `uint8[12]` | | | Band name in ASCII without null termination | +| power_level | `int8` | | | Current power level (0-15), negative values indicate unknown | +| power_label | `uint8[4]` | | | Current power label in ASCII without null termination | ## Constants diff --git a/docs/uk/msg_docs/WheelEncoders.md b/docs/uk/msg_docs/WheelEncoders.md index 099d65361b..631bebcf23 100644 --- a/docs/uk/msg_docs/WheelEncoders.md +++ b/docs/uk/msg_docs/WheelEncoders.md @@ -8,11 +8,11 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | -| timestamp | `uint64` | | | time since system start (microseconds) | -| wheel_speed | `float32[2]` | rad/s | | | -| wheel_angle | `float32[2]` | rad | | | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------ | ------------ | ---------------------------------------------------------------- | ---------- | --------------------------------------------------------- | +| timestamp | `uint64` | | | time since system start (microseconds) | +| wheel_speed | `float32[2]` | rad/s | | | +| wheel_angle | `float32[2]` | rad | | | ## Source Message diff --git a/docs/uk/msg_docs/Wind.md b/docs/uk/msg_docs/Wind.md index c90274aa9f..8ab2aa1d22 100644 --- a/docs/uk/msg_docs/Wind.md +++ b/docs/uk/msg_docs/Wind.md @@ -13,18 +13,18 @@ Published by the navigation filter (EKF2) for use by other flight modules and li ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| -------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------- | -| timestamp | `uint64` | us | | Time since system start | -| timestamp_sample | `uint64` | us | | Timestamp of the raw data | -| windspeed_north | `float32` | m/s | | Wind component in north / X direction | -| windspeed_east | `float32` | m/s | | Wind component in east / Y direction | -| variance_north | `float32` | (m/s)^2 | | Wind estimate error variance in north / X direction (Invalid: 0 if not estimated) | -| variance_east | `float32` | (m/s)^2 | | Wind estimate error variance in east / Y direction (Invalid: 0 if not estimated) | -| tas_innov | `float32` | m/s | | True airspeed innovation | -| tas_innov_var | `float32` | (m/s)^2 | | True airspeed innovation variance | -| beta_innov | `float32` | rad | | Sideslip measurement innovation | -| beta_innov_var | `float32` | rad^2 | | Sideslip measurement innovation variance | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| --------------------------------------------------------------------------------------- | --------- | ---------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64` | us | | Time since system start | +| timestamp_sample | `uint64` | us | | Timestamp of the raw data | +| windspeed_north | `float32` | m/s | | Wind component in north / X direction | +| windspeed_east | `float32` | m/s | | Wind component in east / Y direction | +| variance_north | `float32` | (m/s)^2 | | Wind estimate error variance in north / X direction (Invalid: 0 if not estimated) | +| variance_east | `float32` | (m/s)^2 | | Wind estimate error variance in east / Y direction (Invalid: 0 if not estimated) | +| tas_innov | `float32` | m/s | | True airspeed innovation | +| tas_innov_var | `float32` | (m/s)^2 | | True airspeed innovation variance | +| beta_innov | `float32` | rad | | Sideslip measurement innovation | +| beta_innov_var | `float32` | rad^2 | | Sideslip measurement innovation variance | ## Constants diff --git a/docs/uk/msg_docs/YawEstimatorStatus.md b/docs/uk/msg_docs/YawEstimatorStatus.md index 110ccae163..f599c5a46e 100644 --- a/docs/uk/msg_docs/YawEstimatorStatus.md +++ b/docs/uk/msg_docs/YawEstimatorStatus.md @@ -8,17 +8,17 @@ pageClass: is-wide-page ## Fields -| Назва | Тип | Unit [Frame] | Range/Enum | Опис | -| ------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------ | -| timestamp | `uint64` | | | time since system start (microseconds) | -| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | -| yaw_composite | `float32` | | | composite yaw from GSF (rad) | -| yaw_variance | `float32` | | | composite yaw variance from GSF (rad^2) | -| yaw_composite_valid | `bool` | | | | -| yaw | `float32[5]` | | | yaw estimate for each model in the filter bank (rad) | -| innov_vn | `float32[5]` | | | North velocity innovation for each model in the filter bank (m/s) | -| innov_ve | `float32[5]` | | | East velocity innovation for each model in the filter bank (m/s) | -| weight | `float32[5]` | | | weighting for each model in the filter bank | +| Назва | Тип | Unit [Frame] | Range/Enum | Опис | +| ------------------------------------------------------------------------------------------------- | ------------ | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------ | +| timestamp | `uint64` | | | time since system start (microseconds) | +| timestamp_sample | `uint64` | | | the timestamp of the raw data (microseconds) | +| yaw_composite | `float32` | | | composite yaw from GSF (rad) | +| yaw_variance | `float32` | | | composite yaw variance from GSF (rad^2) | +| yaw_composite_valid | `bool` | | | | +| yaw | `float32[5]` | | | yaw estimate for each model in the filter bank (rad) | +| innov_vn | `float32[5]` | | | North velocity innovation for each model in the filter bank (m/s) | +| innov_ve | `float32[5]` | | | East velocity innovation for each model in the filter bank (m/s) | +| weight | `float32[5]` | | | weighting for each model in the filter bank | ## Source Message diff --git a/docs/uk/msg_docs/index.md b/docs/uk/msg_docs/index.md index d40d1e558c..9bc7744c5a 100644 --- a/docs/uk/msg_docs/index.md +++ b/docs/uk/msg_docs/index.md @@ -13,6 +13,8 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m ## Versioned Messages +### Current Versions + - [ActuatorMotors](ActuatorMotors.md) — Motor control message. - [ActuatorServos](ActuatorServos.md) — Servo control message. - [AirspeedValidated](AirspeedValidated.md) — Validated airspeed. @@ -51,6 +53,27 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m - [VtolVehicleStatus](VtolVehicleStatus.md) — VEHICLE_VTOL_STATE, should match 1:1 MAVLinks's MAV_VTOL_STATE. - [Wind](Wind.md) — Wind estimate (from EKF2). +### Historic Versions + +- [AirspeedValidatedV0](AirspeedValidatedV0.md) +- [ArmingCheckReplyV0](ArmingCheckReplyV0.md) +- [ArmingCheckRequestV0](ArmingCheckRequestV0.md) — Arming check request. +- [BatteryStatusV0](BatteryStatusV0.md) — Battery status. +- [ConfigOverridesV0](ConfigOverridesV0.md) — Configurable overrides by (external) modes or mode executors. +- [EventV0](EventV0.md) — this message is required here in the msg_old folder because other msg are depending on it. Events interface. +- [HomePositionV0](HomePositionV0.md) — GPS home position in WGS84 coordinates. +- [RegisterExtComponentReplyV0](RegisterExtComponentReplyV0.md) +- [RegisterExtComponentRequestV0](RegisterExtComponentRequestV0.md) — Request to register an external component. +- [RegisterExtComponentRequestV1](RegisterExtComponentRequestV1.md) — Request to register an external component. +- [VehicleAttitudeSetpointV0](VehicleAttitudeSetpointV0.md) +- [VehicleCommandAckV0](VehicleCommandAckV0.md) — Vehicle Command Ackonwledgement uORB message. Used for acknowledging the vehicle command being received. Follows the MAVLink COMMAND_ACK message definition. +- [VehicleGlobalPositionV0](VehicleGlobalPositionV0.md) — Fused global position in WGS84. This struct contains global position estimation. It is not the raw GPS. measurement (@see vehicle_gps_position). This topic is usually published by the position. estimator, which will take more sources of information into account than just GPS,. e.g. control inputs of the vehicle in a Kalman-filter implementation. +- [VehicleLocalPositionV0](VehicleLocalPositionV0.md) — Fused local position in NED. The coordinate system origin is the vehicle position at the time when the EKF2-module was started. +- [VehicleStatusV0](VehicleStatusV0.md) — Encodes the system state of the vehicle published by commander. +- [VehicleStatusV1](VehicleStatusV1.md) — Encodes the system state of the vehicle published by commander. +- [VehicleStatusV2](VehicleStatusV2.md) — Encodes the system state of the vehicle published by commander. +- [VehicleStatusV3](VehicleStatusV3.md) — Encodes the system state of the vehicle published by commander. + ## Unversioned Messages - [ActionRequest](ActionRequest.md) — Action request for the vehicle's main state. @@ -105,6 +128,8 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m - [EstimatorStatusFlags](EstimatorStatusFlags.md) - [FailsafeFlags](FailsafeFlags.md) — Input flags for the failsafe state machine set by the arming & health checks. - [FailureDetectorStatus](FailureDetectorStatus.md) +- [FiducialMarkerPosReport](FiducialMarkerPosReport.md) — Relative position of a precision-landing target detected by a vision pipeline (e.g. an ArUco marker). +- [FiducialMarkerYawReport](FiducialMarkerYawReport.md) — Yaw of a precision-landing target relative to the NED (North, East, Down) frame, reported by a vision pipeline. - [FigureEightStatus](FigureEightStatus.md) - [FixedWingLateralGuidanceStatus](FixedWingLateralGuidanceStatus.md) — Fixed Wing Lateral Guidance Status message. Published by fw_pos_control module to report the resultant lateral setpoints and NPFG debug outputs. - [FixedWingLateralStatus](FixedWingLateralStatus.md) — Fixed Wing Lateral Status message. Published by the fw_lateral_longitudinal_control module to report the resultant lateral setpoint. @@ -187,6 +212,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m - [PowerButtonState](PowerButtonState.md) — power button state notification message. - [PowerMonitor](PowerMonitor.md) — power monitor message. - [PpsCapture](PpsCapture.md) +- [PrecLandStatus](PrecLandStatus.md) — Precision-landing runtime status: a single state captures both whether precision landing is active and which phase it is in. - [PurePursuitStatus](PurePursuitStatus.md) — Pure pursuit status. - [PwmInput](PwmInput.md) - [Px4ioStatus](Px4ioStatus.md) @@ -233,6 +259,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m - [SensorsStatusImu](SensorsStatusImu.md) — Sensor check metrics. This will be zero for a sensor that's primary or unpopulated. - [SystemPower](SystemPower.md) - [TakeoffStatus](TakeoffStatus.md) — Status of the takeoff state machine currently just available for multicopters. +- [TargetGnss](TargetGnss.md) — Landing target GNSS position in WGS84 coordinates, and optional NED velocity, from a target-mounted receiver. - [TaskStackInfo](TaskStackInfo.md) — stack information for a single running process. - [TecsStatus](TecsStatus.md) - [TelemetryStatus](TelemetryStatus.md) @@ -259,24 +286,12 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m - [VehicleThrustSetpoint](VehicleThrustSetpoint.md) - [VehicleTorqueSetpoint](VehicleTorqueSetpoint.md) - [VelocityLimits](VelocityLimits.md) — Velocity and yaw rate limits for a multicopter position slow mode only. +- [VteAidSource1d](VteAidSource1d.md) — Vision Target Estimator 1D fusion aid-source diagnostics (e.g. yaw). +- [VteAidSource3d](VteAidSource3d.md) — Vision Target Estimator 3D fusion aid-source diagnostics, one fusion_status per NED axis. +- [VteBiasInitStatus](VteBiasInitStatus.md) — Diagnostics for the initial GNSS/vision bias averaging phase in the Vision Target Estimator. +- [VteInput](VteInput.md) — Vehicle inputs fed into the Vision Target Estimator position prediction step, logged for tuning. +- [VteOrientation](VteOrientation.md) — Vision Target Estimator orientation state, exposing the full yaw filter output with covariances for logging and tuning. +- [VtePosition](VtePosition.md) — Vision Target Estimator position state, exposing the full per-axis Kalman filter state with covariances for logging and tuning. - [Vtx](Vtx.md) - [WheelEncoders](WheelEncoders.md) - [YawEstimatorStatus](YawEstimatorStatus.md) -- [AirspeedValidatedV0](AirspeedValidatedV0.md) -- [ArmingCheckReplyV0](ArmingCheckReplyV0.md) -- [ArmingCheckRequestV0](ArmingCheckRequestV0.md) — Arming check request. -- [BatteryStatusV0](BatteryStatusV0.md) — Battery status. -- [ConfigOverridesV0](ConfigOverridesV0.md) — Configurable overrides by (external) modes or mode executors. -- [EventV0](EventV0.md) — this message is required here in the msg_old folder because other msg are depending on it. Events interface. -- [HomePositionV0](HomePositionV0.md) — GPS home position in WGS84 coordinates. -- [RegisterExtComponentReplyV0](RegisterExtComponentReplyV0.md) -- [RegisterExtComponentRequestV0](RegisterExtComponentRequestV0.md) — Request to register an external component. -- [RegisterExtComponentRequestV1](RegisterExtComponentRequestV1.md) — Request to register an external component. -- [VehicleAttitudeSetpointV0](VehicleAttitudeSetpointV0.md) -- [VehicleCommandAckV0](VehicleCommandAckV0.md) — Vehicle Command Ackonwledgement uORB message. Used for acknowledging the vehicle command being received. Follows the MAVLink COMMAND_ACK message definition. -- [VehicleGlobalPositionV0](VehicleGlobalPositionV0.md) — Fused global position in WGS84. This struct contains global position estimation. It is not the raw GPS. measurement (@see vehicle_gps_position). This topic is usually published by the position. estimator, which will take more sources of information into account than just GPS,. e.g. control inputs of the vehicle in a Kalman-filter implementation. -- [VehicleLocalPositionV0](VehicleLocalPositionV0.md) — Fused local position in NED. The coordinate system origin is the vehicle position at the time when the EKF2-module was started. -- [VehicleStatusV0](VehicleStatusV0.md) — Encodes the system state of the vehicle published by commander. -- [VehicleStatusV1](VehicleStatusV1.md) — Encodes the system state of the vehicle published by commander. -- [VehicleStatusV2](VehicleStatusV2.md) — Encodes the system state of the vehicle published by commander. -- [VehicleStatusV3](VehicleStatusV3.md) — Encodes the system state of the vehicle published by commander. diff --git a/docs/uk/sim_gazebo_gz/index.md b/docs/uk/sim_gazebo_gz/index.md index e6f597dd9d..e7882a632e 100644 --- a/docs/uk/sim_gazebo_gz/index.md +++ b/docs/uk/sim_gazebo_gz/index.md @@ -228,6 +228,49 @@ In addition to being a precondition for running the simulation faster/slower tha Lockstep cannot be disabled on Gazebo. ::: +### Video Streaming + +Some models (e.g. `gz_x500_mono_cam`, `gz_x500_gimbal`) include a camera and support video streaming. By default, the stream is published over UDP on port 5600 using the RTP protocol. + +#### Вимоги + +GStreamer 1.0 is required. The necessary dependencies are included in the standard PX4 installation scripts for Ubuntu Linux and macOS. + +:::info +Required packages: `gstreamer1.0-plugins-base`, `gstreamer1.0-plugins-good`, `gstreamer1.0-plugins-bad`, `gstreamer1.0-plugins-ugly`, `libgstreamer-plugins-base1.0-dev`. If missing, install them via `apt` or your system package manager. +::: + +#### Viewing the Video Stream + +**QGroundControl (recommended)** + +Open **Application Settings > General**, set **Video Source** to _UDP h.264 Video Stream_, and set **UDP Port** to `5600`. + +![QGC Video Streaming Settings for Gazebo](../../assets/simulation/gazebo_classic/qgc_gazebo_video_stream_udp.png) + +The Gazebo video feed will then appear in QGroundControl exactly as it would from a real camera. + +![QGC Video Streaming Gazebo Example](../../assets/simulation/gazebo_classic/qgc_gazebo_video_stream_typhoon.jpg) + +**GStreamer pipeline** + +To view the stream directly from a terminal: + +```sh +gst-launch-1.0 -v udpsrc port=5600 \ + caps='application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264' \ + ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink sync=false +``` + +#### Симуляція кількох рухомих засобів + +In a multi-vehicle simulation, each vehicle instance streams to a separate port starting from `5600` — i.e. `5600`, `5601`, `5602`, and so on. If an instance (other than the first, which acts as the Gazebo world host) is restarted, it resumes streaming on its originally assigned port. + +#### Розширене використання + +The default port and protocol (RTP) can be changed by modifying the world's SDF file. +See the [GStreamer plugin README](https://github.com/PX4/PX4-Autopilot/blob/main/src/modules/simulation/gz_plugins/gstreamer/README.md) for details. + ## Використання/Налаштування Конвеєр запуску дозволяє дуже гнучке налаштування. diff --git a/docs/uk/sim_sih/index.md b/docs/uk/sim_sih/index.md index 90d982fd29..8c078da8d7 100644 --- a/docs/uk/sim_sih/index.md +++ b/docs/uk/sim_sih/index.md @@ -30,14 +30,14 @@ Two modes are supported: The following vehicle types are supported: -| Транспортний засіб | Make Target | Status | -| ---------------------------------------------------------------------------------- | ---------------------------------------- | ----------------------------- | -| Quadrotor X | `make px4_sitl_sih sihsim_quadx` | Stable | -| Hexarotor X | `make px4_sitl_sih sihsim_hexa` | Експериментальні налаштування | -| Fixed-wing (airplane) | `make px4_sitl_sih sihsim_airplane` | Експериментальні налаштування | -| Tailsitter VTOL | `make px4_sitl_sih sihsim_xvert` | Експериментальні налаштування | -| Standard VTOL (QuadPlane) | `make px4_sitl_sih sihsim_standard_vtol` | Експериментальні налаштування | -| Ackermann Rover | `make px4_sitl_sih sihsim_rover` | Експериментальні налаштування | +| Транспортний засіб | Make Target | Status | +| ---------------------------------------------------------------------------------- | ------------------------------------------ | ----------------------------- | +| Quadrotor X | `make px4_sitl_sih sihsim_quadx` | Stable | +| Hexarotor X | `make px4_sitl_sih sihsim_hexa` | Експериментальні налаштування | +| Fixed-wing (airplane) | `make px4_sitl_sih sihsim_airplane` | Експериментальні налаштування | +| Tailsitter VTOL | `make px4_sitl_sih sihsim_xvert` | Експериментальні налаштування | +| Standard VTOL (QuadPlane) | `make px4_sitl_sih sihsim_standard_vtol` | Експериментальні налаштування | +| Ackermann Rover | `make px4_sitl_sih sihsim_rover_ackermann` | Експериментальні налаштування | :::warning Only the quadrotor vehicle type is stable and recommended for development. All other vehicle types (hexarotor, fixed-wing, VTOL, rover) are experimental and may have aerodynamic model or controller interaction issues that produce unrealistic flight behaviour. @@ -303,7 +303,7 @@ If not, the SIH uses a simple model with maximum thrust force given by `SIH_F_T_ ## Відео -SIH demo with a fixed-wing vehicle @[youtube](https://youtu.be/PzIpSCRD8Jo) +SIH demo with a fixed-wing vehicle @[youtube](https://youtu.be/PzIpSCRD8Jo) How to parametrize the thrust and power coefficients CT & CP @[youtube](https://www.youtube.com/watch?v=KNSd9ge0sSw) ## Автори diff --git a/docs/uk/simulation/px4_simulation_quickstart.md b/docs/uk/simulation/px4_simulation_quickstart.md index 1ba3164a41..c816d64352 100644 --- a/docs/uk/simulation/px4_simulation_quickstart.md +++ b/docs/uk/simulation/px4_simulation_quickstart.md @@ -29,7 +29,7 @@ docker run --rm -it -p 14550:14550/udp -e PX4_SIM_MODEL=sihsim_standard_vtol px4 Ackermann rover ```sh -docker run --rm -it -p 14550:14550/udp -e PX4_SIM_MODEL=sihsim_rover px4io/px4-sitl:latest +docker run --rm -it -p 14550:14550/udp -e PX4_SIM_MODEL=sihsim_rover_ackermann px4io/px4-sitl:latest ``` For more information and options see [Container Images](../simulation/px4_sitl_prebuilt_packages.md#container-images) (in _Pre-built SITL Packages_) and [SIH Simulation](../sim_sih/index.md).