carsim与simulink联合仿真轨迹规划及跟踪

一、仿真目的

测试六次多项式轨迹规划方法(python实现)及mpc轨迹跟踪控制(python实现)的效果。首先由轨迹规划模块生成给定环境中的车辆轨迹,然后使用carsim和matlab联合仿真,观察轨迹规划及跟踪的效果。

二、carsim和matlab版本说明

最开始使用carsim8.02配合matlab2013a,结果carsim中link to simulink的时候无法识别到matlab。更改快捷键的属性后carsim可以识别matlab,但是simulink中无法找到carsim s-function模块。经过过次尝试,发现carsim2017和MATLAB2016a可以完美的匹配到一起。

三、carsim中车辆及工况设置

这里直接采用软件自带的E类车,目标车速为0,制动和转向设置为空,换挡采用自动挡,工况设置如图。中间列可设置仿真开始及停止时间,右侧栏可以设定仿真动画中出现的plot.
carsim与simulink联合仿真轨迹规划及跟踪
道路采用自建的L形道路

carsim与simulink联合仿真轨迹规划及跟踪

四、carsim和simulink联合仿真

1、carsim链接simulink文件

选择model下拉栏中的Models Simulink
carsim与simulink联合仿真轨迹规划及跟踪
新建数据集

carsim与simulink联合仿真轨迹规划及跟踪
在新建的mysimulinkmodel数据集的Simulink Model中导入新建的simulink空白文件,如图:
carsim与simulink联合仿真轨迹规划及跟踪
到目前为止,carsim和simulink连接已经建立好

2、确定carsim输入输出接口

如图建立,输入输出数据集。import数据集指定了simulink中传递给carsim模型的控制变量,export数据集指定了从carsim传出的模型状态值。

carsim与simulink联合仿真轨迹规划及跟踪
确定输入输出时可以通过选择choose run to get import information来从已有的仿真模型中获取可以作为输入输出的变量名
carsim与simulink联合仿真轨迹规划及跟踪
这里选取的是变换车道的仿真模型。在图中1处点击View spreadsheet可以在excel中获取所有可用于导入的变量及相关定义。图中2处可以通过不同的方式显示变量。
carsim与simulink联合仿真轨迹规划及跟踪

五、建立simulink模型

点击sent to simulink可以打开与carsim关联的simulink文件,在simulink中选择CarSim S-Function模块
carsim与simulink联合仿真轨迹规划及跟踪
该模块中vehicle vode指车辆代码,两个字母分别表示前悬和后悬的种类,根据车辆类型而定,这里是i_s。Simfile name填写Simfile.sim即可。

carsim与simulink联合仿真轨迹规划及跟踪
在simulink中根据需要建立如图所示模型,这里是要测试mpc的轨迹跟踪效果
carsim与simulink联合仿真轨迹规划及跟踪建立完模型后保存,在carsim中选择run now,模型编译成功,在vedio中可以看到仿真效果。