使用Stanley方法计算路径跟踪的转向角命令
计算转向角命令,以度为单位,根据车辆的当前速度调整车辆的当前位姿以匹配参考位姿。默认情况下,该函数假定车辆处于向前运动状态。steerCmd
= lateralControllerStanley (refPose
,currPose
,currVelocity
)
控制器使用Stanley方法计算转向角指令[1],其控制律基于运动学自行车模型。在低速环境下,惯性效应很小的情况下,使用该控制器进行路径跟踪。
为了计算转向角指令,控制器将当前位姿相对于参考位姿的位置误差和角度误差最小化。车辆的行驶方向决定了这些误差值。
当车辆向前行驶时(“方向”
名称-值对是1
):
的位置误差为从前轴中心到路径上参考点的横向距离。
的角误差是前轮相对于参考路径的角度。
当车辆在倒车时(“方向”
名称-值对是1
):
的位置误差为后桥中心到路径上参考点的横向距离。
的角误差是后轮相对于参考路径的角度。
有关控制器如何最小化这些错误的详细信息,请参阅[1]。
[1] Hoffmann, Gabriel M., Claire J. Tomlin, Michael Montemerlo,和Sebastian Thrun。越野自动汽车轨迹跟踪:控制器设计、实验验证和赛车。美国控制会议。2007年,页2296 - 2301。doi: 10.1109 / ACC.2007.4282788