docs(i18n): PX4 guide translations (Crowdin) - ko

This commit is contained in:
Crowdin Bot
2026-08-16 00:07:39 +00:00
parent ff5b948436
commit e935ff7d97
8 changed files with 267 additions and 20 deletions
+1
View File
@@ -898,6 +898,7 @@
- [고급 주제](advanced/index.md)
- [PX4 Metadata](advanced/px4_metadata.md)
- [Detect and Avoid](advanced_features/detect_and_avoid.md)
- [Mission Route Cache](advanced/mission_route_cache.md)
- [Package Delivery Architecture](advanced/package_delivery.md)
- [Camera Integration/Architecture](camera/camera_architecture.md)
- [컴퓨터 비전](advanced/computer_vision.md)
+162
View File
@@ -0,0 +1,162 @@
# Mission Route Cache
Normal mission execution keeps a small sliding window of mission items in RAM.
Route-aware features may instead need random, non-blocking access to the complete route.
The mission route cache provides this data without reading Dataman or the SD card during planning:
```text
MissionRouteCache
|-- full mission route (optional) [0, ..., CONFIG_NAVIGATOR_FULL_MISSION_CACHE_SIZE - 1]
|-- safe points [all uploaded safe points]
`-- published mission-land item [one item]
```
The cache is infrastructure for Navigator features.
It does not change normal mission execution by itself.
## 구매처
The full route is loaded into RAM asynchronously.
It becomes available only after every mission item has loaded successfully. A partial route is never exposed.
When the cached mission identity changes, the old route becomes unavailable immediately and the replacement is loaded as a new generation.
Failed reads keep the successfully loaded prefix and retry with a capped backoff.
:::info
If the full cache is disabled or the mission exceeds its capacity, a consuming feature must use its normal fallback behavior.
The independent safe-point and mission-land caches remain available.
:::
## 설정
`CONFIG_NAVIGATOR_FULL_MISSION_CACHE_SIZE` sets the maximum number of items in the full route cache.
It defaults to `500` on POSIX platforms such as SITL, and `0` on embedded targets unless a board overrides it.
A value of `0` removes the full-mission buffer and its Dataman client from the build.
Boards that enable full-route planning must choose a capacity that fits their RAM budget.
The buffer is allocated once when Navigator starts and uses one `mission_item_s` entry per configured item.
An entry is currently 56 bytes, so 500 items use 28 kB.
:::details
Developer details: Loading workflow
The full mission is exposed as one complete generation:
```text
New mission accepted
Read one item asynchronously
Dataman response wakes Navigator
Validate the response and queue the next item
Repeat until every item is loaded
Mark the complete generation ready
```
Only one full-mission read is outstanding at a time.
While it is pending, Navigator polls that client's response subscription, so each completion can queue the next read immediately.
There is no separate cache thread.
The response topic is shared by all Dataman clients, so poll readiness alone does not mean this request completed.
The response is still copied and matched to the request, and the subscription is polled only while this cache has a pending read.
Cache-only wakeups advance the load without running all Navigator state machines at the Dataman response rate.
During a burst of Dataman-only wakeups, normal Navigator work stays on its existing cadence; a cache wake also runs it once the update period is due.
The cache identifies a mission source by its mission ID, item count, and Dataman bank.
If the source changes while a read is in flight, that response is consumed but not accepted into the new generation.
:::
:::details
Developer details: Borrowing a mission view
`getMissionView()` returns a zero-copy view of the cache-owned array.
The view contains a pointer, item count, mission identity, and generation number; it does not own or copy the items.
A consumer should acquire a complete view, compute synchronously, and validate the same view before accepting the result:
```text
Acquire view → compute route → generation still valid?
|
yes ─────────┴──────── no
| |
accept result discard result
acquire new view
recompute
```
The caller does not update the pointer inside a stale view.
It discards the view and anything derived from it, then calls `getMissionView()` again and recomputes.
After an item in a ready generation is patched, a fresh view is available immediately.
While a replacement mission is loading, acquiring a new view fails until the complete generation is ready.
The refreshed view may contain the same pointer address because the backing allocation is reused.
The generation, not pointer equality, determines whether its contents are current.
Use a borrowed view only during serialized Navigator work, and check it with `missionViewStillValid()` before accepting the result.
The generation check is not a lock; another task would need explicit synchronization or its own snapshot.
:::
:::details
Developer details: Keeping mission writes coherent
Already-loaded mission items are not automatically read from storage again.
After a successful active-mission Dataman write, the writer must call `syncMissionItem()` from Navigator's task.
This call synchronizes the caches; it does not perform the Dataman write.
For a ready full cache, synchronization patches that item in the array and advances the generation:
```text
Successful Dataman write
Patch the cached item
Advance the generation
Old views and route results are stale
```
The complete route stays ready.
Reloading the whole mission for a one-item change would make it unavailable and add one read per mission item without improving consistency.
Writes during loading depend on how far the load has progressed:
- An item in the loaded prefix is patched in place.
- A response for the item already being read is ignored, and that item is then read again.
- An unread item is picked up later by the normal load.
Mission execution follows this process after successful `DO_JUMP` counter increments and resets.
The next route computation therefore sees the current number of remaining loops.
The mission-land cache is synchronized independently when the written index is the published land item.
A mission upload or replacement is different from an in-place runtime write.
Its new mission identity causes a complete generation to load.
:::
:::details
Developer details: Measuring load time
Successful, non-empty loads are reported by the `navigator: full mission cache load` performance counter.
It measures wall time until the complete route is ready, including retry delays.
To measure it on hardware:
```sh
perf reset
# Upload or change the mission.
perf
```
Replaced, invalidated, empty, or incomplete loads do not add a sample.
:::
+3 -2
View File
@@ -5,7 +5,7 @@ This enables easier testing of [safety failsafe](../config/safety.md) behaviour,
Failure injection is disabled by default, and can be enabled using the [SYS_FAILURE_EN](../advanced_config/parameter_reference.md#SYS_FAILURE_EN) parameter.
Failures can be injected both in simulation and on real hardware. In simulation the available failures depend on the simulator. On hardware the `off` (stop publishing) and `stuck` (freeze the last value) types are supported for the `gyro`, `accel`, `mag`, `baro`, `distance_sensor` and `gps` components; this requires firmware built with the failure-injection module. In addition, the `battery` component supports `off` (report a depleted pack, triggering the battery failsafe).
Failures can be injected both in simulation and on real hardware. In simulation the available failures depend on the simulator. On hardware the `off` (stop publishing) and `stuck` (freeze the last value) types are supported for the `gyro`, `accel`, `mag`, `baro`, `distance_sensor` and `gps` components; this requires firmware built with the failure-injection module. In addition, the `battery` component supports `off` (report a depleted pack, triggering the battery failsafe), and the `gps` component supports `wrong` (report the fix type selected by [SYS_FAIL_GPS_WRG](../advanced_config/parameter_reference.md#SYS_FAIL_GPS_WRG), leaving the reported position untouched).
:::info
PX4 may accept a command to set a particular failure mode even it that mode is not supported by your simulator.
@@ -61,7 +61,8 @@ failure <component> <failure_type> [-i <instance_number>] [-m <instance_bitmask>
- _instance bitmask_ (optional): address several instances at once (bit 0 = first instance, bit 1 = second, …; decimal or `0x` hex). Used only when `-i` is omitted. Example: `-m 0x5` targets instances 1 and 3.
:::info
The simulated GPS (SITL) implements only the `off`, `stuck`, and `wrong` failure modes; the other failure types have no effect on it.
GPS implements only the `off`, `stuck`, and `wrong` failure modes; the other failure types have no effect on it.
`gps wrong` makes the addressed receiver report the fix type selected by [SYS_FAIL_GPS_WRG](../advanced_config/parameter_reference.md#SYS_FAIL_GPS_WRG) and leaves the reported position untouched.
:::
## RC Switch Trigger
File diff suppressed because one or more lines are too long
+1
View File
@@ -287,6 +287,7 @@ See messages
- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md)
- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md)
- [TuneControl](../msg_docs/TuneControl.md)
- [UavcanFirmwareUpdate](../msg_docs/UavcanFirmwareUpdate.md)
- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md)
- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md)
- [UlogStream](../msg_docs/UlogStream.md)
+28
View File
@@ -0,0 +1,28 @@
---
pageClass: is-wide-page
---
# UavcanFirmwareUpdate (UORB message)
**TOPICS:** uavcan_firmware_update
## Fields
| 명칭 | 형식 | Unit [Frame] | Range/Enum | 설명 |
| -------------------------------------------------------------------- | -------- | ---------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------- |
| <a id="fld_timestamp"></a>timestamp | `uint64` | | | time since system start (microseconds) |
| <a id="fld_pending_updates"></a>pending_updates | `bool` | | | true when one or more nodes requiring a firmware update have been detected and the update is not yet complete |
## Source Message
[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/UavcanFirmwareUpdate.msg)
:::details
Click here to see original file
```c
uint64 timestamp # time since system start (microseconds)
bool pending_updates # true when one or more nodes requiring a firmware update have been detected and the update is not yet complete
```
:::
+1
View File
@@ -276,6 +276,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m
- [TrajectorySetpoint6dof](TrajectorySetpoint6dof.md) — Trajectory setpoint in NED frame. Input to position controller.
- [TransponderReport](TransponderReport.md) — Transponder report.
- [TuneControl](TuneControl.md) — This message is used to control the tunes, when the tune_id is set to CUSTOM. then the frequency, duration are used otherwise those values are ignored.
- [UavcanFirmwareUpdate](UavcanFirmwareUpdate.md)
- [UavcanParameterRequest](UavcanParameterRequest.md) — UAVCAN-MAVLink parameter bridge request type.
- [UavcanParameterValue](UavcanParameterValue.md) — UAVCAN-MAVLink parameter bridge response type.
- [UlogStream](UlogStream.md) — Message to stream ULog data from the logger. Corresponds to the LOGGING_DATA. mavlink message.
+3
View File
@@ -55,6 +55,9 @@ Please continue reading for [upgrade instructions](#upgrade-guide).
- [Flight termination](../advanced_config/flight_termination.md) can now be used instead of a Descent mode as a fallback failsafe mode, allowing safer landing for unpiloted vehicles that carry a parachute.
See [Battery level failsafe](../config/safety.md#battery-level-failsafe) ([COM_LOW_BAT_ACT](../advanced_config/parameter_reference.md#COM_LOW_BAT_ACT)) and [Position Loss Failsafe Action](../config/safety.md#position-loss-failsafe-action) (new [COM_POS_FS_ACT](../advanced_config/parameter_reference.md#COM_POS_FS_ACT)). ([PX4-Autopilot#28064: feat(commander): add terminate options for critical battery and lost position failsafes](https://github.com/PX4/PX4-Autopilot/pull/28064)).
- [Motor failure recovery](../config/motor_failure_recovery.md) for hexarotors: on a single motor failure the control allocator removes the failed motor and additionally stops ([CA_FAILURE_MODE](../advanced_config/parameter_reference.md#CA_FAILURE_MODE) = `1`) or reverses (`2`) the motor opposite it to recover the lost yaw authority. Mode `2` requires a reverse-capable ESC and models the reverse thrust of a forward propeller with the new [CA_REV_THR_FRAC](../advanced_config/parameter_reference.md#CA_REV_THR_FRAC) (default `0.4`). Reversible motor outputs on DroneCAN are now sent as signed `RawCommand` values (negative is reverse). ([PX4-Autopilot#28078](https://github.com/PX4/PX4-Autopilot/pull/28078))
- Added `RTL_TYPE=6` for battery-aware home priority return ([PX4-Autopilot#26968](https://github.com/PX4/PX4-Autopilot/pull/26968)).
Returns to home if the estimated flight time to home is within the remaining battery time; otherwise returns to the closest rally point.
Falls back to the closest safe point (home or rally) if battery time remaining is unavailable.
### Estimation