CAN总线自上世纪80年代问世以来,已成为汽车电子系统的主干网络。随着CAN FD(灵活数据速率)的普及和节点数量的增加,确保不同供应商的CAN设备能够可靠互联变得至关重要。CAN一致性测试(又称符合性测试)正是验证CAN控制器或收发器是否符合ISO 11898标准的关键步骤,确保设备在多厂商环境中能够可靠通信。
CAN一致性测试的标准体系
CAN一致性测试主要依据ISO 16845标准,该标准分为两部分:
ISO 16845-1:针对数据链路层和物理信令的符合性测试计划,涵盖经典CAN和CAN FD协议。
ISO 16845-2:针对高速介质访问单元(物理层)的符合性测试计划,包括静态和动态测试。
测试通常由独立检测机构或使用专业工具(如Vector的CANoe、CANalyzer)执行,但开发者在开发阶段进行预测试可以及早发现问题,降低成本。
测试准备与测试环境搭建
在进行CAN一致性测试前,需要准备以下环境:
测试设备:包括CAN总线分析工具(如Vector VN系列)、可编程电源、示波器(用于物理层信号质量分析)、数字万用表、电子负载等。
测试样品:待测的CAN节点(ECU、传感器、执行器)或单独的CAN控制器/收发器芯片。
测试软件:一致性测试套件(CTS),通常由测试工具厂商提供,包含预定义的测试用例和自动化执行脚本。
测试配置:根据待测设备类型(主节点/从节点、经典CAN/CAN FD)配置测试参数,如波特率(通常为125kbps、250kbps、500kbps、1Mbps等)、采样点位置等。
核心测试内容与流程
根据ISO 16845标准,CAN一致性测试涵盖以下关键领域:
1. 帧格式测试
测试目的:验证CAN控制器是否能正确处理11位标准标识符和29位扩展标识符,以及数据帧和远程帧的发送与接收。
测试方法:发送包含不同标识符和数据长度的帧,检查接收端的解析是否正确。测试用例包括:标准标识符帧的发送接收、扩展标识符帧的发送接收、远程帧的发送响应、数据长度码(DLC)的有效性验证。
预期结果:接收到的帧与发送的帧在标识符、数据长度和内容上完全一致。对于无效的帧格式(如保留位错误),设备应能够正确检测并处理。
2. 错误检测能力测试
测试目的:检查控制器对CRC错误、位填充错误、确认错误、格式错误等异常情况的检测能力。
测试方法:使用测试设备发送包含特定错误的帧(如错误的CRC序列、违反位填充规则、无确认时隙等),观察控制器的响应。
预期结果:控制器应检测到错误,不确认错误帧(不发送ACK),并可能根据错误类型增加相应的错误计数器。
3. 仲裁机制测试
测试目的:验证CAN总线的非破坏性仲裁机制是否正常工作,确保高优先级消息(较低标识符)在总线竞争中获胜。
测试方法:配置两个节点同时开始发送不同优先级的消息,监测总线上的传输顺序。测试包括:不同优先级节点的同时发送、相同优先级节点的同时发送(应通过进一步仲裁决定胜负)。
预期结果:高优先级消息(标识符值更小)优先获得总线使用权并完成传输,低优先级节点在仲裁失败后自动转为接收模式并准备重发。
4. 位定时与采样点测试
测试目的:确保位定时参数正确配置,支持目标波特率,并保证在总线长度和节点时钟容差范围内的可靠通信。
测试方法:根据微控制器时钟频率和CAN控制器数据手册计算位定时参数(同步段、传播段、相位段1、相位段2、采样点位置),配置控制器并验证通信。使用示波器测量实际波特率和信号质量。
预期结果:无定时相关错误,通信正常。采样点位置应在位时间的60-80%范围内(通常推荐87.5%),确保有足够的建立保持时间。
5. 协议状态机测试
测试目的:测试控制器在错误活动、错误被动和总线关闭状态之间的转换。
测试方法:通过错误注入(如连续发送不确认的帧)逐步增加发送错误计数器或接收错误计数器,观察控制器的状态转换。测试包括:错误活动→错误被动→总线关闭的转换,以及总线关闭后的恢复过程。
预期结果:当错误计数器达到127时仍处于错误活动状态;达到128时,控制器进入错误被动状态;达到255时仍处于错误被动;达到256时,进入总线关闭状态,停止参与总线通信。总线关闭后,经过128个11位隐性位的恢复序列,错误计数器清零,重新进入错误活动状态。
6. 物理层特性测试
测试目的:验证CAN收发器的电气特性是否符合ISO 11898-2/5要求。
测试内容:包括隐性电平/显性电平的电压范围、收发器循环延迟、对称性、斜率控制、内部电阻、CANH/CANL短路保护、共模范围等。
测试方法:使用示波器和可编程负载,测量不同工作条件下的信号波形和电气参数。
预期结果:隐性电平CANH和CANL约为2.5V,差分电压≤0.5V;显性电平差分电压≥1.5V。上升下降时间在规定范围内,信号对称性良好。
7. CAN FD特定测试
对于支持CAN FD的设备,还需增加以下测试:
数据阶段波特率切换:验证从仲裁阶段(标称波特率)到数据阶段(高速波特率)的切换是否平稳。
BRS(波特率切换)位处理:验证BRS位的解析和响应。
ESI(错误状态指示)位处理:验证错误状态指示位的设置逻辑。
填充规则变化:CAN FD数据阶段采用不同的填充规则,需验证控制器的正确处理。
测试流程与报告输出
标准的CAN一致性测试流程包括:
测试计划编制:明确测试范围、测试用例、通过准则、测试环境要求。
测试环境搭建与校准:连接测试设备,验证测试系统自身的可靠性和重复性。
测试执行:按照测试计划依次执行测试用例,记录测试结果和原始数据。
异常分析:对于失败的测试用例,分析根本原因(可能是配置错误、硬件设计问题或协议栈缺陷)。
报告出具:测试报告应包括:测试对象信息、测试环境描述、测试用例清单、每项测试结果(通过/失败/未测试)、失败项的原因分析和建议、原始测试数据(波形截图、日志文件)。
汇策晟安检测:专业CAN总线测试服务
CAN总线通信的可靠性是汽车电子系统正常运行的基础。汇策晟安检测拥有专业的总线分析工具和丰富的测试经验,严格遵循ISO 16845、ISO 11898等国际标准,为汽车整车与零部件企业提供CAN/CAN FD一致性测试、物理层特性分析、网络管理测试、互操作性测试等一站式服务,确保您的产品在复杂的车载网络环境中稳定可靠地通信。
alt="微信二维码">



















