APP下载

CAN总线网络通信影响因素分析与应用探讨

2018-02-25成智华

铁路技术创新 2018年6期
关键词:波特率双绞线报文

■ 成智华

控制器局域网络(CAN)总线在车辆控制网络中广泛应用,家用汽车、大型公交客车、货运卡车尤其是电动车内均使用CAN网络,CiA(CAN in AUTOMATION)协会为CAN总线通信提供一系列的协议和技术支持。CAN总线的实时性、可靠性和稳定性对于整个控制系统信息传递至关重要。CAN总线凭借其低成本、高可靠性、高可扩展性等特点,在轻轨车辆上逐步被应用。轻轨车辆在使用网络通信时,通信数据量小,通信实时性要求相对于高速列车要低,因此,CAN总线完全能够满足轻轨车辆的网络通信要求。在实际工程应用中,CAN网络会遇到一些问题导致通信异常,对于网络要求比较高的车辆,通信异常将严重影响车辆正常功能。在此,从CAN总线组成出发,研究影响CAN网络通信的主要因素,通过对CAN总线原理的分析,提出保证和提高CAN网络通信质量的措施。

1 CAN总线常见故障与原因分析

1.1 常见故障

根据实际工程项目的归纳总结,CAN总线常见故障表现如下:(1)网络中断。整个CAN总线网络瘫痪,各电子控制单元(ECU)控制器采集不到总线网络数据。(2)丢包。在一定时间内通信网络上传输的报文间隔性丢失,数据不完整。(3)网络错误帧。在总线上检测到较多的错误帧,引起网络负载异常。错误帧达到一定比例时,影响正常通信。(4)报文周期不稳定。相同ID(CAN总线中用于标记报文的标识)报文发送时,周期波动较大,影响网络通信实时性。

1.2 故障原因分析

CAN总线通信问题多由物理层的电气原因引起[1]。因此,要分析CAN总线故障的原因,首先要了解CAN总线的电气组成及其通信机制,CAN总线的电气组成见图1。电气组成包括通信节点、连接器、通信线和终端电阻。通信线可使用双绞线、单层屏蔽双绞线或双层屏蔽双绞线。CAN总线使用差分信号进行通信,使用双绞线将所有节点的CAN_H和CAN_L连接起来即可进行通信。在远距离传输和强电磁环境下,为提高通信质量可将CAN_GND、CAN_SHEILD连接起来,CAN_GND作为参考信号地,CAN_SHEILD作为屏蔽地通过RC电路进行悬浮接地。通信节点由微控制器、CAN控制器(部分CAN控制器被集成在处理器中)和CAN收发器及外围电路组成。CAN控制器按照一定的协议规则将数据通过收发器在总线上进行发送和接收。通信节点通过连接器与通信线进行连接。终端电阻安装在总线两端,用于防止信号反射,快速释放总线电流,提高通信质量。在出现CAN总线故障时,通过对CAN总线的电气组成进行分析,可逐步排查出引起网络通信故障的原因。

1.2.1 终端电阻

CAN总线上的终端电阻主要有2个作用,一是吸收信号反射的回波,二是稳定和增强信号差分电压,快速释放总线电流。信号传输如同水流,当遇到开口或分支时就会产生反射,引起信号反射的主要原因是阻抗不连续和不匹配。阻抗不连续主要是由于连接器选型不统一;阻抗不匹配主要是因为在总线传输线两端,CAN_H和CAN_L相当于开路,线路阻抗急剧变化,导致信号在线路边沿能量反射,与初始总线信号叠加,产生振铃。在总线末端增加与线缆特征阻抗一致的终端电阻可以吸收信号反射的这部分能量。终端电阻值的大小与总线长度有关,总线长度在2 km以内时选择1/4 W、精度为1%的精密电阻124 Ω;长度大于2 km时,需进行匹配,用示波器观察,差分电压大于1.3 V波形良好时即可。终端电阻选择过小,在控制器驱动能力一定时,驱动电流一定,总线由隐性进入显性时的差分电压会变低(CAN波形幅值过小),当低于0.9 V时,收发器无法识别总线电平信号,则无法进行通信。终端电阻过大时(不接电阻相当于无穷大),相当于开路,很小能量的外部噪声会使总线从隐性进入显性,抗干扰能力差。总线上完全缺少终端电阻时,数据通信的可靠性和抗干扰性能将会明显降低,尤其是在现场环境较为恶劣时,总线甚至无法完成通信。而如果总线只使用1个终端电阻反而会使信号反射更加严重。

