Carsim-怎么调试?(以车辆非正常终止为例)

一、故事经过

这几天刚开始接触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)的目录

扫描二维码关注公众号,回复: 14766782 查看本文章
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、一定要边学边实践

我们学习一样新技能的时候,习惯性地去某站把整个教程过一遍,这样不仅费时费力,而且效率低下。一定要边打仗边学习

猜你喜欢

转载自blog.csdn.net/DSK_981029/article/details/121996886
今日推荐