一种矿用硬件CAN总线中继器设计

谢国军1,2,袁凤培1,2,丁俊峰1,2

(1.中煤科工集团常州研究院有限公司, 江苏 常州 213015;2.天地(常州)自动化股份有限公司, 江苏 常州 213015)

摘要针对煤矿现场设备因节点多、距离长而需要对CAN总线信号进行中继放大的要求,以及常用的软件CAN总线中继器存在数据帧延时、丢帧、功耗大、速率无法自适应等问题,设计了一种矿用硬件CAN总线中继器。该中继器主要由D触发器、异或门和CAN收发器组成,其中D触发器用于控制电平信号传输,异或门用于产生D触发器翻转所需的脉冲信号,CAN收发器将数据接入CAN总线网络,从而实现CAN总线信号透明传输。仿真及试验结果表明,矿用硬件CAN总线中继器能准确传输CAN数据帧,有效提高总线电平,改善信号质量,提高通信距离。与软件CAN总线中继器相比,该中继器具有功耗低、延时小、不丢帧、速率自适应等优点,适用于煤炭工业领域对数据帧延时、功耗等要求较高的CAN总线网络。

关键词煤矿电力监测; 胶带运输监测; 语音扩播; 控制器局域网; CAN总线中继器; 硬件中继器; 软件中继器; 速率自适应

0 引言

控制器局域网(Controller Area Network,CAN)是一种用于连接汽车和工业场合中电子控制模块、传感器和执行器的串行、异步、多主的现场总线,称为ISO11898[1-2]。近年来,CAN总线凭借优秀的抗干扰能力及通信仲裁机制,已广泛应用于工业现场控制、小区安防、环境监控等领域,被公认为是最有前景的现场总线之一。煤炭工业领域中CAN总线多用于电力监测、胶带运输监测、语音扩播等系统[3-6]。煤矿现场设备节点多、距离长,在总线传输速率一定的前提下,无法保证较长的传输距离,因此需要对 CAN总线信号进行中继放大[7]

CAN总线中继器是CAN总线网络的关键设备。CAN总线网络中可使用的最大总线长度主要由信号的传输延时和幅值衰减决定[8-10],中继器用来补偿幅值衰减。根据设计方法,CAN 总线中继器可分为软件中继器和硬件中继器[7,11]。软件中继器通常由MCU、CAN控制器和CAN收发器三部分组成,其中MCU负责数据缓存和转发,CAN控制器将数据转换成CAN帧格式,CAN收发器将转换后的数据接入CAN总线网络。软件中继器最大的优点是具备帧过滤功能,但也存在以下缺点:① 由于采用先存储后转发处理模式,数据帧在中继器上会产生不小于1帧数据的延时。② 当网络负荷重时,可能因中继器缓冲区存储空间不足而产生丢帧现象。③ 软件中继器需配置通信速率后才能使用,无法做到速率自适应。④ MCU和CAN控制器的存在导致软件中继器功耗较大。

硬件中继器通过门电路与一些分立器件的组合来设计,可解决软件中继器存在的上述问题。笔者通过调研发现硬件中继器应用极少,主要原因:① CAN总线为双向通信,设计组合电路时需特别注意CAN总线的时序逻辑,确保CAN数据帧准确传输。2个CAN收发器直接互连无法传输信号,中间必须加入一定的逻辑控制电路[12]。② CAN总线对传输延时敏感,晶振偏差、节点内部延时等都可能导致通信失败[13]。设计硬件中继器存在一定难度,但其为透明传输,功耗小、无缓冲、不丢包、速率自适应,较软件中继器更有应用价值。鉴此,笔者设计了一种矿用硬件CAN总线中继器。该中继器由高速逻辑器件组成,适用于煤炭工业及其他领域对数据帧延时、功耗等要求较高的CAN总线网络。本文重点分析其逻辑控制电路。

1 矿用硬件CAN总线中继器原理

矿用硬件CAN总线中继器原理如图1所示,电路如图2所示。中继器核心是处于2个CAN收发器之间的逻辑控制电路,其主要由D触发器U4、异或门U3组成。D触发器主要用于控制TTL端电平信号传递,异或门用于产生D触发器翻转所需的脉冲信号。

图1 矿用硬件CAN总线中继器原理
Fig.1 Principle of mine-used hardware CAN-bus repeater

图2 矿用硬件CAN总线中继器电路
Fig.2 Circuit of mine-used hardware CAN-bus repeater

D触发器真值表见表1[14],其中H代表高电平,L代表低电平,H*代表无法确定,↑代表上升沿,↓代表下降沿。

