2017-07-24
kvmlib入门指南
作者:admin 点击:2162
这是使用Kvaser Memorator第二代设备通过kvmlib进行配置和读取记录数据4篇系列文章的第一篇:
1. kvmlib入门指南
2. 在配置中添加脚本和触发器
3. 深入了解kvmlib
4. 使用kvmlib配置SD卡
第一篇文章将概述如何使用Python配置Kvaser设备。第二篇文章在配置上增加了一些复杂性,而第三篇文章将更深入地讲述如何在C API级别使用kvmlib。最后一篇文章讲述在只可访问可移动SD卡的情况下如何配置设备。全部程序列表可在GitHub上获得。
1.1简介
Kvaser Memorator第二代设的配置备通常使用Kvaser Memomorator配置工具完成,它是一种GUI工具。但是你也可以使用包含在CANlib SDK1开发包中的kvmlib来编程配置这些设备。这里b体育(福州)有限公司官网将讲述如何使用kvmlib配置Kvaser Memorator Pro 5xHS2
有关Kvaser SDK库的概述,请阅读这篇关于如何使用Kvaser SDK库从硬件中获得更多信息的博文。
b体育(福州)有限公司官网是在Windows系统上运行,所以首先b体育(福州)有限公司官网需要下载并安装CANlib SDK。本文将使用Python3来访问kvmlib,因此如果你之前没有看过通过Python访问CANlib的博文,那你可能需要首先阅读下。
为了简洁,本博文中的代码片段省略了以下import语句:4
列表1:应包含在所有代码片段中的import语句
1.2初始化SD卡
仅仅在b体育(福州)有限公司官网的操作系统文件管理器中格式化SD卡是不够的,b体育(福州)有限公司官网还需要使用b体育(福州)有限公司官网的Kvaser Memorator设备初始化SD卡。将SD卡插入b体育(福州)有限公司官网的Kvaser Memorator设备后,b体育(福州)有限公司官网将Kvaser Memorator设备连接到b体育(福州)有限公司官网计算机上的空闲的USB端口,并运行b体育(福州)有限公司官网的代码的第一个位,让b体育(福州)有限公司官网看到该设备开始运作。
列表2:使用kvDevice模块连接到Kvaser设备
在这里b体育(福州)有限公司官网注意到,b体育(福州)有限公司官网能够连接设备,b体育(福州)有限公司官网确实使用的是固件版本3.0。现在让b体育(福州)有限公司官网打开设备并且使用默认值初始化SD卡。
列表3:在Kvaser设备中初始化SD卡
1.3创建配置
现在b体育(福州)有限公司官网必须通过编写一段XML代码来创建配置6。有关XML格式最新版本的更多信息,见Kvaser Memorator设备配置XML格式规范文档中相关描述。让b体育(福州)有限公司官网举一个简单的例子,假如b体育(福州)有限公司官网只使用通道1和2。b体育(福州)有限公司官网将这两个通道的波特率设置为1Mbps,并在静默模式下记录一切内容。
列表4:简单的XML配置示例
XML的当前版本是v2.0,b体育(福州)有限公司官网的设备运行的是v3.0版本固件,而b体育(福州)有限公司官网期望运行的二进制版本6.0。
在下一篇文章中,b体育(福州)有限公司官网增加了配置的复杂性,b体育(福州)有限公司官网将研究如何在尝试下载配置之前将其进行显式验证。现在b体育(福州)有限公司官网只能确保b体育(福州)有限公司官网输入的XML没有任何错误。
1.4下载配置
b体育(福州)有限公司官网现在将要准备开始记录,b体育(福州)有限公司官网只需要将配置放在设备上。然后将通过读入b体育(福州)有限公司官网刚刚创建的XML文件,将此XML配置转换为二进制配置并将二进制配置下载到设备。
列表5:将配置下载到Kvaser设备
现在b体育(福州)有限公司官网将b体育(福州)有限公司官网配置的设备与计算机断开,并且将b体育(福州)有限公司官网的设备连接到现有的CAN总线,通过给设备的CAN 1总线连接器通电来开始记录。
1.5读取所记录的报文
在b体育(福州)有限公司官网记录了一些报文后,b体育(福州)有限公司官网再次将b体育(福州)有限公司官网的Kvaser Memorator设备连接到b体育(福州)有限公司官网计算机上的一个空闲的USB端口,并读出结果。
列表6:读取记录的报文并打印到标准输出(stdout)
这就是此文所有内容。b体育(福州)有限公司官网现在已经知道如何使用kvmlib进行配置和读回记录的数据。在下一篇文章,b体育(福州)有限公司官网将分支出来,再添加一些复杂的配置进行讲述。
脚注
1. CANlib SDK可以从www.kvaser.cn/developer/canlib-sdk下载。
2. 编码73-30130-00778-9
3. 目前,Python包装器仅在Python v2.7下测试。
4. 完整的程序列表见github.com/Kvaser/developer-blog。
5. Kvaser Memorator Pro 5xHS固件捆绑在Kvaser固件更新工具中,可在这里下载www.kvaser.com/downloads
6. XML格式的最新版本见文档Kvaser Memorator设备配置的XML格式规范相关描述。