终端电阻推荐采用板内分接的方式,不推荐在线束上分接。终端电阻使用单体终端时,阻值推荐120(1±2%)Ω;采用分裂终端接法时,阻值推荐62(1±2%)Ω,接地电容选择4.7~47.0 μF。标准分裂终端电阻接法见图2。在电磁干扰(EMI)影响较大的环境中,可采用H桥式终端电阻接法(见图3),通过稳定隐性共模电压来提高EMC性能[2]。两端终端电阻接地在高频时,可能产生环流,因此,在中低频时可考虑采用终端电阻分裂接地方案。

1.2.2 连接器

E N 50325-4:2002 C A N o p e n[3]网络规范对CAN总线连接器进行了详细规定,规范推荐使用DB9或M12接口,并对引脚进行定义。在CiA 303[4]中,推荐了较多种类的连接器。连接器需满足阻抗连续的要求。在工程上可采用以下经验公式计算出连接器的特征转移阻抗[5]:

式中:ZC为特征转移阻抗;RDC为连接器的直流电阻;sinh为双曲正弦函数;k为与趋肤深度有关的参数(一般取为常数),该参数与通信频率相关;t为时域内的参数值。连接器设计选型时,应注意电缆的特征阻抗,按照相关研究经验,连接器触点的接触电阻应控制为2.5~10 mΩ。

1.2.3 CAN线缆

CAN总线采用双绞线进行差分信号传输。若双绞线选型不合格、线缆阻抗分布不均匀、阻抗不稳定,将导致信号在线缆上传输时产生严重反射现象,进而影响通信质量。在成本可控前提下,尽可能使用屏蔽双绞线,双绞线的单芯横截面积不小于0.5 mm2,屏蔽层单点接地。

通信线缆总线长度对于通信质量有明显影响,可归纳为:(1)总线长度增加使信号的传输延迟增加,引起接收通信节点接收信号异常。(2)总线长度增加使得CAN_H、CAN_L之间的电容增加,造成差分波形上升沿变缓,使位时间变小,超出节点接收位容忍度时,接收节点不能正常接收数据。总线长度除了与实际线缆的长度相关外,还与线缆的端接质量以及线缆是否弯折相关。线束连接时,应对线束连接工艺进行说明,避免由于接线不规范导致通信故障。

在网络电缆布线过程中,需重点关注传输线布局布线中的电缆弯折情况,在电缆走线过程中,尽量将其布置在合适的线槽,并减少弯折和弯曲。此外,电缆端的预留长度要按照标准设计长度选取,避免预留电缆的过度弯折导致传输特性的恶化。同时,要通过合理的布线,尽量减少电缆的走线长度,缩短线路延时[6]。

图1 CAN总线电气组成

图2 标准分裂终端电阻接法

图3 H桥式终端电阻接法

支线长度对于CAN总线通信影响主要表现在信号反射上。在工业现场,为了安装及维护方便,CAN节点通常通过连接器连接到主干线,但由于某些场合为了节省成本,CAN总线采用T型接法,将分支线直接端接在主干线上,导致信号传输时,在端接处产生信号反射,该信号会导致信号电平过冲,进而引起接收器误触发引起接收错误。为了避免这种情况发生,支线应尽可能短,而且各分支长度尽可能有所差异。按照ISO 11898-2规定,1 Mb/s波特率时,分支长度应不超过0.3 m,当波特率降低时,分支长度可适当调整,但不能超过6.0 m。ECU内部CAN_H/CAN_L到收发器的距离应小于6 cm。

