近年来,煤矿井下网络面临大规模节点部署及节点间高精度、低能耗时间同步的需求[1-2]。在传统井下网络时间同步算法中,平均一致性时间同步算法[3]适用于大量随机节点的网络,不依赖拓扑结构,但需要较长的收敛时间。以树型结构为代表的传感器网络的时序同步协议(Timing-Sync Protocol for Sensor Network,TPSN)算法[4]以根节点为参考节点,具有计算简单的优势,但灵活性差、开销较大。分层时间同步算法[5]采用最大似然估计和最小二乘法计算时钟偏移和频偏,显著降低了能耗,但对节点存储能力要求高。低能耗多跳时间同步(Low-energy Multi-hop Time Synchronization,LMTS)算法[6]通过网络分层机制,在减少能耗的同时较好地克服了网络跳数对同步精度的影响,但在小规模网络中样本少导致同步精度低,不利于网络传输。
时间敏感网络(Time-Sensitive Network,TSN)[7]结合了有线网络定向好、抗干扰的特点与无线传感器网络(Wireless Sensor Network,WSN)可大规模、灵活部署的优势,可提高数据传输实时性和准确性[8-10]。本文基于多Sink节点非均匀分簇结构的煤矿井下TSN,提出了一种分布式精确时间同步(Distributed Precise Time Synchronization,DPTS)算法,在TSN中实现分布式时间同步,可提高网络时间同步精度与稳定性,降低网络时间同步能耗。
多Sink节点非均匀分簇结构[12]可有效避免较远传感器节点采用多跳转发方式而产生的累计时间同步误差,具有减少网络信息传递时延、均衡网络能耗和延长网络运行生存周期的特点[11]。因此,提出了一种基于多Sink节点非均匀分簇结构的煤矿井下TSN,如图1所示。Sink节点作为有线网络的终端及无线网络的汇聚节点,负责传感数据与控制信息的传递;大量传感器节点任意分布在巷道及特殊工作区域,构成WSN。
TSN拓扑如图2所示。有线网络由TSN交换机分配路由,与各Sink节点建立连接;WSN通过非均匀分簇路由算法[11]选举簇首节点,各Sink节点与其通信范围内的簇首节点树状连接,簇首节点与簇内普通节点星状连接。TSN按传输方式分为有线和无线2个区域,按拓扑结构分为3层——包含所有Sink节点的TSN汇聚层;Sink节点与各自通信半径内所有簇首节点组成的主网络;簇首节点与簇中普通节点组成的次网络。“两区三层”的拓扑结构大大提升了网络的灵活性与功能性。
图1 煤矿井下TSN
Fig.1 TSN in coal mine
图2 TSN拓扑
Fig.2 TSN topology
DPTS算法通过计算由各时钟振荡器计数不统一造成的时间偏差来修正TSN时钟信息,并通过滤波思想降低在时间同步过程中因传输及网络环境因素造成的时间同步噪声误差。
节点的时钟状态由硬件时钟直接决定,受外界环境动态影响。硬件时钟可表示为
T(t)=1/f0f(s)ds+T(0)
(1)
式中:t为世界标准时间;f0为节点标记频率;f(s)为时钟频率;T(0)为时钟初始值。
在网络时间同步过程中,主从节点时钟之间的振荡差异会导致时钟频偏[13]及累计相偏。为解决累计误差,时间同步过程需要以周期性同步来保证主从节点时间在一定的同步精度内。由于硬件时钟无法修改,往往采用逻辑时钟实现时间同步[14]。逻辑时钟可表示为
TL(τ)=aMSτ+θ
(2)
式中:aMS为主从相对时钟斜率;τ为参考时间;θ为时间偏差。
在TSN汇聚层选用通用精确时间协议(General Precise Time Protocol,gPTP)算法实现Sink节点间纳秒级时间同步[15];主网络采用基于卡尔曼滤波的优化算法对频偏和相偏进行修正;次网络采用基于广播的单双向混合同步算法修正时钟信息。DPTS算法流程如图3所示,分布式完成同步过程,周期性维持同步修正,进而实现井下网络节点间时间同步。
图3 DPTS算法流程
Fig.3 DPTS algorithm flow
2.2.1 TSN汇聚层时间同步
在TSN汇聚层采取基于实时以太网的有线传输结构,应用的gPTP算法包含了最佳主时钟算法及时间偏差计算算法[15]。首先全网根据最佳主时钟算法选出最稳定的基准时钟作为网络唯一主节点;然后主节点以生成树遍历网络所有从节点进行时间信息交互;最后经过交互后的从节点利用接收的时间戳信息与时间偏差计算算法得出时间偏差并补偿本地时间,完成1次同步过程。
2.2.2 主网络时间同步
当Sink节点在TSN汇聚层中完成时间同步后,主网络启动时间同步。主网络主从节点同步信息交互如图4所示(M为主节点,S为从节点)。
作为主网络主节点,Sink节点发起与各簇首节点的时间同步请求,各簇首节点计算与Sink节点时间偏差并补偿来完成时间同步。时间同步过程分为2个阶段:第一阶段根据传递时间戳信息计算时间偏差和频率相对变化率;第二阶段采用卡尔曼滤波修正噪声误差来精准预测时间偏差,实现主从节点间时间同步。
图4 主网络主从节点同步信息交互
Fig.4 Synchronization information exchange between
master and slave nodes of main network
(1) 时间偏差计算。主节点发起同步请求并记录当前时间TM1,等待回应信息后记录TM2,延时后分别发送包含TM1,TM2与TM3的同步信息。完成1次同步过程后,从节点获取对应时间的时间戳。本文采用收发信息时本地记录时间戳且下次转发的方法,可减少时间戳误差,使得从节点获取的时间戳(TM1—TM3,TS1—TS3)更准确。从节点计算并存储时间偏差θ与主从相对时钟斜率aMS。
(3)
(4)
(5)
式中TDelay为主从传播时延。
(2) 卡尔曼滤波修正。设θ(n),α(n)分别为第n个周期内时间偏差及时钟斜率偏移量,周期性调整采样离散化后,第n+1个周期内时间偏差θ(n+1)与时钟斜率偏移量α(n+1)分别为
(6)
式中:uθ(n),uα(n)分别为第n个周期时间同步的偏差修正值和时钟斜率偏移修正值;T(n)为周期间隔时间;wθ(n),wα(n)分别为时间同步过程中产生的相偏和频偏噪声误差,其取值由时钟性能和环境决定。
由式(3)—式(5)可得
(7)
通过式(6)建立状态转移方程与观测方程:
X(n+1|n)=AX(n)+BU(n)+W(n)
(8)
Z(n)=HX(n)+V(n)
(9)
式中:X(n+1|n)为第n+1个周期的状态预测向量;A为状态转移矩阵,表示本时刻与下一时刻观测值(通过获取的时间戳偏差计算得出的数值)间的状态关系,为周期间隔时间T(n)的量化固定值;X(n)为第n个周期的状态预测向量,为第n个周期修正向量,为控制矩阵,表示修正向量与观测向量的控制关系,噪声向量,为测量向量;H为测量参数矩阵,为观测误差向量。
根据卡尔曼滤波递推关系,可得预测方程(式(10))、卡尔曼增益方程(式(11))和更新方程(式(12)):
P(n+1|n)=AP(n)AT+Q
(10)
K(n+1)=P(n+1|n)HT(HP(n+1|n)HT+R)-1
(11)
P(n+1)=(I-K(n+1)H)P(n+1|n)
(12)
式中:P(n+1|n)为第n+1个周期的先验估计协方差矩阵;P(n),P(n+1)分别为第n,n+1个周期的后验估计协方差矩阵;Q为过程激励噪声协方差矩阵;K(n+1)为第n+1个周期的滤波增益矩阵;R为测量噪声协方差矩阵。
根据式(13)得到更新的预测值(修正后的θ(n)与α(n))。在式(2)基础上,通过式(14)得到修正后的逻辑时钟。
X(n+1)=X(n)+K(n+1)(Z(n+1)-
HX(n+1|n))
(13)
TL(τ)=(aMS+α(n))τ+θ+θ(n)
(14)
在上述单跳主从节点时间同步过程基础上,主网络内采用多跳同步过程,如图5所示。Sink节点作为主节点与第1层网络节点同步,之后第1层网络节点以同样方式传递同步时间至第2层网络,以此类推直至全网同步。采用基于卡尔曼滤波的优化算法周期性调整相偏与频偏,可有效提高主网络的时间同步精度与稳定性。
图5 主网络时间同步拓扑
Fig.5 Main network time synchronization topology
2.2.3 次网络时间同步
主网络时间同步实现后,由簇首节点启动次网络时间同步。根据簇首竞选算法,普通节点基于与簇首间的距离及剩余能耗的权值,选择簇内最优节点作为竞选的反馈节点,并以簇首节点(主节点)为中心广播同步时钟至各端点(从节点)。次网络时间同步分为2个部分:簇首节点与反馈节点间采取双向同步方式;簇首节点与普通节点间采取单向间接同步方式。
次网络时间同步过程如图6所示(H为簇首节点(仅1个),A为竞选的反馈节点(仅1个),B为普通节点),具体步骤如下。
(a) 主从节点同步信息交互
(b) 同步拓扑
图6 次网络时间同步过程
Fig.6 Secondary network time synchronization process
(1) 簇首节点H全簇广播同步请求信息并本地记录时间TH1,反馈节点A、普通节点B接收信息并各自记录本地时间TA1,TB1后等待。
(2) 等待预定时间后反馈节点A发送携带TA1与当前时间TA2的同步反馈信息至簇首节点H。
(3) 簇首节点H接收反馈信息并记录时间TH2,随后全簇广播携带TH1,TH2,TH3,TA1,TA2的同步信息。
(4) 反馈节点A、普通节点B接收信息并各自记录本地时间TA3,TB3,根据所得时间戳信息计算时间偏差和主从相对时钟斜率。
(5) 反馈节点A获得TH1,TH2,TH3,TA1,TA2,TA3时钟信息,根据式(15)、式(16)分别计算得到H,A间的主从相对时钟斜率aHA与时间偏差θAH,并代入式(2)修正本地逻辑时钟,从而达到时间同步。
(15)
θAH=-
(16)
(6) 普通节点B获得TH1,TH2,TH3,TA1,TA2,TB1,TB3时钟信息。由于在短距离内电磁波传输到周围各节点时延相同,可忽略不计,本文假设簇首节点同步请求信息同时到达簇内其余同步节点。根据式(17)、式(18)分别计算得到H,B间的主从相对时钟斜率aHB与时间偏差θBH,并代入式(2)修正本地逻辑时钟,从而达到时间同步。
(17)
θBH=TA1-TB1+θAH
(18)
(7) 周期性重复步骤(1)—步骤(6),实现簇中所有节点的时间同步。
为验证DPTS算法的有效性,在Matlab2018仿真软件平台上对比分析TPSN,LMTS和DPTS算法的时间同步精度与同步开销。
仿真模拟20 m×60 m矩形巷道信号覆盖区域,区域分成3个正方形,每个正方形区域内随机放置50个同步节点(包括Sink节点、簇首节点和普通节点),如图7所示。考虑时钟相偏与频偏对节点时间的影响,在一般晶体震荡情况下设频率偏移率为1×10-5~5×10-5[16],时钟偏移量为0~10 ms,链路随机时延为0~30 μs,网络时间同步周期为1 s,Sink节点间同步精度为100~500 ns[2]。
图7 仿真网络拓扑
Fig.7 Simulation network topology
主从节点时间同步误差如图8所示。可看出在时间同步精度、稳定性和收敛速度方面,DPTS算法均优于TPSN和LMTS算法。
图8 主从节点时间同步误差
Fig.8 Time synchronization error of
master and slave nodes
不同跳数下时间同步误差如图9所示。可看出随着跳数增加,时间同步误差累计增加;DPTS算法的时间同步精度优于TPSN和LMTS算法,在7跳内仍可保证低于150 μs的时间同步误差。
图9 不同跳数下时间同步误差
Fig.9 Time synchronization error under different hops
时间同步开销[17]是指消息包发送与接收时消耗的能量,可由时间同步消息包数近似表征。设置150个同步节点,其中簇首节点和普通节点数量比为1∶6,以每5个节点为单位依次增加节点数量,收发时间同步消息包数与时间同步误差变化如图10所示。可看出随着同步节点数增加,时间同步开销增加;与TPSN算法相比,LMTS和DPTS算法能明显减少时间同步开销,其中LMTS算法的时间同步开销最低,但相同同步节点数下DPTS算法的时间同步精度更高。总体来看,DPTS算法能在保证较高时间同步精度的条件下减少时间同步开销。
(a) 时间同步开销
(b) 时间同步误差
图10 时间同步开销与时间同步误差
Fig.10 Time synchronization overhead and time
synchronization error
针对基于多Sink节点非均匀分簇结构的煤矿井下TSN,DPTS算法分布式完成TSN各层同步:TSN汇聚层应用gPTP算法实现Sink节点间纳秒级时间同步;主网络中采用基于卡尔曼滤波的优化算法预测并补偿频偏、相偏和噪声误差,提高网络时间同步精度;次网络利用基于广播的单双向混合同步算法减少网络时间同步能耗。仿真结果表明,与TPSN和LMTS算法相比,DPTS算法在保证较低能耗的前提下,具有更高的时间同步精度。
[1] 刘海鹏,周淑秋.网络切片技术在矿山通信网络中的应用研究[J].工矿自动化,2020,46(8):28-31.
LIU Haipeng,ZHOU Shuqiu.Research on application of network slice technology in mine communication network[J].Industry and Mine Automation,2020,46(8):28-31.
[2] MUTHUMARIAPPAN S,SELVAKUMAR S.Fuzzy based location pinpointed anti-jammer with knowledged estimated localizer for mobile WSN[J].Journal of Intelligent and Fuzzy Systems,2020(4):1-11.
[3] 黄友锐,陈珍萍,李德权,等.无线传感器网络二阶一致性时间同步[J].电子与信息学报,2017,39(1):51-57.
HUANG Yourui,CHEN Zhenping,LI Dequan,et al.Second-order consensus time synchronization for wireless sensor networks[J].Journal of Electronics and Information Technology,2017,39(1):51-57.
[4] GANERIWAL S,KUMAR R,SRIVASTAVA M B.Timing-sync protocol for sensor networks[C]//Proceedings of the 1st International Conference on Embedded Networked Sensor Systems,Los Angeles,2003:138-149.
[5] 闫玉萍,胡青松,韩丽娜,等.矿井电网故障检测WSNs分层时间同步算法[J].工矿自动化,2015,41(7):72-77.
YAN Yuping,HU Qingsong,HAN Lina,et al.WSNs hierarchical time synchronization algorithm adapted to grid fault detection in mine[J].Industry and Mine Automation,2015,41(7):72-77.
[6] 张超,黄友锐,陈珍萍.一种低能耗多跳无线传感器网络时间同步算法[J].计算机应用与软件,2020,37(5):102-107.
ZHANG Chao,HUANG Yourui,CHEN Zhenping.A time synchronization algorithm for low energy multi-hop wireless sensor networks[J].Computer Applications and Software,2020,37(5):102-107.
[7] 曹志鹏,刘勤让,刘冬培,等.时间敏感网络研究进展[J].计算机应用研究,2021,38(3):647-655.
CAO Zhipeng,LIU Qinrang,LIU Dongpei,et al.Survey of time-sensitive networking[J].Application Research of Computers,2021,38(3):647-655.
[8] 朱瑾瑜,张恒升,陈洁.TSN与5G融合部署需求及网络架构演进[J/OL].中兴通讯技术:1-11[2020-07-25].http://kns.cnki.net/kcms/detail/34.1228.TN.20200630.1413.004.html.
ZHU Jinyu,ZHANG Hengsheng,CHEN Jie.TSN and 5G integrated deployment requirements and network architecture evolution[J/OL].ZTE Technology Journal:1-11[2020-07-25].http://kns.cnki.net/kcms/detail/34.1228.TN.20200630.1413.004.html.
[9] FERNANDEZ Z,SEIJO ,MENDICUTE M,et al.Analysis and evaluation of a wired/wireless hybrid architecture for distributed control systems with mobility requirements[J].IEEE Access,2019,7:95915-95931.
[10] CRUCES C,TORREGO R,ARRIOLA A,et al.Deterministic hybrid architecture with time sensitive network and wireless capabilities[C]//IEEE 23rd International Conference on Emerging Technologies and Factory Automation,Turin,2018:1119-1122.
[11] 胡长俊.基于多Sink节点的异构WSN构建及在矿井环境中的应用基础研究[D].淮南:安徽理工大学,2018.
HU Changjun.Construction of heterogeneous WSN based on multi-sink nodes and its fundamental applied research in mine environment[D].Huainan:Anhui University of Science and Technology,2018.
[12] 黎望怀,夏旭.基于多Sink节点的煤矿巷道无线传感器网络路由协议[J].工矿自动化,2016,42(6):46-51.
LI Wanghuai,XIA Xu.Research of routing protocol for wireless sensor network in coal mine tunnel based on multi sink nodes[J].Industry and Mine Automation,2016,42(6):46-51.
[13] YANG Zhe,CAI Lin,LIU Yu,et al.Environment-aware clock skew estimation and synchronization for wireless sensor networks[C]//IEEE INFOCOM,Orlando,2012:1017-1025.
[14] 何建平.基于一致性的无线传感器网络时钟同步算法研究[D].杭州:浙江大学,2013.
HE Jianping.Consensus-based clock synchronization algorithm in wireless sensor networks[D].Hangzhou:Zhejiang University,2013.
[15] IEEE 802.1AS-2011 IEEE standard for local and metropolitan area networks-timing and synchronization for time-sensitive applications in bridged local area networks[S].
[16] 孙淼,曾昱翔,罗剑,等.一种提高系统频率稳定度的方法[J].电子世界,2020(13):179-180.
SUN Miao,ZENG Yuxiang,LUO Jian,et al.A method to improve frequency stability of system[J].Electronics World,2020(13):179-180.
[17] XIA Tengfei,HE Shuping.New energy-efficient time synchronization algorithm design for wireless sensor networks[C]//The 32nd Youth Academic Annual Conference of Chinese Association of Automation,Hefei,2017:490-495.
SONG Haoming, HUANG Yourui, CHEN Zhenping,et al.Distributed accurate time synchronization algorithm for underground coal mine time-sensitive network[J].Industry and Mine Automation,2021,47(4):51-56.