2023年12月2日发(作者:)
Matlab读取MDF文档背景:汽车上的功能软件依靠各种信号完成设计功能,信号通过CAN网络进行传输。Vector公司提供了强大的信号测量工具CANape,可以将这些信号的测量结果保存成MDF格式的文件。Matlab中Vehicle Network Toolbox工具专门提供了测量数据格式 (MDF)、ASAM 标定数据格式(CDF) 和二进制记录格式 (BLF) 等标准文件格式的读取方法。1、 读取MDF文件(matlab2016b)不同的matlab版本的函数有不一样的用法,仅细节不同。这里以matlab2016b为例(因为作者用的这个版本)。读取MDF文件matlab提供了如下的函数。从MDF文件中读取数据流程可见下图:(1)打开MDF文件 在从 MDF 文件读取通道数据之前,使用 mdf 命令开启对该文件的访问权限。以 MDF 文件对象形式返回。可以通过该对象访问包含在以下属性中的 MDF 文件信息,如下图。代码:m = mdf(4')% 为给定文件创建一个 MDF 对象,并查看对象显示。% 输入参数是 MDF 文件名(包括必要的完整或相对路径),指定为字符向量或字符串。(2)指定要读取得数据使用read 命令用于从 MDF 文件中检索数据,它有几种不同的使用方式。需要两个主要参数。一个是要从中读取数据的通道组的数值索引。另一个是要读取的通道组中通道的名称。有关这些项的信息可从 MDF 文件中获得。代码:lGroup(1) % 读取数据的通道组的数值索引的信息。lNames{1} % 读取通道组中通道的名称。data = read(m, 1, lNames{1}, 1, 10) %读取的是第一条信号的第一个数值。什么是通道组?可见下图,使用ape回放(load)MDF文件。可以发现每一个报文信号被封装记录成为一个通道组,图中列出了15条信号,每条信号中有两个数据。接下来就能够看到需要的数据。以上仅是对这几个函数的解读,帮助大家理解。更多的信息可以参考Matlab帮助文档,一定要选择对应版本。欢迎讨论!


发布评论