基于神经网络的第三代智能变电站高精度守时算法研究

2022-11-18 09:08潘彦峰
江西电力 2022年8期
关键词:晶振守时时钟

周 帆,潘彦峰

(1.国网湖南省电力有限公司,湖南 长沙 410004;2.网电力科学研究院,江苏 南京 211106)

0 引言

国网公司从2018年开始陆续试点了一批第三代智能变电站建设,第三代智能变电站以“一键操作、自动巡检、主动预警、智能决策”等功能为主要特征,是对传统变电站、第一代智能站及新一代智能站从设计、制造、建设、运检等各方面进行的全面总结与提升[1-2]。第三代智能变电站采用结构标准化、信息标准化的就地模块替代合并单元与智能终端设备,设备实现数据采集和设备控制操作功能。测控子机通过采集不同就地模块的电气信息计算功率,就地模块对时不准将导致测控子机采样值,存在功率计算不准等问题。就地模块的对时依赖授时系统,一旦外部授时信号中断,延时时间计算准确度将完全依赖于设备内部晶振的守时精度,一旦晶振稳定性不好,长时间失去外部授时信号将导致延时计算偏差加大[3-4]。

近年来,随着智能变电站对通信网络的普及,时间同步系统采用网络同步的方式也越来越普遍。IEEE1588协议提出了一种应用于电力、通信、工业控制等领域的高精度网络同步协议,其精度高于1 μs,在现有网络同步方式中精度最高。

目前,国内外学者对于设备守时算法已做过大量研究,但针对IEEE1588同步协议下的研究较少。已有的授时与守时算法通常采用全球定位系统(global positioning system,GPS)或北斗卫星信号与时钟晶振相配合的方案。与世界协调时间(coordinated universal time,UTC)比较,GPS秒脉冲无累计时间误差,但却有较大的随机误差。时钟晶振可以看作是一种比较稳定的时钟频率源,其输出时间信号的随机误差可忽略不急,但因受频率本身硬件特性影响,其频率在长时间运行后会缓慢偏移,所以时钟晶振存在累计时间误差的特性。文献[5-7]提出基于数字锁相环的同步时钟实现方法,算法精度高,但对硬件性能要求高,会大幅增加同步时钟模块的成本,而且该方法只实现了消除周期误差,未消除累计误差。文献[8-10]提出将历史时间数据用来训练自适应的晶振老化模型,实现对晶振频率进行预测,但其老化模型较简单,影响因素考虑不全,自守时能力受限。

文中从影响守时精度的因素出发,通过预测算法等方式,提出一种基于神经网络的高精度守时算法,确保一次设备就地模块在长时间无外界授时时,其守时精度在测控子机允许范围内,解决因装置守时精度差导致的功率计算不准等问题提供新思路。

1 影响晶振守时精度的因素分析

守时是指设备在失去外部授时的情况下,仅依靠自身时钟源来保证时间的同步。对于IEEE1588同步协议,守时是指从时钟在失去上一级主时钟同步报文的情况下,仅依靠从时钟自身的时钟源保持与主时钟的同步。如图1所示,对于采用IEEE1588同步协议的从时钟其守时可以分为两种情况。一种是对于IEEE1588同步网络中较为重要的时钟节点(上一级主时钟、交换机和较为重要的就地模块);其作为下一级时钟的主时钟,其时间同步精度直接影响下一级时钟,因此往往需要配备GPS/北斗等备用授时源提高其守时精度。另一种对于只配备1588授时模块的时钟(就地模块);其守时精度只能依靠本地时钟(石英晶振)的频率稳定度和准确度,因此研究如何保证石英晶体振荡器的频率稳定性便成为了其守时算法的核心。

图1 IEEE1588守时算法网络拓扑图

影响晶振性能的因素分别为:老化、温度、相位噪声及振动、边沿效应。其中老化和温度是主要影响因素。

通过研究发现目前对于温度的影响主要的补偿手段为设置恒温槽来控制晶体的工作温度在零温度系数点附近,即降低晶体对于温度的灵敏度,从而克服温度对于晶振参数的影响。

