carsim
📖 阅读信息
阅读时间:8 分钟 | 中文字符:3028
整体初步介绍¶
功能¶
- 求解运算车辆的动态特性
- 可视化的后处理——视频、曲线图
- 有一个强大的 GUI 界面(与用户交互的)
使用的步骤¶
中文指导的帮助文档¶
- database:打开的时候需要选择的东西
一个大的数据集 - library:点击会进入不同的界面中(灰色的就是当前的界面)
就是一个功能快捷方式

- 比如点击转向 (steering),进入转向的设置
- dataset(工具栏中):
点击之后只有一个,但是可以自己搭建(数据集)
也就是在功能模块中进行设置之后就会有数据,保存在这里,想要不同的参数集就可以切换
主页面¶
在 library 中来到我们的主页面中
- 三部分
- 第一部分:车辆和测试的工况设置
- 中间:求解器的设置
- 最后:后处理的设置
- 这个视频中可以暂停和调节(和视频一样)
- 还可以再 view 中点击
time后面那个 - 再下面那个先进的控制
- 可以以一个时间步步进
- 视图调节
video+plot
既有视频,还有对应的曲线

比如我们看纵向车速的关系,可以双击,直接变大图;再双击就还原了

按快捷键 c:显示某个时间的实际值
快捷键 v:目标值
pgdn:下一个视图
↔️键:移动时间
左键选择区域,按住中键缩放,右键进行移动
按快捷键 r 或者双击右键还原视图
在坐标轴的位置同时按着左右键,可以进行分度值的放大缩小(比例尺)
- 按着
ctrl+⬆️或者是ctrl+⬇️得到最大值和最小值 - 在空白处点击右键,也有很多的附加功能
- 也能按
F1或者是 help 查看快捷键
怎么新建新的:
- 点击上面的 plot 新建一个空白的图
- 点击
view,点击 data manage- 选择自己想要的参数,左键拖到图像中
- 在 plot 中还有一些默认的、常见的图像;可以快速对的建立
图的上面可以调节这几幅图的布局:
在初始的页面的右下角,点击 view 就能看见此时的参数(右下角的下拉菜单可以切换,得到此时的模式下的参数(view))
快速开始仿真的小例子¶
我们之前使用的 dataset 是简单的演示数据集
新建 dataset¶
- 还有一种复制的方法是文件中——newdataset(有很长的后缀哪里)
- 选择类别(就是 dataset 中大的一栏)
左侧的设置¶
在修改的页面可以撤销和反撤销
back 和 forward 可以实现界面的返回
- 右下角可以查看三个 dataset(一个参数的参数树) 文件之间的区别
- 使用工具栏中的 tool->compare 进行对比
- 蓝色的代表一个参数集(相同的这个修改一下就会全部修改),打开不同的页面有不同的参数(看 dataset 就行),不同的页面下亦可以 Duplicate 新的集
- 在不同的 library 下都可以新建 dataset,也可以进行 copy
新建图像
还可以在主页面中 more plot:

点击这个蓝色的东西就可以设置了
选择此时的 dataset: (自己计算好的参数)

x 轴就按照时间选择
y 轴可以先按照部位筛选
右键不松可以查看这个变量的详细解释

如上图的设置
改标题和分类¶
- edit
- 改变标题和分类
打开别人的 dataset¶
- 文件——>近期的 database——>2021
- 选择中间的新建窗口

现在就有两个了
打开这个新的的 plot setup (在 library 中) - 回到我们自己的文件中
- 同样的,车辆、道路这些设置也是可以导出的

就能把所有的都导出去
现在我们看
就有更多的车辆配置了 - 同样的,其他的配置也是可以的
library 的名字
好像就是页面此时的左上角显示的名字
链接¶
怎么看当前的 dataset 连接到哪些上级的 dataset
使用哪些默认的 dataset
复制使用
因为修改一个的话,会影响上层的 dataset,所以要新建复制一个新的
library-run control¶
- 左侧为车辆模型
- 中间是求解器的设置
- 右边是后处理
左侧¶
上¶
- 最上面的数学模型:
现在使用的比较多的就是我们的整车模型:

