目录
摘要
1、CANoe工程的新建
2、通过Trace工具查看交互的报文内容
3、通过Logging保存日志文件
4、创建IG发送报文
5、通过Graphics界面抓取信号波形
6、加载cdd文件
7、过滤报文ID的接收
8、其他
摘要
CANoe是德国Vector公司为汽车总线的开发而设计的一款总线开发环境,全称叫CAN open environment。同Vspy一样,CANoe集合了网络监控、数据获取/记录、节点仿真、诊断、自动测试等功能;其丰富的功能和配置选项使其也是常见于汽车电子行业。接下来,我们以9.0版本为例,针对CANoe的常用操作进行介绍,具体分为以下几点:
1、CANoe工程的新建
2、通过Trace工具查看交互的报文内容
3、通过Logging保存日志文件
4、创建IG发送报文
5、通过Graphics界面抓取信号波形
6、加载cdd文件
7、过滤报文ID的接收
8、其他
1、CANoe工程的新建
打开CANoe软件,在工具栏的”File”中点击”New”,双击选择创建的模板 ,再保存创建的cfg工程文件。如下:
2、通过Trace工具查看交互的报文内容
(1)、运行工程:通过点击左上角的开始按键(闪电形状的按键)运行工程;此时会弹出选择CAN通道的界面;若不知道选择哪个通道,可查看“Simulation Setup“界面的”Channels”,如下图。当然这个通道是可以更换的,在”Channels”下进行操作即可。
(2)、使用Trace工具:在”Analysis”下打开”Trace”,若此时CAN上有报文在发送,即可在这个界面下查看到。界面如下图所示,这里对Trace界面下经常用到的几点进行下阐述:
Trace界面提供了多种过滤方式,但一般常用的是通过信号ID进行过滤。具体过滤操作可点击”ID”右上角的图标进行设置(将鼠标移到”ID”处时会显示出)。
可以通过点击下图标志3处的这个图标改变报文的显示模式(将同一ID的报文逐条显示或者只显示最后一次的此ID的报文)
下图标志1处的图标表示清空当前”Trace”界面的报文显示
下图标志2处的图标表示停止/更新”Trace”界面的报文显示
3、通过Logging保存日志文件
前面我们介绍了查看正在交互的报文信号,那当我们需要保存整个报文交互过程,以便后续的分析操作时;我们则可以通过打开Logging功能,将整个报文交互的信息保存下来。具体操作如下:
(1)、日志文件保存设置:打开”Analysis”下的”Measurement Setup”,此时界面下图所示。
右键上图红框中的”Logging”,点击”Logging File Configuration”。此时界面如下图,在这里进行日志文件的保存设置。
(2)、使能Logging功能:经过前面的操作我们完成了日志文件的保存设置;当我们需要保存日志文件时,则可以通过双击下图红框的暂停箭头,打开Logging功能
此时Logging图标状态如下图所示,截止关闭CANoe工程之前,所有的报文交互信号将被记录保存下来;当然在中间过程可以点击下图红框圈起来的暂停按键停止记录。
4、创建IG发送报文
在完成工程的创建后,此时的界面如下图所示。在”Simulation Setup”界面下,我们可对当前网络进行结点的添加、交互生成器IG的添加、dbc的添加等设置工作。这里我们介绍下如何通过创建IG发送报文信号。
(1)、右键”Interactive Generators”,选择”Insert Interactive Generators Block CAN”;此时界面如下图所示;
双击上图中创建出来的CAN IG,此时界面如下图所示。
(2)、右键”CAN IG”界面下上面窗格的空白部分,添加要发送的报文信号。有以下的三种选择:
- 从dbc文件中导入要发送的信号(Add Frame From Database);
- 添加CAN FD信号(Add CAN FD Frame) ;
- 添加CAN信号(Add CAN Frame)
Ps:关于CAN FD (CAN with Flexible Data rate)与CAN主要有以下的两点区别:
- 1、可变速率:CAN FD采用了两种速率;从控制场中的BRS(速率转换开关位)位到ACK场之前(含CRC分界符)为可变速率;其余部分为原CAN总线用的速率。
- 2、CAN FD对数据场的长度作了很大的扩充,DLC最大支持64个字节,在DLC小于等于8时与原CAN总线是一样的。
(3)、创建自定义的报文发送:点击”Add CAN Frame”,此时会添加一条CAN信号;如下图所示,填入要发送的报文ID和信号内容;可选择点击发送或者周期循环发送。此时,可以通过”Trace”面板查看报文是否已经发送
(4)、从dbc中导入要发送的报文:我们也可以从已有的dbc中导入要发送的报文信号进行发送;但这样需要我们先在当前CAN网络导入dbc文件;具体操作如下:
导入dbc:在”Simulation Setup”界面下,右键”Database”,选择”Add”,导入dbc文件(注意需在CANoe工程Stop状态下操作)。界面如下:
导入dbc文件中的报文:回到IG界面,右键点击” Add Frame From Database”,如下图,在前面步骤导入的dbc文件下的“Frames“中,选择要导入的报文信号(可一次添加多条报文进来)
报文发送:完成dbc报文导入后,我们就可以在IG界面对导入的报文进行发送操作了;界面如下:
5、通过Graphics界面抓取信号波形
5.1、在”Analysis”下打开”Graphics” 功能界面;此时界面如下:
5.2、添加要查看的报文信号
(1)、添加用户自己定义的信号:若当前工程没有导入dbc、或者dbc中没有要查看的报文信号,可通过自己定义信号变量进行查看。操作如下:
在”Graphics”界面下右键,选择”User Defined Signals”,此时会弹出参数设置界面,此时界面如下:
对应写入要查看的报文ID、信号起始位、信号长度;点击OK,即可显示出总线上该信号的波形,此时界面如下图
(2)、从dbc文件中导入信号:在”Graphics”界面下右键,选择”Add Signals”,此时会弹出信号选择界面如下图(注意工程里是要已经有添加dbc文件的了);可以直接在”Signals”里选择信号;也可在”Frames”找到对应报文,再选择要查看的信号。
5.3、关于多个信号时的显示设置
(1)、如下图,在信号比较少时,可以点击红框图标(y坐标的显示模式设置),选择”Show Signals in Separate Diagrams”,在独立的坐标里显示信号值。
各个信号的y坐标范围可以直接双击进行设置,界面如下:
(2)、当要查看的信号比较多时,则选择”Show All Y-Axis”,此时的显示界面如下:
6、加载cdd文件
6.1、关于cdd文件
cdd是诊断数据库文件,描述了诊断应用的范围和数据格式,用于优化整个诊断开发过程。Cdd文件的编辑操作是通过”CANdelaStudio”这个诊断协议开发软件来完成。
6.2、加载cdd文件步骤
(1)、在CANoe工程”Stop”的状态下,点击工具栏”Diagnostics”下的“Diagnostic ISO TP”,此时界面如6.1所示;
(2)、右击”CAN”,选择第一个”Add Diagnostic Description”,选择要导入的cdd文件,导入cdd文件后的界面如图6.2所示。
6.3、通过诊断控制台调用cdd文件中的报文进行发送
点击工具栏”Diagnostics”下的”Diagnostic Console”,此时界面如下图所示;便可直接通过诊断控制台调用cdd文件中配置好的诊断报文信息进行发送;不用再去自己在IG中创建报文。
7、过滤报文ID的接收
7.1、通过”Network Hardware Configuration”进行报文过滤
在前面的第2小节里,我们描述了如何通过”Trace”查看交互的报文内容;并简要介绍了相应的过滤操作,其中主要用到的是通过ID进行报文过滤。但”Trace”下的过滤只是将其他显示报文屏蔽不显示而已。打开Logging工具查看保存的文件,其他过滤的报文还是有接收记录着的。若我们想要直接过滤掉某些报文ID的接收,则可以通过在”Network Hardware Configuration”下进行设置。具体步骤如下:
(1)、在CANoe工程“Stop”的状态下,点击工具栏”Hardware”下的”Network hardware”;此时界面如下图所示
(2)、根据当前工程选用的CAN通道进行过滤设置,若不清楚当前工程选用通道,可在“Simulation Setup“界面的”Channels”进行查看。
(3)、设置完成后,此时在”Trace”界面下,以及保存下来的日志文件中,都已经将其他报文过滤掉了(注意若是通过IG创建的发送报文,是不会被过滤掉的)
7.2、通过在”Measurement Setup”界面下插入过滤器进行报文过滤
(1)、如下图,在工程”Stop”的状态下,点击要进行过滤操作的界面窗口前右击 红框内的图标,选择”Insert Event Filter”,其前面会出现 "CFB"的标志(兰框内的图标);(这里是以在”Trace”窗口进行过滤操作为例)
(2)、双击上图中的"CFB"图标,进入CAN过滤的设置界面,按照需求进行过滤设置,此时界面如下图所示:
(3)、此时运行工程,打开”Trace”界面,则可以看到除了指定的这几条报文,其他报文都已被屏蔽掉了。但注意,由于我们前面的例子中加入的CAN过滤器是在”Trace”窗口前面加的,所以其效果也只在”Trace”窗口下有效(只对当前插入过滤器的模块有效);此时Logging模块下还是有对其他报文进行记录的。所以,若我们想要生成的工作日志也过滤掉其他报文,则要在”Logging”文件前也加上CAN过滤器,如下:
Ps:除了前面提到的插入CAN过滤器,在”Measurement Setup”界面下的任意窗口,右击前面的 正方形图标,还可以选择其他一些功能模块,如CAN CAN通道的过滤器、CAPL程序等。如下:
8、其他
8.1、利用工具栏”Analysis”下的”Statistics”可以对各类消息帧的发送频率、总线负载、控制器状态等信息进行统计(在工程”Stop”状态下,在”Statistics”下可以新建总线统计窗口,报文直方图( Frame Histogram )等),窗口如下图所示。由于平时用的不多,这里不做详细阐述了。
8.2、利用工具栏”Analysis”下的”Data”可以对信号值、变量值的大小进行查看监控,并保存信号的日志文件(mdf格式)。窗口如下图所示:
8.3、”measurement setup”窗口和”simulation setup”窗口(如下图)是CANoe的主要窗口,进行数据流规划。需重点掌握这两个窗口的学习。