而目前对于晶振老化影响的主要补偿手段为老化预测。老化预测目前有线性模型,对数模型等,但是由于不同切型甚至相同切型的晶体老化规律都有所差别,因此传统的模型难以对晶体老化做出准确的预测[11-12]。

2 基于神经网络的同步守时算法

2.1 基于神经网络的同步守时解决方案

由于晶体振荡器的老化是一个长期的效应,通常可以采用预测的方法来判断老化的影响。运用预测法研究石英晶体振荡器频率老化的大致基本思路是:通过石英晶体振荡器的历史衰老数据,估计其在当前时候的输出频率,由补偿频率控制器形成所要求的补偿频率,同振荡器频率经过相应计算后再直接输出,原理框图如图2所所示。

图2 老化补偿原理框图

频率的老化模型遵循频率随时间变化的关系函数,函数总体上同前一时间、当前时间和前一时间的频率变化率相关。在知道了n个样本的频率和频率老化率之后,超出t(n)时刻的频率可以通过一个频率预测模型得到。这种通过初步的测定n个样本而得到未来的频率老化值称之为老化预测。频率预测模型基于晶振的一组历史数据,可以预测当前时间的频率为f(k),同时补偿频率发生器产生补偿频率,通过f(k)和补偿频率计算,最后便可输出所预测的稳定频率。

综合利用了Kalman滤波技术和神经网络[13],并把通过Kalman滤波技术获得的历史数据,作为神经网络的训练数据集对其进行培训,从而形成精确的晶体振荡器老化进程模型,以提高设备的守时能力。同步守时算法流程如图3所示。

图3 同步守时算法流程

当外界存在统一的时钟基准,如GPS时钟信息或者IEEE1588时钟的同步信息时,设备将先通过GPS接收器和IEEE1588同步信息收集设备,获取其同步时钟的秒脉冲。然后再利用装置晶振对GPS的秒脉冲加以计算,并作时间累积统计。获得的一组累积晶振计数值,用作Kalman滤波器的观测数据,使用Kalman滤波器对晶振的系统状况做预测和估算。将相邻两次获得的累积晶振数值相减,获取晶振分频器的控制量。

当装置工作于同步的授时状态下时,将通过Kalman滤波器所获得的晶振频率的估计值,当作历史值保留下来。将历史值对BP神经网络实施培训,达到了误差精度和迭代次数后,完成训练。

在没有外界的时间基准时,装置将没法再接受到外界的同步时秒脉冲,因此设备进入守时状态。Kalman滤波器不再运行,装置现在只通过已开发好的BP神经网络模块,对未来晶体振荡器的频率变化趋势做预测。因为晶体振荡器频率变化趋势在短时内比较微弱,所以在同步守时状况下,将所得的频率预测值经过相加,就可获得累计晶振计数值,然后再将相邻两次的计算结果相减,得出晶振分频器的控制量。

2.2 算法模型

2.2.1 利用Kalman滤波器建立晶振运动方程

Kalman滤波器,是一个使用线性系统状态方程的最优估计算法,通过迭代运算的方法,运算工作量较小,计算速度快,对数据存储要求较低。利用Kalman滤波器结合晶振误差特性,对晶振建立状态空间方程如下:

式中:x(k)、x(k-1)分别为k、k-1时刻的系统状态向量;ω(k)为状态噪声;A是参数矩阵。

为了消除累计时间误差,同时降低GPS信号或IEEE1588同步信号的抖动,有必要建立准确合适的Kalman滤波器,系统的状态变量方程如式(2)所示:

式中:tCN(k)为k时刻晶振累计计数;f(k)、v(k)、a(k)分别为晶振频率、晶振频率变化率、晶振频率变化加速率。

系统的观测方程可表述为:

式中:z(k)为系统的观测量;H为系统的观测矩阵;v(k)为系统的观测噪声。

Kalman滤波器方程以线性差分的方式表示晶振频率的变化,其阶数越高,越能准确反映非线性程度,但阶数越高,数值越小,对滤波精度提高有限,所以文中综合考虑选用4阶方程。

2.2.2 利用神经网络建立数学模型

利用神经网络可建立的数学模型如式(5)所示:

