欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

PreScan实现车辆队列控制仿真1-详细步骤

最编程 2024-01-11 18:05:49
...

1. 场景搭建

打开prescan,拖拽下图Straight Road到编辑区,改变道路长度和宽度至期望值
在这里插入图片描述
拖拽下图的三种车辆至编辑区,然后修改每个车辆的location,保证他们在y方向的坐标一致(纵向控制只涉及x方向的控制),并且之间保持着一定的初始距离。
在这里插入图片描述
搭建的场景如下图所示,可以适当添加交通标识与建筑物,尽可能还原真实的驾驶场景
在这里插入图片描述
点击下图所示按钮,打开3d可视化窗口
在这里插入图片描述
在这里插入图片描述
只涉及运动学模型,需要手动对每个车辆进行如下设置,才能在simulink文件中看到车辆的加载

在这里插入图片描述
Build编译工程,然后激活simulink
在这里插入图片描述

在这里插入图片描述

2. 算法加载

等待matlab初始化完成,找到工程所在的文件夹,并在其中选择slx后缀的simulink文件,双击打开
在这里插入图片描述

进入到prescan的编译表中,可以看到如下图片,每个车图标都代表场景中的一辆车
在这里插入图片描述

(1)队列领航车算法配置

双击进入第一辆车的编译表
在这里插入图片描述
点击车辆动力学模块左下角的箭头,增加如下两个in组件,分别表示需要控制的车辆位移和速度
在这里插入图片描述
使用matlab function模块进行领航车速度设置, 领航车做 加速—匀速 运动,m代码如下

function y = fcn(t)
if t<=10
    y=t;
else
    y=10;
end

将速度接口连接上,并根据运动学,对速度进行积分得到位移
在这里插入图片描述
使用goto模块接受领航车辆信息
在这里插入图片描述

(2)队列跟随车算法配置

在这里插入图片描述

3. 仿真结果

运行仿真,自动打开3d窗口,使用示波器观察结果
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
算法省略了,感兴趣的可以看看我的资源,都是有参考文献的