汽车系统

FlexRay、CAN、CAN FD、CAN FD light、LIN、BroadR-Reach、MDF 和 PCAPng 的实时支持

近年来,汽车技术发展迅速。用于车辆安全、驾乘舒适性和驾驶辅助系统的软件比重不断增加,与此同时,计算机技术以及用于连接各个组件的标准化总线系统和相应的测量数据格式也在持续发展。应用最广泛的总线系统包括 FlexRay、CAN/CAN FD、LIN 和汽车以太网,而测量数据通常采用 MDF 和 PCAPng 格式存储。

汽車實時

CAN、CAN FD 和 CAN FD light

CAN(Controller Area Network,控制器局域网)是一种串行总线系统,最初专为汽车控制系统设计,但也非常适合连接智能设备、传感器和执行器。CAN 是一种串行多主节点总线系统,多个 CAN 节点可以同时请求访问总线,而具体哪个节点获得总线的独占访问权,则在访问过程中通过仲裁确定。该总线系统由 ISO 11898 标准规定,具有实时通信能力,使用 ISO/OSI 参考模型的最底两层。

  • 成本低
  • 即使在恶劣的环境条件下也能可靠运行
  • 实时性能出色,使用简便

CAN 通信通常要求可靠、等时间间隔的数据交换,并能够快速响应外部事件。CAN 板卡通常附带的标准 Windows 驱动程序无法满足这些要求,因为它们只能在应用程序上下文中使用,不具备实时能力。Kithara 的 CAN Module 弥补了这一不足,使 CAN 通信也能在实时环境下运行。

Kithara RealTime Suite 通过 CAN Module 为需要实时 CAN 连接的自动化应用提供多种解决方案。该功能库主要面向需要对 CAN 消息进行时间关键性处理的用户,例如机械制造企业和控制系统制造商。

Ixxat PCI

通过易于使用、直观的应用程序编程接口(API),缓冲区可在发送和接收时暂存 CAN 消息。用户既可以安装自定义实时消息过滤器,也可以设置针对特定总线情况的错误处理程序。此外,还支持仅监听模式(Listen-Only)。为方便诊断, Kithara Kernel Tracer 已得到扩展,可采用微秒级分辨率记录整个 CAN 总线的数据通信。

为了在选择 CAN 板卡时提供尽可能大的灵活性,Kithara 为多家制造商的常见 CAN 板卡系列提供实时驱动程序,从而支持不依赖特定硬件厂商的编程方式。

CAN FD(Flexible Data Rate,灵活数据速率)是 CAN 协议的进一步发展。通过将有效载荷长度从 8 字节扩展到 64 字节,其数据传输速率可达到传统 CAN 的 8 倍,而不会增加集成成本。校验值计算方式的改进还进一步提高了数据传输的潜在安全性。

因此,这一总线扩展有望在汽车开发领域占据重要地位。然而,许多 CAN FD 开发和测试流程,只有借助将所有相关接口整合在一起的高性能统一实时解决方案,才能真正实现。

CAN FD light 是 CAN FD 的简化版本,已纳入 ISO 11898-1:2024 标准,适用于对成本敏感的传感器和执行器网络。在 Commander-Responder(命令端—响应端)通信模式下,功能较为简单的网络节点仅在收到请求时发送数据。Kithara RealTime Suite 也支持在 Windows 下通过 CAN FD light 实现确定性的实时通信。


FlexRay

FlexRay 汽车现场总线主要用于车辆中要求较高的功能。凭借 10 Mbit/s 的高传输速率,FlexRay 尤其适用于基于传感器的驾驶辅助系统和底盘控制系统等高端功能。使用双通道时,既可以将数据传输速率提高一倍,也可以利用第二个通信通道进行冗余数据传输,因此 FlexRay 还可用于安全关键型功能。

FlexRay 的实时特性使汽车制造商和试验台制造商能够高效测试上述车辆系统。通过有保障的短响应时间,可以获得高精度测量数据,从而取得理想的测试结果。


LIN

LIN(Local Interconnect Network,局部互连网络)协议的突出特点是能够以较低成本应用于车门、敞篷车顶、空调系统、后视镜和雨刷等单独汽车组件的电子系统。LIN 采用单线连接方式,可显著降低汽车电子系统的布线成本,因此常用于实现成本敏感的功能。

Kithara RealTime Suite 的 LIN Module 使汽车制造商和试验台制造商能够精确开发和诊断 LIN 网络。它满足较高的生产和测试标准,有助于将 LIN 网络集成到车辆中。由于 LIN 必须接入上级网络,因此 LIN 主节点通常也是连接 CAN 系统的网关,而 Kithara 同样支持 CAN 系统。可使用 C、C++、Delphi 和 C# 进行编程。


