Canmetry
打开工作台

直接在浏览器里把 MF4 转成 MAT 或 CSV。

把 MF4(MDF4)总线记录转成 MATLAB .mat 或 CSV,用你的 DBC 解码,不需要 CANape 或 CANoe。

第 1 步,共 4 步 · 上传日志

把 MF4 文件拖到这里

或

.mf4 文件最大 150 MiB,一次最多 5 个。转换在你的浏览器里完成,文件不会离开你的电脑。

CAN · CAN FD · 1 µs 时间戳

谁手里会有打不开的 MF4

MF4(MDF4)是数据记录仪和测量工具写出的 ASAM 标准格式。里面保存的是原始 CAN 数据时,必须先用 DBC 解码,信号才可读。

804000 s60 skm/h

在 MATLAB 里打开记录仪数据

把 MF4 总线记录文件里的 CAN 信号作为普通变量载入 MATLAB,不需要读取 MDF 文件的工具箱。

把 MF4 的 CAN 数据导出成 Excel 能用的 CSV

把解码后的 CAN 信号变成一张平面表,用于电子表格、看板,或附在缺陷单里。

在团队和供应商之间共享测量数据

不是每个人都有 CANape、INCA 或 MDF4 查看器,而 MAT 和 CSV 文件到处都能打开。

from scipy.io import loadmat
d = loadmat('drive.mat', squeeze_me=True,
            struct_as_record=False)
# fields: time, value, unit
speed = d['ESP_VehicleSpeed']

接入 Python 和机器学习流程

用 SciPy 或 pandas 读取解码后的信号,做统计、回归分析,或生成路试数据的训练集。

把 MF4 录制变成信号

一共四步。MF4 文件和 DBC 文件都留在你的浏览器里。

  1. 添加 MF4 总线记录文件

    拖入最多五个 .mf4 文件。每个文件都会被扫描 CAN 总线记录数据,并列出其中的通道。

  2. 把每个通道关联到它的 DBC

    MF4 里的报文是原始的,所以信号需要 DBC。把每个通道连到它自己的数据库,可以把 DBC 拖到通道上,也可以继续添加文件。

  3. 选择 .mat 或 .csv

    MAT 为每个信号存一个结构体,适合 MATLAB;CSV 是一张表,适合 Excel 和 Python。

  4. 转换并下载

    报文用你的 DBC 解码,每个 MF4 各自保存成 .mat 或 .csv。

MF4 转换会交还什么

只写入用你的 DBC 解码出来的信号,保留全部采样点,时间以秒为单位。

time_stime_uschannelmessagesignalvalueunit
0.00460846081ESPVehicleSpeed42.5km/h
0.014595145951ESPVehicleSpeed42.6km/h
0.024611246112VCUDrvTorReq118Nm
  • .mat 的结构

    每个信号是一个名为“报文名_信号名”的结构体,带着自己的 time 和 value 数组,unit、message、channel 随它一起保存。info 结构体记录 MF4 及其通道。

  • CSV 表格

    一张平铺的表,列为 time_s、time_us、channel、message、signal、value、unit,每个采样点一行,在 Excel 或 pandas 里很容易筛选。

  • MF4 里已有的信号值不会被复制

    这个工具解码的是原始 CAN 报文。已经是物理值的测量通道(例如标定工具记录的 ECU 信号)不会导出;不在 DBC 里的报文也会跳过。

  • 单次转换的上限

    一次五个 MF4,每个最大 150 MiB。CSV 最多 200 万行;录制很长就用 MAT,它没有行数限制。

MF4 转换:先了解这些

转换一份 MF4 录制需要什么?

一份带 CAN 总线记录的 MF4,以及每条总线对应的 DBC。添加文件,关联每个通道,选 MAT 或 CSV 后转换。全程在浏览器里运行,结果从页面下载。

哪些 MF4 文件可以用?

保存了原始 CAN 或 CAN FD 报文(也就是总线记录)的 ASAM MDF 4.x 文件。如果文件里只有已经是物理值的测量信号,就没有可解码的报文。

MF4 和 MDF4 是一回事吗?

是。MDF4 是 ASAM 的测量数据格式第 4 版,.mf4 是它的文件扩展名。

我的 MF4 会被上传吗?

不会。MF4 和你的 DBC 都在浏览器标签页里读取、解码并写出。

一个 MF4 里有多个 CAN 通道,DBC 怎么用?

每个通道关联一个 DBC。一个通道有两个 DBC 时,每一帧交给最先关联且定义了其 ID 的那个,第二个只负责其余的 ID,不会合并也不会重复。

转换出来的文件是空的,怎么回事?

最常见的原因是 DBC 不属于那条总线,或者某个通道没有关联 DBC。请为每个通道关联定义了其报文的数据库。只含已解码信号的 MF4 里没有 CAN 报文可转换。

能导出给 Excel 用的 CSV 吗?有什么限制?

可以,选择 CSV。每个 CSV 上限 200 万行,较长的录制更适合 MAT。每个 MF4 最大 150 MiB,一次五个。