从零开始学习CANoe(十五)—— Graphics
Posted 蚂蚁小兵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从零开始学习CANoe(十五)—— Graphics相关的知识,希望对你有一定的参考价值。
相关文章
从零开始学习CANoe(一)—— 新建工程
从零开始学习CANoe(二)—— CANdb++ 创建 dbc文件
从零开始学习CANoe(三)—— 系统变量的创建和使用
从零开始学习CANoe(四)—— 设计panel
从零开始学习CANoe(五)—— CAPL 测试节点
从零开始学习CANoe(六)—— XML 测试节点
从零开始学习CANoe(七)—— .NET 测试节点
从零开始学习CANoe(八)—— IG 模块
从零开始学习CANoe(九)—— 断点调试(Debug)
从零开始学习CANoe(十)—— 信号发生器(Signal Generator)
从零开始学习CANoe(十一)—— Statistics Window
从零开始学习CANoe(十二)—— Trace Window
从零开始学习CANoe(十三)—— Logging Window
从零开始学习CANoe(十四)—— 从零开始学习CANoe(十四)——关于Html测试报告
系列用的CANoe演示工程我放在了Git上,不定时根据博客更新。
CANoe-Demn
文章目录
前言
一个小伙伴问到我的问题,答案显然是可以的,后面会讲,顺着这个问题,我也就写了这一博客,详细的介绍下Graphics用法;一般情况下我们用Trace可以解决90%的问题,Graphics是一种以时间轴为横坐标,符号值为纵坐标的显示分析方法,相对于Trace来说,更直观的观察出信号的跳变。
添加 Graphics
1, 右键点击 Insert Graphics Window
,如下图创建一个Graphics 窗口,配置选择默认即可。
2,我们先添加一个信号 EngineSpeed 和一个变量 LightDisplsy
3, 我们创建一个信号发生器,更改信号 EngineSpeed 和变量 LightDisplsy的值,这样做的目的是为了我们在Graphics中更好的观察值得变化,对信号发生器不了解的可以参考我之前的博客 传送门
4, 下图是我们Run工程后的结果
Graphics 工具栏详解
接下来我们逐个对工具栏的功能进行解释说明
Y轴的显示方式
1,如下图,信号或者变量在图标中显示,系统给了三种方式,分别如下图所示,下面我们对比下三种的不同之处。
- 第一种
- 第二种
- 第三种
信号添加和显示的一些设置
如下图,这个功能是隐藏和展开 添加信号这一栏的
- 在信号的地方右键可以调出显示列的添加和删减,具体如下图1,2,3,双击可以添加想要显示的信息,如果想要删除某一列,需要拖住这一列的名字,把它拖到选择框中
- 在信号栏右键可以弹出下图功能,可以实现添加信号,变量,更改值,以及采样点样式等功能
测量光标
- 前面第一个是左侧线光标线
- 后面第二根光标线,结合使用可以测出 dy 和 dt
图形线条加粗
选择显示模式
模式选择 和图形放大缩小
这个功能要和放大和缩小功能一起使用,选择单个还是多个模式,是为了限定放大和缩小的范围
调节X/Y轴 和图形放大缩小
这个功能要和放大和缩小功能一起使用,选择是放大X轴还是Y轴或者同时放大或缩小,是为了限定放大和缩小的范围。
自适应图形
一般在经过来回的拖动图像之后,可以使用 Fit All Signals 来自适应的恢复图像大小和占比。
微调图形位置
如图表形象的描述,都是微调动图形位置的功能
微调图形位置
如图表形象的描述,都是微调动图形位置的功能
导出Graphics
如下图所示,有四种导出格式
- mdf格式是 Graphics支持显示的格式,也就说,当你导出 mdf格式文件,需要回放的时候可以把文件直接拖到 Graphics 里面即可实现回放
- csv格式的比较好理解,保存到表格,格式如下图所示;
- mat 和sig格式没研究具体用法
Graphics 截图
截图呢,有两种方法,一种是手动截图,一种CAPL脚本的方法;
- 手动,如下图,很简单
– CAPL脚本的方法
我们先新建一个xml node 类型的 testcase(有问题的可以参考我前面博客)
testcase test_02()
{
testWaitForTimeout(5000);
TestReportAddWindowCapture("Graphics", "isCarTiGlb", "Screenshot of Graphic window");//截图
//parameter1: 是windows的名字,可以选择截图 Trace ,Graphics, 等都是可以的
//parameter2: 信号的或者变量的名字 ,格式如下所示,如果信号名没有冲突的情况下也可以直接写写信号名
//Signals: [network::][node::][message::]SignalName
//Environment variables: EnvVarName
//System variables: sysvar::Namespace::SysVarName
//parameter3:图片的名字,这没什么好说的
}
图片是嵌入到测试报告中的,没有单纯的图片保存路径的,结果如下(这张图片跑的时候,没用信号发生器,所以信号一直是0):
总结
感谢小伙伴的支持,时间仓促,经验不足,写的不好或者有错误的地方,还请多多担待和指出,万分感谢。
如果您有CAPL和CANoe模块或者功能不清楚的,也可以评论区留言或者给我私信,看到后一定回复!!!
- 要有最朴素的生活,最遥远的梦想,即使明天天寒地冻,路遥马亡!
- 如果这篇博客对你有帮助,请 “点赞” “评论”“收藏”一键三连 哦!码字不易,大家的支持就是我坚持下去的动力。当然执意选择白嫖也欢迎。
以上是关于从零开始学习CANoe(十五)—— Graphics的主要内容,如果未能解决你的问题,请参考以下文章
从零开始学习CANoe(十九)—— Python和CANoe的数据交互
从零开始学习CANoe(十六)—— Canoe的 I/O功能 (全内外网最详细)