prescan有自带的泊车例子
停车辅助系统的功能目标是帮助驾驶员找到空停车位,并通过全自动应用程序(转向和油门/制动器)帮助驾驶员驶入停车位。这些系统设计用于提高停车操作期间的安全性和驾驶员舒适度。为本演示设计的算法首先收集有关车辆环境的信息,并确定障碍物的位置以找到停车场。其次,它计算并执行将汽车停在所需位置所需的(平行或间隔)停车轨迹。第三,它重新定位车辆以进行平行停车操作。
系统模型
组件:
·主车辆:奥迪A8,具有简单的车辆动力学和路径跟随器
·传感:超声波传感器
·控制器:基于范围和距离的自动停车控制器
·触发:空停车位(停车位停车:车辆宽度+偏移,平行停车:车辆长度+偏移)
·驱动:信息显示、转向和油门/制动器
驻车辅助系统使用以下超声波传感器传感器:
·3个超声波传感器(2个区域扫描传感器:6米,2度;1个驻车辅助传感器:1.5米,90度)
市场上提供的典型泊车辅助系统通常与其他ADA系统(ACC、AEBS等)和导航数据一起使用,以提高驾驶员的舒适性和安全性。建模的泊车辅助系统代表了PreScan设计和完全测试汽车工业中使用的当代控制算法的能力。
算法
泊车辅助系统使用超声波传感器扫描环境,并测量停放车辆之间的空闲空间。主动车辆(奥迪A8)配备有三个超声波传感器。位于车辆左前侧和右侧的两个传感器用于搜索停车区域。第三个传感器位于车辆的中间后侧,用于防止与车辆或车辆后面的路缘发生碰撞。这些传感器的范围和视野如下表所示。
请注意,在场景中调整车辆的起始位置时,应考虑到超声波传感器范围决定了与停车道的最大垂直行驶距离。最小距离取决于机动。下表给出了概述。
汽车使用人类驾驶员模型“带预览的路径跟随器”跟踪预定义的轨迹,直到找到停车区。模拟场景允许在道路左侧和右侧设置停车位和平行停车位(参见下图)。
一旦测量的空间等于或大于所需的最小空间,车辆制动并完全停止。如下图所示,用于检测具有活动车辆(红色)、传感器光束(绿色)、轨迹(黑色)和环境(蓝色)的平行(左侧)和间隔(右侧)停车区域。
一旦找到停车区域,车辆停止,就可以计算轨迹。
对于平行停车轨迹,使用最短路径(Reeds和Shepp,1990)。它由三部分组成:一条直线和两条圆弧(见下图左图,Choi等人,2011)。为了确定这些零件的长度和角度,需要P1和P2的x和y坐标。P1的位置很简单,因为它是车辆的起始位置,并且P2的位置可以在搜索停车区域期间获得。注意,平行停车轨迹不考虑停放在主车前后的车辆宽度。这可能导致在停车操作期间与停放的车辆发生碰撞。平行停车偏移因此被添加到计算的最小平行停车区域,以考虑停车车辆的宽度和/或非理想停车车辆的配置,以避免平行停车操作期间的碰撞。整个轨迹的车辆速度是恒定的,并设置为3.6 kph,以便阿克曼转弯几何可用于定义完全停车轨迹。
停车场轨道由两部分组成:直线和圆弧(见下图右图)。圆弧的角度始终为90度,因为假设了完美的垂直停车位操纵。直线的长度可以使用类似于用于寻找平行轨迹的推理来获得。该轨迹的车辆速度也是恒定的,并设置为3.6 kph。
停车操作完成后,车辆测量到车辆或其后面的路缘的距离,并在适当距离处停车。对平行停放的车辆执行额外的向前运动,以将车辆定位在车辆前方约1m处。
这种轨迹方法的主要优点是可以容易地获得方向盘角度。对于平行停车操作,方向盘角度对于直线为0,对于第一个圆弧为+/-最大值,对于第二个圆弧为-/+最大值。对于海湾停车操作,转向盘角度对于线性为0,而对于圆弧为+/-最大值。获得的转向角现在可以用作Simulink中“Dynamics_Simple”块的输入。驻车操纵期间的平行(左)和间隔(右)转向角示例见下图。请注意,方向盘角度在过渡期间线性增加或减少,这是为了防止车辆颠簸。
注:停车轨迹假设车辆相对于停车车道的完美平行起始位置。
向前行驶,搜索停车区-在这部分中,系统使用右前或左前的LRU测量停放车辆之间的空闲空间以及车辆宽度。车辆宽度用于确定车辆是沿停车位行驶还是沿平行停车车道行驶。一旦测得的空闲空间等于或大于所需的最小停车空间,且车辆处于正确的停车区域,系统将确定所需的停车位置。然后,车辆行驶一点
并且完全停止。
倒车行驶,执行停车操纵-在这部分中,计算停车路径,以便从当前位置开始达到所需位置。当路径已知时,可导出转向角,并可执行完整的驻车操纵。在路径末端,车辆直线向后行驶,并使用后面的SRU测量到车辆或路缘的距离。当物体离得太近时,系统制动,车辆完全停止。
向前行驶,重新定位车辆-本部分仅适用于平行停放的车辆。系统重新定位车辆,并将其置于车辆前方约1米处。
下图总结了泊车辅助系统的算法流程。
可视化特征
驱动程序控制台(GUI图)为用户提供了播放演示的机会。用户可以选择停车策略以及车辆应停在的道路一侧。此外,初始速度和期望速度可以在一定范围内设置(见下表)。
显示屏进一步显示车辆档位、方向盘角度、速度、制动压力、油门和状态。这样,用户可以容易地监视车辆。
除显示外,还包括实时图形作为显示主车辆(红色)、扫描环境(蓝色)和轨迹(黑色)的可视化特征。在实践中,这可能增加驾驶员对系统的信心,并改善他们的协作。
注意:车辆通过其边界框而不是其实际形状进行可视化。这可能会导致超声波图上出现一些错误的碰撞(边缘)可视化
系统功能、假设和限制:
·传感器没有漂移、噪声或距离不确定性。
·系统能够动态地重新定位被跟踪对象。
·对所有周围区域进行持续监控,以检测和识别可用停车位。
·该系统不适用于弯曲道路。
·停车轨迹假定车辆相对于停车车道的完美平行起始位置。
·通过驾驶员控制台(GUI)向驾驶员通知车辆状态(搜索停车、执行机动等)。
·如上所述,车辆速度存在限制。
·系统将汽车停放在第一个可用的停车位–>用户只能使用GUI决定是否将汽车停放到停车位或平行停车配置中,而不是确切的停车位置。
·自动停车模块分别遵循平行和间隔停车的预定义操作,因此不可能在操作过程中停车。
·自动停车功能是使用路径跟随器设计的,因此,如果没有路径跟随器,系统不能直接使用。
·该系统不适用于弯曲道路。
注意:请注意,驻车辅助控制器已针对驻车辅助测试场景进行了优化,当在定义的测试场景之外使用时,无法保证控制器的性能。
驻车辅助控制器处理来自以下方面的信息:
·带预览的路径跟随器
·超声波传感器
并将车辆的动力学模型馈送,并将初始速度和期望速度提供给具有预览的路径跟随器。
4.如上图所示连接AP_DEMO块输入和输出,注意:
·AP_DEMO块需要连接到路径跟随器_Preview块的输出。
·车辆信息(位置[x,y,y]和速度[m/s])是车辆速度,应取自自块。
·传感器读数(传感器背面、右侧和左侧)需要分别与超声波1、2和3 demux块连接。
·V[m/s]输入需要与Dynamics_Simple块输出连接。
·要连接档位输入,请使用Simulink块总线选择器,并从性能参数(Dynamics_Simple块的输出)中选择档位[-]信号。
·转向角[deg]、制动压力[bar]、油门、V0和自动换档输出应与Dynamics_Simple块输入连接。
·初始和期望速度[m/s]输出应与PathFollower_Preview块上的相应输入连接。
PathFollower_1
来自PathFollower_Preview的主车辆控制输出(制动、转向、油门等)。
[-]
位置x、y、y
车辆在x、y和y方向的实时位置。自块输入。
[m,m,deg]
速度
车辆的实际速度。来自自块的输入。
[m/s]
传感器_返回
从超声波传感器1块输出。
[-]
传感器_右
从超声波传感器2块输出。
[-]
传感器_左
从超声波传感器3块输出。
[-]
五、
由Dynamics_Simple块计算的主车辆速度。
[m/s]
排挡
来自Dynamics_Simple块的主车辆档位。
[-]
Output parameters
速度
请求的车辆初始速度{由用户在GUI中设置}
[m/s]
期望速度
请求的车辆期望速度{由用户在GUI中或通过泊车辅助算法设置}
[m/s]
Delta_Steer
转向角
[deg]
掐死
节气门百分比
[%]
制动压力
制动压力
[酒吧]
v0
初速度
[m/s]
自动变速
传动装置
[-]
必须初始化驻车辅助系统模型的一些设置。它们可在驻车辅助系统模型的汇编表中编辑(双击AP_DEMO块)。
双击AP_DEMO块,将显示一个遮罩窗口(下图):在此可以编辑倒车辅助参数;
·车身长度[m]-主机车辆车身长度:在GUI中主机车辆模型对象配置/动力学/自定义/动力学/BB长度下可用
·车身宽度[m]–主车辆车身宽度:在GUI中主车辆模型对象配置/动力学/自定义/动力学/BB宽度下可用
·轴距[m]–主车辆轴距(a+b):在主车辆模型对象配置/动力学/自定义/动力学/a,…/b下的GUI中可用
·后距离[m]–从主车辆重心到后轮的距离:在GUI中主车辆模型对象配置/动力学/自定义/动力学/b下可用
·后悬[m]–主车辆后偏移:在GUI中主车辆模型对象配置/动力学/自定义/动力学/偏移下可用
·前悬伸[m]-主车辆前偏移量:(=车身长度-轴距-后悬伸)
·后履带轮胎宽度[m]–主车辆后履带轮胎的宽度
·马克斯。车轮角度[deg]–主车辆车轮的最大转向角
·转向比[-]–从方向盘角度到车轮转向角度的主车辆转向比
·搜索传感器范围[m]–搜索区域(左/右)超声波传感器的范围:
·搜索传感器XOffset[m]–搜索区域(左/右)超声波传感器的X位置(与主车辆重心的X距离)
·搜索传感器YOffset[m]–搜索区域(左/右)超声波传感器的Y位置(与主车辆重心的Y距离)
·最小停车位[m]–停车位配置中主车辆的最小允许停车位–>应大于车辆宽度
·平行停车偏移量[m]-假设其他车辆正确停车,根据主车辆长度和转向角/配置计算平行停车位。该偏移量被添加到计算的停车位,以考虑停车车辆的宽度和非理想停车车辆的配置,以避免平行停车操作期间的碰撞。
注:主车辆参数在主车辆模型对象配置/动力学/自定义/动力学下的预扫描GUI中可用
3.驻车辅助显示模块和视觉效果
显示模块是一个MATLAB GUI(图形用户界面),用于显示主车辆的主要参数。显示模块已作为驻车辅助控制器的一部分。
In order to enable the host vehicle visual effects, do as follows:
1.The block wheel_Z_disp will enable the suspension compression/extension due to the vehicle’s pitch. Its inputs and outputs are connected, keeping in mind that:
·The rotY [deg] input represents the pitch angle of the host vehicle and is taken from the SELF block (Roty [deg] output)
·The block’s outputs has to be connected to the VISUWheels_Mux block
·Fill-in the mask parameters by double click on the wheel Z disp block
要启用主车辆视觉效果,请执行以下操作:
1.块轮_Z_disp将由于车辆俯仰而启用悬架压缩/伸展。其输入和输出是连接的,请记住:
·rotY[deg]输入表示主车辆的俯仰角,并从自闭塞(rotY[deg]输出)中获取
·块的输出必须连接到VISUWheels_Mux块
·双击滚轮Z显示块,填写遮罩参数
2.通过将TSR控制器的制动灯输出连接到VISULightSource_Mux块的制动灯输入,可以实现制动灯的可视化。
泊车辅助系统提供预扫描场景
实际发生的
·ParkAssist_Scenario_001:城市直行道路场景,停车场位于道路的左侧和右侧,采用间隔和平行配置。该场景包含26辆车:1辆主动车和25辆被动车。
·倒车辅助系统_Scenario_002:停车方案1,车辆未对齐
1] Reeds,J.A.和Shepp,R.A.,1990,《向前和向后行驶的汽车的最佳路径》,太平洋数学杂志,第145卷,第367-393页。
[2] Choi,S.,Boussard,C.和D’Andrea-Novel,B.,2011,《自动平行停车的简易路径规划和鲁棒控制》,第18届IFAC世界大会论文集,第18卷,第656-661页。
如果您想在场景中调整车辆的起始位置,则应考虑超声波传感器范围决定了与停车道的最大垂直行驶距离。最小距离取决于机动。下表给出了概述。