CAN通信节点最小节点间距对总线通信质量也有影响。ECU的增加相当于并联更多的电容和电阻,会导致容抗的增大,同时阻抗减小,并在一定范围内使总线的传输通路总阻抗与负载部分的阻抗发生变化,出现不匹配,引起信号反射。ECU节点的最小间距与传输媒介和总线电容相关,按照工程经验,相邻2个ECU之间距离应大于0.1 m。ECU数量也将影响总线通信,最大允许ECU数量如下:通信波特率125 kb/s,ECU节点数量32;通信波特率250 kb/s,ECU节点数量32;通信波特率500 kb/s,ECU节点数量16[7]。

1.2.4 CAN节点

CAN节点是CAN总线通信的核心模块,其软件程序和硬件电路均可对通信造成影响。与软件相关的因素有采样点、波特率、报文周期、报文处理效率、bus-off恢复等。与硬件电路相关的因素有位时间、波特率准确度、上升下降沿时间、信号电平的电压。

通常情况下,CAN节点收发器接收报文采用的是单次采样,读取每1位的电平只采样1次,CAN信号在显性和隐性变化过程中,由于总线电容和信号反射的影响,传输信号不是严格意义的方波,上升沿和下降沿均会占用一定的位时间,信号反射引起的振铃会导致采样时误判,由于CAN通信错误检测的机制,会导致CAN控制器发送错误帧。根据工程经验,当采样点的位置在75.0%—87.5%区间时,采样成功率要高于其他区间。采样点位置见图4。

通信波特率与软件设置及硬件电路的晶振相关,软件设置有误或晶振质量差,都会引起波特率设置有偏差,同时引起位时间不准确。各节点对于波特率和位时间偏差有一定容忍度,但超过接收节点容忍度范围时就会引起通信异常。

报文周期主要与软件定时设置、报文ID优先级、软件处理效率相关。CAN通信采用载波监听多路访问/冲突避免,基于优先级仲裁的通信网络。多个节点同时向网络发送数据时,依据发送报文ID的优先级进行仲裁,ID小的报文优先发送,ID大的报文在ID小(优先级高)的报文发送后,即总线空闲时发送,如果优先级高的报文频繁占用总线,优先级低的报文就会因无法占用总线而出现丢包甚至发送不出去的情况。因此,合理地分配ID,设定好报文优先级,对优先级高的报文要定义好发送报文周期,有效管理报文发送调度,保证网络报文周期的正常发送。在CANopen协议中,对报文的调度进行了说明和要求。

2 故障排查与解决措施

2.1 CAN总线网络中断

CAN总线网络中断主要有3方面原因:(1)接线时出现的问题通常为CAN_H与CAN_L反接,CAN_H与地线反接,CAN_H对地线短路,CAN-L对电源短路。(2)波特率错误,某些节点不是按照规定波特率设置。(3)终端电阻未接或阻值不匹配引起的网上大量错误帧。通常情况下,CAN总线设备节点较多,网络布线较为复杂,为快速定位,可在诊断口直接使用示波器进行观察,若有CAN-H、CAN_L波形,故障则与通信波特率和终端电阻相关。如果排查以上方面均无问题,可排查ECU模块是否正常工作。

2.2 丢包问题

网络丢包的主要原因如下:(1)仲裁导致数据发送拥堵。(2)网络错误帧引起重发导致延时。(3)干扰导致网络短暂故障,一段时间内未接收到报文。(4)设备接收大量ID,数据发送出现拥堵。(5)信号电平的电压过低,接收节点无法识别。ID分配及报文周期设定时,应充分考虑网络带宽和负载,保证低优先级ID能够顺利发出。改善整车网络的整体电磁环境,降低网络干扰源,必要时采用屏蔽双绞线。提高软件处理效率,保证单节点能够正常收发数据。减少总线线路阻抗或加大终端电阻阻值,保证信号传输压降在合理范围内,接收节点能够识别报文。

