如何解决创建要由 J1939 DBC 解码的 MF4 - asammdf
我正在尝试创建一个由“J1939.dbc”解码的 MF4 文件,就像 CSS electronics
jupyter
上图:
2) CAN 日志记录被禁用 - 当我使用来自 CSS electronics 的文件时,“CAN 日志记录”被启用 -
pyenv
可能需要指定 ID 和 DataByte 列进行解码,但我尝试了很多方法但都不起作用。
我能做什么?
解决方法
总线记录的元数据也必须添加到新的通道组中:
from asammdf import MDF,SUPPORTED_VERSIONS,Signal
import numpy as np
from asammdf.blocks.source_utils import Source
sigs = []
mdf = MDF()
samples = [
np.array([1,1,1],dtype=np.uint32),np.array([217056256,217056256,217056256],np.array([1,np.ones(5,dtype=np.dtype('(8,)u1'))*111,dtype=np.uint32)
]
types = [('CAN_DataFrame.BusChannel','u1'),('CAN_DataFrame.ID','<u4'),('CAN_DataFrame.IDE',('CAN_DataFrame.DLC',('CAN_DataFrame.DataLength',('CAN_DataFrame.DataBytes','u1',(8,)),('CAN_DataFrame.Dir',('CAN_DataFrame.EDL',('CAN_DataFrame.BRS','u1')]
t = np.arange(5,dtype=np.float64)
sig = Signal(
np.core.records.fromarrays(samples,dtype=np.dtype(types)),t+10,name='Channel_structure_composition',comment='Structure channel composition',source=Source(
source_type=Source.SOURCE_BUS,bus_type=Source.BUS_TYPE_CAN,name="CAN bus",path="CAN bus",comment="",)
)
sigs.append(sig)
mdf.append(sigs,comment='arrays',common_timebase=True)
mdf.save('demo.mf4',overwrite=True)
print('save')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。