返航命令

方法1:发送以下COMMAND_LONG命令

MAV_CMD_NAV_RETURN_TO_LAUNCH 20

param1 = 0 (0为返航) 非0为取消返航
返回消息 COMMAND_LONG
返回值 command = MAV_CMD_REQUEST_MESSAGE
返回值 param1 20 执行命令id
返回值 param2 0或1 是否执行成功
返回值 param3 失败代码
失败代码列表
0 无异常
1 无法初始化无人机飞行控制
2 返航失败
3 取消返航失败

方法2:使用切换飞行模式将飞行模式切换至RTL
详见切换飞行模式页


取消返航命令

方法1:发送以下COMMAND_LONG命令

MAV_CMD_NAV_RETURN_TO_LAUNCH 20

param1 = 1 (非0为取消返航)
返回消息同上

方法2:使用切换飞行模式将飞行模式切换至POSCTL
详见切换飞行模式页

方法3:

python测试脚本

import time
from pymavlink import mavutil

timestamp = int(time.time() * 1000)
millis = int(time.time() * 1000)

master = mavutil.mavlink_connection('udpin:0.0.0.0:14550')
master.wait_heartbeat()
boot_time = time.time()

def return_to_base(cancleReturn):
    master.mav.command_long_send(
        master.target_system,
        master.target_component,
        mavutil.mavlink.MAV_CMD_NAV_RETURN_TO_LAUNCH,
        0,
        cancleReturn, 0, 0, 0, 0, 0, 0
    )

return_to_base(0)
time.sleep(10)
return_to_base(1)

执行脚本

开始返航

中途停止返航

作者:admin  创建时间:2024-09-14 16:06
最后编辑:sfd  更新时间:2026-03-31 18:57