-1

我对python很陌生。对于我的硕士论文,我需要使用 asammdf 提取 mf4 数据的一些信号。我只有原始 mf4 数据和 da dbc。如何将 mf4 数据与 dbc 连接并将所需的信号保存在变量或数组中。我已经尝试过这样的事情:

import mdfreader
import os
import asammdf 
channel_list=['ENSTO_AVL_I', 'ENSTO_AVL_U', 'ENSTO_AVL_TEMP','ENSTO_AVL_SOC']
dir_dbc = r'G:\TS-S2\Studenten\S21\Florian Greimel\Masterarbeit\Data_mf4'
dir_mdfs = r'G:\TS-S2\Studenten\S21\Florian Greimel\Masterarbeit\Data_mf4\MF4_mitDBC'
srcdir = dir_mdfs
dbc = os.path.join(dir_dbc, '20180829_SP2021_Infra_CAN.dbc')
for filename in os.listdir(srcdir):
    print(filename)
    if filename.lower().endswith('.mf4'):
        dat = asammdf.MDF4(os.path.join(srcdir,filename))
        sig = dat.get_can_signal('ENSTO_AVL_SOC',(os.path.join(dir_dbc, '20180829_SP2021_Infra_CAN.dbc'))

非常感谢,暴徒

4

1 回答 1

0

您应该只使用 MDF 类(包含 MDF3 或 MDF4 方法以及顶部的一些额外方法)。有了它,您可以使用extract_can_logging https://asammdf.readthedocs.io/en/latest/api.html#asammdf.mdf.MDF.extract_can_logging

于 2020-11-07T19:42:36.767 回答