request_operator_control

PX4 能力域:request-system。PX4 映射:MAV_CMD_REQUEST_OPERATOR_CONTROL 该命令用于向 PX4 请求 operator control 相关信息。Open Platform 使用 request_operator_control 作为具名入口,PX4 是否返回数据取决于当前固件和 MAVLink 实例支持情况。

中文说明

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

请求参数

vendor
string
必填
固定 px4
device_id
string
必填
目标 PX4 设备 ID
command_type
string
必填
固定 request_operator_control
idempotency_key
string
必填
幂等键;重复请求返回同一命令
timeout_seconds
integer
超时秒数,范围 0~300
payload
object
必填
该 command 的 typed request payload;字段名由 PX4 MAVLink XML 标签生成,但调用方不需要提交裸 param1..param7
payload.action
number
字段含义:Action;PX4 帧映射到 MAVLink 参数 1。
payload.allow_takeover
number
字段含义:Allow takeover;PX4 帧映射到 MAVLink 参数 2。
payload.request_timeout
number
字段含义:Request timeout,单位 s;PX4 帧映射到 MAVLink 参数 3。
payload.gcs_sysid
number
字段含义:GCS Sysid;PX4 帧映射到 MAVLink 参数 4。
payload.gcs_sysid_upper_range
number
字段含义:GCS Sysid (upper range);PX4 帧映射到 MAVLink 参数 5。

PX4 帧映射

  • MAVLink command: MAV_CMD_REQUEST_OPERATOR_CONTROL
  • Command ID: 32100
  • Default transport: COMMAND_LONG
  • Source XML: development.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\":\"request_operator_control\",\"payload\":{\"action\":0,\"allow_takeover\":0,\"request_timeout\":0,\"gcs_sysid\":0,\"gcs_sysid_upper_range\":0},\"idempotency_key\":\"req-request_operator_control-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"
}