diff --git a/docs/zh/SUMMARY.md b/docs/zh/SUMMARY.md index 8fa3acdc49..9b7e14bde6 100644 --- a/docs/zh/SUMMARY.md +++ b/docs/zh/SUMMARY.md @@ -426,6 +426,8 @@ - [Standard Configuration](config/index.md) + - [OEM Configuration](advanced_config/oem.md) + - [高级配置](advanced_config/index.md) - [Using PX4's Navigation Filter (EKF2)](advanced_config/tuning_the_ecl_ekf.md) - [GNSS-Denied & Degraded Flight](advanced_config/gnss_degraded_or_denied_flight.md) diff --git a/docs/zh/advanced/parameters_and_configurations.md b/docs/zh/advanced/parameters_and_configurations.md index e42e0e6899..82486159a4 100644 --- a/docs/zh/advanced/parameters_and_configurations.md +++ b/docs/zh/advanced/parameters_and_configurations.md @@ -358,6 +358,62 @@ The parameter metadata JSON file is compiled into firmware (or hosted on the Int This process is the same as for [events metadata](../concept/events_interface.md#publishing-event-metadata-to-a-gcs). For more information see [PX4 Metadata (Translation & Publication)](../advanced/px4_metadata.md) +## Read-Only Parameters + +Integrators who productize PX4 can lock down parameters so that end users cannot change safety-critical or product-defining settings. +This works in two phases: + +1. **Build time** — a YAML file in the board directory declares _which_ parameters are read-only. +2. **Run time** — `param lock` in the startup script activates enforcement. + +Before the lock, all parameters (including those on the read-only list) can be freely set by startup scripts (`rc.board_defaults`, airframe scripts, `config.txt`, etc.). +After the lock, any attempt to modify a read-only parameter is rejected. + +### 配置 + +Create `boards///readonly_params.yaml` with the following format: + +```yaml +# mode: 'block' = listed params are read-only (all others writable) +# mode: 'allow' = only listed params are writable (all others read-only) +mode: block +parameters: + - SYS_AUTOSTART + - SYS_AUTOCONFIG + - BAT1_N_CELLS +``` + +The two modes are: + +- **`block`**: The listed parameters are read-only; all other parameters remain writable. +- **`allow`**: Only the listed parameters are writable; all others become read-only. + +All parameter names in the list are validated at build time — the build will fail if any listed parameter does not exist in the firmware. +Boards without this file have no read-only enforcement (fully backward compatible). + +### Locking + +The `param lock` command is called in `rcS` after all startup scripts have finished setting parameters. +Before this call, startup scripts can freely use `param set-default` and `param set` on any parameter, including those on the read-only list. +After `param lock`, the read-only list is enforced. + +To set a specific locked value, use `param set-default` in a board startup script (e.g. `rc.board_defaults`) to set the desired default _before_ the lock activates. + +### Enforcement (after lock) + +Read-only parameters are enforced at all entry points: + +- **`param set`** and **`param set-default`** shell commands return an error. +- **MAVLink PARAM_SET** returns a `MAV_PARAM_ERROR_READ_ONLY` error to the GCS. +- **`param_set()`**, **`param_set_default_value()`** C API calls return `PX4_ERROR`. +- **`param reset`** silently skips read-only parameters (since `param_reset_all` loops over all params). +- **`param import`** / **`param load`** from file silently skips read-only parameters. + +### 备注 + +- The read-only list is compiled into firmware as a `constexpr` array, so there is zero runtime overhead when the list is empty. +- If no `readonly_params.yaml` file exists for a board, `param lock` is a no-op. + ## 更多信息 - [Finding/Updating Parameters](../advanced_config/parameters.md) diff --git a/docs/zh/advanced_config/advanced_flight_controller_orientation_leveling.md b/docs/zh/advanced_config/advanced_flight_controller_orientation_leveling.md index 763c210c77..c29ca034d2 100644 --- a/docs/zh/advanced_config/advanced_flight_controller_orientation_leveling.md +++ b/docs/zh/advanced_config/advanced_flight_controller_orientation_leveling.md @@ -34,3 +34,7 @@ You can locate the parameters in QGroundControl as shown below: Positive angles increase in CCW direction, negative angles increase in CW direction. - [SENS_BOARD_Z_OFF](../advanced_config/parameter_reference.md#SENS_BOARD_Z_OFF): Rotation, in degrees, around PX4FMU's Z axis Yaw axis. Positive angles increase in CCW direction, negative angles increase in CW direction. + +## 另见 + +- [OEM/Factory Configuration](../advanced_config/oem.md) diff --git a/docs/zh/advanced_config/bootloader_update.md b/docs/zh/advanced_config/bootloader_update.md index 3f8c674f90..e3e9faf7b9 100644 --- a/docs/zh/advanced_config/bootloader_update.md +++ b/docs/zh/advanced_config/bootloader_update.md @@ -208,3 +208,7 @@ Early FMUv2 [Pixhawk-series](../flight_controller/pixhawk_series.md#fmu_versions Boards that are not part of the [Pixhawk Series](../flight_controller/pixhawk_series.md) will have their own mechanisms for bootloader update. For boards that are preflashed with Betaflight, see [Bootloader Flashing onto Betaflight Systems](bootloader_update_from_betaflight.md). + +## 另见 + +- [OEM/Factory Configuration](../advanced_config/oem.md) diff --git a/docs/zh/advanced_config/compass_power_compensation.md b/docs/zh/advanced_config/compass_power_compensation.md index e5dcdbdaa0..b0f9c15500 100644 --- a/docs/zh/advanced_config/compass_power_compensation.md +++ b/docs/zh/advanced_config/compass_power_compensation.md @@ -77,3 +77,7 @@ The process is demonstrated for a multicopter, but is equally valid for other ve 此外,还要设置好每个罗盘每个轴的补偿参数值。 ![comp params](../../assets/advanced_config/comp_params.png) + +## 另见 + +- [OEM/Factory Configuration](../advanced_config/oem.md) diff --git a/docs/zh/advanced_config/imu_factory_calibration.md b/docs/zh/advanced_config/imu_factory_calibration.md index cf2fcef883..3b804044cb 100644 --- a/docs/zh/advanced_config/imu_factory_calibration.md +++ b/docs/zh/advanced_config/imu_factory_calibration.md @@ -32,3 +32,4 @@ If you only want to factory calibrate the accelerometer and the gyroscope you ca ## 更多信息 - [QGroundControl User Guide > Sensors](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/setup_view/sensors_px4.html) +- [OEM/Factory Configuration](../advanced_config/oem.md) diff --git a/docs/zh/advanced_config/index.md b/docs/zh/advanced_config/index.md index e65286c485..23fc55910e 100644 --- a/docs/zh/advanced_config/index.md +++ b/docs/zh/advanced_config/index.md @@ -7,7 +7,7 @@ - [Finding/Updating Parameters](../advanced_config/parameters.md) - [完整参数参考](../advanced_config/parameter_reference.md) -## 功能配置 +## Feature Configuration - [使用 PX4 的导航滤波器 (EKF2)](../advanced_config/tuning_the_ecl_ekf.md) - [GNSS-Denied and Degraded Flight](../advanced_config/gnss_degraded_or_denied_flight.md) @@ -17,13 +17,9 @@ ## OEM/出厂校准 -- [IMU 出厂校准](../advanced_config/imu_factory_calibration.md) -- [传感器热补偿](../advanced_config/sensor_thermal_calibration.md) -- [Compass Power Compensation](../advanced_config/compass_power_compensation.md) -- [飞控方向高级配置](../advanced_config/advanced_flight_controller_orientation_leveling.md) -- [静态压力构建](../advanced_config/static_pressure_buildup.md) +- [OEM/Factory Configuration](../advanced_config/oem.md) -## 串口/以太网配置 +## Serial port/Ethernet Configuration - [串口配置](../peripherals/serial_configuration.md) - [MAVLink Telemetry (OSD/GCS)](../peripherals/mavlink_peripherals.md) diff --git a/docs/zh/advanced_config/oem.md b/docs/zh/advanced_config/oem.md new file mode 100644 index 0000000000..fab68f7ac7 --- /dev/null +++ b/docs/zh/advanced_config/oem.md @@ -0,0 +1,20 @@ +# OEM/Factory Configuration + +This topic lists configuration and calibration topics that are more relevant to manufacturers/OEMs (though is some cases individual developers may find some relevant). + +- [IMU Factory Calibration](../advanced_config/imu_factory_calibration.md) +- [Sensor Thermal Compensation](../advanced_config/sensor_thermal_calibration.md) +- [Compass Power Compensation](../advanced_config/compass_power_compensation.md) +- [飞控方向高级配置](../advanced_config/advanced_flight_controller_orientation_leveling.md) +- [Static Pressure Buildup](../advanced_config/static_pressure_buildup.md) +- [Bootloader 更新](../advanced_config/bootloader_update.md) + +## 另见 + +- [标准配置](../config/index.md) - 大多数 PX4 机体所需要的基本传感器/功能配置。 +- [Advanced Configuration](../advanced_config/index.md) +- 机体配置/调参: + - [多旋翼配置/调参](../config_mc/index.md) + - [直升机配置/调参](../config_heli/index.md) + - [固定翼配置/调参](../config_fw/index.md) + - [VTOL 配置/调参](../config_vtol/index.md) diff --git a/docs/zh/advanced_config/sensor_thermal_calibration.md b/docs/zh/advanced_config/sensor_thermal_calibration.md index f5f4be91a1..faab995b7c 100644 --- a/docs/zh/advanced_config/sensor_thermal_calibration.md +++ b/docs/zh/advanced_config/sensor_thermal_calibration.md @@ -153,19 +153,19 @@ Examples: The correction for thermal offsets (using the calibration parameters) is performed in the [sensors module](../modules/modules_system.md#sensors). The reference temperature is subtracted from the measured temperature to obtain a delta temperature where: -``` +```txt delta = measured_temperature - reference_temperature ``` The delta temperature is then used to calculate a offset, where: -``` +```txt offset = X0 + X1*delta + X2*delta**2 + ... + Xn*delta**n ``` The offset and temperature scale factor are then used to correct the sensor measurement where: -``` +```txt corrected_measurement = (raw_measurement - offset) * scale_factor ``` @@ -198,3 +198,7 @@ Scale factors are assumed to be temperature invariant due to the difficulty asso [^2]: 气压传感器偏置的校准需要一个稳定的气压环境。 The air pressure will change slowly due to weather and inside buildings can change rapidly due to external wind fluctuations and HVAC system operation. [^3]: Care must be taken when warming a cold soaked board to avoid formation of condensation on the board that can cause board damage under some circumstances. + +## 另见 + +- [OEM/Factory Configuration](../advanced_config/oem.md) diff --git a/docs/zh/advanced_config/static_pressure_buildup.md b/docs/zh/advanced_config/static_pressure_buildup.md index cbff6289a4..dbfd95a3f2 100644 --- a/docs/zh/advanced_config/static_pressure_buildup.md +++ b/docs/zh/advanced_config/static_pressure_buildup.md @@ -40,3 +40,7 @@ For more information see [Using PX4's Navigation Filter (EKF2) > Correction for The approach works well if the relationship between the error due to static pressure and the velocity varies linearly. If the vehicle has a more complex aerodynamic model it will be less effective. ::: + +## 另见 + +- [OEM/Factory Configuration](../advanced_config/oem.md) diff --git a/docs/zh/config/compass.md b/docs/zh/config/compass.md index 2135055aa1..a07cf0e6a3 100644 --- a/docs/zh/config/compass.md +++ b/docs/zh/config/compass.md @@ -27,9 +27,9 @@ Several types of compass calibration are available: 1. [Complete](#complete-calibration): This calibration is required after installing the autopilot on an airframe for the first time or when the configuration of the vehicle has changed significantly. It compensates for hard and soft iron effects by estimating an offset and a scale factor for each axis. 2. [Partial](#partial-quick-calibration): This calibration can be performed as a routine when preparing the vehicle for a flight, after changing the payload, or simply when the compass rose seems inaccurate. - This type of calibration only estimates the offsets to compensate for a hard iron effect. + This type of calibration only estimates the offsets to compensate for a hard-iron effect. 3. [Large vehicle](#large-vehicle-calibration): This calibration can be performed when the vehicle is too large or heavy to perform a complete calibration. - This type of calibration only estimates the offsets to compensate for a hard iron effect. + This type of calibration only estimates the offsets to compensate for a hard-iron effect. ## 执行校准 @@ -97,28 +97,78 @@ Notes: -This calibration process leverages external knowledge of vehicle's orientation and location, and a World Magnetic Model (WMM) to calibrate the hard iron biases. +This calibration process leverages external knowledge of the vehicle's orientation and location, along with a World Magnetic Model (WMM), to calibrate hard-iron biases. +It is designed for large or heavy vehicles where full-axis rotation is impractical. -1. Ensure GNSS Fix. - This is required to find the expected Earth magnetic field in WMM tables. -2. Align the vehicle to face True North. - Be as accurate as possible for best results. -3. Open the [QGroundControl MAVLink Console](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/analyze_view/mavlink_console.html) and send the following command: +The calibration accepts an optional heading argument (), allowing you to specify the vehicle's current true heading. +This means you can perform a valid magnetometer calibration while the vehicle is pointed in any direction, not just North. + +:::tip +The [complete calibration](#complete-calibration) is more reliable, and should be used if you can physically rotate the vehicle through all required orientations. + +If the large vehicle calibration fails (magnetometer readings are inconsistent, or if yaw is unstable or incorrect) you will need to [recalibrate](#recalibration) using the complete calibration. +::: + +:::details +Implementation details + +This implementation replaces an earlier version (PX4 v1.15 - PX4 v1.17) that required the vehicle to be facing True North. + +The calibration process: + +- Computes hard-iron bias offsets by comparing the expected Earth magnetic field vector (based on location and heading from WMM) with the measured field from the magnetometer(s). +- Adjusts magnetometer offset parameters so the heading estimate aligns correctly without requiring full 3-axis rotation. +- The calibration is applied immediately. + Offsets persist once parameters are saved (typically on disarm or reboot). + +::: + +#### 操作前提 + +- Obtain a valid GNSS fix (required for World Magnetic Model lookup). +- Choose a location away from large metal objects or magnetic fields. +- If using an external compass, ensure it is [mounted](../assembly/mount_gps_compass.md) as far as possible from other electronics. + +#### Procedure + +1. **Ensure GNSS Fix.** + This is required to look up the expected Earth magnetic field from WMM tables. +2. **Align the vehicle to a known heading.** + This can be True North (0°), or any other known heading relative to True North. +3. Open the [QGroundControl MAVLink Console](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/analyze_view/mavlink_console.html) and run: ```sh - commander calibrate mag quick + commander calibrate mag quick [heading] ``` -Notes: + | 参数 | 描述 | + | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | + | `heading` (optional) | True heading of the vehicle in degrees (0–359). Defaults to 0° (North) if omitted. | -- This method is specifically designed for vehicles where full rotation is impractical or impossible. - If full rotation is possible, use the [complete calibration](#complete-calibration) instead. -- The vehicle doesn't need to be exactly levelled as this is automatically compensated using the tilt estimate. + **Examples:** + + | Vehicle Facing | 通信 | + | ----------------------------------- | ----------------------------------- | + | North (0°) | `commander calibrate mag quick` | + | East (90°) | `commander calibrate mag quick 90` | + | South (180°) | `commander calibrate mag quick 180` | + | Southwest (225°) | `commander calibrate mag quick 225` | + +:::info 备注 + +- The vehicle doesn't need to be exactly level. + Tilt is automatically compensated using the attitude estimate. - This calibration can also be triggered using the MAVLink command [MAV_CMD_FIXED_MAG_CAL_YAW](https://mavlink.io/en/messages/common.html#MAV_CMD_FIXED_MAG_CAL_YAW). -## 验证 +::: -After the calibration is complete, check that the heading indicator and the heading of the arrow on the map are stable and match the orientation of the vehicle when turning it e.g. to the cardinal directions. +#### 验证 + +After calibration: + +1. Check that the heading indicator in QGroundControl is stable. +2. Rotate the vehicle to cardinal directions (N/E/S/W) and verify the compass heading matches. +3. If using multiple magnetometers, confirm the correct sensor priority is set. ## Recalibration @@ -146,7 +196,7 @@ Recalibrate the compass when: ## Additional Calibration/Configuration -The process above will autodetect, [set default rotations](../advanced_config/parameter_reference.md#SENS_MAG_AUTOROT), calibrate, and prioritise, all available magnetometers. +The processes above will autodetect, [set default rotations](../advanced_config/parameter_reference.md#SENS_MAG_AUTOROT), calibrate, and prioritise, all available magnetometers. If external magnetometers are available, internal magnetometers are disabled. Further compass configuration should generally not be required. diff --git a/docs/zh/config/safety.md b/docs/zh/config/safety.md index e0e7e9a77e..31196cb838 100644 --- a/docs/zh/config/safety.md +++ b/docs/zh/config/safety.md @@ -464,7 +464,6 @@ These parameters can be used to set conditions that prevent arming. | [COM_ARM_BAT_MIN](../advanced_config/parameter_reference.md#COM_ARM_BAT_MIN) | Minimum battery level for arming. `0`: Disabled (default). Values: `0`-`0.9`, | | [COM_ARM_WO_GPS](../advanced_config/parameter_reference.md#COM_ARM_WO_GPS) | Enable arming without GPS. `0`: Disabled, `1`: Enabled (default). | | [COM_ARM_MIS_REQ](../advanced_config/parameter_reference.md#COM_ARM_MIS_REQ) | Require valid mission to arm. `0`: Disabled (default), `1`: Enabled . | -| [COM_ARM_SDCARD](../advanced_config/parameter_reference.md#COM_ARM_SDCARD) | Require SD card to arm. `0`: Disabled (default), `1`: Warning, `2`: Enabled. | | [COM_ARM_AUTH_REQ](../advanced_config/parameter_reference.md#COM_ARM_AUTH_REQ) | Requires arm authorisation from an external (MAVLink) system. Flag to allow arming (at all). `1`: Enabled, `0`: Disabled (default). Associated configuration parameters are prefixed with `COM_ARM_AUTH_`. | | [COM_ARM_ODID](../advanced_config/parameter_reference.md#COM_ARM_ODID) | Remote ID arming check and in-flight failsafe. `0`: Disabled (default), `1`: Warning only, `2`: Error only, `3`: Return, `4`: Land, `5`: Terminate. See [Remote ID Failsafe](#remote-id-failsafe). | diff --git a/docs/zh/config_mc/pid_tuning_guide_multicopter_basic.md b/docs/zh/config_mc/pid_tuning_guide_multicopter_basic.md index e82f96516c..a97458d668 100644 --- a/docs/zh/config_mc/pid_tuning_guide_multicopter_basic.md +++ b/docs/zh/config_mc/pid_tuning_guide_multicopter_basic.md @@ -112,11 +112,14 @@ The tuning procedure is: 11. Modify the three PID values using the sliders (for roll rate-tuning these affect `MC_ROLLRATE_K`, `MC_ROLLRATE_I`, `MC_ROLLRATE_D`) and observe the step response again. The values are saved to the vehicle as soon as the sliders are moved. + ::: info The goal is for the _Response_ curve to match the _Setpoint_ curve as closely as possible (i.e. a fast response without overshoots). ::: + The PID values can be adjusted as follows: + - P (proportional) or K gain: - increase this for more responsiveness - reduce if the response is overshooting and/or oscillating (up to a certain point increasing the D gain also helps). diff --git a/docs/zh/debug/eclipse_jlink.md b/docs/zh/debug/eclipse_jlink.md index 8030ac8ba8..d88d8aa3e8 100644 --- a/docs/zh/debug/eclipse_jlink.md +++ b/docs/zh/debug/eclipse_jlink.md @@ -10,7 +10,7 @@ This topic explains how to setup and use [MCU Eclipse](https://gnu-mcu-eclipse.g ## 安装 -### ROS +### PX4 Setup PX4 by following the normal guidelines: @@ -115,7 +115,7 @@ To enable this feature for use in Eclipse: make px4_fmu-v5_default boardguiconfig ``` - (See [PX4 Menuconfig Setup](../hardware/porting_guide_config.md#px4-menuconfig-setup) for more information) on using the config tools). + (See [PX4 Menuconfig Setup](../hardware/porting_guide_config.md#px4-menuconfig-setup) for more information on using the config tools). - Ensure that the _Enable TCBinfo struct for debug_ is selected as shown: ![NuttX: Menuconfig: CONFIG_DEBUG_TCBINFO](../../assets/debug/nuttx_tcb_task_aware.png) diff --git a/docs/zh/dev_setup/dev_env_windows_cygwin_packager_setup.md b/docs/zh/dev_setup/dev_env_windows_cygwin_packager_setup.md index 1e69010fb9..ff7660148f 100644 --- a/docs/zh/dev_setup/dev_env_windows_cygwin_packager_setup.md +++ b/docs/zh/dev_setup/dev_env_windows_cygwin_packager_setup.md @@ -33,7 +33,7 @@ You can also install the environment using shell scripts in the Github project. 1. Make sure you have [Git for Windows](https://git-scm.com/download/win) installed. -2. Clone the repository https://github.com/PX4/windows-toolchain to the location you want to install the toolchain. Default location and naming is achieved by opening the `Git Bash` and executing: +2. Clone the repository to the location you want to install the toolchain. Default location and naming is achieved by opening the `Git Bash` and executing: ```sh cd /c/ @@ -53,13 +53,13 @@ The result should be the same as using the scripts or MSI installer. The toolchain gets maintained and hence these instructions might not cover every detail of all the future changes. ::: -1. Create the _folders_: \*\*C:\PX4\*\*, \*\*C:\PX4\toolchain\*\* and \*\*C:\PX4\home\*\* +1. Create the _folders_: **C:\PX4**, **C:\PX4\toolchain** and **C:\PX4\home** 2. Download the _Cygwin installer_ file [setup-x86_64.exe](https://cygwin.com/setup-x86_64.exe) from the [official Cygwin website](https://cygwin.com/install.html) 3. Run the downloaded setup file -4. In the wizard choose to install into the folder: \*\*C:\PX4\toolchain\cygwin64\*\* +4. In the wizard choose to install into the folder: **C:\PX4\toolchain\cygwin64** 5. Select to install the default Cygwin base and the newest available version of the following additional packages: diff --git a/docs/zh/dev_setup/dev_env_windows_vm.md b/docs/zh/dev_setup/dev_env_windows_vm.md index c119809bae..e7bd0d10c6 100644 --- a/docs/zh/dev_setup/dev_env_windows_vm.md +++ b/docs/zh/dev_setup/dev_env_windows_vm.md @@ -57,7 +57,9 @@ VMWare performance is acceptable for basic usage (building Firmware) but not for Remember all settings are only for within your host operating system usage and hence you can disable any screen saver and local workstation security features which do not increase risk of a network attack. 10. Once the new VM is booted up make sure you install _VMWare tools drivers and tools extension_ inside your guest system. + This will enhance performance and usability of your VM usage: + - Significantly enhanced graphics performance - Proper support for hardware device usage like USB port allocation (important for target upload), proper mouse wheel scrolling, sound support - Guest display resolution adaption to the window size diff --git a/docs/zh/flight_modes/offboard.md b/docs/zh/flight_modes/offboard.md index abc4a6f165..564ac450af 100644 --- a/docs/zh/flight_modes/offboard.md +++ b/docs/zh/flight_modes/offboard.md @@ -364,13 +364,13 @@ Rover MAVLink setpoints are gated by the MAVLink parameter [MAV_FWDEXTSP](../adv _Offboard mode_ is affected by the following parameters: -| 参数 | 描述 | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [COM_OF_LOSS_T](../advanced_config/parameter_reference.md#COM_OF_LOSS_T) | Time-out (in seconds) to wait when offboard connection is lost before triggering offboard lost failsafe (`COM_OBL_RC_ACT`) | -| [COM_OBL_RC_ACT](../advanced_config/parameter_reference.md#COM_OBL_RC_ACT) | Flight mode to switch to if offboard control is lost (Values are - `0`: _Position_, `1`: _Altitude_, `2`: _Manual_, `3`: \*Return, `4`: \*Land\*). | -| [COM_RC_OVERRIDE](../advanced_config/parameter_reference.md#COM_RC_OVERRIDE) | Controls whether stick movement on a multicopter (or VTOL in MC mode) causes a mode change to [Position mode](../flight_modes_mc/position.md). 默认情况下未启用此功能。 | -| [COM_RC_STICK_OV](../advanced_config/parameter_reference.md#COM_RC_STICK_OV) | The amount of stick movement that causes a transition to [Position mode](../flight_modes_mc/position.md) (if [COM_RC_OVERRIDE](#COM_RC_OVERRIDE) is enabled). | -| [COM_RCL_EXCEPT](../advanced_config/parameter_reference.md#COM_RCL_EXCEPT) | 该参数指定一种模式,在该模式下将忽略RC丢失及不会触发RC丢失的失效保护动作。 Set bit `2` to ignore RC loss in Offboard mode. | +| 参数 | 描述 | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [COM_OF_LOSS_T](../advanced_config/parameter_reference.md#COM_OF_LOSS_T) | Time-out (in seconds) to wait when offboard connection is lost before triggering offboard lost failsafe (`COM_OBL_RC_ACT`) | +| [COM_OBL_RC_ACT](../advanced_config/parameter_reference.md#COM_OBL_RC_ACT) | Flight mode to switch to if offboard control is lost (Values are - `0`: _Position_, `1`: _Altitude_, `2`: _Manual_, `3`: _Return_, `4`: _Land_). | +| [COM_RC_OVERRIDE](../advanced_config/parameter_reference.md#COM_RC_OVERRIDE) | Controls whether stick movement on a multicopter (or VTOL in MC mode) causes a mode change to [Position mode](../flight_modes_mc/position.md). 默认情况下未启用此功能。 | +| [COM_RC_STICK_OV](../advanced_config/parameter_reference.md#COM_RC_STICK_OV) | The amount of stick movement that causes a transition to [Position mode](../flight_modes_mc/position.md) (if [COM_RC_OVERRIDE](#COM_RC_OVERRIDE) is enabled). | +| [COM_RCL_EXCEPT](../advanced_config/parameter_reference.md#COM_RCL_EXCEPT) | 该参数指定一种模式,在该模式下将忽略RC丢失及不会触发RC丢失的失效保护动作。 Set bit `2` to ignore RC loss in Offboard mode. | ## 开发者资源 diff --git a/docs/zh/frames_multicopter/omnicopter.md b/docs/zh/frames_multicopter/omnicopter.md index 5f0478beef..4e7ec0b3c1 100644 --- a/docs/zh/frames_multicopter/omnicopter.md +++ b/docs/zh/frames_multicopter/omnicopter.md @@ -107,7 +107,7 @@ In particular: Make sure the motors do not overheat with the changed settings. ::: -### ROS +### PX4 - Select a generic multicopter airframe - Use an [arming switch](../advanced_config/prearm_arm_disarm.md#arming-button-switch), do not use stick arming diff --git a/docs/zh/middleware/dds_topics.md b/docs/zh/middleware/dds_topics.md index b29de5f607..c7e9127806 100644 --- a/docs/zh/middleware/dds_topics.md +++ b/docs/zh/middleware/dds_topics.md @@ -96,210 +96,210 @@ They are not build into the module, and hence are neither published or subscribe :::details See messages -- [IrlockReport](../msg_docs/IrlockReport.md) -- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md) -- [MissionResult](../msg_docs/MissionResult.md) -- [SensorSelection](../msg_docs/SensorSelection.md) -- [Event](../msg_docs/Event.md) -- [MountOrientation](../msg_docs/MountOrientation.md) -- [NeuralControl](../msg_docs/NeuralControl.md) -- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md) -- [DifferentialPressure](../msg_docs/DifferentialPressure.md) -- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md) -- [LedControl](../msg_docs/LedControl.md) -- [RtlStatus](../msg_docs/RtlStatus.md) -- [Rpm](../msg_docs/Rpm.md) -- [QshellReq](../msg_docs/QshellReq.md) -- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md) -- [OrbTest](../msg_docs/OrbTest.md) -- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md) -- [OrbitStatus](../msg_docs/OrbitStatus.md) -- [BatteryInfo](../msg_docs/BatteryInfo.md) -- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md) - [HeaterStatus](../msg_docs/HeaterStatus.md) -- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md) -- [DeviceInformation](../msg_docs/DeviceInformation.md) -- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md) -- [PowerButtonState](../msg_docs/PowerButtonState.md) -- [SensorAirflow](../msg_docs/SensorAirflow.md) -- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md) -- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md) -- [HealthReport](../msg_docs/HealthReport.md) -- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md) -- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md) -- [AirspeedWind](../msg_docs/AirspeedWind.md) -- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md) -- [VehicleImu](../msg_docs/VehicleImu.md) -- [VehicleStatusV3](../msg_docs/VehicleStatusV3.md) -- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md) -- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md) -- [ActuatorTest](../msg_docs/ActuatorTest.md) -- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md) -- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md) -- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md) -- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md) -- [PwmInput](../msg_docs/PwmInput.md) -- [RcParameterMap](../msg_docs/RcParameterMap.md) -- [VehicleConstraints](../msg_docs/VehicleConstraints.md) -- [SystemPower](../msg_docs/SystemPower.md) -- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md) -- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md) -- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md) -- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md) -- [DebugVect](../msg_docs/DebugVect.md) -- [FollowTarget](../msg_docs/FollowTarget.md) -- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md) -- [TuneControl](../msg_docs/TuneControl.md) -- [PositionSetpoint](../msg_docs/PositionSetpoint.md) -- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md) -- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md) -- [EventV0](../msg_docs/EventV0.md) -- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md) -- [SensorTemp](../msg_docs/SensorTemp.md) -- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md) -- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md) -- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md) -- [LandingGearWheel](../msg_docs/LandingGearWheel.md) -- [SensorsStatus](../msg_docs/SensorsStatus.md) -- [HomePositionV0](../msg_docs/HomePositionV0.md) -- [ParameterUpdate](../msg_docs/ParameterUpdate.md) -- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md) -- [ButtonEvent](../msg_docs/ButtonEvent.md) -- [RaptorInput](../msg_docs/RaptorInput.md) -- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md) -- [GpioConfig](../msg_docs/GpioConfig.md) -- [SensorMag](../msg_docs/SensorMag.md) -- [LogMessage](../msg_docs/LogMessage.md) -- [GeofenceResult](../msg_docs/GeofenceResult.md) -- [LoggerStatus](../msg_docs/LoggerStatus.md) -- [RcChannels](../msg_docs/RcChannels.md) -- [MagWorkerData](../msg_docs/MagWorkerData.md) -- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md) -- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md) -- [GeofenceStatus](../msg_docs/GeofenceStatus.md) -- [UlogStreamAck](../msg_docs/UlogStreamAck.md) -- [Airspeed](../msg_docs/Airspeed.md) -- [ActuatorArmed](../msg_docs/ActuatorArmed.md) -- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md) -- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md) -- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md) -- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md) -- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md) -- [EstimatorBias](../msg_docs/EstimatorBias.md) -- [TecsStatus](../msg_docs/TecsStatus.md) -- [GimbalControls](../msg_docs/GimbalControls.md) -- [Mission](../msg_docs/Mission.md) -- [GainCompression](../msg_docs/GainCompression.md) -- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md) -- [Ping](../msg_docs/Ping.md) -- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md) -- [CellularStatus](../msg_docs/CellularStatus.md) -- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md) -- [EscEepromWrite](../msg_docs/EscEepromWrite.md) -- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md) -- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md) -- [OrbTestMedium](../msg_docs/OrbTestMedium.md) -- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md) -- [EscReport](../msg_docs/EscReport.md) -- [SensorGyro](../msg_docs/SensorGyro.md) -- [DatamanRequest](../msg_docs/DatamanRequest.md) -- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md) -- [GeneratorStatus](../msg_docs/GeneratorStatus.md) -- [SensorAccel](../msg_docs/SensorAccel.md) -- [RangingBeacon](../msg_docs/RangingBeacon.md) -- [RegisterExtComponentRequestV1](../msg_docs/RegisterExtComponentRequestV1.md) -- [GpsDump](../msg_docs/GpsDump.md) -- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md) -- [Vtx](../msg_docs/Vtx.md) -- [VehicleStatusV2](../msg_docs/VehicleStatusV2.md) -- [InputRc](../msg_docs/InputRc.md) -- [DebugKeyValue](../msg_docs/DebugKeyValue.md) -- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md) -- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md) -- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md) -- [GpsInjectData](../msg_docs/GpsInjectData.md) -- [TaskStackInfo](../msg_docs/TaskStackInfo.md) -- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md) -- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md) -- [VehicleAirData](../msg_docs/VehicleAirData.md) -- [PpsCapture](../msg_docs/PpsCapture.md) -- [CameraStatus](../msg_docs/CameraStatus.md) -- [SensorGyroFft](../msg_docs/SensorGyroFft.md) -- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md) -- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md) -- [PowerMonitor](../msg_docs/PowerMonitor.md) -- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md) -- [EstimatorStates](../msg_docs/EstimatorStates.md) -- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md) -- [SensorUwb](../msg_docs/SensorUwb.md) -- [EscStatus](../msg_docs/EscStatus.md) -- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md) -- [TakeoffStatus](../msg_docs/TakeoffStatus.md) -- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md) -- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md) -- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md) -- [SatelliteInfo](../msg_docs/SatelliteInfo.md) - [MavlinkLog](../msg_docs/MavlinkLog.md) -- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md) -- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md) -- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md) -- [CameraTrigger](../msg_docs/CameraTrigger.md) -- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md) -- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md) -- [EstimatorFusionControl](../msg_docs/EstimatorFusionControl.md) -- [ActionRequest](../msg_docs/ActionRequest.md) -- [DebugArray](../msg_docs/DebugArray.md) -- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md) -- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md) -- [DebugValue](../msg_docs/DebugValue.md) -- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md) -- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md) -- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md) -- [FuelTankStatus](../msg_docs/FuelTankStatus.md) -- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md) -- [EscEepromRead](../msg_docs/EscEepromRead.md) -- [UlogStream](../msg_docs/UlogStream.md) -- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md) -- [CameraCapture](../msg_docs/CameraCapture.md) -- [NavigatorStatus](../msg_docs/NavigatorStatus.md) -- [RoverRateStatus](../msg_docs/RoverRateStatus.md) -- [DatamanResponse](../msg_docs/DatamanResponse.md) -- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md) -- [WheelEncoders](../msg_docs/WheelEncoders.md) -- [FigureEightStatus](../msg_docs/FigureEightStatus.md) -- [GpioOut](../msg_docs/GpioOut.md) -- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md) -- [SensorHygrometer](../msg_docs/SensorHygrometer.md) -- [RaptorStatus](../msg_docs/RaptorStatus.md) -- [Px4ioStatus](../msg_docs/Px4ioStatus.md) -- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md) -- [RadioStatus](../msg_docs/RadioStatus.md) -- [SensorBaro](../msg_docs/SensorBaro.md) -- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md) -- [SensorCorrection](../msg_docs/SensorCorrection.md) -- [Gripper](../msg_docs/Gripper.md) -- [LandingTargetPose](../msg_docs/LandingTargetPose.md) -- [EstimatorStatus](../msg_docs/EstimatorStatus.md) -- [GpioRequest](../msg_docs/GpioRequest.md) -- [QshellRetval](../msg_docs/QshellRetval.md) -- [OrbTestLarge](../msg_docs/OrbTestLarge.md) -- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md) -- [VehicleRoi](../msg_docs/VehicleRoi.md) -- [GpioIn](../msg_docs/GpioIn.md) -- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md) -- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md) -- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md) -- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md) -- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md) -- [Cpuload](../msg_docs/Cpuload.md) -- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md) +- [VehicleAirData](../msg_docs/VehicleAirData.md) - [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md) -- [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md) +- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md) +- [SensorAccel](../msg_docs/SensorAccel.md) +- [DebugKeyValue](../msg_docs/DebugKeyValue.md) +- [SensorGyro](../msg_docs/SensorGyro.md) +- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md) +- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md) +- [LoggerStatus](../msg_docs/LoggerStatus.md) +- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md) +- [PwmInput](../msg_docs/PwmInput.md) +- [UlogStream](../msg_docs/UlogStream.md) +- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md) +- [TecsStatus](../msg_docs/TecsStatus.md) +- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md) +- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md) +- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md) - [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md) +- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md) +- [InputRc](../msg_docs/InputRc.md) +- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md) +- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md) +- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md) +- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md) +- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md) +- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md) +- [MissionResult](../msg_docs/MissionResult.md) +- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md) +- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md) +- [Px4ioStatus](../msg_docs/Px4ioStatus.md) +- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md) +- [SystemPower](../msg_docs/SystemPower.md) - [VelocityLimits](../msg_docs/VelocityLimits.md) -- [AdcReport](../msg_docs/AdcReport.md) -- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md) +- [GeofenceStatus](../msg_docs/GeofenceStatus.md) +- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md) +- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md) +- [SensorBaro](../msg_docs/SensorBaro.md) +- [DebugVect](../msg_docs/DebugVect.md) +- [DatamanRequest](../msg_docs/DatamanRequest.md) +- [GainCompression](../msg_docs/GainCompression.md) +- [VehicleStatusV2](../msg_docs/VehicleStatusV2.md) +- [SensorTemp](../msg_docs/SensorTemp.md) +- [SensorCorrection](../msg_docs/SensorCorrection.md) +- [DeviceInformation](../msg_docs/DeviceInformation.md) +- [OrbTest](../msg_docs/OrbTest.md) +- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md) +- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md) +- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md) +- [QshellReq](../msg_docs/QshellReq.md) +- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md) +- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md) +- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md) - [MavlinkTunnel](../msg_docs/MavlinkTunnel.md) +- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md) +- [Airspeed](../msg_docs/Airspeed.md) +- [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md) +- [NavigatorStatus](../msg_docs/NavigatorStatus.md) +- [PowerButtonState](../msg_docs/PowerButtonState.md) +- [EscStatus](../msg_docs/EscStatus.md) +- [LedControl](../msg_docs/LedControl.md) +- [GpioOut](../msg_docs/GpioOut.md) +- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md) +- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md) +- [SensorUwb](../msg_docs/SensorUwb.md) +- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md) +- [Vtx](../msg_docs/Vtx.md) +- [GpsDump](../msg_docs/GpsDump.md) +- [ButtonEvent](../msg_docs/ButtonEvent.md) +- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md) +- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md) +- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md) +- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md) +- [RadioStatus](../msg_docs/RadioStatus.md) +- [ActuatorArmed](../msg_docs/ActuatorArmed.md) +- [DebugValue](../msg_docs/DebugValue.md) +- [Ping](../msg_docs/Ping.md) +- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md) +- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md) +- [SensorAirflow](../msg_docs/SensorAirflow.md) +- [TakeoffStatus](../msg_docs/TakeoffStatus.md) +- [AirspeedWind](../msg_docs/AirspeedWind.md) +- [EscEepromWrite](../msg_docs/EscEepromWrite.md) +- [CameraTrigger](../msg_docs/CameraTrigger.md) +- [Mission](../msg_docs/Mission.md) +- [FigureEightStatus](../msg_docs/FigureEightStatus.md) +- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md) +- [EstimatorStatus](../msg_docs/EstimatorStatus.md) +- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md) +- [CameraCapture](../msg_docs/CameraCapture.md) +- [AdcReport](../msg_docs/AdcReport.md) +- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md) +- [GpioRequest](../msg_docs/GpioRequest.md) +- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md) +- [RcParameterMap](../msg_docs/RcParameterMap.md) +- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md) +- [CellularStatus](../msg_docs/CellularStatus.md) +- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md) +- [EscEepromRead](../msg_docs/EscEepromRead.md) +- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md) +- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md) +- [DifferentialPressure](../msg_docs/DifferentialPressure.md) +- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md) +- [TuneControl](../msg_docs/TuneControl.md) +- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md) +- [Gripper](../msg_docs/Gripper.md) +- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md) +- [ActionRequest](../msg_docs/ActionRequest.md) +- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md) +- [WheelEncoders](../msg_docs/WheelEncoders.md) +- [ParameterUpdate](../msg_docs/ParameterUpdate.md) +- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md) +- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md) +- [PpsCapture](../msg_docs/PpsCapture.md) +- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md) +- [EscReport](../msg_docs/EscReport.md) +- [SatelliteInfo](../msg_docs/SatelliteInfo.md) - [ManualControlSwitches](../msg_docs/ManualControlSwitches.md) +- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md) +- [RegisterExtComponentRequestV1](../msg_docs/RegisterExtComponentRequestV1.md) +- [VehicleStatusV3](../msg_docs/VehicleStatusV3.md) +- [SensorMag](../msg_docs/SensorMag.md) +- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md) +- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md) +- [RoverRateStatus](../msg_docs/RoverRateStatus.md) +- [SensorSelection](../msg_docs/SensorSelection.md) +- [MountOrientation](../msg_docs/MountOrientation.md) +- [UlogStreamAck](../msg_docs/UlogStreamAck.md) +- [EstimatorFusionControl](../msg_docs/EstimatorFusionControl.md) +- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md) +- [GeofenceResult](../msg_docs/GeofenceResult.md) +- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md) +- [PowerMonitor](../msg_docs/PowerMonitor.md) +- [OrbTestLarge](../msg_docs/OrbTestLarge.md) +- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md) +- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md) +- [HealthReport](../msg_docs/HealthReport.md) +- [CameraStatus](../msg_docs/CameraStatus.md) +- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md) +- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md) +- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md) +- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md) +- [IrlockReport](../msg_docs/IrlockReport.md) +- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md) +- [LandingGearWheel](../msg_docs/LandingGearWheel.md) +- [TaskStackInfo](../msg_docs/TaskStackInfo.md) +- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md) +- [NeuralControl](../msg_docs/NeuralControl.md) +- [VehicleImu](../msg_docs/VehicleImu.md) +- [RaptorStatus](../msg_docs/RaptorStatus.md) +- [OrbTestMedium](../msg_docs/OrbTestMedium.md) +- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md) +- [Rpm](../msg_docs/Rpm.md) +- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md) +- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md) +- [SensorHygrometer](../msg_docs/SensorHygrometer.md) +- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md) +- [LandingTargetPose](../msg_docs/LandingTargetPose.md) +- [GpioConfig](../msg_docs/GpioConfig.md) +- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md) +- [EstimatorBias](../msg_docs/EstimatorBias.md) +- [VehicleConstraints](../msg_docs/VehicleConstraints.md) +- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md) +- [SensorsStatus](../msg_docs/SensorsStatus.md) +- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md) +- [EstimatorStates](../msg_docs/EstimatorStates.md) +- [ActuatorTest](../msg_docs/ActuatorTest.md) +- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md) +- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md) +- [GpioIn](../msg_docs/GpioIn.md) +- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md) +- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md) +- [VehicleRoi](../msg_docs/VehicleRoi.md) +- [MagWorkerData](../msg_docs/MagWorkerData.md) +- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md) +- [FollowTarget](../msg_docs/FollowTarget.md) +- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md) +- [HomePositionV0](../msg_docs/HomePositionV0.md) +- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md) +- [DebugArray](../msg_docs/DebugArray.md) +- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md) +- [BatteryInfo](../msg_docs/BatteryInfo.md) +- [RcChannels](../msg_docs/RcChannels.md) +- [LogMessage](../msg_docs/LogMessage.md) +- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md) +- [PositionSetpoint](../msg_docs/PositionSetpoint.md) +- [GimbalControls](../msg_docs/GimbalControls.md) +- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md) +- [RtlStatus](../msg_docs/RtlStatus.md) +- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md) +- [Cpuload](../msg_docs/Cpuload.md) +- [GpsInjectData](../msg_docs/GpsInjectData.md) +- [GeneratorStatus](../msg_docs/GeneratorStatus.md) +- [FuelTankStatus](../msg_docs/FuelTankStatus.md) +- [SensorGyroFft](../msg_docs/SensorGyroFft.md) +- [OrbitStatus](../msg_docs/OrbitStatus.md) +- [DatamanResponse](../msg_docs/DatamanResponse.md) +- [EventV0](../msg_docs/EventV0.md) +- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md) +- [RangingBeacon](../msg_docs/RangingBeacon.md) +- [Event](../msg_docs/Event.md) +- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md) +- [QshellRetval](../msg_docs/QshellRetval.md) +- [RaptorInput](../msg_docs/RaptorInput.md) ::: diff --git a/docs/zh/middleware/zenoh.md b/docs/zh/middleware/zenoh.md index 0c9641924a..d4fb350439 100644 --- a/docs/zh/middleware/zenoh.md +++ b/docs/zh/middleware/zenoh.md @@ -60,7 +60,7 @@ For more information about key expressions, refer to the [rmw_zenoh design docum Before setting up the Zenoh communication, first make sure that your firmware contains the driver that implements the [`zenoh` driver](../modules/modules_driver.md#zenoh), which provides the implementation of the _PX4 Zenoh-Pico Node_. -You can check if the module is present on your board by searching for the key `CONFIG_MODULES_ZENOH=y` in your board's `default.px4board` KConfig file. +You can check if the module is present on your board by searching for the key `CONFIG_MODULES_ZENOH=y` in your board's `default.px4board` [KConfig file](../hardware/porting_guide_config.md). For example, you can see that the module is present in `px4_fmu-v6xrt` build targets from [/boards/px4/fmu-v6xrt/default.px4board](https://github.com/PX4/PX4-Autopilot/blob/main/boards/px4/fmu-v6xrt/default.px4board#L91). If `CONFIG_MODULES_ZENOH=y` is not preset you can add this key to your board configuration and rebuild. @@ -90,6 +90,11 @@ inclusion of the message type hash (RIHS01, as defined in REP-2016) in the Zenoh Note that this will break compatibility with ROS 2 Jazzy and later. ::: +:::tip +Per-publisher option overrides can be enabled or disabled at compile time using the `CONFIG_ZENOH_PUB_OPTION_OVERRIDE` KConfig key. +When this is disabled, PX4 uses only global publisher option parameters, and per-publisher CLI/config overrides are not available. +::: + ### Enable Zenoh on PX4 Startup Set the [ZENOH_ENABLE](../advanced_config/parameter_reference.md#ZENOH_ENABLE) parameter to `1` to enable Zenoh on PX4 startup. @@ -133,6 +138,21 @@ This folder contains three key files: - **`pub.csv`** – Maps **uORB topics to ROS2 topics** (used for publishing). - **`sub.csv`** – Maps **ROS2 topics to uORB topics** (used for subscribing). +#### Publisher Options + +Zenoh publisher behaviour can be controlled through global PX4 parameters: + +- [ZENOH_PUB_CC](../advanced_config/parameter_reference.md#ZENOH_PUB_CC): congestion control (`Drop` or `Block`) - controls what happens when the transport path is congested. `Drop` prefers freshness/latency and may drop messages, while `Block` preserves delivery by applying backpressure to the publisher. +- [ZENOH_PUB_REL](../advanced_config/parameter_reference.md#ZENOH_PUB_REL): reliability (`Reliable` or `BestEffort`) - selects the Zenoh reliability mode used by the router path and seen by the underlying ROS 2 `rmw_zenoh` transport. +- [ZENOH_PUB_EXPR](../advanced_config/parameter_reference.md#ZENOH_PUB_EXPR): express mode (`Disabled` or `Enabled`) - when enabled, Zenoh does not wait to batch this operation with others. This usually reduces latency at the cost of higher bandwidth/overhead. +- [ZENOH_PUB_PRIO](../advanced_config/parameter_reference.md#ZENOH_PUB_PRIO): priority (`RealTime`, `InteractiveHigh`, `InteractiveLow`, `DataHigh`, `Data`, `DataLow`, `Background`) - sets relative message priority for routing/scheduling under load. + +These are applied to all Zenoh publishers. + +If `CONFIG_ZENOH_PUB_OPTION_OVERRIDE=y`, individual publishers can override one or more global publisher options. +Default configuration [dds_topics.yaml](../middleware/dds_topics.md) already provides overrides for several publishers. +Individual publisher options can be overriden through the mapping configuration shown in the next section + ### 4. Modifying Topic Mappings Zenoh topic mappings define how data flows between PX4's internal uORB topics and external ROS2 topics via Zenoh. @@ -155,6 +175,25 @@ The main operations and their commands are: zenoh config add publisher [uorb_instance] ``` + When `CONFIG_ZENOH_PUB_OPTION_OVERRIDE=y`, publisher options can also be passed: + + ```sh + zenoh config add publisher [uorb_instance] [options] + ``` + + Options are comma-separated `key=value` pairs: + + - `cc=drop|block` (congestion control) + - `express=true|false` (batching behaviour) + - `prio=real_time|interactive_high|interactive_low|data_high|data|data_low|background` (priority) + - `rel=reliable|best_effort` (reliability) + + Example: + + ```sh + zenoh config add publisher /fmu/out/vehicle_status vehicle_status 0 "cc=block,express=true,rel=best_effort" + ``` + - Subscribe to a Zenoh topic and forward it to a uORB topic: ```sh diff --git a/docs/zh/modules/modules_command.md b/docs/zh/modules/modules_command.md index a58a5faa06..a112ab8f1c 100644 --- a/docs/zh/modules/modules_command.md +++ b/docs/zh/modules/modules_command.md @@ -453,6 +453,7 @@ param [arguments...] show Show parameter values [-a] Show all parameters (not just used) [-c] Show only changed params (unused too) + [-l] Show only locked (read-only) params [-q] quiet mode, print only param value (name needs to be exact) [] Filter by param name (wildcard at end allowed, eg. sys_*) @@ -497,6 +498,8 @@ param [arguments...] find Show index of a param param name + + lock Lock read-only params (reject future set/reset) ``` ## payload_deliverer diff --git a/docs/zh/modules/modules_driver.md b/docs/zh/modules/modules_driver.md index 365906ad31..d46c8be281 100644 --- a/docs/zh/modules/modules_driver.md +++ b/docs/zh/modules/modules_driver.md @@ -1064,7 +1064,7 @@ px4io [arguments...] ## rgbled -Source: [drivers/lights/rgbled_ncp5623c](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/lights/rgbled_ncp5623c) +Source: [drivers/lights/rgbled](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/lights/rgbled) ### Usage {#rgbled_usage} @@ -1079,9 +1079,7 @@ rgbled [arguments...] [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address - default: 57 - [-o ] RGB PWM Assignment - default: 123 + default: 85 stop diff --git a/docs/zh/modules/modules_driver_adc.md b/docs/zh/modules/modules_driver_adc.md index 64209decad..9ecf450a2a 100644 --- a/docs/zh/modules/modules_driver_adc.md +++ b/docs/zh/modules/modules_driver_adc.md @@ -1,5 +1,29 @@ # Modules Reference: Adc (Driver) +## ADS7128 + +Source: [drivers/adc/ads7128](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/adc/ads7128) + +### Usage {#ADS7128_usage} + +``` +ADS7128 [arguments...] + Commands: + start + [-I] Internal I2C bus(es) + [-X] External I2C bus(es) + [-b ] board-specific bus (default=all) (external SPI: n-th bus + (default=1)) + [-f ] bus frequency in kHz + [-q] quiet startup (no message if no device found) + [-a ] I2C address + default: 16 + + stop + + status print status info +``` + ## TLA2528 Source: [drivers/adc/tla2528](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/adc/tla2528) diff --git a/docs/zh/msg_docs/BatteryStatus.md b/docs/zh/msg_docs/BatteryStatus.md index 11a0bbb14e..458f9397df 100644 --- a/docs/zh/msg_docs/BatteryStatus.md +++ b/docs/zh/msg_docs/BatteryStatus.md @@ -44,9 +44,9 @@ Battery instance information is also logged and streamed in MAVLink telemetry. | 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 | +| 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 | +| 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 | @@ -181,9 +181,9 @@ uint8 FAULT_FAILED_TO_ARM = 10 # Battery had a problem while arming uint8 FAULT_COUNT = 11 # Counter. Keep this as last element float32 full_charge_capacity_wh # [Wh] Compensated battery capacity -float32 remaining_capacity_wh # [Wh] Compensated battery capacity remaining +float32 remaining_capacity_wh # [Wh] [@invalid NaN] Compensated battery capacity remaining uint16 over_discharge_count # [-] Number of battery overdischarge -float32 nominal_voltage # [V] Nominal voltage of the battery pack +float32 nominal_voltage # [V] [@invalid NaN] Nominal voltage of the battery pack float32 internal_resistance_estimate # [Ohm] Internal resistance per cell estimate float32 ocv_estimate # [V] Open circuit voltage estimate diff --git a/docs/zh/msg_docs/GimbalDeviceSetAttitude.md b/docs/zh/msg_docs/GimbalDeviceSetAttitude.md index da80702ee8..ec1158dbfa 100644 --- a/docs/zh/msg_docs/GimbalDeviceSetAttitude.md +++ b/docs/zh/msg_docs/GimbalDeviceSetAttitude.md @@ -21,13 +21,15 @@ pageClass: is-wide-page ## Constants -| 参数名 | 类型 | 值 | 描述 | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -- | -- | -| GIMBAL_DEVICE_FLAGS_RETRACT | `uint32` | 1 | | -| GIMBAL_DEVICE_FLAGS_NEUTRAL | `uint32` | 2 | | -| GIMBAL_DEVICE_FLAGS_ROLL_LOCK | `uint32` | 4 | | -| GIMBAL_DEVICE_FLAGS_PITCH_LOCK | `uint32` | 8 | | -| GIMBAL_DEVICE_FLAGS_YAW_LOCK | `uint32` | 16 | | +| 参数名 | 类型 | 值 | 描述 | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -- | -- | +| GIMBAL_DEVICE_FLAGS_RETRACT | `uint32` | 1 | | +| GIMBAL_DEVICE_FLAGS_NEUTRAL | `uint32` | 2 | | +| GIMBAL_DEVICE_FLAGS_ROLL_LOCK | `uint32` | 4 | | +| GIMBAL_DEVICE_FLAGS_PITCH_LOCK | `uint32` | 8 | | +| GIMBAL_DEVICE_FLAGS_YAW_LOCK | `uint32` | 16 | | +| GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME | `uint32` | 32 | | +| GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME | `uint32` | 64 | | ## Source Message @@ -48,6 +50,8 @@ uint32 GIMBAL_DEVICE_FLAGS_NEUTRAL = 2 uint32 GIMBAL_DEVICE_FLAGS_ROLL_LOCK = 4 uint32 GIMBAL_DEVICE_FLAGS_PITCH_LOCK = 8 uint32 GIMBAL_DEVICE_FLAGS_YAW_LOCK = 16 +uint32 GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME = 32 +uint32 GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME = 64 float32[4] q diff --git a/docs/zh/peripherals/adsb_flarm.md b/docs/zh/peripherals/adsb_flarm.md index f6c3932001..df93929e6b 100644 --- a/docs/zh/peripherals/adsb_flarm.md +++ b/docs/zh/peripherals/adsb_flarm.md @@ -18,7 +18,7 @@ It has been tested with the following devices: Any of the devices can be connected to any free/unused serial port on the flight controller. Most commonly they are connected to `TELEM2` (if this is not being use for some other purpose). -### PingRX +### PingRX Pro The PingRX MAVLink port uses a JST ZHR-4 mating connector with pinout as shown below. @@ -29,9 +29,17 @@ The PingRX MAVLink port uses a JST ZHR-4 mating connector with pinout as shown b | 3 | 电源 | +4 to 6V | | 4(黑) | GND | GND | -The PingRX comes with connector cable that can be attached directly to the TELEM2 port (DF13-6P) on an [mRo Pixhawk](../flight_controller/mro_pixhawk.md). +The PingRX comes with connector cable that can be attached directly to the `TELEM2` port (DF13-6P) on an [mRo Pixhawk](../flight_controller/mro_pixhawk.md). For other ports or boards, you will need to obtain your own cable. +The recommended port configuration for this receiver is: + +| 参数 | Recommended Value | +| ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- | +| [MAV_X_CONFIG](../advanced_config/parameter_reference.md#MAV_1_CONFIG) | `TELEM 2` | +| [MAV_X_MODE](../advanced_config/parameter_reference.md#MAV_1_MODE) | uAvionix | +| [MAV_X_RADIO_CTL](../advanced_config/parameter_reference.md#MAV_1_RADIO_CTL) | Disabled | + ## FLARM FLARM has an on-board DF-13 6 Pin connector that has an identical pinout to the [mRo Pixhawk](../flight_controller/mro_pixhawk.md). @@ -49,19 +57,19 @@ FLARM has an on-board DF-13 6 Pin connector that has an identical pinout to the The TX and RX on the flight controller must be connected to the RX and TX on the FLARM, respectively. ::: -## 软件配置 +## PX4 配置 ### Port Configuration The receivers are configured in the same way as any other [MAVLink Peripheral](../peripherals/mavlink_peripherals.md). -The only _specific_ setup is that the port baud rate must be set to 57600 and the a low-bandwidth profile (`MAV_X_MODE`). +The recommended configuration for most devices (unless they have device-specific configuration like PingRX) is to connect to `TELEM 2` and [set the parameters](../advanced_config/parameters.md) as shown: -Assuming you have connected the device to the TELEM2 port, [set the parameters](../advanced_config/parameters.md) as shown: - -- [MAV_1_CONFIG](../advanced_config/parameter_reference.md#MAV_1_CONFIG) = TELEM 2 -- [MAV_1_MODE](../advanced_config/parameter_reference.md#MAV_1_MODE) = Normal -- [MAV_1_RATE](../advanced_config/parameter_reference.md#MAV_1_RATE) = 0 (default sending rate for port). -- [MAV_1_FORWARD](../advanced_config/parameter_reference.md#MAV_1_FORWARD) = Enabled +| 参数 | Recommended Value | +| ------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------- | +| [MAV_X_CONFIG](../advanced_config/parameter_reference.md#MAV_1_CONFIG) | `TELEM 2` | +| [MAV_X_MODE](../advanced_config/parameter_reference.md#MAV_1_MODE) | Normal | +| [MAV_X_RATE](../advanced_config/parameter_reference.md#MAV_1_RATE) | 0 (default sending rate for port) | +| [MAV_X_FORWARD](../advanced_config/parameter_reference.md#MAV_1_FORWARD) | Enabled | Then reboot the vehicle. diff --git a/docs/zh/ros/external_position_estimation.md b/docs/zh/ros/external_position_estimation.md index 9ae5c7a98b..e73f70db9f 100644 --- a/docs/zh/ros/external_position_estimation.md +++ b/docs/zh/ros/external_position_estimation.md @@ -195,7 +195,7 @@ To use MoCap data with EKF2 you will have to [remap](https://wiki.ros.org/roslau The local/world and world frames used by ROS and PX4 are different. -| 框架 | ROS | ROS | +| 框架 | PX4 | ROS | | ----- | ------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | | 机体 | FRD (X **F**orward, Y **R**ight, Z **D**own) | FLU (X **F**orward, Y **L**eft, Z **U**p), usually named `base_link` | | 世界坐标系 | FRD or NED (X **N**orth, Y **E**ast, Z **D**own) | FLU or ENU (X **E**ast, Y **N**orth, Z **U**p), with the naming being `odom` or `map` | diff --git a/docs/zh/ros/raspberrypi_installation.md b/docs/zh/ros/raspberrypi_installation.md index 313dd80fa5..c5e4b38110 100644 --- a/docs/zh/ros/raspberrypi_installation.md +++ b/docs/zh/ros/raspberrypi_installation.md @@ -18,25 +18,21 @@ Follow [this guide](https://wiki.ros.org/ROSberryPi/Installing%20ROS%20Indigo%20 如果是这样,请按以下步骤操作:转到您的 catkin 工作区(例如 ~/ros_catkin_ws)并更改包的名称。 ```sh -$ cd ~/ros_catkin_ws - -$ rosinstall_generator ros_tutorials --rosdistro indigo --deps --wet-only --exclude roslisp --tar > indigo-custom_ros.rosinstall +cd ~/ros_catkin_ws +rosinstall_generator ros_tutorials --rosdistro indigo --deps --wet-only --exclude roslisp --tar > indigo-custom_ros.rosinstall ``` 接下来,使用 wstool 更新您的工作区。 ```sh -$ wstool merge -t src indigo-custom_ros.rosinstall - -$ wstool update -t src +wstool merge -t src indigo-custom_ros.rosinstall +wstool update -t src ``` 下一步(仍在工作区文件夹中),source 并创建文件。 ```sh -$ source /opt/ros/indigo/setup.bash - -$ source devel/setup.bash - -$ catkin_make +source /opt/ros/indigo/setup.bash +source devel/setup.bash +catkin_make ``` diff --git a/docs/zh/ros2/user_guide.md b/docs/zh/ros2/user_guide.md index fd78bab6d4..7ead4bbfdc 100644 --- a/docs/zh/ros2/user_guide.md +++ b/docs/zh/ros2/user_guide.md @@ -137,7 +137,7 @@ make px4_sitl 2. 一些Python 依赖关系也必须安装 (使用 **`pip`** 或 **`apt`**): ```sh - pip install --user -U empty==3.3.4 pyros-genmsg setuptools + pip install --user -U empy==3.3.4 pyros-genmsg setuptools ``` ### 配置微型 XRCE-DDS 代理与客户端 @@ -435,7 +435,7 @@ subscription_ = this->create_subscription<0>("/fmu/out/sensor_combined", qos, ROS与 PX4所使用的本地 / 世界坐标系和机体坐标系存在差异。 -| 框架 | ROS | ROS | +| 框架 | PX4 | ROS | | ----- | ------------------------------------------------------------------- | ---------------------------------------------------------------- | | 机体 | FRD (X **F**orward, Y **R**ight, Z **D**own) | FLU (X **F**orward, Y **L**eft, Z **U**p) | | 世界坐标系 | FRD or NED (X **N**orth, Y **E**ast, Z **D**own) | FLU 或 ENU (X **E**ast, Y **N**orth, Z **U**p) | diff --git a/docs/zh/sensor/index.md b/docs/zh/sensor/index.md index abde1d52b9..7bc77faf9f 100644 --- a/docs/zh/sensor/index.md +++ b/docs/zh/sensor/index.md @@ -41,7 +41,7 @@ Optional: Enables a more accurate position lock than GPS alone, and can be used indoors when no GPS signal is available. - [Tachometers (Revolution Counters)](../sensor/tachometers.md) — Only used for logging. -Other optional: +Primarily for OEMs/Manufacturers: - [IMU/Compass Factory Calibration](../advanced_config/imu_factory_calibration.md) — Save calibration settings to persistent storage. - [Sensor Thermal Compensation](../advanced_config/sensor_thermal_calibration.md) — Compensate sensors for temperature variations. diff --git a/docs/zh/sim_gazebo_gz/vehicles.md b/docs/zh/sim_gazebo_gz/vehicles.md index 1c26a29036..ed1ec547c5 100644 --- a/docs/zh/sim_gazebo_gz/vehicles.md +++ b/docs/zh/sim_gazebo_gz/vehicles.md @@ -114,6 +114,11 @@ This model has a [gimbal](../advanced/gimbal_control.md) attached to the front w The gimbal joints uses position control with a kinematic chain ZXY. +According to the file [Gimbal model.sdf file](https://github.com/PX4/PX4-gazebo-models/blob/main/models/gimbal/model.sdf): + +- the default horizontal field of view is 2.0 rad ~= 115° +- the default vertical field of view is 0.8848 rad ~= 50.7° + ![Quadrotor(x500) with gimbal (Front-facing) in Gazebo](../../assets/simulation/gazebo/vehicles/x500_gimbal.png). ```sh