式中,F为神经网络训练的非线性模型;tCN(k)、v(k)、a(k)分别为第k时刻的晶振累计计数值、晶振频率、晶振频率变化率、晶振频率变化加速率。预测数据需要综合分析选取。

晶振频率的老化漂移随时间流转变化较为缓慢。因此v(k)、a(k)虽然在理论上表达了晶振频率的变化特征,但其实,v(k)和a(k)数值极小,数量级在1×10-5到1×10-7,数值不稳定而且波动很大,无法准确描述晶振的频率特性,不宜用作神经网络的输入数据。另一方面,晶振累计计数值tCN(k)的值很大,在tCN(k)变化相对较小时,会带来较大的时间误差波动,也不宜作为预测对象。综合考虑计算成本和神经网络模型更新速度,将时间k作为输入数据,k时刻晶振频率f(k)作为输出数据。数学方程如式(6)所示,其中m为输入数据个数:

1)网络结构

多数研究已经证明,神经网络采用隐藏层与线性输出层可以拟合出任意一有理函数,虽然神经元层数越多拟合精度越高,但是神经元层数的增加会降低训练速度,导致过拟合。综合考虑下,文中算法采用一层隐藏层、多神经元的方式。如图4所示。

图4 神经网络结构模型

2)激励函数

神经网络隐藏层函数通常采用Sigmoid型函数,并能够满足对函数的拟合需要。由此,隐藏层选取Sigmoid型传递函数tanh。

3)损失函数

对于分类、回归、序列预测等常见问题,通常按照一些简单的指导原则来选择正确的损失函数。晶振老化漂移的预测本质上属于回归问题,回归问题可以使用均方误差损失函数。

4)优化器

优化器或者称之为学习算法,其功能是通过以最佳的训练方式,来最小化或最大化损失函数。设计不同优化器对BP神经网络效果影响较大,决定了训练速度和最优求解,常见优化器包括梯度下降算法、Scaled共轭梯度算法、Levenberd-Marquardt等算法。模型参数设置情况为:训练迭代次数上限为400次;训练误差精度设置为均方根误差为1×10-7,对不同优化器多次训练神经网络,比对训练效果。

3 同步守时算法结果验证

试验设置同步授时状态时长为仿真总时长的一半。当系统处在同步授时状态时,Kalman滤波器对数据进行预处理,作为神经网络输入层的初始数据,然后进行训练。失去外部授时后,将完成训练的神经网络模型对晶振频率进行预测,修正晶振频率输出,实现高精度守时。基于神经网络的守时算法对晶振频率的预测效果如图5所示,可以看出,训练后的神经网络可以很好地拟合频率偏移,有效减小晶振频率老化漂移带来的累计时间误差。

图5 基于神经网络的晶振频率预测

算法同步守时能力测试结果如图6所示,在外部时钟源授时结束后的24 h内,累计时间误差小于4 μs,相比传统守时方法有了大幅提高。图中也显示出随着时间的增长,累计时间误差逐渐增大,神经网络模型的守时精度逐渐降低。

图6 同步守时算法时间精度测试结果

由结果可以看出,相比于传统的线性模型和对数模型,神经网络守时精度都明显优于前两者。另外由于不同厂家、不同批次、不同型号的晶振的老化漂移规律都有所不同,所以采用传统的数学模型很难满足现实需要,神经网络来对晶振老化漂移规律进行拟合具有较强的自适应性和可行性。

4 结语

就地模块作为第三代智能变电站的核心设备,其守时性能对变电站正常运行至关重要。文中重点针对影响石英晶振守时的老化因素,提出一种基于Kalman滤波器与神经网络模型混合应用的高精度守时算法,通过将其与传统的线性模型和对数模型进行仿真测试对比可知,引入神经网络可有效预测晶振老化漂移,从而提高设备的守时精度,这对提升第三代智能变电站运行稳定性具有重要意义。

猜你喜欢
晶振守时时钟
别样的“时钟”
两非门晶振振荡电路的设计
基于晶振的高性能时间保持方法研究
古代的时钟
有一种尊重叫守时
晶振失效故障分析
有趣的时钟
守时的朱小美
时钟会开“花”
“守时”既是公交之责更是治堵之痛