基于相关度的自适应时隙同步工业无线传输策略研究*

2023-10-21 12:17蒋增文盛四华
通信技术 2023年9期
关键词:时隙时钟偏差

蒋增文,田 炜,盛四华,吴 善

(中电工业互联网有限公司,湖南 长沙 410000)

0 引言

随着物联网技术的深入发展及工业互联网的兴起,无线网络因其成本低、扩展性好、灵活度高、移动性好、容易安装等优势成为工控领域研究的热点之一,也是工业自动化产品未来新的增长点。

工业无线传输对数据传输的实时性和可靠性有较为严格的要求。行业现状多基于无线传感网络对通信协议进行优化与设计后应用于工业场合。但对于一些工业现场设备和大型工程装备的无线控制,通常只需要点对点实时传输控制指令,实现人机分离的现场控制,以保障操作人员的安全。

工业、科学和医用(Industrial Scientific Medical,ISM)频段是工业无线传输采用的主要频段,如何实现信道资源合理有效分配是该频段通信设备面临的一个至关重要的问题。基于竞争机制的信道接入(Contention-Based Access)[1]和基于预留机制的信道接入(Reservation-Based Access)[2]是工业无线传输的两大主要信道接入机制。基于竞争的信道接入常见方法是载波侦听多路访问(Carrier Sense Multiple Acess)[3],该方法由于存在竞争延时,在工业控制无线传输中使用很少。基于预留机制的信道接入通常有时分多址、频分多址和码分多址三种主流技术。时分多址由于其实现简单、资源占用少等优点而成为工业无线传输的首选技术。时分多址(Time Division Multiple Access,TDMA)就是采用时隙的方式来解决无线接入冲突问题,实现可靠有效的传输。时间同步和资源分配是实现TDMA 传输所面临的关键挑战[4-5]。

针对工业现场设备点对点无线控制应用场景,通过对TDMA 时隙同步的研究,设计了一种基于相关度的自适应时隙同步工业传输策略。该策略要求采用TMDA 方式,实现主从端快速同步建立及自适应同步调整,实现实时稳定可靠的双向工业控制数据传输。

1 时隙同步策略

1.1 问题分析

基于TDMA 的工业无线传输系统存在两个及以上的通信节点,具备独立的时钟。在复杂的工业环境下,由于受温度、中断处理、信号传播、信息编解码等诸多因素的影响,各节点的本地时钟并不同步。对于具备收发功能的节点,可能存在同时发送或同时接收的冲突问题,从而导致无线通信中断,可靠性受到极大的影响。解决TDMA 系统的同步问题是无线可靠传输的关键,也是TDMA 工业传输研究的重点。

时钟同步主要有外同步和内同步[6]两种方式。外同步依赖于第三方时钟系统,如全球定位系统(Global Positioning System,GPS)、网络时间协议(Network Time Protocol,NTP)等,由于依赖第三方时钟,对工业点对点无线传输系统并不适用。在基于晶振时钟的内部同步算法方面,业界基于无线传感网有大量的确究。文献[7]提供了一种基于“接收者—接收者”的时隙同步机制参考广播同步(References Broadcast Synchronization,RBS)算法,单跳时该算法比较简单,但同步需要依赖第三方节点的时钟和信标,消息需要多次交换。文献[8]提出了一种基于网络的分层多跳无线传感网时间同步协议(Time-sync Protocal for Sensor Network,TPSN),该协议采用双向消息交换机制实现同步,但存在同步维持时间短等问题。文献[9]基于“送发者—接收者”单向同步机制提出了一种泛洪时间同步协议(Flooding Time Synchronization Protocol,FTSP)时钟同步算法,该算法需要广播同步帧且需要携带时间戳,节点同步算法比较复杂;文献[10]提出了一种较为简单的基于本地时钟的单向同步算法时延测量时间同步算法(Delay Measurement Time Synchronization,DMTS),该算法考虑到了发送时延的影响,比较简单,便于实现,通信开销小。但DMTS 协议并未给出因节点时钟偏差而带来的影响。在实际应用中存在因时钟偏差引起通信中断的问题。

