无人车系统仿真相关软件介绍-Carsim

封面图片来自网络

今天分析一下carsim这个软件。

事实上我用carsim用的不是很多。

只是因为用过几次,所以想简单介绍一下。

我大部分时间都是在用prescan。

偶尔用carsim还是因为想在prescan里面实现高自由度车辆模型的仿真。

但是, 这并不是说carsim不好。

相反cars相当强大。

为啥我不用呢,因为我觉得prescan就足够了。

还有就是我不喜欢carsim的GUI。。。

软件简介

不废话,下图是carsim官网。

https://www.carsim.com/​www.carsim.com

Mechanical Simulation

Mechanical Simulation​www.carsim.com

无人车系统仿真相关软件介绍-Carsim_第1张图片

Mechanical Simulation 官网

如大家所看到的,carsim只是Mechanical Simulation cooperation的一个产品。他们还有truck sim,bikesim ,Suspension sim等等各种各样的sim.(这里sim指的就是simulation的意思)。提供各种SIL,HIL仿真,33家OEM验证,给150家公司提供服务。厉害厉害

强大的功能,强大的阵容

据我所知,carsim才是研究车辆动力学中的标配。价格也比dSPACE的工具链便宜很多。所以各大高校也都在用。

$20,000 Desktop systems to $100,000,000 full-vehicle simulators.

Driving Simulators​www.carsim.com

无人车系统仿真相关软件介绍-Carsim_第2张图片
无人车系统仿真相关软件介绍-Carsim_第3张图片

大学生方程式赛车建模仿真

不仅如此,因为很多人使用,carsim的培训资源非常丰富。中文也有很多资料。所以学起来相对容易一些。

他还提供下面这种仿真软件+硬件的设备。

无人车系统仿真相关软件介绍-Carsim_第4张图片
无人车系统仿真相关软件介绍-Carsim_第5张图片
无人车系统仿真相关软件介绍-Carsim_第6张图片

说出来可能你们不信,这个东西要比想象中的要复杂很多。

我们之前买了一套没有软件加持的纯硬件。

所以要连接硬件和软件和图像。当然图像是通过carsim自动生成的。那么唯一的问题就是软件和硬件。但是连接I/O比想象中的要难。因为这又涉及到嵌入式(硬件的单片机+pc)系统的通信,CAN信号读取,实时反馈信号给方向盘和底座上的roll,pitch,yaw控制系统(也算一种悬架)。最终不了了之,可能是因为我菜把。。

平台

跟dSPACE,prescan一样,我用carsim也是基于SIMULINK的。

当然,carsim对各种第三方平台也都很友好。提供多种interface。

无人车系统仿真相关软件介绍-Carsim_第7张图片

支持各种第三方软件

仿真

软件如何使用呢,这里简单介绍一下。

打开软件。选择要使用的数据库(就是包含车辆各种信息的数据)

无人车系统仿真相关软件介绍-Carsim_第8张图片

然后就能看见我们的车子了。这里我们可以调试,改变车辆的所有参数。车身参数,悬架,前后轮详细数据等等都可以调节。非常细致。如果对车辆本身参数没什么要求,我们也可以直接用他们提供的demo车。

事实上,在研究自动驾驶算法的时候,车子本身的参数我们能获取就好,不至于说我要调节某个参数。细调某个参数并不断进行测试的是整车厂应该做的事情,不是自动驾驶工程师该做的事情。并不是说他不重要,而是各有各的职责。没必要越界做自己不适合做的事情。

无人车系统仿真相关软件介绍-Carsim_第9张图片

配置车辆参数

构建场景并进行可视化操作。下图是他们demo的一个视频展示。可以看到图像质量还是很不错的。黄色箭头是每个轮胎受的力。

实际上这些就是carsim提供的大部分功能。

自动驾驶更重要的是算法,车辆本身的控制相对来说就没那么重要了。

无人车系统仿真相关软件介绍-Carsim_第10张图片

车辆仿真可视化

当然,ADAS相关的东西也是必不可少的。虽然我没有用过,但是通过carsim的GUI,相信应该比较容易上手,且功能也应该相当强大

无人车系统仿真相关软件介绍-Carsim_第11张图片

ADAS 场景

无人车系统仿真相关软件介绍-Carsim_第12张图片

场景配置,传感器配置

无人车系统仿真相关软件介绍-Carsim_第13张图片

传感器识别物体的方式

下图是carsim在simulink里面应用。 可以看到最左上端有个红色的小车模块,名字叫carsim s function。这个小模块里面就包含了所有在carsim里面设置的参数及相关的动力学仿真。

我们使用的时候,只要在carsim设置input和output,调用特定output的时候,用simulink的mux模块拆开(如果你愿意,可以把这些再用CANbus 模块绑定起来使用)使用。其余的功能就是simulink可以提供的了。比如数据记录,可视化,数据图表生成。

控制模块由simulink 提供,carsim提供车辆动力学仿真模型,还有就是车辆运行场景可视化,传感器仿真等一系列操作。

比如下图中就是carsim提供车辆动力学计算,场景可视化,simulink提供ABS算法,数据记录及可视化。

无人车系统仿真相关软件介绍-Carsim_第14张图片

Carsim实际使用:ABS的仿真

总结

总的来说,carsim是一个非常强大的车辆动力学仿真软件。非常值得学习。

ASM,carsim,prescan都是类似的概念。

这些软件提供车辆动力学仿真,场景构建,传感器构建,数据interface构建,然后再由SIMULINK平台构建控制算法。

复杂程度:ASM>Carsim>Prescan

上手容易度:Prescan>Carsim>ASM

适合用来做自动驾驶算法验证:Prescan>Carsim>ASM

学习资源:Carsim>Prescan>ASM

专业程度:Carsim>ASM>Prescan

图像生成质量:Prescan>ASM>Carsim

价格优势:Carsim>Prescan>ASM

说到价格优势,其实还有一个很强大的软件叫Matlab! 实际上matlab也提供自动驾驶toolbox。只要1000rmb左右,非常便宜。配合matlab的机器学习工具箱,robotics 工具箱,做自动驾驶算法验证应该是足够了。下次有机会分享matlab这个toolbox的使用心得。

谢谢支持,各位看官的关注就是持续更新的动力~

看完就别吝啬点赞加关注啦~

同时也希望朋友往咱们专栏投稿,让我们在无人车算法的造诣上不停的成长~!

你可能感兴趣的:(无人车系统仿真相关软件介绍-Carsim)