BroadR-Reach

BroadR-Reach(100BASE-T1)是一种专为汽车网络设计的以太网物理传输层。以太网在汽车网络中的优势主要包括极高的传输速度、良好的可扩展性,以及布线和编程方面的成本效益。例如,实时以太网可用作中央骨干网络。

BroadR-Reach 的实现弥合了 Kithara 实时以太网驱动程序与现代汽车网络之间的差距。借助 Kithara 实时系统所保障的响应时间,可以精确采集通过以太网物理传输层传输的数据,并将其整合到要求较高的测试流程中。因此,汽车开发人员能够直接访问和测试车辆中的物理以太网网络。

由于 BroadR-Reach 描述的是以太网的物理传输层,因此在 Kithara RealTime Suite 中,它作为 Network模块 的扩展提供。


MDF 和 PCAPng

MDF(Measurement Data Format,测量数据格式)是一种用于测量任务的二进制文件格式,也是汽车行业事实上的标准。该标准由 ASAM 定义,其突出优势是存储结构节省空间且可灵活配置。数据可以高效地压缩、排序和建立索引,从而优化读取操作。文件大小几乎可以根据需要任意调整,单个文件甚至可达到 TB 级。借助 Kithara 的特殊分配算法,采集的数据能够快速、可靠地存储到 MDF 文件的复杂结构中。

PCAPng(Packet Capture New Generation,新一代数据包捕获格式)的结构则简单得多,用于记录网络中的数据包。开发人员可以借助免费提供的 Wireshark 软件,灵活地记录、监控特定测量数据包,并将其保存为文件进行分析。

对这两种文件格式的支持基于 Storage模块 通过 NVMe SSD 实现的实时数据存储功能。

汽车总线系统的实时性

模块

Kithara RealTime Suite 的模块化实时汽车系统由以下组件组成:

CAN Module

CAN实时通信

  • 普通
  • 特征
  • 硬件支持
  • 扩展

CAN Module 为 CAN(Controller Area Network)总线系统提供实时功能,支持至 CAN 2.0B。借助 Kithara 实时系统,开发人员可以无延迟地发送和接收 CAN 报文。自定义过滤程序可通过回调函数触发。接收到的报文既可以通过回调函数处理,也可以通过轮询方式处理。发送和接收程序可以直接在实时上下文中执行。

通过可选的 CAN FD Extension,CAN Module 还支持 CAN FD 和 CAN FD Light。通过将有效载荷长度从 8 字节扩展至 64 字节,CAN FD 可实现显著更高的数据吞吐量。对于要求 CAN 接口保持完全被动状态的分析任务,可使用 Listen-only 模式。使用配备 SJA1000 CAN 控制器的硬件时,还可以读取“Error Code Capture”寄存器,以获取更多用于故障分析的信息。

