目录
一、故事经过
这几天刚开始接触Carsim,作为一个没接触过车辆方面知识的程序猿 ——> 我刚一上手就懵了。。。
全英文?铺天盖地的各种陌生参数?这里改一下别的,Demo怎么也给我改了?
我投nm…
二、问题经过
上手也快半个月了,这几天在进行simulink与carsim联合live仿真的时候,有了这么一个问题:
功能是用键盘的W A S D
键控制车辆的方向,用live video的方式实时显示。
车子直行:很听话。。。
车子左转:左移那么一丢丢——Live Stop!
车子右转:右移的距离比左移大那么一丢丢——Live Stop!
就TM的一直非正常停止!!!
三、Carsim没有Console?
据我目前所知,好像木有~
所以让我一个程序猿怎么查报错?
查看帮助文档啊...
四、帮助文档是个好东西
搜索关键词:Debug
,出来这么多…其中有一个文档这么写的⬇
看不懂啊…反正里面说的_log.txt
文件目录在下面…
五、查看Results目录下的log运行结果文件
目录:在Carsim的数据库(Database)的目录
D:\Program Files(x86)\CarSim\CarSim2019.0_Data_bak\Results\
//CarSim2019.0_Data_bak是你数据库的名称,防止数据发生改动,我给备份了一份,所以是_bak。。。
里面结果那么多怎么查?
按时间排序啊!!!
就是你了,打开它!
六、将正常退出结果和非正常的两个结果进行对比
分别将两次运行的结果给复制下来做对比,最后几行的log信息如下。
正常退出结果:
Run started: VS output file = D:\Program Files (x86)\CarSim\CarSim2019.0_Data_bak\Results\Run_93616ae3-6896-443c-b39e-eefb52c47d77\LastRun.vsb
Function FY_TIRE_CARPET(1,1) extrapolated (out of range HIGH) for X = 39.0955 deg at T = 0.012
Function MZ_TIRE_CARPET(1,1) extrapolated (out of range HIGH) for X = 39.0955 deg at T = 0.012
Function M_BOOST_G_TABLE extrapolated (out of range HIGH) for X = 11.1528 N-m at T = 0.013
Function FY_TIRE_CARPET(1,2) extrapolated (out of range HIGH) for X = 33.7621 deg at T = 1.332
Function MZ_TIRE_CARPET(1,2) extrapolated (out of range HIGH) for X = 33.7621 deg at T = 1.332
Function STEER_KIN_TABLE(1,1) extrapolated (out of range HIGH) for X = 36.0015 deg at T = 7.815
Function STEER_KIN_TABLE(1,2) extrapolated (out of range HIGH) for X = 36.0015 deg at T = 7.815
Run stopped at t = 60. Stop time reached.
Computational time ratio: RTIME = 1.02025 (real time)/(simulation time)
非正常退出结果:
Run started: VS output file = D:\Program Files (x86)\CarSim\CarSim2019.0_Data_bak\Results\Run_93616ae3-6896-443c-b39e-eefb52c47d77\LastRun.vsb
Function FY_TIRE_CARPET(1,2) extrapolated (out of range HIGH) for X = 33.7936 deg at T = 2.102
Function MZ_TIRE_CARPET(1,2) extrapolated (out of range HIGH) for X = 33.7936 deg at T = 2.102
Function M_BOOST_G_TABLE extrapolated (out of range LOW) for X = -14.7135 N-m at T = 2.103
Function FY_TIRE_CARPET(1,1) extrapolated (out of range HIGH) for X = 35.5638 deg at T = 4.642
Function MZ_TIRE_CARPET(1,1) extrapolated (out of range HIGH) for X = 35.5638 deg at T = 4.642
Run stopped at t = 9.079. Lateral position for tire L1 was greater than the specified maximum of L = 1 for road with ID = 1
Computational time ratio: RTIME = 1.16929 (real time)/(simulation time)
对比发现有一个地方不一样!!!
Run stopped at t = 60. Stop time reached.
Run stopped at t = 9.079. Lateral position for tire L1 was greater than the specified maximum of L = 1 for road with ID = 1
很明显的提示:对于ID = 1的道路,轮胎L1的横向位置大于规定的L = 1的最大值。
就是超边界了嘛!
七、在哪里设置边界?
工况(Procedure) -> 3D Road -> Road Boundaries
把左右边界关掉!
八、问题解决!
九、心得体会
carsim从上周一开始接触到现在也有两个周的时间了,心得如下:
1、要学会查看帮助手册
carsim的文档写的还是比较详细的,英文不好可以下载一个翻译软件嘛!
2、调试信息一定能查到
现在的软件怎么可能会没有调试信息呢?实在不知道怎么找调试信息,那就去帮助文档搜debug
关键字!你一定要相信有些功能是绝对会有的,只不过是使用方法不一样吧…
3、一定要边学边实践
我们学习一样新技能的时候,习惯性地去某站把整个教程过一遍,这样不仅费时费力,而且效率低下。一定要边打仗边学习
!