分享

PreScan快速入门到精通第二十二讲驾驶员模型之路径跟踪

 小明师兄 2021-11-03

22.1 PreScan路径跟踪

路径跟踪驾驶员模型是一个Simulink子模块,它将轨迹(路径+速度曲线)转化为车辆动力学模型的转向角输入。油门、刹车和初始速度也被控制,但这些与轨迹速度曲线无关。

为了获得平稳的转向,在速度曲线编辑器中至少使用100 Hz的轨迹步进频率和100 Hz的Simulink更新率以及15m/s的速度(默认值)。

 在用户指定的动力学或第三方车辆动力学的情况下,建议使用带预瞄的路径跟踪器。

使用方法:

要配置路径跟随者参数,请双击块。会出现一个对话框,允许用户设置。

轨迹名称:默认值为PreScan GUI中定义的执行器活动轨迹。实际上用户可以选择实验中所有现有的轨迹。

可调整的转向增益因子。每辆车都有不同的转向行为。对于马自达来说这个值是1,奥迪8 1.1,雅力士1.1,本田泛欧0.05等。这个参数的默认值是1。

执行器转向位置点。如果为0,则执行器COG是跟随轨迹行驶的。X移位是以actor局部坐标系为基准。

可调式转向增益系数的默认值为1,但是,为了避免摩托车的侧倾角(滚动),该值必须手动设置。例如,Honda Pan欧洲摩托车需要0.05的转向增益。

在路径跟踪块的下方显示是:

 

路径跟踪器输入

参数                                      描述                                                                        单位
TrajOffset_x,y,Y
全球坐标系的轨迹起始位置。这些值由PreScan自动填充,并与执行器活动轨迹相关。
[m,m,deg]
执行器偏移量_左 (+)/右(-)
执行器与选定轨迹的垂直偏移。
 
 
[m]
位置 x,y,Y
执行器实际位置,x、y位移和颚部Y旋转
[m,m,deg]
初始速度
执行器初始速度
[m/s]
期望速度
执行器期望的速度,在一定范围内达到设定值。
[m/s]

路径跟踪器输出

参数                                      描述                                                                          单位
d_steeringwheel
方向盘转角
[deg]
Throttle
节气门开度0-100%
[%]
Brake pressure
制动踏板深度 0-100%
[%]
v0
初速度
[m/s]
Auto_GearShift
自动变速器挡位:
[0] = 空挡
[1] = 驱动档
[-]
Actor/Traj_distance
执行器重心与最近轨迹点之间的距离。
[m]
Actor/Traj_angle
执行器纵轴与轨迹切线在最近点的夹角。
[deg]

使用实例

路径跟随模块块的输入和输出端口自动连接,如下图所示:

默认情况下,初始速度和期望速度的值取自执行器的速度编辑器的初始速度。如果改变了速度曲线的初始速度,并且重新生成了模型,那么路径跟随者的输入值也会改变。通过断开这些信号,可以使用其他的初始速度和期望速度。

速度编辑器中的初始速度

路径跟踪器使用:

设置期望速度 

路径跟随器在前进和/或静止状态下工作。

22.2 带有预瞄功能的路径跟踪系统

理论

带预瞄的PathFollower是基于最优预览控制理论。它计算出最佳的前轮转向角,以最小化行为人位置(车辆重心)和参考路径的横向误差。它近似于人类驾驶员的平均行为。

该算法使用10个预览点来计算方向盘角度。预览距离的计算方法是将行为人速度(米/秒)乘以 "预览时间"(默认为1秒)。这实际上是车辆在1秒的预览时间内移动的距离。10个横向误差(e_Latm)的计算方法是首先找到轨迹上最近的点(pvpref , m),然后计算该点到行为体纵轴的距离。 

带预览的路径跟踪器是一个Simulink块,它将轨迹(路径+速度曲线)转化为车辆动力学模型的转向角输入。油门、刹车和初始速度也被控制,但这些与轨迹速度曲线无关。 

注1:为了获得平稳的转向,建议在速度曲线编辑器中的轨迹步频为100赫兹,Simulink更新率为100赫兹,速度为15m/s(默认值)。也支持可变速度。

为了进一步提高转向角的平滑度,可以将速度曲线编辑器中选择的速度降低到例如1m/s。仿真运行时间不会改变。请注意,因此在GUI中生成轨迹将需要更多的时间。 

注2:当车辆到达参考轨迹终点时,它将根据最后两个参考轨迹点,继续沿着外推路径行驶。

使用方法

预扫描图形用户界面 

在 "Actor's Object "配置对话框中选择"Driver Model "选项卡,然后选择 "PathFollowerwith preview"。 

单击 "Customize "按钮,以便修改Path Follower参数。会显示一个带有参数的对话框。

路径跟踪器,带预瞄参数

