参考教程:01 新建工程及通道配置_哔哩哔哩_bilibili
1、CAN IG
(1)用户可以使用CAN IG发送自定义的报文或者是数据库里的报文到CAN总线上。
(2)CAN IG模块的添加与配置:
①在Simulation Setup窗口中右击选择“Insert CAN Interactive Generator”。
②添加完成后双击CAN IG模块,就可以打开CAN IG的配置页面,其中上方是工具栏,往下第一个区域是报文发送列表,第二个区域是信号或者原始数据列表。
(3)使用CAN IG发送一条自定义报文:
①报文的定义:点击“Add CAN Frame”,可以添加一条自定义发送报文,用户可对其信息进行配置,比如报文ID、发送通道、数据类型以及DLC(数据段长度)等。
②发送方式的配置:CAN IG支持多种报文发送方式,比如手动发送(默认)、按键发送、周期性发送以及基于其它报文或系统变量发送等。
[1]在手动发送方式下,需要点击send按钮以触发报文发送至CAN总线上,点击一次则发送一条报文。
[2]点开Trigger的下拉框,可以选择其它发送方式。在“On key”选项下设置某个按键,在工程运行时按下键盘上对应的按键即可发送一条报文;激活Periodic,可以设置发送间隔,这样在点击send按钮后,报文就会以这个发送间隔做周期性发送;激活Frame/System Variable,这是基于其它报文或系统变量的发送方式,可以选择总线上特定ID的报文,这样,当总线上发来一个该ID的报文时就发送一次报文,当然,也可以选择某一个变量。
(4)按照下图所示可以添加一条数据类型为FD的报文(数据段长度可达64字节)至发送列表,同自定义报文一样,也需要由用户对一些相关信息和内容进行配置。
(5)点击下图红箭头所示的按钮,可以获取CANoe中加载的数据库,选择数据库中的报文,点击“OK”即可将报文添加至发送列表中,报文中的属性会按照数据库中的设置一并自动导入,一般只需要设置数据段的内容和报文发送方式即可。
①与之前不同的是,报文的数据段内容会按照数据库的定义解析为不同的信号,可以修改信号值(原始值Raw Value或者转换后的物理值Phys Value)而间接修改报文数据段的内容。
②信号列表中集成了一个信号发生器(Generator Control),它支持设置信号曲线形状(Generator Type,如下一图所示)及相关参数(如下二图所示)。
③信号发生器可以随时打开或者关闭。
2、Visual Sequence(可视化序列)
(1)借助Visual Sequence可指定简单的报文传输序列,以及进行总线通信的一些相关检查,当然还有更多其它功能。
(2)Visual Sequence模块的添加与配置:
①在Simulation菜单中找到“Automation”,点击它即可。
②点击下图红色箭头所示按键,可以新建一个序列,软件中已经封装好一些命令(比如Check检测命令、控制命令、报文发送指令、等待指令、输出指令等),用户直接进行设置即可。
(3)假如需要定义一个命令序列以一定的时间间隔周期性地发送两条报文:
①使用Set CAN Raw Frame命令自定义一条报文(ID为0x1A)。
②使用Set CAN Cyclic Raw Frame命令设置自定义报文(ID为0x1A)的发送周期为1000ms,且本条自定义报文发送后500ms将要发送另一条数据库中的报文。(需要注意的是,这条指令的功能不是发送一条报文,而是设定报文发送周期和与下一条报文发送的时间间隔)
③使用Set CAN Cyclic Frame命令设置数据库报文的发送周期为1000ms。(需要注意的是,这条指令的功能不是发送一条报文,而是设定报文发送周期和与下一条报文发送的时间间隔)
④如果想要修改数据库中的一些相关信号,可以使用Set指令。
⑤如果希望这个指令序列执行3秒后结束,可以使用Wait指令。
(4)按下下一图所示按钮,可以对设定的命令序列进行检查和编译,只有序列正确无误才能够被执行。
(5)命令序列的执行可由下一图所示按键控制;如果希望在CANoe工程启动时自动执行命令序列,则可激活下二图所示的选项;如果希望命令序列循环执行,则可激活下三图所示的选项;如果希望命令序列执行至CANoe工程停止,则可激活下四图所示的选项(相当于在最后设置了一条等待无限长时间的Wait指令)。
(6)在命令序列没有执行时是可以对其进行修改的,修改完成后要再次进行检查和编译。比如在上例的基础上可以添加一条新命令Check,其在本例中的作用是检测发动机的转速EngineSpeed是否大于0,检测结果会输出在write窗口中。
(7)可视化序列支持调试,激活下图所示的选项即可进入调试模式,命令可以根据用户的指令逐条执行,或者用户可以设置断点,命令序列执行到断点处将会停止。
(8)点击“Configure”选项,可以设置指令执行的结果输出到write窗口或者外部文件(如Excel表格)中。