从工业现场点对点控制的实际需求出发,现有时钟同步策略存在以下几个问题:

(1)现有策略多基于无线传感网络,兼顾了网络时隙同步,协议相对庞大,实现复杂,延时相对较大,不适应工业现场控制场景下的点对点通信时隙同步。

(2)RBS、RPSN 和FTSP 协议采用了公共节点作为时间参考,在同步建立上需要在帧中携带时间信息,帧数据利用率相对较低。

(3)DMTS 协议采用本地时钟同步,实现较为简单,比较适用于本文所述场景的同步要求,但缺少对时钟偏移影响的考虑,存在同步不稳定问题而导致通信中断。

为解决上述问题,基于DMTS 提出了一种基于相关度的自适应时隙同步策略(Correlation Based Adaptive Slot Time Synchronization,CA-STS),实现工业点对点控制数据可靠长期稳定传输。

1.2 同步建立

CA-STS同步的建立分预同步和同步两个阶段。建立同步以后才能进行控制数据的传输,通信帧分为控制帧CCH 和数据帧TCH 两类。在同步建立阶段,每帧包含了前导字和同步字,同步建立以后,每帧只携带前导字。为实现同步建立,将时钟参考节点称为Master,将同步建立节点称为Slaver。在同步建立过程中,Slaver 与Master 保持同步。两节点采用相同收发占空比通信。同步建立的模型如图1 所示。

图1 同步建立模型

设模型中一个时隙的时间为Tslot,则有:

式中:Tframe为时隙中数据发送的时间,Tdelay为数据准备所占用的时间,Tresv为数据接收处理所占用的时间。根据数据帧的组成,则有:

式中:Tpremble为发送前导字的时间,Tsyncword为同步字的时间,Tothers为帧中其他数据所占的时间。由于温度、调制解调、中断、数据处理等因素的影响,导致Master 启动发送时会产生一个时延Tdelay,该时延主要包括调制解调时延Tmodule、中断所占时延Tinterrupt及其他因素带来的时延Tdelayother。

在同步建立时,Master 端按Tslot时隙交替发送与接收,Slaver 端在没有建立同步时,一直处于接收状态,Slaver 的定时器处于禁用状态,Slaver 在接到空口数据位后,按相关度确定同步是否建立。

给定一个同步字时长为Tsyncword,将同步字分离成一组二进制的同步序列并进行反序计算得到相关序列。Slaver 按接收的次序依次进行相关度计算,根据理论可知,若完全相关,则相关值为同步字位长,相关度为1。相关度计算原理如图2所示。

图2 相关度计算模型

第i位数据的相关度为:

式中:Covi表示输入序列Seq(i) 与相关序列SeqCov(i)的相关值,若全部相关,则Covi为相关序列字长Covlen。

Slaver 按位接收空口数据,每接收一位,进行一次相关度计算,当全相关时,即Covi=Covlen,表示Slaver 与Master 完全匹配。达到相关度阈值时需要启动Slaver 的定时器进行同步,首次启动定时器的时间为

式中:Tfixcnt为正常接收数据的起始时间。Slaver 第一次正常接收到同步数据后,定时器启动,实现与Master 的预同步,同时按发送时隙发送带同步字的数据,Master 按Tfixcnt接收,完成预同步的正式建立。正式建立后,Master 和Slaver 在规定的时隙内收发,在接收时按Tfixcnt时间作为数据的起始时间进行数据接收和处理。

1.3 自适应策略

在同步建立以后,可以实现Master 和Slaver 按正常的收发时隙进行有序通信。Slaver 与参考时钟的Master 进行同步。Master 和Slaver 使用独立的时钟系统,由于温度、调制解码、数据处理等因素的影响,导致Master 和Slaver 在建立完同步一段时间后产生一定的偏差,从而导致收发数据时隙不对齐而产生失步。为保持长期稳定同步,需要建立一套有效的自适应时隙补偿策略,以保障时隙有效调整而保持稳定同步。