CAN总线信号用隐性代表逻辑1,显性代表逻辑0。根据总线仲裁规则,当总线上显隐性信号同时出现时,总线表现为显性[15]

本文以图3所示的CAN总线模型为例进行描述,其中T1,T2为CAN总线终端,R为CAN总线中继器。总线CAN1,CAN2分别接入中继器中CAN收发器U1,U2。因CAN总线模型两侧完全对称,在单端发送模式下,T1或T2作为发送端并无差别,本文设定T2作为发送端,T1作为接收端。

表1 D触发器真值表
Table 1 Truth table of D trigger

输入输出PRECLRCLKDQQLH××HLHL××LHLL××H*H*HH↑HHLHH↑LLHHHL×无变化HHH×无变化HH↓×无变化

图3 CAN总线模型
Fig.3 CAN-bus model

当CAN总线空闲时,反馈路径如图4所示(括号内为实时电平,0代表低电平,1代表高电平,下同),中继器R中的信号Tx1,Tx2,Rx1,Rx2,Set1,Set2均会在高电平时达到稳态。

图4 CAN总线空闲时反馈路径
Fig.4 Feedback path at CAN-bus free time

当T2端信号从隐性跳变成显性时,总线CAN2呈显性电平。Rx2端接收到低电平,CP端产生上升沿,Rx2端低电平信号传递到Tx1端,这样T2端显性电平传递到T1端。当低电平传递到Tx1端时,Tx1通过反馈路径完成自锁,最终Tx1在低电平时达到稳态,T2端显性电平可以持续传递到T1端。此时各信号转换如图5所示。

图5 T2端发送显性电平时各信号转换
Fig.5 Each signal conversion when T2 end sends dominant level

当T2端信号从显性跳变成隐性时,Tx2仍处于高电平。总线CAN2的仲裁结果为隐性。Rx2端接收到高电平,CP端产生上升沿,Rx2端高电平信号传递到Tx1端,总线CAN1的仲裁结果为隐性,这样T2端隐性电平传递到T1端。当达到高电平时,Tx1和Tx2通过反馈路径完成自锁,最终Tx1,Tx2在高电平达到稳态,T2端隐性电平可以持续传递到T1端。此时各信号转换如图6所示。

图6 T2端发送隐性电平时各信号转换
Fig.6 Each signal conversion when T2 end sends recessive level

当T1,T2端信号同时从隐性跳变成显性时,Tx1,Tx2仍处于高电平,Tx1,Tx2通过反馈路径完成自锁,因此CAN1,CAN2仍呈显性电平,T1,T2端信号传输完成。此时各信号转换如图7所示。

图7 两端同时发送时各信号转换
Fig.7 Each signal conversion when both ends send signal simultaneously

2 软件仿真

采用Multisim软件对设计的矿用硬件CAN总线中继器逻辑控制电路进行仿真。单端发送时,采用在Rx2端附加1个1 MHz方波信号的方式模拟CAN2总线上电平变化。仿真结果如图8所示,从上到下依次为Rx2,Tx1,Rx1,CP信号波形。

两端同时发送时,采用在Rx2,Rx1端同时附加1个1 MHz方波信号的方式模拟两侧总线上的电平变化。仿真结果如图9所示,从上到下依次为Rx2,Tx1,Rx1,CP信号波形。

从图8可看出,单端发送时,Tx1,Rx1跟随Rx2波形变化,Rx1与Rx2之间存在约17 ns的延时,与仿真中选用的D触发器固有延时吻合。从图9可看出,两端同时发送时,Rx1,Rx2波形完全一致,没有延时。

CAN总线发送端通过在每个应答间隙(ACK SLOT)等待接收端回复的应答信号来确定报文是否发送成功,ACK SLOT持续时间为1 bit时间。在1 Mbit/s速率下,1 bit持续时间为1 μs。根据图8中测量的延时可推算出,发送端在发送完成并接收到应答信号的延时约为34 ns,该时间即为中继延时。CAN控制器的采样点通常设计在1 bit的70%~80%位置,即700~800 ns位置,因此理论上本文设计的矿用硬件CAN总线中继器能满足1 Mbit/s速率以下的应用。

需要注意的是,图2中R4,C3和R5,C4组成的RC电路介电常数应足够大,避免Rx端在低电平时通过三极管将Set端电平拉低,从而影响Tx端信号。

(a) 信号波形

(b) 波形放大

图8 单端发送时仿真结果
Fig.8 Simulation results when single end sends data

