nav_loiter_turns

PX4 能力域:navigation。PX4 映射:MAV_CMD_NAV_LOITER_TURNS 该命令用于让飞行器围绕指定位置盘旋固定圈数,盘旋半径、方向和目标位置由 payload 字段给出。

中文说明

nav_loiter_turns 是 PX4 MAV_CMD_NAV_LOITER_TURNS 的 named downlink command。调用方只提交 command_type 和具名 payload 字段;云端协议不暴露 param1..param7。PX4 agent 在 guardedhitloffboard 模式下确认 operator guard 和 transport ready 后,按 COMMAND_INT 构造 MAVLink frame,并通过 COMMAND_ACK 关联最终 flow 结果。默认 disabled 模式不会向 PX4 发送 frame。

请求参数

vendor
string
必填
固定 px4
device_id
string
必填
目标 PX4 设备 ID
command_type
string
必填
固定 nav_loiter_turns
idempotency_key
string
必填
幂等键;重复请求返回同一命令
timeout_seconds
integer
超时秒数,范围 0~300
payload
object
必填
该 command 的 typed request payload;字段名由 PX4 MAVLink XML 标签生成,但调用方不需要提交裸 param1..param7
payload.turns
number
字段含义:Turns;PX4 帧映射到 MAVLink 参数 1。
payload.heading_required
number
字段含义:Heading Required,枚举 MAV_BOOL;PX4 帧映射到 MAVLink 参数 2。
payload.radius
number
字段含义:Radius,单位 m;PX4 帧映射到 MAVLink 参数 3。
payload.xtrack_location
number
字段含义:Xtrack Location;PX4 帧映射到 MAVLink 参数 4。
payload.latitude
number
字段含义:Latitude;PX4 帧映射到 MAVLink 参数 5。
payload.longitude
number
字段含义:Longitude;PX4 帧映射到 MAVLink 参数 6。
payload.altitude
number
字段含义:Altitude,单位 m;PX4 帧映射到 MAVLink 参数 7。

PX4 帧映射

  • MAVLink command: MAV_CMD_NAV_LOITER_TURNS
  • Command ID: 18
  • Default transport: COMMAND_INT
  • Source XML: common.xml
  • Completion: COMMAND_ACK
  • Guard: 真实 PX4 下发默认关闭;guarded 模式需要显式授权和 ready transport。

创建响应

command_id
string
平台命令 ID,用于后续查询
status
string
受理状态:ACCEPTED
accepted_at
string(datetime)
命令受理时间(UTC)

查询响应

command_id
string
平台命令 ID
status
string
执行状态:ACCEPTED / DELIVERED / SUCCEEDED / FAILED / TIMED_OUT / UNMATCHED_RESPONSE
vendor
string
厂商标识,固定为 px4
device_id
string
目标 PX4 设备 ID
command_type
string
PX4 command 类型
response_code
string
映射后的 COMMAND_ACK.result
response_message
string
PX4 ACK 摘要
vendor_response
object
PX4 ACK 摘要,包含 MAVLink command ID 和 transport

PX4 ACK 关联

PX4 agent 发送 frame 后等待 COMMAND_ACK,按 command id 关联响应。默认 disabled 模式不会发 frame,而是直接生成 rejected lifecycle。
curl -X POST "/api/v1/open/downlink/commands" \
  -H "Content-Type: application/json" \
  -H "X-Api-Id: YOUR_API_ID" \
  -H "X-Api-Timestamp: YOUR_UNIX_SECONDS" \
  -H "X-Api-Nonce: YOUR_NONCE" \
  -H "X-Api-Signature: YOUR_SIGNATURE" \
  -d "{\"vendor\":\"px4\",\"device_id\":\"px4-real-1\",\"command_type\":\"nav_loiter_turns\",\"payload\":{\"turns\":0,\"heading_required\":0,\"radius\":0,\"xtrack_location\":0,\"latitude\":473566000,\"longitude\":85432100,\"altitude\":30.0},\"idempotency_key\":\"req-nav_loiter_turns-001\",\"timeout_seconds\":30}"

curl "/api/v1/open/downlink/commands/8cdb5bf3-8902-c5f7-f9aa-dc7fa0af1de0"
{
  "command_id": "8cdb5bf3-8902-c5f7-f9aa-dc7fa0af1de0",
  "status": "ACCEPTED",
  "accepted_at": "2026-06-15T00:00:00Z"
}