驾驶模式(差速式无人车)
飞行模式(对于地面车辆而言,更准确地说是“驾驶模式”)由自动驾驶仪提供支持,以便于手动驾驶车辆或执行自主任务。
本节概述了差速式无人车所支持的所有驾驶模式。
有关将遥控器控制开关映射到特定模式的信息,请参阅:基本配置 > 飞行模式。
WARNING
选择以下未列出的任何其他模式可能会使无人车停止,或者导致出现不确定的行为。
手动模式
手动模式需要用户通过操纵杆输入来驾驶车辆。
以下列出的手动模式提供了不同程度的自动驾驶仪支持:
模式 | 前进速度 | 偏航速率 | 所需测量值 |
---|---|---|---|
手动模式 | 直接将操纵杆输入映射到电机指令。 | 直接将操纵杆输入映射到电机指令。 | 无。 |
特技模式 | 直接将操纵杆输入映射到电机指令。 | 操纵杆输入为控制系统创建一个偏航速率设定点,以便进行调节。 | 偏航速率。 |
稳定模式 | 直接将操纵杆输入映射到电机指令。 | 操纵杆输入为控制系统创建一个偏航速率设定点,以便进行调节。如果此设定点为零(操纵杆处于中心位置),控制系统将保持无人车当前的偏航角(航向)。 | 偏航速率和偏航角。 |
位置模式 | 操纵杆输入为控制系统创建一个速度设定点,以便进行调节。 | 操纵杆输入为控制系统创建一个偏航速率设定点,以便进行调节。如果此设定点为零(操纵杆处于中心位置),控制系统将使无人车保持直线行驶。 | 偏航速率、偏航角、速度和全局位置(GPS)。 |
手动模式
在这种模式下,操纵杆的输入直接映射到电机指令。无人车不会尝试保持特定的方向,也不会补偿诸如斜坡或不平坦地形等外部因素! 用户有责任对操纵杆输入进行必要的调整,以使无人车保持在期望的路线上。
操纵杆 | 效果 |
---|---|
左操纵杆上/下 | 使无人车向前/向后行驶。 |
左操纵杆处于中心位置 | 前进速度输入为零。 |
右操纵杆左/右 | 使无人车向左/右偏航。 |
右操纵杆处于中心位置 | 偏航速率输入为零 |
有关此模式的配置/调试,请参阅 手动模式。
特技模式
INFO
此模式需要测量偏航速率。
在这种模式下,车辆将其偏航速率调节到一个设定点(但不稳定航向或调节速度)。
操纵杆 | 效果 |
---|---|
左操纵杆上/下 | 使无人车向前/向后行驶。 |
左操纵杆处于中心位置 | 前进速度输入为零。 |
右操纵杆左/右 | 为控制系统创建一个偏航速率设定点,以便进行调节。 |
右操纵杆处于中心位置 | 控制系统将尝试保持偏航速率为零(最小化干扰抑制) |
有关此模式的配置/调试,请参阅 特技模式。
稳定模式
INFO
此模式需要测量偏航速率和偏航角估计值。
在这种模式下,车辆将其偏航速率调节到一个设定点,并且如果此设定点为零,车辆将保持其航向(但不调节速度)。 与 特技模式 相比,此模式在直线行驶方面表现更好,因为它可以更有效地抑制干扰。
操纵杆 | 效果 |
---|---|
左操纵杆上/下 | 使无人车向前/向后行驶。 |
左操纵杆处于中心位置 | 前进速度输入为零。 |
右操纵杆左/右 | 为控制系统创建一个偏航速率设定点,以便进行调节。 |
右操纵杆处于中心位置 | 控制系统将保持当前的航向。 |
有关此模式的配置/调试,请参阅 稳定模式。
位置模式
INFO
此模式需要测量偏航速率、偏航角、速度和全局位置估计值。
这是自动驾驶仪支持最多的手动模式。 车辆将其偏航速率和速度调节到一个设定点。 如果偏航速率设定点为零,控制器将记住车辆的全球导航卫星系统(GNSS)坐标和偏航角(航向),并使用这些信息构建一条路线,然后无人车将沿着该路线行驶(路线控制)。 这提供了最高程度的抗干扰能力,从而实现了最佳的直线行驶性能。
操纵杆 | 效果 |
---|---|
左操纵杆上/下 | 为控制系统创建一个速度设定点,以便进行调节。 |
左操纵杆处于中心位置 | 前进速度输入为零。 |
右操纵杆左/右 | 为控制系统创建一个偏航速率设定点,以便进行调节。 |
右操纵杆处于中心位置 | 控制系统将保持无人车的行驶路线。 |
有关此模式的配置/调试,请参阅 位置模式。
自动模式
在自动模式下,自动驾驶仪接管车辆的控制权,以运行任务、返回起飞点或执行其他自主导航任务。 有关这些模式的配置/调试,请参阅 自动模式。
任务模式
“任务模式”是一种自动模式,在这种模式下,车辆执行预先定义的自主 任务计划,该任务计划已上传到飞行控制器。 该任务通常使用地面控制站(GCS)应用程序(例如 QGroundControl)创建并上传。
任务指令
在撰写本文时(main(PX4 v1.16+)
),任务中可以使用以下指令:
QGC 任务项 | 通信 | 描述 |
---|---|---|
任务开始 | MAV_CMD_MISSION_START | 开始任务。 |
航点 | MAV_CMD_NAV_WAYPOINT | 导航到航点。 |
返回起飞点 | MAV_CMD_NAV_RETURN_TO_LAUNCH | 返回起飞位置。 |
延迟至 | MAV_CMD_NAV_DELAY | 无人车将停止指定的时间。 |
更改速度 | MAV_CMD_DO_CHANGE_SPEED | 更改速度设定点 |
设置起飞位置 | MAV_CMD_DO_SET_HOME | 将起飞位置更改为指定的坐标。 |
跳转到项目(所有) | MAV_CMD_DO_JUMP(以及其他跳转指令) | 跳转到指定的任务项。 |
绕圈(所有) | MAV_CMD_NAV_LOITER_TIME(以及其他绕圈指令) | 使无人车在给定时间内停止。其他指令会使无人车无限期停止。 |