晶振的波动是引起失步的主要因素。按同步原理可知,失步后会直接引起在同步时约定的Tfixcnt位置接收不到正确的数据,而会导致通信中断。为实现自适应同步补偿,设定一个窗口时间Twindow,假设空口发送一位数据的时间为Tbit,则一个补偿窗口中能容忍的最大数位数Ntolerate与Twindow的关系为:

为了补偿计算的方便,Ntolerate取大于1 的奇数。

同步建立后,Master 和Slaver 正常取到数据的起始时间为Tfix0,但由于Master 和Slaver 受晶振频飘等影响,Master 和Slaver 接收数据的起始时间Tfix出现左右偏移,需要进行时间调整。自适应时隙调整原理如图3 所示。

图3 自适应同步模型

自适应时间调整以Tbit为最小单位,设最大偏差为Nmd,则有:

设Slaver 接收时间偏差为Toffset,则有:

自适应时隙调整的策略如下:

(1)当Toffset=0 时,表示未产生偏差,不需要进行时隙补偿。

(2)当|Toffset|<(Tmd×Tbit)时,Slaver 的 偏差还在调整窗口以内,不需要进行时隙补偿。

(3)当|Toffset|=(Tmd×Tbit) 且Toffset<0 时,Slaver的偏移到达了调整窗口左侧边界,需要进行调整,定时器的定时时间调整为:

(4)当|Toffset|=(Tmd×Tbit) 且Toffset>0 时,Slaver的偏移到达了调整窗口右侧边界,需要进行调整,定时器的定时时间调整为:

2 时隙同步策略实现

针对本文提出的基于相关度自适应时隙同步策略,基于ADI 公司的ADF7030 芯片设计了一套适用于工业现场控制的无线传输系统,用于验证同步策略的可行性。

2.1 硬件系统设计

同步策略硬件射频部分采用2GFSK 调制,数据采用RS 前向纠错码和信息加扰技术,空口数据通过ADF7030 的CLK 和DATA 接入到LPC1754 中进行数据的编解码处理。LPC1754 通过SPI 接口对ADF7030 进行配置,包括调制方式、空口速率、端口映射、发送功率、IF 和LNA 等射频参数。硬件原理框图如图4 所示。

图4 基于ADF7030 的硬件原理

Master 和Slaver 带有独立的时钟系统,支持数据发送和接收,空口的发送和接收通过一个电子开关进行切换,电子开关由LPC1754 的I/O 根据时隙同步要求进行控制。

2.2 时隙状态机设计

时隙同步系统有预同步PSYNC、同步SYNC、连接CONC 三种状态,构成同步系统的状态机,状态机的切换逻辑如图5 所示。

图5 时隙同步状态机

PSYNC 为同步系统的初始状态,在接收到同步字后,从PSYNC 状态切换到SYNC 状态,SYNC 握手成功则可以切换到CONC 状态。CONC 状态为连接成功的最终状态,若失步或同步握手失败,会切换到PSYNC 状态。CONC 状态下不能切换到SYNC 状态。

设置时隙为60 ms,Master 在完成初始化后,按正常时隙进行数据的接收与发送。Master 采用定时器中断对收发标识进行置位,约定0 表示发送数据,1 表示接收数据。每产生一次定时中断,标识改变一次。时隙分配逻辑如图6 所示。

图6 时隙分配逻辑

Slaver 在初始状态时,定时器处于禁用状态,接收数据并计算相关度,根据相关度阈值,达到阈值后启动Slaver 定时器,按时隙发起预同步确认并进入同步状态。此时Master 和Slaver 都按时隙进行收发。Slaver 在启动定时器后,通过定时器中断产生时隙标识,约定当标识为1 时表示发送数据,标识为0 时表示接收数据。在SYNC 阶段进行4 个时隙的同步确定后进入连接状态CONC,CONC 时Slaver 和Master 都通过定时器中断按约定的时隙进行数据收发。从而解决了Master 和Slaver 因时隙不同步问题而导致通信冲突。在进入SYNC 和CONC时隙后,Slaver 启动与Master 的自适应同步补偿调整,避免失步问题出现。

