目前车辆仿真最常用的组合是carsim和simulink,主要用于MPC或者LQR等汽车传统控制的控制器仿真,以及ACC车道保持视觉处理模块的仿真方面,还没见到用Carsim+simulink做学习方面的案例。simulink拿到环境信息和车辆的状态信息可以做进一步地处理,比如做规划和控制,然后自定义输出送回carsim的环境中,下面是一个基本的simulink框图,红色的vs_sf就相当于carsim这个软件。
在一些例子里目前的matlab版本预留了python的API,我们可以从python中直接调用matlab中定义的函数、变量以及simulink模型,python环境中需要安装matlab引擎库:
安装用于 Python 的 MATLAB Engine API- MATLAB & Simulink- MathWorks 中国
配carsim+simulink+python环境的时候,需要在matlab里面添加carsim和python的路径,不然会提示找不到:
数据交互通过python中的代码编写simulink控制语句,设置pause_time及断言模块实现数据收发,simulink中constant模块可以作为输入,to workspace模块作为输出,不能用from workspace作为输入是因为一旦仿真开始数值就锁定了,不能数据交互。Python与Matlab交互
目前还有一个问题是不能并行训练,看各位有没有什么想法