图9 双端发送时仿真结果
Fig.9 Simulation result when both ends send data

3 试验结果

根据图2搭建矿用硬件CAN总线中继器。触发器选用SN74LVC1G74,带宽为200 MHz;异或门选用NC7ST86M5X,带宽为100 MHz;CAN收发器选用SN65HVD251。矿用硬件CAN总线中继器供电电压为5 V,整机功耗约为0.25 W。

布置1个含有4个节点的CAN总线网络,速率为50 kbit/s,MYHV电缆线径为1 mm2,长度为1 km,4个节点等距分布。两通道示波器分别观察首端发送节点1(通道1)及尾端接收节点4(通道2)。不加中继器时试验波形如图10(a)所示,在节点2,3之间加中继器后试验波形如图10(b)所示。对比两图中通道2波形可看出,采用矿用硬件CAN总线中继器后,CAN总线网络的电平幅值明显加强,且信号质量有显著改善。

(a) 不加中继器

(b) 增加中继器

图10 CAN总线网络试验结果
Fig.10 Experiment results of CAN-bus network

布置1个含有8个节点的CAN总线网络,MYHV电缆线径为1 mm2,矿用硬件CAN总线中继器在网络中间。统计在不同速率下有无中继器时CAN总线网络最大通信距离,结果见表2。可看出采用矿用硬件CAN总线中继器后,CAN总线网络的通信距离得到显著提高。

表2 CAN总线网络最大通信距离
Table 2 The maximum communication distance of CAN-bus network

通信速率/(kbit·s-1)500250125100502010通信距离/m无中继器50100300400100015002000有中继器100200500600150021002500

4 结论

(1) 仿真及试验结果表明,矿用硬件CAN总线中继器能准确传输CAN数据帧,有效提高总线电平,改善信号质量,提高通信距离。与软件CAN总线中继器相比,该中继器具有功耗低、延时小、不丢帧、不死机、速率自适应等优点。

(2) 矿用硬件CAN总线中继器能提高传输距离,但并不一定能加倍。总线电平及传输延时共同影响CAN总线通信距离,矿用硬件CAN总线中继器无法解决由线路参数(电感、电容)造成的数据传输延时。矿用硬件CAN总线中继器所需的触发器、门电路等需采用高速器件,以减小器件对整个网络传输延时的影响。

(3) 对矿用硬件CAN总线中继器电路稍加改造即可应用于I2C通信,可实现本安与非安电路之间的I2C通信隔离。

参考文献(References):

[1] 饶运涛,邹继军,郑勇芸.现场总线CAN原理与应用技术[M].北京:北京航空航天大学出版社,2004.

RAO Yuntao,ZOU Jijun,ZHENG Yongyun.Field bus CAN principle and application technology[M].Beijing:Beihang University Press,2004.

[2] 邬宽明.现场总线技术应用选编(上)[M].北京:北京航空航天大学出版社,2003.

WU Kuanming.Selection of field bus technology application(1)[M].Beijing:Beihang University Press,2003.

[3] 荣相,徐向成.CAN总线在煤矿井下电力监控系统中的应用[J].工矿自动化,2006,32(4):71-73.

RONG Xiang,XU Xiangcheng.Application of CAN bus in electric power monitoring system of coal mine underground[J].Industry and Mine Automation,2006,32(4):71-73.

[4] 陈伟.基于LPC2194的CAN总线中继器设计及其在煤矿设备系统中的应用[J].电子技术与软件工程,2014(19):121-123.

CHEN Wei.Design of CAN bus repeater based on LPC2194 and its application in coal mine device system[J].Electronic Technology & Software Engineering,2014(19):121-123.

[5] 丁恩杰,苗曙光,朱微维,等.一种基于CAN总线的煤矿数字化扩音电话系统的设计[J].工矿自动化,2010,36(1):66-69.

DING Enjie,MIAO Shuguang,ZHU Weiwei,et al.Design of digital broadcast telephone system of coal mine based on CAN bus[J].Industry and Mine Automation,2010,36(1):66-69.

[6] 张小鸣,李永新.基于SJA1000的CAN网桥设计[J].仪表技术与传感器,2007(11):22-24.

ZHANG Xiaoming,LI Yongxin.Design of CAN network based on SJA1000[J].Instrument Technique and Sensor,2007(11):22-24.

[7] 崔怀兵,高峰.矿用CAN总线中继器的设计[J].工矿自动化,2011,37(6):56-59.

CUI Huaibing,GAO Feng.Design of repeaters of mine-used CAN bus[J].Industry and Mine Automation,2011,37(6):56-59.