选择了这个之后,我们就可以从我们导入的库中选择我们的车辆模型了,我们现在选择 A 型车- 我们点击这个车型进行修改
- procedure(下面的这个,是最常用到的)
也就是驾驶员模型,可以选择这个车辆是怎么开的
同样选择一个数据集 120 km 这个- 点击进行修改:
左边为车速、制动系、转向等等
当我们使用 simulink 联合仿真时,我们可以选择不在此处进行控制,然后接入 simulink 的控制接口 - 我们修改的时候应该新建一个 dataset,防止修改原有的
- 点击进行修改:
- 更多的数据这里,我们可以写一些代码(命令行)
- 再下面,有路面和力的一些设置
- 最右边还有图像的设置
中下¶
中间有三个(carsim 是一个从上到下读取,所以下面的会覆盖掉上面的设置)
- 想临时修改的时候就可以这样做
中间¶
中部¶
可以设置开始和停止的条件(在驾驶员模型中也可以设置)(时间和距离满足一个就会开始/停止运行)
运行这里
可以点击 simulink 进行联合运行
点进去之后选择一个模型

输入接口(就是 simulink 到 carsim 的输入)和输出(就是 carsim 的输出)接口
输入就是
选择一个(在外面进行选择),点击 send to simulink

就会自动打开 simulink

上面就是 carsim 中的 ABS 的模型的 simulink 的显示

打开已有的文件(dataset),然后才能点击 send to simulink(也就是得在外面选中的,之前的都是新建的 simulink)
- 再下面还有输出文件的格式和输出文件中输出的变量
- 实时动画
联合仿真完成之后就可以运行得到结果
然后查看我们的运行动画 - 时间步的设置:
- 数学的时间步
- 输出模型的时间步
算力比较高的话可以把时间步调的比较大
- 还可以在 tools 工具栏最下面的参数设置进行时间步的设置:
最下面的更高级的设置
选择一个已经存在的仿真测试
继续进行仿真
最下面的 overriding data,这里的设置是最高级的
但是这里设置之后要有动画的话,要勾上 advanced 那里的两个键
library: vehicle 1¶
现在我们学习 vehicle 这个 library
assembly¶
设置这个
-
首先是簧上质量:

创建一个新的簧上质量,下面是各个参数的解释
车轮、车宽、四个轮子的中心高度
无载荷的情况下质心距离前轴和地面的高度,0 为质心距离中心平面的距离
还有加入是一个挂车的话,可以看见挂钩的高度- 还有下面的这些:
汽车理论中的一些参数:

惯性积,还有就是三个轴的转动半径(两者是相关的,填其中的一个就行)
最右侧的:
| Text Only | |
|---|---|
1 2 3 4 | |
我们还可以选择从整车出发设置簧上质量(和上面的那个是不同的方向)

参数
with load, sensor¶

现在能加上一堆东西,传感器、负载什么的,还能加上拖车(trailer)

挂车的设置和车的设置是类似的,可以设置质量、空气东西学、动画效果,脱钩的特性
这里的一些动力学模型自己要理解
library: vehicle 2:¶
空气动力学的设置¶


认为整车收到的风阻作用于参考点的三个力和三个力矩
中间可以设置参考点的位置(x 轴为轴距的一半)
还可以设置阻力系数

这个系数可以是个恒定值,也可以是一个随着角度变化的值
线型、二维的、三维的
还可以换到另一种空气动力学的设置:

中间部分是看受不受到俯仰角、垂向位移的影响

能看见上图的三维的模型
PID 控制¶
- 开环
机器人的输出会不会影响机器人的输入
但是如果机器人在前进的过程中发生偏移,就不行 -
闭环
提高系统控制的精确度 -
P:比例——使得被控对象去弥补误差
- D:微分——减小震荡的幅度
- I:积分——对误差进行积分,使得最后误差趋于 0



























