CAN一致性测试在于缩小CAN总线节点间的差异,提高总线抗干扰能力,从而保障设备CAN网络系统的稳定。因此,CAN节点一致性测试就显得尤为重要,本文将重点对几个测试项进行讲解。
零部件CAN节点质量的良莠不齐将给CAN总线网络带来较大的安全隐患,某个节点的错误将影响整体总线的正常运行,严重时可能导致整体总线的瘫痪。所以,CAN一致性测试是保障CAN网络安全稳定的必要手段,其测试内容覆盖了物理层、链路层以及应用层等测试需求,如下图1所示。
图1 CAN一致性测试内容(节选)
输入阈值测试
阈值测试分为隐性输入电压阈值和显性输入电压阈值,节点Vdiff大于0.9V时必须识别显性,小于0.5V时必须识别隐性,在0.5V~0.9V之间,属于不确定区域;因此测试目的是为了验证节点在ISO11898-2中标示的输入电压阈值范围内均可以通讯,下图2为ISO11898-2中的相关标准。
图2 ISO11898-2 输入电压阈值标准
1、测试原理
在图2 ISO 11898-2 输入电压阈值标准所示的总线负载和共模电压条件下,按照下图3隐性输入电压测试原理和图4显性输入电压测试原理的测试原理进行隐/显性输入电压阈值测试。
图3 隐性输入电压测试原理
图4 显性输入电压测试原理
2、判断依据
DUT 在 Vdiff≤0.5V(用户可自定义设置该范围) 时,可以正常发送报文。至少在 Vdiff>0.9V (用户可输入)的情况下,DUT 应该停止发送帧。
输出电压测试
CAN总线上面的信号幅值是接收节点能正确识别逻辑信号的保证。隐性状态下,若CAN_diff电压大于0.9V,则会使总线呈现持续显性状态导致通讯错误;显性状态下,若CAN_diff电压低于0.5V,说明该节点驱动能力较弱,会导致显性电平判断错误,并且在强干扰环境容易出现电平翻转,导致总线故障;如下图5为输出电压幅值引起的错误。
图5 输出电压幅值导致错误
所以,每个厂家在产品投入使用前都要测试CAN节点DUT(被测设备)的输出电压幅值。测试目的就是检查DUT的CAN_H与CAN_L的隐性/显性输出电压是否遵守ISO11898-2的定义,如下图6所示。
图6 ISO11898-2 输出电压标准
在图6 ISO11898-2输出电压标准所示的总线负载条件下,按照图7输出电压测试原理的测试原理进行输出电压测试。
图7 输出电压测试原理图
如果测试结果符合图6 ISO11898-2输出电压标准中ISO 11898-2输出电压标准,则通过测试。
采样点测试
采样点是接收节点判断信号逻辑的位置,CAN通讯属于异步通讯,需要通过不断的重新同步才能保证接收节点的采样准确;若采样点太靠前,则因为线缆原因,容易发生采样错误;若采样点太靠后,则因为SJW原因,会引起接收节点同步跳转宽度的调整(调整自身时钟进行匹配),调整不好就容易出现错误;所以对CAN节点进行采样点的测试显得尤为重要。
启动CANstress接收报文干扰功能,如图8CANstress接收报文干扰功能所示。从位时间的45%位置,每次干扰递增1%,直至100%;通过统计记录CANScope-Pro的错误报文,出现错误报文的干扰点则等于采样点。
图8 采样点测试原理
DUT发送的CAN报文信号的采样点应处于规范定义的范围内:75%≤SP≤83.4%。
位宽容忍度测试
容忍度表示波特率范围(位时间范围),调大容忍度可以利于接收其它节点的报文;采样点和容忍度是评价CAN节点适应性的重要因素。SJW(同步跳转宽度)决定了接收节点是否能有比较好的兼容性,如果接收节点SJW对波特率调整不好,就会导致位宽容忍度不足,出现错误;所以位宽容忍度测试也是保证信号稳定性的重要测试项目之一。
图9 位宽度容忍测试条件标准
使用位宽容忍度测试功能,如图10位宽容忍度测试所示。以DUT波特率为标准,配置波特率偏差逐渐增加1%,向CAN网络发送报文;判断网络有无报文错误信息反馈,若有错误反馈,则结束测试,并判断结果是否在标准区间内。
图10 位宽容忍度测试
位宽容忍度范围应至少符合-4≤SJW≤4%(用户可设置该范围)。
CANDT一致性测试系统
针对CAN总线节点一致性测试,许多工程师还停留在使用“示波器+CAN卡”,通过外接电压源、电流源等外围设备,手动完成测试,接线复杂且效率低下。ZLG致远电子从汽车电子行业CAN总线痛点问题出发,研发出强大功能的CANDT一致性测试系统,可自动化完成CAN节点物理层、链路层及应用层一致性测试,是当前CAN总线测试领域唯一能够进行完善的物理层自动化测试并导出报表的仪器设备!
图11 CANDT一致性测试系统