主要内容

横向控制器斯坦利

控制车辆的转向角通过斯坦利路径跟踪方法

自从R2018b

  • 横向控制器Stanley)块

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

描述

横向控制器斯坦利块计算转向角命令,在度,调整车辆的当前姿态匹配参考姿势,给汽车的流速和方向。控制器使用斯坦利方法计算该命令[1]的控制律是基于一个自行车运动和动态模型。模型之间的变化,使用汽车模型参数。

  • 运动自行车模型适用于路径在停车场等低速环境后,惯性效应最小。

  • 动态的自行车模型适用于在高速环境中路径跟踪等高速公路,惯性效应更加明显。这个汽车模型提供了额外的描述车辆的动力学参数。

港口

输入

全部展开

参考姿势,指定为一个(x,y,Θ)向量。xy在米,Θ是在度。

xy指定引导车辆的参考点。Θ指定路径的定向角在这个参考点和逆时针方向为正。

  • 车辆在前进运动,路径上的参考点是点,接近车辆的前轴的中心。

    车辆在转发与参考点运动路径。单位是在世界坐标。

  • 在反向运动,车辆路径上的参考点是点,接近汽车的后桥的中心。

    车辆反向与参考点运动路径明显。单位是在世界坐标。

数据类型:|

车辆的当前姿态,指定为一个(x,y,Θ)向量。xy在米,Θ是在度。

xy指定车辆的位置,这被定义为汽车的后桥的中心。

Θ指定车辆的定位角位置(x,y),逆时针方向为正。

车辆与构成明显。单位是在世界坐标。

汽车带来的更多细节,请参阅坐标系统在自动驾驶的工具箱

数据类型:|

当前车辆的纵向速度,指定为一个真正的标量。单位是米每秒。

  • 如果车辆在前进运动,那么这个值必须大于0。

  • 如果车辆在反向运动,那么这个值必须小于0。

  • 值0表示车辆,不运动。

数据类型:|

车辆的行驶方向,指定为1前进运动或1反向运动。行驶方向决定了位置误差和角度误差用于计算转向角命令。更多细节,请参阅算法

路径的曲率的参考点,在每米弧度,指定为一个真正的标量。

  • 车辆在前进运动,路径上的参考点是点,接近车辆的前轴的中心。

    车辆在转发与参考点运动路径。单位是在世界坐标。

  • 在反向运动,车辆路径上的参考点是点,接近汽车的后桥的中心。

    车辆反向与参考点运动路径明显。单位是在世界坐标。

你可以获得的路径的曲率曲率输出端口的路径平滑样条块。你也可以获得车道边界从输出通道的曲率边界的结构场景的读者块。

依赖关系

要启用这个端口,设置汽车模型动态的自行车模型

目前汽车的偏航率,在度每秒,指定为一个真正的标量。当前的偏航率是角速度的变化的速度。

依赖关系

要启用这个端口,设置汽车模型动态的自行车模型

当前车辆的转向角,在度,指定为一个真正的标量。这个值是正逆时针方向。

汽车前轮转向和转向角明显

更多细节,请参阅坐标系统在自动驾驶的工具箱

依赖关系

要启用这个端口,设置汽车模型动态的自行车模型

输出

全部展开

转向角命令,在度,作为一个真正的标量返回。这个值是正逆时针方向。

汽车前轮转向和转向角明显

更多细节,请参阅坐标系统在自动驾驶的工具箱

参数

全部展开

选择类型的车辆模型设置斯坦利方法控制律所使用的块。

  • 运动自行车模型——运动自行车路径模型在低速环境中如停车场后,惯性效应最小

  • 动态的自行车模型——动态自行车模型等路径跟踪在高速环境下高速公路,惯性效应更加明显

车辆的位置增益是在向前运动时,指定为一个积极的标量。这个值决定了转向角位置误差影响。典型值在[1,5]。增加这个值增加转向角的大小。

车辆的位置增益在反向运动时,指定为一个积极的标量。这个值决定了转向角位置误差影响。典型值在[1,5]。增加这个值增加转向角的大小。

偏航率反馈增益,指定为一个非负实数。这个值决定了多少体重了当前车辆时块的偏航率计算转向角命令。

依赖关系

要启用该参数,设置汽车模型动态的自行车模型

操舵角反馈增益,指定为一个非负实数。这个值决定了当前的转向角命令之间的区别,SteerCmd当前的转向角,CurrSteer,会影响下一个转向角命令。

依赖关系

要启用该参数,设置汽车模型动态的自行车模型

汽车的前后车轴之间的距离,在米,指定为一个真正的标量。这个值只适用于当车辆在前进运动,即当方向输入端口是1

依赖关系

要启用该参数,设置汽车模型运动自行车模型

汽车质量,公斤,指定为一个积极的真正的标量。

依赖关系

要启用该参数,设置汽车模型动态的自行车模型

车辆的质心纵向距离前轮轴,在米,指定为一个积极的真正的标量。

依赖关系

要启用该参数,设置汽车模型动态的自行车模型

车辆的质心纵向距离后轮车轴,米,指定为一个积极的真正的标量。

依赖关系

要启用该参数,设置汽车模型动态的自行车模型

前轮胎的侧偏刚度牛顿每弧度,指定为一个积极的真正的标量。

依赖关系

要启用该参数,设置汽车模型动态的自行车模型

最大允许车辆的转向角,度,指定为一个真正的标量范围(0,180)。

的输出SteerCmd端口是饱和范围(-,),的价值吗最大转向角(度)参数。

  • 下面的值,将- - - - - -

  • 值高于

提示

  • 你可以切换自行车模型作为车辆环境变化。添加两个横向控制器斯坦利块子系统和指定一个不同的变体为每一块自行车模型。例如,看到的横向控制教程

算法

计算转向角命令,控制器的位置误差和角度误差最小化当前体式的参考。车辆的行驶方向决定了这些误差值。

当车辆在前进运动(方向参数是1):

  • 位置误差是横向距离前轴的中心路径上的参考点。

  • 角误差是前轮的角度对参考路径。

当车辆在反向运动(方向参数是1):

  • 位置误差是横向距离后桥的中心路径上的参考点。

  • 角误差是后轮的角度对参考路径。

的细节控制器减少这些错误对于自行车运动和动态模型,明白了[1]

引用

[1]霍夫曼,加布里埃尔·M。,Claire J. Tomlin, Michael Montemerlo, and Sebastian Thrun. "Autonomous Automobile Trajectory Tracking for Off-Road Driving: Controller Design, Experimental Validation and Racing."美国控制会议。2007年,页2296 - 2301。doi: 10.1109 / ACC.2007.4282788

扩展功能

C / c++代码生成
使用仿真软件生成C和c++代码®编码器™。金宝app

版本历史

介绍了R2018b