参数                            描述                                                                                      单位
预瞄时间
该控件可通过将预览时间乘以当前速度来确定前方的距离。
预览时间的实际值约为1秒。
路径跟随者 "转向角输出与预览时间成反比。
较短的预览时间,如0.5秒,可以用来获得响应的转向,使车辆保持在参考路径上。然而,对于快速的路径变化,较短的预览时间可能会导致过于激进的转向,从而导致车辆失控。
较长的预览时间反而会产生较平稳的转向,但
导致与参考路径的偏差较大。
[s]
延迟时间
模拟人类驾驶员的神经肌肉延迟的参数。
[s]
低速限制
如果车速降至此限值以下,则预览距离为指定预览时间乘以低速限值。
[km/h]
最大方向盘角度率
指定方向盘向任一方向转动的最大角速度。
[deg/s]
减频系数
该参数用于设置比Simulink编译表更低的横向控制器工作频率。
横向控制器的工作频率只能使用正整数值来降低,如果编译表的频率是1000Hz,那么降低系数4将导致 "带预览横向控制器的路径跟随者 "的频率为250Hz。如果编译表的频率是1000Hz,那么减少系数4将导致 "带有预览侧向控制器的路径跟随器 "的频率为250Hz。
[-]
结果频率
Path  Follower with Preview 侧向控制器频率=Simulink频率/频率系数

Simulink模型 

'带预览的路径跟踪器'Simulink模型位于Actor块的下方,通过双击Path Follower块,会出现一个对话框,显示参数。 

通过双击Path Follower块,会出现一个显示参数的对话框,这些参数由PreScanGUI自动填充。这些参数是由PreScan GUI自动填充的。

 

路径跟踪器有两个标签:控制器参数和系统参数。 

在 "控制器参数 "中,可以访问纵向PID控制器的参数和积分抗饱和参数。

使用以下控制器结构:

其中,可配置的参数为: 

P为比例增益 

I、整体收益 

D为导数收益 

AWU 为积分抗饱和参数 

按复位PID按钮可将参数重置为原始值。 

在 "系统参数 "选项卡上,可以找到以下参数。 

轨迹名称:默认值是在PreScan GUI中定义的执行器活动轨迹。 

车辆质量 

车辆围绕偏航轴的惯性 

前轴到重心的距离(a) 

车辆轮基(a+b) 

最大方向盘角度 

预览时间

延迟时间

低速极限

最大方向盘角度率

侧向控制器频率=(Simulink频率)/降频系数。

侧向控制器模块,位于带预瞄功能的路径跟踪器内(见下图),以该频率执行。 

纵向控制器参数:PID控制器,积分抗饱和(AWU)。

路径跟随内部的预瞄模块

在用户指定的动力学和CarSim的情况下,与车辆动力学相关的路径跟随参数可以由用户在PreScanGUI对话框(见下面的对话框)中手动填写,方法是选择执行器对象配置菜单,然后选择动力学选项卡,最后按"自定义 "按钮。默认值继承自简单动力学。

下面显示了 "带预瞄的路径跟随者 "Simulink块

路径跟踪器预览输入

参数                             描述                                                                                      单位
TrajOffset_x,y,Y
全球(世界)坐标系的轨迹起始位置。这些值由PreScan自动填充,并与执行器活动轨迹相关。
[m,m,deg]
ActorOffset_Left (+)/Right(-)
执行器与所选轨迹的垂直偏移。:
 

 
[m]
position  x,y,Y
执行器的实际位置。X、Y位移和绕Z旋转(Rotz)。
[m,m,deg]
Initial  velocity
执行器的初始速度。
[m/s]
Desired  Velocity
Actor期望速度。执行器在一定范围内达到设定值。
[m/s]
velocity
执行器实际速度(actor actual velocity)。
[m/s]
vx
执行器实际速度X分量,在执行器坐标系中。
[m/s]
vy
Actor实际速度Y分量,在执行器坐标系中。
[m/s]
Yaw rate
车手偏航率。
[m/s]
Cornering Stiffness Tires Front
转弯时每弧度滑移角的前轮胎刚度。(左、右合并)
[N/rad]
Cornering Stiffness Tires Rear
过弯时后胎刚度,每弧度滑移角。(左、右合并)
[N/rad]
Steering  ratio
方向盘角度与车轮角度之比。
[-]

在用户指定的动力学和CarSim的情况下,路径跟随者 "常数 "块的值可以由用户在PreScan GUI对话框中手动填写(见上面的对话框),作为<轮胎前部转向刚度>、<轮胎后部转向刚度>和<转向比>的输入。默认值继承自Simple Dynamics。

路径跟踪器预瞄输出

参数                          描述                                                                                 单位
delta_steerwheel
方向盘转角
[deg]
Throttle
0-100%的节流阀。
[%]
Brake pressure
制动功率,以0-制动最大压力为基准。
[bar]
v0
初始速度
[m/s]
Auto_GearShift
自动变速箱挡位:
[0] = neutral
[1] = drive
[-]
Actor/Traj_distance
执行器重心与最近轨迹点之间的距离。
 

[m]
Actor/Traj_angle
执行器纵轴与轨迹切线在最近点的夹角。
[deg]
22.3 使用实例

Path follower with preview "块的输入和输出端口自动连接,如下图所示。

默认情况下,Initial Velocity和Desired Velocity的值取自actor的Speed Profile的InitialSpeed。如果改变了速度曲线的初始速度,并且重新生成了模型,那么路径跟踪器的输入值也会改变。通过断开这些信号,可以使用其他的初始速度和期望速度。

速度曲线初始速度 

路径跟踪器,使用预瞄:设置期望速度示例图

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多