路径平滑样条

使用三次样条插值平滑车辆路径

  • 库:
  • 自动驾驶的工具箱

描述

路径平滑样条块通过将输入参考路径位姿拟合到三次样条中,生成由一系列离散位姿组成的平滑车辆路径。给定输入参考路径方向,块也会返回对应于每个姿态的方向。

使用此块转换C1- C的连续路径2连续的路径。C1-连续路径包括由路径规划者返回的Dubins或reed - shepp路径。有关这些路径类型的详细信息,请参阅c1 -连续和c2 -连续路径

您可以使用返回的姿态和方向与车辆控制器,如横向控制器斯坦利块。

港口

输入

全部展开

车辆沿路径的参考姿态,指定为的-×3矩阵x,y,Θ)向量,是姿态的数量。

xy指定车辆的位置(以米为单位)。Θ指定车辆的方向角,单位为度。

数据类型:|

车辆沿路径的参考方向,指定为1乘1列向量的1s(前进运动)和-1s(反向运动)。为参考方向数。的每个元素RefDirections中的一个姿势RefPoses输入端口。

数据类型:|

输出

全部展开

平滑路径的离散姿态,返回为N的-×3矩阵x,y,Θ)向量。N中是否指定了姿态的数量输出位姿数参数。

xy指定车辆的位置(以米为单位)。Θ指定车辆的方向角,单位为度。

中的值提出了的值是否具有相同的数据类型RefPoses输入端口。

在每个输出位姿下车辆的行驶方向提出了,以N1乘1列向量的1s(前进运动)和-1s(反向运动)。N中是否指定了姿态的数量输出位姿数参数。

中的值方向的值是否具有相同的数据类型RefDirections输入端口。

您可以使用方向指定车辆的参考路径。你也可以使用方向,连同CumLengths曲率,以生成车辆的参考速度剖面。看到速度分析器块和Simulink的自动泊车服务金宝app的例子。

每个输出位姿的累积路径长度提出了,以N-乘1实值列向量。N中是否指定了姿态的数量输出位姿数参数。单位是米。

您可以使用CumLengths,连同方向曲率,以生成车辆的参考速度剖面。看到速度分析器块和Simulink的自动泊车服务金宝app的例子。

依赖关系

若要启用此端口,请选择显示长度和曲率输出端口参数。

在每个输出位姿处的有符号路径曲率提出了,以N-乘1实值列向量。N中是否指定了姿态的数量输出位姿数参数。单位是弧度每米。

您可以使用曲率,连同方向CumLengths,以生成车辆的参考速度剖面。看到速度分析器块和Simulink的自动泊车服务金宝app的例子。

依赖关系

若要启用此端口,请选择显示长度和曲率输出端口参数。

参数

全部展开

数个平稳的姿势在返回提出了输出端口,指定为正整数。要增加返回姿态的粒度,请增加此参数值。

位姿之间的最小间隔,以米为单位,指定为正的实标量。如果欧几里德(x,y)两个位姿之间的距离小于此值,则块仅使用其中一个位姿进行插值。

块的采样时间,以秒为单位,指定为1或者是一个正的实标量。默认的1表示块从上游块继承其采样时间。

选择此参数以启用CumLengths曲率输出端口。

  • 代码生成-使用生成的C/ c++代码模拟模型。第一次运行模拟时,Simulink金宝app®为代码块生成C/ c++代码。只要模型不变,就可以在后续的模拟中重用C代码。此选项需要额外的启动时间。

  • 解释执行-使用MATLAB对模型进行仿真®翻译。这个选项缩短了启动时间。在解释执行模式下,可以调试代码块的源代码。

更多关于

全部展开

算法

  • 路径平滑算法插值一个参数三次样条通过所有的输入参考位姿点。样条的参数是这些点的累积弦长。[1]

  • 平滑的输出路径的切线方向与车辆在起始和目标姿态时的方向角大致匹配。

参考文献

[1]浮子,迈克尔S。参数三次样条插值与数据多边形的偏差计算机辅助几何设计。第25卷,第3期,2008年,第148-156页。

[2] Lepetic, Marko, Gregor Klancar, Igor Skrjanc, Drago Matko,和Bostjan Potocnik。考虑加速度限制的时间最优路径规划。机器人和自动系统。第45卷,第3-4期,2003年,第199-210页。

扩展功能

C / c++代码生成
使用Simulink®Coder™生成C和c++代码。金宝app

介绍了R2019a