主要内容

日志和重播可以FD消息

这个示例向您展示了如何在Simulink®中使用MathWorks Virtual CAN FD通道记录和回放CAN FD消息。金宝app您可以更新此模型,以连接到系统上支持的硬件。金宝app

加载已保存的CAN FD消息sourceFDMsgs.mat文件从示例文件夹中的文件。该文件包含可以在测试轨道周围表示90秒的驱动周期的FD消息。

将这些消息转换为与CAN FD重放块兼容的格式,并将其另存为单独的文件。

canfdmsg时间表100000x12 45411725时刻表canFDMsgs 1x1 8401848结构体

CAN FD重播模型

此模型包含:

  • 可以发送到的CAN FD重放块MathWorks虚拟频道1

  • A CAN FD接收块,接收CAN FD网络上的消息,通过MathWorks虚拟频道2

CAN FD接收块配置为阻止所有扩展ID并仅允许WheelSpeed消息的标准ID1200.通过。

车轮速度子系统从收到的CAN FD消息中解压缩车轮速度信息,并将它们绘制到范围。子系统还将消息记录到文件。

车轮速度信息可视化

该曲线显示了测试驱动器持续时间的所有车轮的车轮速度。

加载Logged Message文件

每次运行模型时,CAN FD Log块都会创建一个唯一的文件。使用dir在MATLAB命令窗口找到最新的日志文件。

Wheelspeedss_2018-APR-30_132033.MAT名称大小字节类属性CANFDMSGTIMETABLE 100000x12 45411725时间表CANFDMSGS 1x1 8401848 STRUCT OUTFDMSGS 1X1 841848 STRUCT

将登录信息

使用canFDMessageTimetable将在模拟期间记录的消息转换为可以在命令窗口中使用的时间表。

要直接访问消息信号,请在转换中同时使用适当的数据库文件canSignalTimetable

ans = 15 x12时间表时间ID扩展名ProtocolMode数据远程BRS ESI DLC信号长度错误  __________ ____ ________ _______________ ____________ __________________________________ ______ ___ ____________ _____ ______ _____ _____ 75.393秒576假{0 x0 char}{'可以FD} {[79 136 166 71]} 4 4 {0 x0 struct}假假真虚假的75.397秒1200假{‘WheelSpeeds}{'可以FD} {[54 171 55 39 54 180 55 39]} 8 8 {1 x1 struct}假假真假75.398秒128假{0 x0 char}{'可以FD} {[41 89 117 48 83 218]} 7 7 {0 x0 struct}假假真假75.398秒133假{0 x0 char}{'可以FD} {[0 102 0 0 0 0 0 0]} 8 8 {0 x0 struct}假假真假75.398秒144假{0 x0 char}{'可以FD} {[167 129 247 8 200 145 24 93]} 8 8 {0 x0 struct}假假真假75.398秒528假{0 x0 char}{'可以FD} {[60 64 255 254 0 0]} 7 7 {0 x0 struct}假假真假75.399秒529假{0 x0 char}{'可以FD} {[60 255 255 255 255 255 255 255]} 8 8 {0 x0 struct}假假真假75.399秒1201假{0 x0 char}{'可以FD} {[15 155 16 23 15 164 16 23]} 8 8 {0 x0 struct}假假真假75.399秒512假{0 x0 char}{'可以FD} {[2 125 213 2 129 128 255]} 8 8 {0 x0 struct}假假真假75.399秒513假{0 x0 char}{'可以FD} {[31 179 255 255 54 222 38 255]} 8 8 {0 x0 struct}假假真假75.399秒533假{0 x0 char}{'可以FD} {[2 168 168 2 42 35 0]} 8 8 {0 x0 struct}假假真假75.4秒1312假{0 x0 char}{'可以FD} {[250 0 200 50 0]} 5 5 {0 x0 struct}假假真假75.405秒1200假{‘WheelSpeeds}{'可以FD} {[54 173 55 41 54 180 55 40]} 8 8 {1 x1 struct}假假真假75.406秒1201假{0 x0 char} {'CAN FD'} {[ 15 157 16 25 15 164 16 24]} 8 8 {0x0 struct} false false true false 75.408 sec 1296 false {0x0 char } {'CAN FD'} {[ 39 0 1]} 3 3 {0x0 struct} false false true false ans = 15x4 timetable Time RR_WSpeed RF_WSpeed LR_WSpeed LF_WSpeed __________ _________ _________ _________ _________ 75.397 sec 41.19 40.04 41.19 39.95 75.405 sec 41.2 40.04 41.21 39.97 75.414 sec 41.22 40.05 41.26 40.03 75.424 sec 41.25 40.13 41.3 40.05 75.433 sec 41.19 40.14 41.28 40.08 75.441 sec 41.17 40.18 41.31 40.14 75.45 sec 41.31 40.27 41.31 40.17 75.458 sec 41.37 40.25 41.31 40.19 75.466 sec 41.39 40.22 41.3 40.19 75.475 sec 41.39 40.25 41.3 40.2 75.483 sec 41.37 40.26 41.33 40.21 75.492 sec 41.44 40.35 41.33 40.19 75.501 sec 41.51 40.44 41.36 40.22 75.509 sec 41.58 40.47 41.44 40.29 75.517 sec 41.63 40.45 41.44 40.31

MathWorks可以为此示例使用FD虚拟通道。但是,您可以将模型连接到其他支持的硬件。金宝app