图4 采样点位置

2.3 错误帧问题

错误帧的发送与通信信号波形质量、节点的采样点有关。信号波形质量差、采样点设置存在偏差会引起采样时误判,发送错误帧。同时,信号受干扰严重,终端电阻匹配不合适,信号反射严重,波形也会发生变化,引起错误帧。要解决大量错误帧报文引起的通信问题,需改善总线信号传输质量,从终端电阻、布线、连接、各节点采样点设置、位时间等方面同时改进。从调试经验上看,出现错误帧时,主要是由于部分ECU产品通信质量差,采样点设置不合理,晶振产生频率不准确引起信号异常。可通过诊断可疑性单节点进行单独测试排查。

2.4 报文周期不稳

报文周期不稳与网络质量、通信ECU的准确性和通信机制有关。网络质量差引起的周期波动需从硬件上解决,主要表现在通信质量差引起错误帧占用总线,重发导致周期异常。部分ECU可能会出现设置定时不准确导致发送周期有误差,可通过单独测试进行确定。通信机制引起的问题需从调度策略上改善,可将发送报文进行合理分配排序,避免发送拥堵。例如在CANopen协议中,基于同步包发送的报文周期与主节点发送的同步包周期相关,如果同步包周期不准,将引起所有节点发送的周期不稳。软件定时不准也将引起周期不稳,部分ECU内使用嵌入式操作系统,定时发送报文时由于实时性问题会出现周期波动问题。因此,需要保证每个节点发送周期的稳定性,以提高网络质量。

3 轻轨车辆CAN总线网络的应用

轻轨车辆通常采用多编组的方式进行连接,按照IEC 61375标准要求,车辆网络分为连接不同列车之间的骨干网和车厢内部设备的组成网。在单节车厢内,网络的主要功能是采集车厢内设备状态数据,传输过程数据,通信距离相对较短(通常为10~20 m),网络协议可选用MVB、以太网、CANopen、Profinet等。由于CAN总线具有短帧、广播、重发机制等特点,用于车厢内组网,在满足性能的同时也可降低通信成本。另外,该技术已在汽车行业和工业领域广泛应用,积累了成熟的诊断、维护技术和经验。

轻轨车辆与大型公交客车相比有以下几点相似:单节车辆长度相差不大,设备产品类似,电气环境中均存在高低压设备,通信功能基本相同。因此CAN总线完全能够满足轻轨车厢内设备通信的需求。但考虑到导电轨高压造成的强电磁影响,轻轨车辆在车厢内部采用CAN通信网络设计和应用时,同样会出现以上影响CAN通信质量的问题,甚至更强的干扰,需加强总线的屏蔽效果,严格把控各产品按照要求进行设计和测试。同时,由于车辆长度和设备节点的原因,在轻轨车辆上的CAN网络分支要合理配置,以保证通信质量。

4 结束语

CAN总线网络凭借其经济的开发成本、便捷的扩展性、强抗干扰能力,非常适合应用于轻轨及其他车辆,并已在深圳地铁4号线车辆中应用多年[8-9]。通信质量对于保证车辆安全正常运行至关重要,因此应在设计开发CAN总线网络时充分考虑各种因素,提高网络通信的稳定性和可靠性。

猜你喜欢

波特率双绞线报文
基于J1939 协议多包报文的时序研究及应用
UART 波特率检测电路的FPGA 设计算法与实现
低轨星座短报文通信中的扩频信号二维快捕优化与实现
双绞线测试技术综述
CTCS-2级报文数据管理需求分析和实现
CAN 总线波特率自适应程序设计
浅析反驳类报文要点
核电磁脉冲作用下不均匀双绞线的时域耦合特性分析∗
浅谈西门子S7—400与S7—200的通讯实现方法
双绞线的使用规范与制作技巧