基于RS485数据帧计时的总线设备间距离测量

2021-07-30 09:26柏思忠
工矿自动化 2021年7期
关键词:计数器计时时钟

柏思忠

(1.中煤科工集团重庆研究院有限公司, 重庆 400039; 2.瓦斯灾害监控与应急技术国家重点实验室, 重庆 400039)

0 引言

煤矿井下设备和仪器仪表的位置信息是定位和导航的基础,是煤矿智能化、信息化的前提。王国法等[1-2]在科学规划智能化煤矿顶层设计时,要求建立地下精准位置服务系统,包括定位和导航组合技术,为井下人员、车辆、机电设备提供精准定位服务;GB/T 33900—2017《工业物联网仪表应用属性协议》[3]规定工业物联网仪表位置属性指工业物联网仪表的安装位置,是经纬度确定的绝对位置、海拔高度及相对位置信息。可见,无论是智能化煤矿顶层设计还是工业物联网仪表自身要求,智能化煤矿用设备和仪器仪表都应该提供位置信息。

现阶段煤矿井下设备和仪器仪表定位存在2个主要问题:① 大量工作的在线设备不具备提供位置信息的功能[4],增加定位功能需要内置定位模块逐台进行升级改造,数量庞大且涉及安标管理,短期内无法实现。② 以无线定位技术为主,但定位性能受多方面影响,如李涛等[5]分析了煤矿井下ZigBee、WiFi、RFID(Radio Frequency Identification,射频识别)、UWB(Ultra Wide Band,超宽带)4种无线定位技术的优缺点,指出井下环境中强电磁干扰会影响定位精度;陈伟[6]指出RFID技术传输距离短且极易受干扰,ZigBee技术定位误差偏大,WiFi技术同频干扰严重且定位精度不高;王伟[7]指出井下存在多种影响UWB等无线定位精度的噪声,特别是遮挡引起的非视距误差导致定位误差较大;孙继平等[8-9]指出煤矿井下无线传输受无线频段、天线位置和巷道工况影响,导致传输损耗大,且受本质安全限制,无线发射功率小,而机电设备特别是变频器功率大、启停频繁、设备相对集中,对无线传输造成严重的电磁干扰。

针对上述问题,本文提出了一种采用有线方式实现设备间距离测量的方法。首先阐述了设备间距离测量原理;然后分析了影响距离测量精度的主要因素,并针对影响因素制定了相应措施;最后通过试验验证了采用该方法进行设备间距离测量和定位的效果。

1 设备间距离测量原理

除部分无线设备外,煤矿井下设备间采用电缆连接进行供电和通信。若电缆按规范安装和铺设,则设备间距离可通过测量连接设备的电缆长度得到。基于电缆故障测距的时域反射 (Time Domain Reflectometry,TDR)法[10]和无线单边双向测距 (Single-Sided-Two-Way-Ranging,SS-TWR)飞行时间(Time of Flight,TOF)法[11],提出了基于RS485数据帧计时的总线设备间距离测量方法。

1.1 TDR法

TDR法不仅可用于测量传输线的特征阻抗,还能定位断点或短路点[12],据此可测量电缆长度。如图1所示,在电缆一端发射1个电压脉冲,脉冲沿电缆传输,在另一端会发生反射。记录从发送脉冲到接收脉冲的时间t,结合电磁波在电缆中的传播速度vs,即可计算出电缆长度:

图1 TDR法测量电缆长度原理

(1)

1.2 SS-TWR TOF法

SS-TWR TOF法原理如图2所示。假设基站发送UWB信号时刻为T0,标签接收信号时刻为TR,标签对信号进行时间戳记录后向基站回发信号的时刻为TS,基站接收到回发信号的时刻为TEnd。

图2 SS-TWR TOF法原理

根据图2可知,UWB信号从基站到标签的TOF为

(2)

根据Ttof可计算出基站与标签间的距离:

Dtof=Ttofc

(3)

式中c为电磁波在空气中的传播速度,c=3×108m/s。

1.3 基于RS485数据帧计时的总线设备间距离测量方法

用一段有限长度的电缆连接主机E0和任意一台从机Ei,i=1,2,…,n(n为从机数量)。根据TDR法测量电缆长度原理,采用RS485数据帧中某一固定位置的波形作为发送和接收数据的特征波,用来记录传输时刻。结合SS-TWR TOF法原理,记录主机发送呼叫数据时刻T0、从机接收呼叫数据时刻TiR、从机向主机回发应答数据时刻TiS、主机接收应答数据时刻TEnd,如图3所示。所有记录的时刻均以主机和从机MCU串口中断时刻为准。