[8] 胡庆新,李冬.基于CAN总线的煤矿控制系统远距离传输的研究[J].合肥工业大学学报(自然科学版),2010,33(10):1515-1518.

HU Qingxin,LI Dong.Study of long-distance transmission of coal mine control system based on CAN-bus[J].Journal of Hefei University of Technology(Natural Science),2010,33(10):1515-1518.

[9] 谢兵,杨帆,吴绍辉.增大CAN总线传输距离的设计方案[J].工矿自动化,2010,36(5):119-121.

XIE Bing,YANG Fan,WU Shaohui.Design scheme of increasing transmission distance of CAN bus[J].Industry and Mine Automation,2010,36(5):119-121.

[10] 杨芬,徐钊,曹茂虹.增大CAN总线传输距离的分析与测试[J].工矿自动化,2007,33(5):30-32.

YANG Fen,XU Zhao,CAO Maohong.Analysis and testing of improving transmission distance of CAN bus[J].Industry and Mine Automation,2007,33(5):30-32.

[11] 余坤,刘文超.基于Cortex-M3的CAN总线中继器设计[J].仪表技术与传感器,2018(7):33-35.

YU Kun,LIU Wenchao.Design of CAN bus repeater based on Cortex-M3[J].Instrument Technique and Sensor,2018(7):33-35.

[12] 范瑞霞,李位星.针对CAN总线传输距离问题的两种解决方案[J].微计算机信息,2006(22):161-162.

FAN Ruixia,LI Weixing.Two solutions deal with the problem of CAN bus transport distance[J].Computer Information,2006(22):161-162.

[13] 王志萍,张东来.CAN通信中位定时的容差分析研究[J].测控技术,2005,24(8):74-76.

WANG Zhiping,ZHANG Donglai.Tolerance analysis of bit timing on CAN communication[J].Measurement & Control Technology,2005,24(8):74-76.

[14] SN74LVC1G74 single positive edge triggered D-type flip flop with clear and preset[EB/OL].[2019-01-20].http://www.ti.com/cn/lit/ds/symlink/sn74lvc1g74.pdf.

[15] ISO11898 Controller Area Network(CAN)1-5[S].

Design of a mine-used hardware CAN-bus repeater

XIE Guojun1,2, YUAN Fengpei1,2, DING Junfeng1,2

(1.CCTEG Changzhou Research Institute, Changzhou 213015, China;2.Tiandi(Changzhou) Automation Co., Ltd., Changzhou 213015, China)

Abstract:In view of requirement of relay and amplification of CAN bus signal due to lots of nodes and long transmission distance of coal mine field equipments and problems of normal software CAN-bus repeater such as data frame time-delay, frame loss, large power consumption, non self-adaptive rate and so on. In order to solve above problems, a mine-used hardware CAN-bus repeater was designed. The repeater is mainly composed of D trigger, XOR gate and CAN transceiver. The D trigger is used to control level signal transmission, the XOR gate is used to generate pulse signals for D trigger flip-flop, and the CAN transceiver accesses data into CAN-bus network, so as to realize transparent transmission of CAN-bus signal. The simulation and experiment test results show that the mine-used hardware CAN-bus repeater can correctly transmit CAN data frame, effectively improve bus level and signal quality, and increase communication distance. Compared with software CAN-bus repeater, the mine-used hardware CAN-bus repeater has advantages such as low power consumption, little time-delay, no frame loss, rate self-adaption and so on, which is applicable for CAN-bus network with high requirements about data frame time-delay and power consumption in coal industry field.

Key words:power monitoring in coal mine; belt conveyor monitoring; voice broadcast; controller area network; CAN-bus repeater; hardware repeater; software repeater; rate self-adaption

中图分类号:TD67

文献标志码:A

文章编号1671-251X(2019)11-0037-05

DOI:10.13272/j.issn.1671-251x.2019060015

收稿日期:2019-06-06;修回日期:2019-10-21;责任编辑:李明。

基金项目:天地科技股份有限公司科技创新创业资金专项项目(2018-TD-QN012)。

作者简介:谢国军(1974-),男,四川射洪人,工程师,现主要从事矿用传感器、控制器等方面的研发工作,E-mail:924914787@qq.com。

引用格式:谢国军,袁凤培,丁俊峰.一种矿用硬件CAN总线中继器设计[J].工矿自动化,2019,45(11):37-41.

XIE Guojun,YUAN Fengpei,DING Junfeng.Design of a mine-used hardware CAN-bus repeater[J].Industry and Mine Automation,2019,45(11):37-41.