熊天善,刘芳解,覃竣
(柳州五菱新能源汽车有限公司,广西 柳州 545007)
CAN的英文全称是:Controller AreaNetwork,意思是区域网络控制器,最早是用于智能化住宅小区的信息传输,总线则源自计算机,因为其功能和计算机中的“BUS”类似。CAN总线一致性测试,即要求整车CAN网络中节点都满足CAN总线节点规范要求,缩小CAN网络中节点差异,保证CAN网络的环境稳定,有效提高CAN网络的抗干扰能力。以往的传统车CAN总线网络节点较少,如仪表、发动机ECU、ABS等几个重要节点,但随着新能源汽车行业发展,整车CAN网络中的节点演变得极为复杂,现在新能源汽车内部CAN节点已经高达60个,细分为多个CAN网络系统,如车身部含有空调、车门、导航、倒车雷达、行车雷达、车灯等节点,安全系统又含有气囊、防抱死系统、制动、引爆管等节点。复杂的CAN网络,各个节点质量良莠不齐将会对CAN总线网络存在较大的安全隐患,通常会因为其中某一个节点的错误进而影响整体总线正常运行,导致整体总线的瘫痪,严重时可发生交通事故。因此,CAN节点一致性测试就显得尤为重要。本研究主要是CAN总线一致性测试方法及判定标准,保证CAN总线上各个节点稳定、可靠、安全运行[1-2]。
CAN总线一致性测试可以分为单节点测试和系统集成测试两部分。在系统集成之前,首先对每个节点进行单个节点测试,用以确定每个节点工作正确并且不会干扰总线的正常通讯。总线系统集成测试则是将各个节点都连接形成完整的CAN网络,对集成后的系统进行测试以验证整个系统运行的完整性和正确性、系统的通讯鲁棒性、电器鲁棒性以及系统的容错自恢复功能等。
CAN总线一致性测试内容主要包括输入电压阀值、总线电压、总线阻抗、上升时间、下降时间、容错性、采样点、对称性、报文数据类型、报文ID、报文DLC、位填充、信号缺省、周期容差和负载率等测试。对几个较重要的测试项进行讲解,如输入电压阀值、总线电压、总线阻抗、上升下降时间、容错性、采样点。
CAN一致性测试工具包含CAN卡、CAN干扰仪、示波器、万用表、电源等设备。
在物理层中,CAN总线设计规范对于CAN节点的输入电压阈值有着严格的规定,如果节点的输入电压阈值不符合规范,则在现场组网后容易出现不正常的工作状态,各节点间出现通信故障,所以输入电压阈值测试是CAN物理层一致性测试中的重要部分。阈值测试分为隐性输入电压阈值和显性输入电压阈值,节点差分电压Vdiff大于0.9 V时必须识别为显性,小于0.5 V时必须识别为隐性,在0.5~0.9 V之间,属于不确定区域。因此测试目的是为了验证节点在ISO11898中标示的输入电压阈值范围内均可以正常通讯。
依据标准ISO11898,输入电压阀值要求见表1[3-5]。
表1 输入电压阀值
输入电压阀值测试方法分为隐性输入电压阀值测试方法和显性电压阀值测试方法。
2.3.1 隐性输入电压阀值测试方法
按照图1隐性输入电压阀值测试接线图连接测试电路,使用示波器CANScope来监测CAN总线报文帧,测试时被测样件DUT处于发送报文状态。调节电压源U,使监控示波器上CANH空闲时刻的电压分别为-2 V及6.5 V,通过调节电流源I使得差分电压Vdiff达到0.5 V的上限值。重复上述步骤连续测试10次,记录每次测试结果,取其平均值保证结果的准确性。
图1 隐性输入电压阀值测试接线图
2.3.2 隐性输入电压阀值判定
在差分电压Vdiff≤0.5 V时,如果DUT可以正常发送报文,则隐性输入电压阀值测试通过。
2.3.3 显性输入电压阀值测试方法
按照图2显性输入电压阀值测试接线图连接测试电路,使用示波器CANScope来监测CAN总线报文帧,测试时DUT处于发送报文状态。调节电压源U,使监控示波器上CANL空闲时刻的电压分别为-2 V及6.5 V,通过调节电流源I使得差分电压Vdiff以步长为0.1 V的速度,依次从隐性输入电压上限值0.5 V调整至显性输入电压下限值0.9 V。重复上述步骤连续测试10次,记录每次测试结果,取其平均值保证结果的准确性。
图2 隐性输入电压阀值测试接线图
2.3.4 隐性输入电压阀值判定
当显性输入电压限值为0.5 V时,DUT应能正常发送CAN报文;在显性输入电压限值达到0.9 V时,DUT停止CAN报文的发送,则显性输入电压阀值测试通过。
CAN总线电压用于检查DUT的CAN_H与CAN_L的隐性输出电压和显性输出电压是否满足标准ISO11898中CAN总线物理层的要求。
依据标准ISO11898,CAN总线电压要求见表2[3-5]。
表2 CAN总线电压
CAN总线电压测试方法分为隐性电压测试方法和显性电压测试方法。
3.3.1 CAN总线隐性电压测试方法
按照图3隐性输出电压测试接线图连接测试电路,DUT正常工作状态且处于隐性输出状态,接入终端负载60 Ω(如DUT内有终端电阻120 Ω,则外接120 Ω终端电阻),用示波器CANScope测试CAN_H的平均电压、CAN_L的平均电压。
图3 隐性输出电压测试接线图
计算差分电压Vdiff=VCAN_H-VCAN_L和共模电压Vcm=0.5*(VCAN_H+VCAN_L),并与测试要求进行比较。
3.3.2 隐性输出电压判定
CAN_H的平均电压、CAN_L的平均电压、CAN_H与CAN_L之间的差分电压和CAN_H与CAN_L之间共模电压应满足表2的最大最小值要求。
3.3.3 CAN总线显性电压测试方法
按照图4隐性输出电压测试接线图连接测试电路,DUT正常工作状态且处于显性输出状态,接入终端负载60 Ω(如DUT内有终端电阻120 Ω,则外接120 Ω终端电阻),用示波器CANScope测试CAN_H的平均电压、CAN_L的平均电压。
图4 显性输出电压测试接线图
计算差分电压Vdiff=VCAN_H-VCAN_L和共模电压Vcm=0.5×(VCAN_H+VCAN_L),并与测试要求进行比较。
3.3.4 显性输出电压判定
CAN_H的平均电压、CAN_L的平均电压、CAN_H与CAN_L之间的差分电压和CAN_H与CAN_L之间共模电压满足表2的最大最小值要求。
阻抗测试用于模拟当电源断开(如保险丝熔断)时,CAN_H和CAN_L的各自内阻及CAN_H、CAN_L之间的差分电阻是否满足标准ISO11898中CAN总线物理层的要求。
依据标准ISO11898,CAN总线对地电阻和差分电阻要求见表3[3-5]。
表3 CAN总线对地电阻和差分电阻
CAN总线阻抗测试,需人为模拟电源正常连接或断开、地线正常连接或断开、DUT有或无终端电阻测试条件。
4.3.1 阻抗测试方法——电源正常连接
按照图5阻抗测试接线图连接测试电路,测试电阻Rtest为5 kΩ。测试时,DUT正常工作且处于隐性输出状态,调节电压源U=-2 V和7 V,用万用表分别测试CANH和CANL的对地电压V,代入以下计算公式,计算电源和地线断正常连接时CANH和CANL的阻抗,其中VCAN_H和VCAN_L为隐性输出电压。
图5 阻抗测试接线图
4.3.2 阻抗测试方法——电源或地线断开
按照图5阻抗测试接线图连接测试电路,断开电源或地线,参照4.3.1的方法测试CANH和CANL的对地电压V,代入以下计算公式,计算电源或地线断开时CANH和CANL的阻抗。
4.3.3 阻抗测试方法——差分电阻
按照图6差分电阻测试接线图连接测试电路,测试时,调节电压源U=5 V,用万用表测试CANH和CANL之间的电压V,代入以下计算公式,计算CANH和CANL的差分阻抗,其中Vdiff为隐性差分电压。
图6 差分电阻测试接线图
4.3.4 阻抗判定
CANH、CANL对地电阻和CANH、CANL之间的差分电阻满足表3的最大、最小值要求。
由于CAN总线较长,导致总线上导线电容增加,从而增加线路阻抗。边沿测试用于模拟导线在最大最小容抗下,测试DUT发送的CAN总线信号的隐性转显性和显性转隐性的转换时间,检查位上升/下降时间(即:位斜率)是否满足标准ISO11898中CAN总线物理层规范中的要求。边沿测试分为上升时间测试、下降时间测试,上升/下降时间定义如图7所示。
图7 上升/下降时间定义
依据标准ISO11898,CAN总线边沿测试要求见表4[3-5]。
表4 CAN总线上升下降时间
用示波器采集CAN总线波形,设置幅值光标为20%~80%,记录上升沿时间和下降沿时间。测试并记录多次数据,确认每次求得上升沿、下降沿时间都满足表4的要求。
CAN_H、CAN_L上升时间和下降时间应满足表4的最大、最小值要求。
容错性测试用于模拟电源断路,CANH或CANL断路、短接电源或地,及地线偏移等情况下DUT的CAN总线通信状态,并检查故障修复后DUT恢复CAN总线通信的行为。
地偏移:在地偏移电压从0 V变化至±2 V过程中,不允许DUT出现CAN总线通信故障(如:发送错误帧等)。
掉电、掉地:掉电或掉地后,DUT停止CAN总线报文的发送和接收,不能造成DUT任何形式的损坏,掉电修复后DUT恢复正常通信。
CANH或CANL对电源短路、对地短路:CANH或CANL对电源短路、对地短路后,DUT停止CAN总线报文的发送和接收,不能造成DUT任何形式的损坏,掉电修复后DUT恢复正常通信。
CAN总线容错性测试方法分为地偏移、掉电、掉地、对电源短路和对地短路。
6.3.1 地偏移测试方法
按照图8地偏移测试接线图连接测试电路,调节电源S2电压为0~±2 V,用示波器观察DUT是否正常发送接收CAN总线报文。
图8 地偏移测试接线图
6.3.2 掉电、掉地测试方法
按照图9掉电、掉地测试接线图连接测试电路,使DUT单独丢失电源,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,电源恢复后DUT是否能恢复通讯。
按照图9掉电、掉地测试接线图连接测试电路,使DUT单独断开地线,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,地线恢复后DUT是否能恢复通讯。
图9 掉电、掉地测试接线图
6.3.3 CANH或CANL对电源短路
按照图9掉电、掉地测试接线图连接测试电路,使CAN_H单独对电源短路1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
按照图9掉电、掉地测试接线图连接测试电路,使CAN_L单独对电源短路1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
按照图9掉电、掉地测试接线图连接测试电路,使CAN_H和CAN_L同时对电源短路1分钟,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
6.3.4 CANH或CANL对地短路
按照图9掉电、掉地测试接线图连接测试电路,使CAN_H单独对地短路1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
按照图9掉电、掉地测试接线图连接测试电路,使CAN_L单独对地短路1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
按照图9掉电、掉地测试接线图连接测试电路,使CAN_H和CAN_L同时对地短路1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
6.3.5 CANH或CANL断开
按照图9掉电、掉地测试接线图连接测试电路,使CAN_H单独断开1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
按照图9掉电、掉地测试接线图连接测试电路,使CAN_L单独断开1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
按照图9掉电、掉地测试接线图连接测试电路,使CAN_H和CAN_L同时断开1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
6.3.6 CANH和CANL短路
按照图9掉电、掉地测试接线图连接测试电路,使CAN_H和CAN_L短路1 min,用示波器CANScope测试DUT是否正常发送接收CAN总线报文,故障恢复后DUT是否能恢复通讯。
采样点是接收节点判断信号逻辑的位置,CAN通讯属于异步通讯,需要通过不断的重同步才能保证接收节点的采样准确;若采样点太靠前或太靠后,则因为线缆容抗原因,容易发生采样错误,所以对CAN节点进行采样点的测试十分重要。采样点测试用于检查DUT的采样点是否满足标准ISO11898-2中CAN总线物理层规范的要求。
DUT发送的CAN报文信号的采样点应处于标准ISO11898-2定义的范围:75%≤SP≤87.5%。
按照图10采样点测试接线图连接测试电路,DUT正常工作后启动CAN总线干扰仪VH6501报文干扰功能,从位时间的45%位置,每次干扰递增1%,直至100%,通过CAN卡统计记录错误报文,出现错误报文的干扰点则即为采样点。
图10 采样点测试接线图
随着CAN总线在国内应用的日益广泛,CAN总线测试技术将越发重要。CAN总线的一致性有效保证CAN网络的环境稳定,提高CAN网络的抗干扰能力。CAN总线一致性测试是CAN总线测试的核心,需要根据相关的CAN协议和实际CAN总线设计需求制定测试内容和测试方法。除以上提及的测试内容外,CAN总线一致性测试还应包括对称性、报文数据类型、报文ID、报文DLC、位填充、信号缺省、周期容差和负载率等测试。因此在工作中,应善于总结CAN总线开发测试经验,吸取国内外CAN总线开发测试方法,有利于快速提高和完善CAN总线测试。