图3 RS485数据帧计时原理

根据记录时刻计算数据从主机到从机的TOF:

(4)

进而得出主机E0与从机Ei之间的电缆长度(设备间距离):

(5)

RS485总线上主机和沿线所有从机连接如图4所示。

图4 RS485总线设备连接

主机E0和应答从机Ei之间的距离通过式(5)计算。其他从机与主机之间的距离计算方法如下。其他任意从机Ej(j=1,2,…,n,j≠i)在线监听数据传输中的特征波,记录本机接收到各特征波的时刻,计算出Ei与Ej之间的距离:

(6)

式中:Tji为数据从Ei传输到Ej的TOF;TjEnd为Ej接收到Ei应答数据时刻;Tj0为Ej接收到主机呼叫数据时刻。

所有从机的一维距离坐标以应答从机Ei为原点,主机E0到Ei的距离D0i、任意从机Ek(k=1,2,…,n)到Ei的距离Dki(k=i时Dki=0,k≠i时Dki根据式(6)计算)共同组成一维向量Ai=[D0iD1i…Dni]。同理,主机呼叫另一台从机Em(m=1,2,…,n,m≠i),得到一维向量Am=[D0mD1m…Dnm]。根据2个一维向量中的距离,得出总线上任意从机Ek以主机E0为原点的一维坐标:

(7)

式中f为计量TOF的计数器频率。

总线上从机的一维坐标X=[x1x2…xn]、所有设备的一维分布如图5所示。

图5 设备一维分布

2 设备间距离测量精度分析

分析式(5)、式(6)可知,设备间距离测量精度与计时时刻精度、电磁波传播速度有关。计时时刻精度主要取决于计时时钟频率、主从机时钟偏差和电路时延,因此采用SS-TWR TOF法进行设备间距离测量时,精度从计时时钟频率、主从机时钟偏差、电路时延、电磁波传播速度4个方面进行分析,并采取相应措施提高测量精度。

2.1 计时时钟频率

主机和从机各收发时刻的计时方式:MCU的系统计数器按照计时时钟频率累加,依据一定周期周而复始运行,数据收发时刻T通过直接捕获系统计数器值N得到。

(8)

式中K为时钟漂移率,取决于外部晶振和MCU的锁相环频率漂移值。

在时钟漂移率K和计数器频率f一定的情况下,计数器值N越大,则计时偏差越大。假设K=10×10-6,f=100 MHz,vs=2×108m/s,当N=104时,计时偏差约为10-9s,距离偏差约为0.2 m;当N=106时,计时偏差约为10-7s,距离偏差约为20 m。随着N进一步增大,计时偏差增大。因此,在计算数据收发时刻时,不采用计数器绝对数值,而采用同一计数器不同时刻的相对数值,以消除累计误差,且控制在104数量级。

可见,要提高计时时钟频率精度,首先选择频率稳定度高的外部晶振,减小时钟漂移率;然后提高计数器计时频率;最后采用计数器相对数值,避免绝对数值造成大的累计误差,且距离测量范围不超过5 km时,计数器相对数值不超过104数量级。

2.2 主从机时钟偏差

主从机分别记录数据收发时刻。主机时钟和各从机时钟独立运行在各自MCU系统时钟基础上,相互之间没有同步性和协调性,主机某一计数器值和相同时刻从机计数器值的差值是随机的。该值附加在计数器值上,将其增大到105,106,107甚至更大,造成距离偏差几米、几十米、几百米甚至更多。

针对主从机时钟偏差问题,若采用校时方法,主机用计数器值精准校时每台从机,则每台从机与主机计时器值的差值包含了TOF,因此无法实现同步。若主机和从机采用同一计数器的相对数值而非绝对数值,即可从原理上消除时钟偏差对距离测量的影响。因此,主从机选用计数器相对数值解决时钟偏差问题。

2.3 电路时延

在计算主从机之间的距离时,TOF依据主机和各从机的数据收发时刻计算,计算结果除了数据在通信电缆中的TOF外,还包括数据从MCU到总线和总线到MCU之间的电路固定时延。固定时延为

Δt0iB=ΔtEndB+Δt0B+ΔtiSB+ΔtiRB

