主要内容

纵向控制器斯坦利

控制车辆通过斯坦利纵向速度的方法

自从R2019a

  • 纵向控制器Stanley)块

库:
自动驾驶的工具箱/车辆控制

描述

纵向控制器斯坦利块计算加速和减速命令,在米每秒,控制车辆的速度。指定参考速度,当前的速度,和当前的行驶方向。控制器使用Stanley)方法计算这些命令[1]块实现了,这是一个离散的比例积分(PI)控制器与anti-windup积分。更多细节,请参阅算法

你也可以计算出车辆的转向角命令使用Stanley)方法。看到横向控制器斯坦利块。

港口

输入

全部展开

参考速度,在米每秒,指定为一个真正的标量。

当前车辆的速度,在米每秒,指定为一个真正的标量。

指定的车辆,行驶方向1前进运动和1反向运动。

触发重置速度误差的积分,e(k),为零。的值0持有e(k)稳定。一个非零值重置e(k)。

输出

全部展开

加速命令,作为一个真正的标量返回范围在[0,一个),一个的价值吗最大纵向加速度(m / s ^ 2)参数。

减速命令,作为一个真正的标量返回范围在[0,D),D的价值吗最大纵向减速(m / s ^ 2)参数。

参数

全部展开

比例增益控制器,Kp,指定为一个积极的真正的标量。

积分增益控制器,K,指定为一个积极的真正的标量。

样品的时间控制器,在几秒钟内,指定为一个积极的真正的标量。

最大纵向加速度,在米每秒的平方,指定为一个积极的真正的标量。

块浸透的输出AccelCmd范围(0,一个),一个该参数的值。值高于一个一个

最大纵向减速,在米每秒的平方,指定为一个积极的真正的标量。

块浸透的输出DecelCmd端口范围(0,D),D该参数的值。值高于DD

算法

纵向控制器斯坦利块实现了一个离散的比例积分(PI)控制器和积分anti-windup,所描述的Anti-windup方法(万博1manbetx模型)PID控制器的参数。块使用这个方程:

u ( k ) = ( K p + K T 年代 z z 1 ) e ( k )

  • u(k)的控制信号k时间步长。

  • Kp比例增益,设定的比例增益,Kp参数。

  • K积分增益,设定的吗积分增益,吻参数。

  • T年代是样本块的时间秒,设定的吗样品时间(年代)参数。

  • e(k)是速度误差(CurrVelocity- - - - - -RefVelocity)k时间步长。为每一个k的区别,这个错误等于当前输入速度和参考速度(CurrVelocity- - - - - -RefVelocity)。

控制信号,u加速度的值,确定命令AccelCmd和减速命令DecelCmd。块浸透的加速和减速命令各自的范围(0,一个]和[0,D),地点:

  • 一个是价值的最大纵向加速度(m / s ^ 2)参数。

  • D的价值吗最大纵向减速(m / s ^ 2)参数。

在每个时间步,唯一的一个AccelCmdDecelCmd端口值是积极的,另一个端口值0。换句话说,车辆可以在一个时间步长加速或减速,但不能做一次。

运动的方向,如中指定方向输入端口,确定哪些命令是积极的在给定的时间步长。

方向端口值 控制信号值u(k) AccelCmd端口值 DecelCmd端口值 描述
1(移动)

u(k)> 0

积极的真正的标量 0 车辆加速向前行驶

u(k)< 0

0 积极的真正的标量 车辆减速向前行驶
1(反向运动)

u(k)> 0

0 积极的真正的标量 车辆减速,因为它在反向传播

u(k)< 0

积极的真正的标量 0 汽车加速,因为它在反向传播

引用

[1]霍夫曼,加布里埃尔·M。Michael Montemerlo克莱尔·j·汤姆林,和Sebastian Thrun。“自主汽车越野驾驶轨迹跟踪:控制器设计、实验验证和赛车。”美国控制会议。2007年8月,页2296 - 2301。doi: 10.1109 / ACC.2007.4282788。

扩展功能

C / c++代码生成
使用仿真软件生成C和c++代码®编码器™。万博1manbetx

版本历史

介绍了R2019a