canFDMessageTimetable

Преобразуйте CAN или сообщения CAN FD в расписание

Синтаксис

msgtimetable = canFDMessageTimetable(msg)
msgtimetable = canFDMessageTimetable(msg,database)

Описание

пример

msgtimetable = canFDMessageTimetable(msg) создает расписание сообщения CAN FD из существующего расписания сообщения CAN FD, массива объектов сообщения CAN или структуры сообщения CAN FD от блока CAN FD Log. Расписание выходного сигнала содержит необработанную информацию о сообщении (ID, Расширенный, Данные, и т.д.) из сообщений. Если объекты сообщения CAN вводятся, которые содержат декодируемую информацию, то декодирование сохраняется в расписании сообщения CAN FD.

пример

msgtimetable = canFDMessageTimetable(msg,database) использует базу данных, чтобы декодировать имена сообщения и сигналы для расписания наряду с необработанной информацией о сообщении. Задайте несколько баз данных в массиве, чтобы декодировать имена сообщения и сигналы в расписании в одном вызове.

Вход msg может также быть расписанием данных, созданных при помощи read на объекте mdfDatastore. В этом случае функция преобразовывает расписание стандартных данных о формате регистрации ASAM к расписанию сообщения CAN FD Vehicle Network Toolbox™.

Примеры

свернуть все

Преобразуйте логарифмический блок вывод в расписание сообщения CAN FD.

 load LogBlockOutput.mat;
 db = canDatabase('myDatabase.dbc');
 msgTimetable = canFDMessageTimetable(canMsgs,db);

Преобразуйте массив объектов сообщения CAN к расписанию сообщения CAN FD.

msgTimetable = canFDMessageTimetable(canMsgs);

Декодируйте существующее расписание сообщения CAN FD с базой данных.

db = canDatabase('myDatabase.dbc')
msgTimetable = canFDMessageTimetable(msgTimetable,db)

Результат возвращен в исходную переменную расписания.

Преобразуйте существующее расписание сообщения формата ASAM и декодируйте использование базы данных.

m = mdf('CANandCANFD.MF4');
db = canDatabase('CustomerDatabase.dbc');
mdfData = read(m);
msgTimetable = canFDMessageTimetable(mdfData{2},db);

Сравните эти два расписания.

mdfData{2}(1:4,1:6)
ans =

  4×6 timetable

       Time        CAN_DataFrame_BusChannel    CAN_DataFrame_FlagsEx    CAN_DataFrame_Dir    CAN_DataFrame_SingleWire    CAN_DataFrame_WakeUp    CAN_DataFrame_SRR
    ___________    ________________________    _____________________    _________________    ________________________    ____________________    _________________

    0.30022 sec               1                     2.1095e+06                  1                       0                         0                      0        
    0.45025 sec               1                     2.0972e+06                  1                       0                         0                      0        
    0.60022 sec               1                     2.1095e+06                  1                       0                         0                      0        
    0.75013 sec               1                     2.1095e+06                  1                       0                         0                      0        
msgTimetable(1:4,1:8)
ans =

  4×8 timetable

       Time         ID     Extended    Name    ProtocolMode        Data        Length    DLC      Signals   
    ___________    ____    ________    ____    ____________    ____________    ______    ___    ____________

    0.30022 sec     768     false       ''       'CAN FD'      [1×64 uint8]      64      15     [0×0 struct]
    0.45025 sec    1104     false       ''       'CAN'         [1×8  uint8]       8       8     [0×0 struct]
    0.60022 sec     768     false       ''       'CAN FD'      [1×64 uint8]      64      15     [0×0 struct]
    0.75013 sec    1872     false       ''       'CAN FD'      [1×24 uint8]      24      12     [0×0 struct]

Входные параметры

свернуть все

Необработанные сообщения CAN, заданные как расписание сообщения CAN FD, массив объектов сообщения CAN, структура сообщения CAN от CAN регистрирует блок или объект asam.MDF..

Пример: canFDMessage()

База данных CAN, заданная как объект базы данных.

Пример: database = canDatabase('CANDatabase.dbc')

Выходные аргументы

свернуть все

Сообщения CAN FD, возвращенные как расписание.

Смотрите также

Функции

Введенный в R2018b