当您在使用 PCAN-Explorer5 时,如果遇到某个操作功能不太清楚是什么含义,比如某个按键的操作功能是什么,或者某个指令的操作函数是什么 ,应该怎么查看呢?
快捷方法:您只需要在操作当前页面下按 F1 键,就可快捷地打开相应的操作帮助文档,比如,在创建 Plotter 时按下 F1,轻松打开 Plotter 帮助档。
会显示相应的插件 Add-in 的状态:loaded 表示已经含授权
点击 Nets Configuration,弹出网络配置对话框,该窗口中显示了已经连接上的硬件,我这里有两个 PCAN-USB 表示我连接了两个 PCAN-USB 到电脑上。有把蓝色所的连接表示该连接已经通过另外一个软件与电脑连接上了。
点击 View 菜单下的 Receive/Transmit,会出现如下图所示的发送接收窗口,在这里可以显示接收到的报文和要发送的报文。
CAN 总线的 dbc 文件就是 CAN 总线的库文件,通过 dbc 文件,可以将 16进制的 CAN 报文解析为我们容易识别和理解的信号值,如温度,压力等。
但是需要注意的是,导入 dbc 文件后还需要点击应用才可以解析报文。在 dbc文件名上单击右键,选择 Open in Symbol Editor,可以再 Symbol Editor 中看到每个 ID 所代表的信息,具体哪个字节代表什么信号,报文与信号值之间的数学关系等报文的详细信息
1)如果是需要保存特定 ID 号的数值,那么可以按照如下步骤实现,在 tracer窗口中,加载一个事先设置好的过滤器,比如:某客户使用的 ID 是 100-150h,那么可以直接在这里过滤和筛选。如下:
在 tracer 窗口选择上一步设置的过滤器“supplier1”,开始记录这段数据然后保存,如下:
注:以上数据在 tracer 窗口是有解析信息的,双击每一个 symbol,会显示具体详细的 signal 信息:
如果是需要按照信号来筛选,比如同一个 ID 号 442H 有 13 个信号值,只需要保存其中四个信号,这种筛选和过滤可以通过如下步骤实现:
1.借助自带的 symbol editor,点击如下图中的 import,导入 DBC 文件,并对DBC 文件中的变量做修改。
2.选择需要 trace 的某些信号,在每个信号的属性框中有个选项为 trace,如果需要记录这个信号,请打钩(右下角),如下:
3.设置过滤器,选择过滤器类型选择“adjust to marked symbols”:
然后加载这个过滤器并开始记录。这样在 tracer 窗口中记录的数据就是刚刚在 symbol editor 中所选中的信号。
过滤器类型有几种,其中:Adjust to Symbols 表示对所有含有 symbol 或者DBC 文件解析后了的信号才会记录。
而 options 指如下:对一些错误帧或者远程帧等才做记录。
另外,还有一种情况是某些客户需要对已经保存好的数据删除解析信息,那么您可以直接通过 open打开已有的 trc 文件,比如我打开的是 0305.trc 文件,那么会自动打开一个 tracer 窗口如下:打开后的数据默认是会跟之前保存时一样带有解析信息的。
这时,随便新建一个 filter,如下:不用填写任何信息:
点击 OK,然后会出现如下这种只有原始数据,而无解析信息的报文:
使用 Trace 记录报文,其记录报文的数量可以说是不受限制的,只与硬盘的容量相关,按照下图设置即可:
点击此处开始记录,也可点击 Trace 开始记录
当然也可以点击主菜单栏中的 File 中的另存为按钮。
除了可以保存报文为 trc 文件,如果导入了 dbc 文件,在 PCAN-Explorer5 中还可以将各个信号值保存为 csv 文件或者 log 文件,具体操作方法是,点击 File菜单下的 Export:
弹出如下窗口:
在这里可以选择导出为.log 文件还是 csv 文件,并可以设置时间戳的格式等信息。
Line Writer 这个插件的功能也是记录信号,所以需要在使用.sym 文件时,将 CAN 报文解码为一定的信号才可以记录
图中的粗蓝线表示停止之后的重新开始记录。
但是这个插件记录信号有一定的局限性,如最多只能记录 4 路信号,且记录的时间有限,如果需要记录更多更长时间的数据,还是需要使用 Plotter 插件。
PCAN-Explorer5 提供了一个简单的指令集和最常需要的功能的标准宏,可以控制报文的发送和接收。标准宏主要可以实现下面的任务:
为了传输配置数据到一个 CAN 节点,可配置一个按键发送一系列的报文
在特定的时间段里发送不同的报文
在接收到某个特定的报文的时候发送一个响应
模拟一个 CAN 节点,在接到不同的报文的时候给予相应的回答
在 PE5 中,一个标准宏文件以 FormatVersion=5.0 开头,下面就可以是具体的程序。在帮助文档中对每条语句都有详细的说明,并附有例子。
FormatVersion=5.0 文件版本,默认都一样
Send 1 100h 1 AAh 第一个 1 表示总线号,后面 ID 是 100h,长度为 1 的报文
WaitId 0 1 101h
Loop: Send 1 102h 2 12h 34h 这三句是一个循环,表示每隔 200ms 发送 102h 这个报文
Wait 200
Goto Loop
下表是标准宏的所有语句的基本说明
Statement | Description |
---|---|
Call | Calls a subroutine at the given label. |
ClearQueue | Clears the reception queue of the Macro. |
End | Ends the execution of the Macro. |
ExecuteCommand | Executes a PCAN-Explorer command. |
Goto | Continues the execution of the Macro at the given label. |
If | Queries the result flag and invokes a given statement in dependence of the result flag’s value. |
PauseTrace | Pauses the recording of CAN messages. |
Outputs text to the Macro Status window. | |
PrintToOutputWindow | Outputs text to the Output window. |
Repeat | Continues the execution of the Macro from thebeginning. |
Return | Ends a subroutine. |
Send | Transmits a CAN message. |
StartTrace | Starts the recording of CAN messages. |
Stop | Ends the execution of the Macro. |
StopTrace | Ends the recording of CAN messages. |
Wait | Causes the macro to wait for a specified number of milliseconds. |
WaitData | Waits for the reception of a CAN message with specific parameters. |
WaitId | Waits for the reception of CAN message with a specified CAN ID. |
WaitKey | Waits until any key has been pressed. |
WaitMsg | Waits for a message to be received. |
WaitRTR | Waits for the reception of Remote Request CAN message |
标准宏 Standard Macro 的语法非常简单,在 PCAN-Explorer5 的帮助文档中也有详细的说明,按照里面提供的例程很容易上手。而且它的功能也还是比较强大的,实现基本的逻辑判断功能没有任何问题。
下图是一段简单的标准宏语言:
第一行 FormatVersion=5.0 是标准宏规定的说明,是固定的格式;
第二行表示在总线 1 上发送 ID 是 123h,长度为 2,数据为 AAh,34h 的报文,这里的总线 1 是在 PCAN-Explorer5 中的连接窗口中确定的,也可以自己分配,因为 PCAN-Explorer5 最多可以连接 16 个节点总线,所以这个数字最大是16;
第三行表示等待总线 1 上的 ID 为 101h 的报文 1000ms;
第四行是逻辑判断,如果错误,也就是没有等到;
第五行是对第四行的一个响应,如果没有等到就发送这个报文;
下面不再赘述,具体的说明在PCAN-Explorer5 的帮助文档中有详细的说明。
在编辑好标准宏后,如下图,点击开始就可以运行宏了:
当然,在运行宏的同时,PCAN-Explorer5 中的发送和接收、过滤等功能都是可以照样运行的,也就是说运行宏是独立的,不会影响其它功能,而且宏发送的报文也会在发送接收窗口中显示,并可以在 Trace 中保存。
使用 VBScript 宏或者 PCAN-Explorer Add-ins ,可以自动执行常规任务。
一个 VBScript 宏是一个过程,它包含 VBScript 指令,没有任何参数。 Sub语句是一个 VBScript 宏的开始,随后包含执行您希望的操作的 VBScript 命令,最后以 End Sub statement 语句结束宏。 VBScript 宏存储在称为宏文件(Macro file)的文本文件中。
要使用一个 VBScript 宏,您只需运行它即可。如果您希望定期运行它,可以给它分配一个快捷键。然后,您只需按下这个快捷键就可以运行该宏了。
VBScript 宏与 PCAN-Explorer Add-ins 是不同的。最大的不同之处在于,宏程序是用 Visual Basic 脚本编程语言(VBScript)书写的,而 Add-ins 是进程中的COM 组件(DLLs),这些组件可用多数语言书写,如 Visual C++ 或者 Borland Delphi。
创建 VBScript 宏比 Add-in 更加方便和快捷。要创建一个宏,您只需在PCAN-Explorer 环境下书写简短的代码,然后运行即可。然而,如若创建一个Add-in,您就必需使用编程语言,如 Visual C++来编辑代码,然后将源码编译成一个动态连接库 DLL,然后链接到 PCAN-Explorer 中,最后您才可以执行它的命令。
VBScript 宏不如 Add-ins 功能多。宏只能使用 VBScript 语言编辑,而且只能访问 PCAN-Explorer 对象模型。而 Add-ins,您可以使用您熟悉的语言来书写,并且它不仅仅可以访问对面模型,而且还可以访问计算机系统的所有资源。
1.在 Tools 菜单中,点击 Macro。
2.要在一个新的宏文件中插入宏,按下 New File 按钮,然后输入名字和文件的说明。或者向现有的宏文件添加一个宏,从宏文件的下拉列表中选择宏文件。如果 名字不在列表中,则首先安装此文件。
3.在 Macro Name 列表中,输入宏的名称。
4.点击 Edit 按钮
5.在 Add Macro 对话框中输入宏的说明,然后点击确定 OK。PCAN-Explorer打开宏文件并为新文件在文件最后创建一个 Sub 块。如果宏的名字是 MyMacro,那么这个 Sub 块就如: