主要内容

使用CAN资源管理器接收和可视化CAN数据

这个例子展示了如何使用能资源管理器用于接收和可视化CAN数据的应用程序。它使用以环回配置连接的MathWorks®虚拟通道。能资源管理器配置为使用MathWorks Virtual 1 Channel 1接收数据。预先录制的数据在mat文件中提供,并回放到MathWorks Virtual 1 Channel 2上,以模拟连接到实际车辆系统所产生的CAN流量。

打开CAN资源管理器

打开能资源管理器应用程序使用命令canExplorer.或者,你可以找到能资源管理器在MATLAB®中应用程序选项卡。

选择设备通道

这个设备列表显示连接到系统的设备的所有可访问CAN通道,当前使用的设备通道以蓝色轮廓突出显示。每次你开始的时候能资源管理器默认情况下,会自动选择列表中的第一个设备通道。从菜单中选择MathWorks虚拟1频道1设备列表默认不选择。

配置数据库文件

将数据库文件添加到能资源管理器对传入的信息和信号进行解码。

  1. 要打开数据库配置对话框,请选择数据库在将来发布。

  2. 点击添加打开文件选择对话框。选择CANExplorerDatabase.dbc与示例一起提供的文件。

  3. 点击好吧保存数据库配置并关闭对话框。

配置通道总线速度

如果所需网络速度与默认值不同,则配置通道总线速度。

  1. 要打开设备通道配置对话框,请选择设备通道在将来发布。

  2. 此示例使用默认总线速度为每秒500000位。确认当前设备通道配置,单击好吧

在同一对话框中,您可以分别为标准ID和扩展ID配置消息过滤器,以控制哪些消息通过通道。默认情况下,两个过滤器选项都设置为允许所有消息通过,但您也可以指定允许或阻止某些ID。

配置信号表

添加要在信号表上查看的感兴趣的信号。在本例中,您将查看在中定义的所有信号CANExplorerDatabase.dbc文件。

  1. 要打开信号表配置对话框,请选择信号>配置信号表在将来发布。

  2. 添加来自可用的信号窗格到配置信号窗格使用按钮您可以添加单个信号、通过添加消息在消息中添加所有信号,或通过添加数据库在数据库中添加所有信号。对于本例,选择CANExplorerDatabase.dbc可用的信号窗格并单击添加数据库中要查看的所有信号。

  3. 点击好吧保存信号表配置并关闭对话框。

如果提供信号或消息的搜索文本,请单击找到这个可用的信号窗格将更新,以显示与搜索文本不区分大小写的部分匹配的搜索结果。

配置信号范围

添加感兴趣的信号以查看信号范围。能资源管理器提供3个作用域,每个作用域可配置为可视化选择信号。作用域的数量是固定的,无法自定义。在本例中,您可以查看来自的所有信号信息A在顶部信号范围内,所有信号来自信息信息在中间信号范围内,所有信号来自信息在底部信号范围内。

  1. 要打开顶部信号范围配置对话框,请选择信号>配置Top信号范围在将来发布。

  2. 选择信息A可用的信号窗格并单击将此消息中的所有信号添加到顶部信号范围中查看。

  3. 点击好吧保存顶部信号范围配置并关闭对话框。

  4. 使用类似的方法,从信息信息查看中间信号范围,并从中添加信号信息查看底部信号范围。

开始监控

在中开始监视能资源管理器在开始重播之前,避免丢失任何数据。点击开始在将来发布。

重放预录的CAN数据

文件中提供了从CAN网络记录的数据CANExplorerData.mat. 数据以时间表格式保存,时间范围约为60秒。

将CAN数据重放到MathWorks虚拟1通道2上,以便能资源管理器在同一MATLAB实例中的MathWorks Virtual 1 Channel 1上接收。要启动数据重播,请执行脚本replayCANData.m. 您还可以多次按顺序执行脚本,以生成60秒以上的can数据,用于其他实验。

探索监视器和显示选项

能资源管理器继续接收数据时,可以在控件中进行试验监控陈列工具条的部分。

  1. 点击暂停暂停能资源管理器从视觉上更新。而停了下来能资源管理器在后台继续积累和处理数据。

  2. 点击持续要恢复中的可视更新,请执行以下操作:能资源管理器

进一步探索:

  1. 如果您点击清晰数据,所有累积的数据将从中完全清除能资源管理器

  2. 默认情况下,消息表按时间顺序显示所有CAN消息。要查看每个唯一消息的最新实例,请切换独特信息

  3. 默认情况下,消息表和信号表都显示自开始监控以来的时间。要查看自每个表中最后一条消息或信号以来的增量时间,请切换三角洲的时间

停止监控

当您完成您的实时获取活动时,单击停止在toolstrip中,使设备通道脱机。

清理数据重播

通过执行脚本进行清理ReplayCanadacLeanup.m,停止用于重播的MathWorks虚拟1通道2,并清除不需要的变量。

导出数据以供额外使用

在工具条中,单击工具条的上半部分出口按钮将接收到的数据以时间表格式导出到MATLAB工作空间中。

如果您想保留导出的变量以备将来使用:

  • 要将变量保存到mat文件中,请使用保存作用

  • 要将变量保存到BLF文件,请使用blfwrite作用

导出的消息时间表也可转换为信号数据的单独时间表。这个信号时刻表函数返回一个结构,该结构为时间表中的每个唯一消息提供一个字段。每个字段值都是该消息中定义的所有信号的时间表。