2.3 编码与帧设计

同步系统的帧分为控制帧和数据帧两类,由1位帧标识进行区分。在PSYNC 状态和SYNC 状态下传输的是控制帧(用1 标识),在CONC 状态下传输的是数据帧(用0 标识)。

本系统设计的原始数据长度为65 位,包括56位数据、8 位校验和1 位帧标识。如图7 所示,在PSYNC 和SYNC 阶段,56 位数据中包含了32 位的同步字、16 位的系统ID 和8 位的序列种子。

图7 时隙同步帧设计

在PSYNC 阶段,65 位的原始数据进行前向纠错编码,采用RS(31,13)码,通过编码后的数据从65 位增加到155 位,由于程序按字节处理数据,需要将155 位补齐到160 位,即20 字节的编码数据。空口发送时,为了能快速时钟恢复,按ADF7030 芯片手册,增加24 位01 交替的前导码。为此,一个时隙需要发送或者接收的数据长度为184 位,即23 个字节。

在预同步完成进入SYNC 和CONC 状态后,为保证数据安全,增加了扰码。扰码采用伪随机序列,Slaver 根据存储器中的ID 与运行计算器相加取低8位作为种子,在PSYNC 阶段的预同步确认时发送给Master,并同步生成长度为160 位的伪随机序列。Master 在收到种子以后也同步生成伪随机序列。为此在进入SYNC 和CONC 阶段,RS 编码补齐后的数据采用伪随机序列进行加扰后再发送,对端则采用相同的伪随机序列进行解扰和解码,得到原始数据。加解扰设计原理如图8 所示。

2.4 自适应同步设计

Master 和Slaver 都依赖于定时器中断产生时隙,在工程实现时,需要将接收起始时间Tfixcnt换算成接收数据起始位置fixrevcnt。同步时Master 作为参考时钟,Slaver 根据接收到的同步字的相关度进行预同步定位,并根据同步定位的位置设置Slaver 的定时器值,实现与Master 的同步。在完成预同步以后,Master 和Slaver 已建立了同步的时隙,可以按时隙正常收发数据,避免了通信冲突。Slaver 根据接收位置的偏差自适应调整定时器值,以维持正常的同步时隙。

本文设计将最大的调节窗口Ntolerate设置为5,就是当偏差为2 个位时,即当Nmd=2 时,进行一次时隙调整。本文使用的LPC1754 外设频率为fpclk=24 000 000 Hz,Master 端定时器时间为:

设置ADF7030 的空口发送速度为Vradio=4 100 bit/s,则每发送1 位对应的定时器值为:

根据发送空口速率与时隙可以计算得到一个时隙最多可以发送的数据为246 位。

通过对收发系统的调试,测得初始同步时接收位置fixrevcnt0=29。

Slaver 在接收到fixrevcnt0后,启动定时器,设Slaver 端第一次启动定时器的计数值为T0MR0st0,则有:

通过对Slaver 初始定时器值的调整,使Slaver与Master 建立同步关系。

随着通信时间的推移,由于Master 和Slaver 时钟系统的偏差,导致接收起始位置fixrevcnt与fixrevcnt0产生一个偏差。设Slaver端的位置偏差为Noffset,则有:

根据上节自适应原理可知,当且仅当|Noffset|=2时需要进行时隙补偿,即调整Slaver定时器计算器值。

(1)当Noffset>0 时,Slaver 时隙相对Master 时隙超前了Nmd,即2 bit。此时Slaver 定时器修正为:

(2)当Noffset<0 时,Slaver 时隙相对Master 时隙滞后了Nmd,即2 bit。此时Slaver 定时器修正为:

3 验证评估

3.1 验证环境

使用ADF7030 芯片搭建同步系统测试环境对基于相关度的自适应时隙同步策略进行测试验证,评估相关度与同步建立速度和自适应同步的有效性,测试环境的基本参数如表1 所示。

表1 环境参数配置

3.2 相关度与同步建立速度评估