最多支持两个 CAN 端口;如需更多端口,则需要 CAN Port Extension。

  • CAN数据实时交换
  • 支持CAN FD/CAN FD light(灵活数据速率
  • 瞬时传输和即时反应
  • 能在内核级别进行接收和传输
  • 通过CallBack功能能自设过滤例程
  • 通过回调中断上下文在内核级别或者是轮询过程中接收消息
  • 发送和接收例程直接形成可调用的实时上下文
  • 为了在内核级别进行利用,需要C/C ++或Delphi
  • 需要 RealTime Tasking Module

目前,CAN模块支持具有1,2或4通道Peak, Star Cooperation (Eberspächer), EMS Dr. Wünsche, ESD, Ixxat和Kvaser(参见下面的列表)的PCI卡。 我们也乐意支持你所使用的板卡。

EMS Dr. Thomas Wünsche

  • CPC-PCI、CPC-PCIe(单、双和四通道)和带有SJA1000的CPC-104P

ESD – Electronic System Design CAN-PCI

  • CAN-PCI /200/266,单、双通道
  • CAN-PCIe /200,单、双通道
  • CAN-PCI-104 /200,单、双通道
  • CPCI-CAN /200,单、双通道
  • PMC-CAN /266,单、双通道

Ixxat

  • PC-I 04/PCI,双通道

Kvaser Advanced CAN Solutions

  • PCIcan HS(单、双和四通道)
  • PCIcanx HS(单、双和四通道)
  • PCIEcan HS(单、双通道)

Peak System

  • PCAN-PCI Express FD,单、双通道
  • PCAN-PCI,单、双通道
  • PCAN-PCI Express,单、双通道
  • PCAN-miniPCI,单、双通道
  • PCAN-cPCI,双、四通道
  • PCAN-USB和PCAN-USB Hub
  • PCAN-USB Pro,双通道

Star Cooperation (Eberspächer)

  • FL3X Interface-PMC (FL3X Tiny2 2*CAN; FL3X Tiny2 2*CAN-FD; FL3X Tiny2 2*CAN-FD-SIC)

由于存在大量潜在的硬件变化,因此无法完全保证软件与特定组件的正确运行。有关与各个硬件配置兼容性的问题,请与我们联系。

CAN Port Extension

使用额外 CAN 端口的扩展

  • 扩展级别:最多8级
  • 无限级别:无限制

CAN FD Extension

通过 CAN FD/CAN FD light(灵活数据速率)进行实时通信

FlexRay Module

实时FlexRay通信

  • 普通
  • 特征
  • 硬件支持
  • 扩展

作为Kithara实时扩展的一部分,FlexRay模块代表了测试软件和物理测试系统之间的重要联系,它允许以高精度操作的精确周期应用实时功能。

通过FlexRay模块,可以将Windows PC用作实际的FlexRay节点。这包括作为主节点或跟随节点的分配,作为网络内的主动或被动通信点。两个FlexRay通道可以彼此独立配置,同时可以灵活调整波特率(2,5/5/10 Mbit/s)。

最多1个端口,以上需要FlexRay端口扩展。

  • 需要RealTime Module
  • 实时FlexRay通信
  • FlexRay通道的独立配置
  • WindowsPC用作FlexRay的节点
  • 分配为主导或跟随节点
  • 波特率灵活可调(2,5/5/10 Mbit/s)
  • 需要 RealTime Tasking Module

以下FlexRay卡受支持:

  • Star Cooperation FL3X Interface-PMC (FL3X Tiny2 2*FlexRay; FL3X Tiny2 1*FlexRay+SelfSync)

这些规格始终是指我们软件的最新版本。

FlexRay Port Extension

使用额外 FlexRay 端口的扩展

  • 扩展级别:最多 4
  • 无限级别:无限制

LIN Module

LIN实时通信

  • 普通
  • 特征
  • 硬件支持

通过使用 Kithara RealTime Suite 的LIN模块,可以实现LIN的实时性。主站或从站节点可以使用带UART接口的普通PC轻松创建。与使用微控制器的情况不同,这允许更容易地记录现有LIN网络以及更有效的调试过程。发送节点将自动重新检查其在总线上传输的数据,从而可以检测到冲突。

  • LIN数据实时交换
  • 使用普通PC轻松实现主站或从站节点
  • 总线冲突检测
  • 自动校验和验证(LIN版本1.x和2.x)
  • 数据速率高达20 kbit / s
  • 确保延迟时间
  • 使用回调或轮询接收LIN消息
  • 为了适应LIN总线的电气参数,需要LIN收发器。
  • 需要 Serial Module, RealTime Tasking Module 和LIN收发器
  • UART(通过使用通用的RS232接口是必要的电平转换器)
  • Peak PCAN-USB Pro
  • 更多要求

这些规范始终是指我们软件的最新版本。

MDF Module

MDF的实时数据储存

  • 普通
  • 特征

MDF模块允许以测量数据格式实现复杂分层结构测量数据的实时数据存储。MDF 4.2是ASAM提供的二进制文件格式,用于评估或长期存储记录和计算的数据集。文件大小仅取决于使用的硬件(意味着文件大小高达TB)。

  • MDF中的实时数据存储
  • 支持MDF 4.2,并且向下兼容早期版本
  • 写入文件的大小几乎没有限制(264字节)
  • 存储来自CAN,LIN,FlexRay和汽车以太网的数据
  • 需要 Storage Module

PCAPng Module

PCAPng格式的实时数据存储

  • 普通
  • 特征

PCAPng模块(PCAP Next Generation)允许以PCAPng格式实时存储复杂的分层结构测量数据。下一代PCAP是Wireshark支持的数据格式,用于捕获网络中的数据包。 这样,Wireshark可用于以后对存储的测量数据进行分析。

  • PCAPng格式的实时数据存储
  • Wireshark用于读取存储的数据集,例如测量数据甚至图像数据
  • 需要 Storage Module


常见问题

实时操作系统 (RTOS) 是否用于汽车开发?

是的,实时操作系统在测试台上用于测试汽车组件,以及在开发自动驾驶辅助系统等功能时至关重要。它们在测试过程中能够确保众多控制单元之间的可靠、即时通信,尤其在开发对时间敏感的功能时尤为重要。

Windows 实时系统在汽车开发中的优势是什么?

哪些汽车标准可以在实时环境中使用?

CAN XL 是否也可以实现实时?