mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
New Crowdin translations - ko (#25780)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
This commit is contained in:
parent
0d0bfc1937
commit
ead1cf00ff
@ -286,6 +286,7 @@
|
||||
- [CubePilot Here+ (Discontined)](gps_compass/rtk_gps_hex_hereplus.md)
|
||||
- [INS (Inertial Navigation/GNSS)](sensor/inertial_navigation_systems.md)
|
||||
- [InertialLabs](sensor/inertiallabs.md)
|
||||
- [MicroStrain](sensor/microstrain.md)
|
||||
- [sbgECom](sensor/sbgecom.md)
|
||||
- [VectorNav](sensor/vectornav.md)
|
||||
- [광류 센서](sensor/optical_flow.md)
|
||||
@ -701,6 +702,7 @@
|
||||
- [SensorCombined](msg_docs/SensorCombined.md)
|
||||
- [SensorCorrection](msg_docs/SensorCorrection.md)
|
||||
- [SensorGnssRelative](msg_docs/SensorGnssRelative.md)
|
||||
- [SensorGnssStatus](msg_docs/SensorGnssStatus.md)
|
||||
- [SensorGps](msg_docs/SensorGps.md)
|
||||
- [SensorGyro](msg_docs/SensorGyro.md)
|
||||
- [SensorGyroFft](msg_docs/SensorGyroFft.md)
|
||||
@ -762,6 +764,7 @@
|
||||
- [Standard Modes Protocol](mavlink/standard_modes.md)
|
||||
- [uXRCE-DDS (PX4-ROS 2/DDS Bridge)](middleware/uxrce_dds.md)
|
||||
- [UORB Bridged to ROS 2](middleware/dds_topics.md)
|
||||
- [Zenoh (PX4 ROS 2)](middleware/zenoh.md)
|
||||
- [모듈과 명령어](modules/modules_main.md)
|
||||
- [자동 튜닝](modules/modules_autotune.md)
|
||||
- [명령어](modules/modules_command.md)
|
||||
|
||||
@ -618,6 +618,10 @@ div.frame_variant td, div.frame_variant th {
|
||||
<td><a href="https://www.axialadventure.com/product/1-10-scx10-ii-trail-honcho-4wd-rock-crawler-brushed-rtr/AXID9059.html">Axial SCX10 2 Trail Honcho</a></td>
|
||||
<td>유지보수: John Doe <john@example.com><p><code>SYS_AUTOSTART</code> = 51001</p></td>
|
||||
</tr>
|
||||
<tr id="rover_rover_nxp_b3rb_rover_ackermann">
|
||||
<td>NXP B3RB Rover Ackermann</td>
|
||||
<td>유지보수: John Doe <john@example.com><p><code>SYS_AUTOSTART</code> = 51002</p></td>
|
||||
</tr>
|
||||
<tr id="rover_rover_generic_rover_mecanum">
|
||||
<td>Generic Rover Mecanum</td>
|
||||
<td>유지보수: John Doe <john@example.com><p><code>SYS_AUTOSTART</code> = 52000</p></td>
|
||||
|
||||
@ -276,12 +276,12 @@ The relevant parameters are listed in the table below.
|
||||
|
||||
## 고장 감지기
|
||||
|
||||
고장 감지기를 사용하여 차량의 예기치 않게 전복되거나 외부의 고장 감지 시스템에 따른 보호 조치를 할 수 있습니다.
|
||||
The failure detector allows a vehicle to take protective actions if it unexpectedly flips, detects a motor failure, or if it is notified by an external failure detection system.
|
||||
|
||||
During **flight**, the failure detector can be used to trigger [flight termination](../advanced_config/flight_termination.md) if failure conditions are met, which may then launch a [parachute](../peripherals/parachute.md) or perform some other action.
|
||||
|
||||
:::info
|
||||
Failure detection during flight is deactivated by default (enable by setting the parameter: [CBRK_FLIGHTTERM=0](#CBRK_FLIGHTTERM)).
|
||||
Acting on a detected failure during flight is deactivated by default (enable by setting the parameter: [CBRK_FLIGHTTERM=0](#CBRK_FLIGHTTERM)).
|
||||
:::
|
||||
|
||||
During **takeoff** the failure detector [attitude trigger](#attitude-trigger) invokes the [disarm action](#act_disarm) if the vehicle flips (disarm kills the motors but, unlike flight termination, will not launch a parachute or perform other failure actions).
|
||||
@ -303,6 +303,26 @@ The failure detector is active in all vehicle types and modes, except for those
|
||||
| <a id="FD_FAIL_P_TTRI"></a>[FD_FAIL_P_TTRI](../advanced_config/parameter_reference.md#FD_FAIL_P_TTRI) | Time to exceed [FD_FAIL_P](#FD_FAIL_P) for failure detection (default 0.3s). |
|
||||
| <a id="FD_FAIL_R_TTRI"></a>[FD_FAIL_R_TTRI](../advanced_config/parameter_reference.md#FD_FAIL_R_TTRI) | Time to exceed [FD_FAIL_R](#FD_FAIL_R) for failure detection (default 0.3s). |
|
||||
|
||||
### Motor Failure Trigger
|
||||
|
||||
The failure detector can be configured to detect a motor failure while armed (and trigger an associated action) in the following conditions:
|
||||
|
||||
- A 300 ms timeout occurs in telemetry from an ESC that was previously available.
|
||||
- The input current in the telemetry of an ESC which was previously positive gets too low for more than [`FD_ACT_MOT_TOUT`](FD_ACT_MOT_TOUT) ms.
|
||||
The "too low" condition is defined by:
|
||||
|
||||
```text
|
||||
{esc current} < {parameter FD_ACT_MOT_C2T} * {motor command between 0 and 1}
|
||||
```
|
||||
|
||||
| 매개변수 | 설명 |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="FD_ACT_EN"></a>[FD_ACT_EN](../advanced_config/parameter_reference.md#FD_ACT_EN) | Enable/disable the motor failure trigger completely. |
|
||||
| <a id="FD_ACT_MOT_THR"></a>[FD_ACT_MOT_THR](../advanced_config/parameter_reference.md#FD_ACT_MOT_THR) | Minimum normalized [0,1] motor command below which motor under current is ignored. |
|
||||
| <a id="FD_ACT_MOT_C2T"></a>[FD_ACT_MOT_C2T](../advanced_config/parameter_reference.md#FD_ACT_MOT_C2T) | Scale between normalized [0,1] motor command and expected minimally reported currrent when the rotor is healthy. |
|
||||
| <a id="FD_ACT_MOT_TOUT"></a>[FD_ACT_MOT_TOUT](../advanced_config/parameter_reference.md#FD_ACT_MOT_TOUT) | Time in miliseconds for which the under current detection condition needs to stay true. |
|
||||
| <a id="CA_FAILURE_MODE"></a>[CA_FAILURE_MODE](../advanced_config/parameter_reference.md#CA_FAILURE_MODE) | Configure to not only warn about a motor failure but remove the first motor that detects a failure from the allocation effectiveness which turns off the motor and tries to operate the vehicle without it until disarming the next time. |
|
||||
|
||||
### 외부 자동 작동 시스템 (ATS)
|
||||
|
||||
The [failure detector](#failure-detector), if [enabled](#CBRK_FLIGHTTERM), can also be triggered by an external ATS system.
|
||||
|
||||
@ -19,7 +19,7 @@ At time of writing (PX4 v1.14):
|
||||
|
||||
## 장애 시스템 명령
|
||||
|
||||
Failures can be injected using the [failure system command](../modules/modules_command.md#failure) from any PX4 console/shell, specifying both the target and type of the failure.
|
||||
Failures can be injected using the [failure system command](../modules/modules_command.md#failure) from any PX4 [console/shell](../debug/consoles.md) (such as the [QGC MAVLink Console](../debug/mavlink_shell.md#qgroundcontrol-mavlink-console) or SITL _pxh shell_), specifying both the target and type of the failure.
|
||||
|
||||
### 구문
|
||||
|
||||
@ -61,11 +61,18 @@ failure <component> <failure_type> [-i <instance_number>]
|
||||
- _instance number_ (optional): Instance number of affected sensor.
|
||||
0 (기본값) 지정된 유형의 모든 센서를 나타냅니다.
|
||||
|
||||
### Example
|
||||
## MAVSDK 실패 플러그인
|
||||
|
||||
The [MAVSDK failure plugin](https://mavsdk.mavlink.io/main/en/cpp/api_reference/classmavsdk_1_1_failure.html) can be used to programmatically inject failures.
|
||||
It is used in [PX4 Integration Testing](../test_and_ci/integration_testing_mavsdk.md) to simulate failure cases (for example, see [PX4-Autopilot/test/mavsdk_tests/autopilot_tester.cpp](https://github.com/PX4/PX4-Autopilot/blob/main/test/mavsdk_tests/autopilot_tester.cpp)).
|
||||
|
||||
The plugin API is a direct mapping of the failure command shown above, with a few additional error signals related to the connection.
|
||||
|
||||
## Example: RC signal
|
||||
|
||||
To simulate losing RC signal without having to turn off your RC controller:
|
||||
|
||||
1. Enable the parameter [SYS_FAILURE_EN](../advanced_config/parameter_reference.md#SYS_FAILURE_EN). And specifically to turn off motors also [CA_FAILURE_MODE](../advanced_config/parameter_reference.md#CA_FAILURE_MODE).
|
||||
1. Enable the [SYS_FAILURE_EN](../advanced_config/parameter_reference.md#SYS_FAILURE_EN) parameter.
|
||||
2. Enter the following commands on the MAVLink console or SITL _pxh shell_:
|
||||
|
||||
```sh
|
||||
@ -76,9 +83,18 @@ To simulate losing RC signal without having to turn off your RC controller:
|
||||
failure rc_signal ok
|
||||
```
|
||||
|
||||
## MAVSDK 실패 플러그인
|
||||
## Example: Motor
|
||||
|
||||
The [MAVSDK failure plugin](https://mavsdk.mavlink.io/main/en/cpp/api_reference/classmavsdk_1_1_failure.html) can be used to programmatically inject failures.
|
||||
It is used in [PX4 Integration Testing](../test_and_ci/integration_testing_mavsdk.md) to simulate failure cases (for example, see [PX4-Autopilot/test/mavsdk_tests/autopilot_tester.cpp](https://github.com/PX4/PX4-Autopilot/blob/main/test/mavsdk_tests/autopilot_tester.cpp)).
|
||||
To stop a motor mid-flight without the system anticipating it or excluding it from allocation effectiveness:
|
||||
|
||||
The plugin API is a direct mapping of the failure command shown above, with a few additional error signals related to the connection.
|
||||
1. Enable the [SYS_FAILURE_EN](../advanced_config/parameter_reference.md#SYS_FAILURE_EN) parameter.
|
||||
2. Enable [CA_FAILURE_MODE](../advanced_config/parameter_reference.md#CA_FAILURE_MODE) parameter to allow turning off motors.
|
||||
3. Enter the following commands on the MAVLink console or SITL _pxh shell_:
|
||||
|
||||
```sh
|
||||
# Turn off first motor
|
||||
failure motor off -i 1
|
||||
|
||||
# Turn it back on
|
||||
failure motor ok -i 1
|
||||
```
|
||||
|
||||
@ -160,7 +160,7 @@ ulog 스트리밍을 지원하는 다양한 클라이언트가 있습니다.
|
||||
|
||||
- If log streaming does not start, make sure the `logger` is running (see above), and inspect the console output while starting.
|
||||
- 그래도 작동하지 않으면, MAVLink 2를 사용하고 있는지 확인하십시오.
|
||||
Enforce it by setting `MAV_PROTO_VER` to 2.
|
||||
`MAV_PROTO_VER` needs to be set to 2.
|
||||
- Log streaming uses a maximum of 70% of the configured MAVLink rate (`-r` parameter).
|
||||
더 큰 전송율이 요구되는 상황에서는, 메세지가 사라집니다.
|
||||
The currently used percentage can be inspected with `mavlink status` (1.8% is used in this example):
|
||||
|
||||
@ -83,9 +83,10 @@ This is done using the the parameters named like `UAVCAN_SUB_*` in the parameter
|
||||
|
||||
On the ARK CANnode, you may need to configure the following parameters:
|
||||
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. |
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="CANNODE_NODE_ID"></a>[CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) | CAN node ID (0 for dynamic allocation). If set to 0 (default), dynamic node allocation is used. Set to 1-127 to use a static node ID. |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. |
|
||||
|
||||
## LED 신호의 의미
|
||||
|
||||
|
||||
@ -109,9 +109,10 @@ When optical flow is the only source of horizontal position/velocity, then lower
|
||||
|
||||
On the ARK Flow, you may need to configure the following parameters:
|
||||
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. |
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="CANNODE_NODE_ID"></a>[CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) | CAN node ID (0 for dynamic allocation). If set to 0 (default), dynamic node allocation is used. Set to 1-127 to use a static node ID. |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. |
|
||||
|
||||
## LED 신호의 의미
|
||||
|
||||
|
||||
@ -104,9 +104,10 @@ Set the following parameters in _QGroundControl_:
|
||||
|
||||
You may need to [configure the following parameters](../dronecan/index.md#qgc-cannode-parameter-configuration) on the ARK Flow MR itself:
|
||||
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. |
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="CANNODE_NODE_ID"></a>[CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) | CAN node ID (0 for dynamic allocation). If set to 0 (default), dynamic node allocation is used. Set to 1-127 to use a static node ID. |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. |
|
||||
|
||||
## LED 신호의 의미
|
||||
|
||||
|
||||
@ -91,9 +91,17 @@ If the sensor is not centred within the vehicle you will also need to define sen
|
||||
|
||||
- Enable GPS yaw fusion by setting bit 3 of [EKF2_GPS_CTRL](../advanced_config/parameter_reference.md#EKF2_GPS_CTRL) to true.
|
||||
- Enable [UAVCAN_SUB_GPS](../advanced_config/parameter_reference.md#UAVCAN_SUB_GPS), [UAVCAN_SUB_MAG](../advanced_config/parameter_reference.md#UAVCAN_SUB_MAG), and [UAVCAN_SUB_BARO](../advanced_config/parameter_reference.md#UAVCAN_SUB_BARO).
|
||||
- Set [CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) to `1` if this is that last node on the CAN bus.
|
||||
- The parameters [EKF2_GPS_POS_X](../advanced_config/parameter_reference.md#EKF2_GPS_POS_X), [EKF2_GPS_POS_Y](../advanced_config/parameter_reference.md#EKF2_GPS_POS_Y) and [EKF2_GPS_POS_Z](../advanced_config/parameter_reference.md#EKF2_GPS_POS_Z) can be set to account for the offset of the ARK GPS from the vehicles centre of gravity.
|
||||
|
||||
### ARK GPS Configuration
|
||||
|
||||
You may need to [configure the following parameters](../dronecan/index.md#qgc-cannode-parameter-configuration) on the ARK GPS itself:
|
||||
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="CANNODE_NODE_ID"></a>[CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) | CAN node ID (0 for dynamic allocation). If set to 0 (default), dynamic node allocation is used. Set to 1-127 to use a static node ID. |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. Set to `1` if this is the last node on the CAN bus. |
|
||||
|
||||
## LED 신호의 의미
|
||||
|
||||
You will see green, blue and red LEDs on the ARK GPS when it is being flashed, and a blinking green LED if it is running properly.
|
||||
|
||||
@ -85,7 +85,15 @@ You need to set necessary [DroneCAN](index.md) parameters and define offsets if
|
||||
- Enable GPS blending to ensure the heading is always published by setting [SENS_GPS_MASK](../advanced_config/parameter_reference.md#SENS_GPS_MASK) to 7 (all three bits checked).
|
||||
- Enable [UAVCAN_SUB_GPS](../advanced_config/parameter_reference.md#UAVCAN_SUB_GPS), [UAVCAN_SUB_MAG](../advanced_config/parameter_reference.md#UAVCAN_SUB_MAG), and [UAVCAN_SUB_BARO](../advanced_config/parameter_reference.md#UAVCAN_SUB_BARO).
|
||||
- The parameters [EKF2_GPS_POS_X](../advanced_config/parameter_reference.md#EKF2_GPS_POS_X), [EKF2_GPS_POS_Y](../advanced_config/parameter_reference.md#EKF2_GPS_POS_Y) and [EKF2_GPS_POS_Z](../advanced_config/parameter_reference.md#EKF2_GPS_POS_Z) can be set to account for the offset of the ARK RTK GPS from the vehicles centre of gravity.
|
||||
- Set [CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) to `1` on the GPS if this it that last node on the CAN bus.
|
||||
|
||||
### ARK RTK GPS Configuration
|
||||
|
||||
You may need to [configure the following parameters](../dronecan/index.md#qgc-cannode-parameter-configuration) on the ARK RTK GPS itself:
|
||||
|
||||
| 매개변수 | 설명 |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="CANNODE_NODE_ID"></a>[CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) | CAN node ID (0 for dynamic allocation). If set to 0 (default), dynamic node allocation is used. Set to 1-127 to use a static node ID. |
|
||||
| <a id="CANNODE_TERM"></a>[CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM) | CAN built-in bus termination. Set to `1` if this is the last node on the CAN bus. |
|
||||
|
||||
### Setting Up Rover and Fixed Base
|
||||
|
||||
|
||||
@ -102,6 +102,10 @@ If the DNA is still running and certain devices need to be manually configured,
|
||||
:::info
|
||||
The PX4 node ID can be configured using the [UAVCAN_NODE_ID](../advanced_config/parameter_reference.md#UAVCAN_NODE_ID) parameter.
|
||||
The parameter is set to 1 by default.
|
||||
|
||||
Devices running the [PX4 DroneCAN firmware](px4_cannode_fw.md) (such as [ARK CANnode](ark_cannode.md)) can use the
|
||||
[CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) parameter to set a static node ID.
|
||||
Set it to 0 (default) for dynamic allocation, or to a value between 1-127 to use a specific static node ID.
|
||||
:::
|
||||
|
||||
:::warning
|
||||
@ -288,6 +292,11 @@ For example, the screenshot below shows the parameters for a CAN GPS with node i
|
||||
|
||||

|
||||
|
||||
Common CANNODE parameters that you can configure include:
|
||||
|
||||
- [CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID): Set a static node ID (1-127) or use 0 for dynamic allocation. See [PX4 DroneCAN Firmware > Static Node ID](px4_cannode_fw.md#static-node-id) for more information.
|
||||
- [CANNODE_TERM](../advanced_config/parameter_reference.md#CANNODE_TERM): Enable CAN bus termination on the last node in the bus.
|
||||
|
||||
## Device Specific Setup
|
||||
|
||||
Most DroneCAN nodes require no further setup, unless specifically noted in their device-specific documentation.
|
||||
|
||||
@ -20,6 +20,26 @@ make ark_can-flow_default
|
||||
|
||||
This will create an output in **build/ark_can-flow_default** named **XX-X.X.XXXXXXXX.uavcan.bin**. Follow the instructions at [DroneCAN firmware update](index.md#firmware-update) to flash the firmware.
|
||||
|
||||
## 설정
|
||||
|
||||
### Static Node ID
|
||||
|
||||
By default, DroneCAN devices use [Dynamic Node Allocation (DNA)](index.md#node-id-allocation) to automatically obtain a unique node ID from the flight controller.
|
||||
However, you can configure a static node ID using the [CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) parameter.
|
||||
|
||||
To configure a static node ID:
|
||||
|
||||
1. Set [CANNODE_NODE_ID](../advanced_config/parameter_reference.md#CANNODE_NODE_ID) to a value between 1-127 using [QGroundControl](index.md#qgc-cannode-parameter-configuration)
|
||||
2. Reboot the device
|
||||
|
||||
To return to dynamic allocation, set `CANNODE_NODE_ID` back to 0.
|
||||
Note that when switching back to dynamic allocation, the flight controller will typically continue to allocate the same node ID that was previously used (this is normal DNA behavior).
|
||||
|
||||
:::warning
|
||||
When using static node IDs, you must ensure that each device on the CAN bus has a unique node ID.
|
||||
Configuring two devices with the same ID will cause communication conflicts.
|
||||
:::
|
||||
|
||||
## 개발자 정보
|
||||
|
||||
This section has information that is relevant to developers who want to add support for new DroneCAN hardware to the PX4 Autopilot.
|
||||
|
||||
@ -43,9 +43,8 @@ The horizontal position of the vehicle can move due to wind (or pre-existing mom
|
||||
|
||||
The mode is affected by the following parameters:
|
||||
|
||||
| 매개변수 | 설명 |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| <a id="MPC_Z_VEL_MAX_UP"></a>[MPC_Z_VEL_MAX_UP](../advanced_config/parameter_reference.md#MPC_Z_VEL_MAX_UP) | 최대 수직 상승 속도. 기본값: 3 m/s. |
|
||||
| <a id="MPC_Z_VEL_MAX_DN"></a>[MPC_Z_VEL_MAX_DN](../advanced_config/parameter_reference.md#MPC_Z_VEL_MAX_DN) | 최대 수직 하강 속도. 기본값: 1 m/s. |
|
||||
| <a id="RCX_DZ"></a>`RCX_DZ` | RC dead zone for channel X. The value of X for throttle will depend on the value of [RC_MAP_THROTTLE](../advanced_config/parameter_reference.md#RC_MAP_THROTTLE). For example, if the throttle is channel 4 then [RC4_DZ](../advanced_config/parameter_reference.md#RC4_DZ) specifies the deadzone. |
|
||||
| <a id="MPC_xxx"></a>`MPC_XXXX` | 대부분의 MPC_xxx 매개 변수는이 모드에서 비행 동작에 어느정도 영향을 미칩니다 . For example, [MPC_THR_HOVER](../advanced_config/parameter_reference.md#MPC_THR_HOVER) defines the thrust at which a vehicle will hover. |
|
||||
| 매개변수 | 설명 |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="MPC_Z_VEL_MAX_UP"></a>[MPC_Z_VEL_MAX_UP](../advanced_config/parameter_reference.md#MPC_Z_VEL_MAX_UP) | 최대 수직 상승 속도. 기본값: 3 m/s. |
|
||||
| <a id="MPC_Z_VEL_MAX_DN"></a>[MPC_Z_VEL_MAX_DN](../advanced_config/parameter_reference.md#MPC_Z_VEL_MAX_DN) | 최대 수직 하강 속도. 기본값: 1 m/s. |
|
||||
| <a id="MPC_xxx"></a>`MPC_XXXX` | 대부분의 MPC_xxx 매개 변수는이 모드에서 비행 동작에 어느정도 영향을 미칩니다 . For example, [MPC_THR_HOVER](../advanced_config/parameter_reference.md#MPC_THR_HOVER) defines the thrust at which a vehicle will hover. |
|
||||
|
||||
@ -67,7 +67,6 @@ All the parameters in the [Multicopter Position Control](../advanced_config/para
|
||||
| <a id="MPC_Z_VEL_MAX_DN"></a>[MPC_Z_VEL_MAX_DN](../advanced_config/parameter_reference.md#MPC_Z_VEL_MAX_DN) | 최대 수직 하강 속도. 기본값: 1 m/s. |
|
||||
| <a id="MPC_LAND_ALT1"></a>[MPC_LAND_ALT1](../advanced_config/parameter_reference.md#MPC_LAND_ALT1) | Altitude for triggering first phase of slow landing. Below this altitude descending velocity gets limited to a value between [MPC_Z_VEL_MAX_DN](#MPC_Z_VEL_MAX_DN) (or `MPC_Z_V_AUTO_DN`) and [MPC_LAND_SPEED](#MPC_LAND_SPEED). Value needs to be higher than [MPC_LAND_ALT2](#MPC_LAND_ALT2). Default 10m. |
|
||||
| <a id="MPC_LAND_ALT2"></a>[MPC_LAND_ALT2](../advanced_config/parameter_reference.md#MPC_LAND_ALT2) | Altitude for second phase of slow landing. Below this altitude descending velocity gets limited to [`MPC_LAND_SPEED`](#MPC_LAND_SPEED). Value needs to be lower than "MPC_LAND_ALT1". Default 5m. |
|
||||
| <a id="RCX_DZ"></a>`RCX_DZ` | RC dead zone for channel X. The value of X for throttle will depend on the value of [RC_MAP_THROTTLE](../advanced_config/parameter_reference.md#RC_MAP_THROTTLE). For example, if the throttle is channel 4 then [RC4_DZ](../advanced_config/parameter_reference.md#RC4_DZ) specifies the deadzone. |
|
||||
| <a id="MPC_xxx"></a>`MPC_XXXX` | 대부분의 MPC_xxx 매개 변수는이 모드에서 비행 동작에 어느정도 영향을 미칩니다 . For example, [MPC_THR_HOVER](../advanced_config/parameter_reference.md#MPC_THR_HOVER) defines the thrust at which a vehicle will hover. |
|
||||
| <a id="MPC_POS_MODE"></a>[MPC_POS_MODE](../advanced_config/parameter_reference.md#MPC_POS_MODE) | Stick input to movement translation strategy. From PX4 v1.12 the default (`Acceleration based`) is that stick position controls acceleration (in a similar way to a car accelerator pedal). Other options allow stick deflection to directly control speed over ground, with and without smoothing and acceleration limits. |
|
||||
| <a id="MPC_ACC_HOR_MAX"></a>[MPC_ACC_HOR_MAX](../advanced_config/parameter_reference.md#MPC_ACC_HOR_MAX) | Maximum horizontal acceleration. |
|
||||
|
||||
@ -123,35 +123,35 @@ This should be set by default, but if not, follow the [MAVLink2 configuration in
|
||||
RTK GPS 연결은 기본적으로 플러그앤플레이입니다.
|
||||
|
||||
1. Start _QGroundControl_ and attach the base RTK GPS via USB to the ground station.
|
||||
장치가 자동으로 인식됩니다.
|
||||
장치가 자동으로 인식됩니다.
|
||||
|
||||
2. Start the vehicle and make sure it is connected to _QGroundControl_.
|
||||
|
||||
:::tip
|
||||
_QGroundControl_ displays an RTK GPS status icon in the top icon bar while an RTK GPS device is connected (in addition to the normal GPS status icon).
|
||||
RTK가 설정되는 동안 아이콘은 빨간색으로 표시되고, RTK GPS가 활성화되면 흰색으로 바뀝니다.
|
||||
아이콘을 클릭하여 현재 상태와 RTK 정확도를 확인할 수 있습니다.
|
||||
:::tip
|
||||
_QGroundControl_ displays an RTK GPS status icon in the top icon bar while an RTK GPS device is connected (in addition to the normal GPS status icon).
|
||||
RTK가 설정되는 동안 아이콘은 빨간색으로 표시되고, RTK GPS가 활성화되면 흰색으로 바뀝니다.
|
||||
아이콘을 클릭하여 현재 상태와 RTK 정확도를 확인할 수 있습니다.
|
||||
|
||||
:::
|
||||
|
||||
3. _QGroundControl_ then starts the RTK setup process (known as "Survey-In").
|
||||
|
||||
Survey-In은 기지국의 정확한 위치 추정치를 획득을 위한 시작 절차입니다.
|
||||
The process typically takes several minutes (it ends after reaching the minimum time and accuracy specified in the [RTK settings](#rtk-gps-settings)).
|
||||
Survey-In은 기지국의 정확한 위치 추정치를 획득을 위한 시작 절차입니다.
|
||||
The process typically takes several minutes (it ends after reaching the minimum time and accuracy specified in the [RTK settings](#rtk-gps-settings)).
|
||||
|
||||
RTK GPS 상태 아이콘을 클릭하여 진행 상황을 추적할 수 있습니다.
|
||||
RTK GPS 상태 아이콘을 클릭하여 진행 상황을 추적할 수 있습니다.
|
||||
|
||||

|
||||

|
||||
|
||||
4. Survey-in이 완료되면 :
|
||||
- The RTK GPS icon changes to white and _QGroundControl_ starts to stream position data to the vehicle:
|
||||
- The RTK GPS icon changes to white and _QGroundControl_ starts to stream position data to the vehicle:
|
||||
|
||||

|
||||

|
||||
|
||||
- 기체의 GPS가 RTK 모드로 전환됩니다.
|
||||
The new mode is displayed in the _normal_ GPS status icon (`3D RTK GPS Lock`):
|
||||
- 기체의 GPS가 RTK 모드로 전환됩니다.
|
||||
The new mode is displayed in the _normal_ GPS status icon (`3D RTK GPS Lock`):
|
||||
|
||||

|
||||

|
||||
|
||||
### GPS를 Yaw/Heading 소스로 설정
|
||||
|
||||
@ -206,7 +206,7 @@ MAVLink2 프로토콜은 낮은 대역폭 채널을 보다 효율적으로 사
|
||||
MAVLink2가 사용되는 지 확인하려면 :
|
||||
|
||||
- Update the telemetry module firmware to the latest version (see [QGroundControl > Setup > Firmware](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/setup_view/firmware.html)).
|
||||
- Set [MAV_PROTO_VER](../advanced_config/parameter_reference.md#MAV_PROTO_VER) to 2 (see [QGroundControl Setup > Parameters](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/setup_view/parameters.html))
|
||||
- Ensure [MAV_PROTO_VER](../advanced_config/parameter_reference.md#MAV_PROTO_VER) is set to 2 (see [QGroundControl Setup > Parameters](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/setup_view/parameters.html))
|
||||
|
||||
#### 튜닝
|
||||
|
||||
|
||||
@ -1,3 +1,8 @@
|
||||
<script setup>
|
||||
import { useData } from 'vitepress'
|
||||
const { site } = useData();
|
||||
</script>
|
||||
|
||||
<div style="float:right; padding:10px; margin-right:20px;"><a href="https://px4.io/"><img src="../assets/site/logo_pro_small.png" title="PX4 Logo" width="180px" /></a></div>
|
||||
|
||||
# PX4 Autopilot 사용자 안내서
|
||||
@ -9,17 +14,22 @@ PX4 is the _Professional Autopilot_.
|
||||
세계 각국에서 활동중인 여러 단체들의 지원을 받을 수 있습니다. PX4는 레이싱 드론, 운송용 드론, 자동차와 선박 등의 다양한 운송체에 적용하여 사용할 수 있습니다.
|
||||
|
||||
:::tip
|
||||
This guide contains everything you need to assemble, configure, and safely fly a PX4-based vehicle. 이 프로젝트에 기여하시려면, Check out the [Development](development/development.md) section.
|
||||
|
||||
This guide contains everything you need to assemble, configure, and safely fly a PX4-based vehicle.
|
||||
이 프로젝트에 기여하시려면, Check out the [Development](development/development.md) section.
|
||||
:::
|
||||
|
||||
<div v-if="site.title == 'PX4 Guide (main)'">
|
||||
|
||||
:::warning
|
||||
|
||||
This guide is for the _development_ version of PX4 (`main` branch).
|
||||
Use the **Version** selector to find the current _stable_ version.
|
||||
|
||||
Documented changes since the stable release are captured in the evolving [release note](releases/main.md).
|
||||
:::
|
||||
|
||||
</div>
|
||||
|
||||
## 시작하기
|
||||
|
||||
[Basic Concepts](getting_started/px4_basic_concepts.md) should be read by all users!
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
This document is [auto-generated](https://github.com/PX4/PX4-Autopilot/blob/main/Tools/msg/generate_msg_docs.py) from the source code.
|
||||
:::
|
||||
|
||||
The [dds_topics.yaml](https://github.com/PX4/PX4-Autopilot/blob/main/src/modules/uxrce_dds_client/dds_topics.yaml) file specifies which uORB message definitions are compiled into the [uxrce_dds_client](../modules/modules_system.md#uxrce-dds-client) module when [PX4 is built](../middleware/uxrce_dds.md#code-generation), and hence which topics are available for ROS 2 applications to subscribe or publish (by default).
|
||||
The [dds_topics.yaml](https://github.com/PX4/PX4-Autopilot/blob/main/src/modules/uxrce_dds_client/dds_topics.yaml) file specifies which uORB message definitions are compiled into the [uxrce_dds_client](../modules/modules_system.md#uxrce-dds-client) and/or [zenoh](../modules/modules_driver.md#zenoh) module when [PX4 is built](../middleware/uxrce_dds.md#code-generation), and hence which topics are available for ROS 2 applications to subscribe or publish (by default).
|
||||
|
||||
This document shows a markdown-rendered version of [dds_topics.yaml](https://github.com/PX4/PX4-Autopilot/blob/main/src/modules/uxrce_dds_client/dds_topics.yaml), listing the publications, subscriptions, and so on.
|
||||
|
||||
|
||||
201
docs/ko/middleware/zenoh.md
Normal file
201
docs/ko/middleware/zenoh.md
Normal file
@ -0,0 +1,201 @@
|
||||
# Zenoh (PX4 ROS 2 rmw_zenoh)
|
||||
|
||||
<Badge type="tip" text="main (planned for: PX4 v1.17)" /> <Badge type="warning" text="Experimental" />
|
||||
|
||||
:::warning
|
||||
실험
|
||||
At the time of writing, PX4 Zenoh-pico is experimental, and hence subject to change.
|
||||
:::
|
||||
|
||||
PX4 supports Zenoh as an alternative mechanism (to DDS) for bridging uORB topics to [ROS 2](../ros2/user_guide.md) (via the ROS 2 [`rmw_zenoh`](https://github.com/ros2/rmw_zenoh) middleware).
|
||||
This allows uORB messages to be published and subscribed on a companion computer as though they were ROS 2 topics.
|
||||
It provides a fast and lightweight way to connect PX4 to ROS 2, making it easier for applications to access vehicle telemetry and send control commands.
|
||||
|
||||
The following guide describes the architecture and various options for setting up the Zenoh client and router.
|
||||
In particular, it covers the options that are most important to PX4 users exploring Zenoh as an alternative communication layer for ROS 2.
|
||||
|
||||
## 아키텍쳐
|
||||
|
||||
The Zenoh-based middleware consists of a client running on PX4 and a Zenoh router running on the companion computer, with bi-directional data exchange between them over a UART, TCP, UDP, or multicast-UDP link.
|
||||
The router acts as a broker and discovery service, enabling PX4 to publish and subscribe to topics in the global Zenoh data space.
|
||||
This allows seamless integration with ROS 2 nodes using [`rmw_zenoh`](https://github.com/ros2/rmw_zenoh), and supports flexible deployment across distributed systems.
|
||||
|
||||

|
||||
|
||||
The client is the _PX4 Zenoh-Pico Node_ referred to above, which is implemented in the [PX4 `zenoh` module](../modules/modules_driver.md#zenoh).
|
||||
This is based on Zenoh-Pico, a minimalistic version of [Eclipse Zenoh](https://zenoh.io/) (a data-centric protocol designed for real-time, distributed, and resource-constrained environments).
|
||||
|
||||
The router suggested above is [zenohd](https://github.com/eclipse-zenoh/zenoh/tree/main/zenohd).
|
||||
|
||||
:::info
|
||||
UART is supported by Zenoh but has not yet implemented in the PX4 Zenoh-Pico node.
|
||||
:::
|
||||
|
||||
## ROS 2 Zenoh Bring-up on Linux Companion
|
||||
|
||||
In order for PX4 uORB topics to be shared with ROS 2 applications, you will need the PX4 Zenoh-Pico Node client running on your FMU, connected to a Zenoh router running on the companion computer (or elsewhere in the network).
|
||||
|
||||
First select Zenoh as the ROS 2 transport by setting the `RMW_IMPLEMENTATION` environment variable as shown:
|
||||
|
||||
```sh
|
||||
export RMW_IMPLEMENTATION=rmw_zenoh_cpp
|
||||
```
|
||||
|
||||
Then start the Zenoh router using the command:
|
||||
|
||||
```sh
|
||||
ros2 run rmw_zenoh_cpp rmw_zenohd
|
||||
```
|
||||
|
||||
For more information about the Zenoh Router see the [rmw_zenoh](https://github.com/ros2/rmw_zenoh?tab=readme-ov-file#start-the-zenoh-router) documentation.
|
||||
|
||||
## PX4 Zenoh-Pico Node Setup
|
||||
|
||||
### PX4 Firmware
|
||||
|
||||
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.
|
||||
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.
|
||||
Note that due to flash constraints you may need to remove other components in order to include the module (such as the [`uxrce_dds_client` module](../modules/modules_system.md#uxrce-dds-client), which you will not need if you are using Zenoh).
|
||||
|
||||
The table below shows some of the PX4 targets that include Zenoh by default.
|
||||
|
||||
| PX4 Target | 참고 |
|
||||
| ---------------------- | -------------------------------------------------------------------------------------------------------------- |
|
||||
| `px4_fmu-v6xrt` | For [FMUv6X-RT](../flight_controller/nxp_mr_vmu_rt1176.md) (reference platform for testing) |
|
||||
| `nxp_tropic-community` | |
|
||||
| `nxp_mr-tropic` | |
|
||||
| `nxp_mr-canhubk344` | |
|
||||
| `px4_sitl_zenoh` | Zenoh-enabled simulation build |
|
||||
| `px4_fmu-v6x_zenoh` | Zenoh-enabled firmware for FMUv6X |
|
||||
|
||||
Zenoh is not included in the default `px4_fmu-` targets for any firmware other than `px4_fmu-v6xrt` (`px4_sitl_zenoh` and `px4_fmu-v6x_zenoh` [are build variants](../dev_setup/building_px4.md#px4-make-build-targets)).
|
||||
|
||||
:::tip
|
||||
You can check if Zenoh is present at runtime by using QGroundControl to [find the parameter](../advanced_config/parameters.md#finding-a-parameter) [ZENOH_ENABLE](../advanced_config/parameter_reference.md#ZENOH_ENABLE).
|
||||
If present, the module is installed.
|
||||
:::
|
||||
|
||||
### 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.
|
||||
|
||||
### Configure Zenoh Network
|
||||
|
||||
Set up PX4 to connect to the companion computer running `zenohd`.
|
||||
|
||||
PX4's default IP address of the Zenoh daemon host is `10.41.10.1`.
|
||||
If you're using a different IP for the Zenoh daemon, run the following command (replacing the address) in a PX4 shell and then reboot:
|
||||
|
||||
```sh
|
||||
zenoh config net client tcp/10.41.10.1:7447#iface=eth0
|
||||
```
|
||||
|
||||
Note that for the simulation target with Zeroh (`px4_sitl_zenoh`) you won't need to make any changes because the default IP address of the Zenoh daemon is set to `localhost`.
|
||||
|
||||
:::warning
|
||||
Any changes to the network configuration require a PX4 system reboot to take effect.
|
||||
:::
|
||||
|
||||
:::tip
|
||||
See [PX4 Ethernet Setup](../advanced_config/ethernet_setup.md) for more information about Ethernet configuration.
|
||||
:::
|
||||
|
||||
### PX4 Zenoh-pico Node configuration
|
||||
|
||||
The **default configuration** is auto-generated from the [dds_topics.yaml](../middleware/dds_topics.md) file in the PX4 repository.
|
||||
This file specifies which uORB message definitions are to be published/subscribed by ROS 2 applications, and hence (indirectly) which topics are compiled into the zenoh module.
|
||||
|
||||
To inspect the current Zenoh configuration:
|
||||
|
||||
```sh
|
||||
zenoh config
|
||||
```
|
||||
|
||||
The PX4 Zenoh-pico node stores its configuration on the **SD card** under the `zenoh` folder.
|
||||
This folder contains three key files:
|
||||
|
||||
- **`net.txt`** – Defines the **Zenoh network configuration**.
|
||||
- **`pub.csv`** – Maps **uORB topics to ROS2 topics** (used for publishing).
|
||||
- **`sub.csv`** – Maps **ROS2 topics to uORB topics** (used for subscribing).
|
||||
|
||||
### 4. Modifying Topic Mappings
|
||||
|
||||
Zenoh topic mappings define how data flows between PX4's internal uORB topics and external ROS2 topics via Zenoh.
|
||||
These mappings are stored in `pub.csv` and `sub.csv` on the SD card, and can be modified at runtime using the `zenoh config` CLI tool.
|
||||
|
||||
:::warning
|
||||
Any changes to the topic mappings require a PX4 system reboot to take effect.
|
||||
:::
|
||||
|
||||
There are two types of mappings you can modify:
|
||||
|
||||
- **Publisher mappings**: Forward data from a uORB topic to a Zenoh topic.
|
||||
- **Subscriber mappings**: Receive data from a Zenoh topic and publish it to a uORB topic.
|
||||
|
||||
The main operations and their commands are:
|
||||
|
||||
- Publish a uORB topic to a Zenoh topic:
|
||||
|
||||
```sh
|
||||
zenoh config add publisher <zenoh_topic> <uorb_topic> [uorb_instance]
|
||||
```
|
||||
|
||||
- Subscribe to a Zenoh topic and forward it to a uORB topic:
|
||||
|
||||
```sh
|
||||
zenoh config add subscriber <zenoh_topic> <uorb_topic> [uorb_instance]
|
||||
```
|
||||
|
||||
- Remove existing mappings:
|
||||
|
||||
```sh
|
||||
zenoh config delete publisher <zenoh_topic>
|
||||
zenoh config delete subscriber <zenoh_topic>
|
||||
```
|
||||
|
||||
After modifying the mappings, reboot PX4 to apply the changes.
|
||||
The updated configuration will be loaded from the SD card during startup.
|
||||
|
||||
## Communicating with PX4 from ROS 2 via Zenoh
|
||||
|
||||
Once your PX4 FMU is publishing data into ROS 2, you can inspect the available topics and their contents using standard ROS 2 CLI tools:
|
||||
|
||||
```sh
|
||||
ros2 topic list
|
||||
```
|
||||
|
||||
Check topic type and publishers/subscribers:
|
||||
|
||||
```sh
|
||||
ros2 topic info -v /fmu/out/vehicle_status
|
||||
Type: px4_msgs/msg/VehicleStatus
|
||||
|
||||
Publisher count: 1
|
||||
|
||||
Node name: px4_aabbcc00000000000000000000000000
|
||||
Node namespace: /
|
||||
Topic type: px4_msgs/msg/VehicleStatus
|
||||
Topic type hash: RIHS01_828bddbb7d4c2aa6ad93757955f6893be1ec5d8f11885ec7715bcdd76b5226c9
|
||||
Endpoint type: PUBLISHER
|
||||
GID: 82.99.74.2c.b6.7d.93.44.91.4d.fe.14.93.58.40.16
|
||||
QoS profile:
|
||||
Reliability: RELIABLE
|
||||
History (Depth): KEEP_LAST (7)
|
||||
Durability: VOLATILE
|
||||
Lifespan: Infinite
|
||||
Deadline: Infinite
|
||||
Liveliness: AUTOMATIC
|
||||
Liveliness lease duration: Infinite
|
||||
|
||||
Subscription count: 0
|
||||
```
|
||||
|
||||
### PX4 ROS 2 Interface with Zenoh
|
||||
|
||||
The [PX4 ROS 2 Interface Library](../ros2/px4_ros2_interface_lib.md) works out of the box with Zenoh as a transport backend.
|
||||
This means you can publish and subscribe to PX4 topics over Zenoh without changing your ROS 2 nodes or dealing with DDS configuration.
|
||||
For setup details and supported message types, refer to the [PX4 ROS 2 Interface Library](../ros2/px4_ros2_interface_lib.md).
|
||||
@ -104,7 +104,7 @@ Source: [drivers/distance_sensor/lightware_laser_i2c](https://github.com/PX4/PX4
|
||||
|
||||
### 설명
|
||||
|
||||
I2C bus driver for Lightware SFxx series LIDAR rangefinders: SF10/a, SF10/b, SF10/c, SF11/c, SF/LW20.
|
||||
I2C bus driver for Lightware SFxx series LIDAR rangefinders: SF10/a, SF10/b, SF10/c, SF11/c, SF/LW20, SF30/d.
|
||||
|
||||
Setup/usage information: https://docs.px4.io/main/en/sensor/sfxx_lidar.html
|
||||
|
||||
|
||||
@ -1,29 +1,39 @@
|
||||
# AirspeedValidated (UORB message)
|
||||
|
||||
Validated airspeed
|
||||
|
||||
Provides information about airspeed (indicated, true, calibrated) and the source of the data.
|
||||
Used by controllers, estimators and for airspeed reporting to operator.
|
||||
|
||||
[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/AirspeedValidated.msg)
|
||||
|
||||
```c
|
||||
# Validated airspeed
|
||||
#
|
||||
# Provides information about airspeed (indicated, true, calibrated) and the source of the data.
|
||||
# Used by controllers, estimators and for airspeed reporting to operator.
|
||||
|
||||
|
||||
uint32 MESSAGE_VERSION = 1
|
||||
|
||||
uint64 timestamp # time since system start (microseconds)
|
||||
uint64 timestamp # [us] Time since system start
|
||||
|
||||
float32 indicated_airspeed_m_s # [m/s] Indicated airspeed (IAS), set to NAN if invalid
|
||||
float32 calibrated_airspeed_m_s # [m/s] Calibrated airspeed (CAS), set to NAN if invalid
|
||||
float32 true_airspeed_m_s # [m/s] True airspeed (TAS), set to NAN if invalid
|
||||
float32 indicated_airspeed_m_s # [m/s] [@invalid NaN] Indicated airspeed (IAS)
|
||||
float32 calibrated_airspeed_m_s # [m/s] [@invalid NaN] Calibrated airspeed (CAS)
|
||||
float32 true_airspeed_m_s # [m/s] [@invalid NaN] True airspeed (TAS)
|
||||
|
||||
int8 airspeed_source # Source of currently published airspeed values
|
||||
int8 DISABLED = -1
|
||||
int8 GROUND_MINUS_WIND = 0
|
||||
int8 SENSOR_1 = 1
|
||||
int8 SENSOR_2 = 2
|
||||
int8 SENSOR_3 = 3
|
||||
int8 SYNTHETIC = 4
|
||||
int8 airspeed_source # [@enum SOURCE] Source of currently published airspeed values
|
||||
int8 SOURCE_DISABLED = -1 # Disabled
|
||||
int8 SOURCE_GROUND_MINUS_WIND = 0 # Ground speed minus wind
|
||||
int8 SOURCE_SENSOR_1 = 1 # Sensor 1
|
||||
int8 SOURCE_SENSOR_2 = 2 # Sensor 2
|
||||
int8 SOURCE_SENSOR_3 = 3 # Sensor 3
|
||||
int8 SOURCE_SYNTHETIC = 4 # Synthetic airspeed
|
||||
|
||||
# debug states
|
||||
float32 calibrated_ground_minus_wind_m_s # CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid
|
||||
float32 calibraded_airspeed_synth_m_s # synthetic airspeed in m/s, set to NAN if invalid
|
||||
float32 airspeed_derivative_filtered # filtered indicated airspeed derivative [m/s/s]
|
||||
float32 throttle_filtered # filtered fixed-wing throttle [-]
|
||||
float32 pitch_filtered # filtered pitch [rad]
|
||||
float32 calibrated_ground_minus_wind_m_s # [m/s] [@invalid NaN] CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption
|
||||
float32 calibraded_airspeed_synth_m_s # [m/s] [@invalid NaN] Synthetic airspeed
|
||||
float32 airspeed_derivative_filtered # [m/s^2] Filtered indicated airspeed derivative
|
||||
float32 throttle_filtered # [-] Filtered fixed-wing throttle
|
||||
float32 pitch_filtered # [rad] Filtered pitch
|
||||
|
||||
```
|
||||
|
||||
@ -1,42 +1,59 @@
|
||||
# AutotuneAttitudeControlStatus (UORB message)
|
||||
|
||||
Autotune attitude control status
|
||||
|
||||
This message is published by the fw_autotune_attitude_control and mc_autotune_attitude_control modules when the user engages autotune,
|
||||
and is subscribed to by the respective attitude controllers to command rate setpoints.
|
||||
|
||||
The rate_sp field is consumed by the controllers, while the remaining fields (model coefficients, gains, filters, and autotune state) are used for logging and debugging.
|
||||
|
||||
[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/AutotuneAttitudeControlStatus.msg)
|
||||
|
||||
```c
|
||||
uint64 timestamp # time since system start (microseconds)
|
||||
# Autotune attitude control status
|
||||
#
|
||||
# This message is published by the fw_autotune_attitude_control and mc_autotune_attitude_control modules when the user engages autotune,
|
||||
# and is subscribed to by the respective attitude controllers to command rate setpoints.
|
||||
#
|
||||
# The rate_sp field is consumed by the controllers, while the remaining fields (model coefficients, gains, filters, and autotune state) are used for logging and debugging.
|
||||
|
||||
float32[5] coeff # coefficients of the identified discrete-time model
|
||||
float32[5] coeff_var # coefficients' variance of the identified discrete-time model
|
||||
float32 fitness # fitness of the parameter estimate
|
||||
float32 innov
|
||||
float32 dt_model
|
||||
uint64 timestamp # [us] Time since system start
|
||||
|
||||
float32 kc
|
||||
float32 ki
|
||||
float32 kd
|
||||
float32 kff
|
||||
float32 att_p
|
||||
float32[5] coeff # [-] Coefficients of the identified discrete-time model
|
||||
float32[5] coeff_var # [-] Coefficients' variance of the identified discrete-time model
|
||||
float32 fitness # [-] Fitness of the parameter estimate
|
||||
float32 innov # [rad/s] Innovation (residual error between model and measured output)
|
||||
float32 dt_model # [s] Model sample time used for identification
|
||||
|
||||
float32[3] rate_sp
|
||||
|
||||
float32 u_filt
|
||||
float32 y_filt
|
||||
float32 kc # [-] Proportional rate-loop gain (ideal form)
|
||||
float32 ki # [-] Integral rate-loop gain (ideal form)
|
||||
float32 kd # [-] Derivative rate-loop gain (ideal form)
|
||||
float32 kff # [-] Feedforward rate-loop gain
|
||||
float32 att_p # [-] Proportional attitude gain
|
||||
|
||||
uint8 STATE_IDLE = 0
|
||||
uint8 STATE_INIT = 1
|
||||
uint8 STATE_ROLL = 2
|
||||
uint8 STATE_ROLL_PAUSE = 3
|
||||
uint8 STATE_PITCH = 4
|
||||
uint8 STATE_PITCH_PAUSE = 5
|
||||
uint8 STATE_YAW = 6
|
||||
uint8 STATE_YAW_PAUSE = 7
|
||||
uint8 STATE_VERIFICATION = 8
|
||||
uint8 STATE_APPLY = 9
|
||||
uint8 STATE_TEST = 10
|
||||
uint8 STATE_COMPLETE = 11
|
||||
uint8 STATE_FAIL = 12
|
||||
uint8 STATE_WAIT_FOR_DISARM = 13
|
||||
float32[3] rate_sp # [rad/s] Rate setpoint commanded to the attitude controller.
|
||||
|
||||
uint8 state
|
||||
float32 u_filt # [-] Filtered input signal (normalized torque setpoint) used in system identification.
|
||||
float32 y_filt # [rad/s] Filtered output signal (angular velocity) used in system identification.
|
||||
|
||||
uint8 state # [@enum STATE] Current state of the autotune procedure.
|
||||
uint8 STATE_IDLE = 0 # Idle (not running)
|
||||
uint8 STATE_INIT = 1 # Initialize filters and setup
|
||||
uint8 STATE_ROLL_AMPLITUDE_DETECTION = 2 # FW only: determine required excitation amplitude (roll)
|
||||
uint8 STATE_ROLL = 3 # Roll-axis excitation and model identification
|
||||
uint8 STATE_ROLL_PAUSE = 4 # Pause to return to level flight
|
||||
uint8 STATE_PITCH_AMPLITUDE_DETECTION = 5 # FW only: determine required excitation amplitude (pitch)
|
||||
uint8 STATE_PITCH = 6 # Pitch-axis excitation and model identification
|
||||
uint8 STATE_PITCH_PAUSE = 7 # Pause to return to level flight
|
||||
uint8 STATE_YAW_AMPLITUDE_DETECTION = 8 # FW only: determine required excitation amplitude (yaw)
|
||||
uint8 STATE_YAW = 9 # Yaw-axis excitation and model identification
|
||||
uint8 STATE_YAW_PAUSE = 10 # Pause to return to level flight
|
||||
uint8 STATE_VERIFICATION = 11 # Verify model and candidate gains
|
||||
uint8 STATE_APPLY = 12 # Apply gains
|
||||
uint8 STATE_TEST = 13 # Test gains in closed-loop
|
||||
uint8 STATE_COMPLETE = 14 # Tuning completed successfully
|
||||
uint8 STATE_FAIL = 15 # Tuning failed (model invalid or controller unstable)
|
||||
uint8 STATE_WAIT_FOR_DISARM = 16 # Waiting for disarm before finalizing
|
||||
|
||||
```
|
||||
|
||||
@ -24,5 +24,6 @@ int8[16] actuator_saturation # Indicates actuator saturation status.
|
||||
# Note 2: an actuator with limited dynamics can be indicated as upper-saturated even if it as not reached its maximum value.
|
||||
|
||||
uint16 handled_motor_failure_mask # Bitmask of failed motors that were removed from the allocation / effectiveness matrix. Not necessarily identical to the report from FailureDetector
|
||||
uint16 motor_stop_mask # Bitmaks of motors stopped by failure injection
|
||||
|
||||
```
|
||||
|
||||
@ -54,8 +54,9 @@ bool cs_valid_fake_pos # 41 - true if a valid constant position is bein
|
||||
bool cs_constant_pos # 42 - true if the vehicle is at a constant position
|
||||
bool cs_baro_fault # 43 - true when the current baro has been declared faulty and is no longer being used
|
||||
bool cs_gnss_vel # 44 - true if GNSS velocity measurement fusion is intended
|
||||
bool cs_gnss_fault # 45 - true if GNSS measurements have been declared faulty and are no longer used
|
||||
bool cs_gnss_fault # 45 - true if GNSS true if GNSS measurements (lat, lon, vel) have been declared faulty
|
||||
bool cs_yaw_manual # 46 - true if yaw has been set manually
|
||||
bool cs_gnss_hgt_fault # 47 - true if GNSS true if GNSS measurements (alt) have been declared faulty
|
||||
|
||||
# fault status
|
||||
uint32 fault_status_changes # number of filter fault status (fs) changes
|
||||
|
||||
@ -17,5 +17,6 @@ bool fd_motor
|
||||
|
||||
float32 imbalanced_prop_metric # Metric of the imbalanced propeller check (low-passed)
|
||||
uint16 motor_failure_mask # Bit-mask with motor indices, indicating critical motor failures
|
||||
uint16 motor_stop_mask # Bitmaks of motors stopped by failure injection
|
||||
|
||||
```
|
||||
|
||||
@ -14,6 +14,9 @@ uint16 DEVICE_FLAGS_NEUTRAL = 2
|
||||
uint16 DEVICE_FLAGS_ROLL_LOCK = 4
|
||||
uint16 DEVICE_FLAGS_PITCH_LOCK = 8
|
||||
uint16 DEVICE_FLAGS_YAW_LOCK = 16
|
||||
uint16 DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME = 32
|
||||
uint16 DEVICE_FLAGS_YAW_IN_EARTH_FRAME = 64
|
||||
|
||||
|
||||
float32[4] q
|
||||
float32 angular_velocity_x
|
||||
|
||||
19
docs/ko/msg_docs/SensorGnssStatus.md
Normal file
19
docs/ko/msg_docs/SensorGnssStatus.md
Normal file
@ -0,0 +1,19 @@
|
||||
# SensorGnssStatus (UORB message)
|
||||
|
||||
Gnss quality indicators
|
||||
|
||||
[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGnssStatus.msg)
|
||||
|
||||
```c
|
||||
# Gnss quality indicators
|
||||
|
||||
uint64 timestamp # time since system start (microseconds)
|
||||
uint32 device_id # unique device ID for the sensor that does not change between power cycles
|
||||
|
||||
bool quality_available # Set to true if quality indicators are available
|
||||
uint8 quality_corrections # Corrections quality from 0 to 10, or 255 if not available
|
||||
uint8 quality_receiver # Overall receiver operating status from 0 to 10, or 255 if not available
|
||||
uint8 quality_gnss_signals # Quality of GNSS signals from 0 to 10, or 255 if not available
|
||||
uint8 quality_post_processing # Expected post processing quality from 0 to 10, or 255 if not available
|
||||
|
||||
```
|
||||
@ -38,18 +38,26 @@ float32 vdop # Vertical dilution of precision
|
||||
int32 noise_per_ms # GPS noise per millisecond
|
||||
uint16 automatic_gain_control # Automatic gain control monitor
|
||||
|
||||
uint8 JAMMING_STATE_UNKNOWN = 0
|
||||
uint8 JAMMING_STATE_OK = 1
|
||||
uint8 JAMMING_STATE_WARNING = 2
|
||||
uint8 JAMMING_STATE_CRITICAL = 3
|
||||
uint8 jamming_state # indicates whether jamming has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Warning, 3: Critical
|
||||
int32 jamming_indicator # indicates jamming is occurring
|
||||
uint8 JAMMING_STATE_UNKNOWN = 0 #default
|
||||
uint8 JAMMING_STATE_OK = 1
|
||||
uint8 JAMMING_STATE_MITIGATED = 2
|
||||
uint8 JAMMING_STATE_DETECTED = 3
|
||||
uint8 jamming_state # indicates whether jamming has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Mitigated, 3: Detected
|
||||
int32 jamming_indicator # indicates jamming is occurring
|
||||
|
||||
uint8 SPOOFING_STATE_UNKNOWN = 0
|
||||
uint8 SPOOFING_STATE_NONE = 1
|
||||
uint8 SPOOFING_STATE_INDICATED = 2
|
||||
uint8 SPOOFING_STATE_MULTIPLE = 3
|
||||
uint8 spoofing_state # indicates whether spoofing has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Warning, 3: Critical
|
||||
uint8 SPOOFING_STATE_UNKNOWN = 0 #default
|
||||
uint8 SPOOFING_STATE_OK = 1
|
||||
uint8 SPOOFING_STATE_MITIGATED = 2
|
||||
uint8 SPOOFING_STATE_DETECTED = 3
|
||||
uint8 spoofing_state # indicates whether spoofing has been detected or suspected by the receivers. O: Unknown, 1: OK, 2: Mitigated, 3: Detected
|
||||
|
||||
# Combined authentication state (e.g. Galileo OSNMA)
|
||||
uint8 AUTHENTICATION_STATE_UNKNOWN = 0 #default
|
||||
uint8 AUTHENTICATION_STATE_INITIALIZING = 1
|
||||
uint8 AUTHENTICATION_STATE_ERROR = 2
|
||||
uint8 AUTHENTICATION_STATE_OK = 3
|
||||
uint8 AUTHENTICATION_STATE_DISABLED = 4
|
||||
uint8 authentication_state # GPS signal authentication state
|
||||
|
||||
float32 vel_m_s # GPS ground speed, (metres/sec)
|
||||
float32 vel_n_m_s # GPS North velocity, (metres/sec)
|
||||
@ -63,6 +71,16 @@ uint64 time_utc_usec # Timestamp (microseconds, UTC), this is the timestamp whi
|
||||
|
||||
uint8 satellites_used # Number of satellites used
|
||||
|
||||
uint32 SYSTEM_ERROR_OK = 0 #default
|
||||
uint32 SYSTEM_ERROR_INCOMING_CORRECTIONS = 1
|
||||
uint32 SYSTEM_ERROR_CONFIGURATION = 2
|
||||
uint32 SYSTEM_ERROR_SOFTWARE = 4
|
||||
uint32 SYSTEM_ERROR_ANTENNA = 8
|
||||
uint32 SYSTEM_ERROR_EVENT_CONGESTION = 16
|
||||
uint32 SYSTEM_ERROR_CPU_OVERLOAD = 32
|
||||
uint32 SYSTEM_ERROR_OUTPUT_CONGESTION = 64
|
||||
uint32 system_error # General errors with the connected GPS receiver
|
||||
|
||||
float32 heading # 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])
|
||||
float32 heading_offset # heading offset of dual antenna array in body frame. Set to NaN if not applicable. (rad, [-PI, PI])
|
||||
float32 heading_accuracy # heading accuracy (rad, [0, 2PI])
|
||||
|
||||
@ -1,41 +1,44 @@
|
||||
# VehicleOdometry (UORB message)
|
||||
|
||||
Vehicle odometry data. Fits ROS REP 147 for aerial vehicles
|
||||
Vehicle odometry data
|
||||
|
||||
Fits ROS REP 147 for aerial vehicles
|
||||
|
||||
[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/VehicleOdometry.msg)
|
||||
|
||||
```c
|
||||
# Vehicle odometry data. Fits ROS REP 147 for aerial vehicles
|
||||
# Vehicle odometry data
|
||||
#
|
||||
# Fits ROS REP 147 for aerial vehicles
|
||||
|
||||
uint32 MESSAGE_VERSION = 0
|
||||
|
||||
uint64 timestamp # time since system start (microseconds)
|
||||
uint64 timestamp_sample
|
||||
uint64 timestamp # [us] Time since system start
|
||||
uint64 timestamp_sample # [us] Timestamp sample
|
||||
|
||||
uint8 POSE_FRAME_UNKNOWN = 0
|
||||
uint8 POSE_FRAME_NED = 1 # NED earth-fixed frame
|
||||
uint8 POSE_FRAME_FRD = 2 # FRD world-fixed frame, arbitrary heading reference
|
||||
uint8 pose_frame # Position and orientation frame of reference
|
||||
uint8 pose_frame # [@enum POSE_FRAME] Position and orientation frame of reference
|
||||
uint8 POSE_FRAME_UNKNOWN = 0 # Unknown frame
|
||||
uint8 POSE_FRAME_NED = 1 # North-East-Down (NED) navigation frame. Aligned with True North.
|
||||
uint8 POSE_FRAME_FRD = 2 # Forward-Right-Down (FRD) frame. Constant arbitrary heading offset from True North. Z is down.
|
||||
|
||||
float32[3] position # Position in meters. Frame of reference defined by local_frame. NaN if invalid/unknown
|
||||
float32[4] q # Quaternion rotation from FRD body frame to reference frame. First value NaN if invalid/unknown
|
||||
float32[3] position # [m] [@frame local frame] [@invalid NaN If invalid/unknown] Position. Origin is position of GC at startup.
|
||||
float32[4] q # [-] [@invalid NaN First value if invalid/unknown] 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)
|
||||
|
||||
uint8 VELOCITY_FRAME_UNKNOWN = 0
|
||||
uint8 VELOCITY_FRAME_NED = 1 # NED earth-fixed frame
|
||||
uint8 VELOCITY_FRAME_FRD = 2 # FRD world-fixed frame, arbitrary heading reference
|
||||
uint8 VELOCITY_FRAME_BODY_FRD = 3 # FRD body-fixed frame
|
||||
uint8 velocity_frame # Reference frame of the velocity data
|
||||
uint8 velocity_frame # [@enum VELOCITY_FRAME] Reference frame of the velocity data
|
||||
uint8 VELOCITY_FRAME_UNKNOWN = 0 # Unknown frame
|
||||
uint8 VELOCITY_FRAME_NED = 1 # NED navigation frame at current position.
|
||||
uint8 VELOCITY_FRAME_FRD = 2 # FRD navigation frame at current position. Constant arbitrary heading offset from True North. Z is down.
|
||||
uint8 VELOCITY_FRAME_BODY_FRD = 3 # FRD body-fixed frame
|
||||
|
||||
float32[3] velocity # Velocity in meters/sec. Frame of reference defined by velocity_frame variable. NaN if invalid/unknown
|
||||
float32[3] velocity # [m/s] [@frame @velocity_frame] [@invalid NaN If invalid/unknown] Velocity.
|
||||
float32[3] angular_velocity # [rad/s] [@frame @VELOCITY_FRAME_BODY_FRD] [@invalid NaN If invalid/unknown] Angular velocity in body-fixed frame
|
||||
|
||||
float32[3] angular_velocity # Angular velocity in body-fixed frame (rad/s). NaN if invalid/unknown
|
||||
float32[3] position_variance # [m^2] Variance of position error
|
||||
float32[3] orientation_variance # [rad^2] Variance of orientation/attitude error (expressed in body frame)
|
||||
float32[3] velocity_variance # [m^2/s^2] Variance of velocity error
|
||||
|
||||
float32[3] position_variance
|
||||
float32[3] orientation_variance
|
||||
float32[3] velocity_variance
|
||||
|
||||
uint8 reset_counter
|
||||
int8 quality
|
||||
uint8 reset_counter # [-] Reset counter. Counts reset events on attitude, velocity and position.
|
||||
int8 quality # [-] [@invalid 0] Quality. Unused.
|
||||
|
||||
# TOPICS vehicle_odometry vehicle_mocap_odometry vehicle_visual_odometry
|
||||
# TOPICS estimator_odometry
|
||||
|
||||
@ -15,7 +15,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m
|
||||
|
||||
- [ActuatorMotors](ActuatorMotors.md) — Motor control message
|
||||
- [ActuatorServos](ActuatorServos.md) — Servo control message
|
||||
- [AirspeedValidated](AirspeedValidated.md)
|
||||
- [AirspeedValidated](AirspeedValidated.md) — Validated airspeed
|
||||
- [ArmingCheckReply](ArmingCheckReply.md) — Arming check reply
|
||||
- [ArmingCheckRequest](ArmingCheckRequest.md) — Arming check request
|
||||
- [BatteryStatus](BatteryStatus.md) — Battery status
|
||||
@ -70,7 +70,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m
|
||||
- [VehicleLandDetected](VehicleLandDetected.md)
|
||||
- [VehicleLocalPosition](VehicleLocalPosition.md) — Fused local position in NED.
|
||||
The coordinate system origin is the vehicle position at the time when the EKF2-module was started.
|
||||
- [VehicleOdometry](VehicleOdometry.md) — Vehicle odometry data. Fits ROS REP 147 for aerial vehicles
|
||||
- [VehicleOdometry](VehicleOdometry.md) — Vehicle odometry data
|
||||
- [VehicleRatesSetpoint](VehicleRatesSetpoint.md)
|
||||
- [VehicleStatus](VehicleStatus.md) — Encodes the system state of the vehicle published by commander
|
||||
- [VtolVehicleStatus](VtolVehicleStatus.md) — VEHICLE_VTOL_STATE, should match 1:1 MAVLinks's MAV_VTOL_STATE
|
||||
@ -87,7 +87,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m
|
||||
- [AdcReport](AdcReport.md)
|
||||
- [Airspeed](Airspeed.md) — Airspeed data from sensors
|
||||
- [AirspeedWind](AirspeedWind.md) — Wind estimate (from airspeed_selector)
|
||||
- [AutotuneAttitudeControlStatus](AutotuneAttitudeControlStatus.md)
|
||||
- [AutotuneAttitudeControlStatus](AutotuneAttitudeControlStatus.md) — Autotune attitude control status
|
||||
- [BatteryInfo](BatteryInfo.md) — Battery information
|
||||
- [ButtonEvent](ButtonEvent.md)
|
||||
- [CameraCapture](CameraCapture.md)
|
||||
@ -246,6 +246,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m
|
||||
change with board revisions and sensor updates.
|
||||
- [SensorCorrection](SensorCorrection.md) — Sensor corrections in SI-unit form for the voted sensor
|
||||
- [SensorGnssRelative](SensorGnssRelative.md) — GNSS relative positioning information in NED frame. The NED frame is defined as the local topological system at the reference station.
|
||||
- [SensorGnssStatus](SensorGnssStatus.md) — Gnss quality indicators
|
||||
- [SensorGps](SensorGps.md) — GPS position in WGS84 coordinates.
|
||||
the field 'timestamp' is for the position & velocity (microseconds)
|
||||
- [SensorGyro](SensorGyro.md)
|
||||
|
||||
@ -36,7 +36,7 @@ There are some benefits and drawbacks to using ROS-based missions, which are pro
|
||||
|
||||
- QGroundControl currently does not display the mission or progress during execution, and cannot upload or download a mission.
|
||||
Therefore you will need another mechanism to provide a mission, such as from a web server, a custom GCS, or by generating it directly inside the application.
|
||||
- The current implementation only supports multicopters (it uses the [GotoSetpointType](../ros2/px4_ros2_control_interface.md#go-to-setpoint-gotosetpointtype), which only works for multicopters, and VTOL in MC mode).
|
||||
- The current implementation only supports multicopters (it uses the [GotoSetpointType](../ros2/px4_ros2_control_interface.md#go-to-setpoint-multicoptergotosetpointtype), which only works for multicopters, and VTOL in MC mode).
|
||||
It is designed to be extendable to any other vehicle type.
|
||||
|
||||
## 개요
|
||||
|
||||
@ -9,6 +9,7 @@ However PX4 can also use some INS devices as either sources of raw data, or as a
|
||||
INS systems that can be used as a replacement for EKF2 in PX4:
|
||||
|
||||
- [InertialLabs](../sensor/inertiallabs.md)
|
||||
- [MicroStrain](../sensor/microstrain.md): Includes VRU, AHRS, INS, and GNSS/INS devices.
|
||||
- [SBG Systems](../sensor/sbgecom.md): IMU/AHRS, GNSS/INS, Dual GNSS/INS systems that can be used as an external INS or as a source of raw sensor data.
|
||||
- [VectorNav](../sensor/vectornav.md): IMU/AHRS, GNSS/INS, Dual GNSS/INS systems that can be used as an external INS or as a source of raw sensor data.
|
||||
|
||||
|
||||
219
docs/ko/sensor/microstrain.md
Normal file
219
docs/ko/sensor/microstrain.md
Normal file
@ -0,0 +1,219 @@
|
||||
# MicroStrain (INS, IMU, VRU, AHRS)
|
||||
|
||||
MicroStrain by HBK provides high-performance inertial sensors engineered for reliability and precision in challenging environments.
|
||||
Widely used across industries like aerospace, robotics, industrial automation, and research, MicroStrain sensors are optimized for real-time, accurate motion tracking and orientation data.
|
||||
|
||||

|
||||
|
||||
The driver currently supports the following hardware:
|
||||
|
||||
- [`MicroStrain CV7-AR`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/vertical-reference-units--vru-/3dm-cv7-ar): Inertial Measurement Unit (IMU) and Vertical Reference Unit (VRU)
|
||||
- [`MicroStrain CV7-AHRS`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/attitude-and-heading-reference-systems--ahrs-/3dm-cv7-ahrs): Inertial Measurement Unit (IMU) and Attitude Heading Reference System (AHRS)
|
||||
- [`MicroStrain CV7-INS`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-ins): Inertial Measurement Unit (IMU) and Inertial Navigation System (INS).
|
||||
- [`MicroStrain CV7-GNSS/INS`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-gnss-ins): Inertial Measurement Unit (IMU) and Inertial Navigation System (INS) combined with dual multiband (GNSS) receivers.
|
||||
|
||||
PX4 can use these sensors to provide raw IMU data for EKF2 or to replace EKF2 as an external INS.
|
||||
For more information, including user manuals and datasheets, please refer to the sensors product page.
|
||||
|
||||
## 구매처
|
||||
|
||||
MicroStrain sensors can be purchased through HBK's official [MicroStrain product page](https://www.hbkworld.com/en/products/transducers/inertial-sensors) or through authorized distributors globally.
|
||||
For large orders, custom requirements, or technical inquiries, reach out directly to [sales](https://www.hbkworld.com/en/contact-us/contact-sales-microstrain)
|
||||
|
||||
## 하드웨어 설정
|
||||
|
||||
### 배선
|
||||
|
||||
Connect the main UART port of the MicroStrain sensor to any unused serial port on the flight controller.
|
||||
This port needs to be specified while starting the device.
|
||||
|
||||
### 장착
|
||||
|
||||
The MicroStrain sensor can be mounted in any orientation.
|
||||
The default coordinate system uses X for the front, Y for the right, and Z for down, with directions marked on the device.
|
||||
|
||||
## 펌웨어 설정
|
||||
|
||||
### PX4 설정
|
||||
|
||||
To use the MicroStrain driver:
|
||||
|
||||
1. Include the module in firmware in the [kconfig board configuration](../hardware/porting_guide_config.md#px4-board-configuration-kconfig) by setting the kconfig variables: `CONFIG_DRIVERS_INS_MICROSTRAIN` or `CONFIG_COMMON_INS`.
|
||||
|
||||
2. Configure the driver mode by setting [MS_MODE](../advanced_config/parameter_reference.md#MS_MODE)
|
||||
|
||||
- To use the MicroStrain sensor to provide raw IMU data to EKF2
|
||||
|
||||
1. Set [MS_MODE](../advanced_config/parameter_reference.md#MS_MODE) to 0
|
||||
2. Update the [EKF2_MULTI_IMU](../advanced_config/parameter_reference.md#EKF2_MULTI_IMU) parameter to account for the added MicroStrain sensor.
|
||||
3. Enable EKF2 by setting [EKF2_EN](../advanced_config/parameter_reference.md#EKF2_EN) to 1
|
||||
4. To prioritize MicroStrain sensor output, adjust the priority level of individual sensors from 0-100 using the following parameters:
|
||||
|
||||
- [CAL_ACCn_PRIO](../advanced_config/parameter_reference.md#CAL_ACC0_PRIO)
|
||||
- [CAL_GYROn_PRIO](../advanced_config/parameter_reference.md#CAL_GYRO0_PRIO)
|
||||
- [CAL_MAGn_PRIO](../advanced_config/parameter_reference.md#CAL_MAG0_PRIO)
|
||||
- [CAL_BAROn_PRIO](../advanced_config/parameter_reference.md#CAL_BARO0_PRIO)
|
||||
|
||||
where `n` corresponds to the index of the corresponding sensor.
|
||||
|
||||
::: tip
|
||||
Sensors can be identified by their device id, which can be found by checking the parameters:
|
||||
|
||||
- [CAL_ACCn_ID](../advanced_config/parameter_reference.md#CAL_ACC0_ID)
|
||||
- [CAL_GYROn_ID](../advanced_config/parameter_reference.md#CAL_GYRO0_ID)
|
||||
- [CAL_MAGn_ID](../advanced_config/parameter_reference.md#CAL_MAG0_ID)
|
||||
- [CAL_BAROn_ID](../advanced_config/parameter_reference.md#CAL_BARO0_ID)
|
||||
|
||||
|
||||
:::
|
||||
|
||||
- To use the MicroStrain sensor as an external INS
|
||||
1. Set [MS_MODE](../advanced_config/parameter_reference.md#MS_MODE) to 1
|
||||
2. Disable EKF2 by setting [EKF2_EN](../advanced_config/parameter_reference.md#EKF2_EN) to 0
|
||||
|
||||
3. Reboot and start the driver
|
||||
- `microstrain start -d <port>`
|
||||
- To start the driver automatically when the flight controller powers on, set [SENS_MS_CFG](../advanced_config/parameter_reference.md#SENS_MS_CFG) to the sensor’s connected port.
|
||||
|
||||
## MicroStrain Configuration
|
||||
|
||||
1. Rates:
|
||||
|
||||
- By default, accel and gyro data are published at 500 Hz, magnetometer at 50 Hz, and barometric pressure at 50 Hz.
|
||||
This can be changed by adjusting the following parameters:
|
||||
|
||||
- [MS_IMU_RATE_HZ](../advanced_config/parameter_reference.md#MS_IMU_RATE_HZ)
|
||||
- [MS_MAG_RATE_HZ](../advanced_config/parameter_reference.md#MS_MAG_RATE_HZ)
|
||||
- [MS_BARO_RATE_HZ](../advanced_config/parameter_reference.md#MS_BARO_RATE_HZ)
|
||||
|
||||
- Global position, local position, attitude and odometry will be published at 250 Hz by default.
|
||||
This can be configured via:
|
||||
|
||||
- [MS_FILT_RATE_HZ](../advanced_config/parameter_reference.md#MS_FILT_RATE_HZ)
|
||||
|
||||
- For the CV7-GNSS/INS, the GNSS receiver 1 and 2 will publish data at 5Hz by default.
|
||||
This can be changed using:
|
||||
|
||||
- [MS_GNSS_RATE_HZ](../advanced_config/parameter_reference.md#MS_GNSS_RATE_HZ)
|
||||
|
||||
- The driver will automatically configure data outputs based on the specific sensor model and available data streams.
|
||||
|
||||
- The driver is scheduled to run at twice the fastest configured data rate.
|
||||
|
||||
2. Aiding measurements:
|
||||
|
||||
- If supported, GNSS position and velocity aiding are always enabled.
|
||||
|
||||
- Internal/external magnetometer and heading aiding, as well as optical flow aiding, are disabled by default. They can be enabled using the following parameters:
|
||||
|
||||
- [MS_INT_MAG_EN](../advanced_config/parameter_reference.md#MS_INT_MAG_EN)
|
||||
- [MS_INT_HEAD_EN](../advanced_config/parameter_reference.md#MS_INT_HEAD_EN)
|
||||
- [MS_EXT_HEAD_EN](../advanced_config/parameter_reference.md#MS_EXT_HEAD_EN)
|
||||
- [MS_EXT_MAG_EN](../advanced_config/parameter_reference.md#MS_EXT_MAG_EN)
|
||||
- [MS_OPT_FLOW_EN](../advanced_config/parameter_reference.md#MS_OPT_FLOW_EN)
|
||||
|
||||
- The aiding frames for external sources can be configured using the following parameters:
|
||||
|
||||
- [MS_EHEAD_YAW](../advanced_config/parameter_reference.md#MS_EHEAD_YAW)
|
||||
- [MS_EMAG_ROLL](../advanced_config/parameter_reference.md#MS_EMAG_ROLL)
|
||||
- [MS_EMAG_PTCH](../advanced_config/parameter_reference.md#MS_EMAG_PTCH)
|
||||
- [MS_EMAG_YAW](../advanced_config/parameter_reference.md#MS_EMAG_YAW)
|
||||
- [MS_OFLW_OFF_X](../advanced_config/parameter_reference.md#MS_OFLW_OFF_X)
|
||||
- [MS_OFLW_OFF_Y](../advanced_config/parameter_reference.md#MS_OFLW_OFF_Y)
|
||||
- [MS_OFLW_OFF_Z](../advanced_config/parameter_reference.md#MS_OFLW_OFF_Z)
|
||||
- [SENS_FLOW_ROT](../advanced_config/parameter_reference.md#SENS_FLOW_ROT)
|
||||
|
||||
- The uncertainty for optical flow and external magnetometer aiding must be specified using the following parameters:
|
||||
|
||||
- [MS_EMAG_UNCERT](../advanced_config/parameter_reference.md#MS_EMAG_UNCERT)
|
||||
- [MS_OFLW_UNCERT](../advanced_config/parameter_reference.md#MS_OFLW_UNCERT)
|
||||
|
||||
::: tip
|
||||
|
||||
1. When optical flow aiding is enabled, the sensor uses the `vehicle_optical_flow_vel` output from the flight controller as a body-frame velocity aiding measurement.
|
||||
2. If the MicroStrain sensor does not support these aiding sources but they are enabled, sensor initialization will fail.
|
||||
|
||||
|
||||
:::
|
||||
|
||||
3. Initial heading alignment:
|
||||
|
||||
- Initial heading alignment is set to kinematic by default. This can be changed by adjusting
|
||||
|
||||
- [MS_ALIGNMENT](../advanced_config/parameter_reference.md#MS_ALIGNMENT)
|
||||
|
||||
4. GNSS Aiding Source Control (GNSS/INS only)
|
||||
|
||||
- The Source of the GNSS aiding data can be configured using:
|
||||
|
||||
- [MS_GNSS_AID_SRC](../advanced_config/parameter_reference.md#MS_GNSS_AID_SRC)
|
||||
|
||||
5. Sensor to vehicle transform:
|
||||
|
||||
- If the sensor is mounted in an orientation different from the vehicle frame. A sensor to vehicle transform can be enabled using
|
||||
|
||||
- [MS_SVT_EN](../advanced_config/parameter_reference.md#MS_SVT_EN)
|
||||
|
||||
- The transform is defined using the following parameters
|
||||
|
||||
- [MS_SENSOR_ROLL](../advanced_config/parameter_reference.md#MS_SENSOR_ROLL)
|
||||
- [MS_SENSOR_PTCH](../advanced_config/parameter_reference.md#MS_SENSOR_PTCH)
|
||||
- [MS_SENSOR_YAW](../advanced_config/parameter_reference.md#MS_SENSOR_YAW)
|
||||
|
||||
6. IMU ranges:
|
||||
|
||||
- The accelerometer and gyroscope ranges on the device are configurable using:
|
||||
|
||||
- [MS_ACCEL_RANGE](../advanced_config/parameter_reference.md#MS_ACCEL_RANGE)
|
||||
- [MS_GYRO_RANGE](../advanced_config/parameter_reference.md#MS_GYRO_RANGE)
|
||||
|
||||
::: tip
|
||||
Available range settings depend on the specific [sensor](https://www.hbkworld.com/en/products/transducers/inertial-sensors) and can be found in the corresponding user manual.
|
||||
By default, the ranges are not changed.
|
||||
|
||||
|
||||
:::
|
||||
|
||||
7. GNSS Lever arm offsets:
|
||||
|
||||
- The lever arm offset for the external GNSS receiver can be configured using:
|
||||
|
||||
- [MS_GNSS_OFF1_X](../advanced_config/parameter_reference.md#MS_GNSS_OFF1_X)
|
||||
- [MS_GNSS_OFF1_Y](../advanced_config/parameter_reference.md#MS_GNSS_OFF1_Y)
|
||||
- [MS_GNSS_OFF1_Z](../advanced_config/parameter_reference.md#MS_GNSS_OFF1_Z)
|
||||
|
||||
- For dual-antenna configurations, the second GNSS receiver’s offset is configured using:
|
||||
|
||||
- [MS_GNSS_OFF2_X](../advanced_config/parameter_reference.md#MS_GNSS_OFF2_X)
|
||||
- [MS_GNSS_OFF2_Y](../advanced_config/parameter_reference.md#MS_GNSS_OFF2_Y)
|
||||
- [MS_GNSS_OFF2_Z](../advanced_config/parameter_reference.md#MS_GNSS_OFF2_Z)
|
||||
|
||||
## Published Data
|
||||
|
||||
The MicroStrain driver continuously publishes sensor data to the following uORB topics:
|
||||
|
||||
- [sensor_accel](../msg_docs/SensorAccel.md)
|
||||
- [sensor_gyro](../msg_docs/SensorGyro.md)
|
||||
- [sensor_mag](../msg_docs/SensorMag.md)
|
||||
- [sensor_baro](../msg_docs/SensorBaro.md)
|
||||
|
||||
For GNSS/INS devices, GPS data is also published to:
|
||||
|
||||
- [sensor_gps](../msg_docs/SensorGps.md)
|
||||
|
||||
If used as an external INS replacing EKF2, it publishes:
|
||||
|
||||
- [vehicle_global_position](../msg_docs/VehicleGlobalPosition.md)
|
||||
- [vehicle_local_position](../msg_docs/VehicleLocalPosition.md)
|
||||
- [vehicle_attitude](../msg_docs/VehicleAttitude.md)
|
||||
- [vehicle_odometry](../msg_docs/VehicleOdometry.md)
|
||||
|
||||
otherwise the same data is published to the following topics
|
||||
|
||||
- `external_ins_global_position`
|
||||
- `external_ins_attitude`
|
||||
- `external_ins_local_position`
|
||||
|
||||
:::tip
|
||||
Published topics can be viewed using the `listener` command.
|
||||
:::
|
||||
Loading…
x
Reference in New Issue
Block a user