同步建立速度及失步率是时隙同步系统评估的一个重要指标。基于ADF7030 的实物硬件环境,对CA-STS 同步策略的同步时间及失步率进行评估。Master 端采用LPC1754 定时器统计Master 从发送第一帧到获取预同步确认所需要的时间,定义该时间为同步建立时间,即建立同步所需要的时间。在建立同步后,若1 分钟内快速断开,则为同步失败,测试过程中失败次数与同步测试次数的比值称为失步率。根据同步建立时相关度的取值测试同步时间和失步率。每个相关度测试50 个点,指定相关度下同步时间为50 个测试点的平均值。通过串口打印记录数据,借助Python 的Matplotlib 库统计分析,得到图9 所示的曲线。

图9 相关度与同步建立时间及失步率评估

从曲线分析可知,建立同步时同步字的相关度越高,同步时间越短,失步率越低。从测试可知,当相关度大于0.95 时,同步可以在0.3 s 内建立,失步率接近0。结合工程实际应用经验,推荐在建立同步时同步字相关度取值大于或等于95%。

3.3 自适应同步评估

DMTS 提出了一种基于本地时钟的较为简单的同步方法,本文在DMTS 的基础上提出了一种基于相关度的自适应同步的策略CA-STS,以解决DMTS 不能长期维持同步问题,为此CA-STS 自适应同步的性能直接关系到策略的优劣。本文先根据DMTS 的原理在基于ADF7030 的同步系统中实现了DMTS 算法并建立了同步。使用串口将起始位置fixrevcnt记录下来,通过Python 的Matplotlib 库进行了分析。

然后基于ADF7030 同步系统实现了CA-STS 策略,在建立同步后,测试了Ntolerate=5 时的自适应同步性能,并通过串口记录Master 和Slaver 各自取数的起始位置。通过Matplotlib 进行分析,结果如图10 所示。

图10 自适应同步曲线

测试表明,DMTS 算法能建立有效的时隙同步,并在建立初期保持一段时间的同步,但随着时间的推移,Master 和Slaver 收数起始位置fixrevcnt离同步时的位置偏差越来越大,持续约500 个时隙后出现失步,Master 和Slaver 的通信受到影响而断开。CA-STS 同步策略由于引入了基于位的时隙补偿自适应同步机制,从测试结果可以看出,建立同步以后,Master 和Slaver 随时间推移发生了偏差,当fixrevcnt偏差为2 时,Slaver 进行了时隙补偿,Master和Slaver 的采数位置自动恢复到初始定位状态,保持了较好的同步。从测试的2 100 个时隙来看,CA-STS 同步策略可以自适应地修正时钟偏差,保持有效的同步。

为测试CA-STS 同步的持续性,修改状态机,在进入CONC 状态后,若出现失步断开,进入IDEL 状态并通过串口打印出该状态,此时Master和Slaver 不再进入PSYNC 状态。连续测试72 h,未见Master 和Slaver 进入IDEL 状态,串口无异常打印。

4 结语

在工业现场及工程装备的点对点无线控制中,TDMA 可以很好地解决无线信道接入冲突问题,但必须建立时隙同步。本文在研究分析了基于无线传感网的网络同步算法后,提出了一种基于相关度的自适应时隙同步策略CA-STS,并通过ADF7030芯片实现了该同步算法。工程实地测试表明,该CA-STS 时隙同步策略算法简单,有较快的同步建立速度(相关度大于95%时,同步建立时间小于0.3 s)。通过自适应时隙同步算法,在修正时间窗口可以有效地修正时隙偏移而保持稳定的时隙同步(工程测试72 h,无失步),控制指令响应时间小于100 ms。测试表明,CS-STS 同步策略适用于点对点工业控制场景,有较大的应用价值。

猜你喜欢
时隙时钟偏差
别样的“时钟”
古代的时钟
如何走出文章立意偏差的误区
两矩形上的全偏差
复用段单节点失效造成业务时隙错连处理
有趣的时钟
一种高速通信系统动态时隙分配设计
时隙宽度约束下网络零售配送时隙定价研究
时钟会开“花”
关于均数与偏差