waypoint_user_4

PX4 能力域:user-extension。PX4 映射:MAV_CMD_WAYPOINT_USER_4 该命令是 MAVLink 预留的用户自定义航点 command。它携带航点位置字段,但具体任务语义需要由接入方和 PX4 侧扩展共同约定。

中文说明

waypoint_user_4 是 PX4 MAV_CMD_WAYPOINT_USER_4 的 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
必填
固定 waypoint_user_4
idempotency_key
string
必填
幂等键;重复请求返回同一命令
timeout_seconds
integer
超时秒数,范围 0~300
payload
object
必填
该 command 的 typed request payload;字段名由 PX4 MAVLink XML 标签生成,但调用方不需要提交裸 param1..param7
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_WAYPOINT_USER_4
  • Command ID: 31003
  • 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\":\"waypoint_user_4\",\"payload\":{\"latitude\":473566000,\"longitude\":85432100,\"altitude\":30.0},\"idempotency_key\":\"req-waypoint_user_4-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"
}