Skip to content

驾驶模式(阿克曼式无人车)

飞行模式(对于地面车辆来说,更准确地说是“驾驶模式”)由自动驾驶仪提供支持,以便于手动驾驶车辆或执行自主任务。

本节概述了 阿克曼式无人车 所支持的所有驾驶模式。

有关将遥控器控制开关映射到特定模式的信息,请参阅:基本配置 > 飞行模式

WARNING

选择以下未列出的任何其他模式可能会使无人车停止,或者导致出现不确定的行为。

手动模式

手动模式需要用户通过操纵杆输入来驾驶车辆。

手动控制

在所有手动模式下,操纵杆对行驶方向和移动速率都提供相同的“高级”控制效果:

  • 左操纵杆上/下:使无人车向前/向后行驶(控制速度)
  • 右操纵杆左/右:向左/向右转弯(控制转向角度(手动模式)或横向加速度(特技模式位置模式))。

手动模式在保持行驶路线、速度和转弯速率方面,提供了逐渐增强的自动驾驶仪支持,以补偿诸如斜坡或不平坦地形等外部因素的影响。

模式特性
手动模式无自动驾驶仪支持。用户负责使无人车保持在期望的路线上,并维持速度和转弯速率。
特技模式+ 保持横向加速度。这使得驾驶感觉比手动模式更像是在驾驶汽车。
+ 它还能防止翻车,并且在不平坦地形上保持直线行驶的能力略强。
位置模式+ 最适合保持直线行驶的模式。
+ 抵抗干扰并保持速度,例如在上坡行驶时
+ 可以限制最大速度。
Details

模式映射到控制效果概述

模式前进速度转向角度/横向加速度所需测量值
手动模式直接将操纵杆输入映射到电机指令。直接将操纵杆输入映射到转向角度。无。
特技模式直接将操纵杆输入映射到电机指令。操纵杆输入为控制系统创建一个横向加速度设定点,以便进行调节。横向加速度。
位置模式操纵杆输入为控制系统创建一个速度设定点,以便进行调节。操纵杆输入为控制系统创建一个横向加速度设定点,以便进行调节。如果此设定点为零(操纵杆处于中心位置),控制系统将使无人车保持直线行驶。横向加速度、偏航角、速度和全局位置(GPS)。

手动模式

在这种模式下,操纵杆的输入直接映射到电机指令。无人车不会尝试保持特定的方向,也不会补偿诸如斜坡或不平坦地形等外部因素! 用户有责任对操纵杆输入进行必要的调整,以使无人车保持在期望的路线上。

操纵杆效果
左操纵杆上/下使无人车向前/向后行驶。
右操纵杆左/右使转向角度向左/右转动。

有关此模式的配置/调试,请参阅 手动模式

特技模式

INFO

此模式需要测量横向加速度。

在这种模式下,车辆将其横向加速度调节到一个设定点(但不稳定航向或调节速度)。

横向加速度可以根据无人车的前进速度直接映射到转向输入:

θ=arctan(wbalatv2)

其中:

  • wb: 轴距,
  • θ: 转向角度,
  • v: 前进速度。

对于驾驶来说,这意味着根据行驶速度的不同,相同的右手操纵杆输入将导致不同的转向角度。 通过限制最大横向加速度,我们可以根据速度限制转向角度,这可以防止无人车翻车。 这种模式比 手动模式 更像是“驾驶汽车”的感觉。

INFO

仅在向前行驶时,横向加速度才进行闭环控制。当向后行驶时,使用上述公式将横向加速度设定点直接映射到转向角度。 这是因为后轮转向(对于前轮转向的汽车向后行驶的情况)相对于横向加速度来说属于非最小相位系统,这会导致在进行闭环控制时出现不稳定的情况。

操纵杆效果
左操纵杆上/下使无人车向前/向后行驶。
右操纵杆左/右为控制系统创建一个横向加速度设定点,以便进行调节。如果此输入为零,控制系统将尝试保持横向加速度为零(最小化干扰抑制)

有关此模式的配置/调试,请参阅 特技模式

位置模式

INFO

此模式需要测量横向加速度、偏航角、速度和全局位置估计值。

这是自动驾驶仪支持最多的手动模式。车辆将其横向加速度和速度调节到一个设定点。如果横向加速度设定点为零,控制器将记住车辆的 GPS 坐标和偏航角(航向),并使用这些信息构建一条路线,然后无人车将沿着该路线行驶(路线控制)。 这提供了最高程度的抗干扰能力,从而实现了最佳的直线行驶性能。

操纵杆效果
左操纵杆上/下操纵杆位置设定一个向前/向后的速度设定点。车辆尝试在斜坡等情况下保持此速度。
右操纵杆左/右为控制系统创建一个横向加速度设定点,以便进行调节。如果此输入为零,控制系统将保持无人车的行驶路线。

有关此模式的配置/调试,请参阅 位置模式

自动模式

在自动模式下,自动驾驶仪接管车辆的控制权,以运行任务、返回起飞点或执行其他自主导航任务。 有关调试过程,请参阅 自动模式 的配置。

任务模式

“任务模式”是一种自动模式,它使车辆执行预先定义的自主 任务计划,该任务计划已上传到飞行控制器。 该任务通常使用地面控制站(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(以及其他绕圈指令)使无人车在给定时间内停止。其他指令会使无人车无限期停止。

返回模式

此模式使用 纯追踪制导逻辑,并将起飞位置作为目标。 可以通过相应的 任务指令 或通过地面站用户界面激活返回模式。