(9)

式中:ΔtEndB为数据从总线传输至主机MCU的时延;Δt0B为数据从主机MCU传输至总线的时延;ΔtiSB为数据从从机EiMCU传输至总线的时延;ΔtiRB为数据从总线传输至从机EiMCU的电路时延。

考虑固定时延时,数据在通信电缆中的TOF为

(10)

除固定时延外,电路时延还包括传输波形边沿变化引起的时延。对此,采用千米长度标校方法,分别用长度为0,1,2,3,4,5 km的通信电缆连接主机和从机总线端口,测量电路时延,结果见表1。可看出电缆长度为0时,电路时延(仅有固定时延)为95 ns,传输波形边沿变化导致每千米时延额外增加180~210 ns。为减小电路时延对距离测量精度的影响,应去除相应长度电缆电路时延标校值,得到净TOF。

表1 电路时延千米长度标校结果

2.4 电磁波传播速度

测量总线上设备间距离时,电磁波在通信电缆中的传播速度直接影响距离测量结果。考虑电磁波传播速度偏差时,主从机之间的距离为

(11)

式中d为电磁波传播速度的实际偏差率。

假设d=2%,测量1 000 m电缆时偏差为2 m,可见电磁波传播速度对测量结果影响较大。

电磁波传播速度与通信电缆材质[13]密切相关。

(12)

式中:μr为通信电缆外层绝缘材质的相对磁导率;εr为通信电缆外层绝缘材质的相对介电常数。

从式(12)可看出,电磁波在通信电缆中的传输速度与导线材质、长度等无关,取决于外层绝缘材质。针对该问题,采用电缆故障测试仪对实际使用的标准长度通信电缆进行测试[14],反算出电磁波在实际电缆中的传播速度[15],以消除误差。

3 试验验证

3.1 试验平台

试验平台如图6所示。1台矿用本安型显示屏为主机(E0),其通过RS485总线连接8台从机(E1—E8),包括4台GD4瓦斯抽放多参数传感器(简称流量计)和4台GJG100J(B)管道激光甲烷传感器(简称甲烷传感器)。1号流量计(E1)和1号甲烷传感器(E2)通过矿用通信电缆MHYVP 1×4连接在距主机100 m电缆处;2号流量计(E3)和2号甲烷传感器(E4)连接在距主机500 m电缆处;3号流量计(E5)和3号甲烷传感器(E6)连接在距主机1 000 m电缆处;4号流量计(E7)和4号甲烷传感器(E8)连接在距主机2 000 m电缆处。通信方式采用主从点对点轮询机制,主机依次呼叫E1—E8,对应从机应答,周而复始进行半双工通信。

图6 试验平台

主机和从机MCU均采用STM32F407VET6。运行前后台程序,计数器TIM2采用32 位自动重载计数器,计时时钟频率为84 MHz,预分频比置为1(不分频),计时周期为8.4×107(对应时长1 s),通过函数TIM_GetCounter(TIM2)捕获计数器TIM2当前值。

3.2 试验及结果分析

主机和从机之间的TOF通过数据帧收发完成,采用主机和从机之间的校时命令帧进行测量,帧格式见表2。以第3个字节收发串口中断截取计数器值作为计时时刻。

表2 校时命令帧格式

试验步骤包括电磁波传播速度测试、主从机距离测试、主从机位置一维分布计算。

(1) 电磁波传播速度测试。矿用通信电缆MHYVP 1×4为聚乙烯绝缘铜芯材料,截取100 m标准长度,利用电缆故障测试仪对被测电缆进行测试,反算出电磁波传播速度。经测试,矿用通信电缆MHYVP 1×4中电磁波传播速度为1.94×108m/s。

(2) 主从机距离测试。测试步骤:① 主机MCU呼叫E3,在发送完校时命令帧第3字节时捕获计数器TIM2值作为主机发送时刻T0。② E3接收校时命令帧第3字节时捕获计数器TIM2值作为从机接收时刻T3R。③ E3接收完1帧数据后向主机发送校时命令应答帧,发送完第3字节时捕获计数器TIM2值作为从机发送时刻T3S,并将校时命令帧的前4字节赋值为T3R,后4字节赋值为T3S,回发给主机。④ 主机接收到校时命令应答帧的第3字节时捕获计数器TIM2值作为主机接收时刻TEnd。⑤ 计算主从机之间数据传输的净TOF,计算主机和E3之间的距离D03。⑥ 其他从机Ej(j=1,2,4,5,…,8)全过程监听数据传输特征波,记录本机接收呼叫数据时刻Tj0、应答从机接收数据时刻T3R、应答从机发送数据时刻T3S、本机接收应答数据时刻TjEnd,计算本机与E3之间数据传输的净TOFT|j3|,进而得出本机与E3之间的距离Dj3。测试过程中,除电路固定时延外,所有记录时刻和TOF均用计数器值表示。可得T0=408 864,T3R=103 742,T3S=1 363 892,TEnd=1 669 463,T03=441,Δt03B=190 ns,T|03|=433,D03=500.01 m,其他数据见表3,其中Δt0jB为相应从机处的电路固定时延。特别地,E7监听的本机接收应答数据时刻TjEnd比接收呼叫数据时刻Tj0小,原因是计数器进入下一个循环周期,所以应在对应数值上加8.4×107。

表3 设备间距离测试数据

根据测试结果可知:E3与主机的距离为500.01 m;以E3为参考,E4与E3的距离为1.15 m,E1,E2与E3的距离分别为399.55,400.70 m,E5,E6与E3的距离分别为500.01,498.86 m,E7,E8与E3的距离分别为1 500.04,1 498.88 m。重复测试10次,主从机之间的距离和各从机之间的距离没有变化。

(3) 主从机位置一维分布计算。应答从机E3与主机、E3与其他从机之间的距离为一维标量数据,距离数据无法表明其他从机是在E3的近主机侧还是远主机侧,因此,增加主机对E5的呼叫,以E5为参考重复进行测试,所得结果见表4。其他从机与应答从机之间距离差小于1.5 m时,表示2台从机紧挨在一起,用相同坐标表示,其他从机位置根据式(7)转换为一维坐标。以主机E0为原点,从机E1—E8的一维坐标为X=[99.89 99.89 500.01500.01 1 000.02 1 000.02 1 999.47 1 999.47]。总线上所有设备的一维分布如图7所示。

表4 从机间距离及一维坐标计算结果

图7 试验设备一维分布

针对试验设备,电缆总长度为5 km时,末端从机测量RS485信号峰峰值为0.9 V,远大于RS485总线200 mV的接收要求,因此5 km范围内传播损耗很小,不影响距离测量精度;按GB/T 2423.10—2008《电工电子产品环境试验 第2部分:试验方法 试验Fc:振动(正弦)》中试验Fc规定的方法带电测试,按GB/T 17626.3—2006《电磁兼容 试验和测量技术 射频电磁场辐射抗扰度试验》进行3级射频电磁场辐射抗扰度试验,按GB/T 17626.4—2008《电磁兼容 试验和测量技术 电快速瞬变脉冲群抗扰度试验》进行3级电快速瞬变脉冲群抗扰度试验,测试数据和计算结果均在±1.5 m误差范围内。

4 结论

(1) 根据TDR法和SS-TWR TOF法原理,提出了基于RS485数据帧计时的总线设备间距离测量方法,制定了提高计时时钟频率精度、减去电路时延测量净TOF、消除主从机时钟偏差、准确测量电缆中电磁波传播速度等措施,以提高距离测量精度,并根据2次不同参考点的测量结果将标量数据转换为一维坐标,提供沿线所有设备的一维分布。

(2) 试验结果表明:不改变硬件,只更新软件即可通过有线方式测量RS485总线上所有设备之间的距离;在电缆长度5 km范围内,RS485总线沿线所有设备之间距离测量误差不超过±1.5 m;针对RS485总线上所有设备可建立以主机为原点的一维分布。

(3) 该方法适用于总线型拓扑结构设备之间距离测量,特别是矿用本安型分站基于RS485连接总线型传感器、液压支架监测设备、带式输送机沿线监测设备等场合,是一种可靠的有线测量设备间距离和定位方式,是无线定位的有效补充。但该方法只能建立一维分布,无法建立二维或三维分布,不适用于树状、星型或其他带分支网络总线拓扑结构。

猜你喜欢
计数器计时时钟
畅游计时天地
采用虚拟计数器的电子式膜式燃气表
别样的“时钟”
古代的时钟
腕表计时2.0
12时计时法与24时计时法的互化
24时计时法
有趣的时钟
时钟会开“花”
计数器竞争冒险及其处理的仿真分析