分布式时间同步

2024-07-27

分布式时间同步(精选7篇)

分布式时间同步 篇1

0 引言

机载对地观测系统是以飞机为观测平台,利用成像载荷获取地球表层大范围、高精度、多层次空间信息的一种尖端综合性技术[1],随着高分辨率航空遥感技术的发展,新型航空遥感系统如基于同一飞行平台的高效多任务载荷联合成像系统、阵列天线SAR系统逐渐成为提高航空遥感成像效率和分辨率的有效手段,由于多个或多种观测载荷安装在飞机的不同位置,迫切需要开展分布式位置姿态系统(Position and Orientation Sys tem,POS)研究,解决多个成像载荷时空信息精确测量难题[2]。分布式POS是一种基于惯性/GPS(Global Posi tioning System)组合及传递对准技术的柔性基线多节点高精度时空测量装置,已成为航空遥感的关键技术之一[3,4]。

对于同一载机的多种或多个观测载荷,采用传统的单一POS显然无法满足不同安置点多载荷的高精度运动参数测量的需求,而且因体积、重量、成本等因素的限制,在各观测载荷处均安装一个高精度POS也不现实。因此,迫切需要建立起高精度分布式POS系统[5]。较为可行的分布式POS系统由一个高精度主POS和多个子惯性测量单元(Inertial Measurement Unit,IMU)组成。其中子IMU依靠主POS高精度位置、速度、姿态等运动参数对其进行传递对准实现子IMU运动信息精确测量。

本文设计了分布式POS数据采集以及数据融合两个层次的时间同步算法,进行了分布式POS数据处理计算机的软件设计,为验证算法有效性,进行了车载实验验证。实验结果表明,本文所设计算法实现了分布式POS的基本功能,能够测量主/子节点高精度位置、速度、姿态信息。

1 分布式POS组成及特点

机载分布式POS由安装在机体中轴上的主POS和对称分布在两侧机翼下方的两个子IMU构成。如图1所示,主POS由一个高精度的主IMU,GPS天线以及安装在机舱内的数据处理计算机组成,其工作原理与传统单一POS相同,由数据处理计算机将GPS数据与主IMU惯性导航数据进行卡尔曼滤波,输出主节点高精度的位置、速度、姿态信息。子IMU利用传递对准技术,将主POS的实时导航结果与自身惯性导航数据融合,获取子节点高精度的位置、速度、姿态信息。

分布式POS是典型的多传感器测量系统,相比于传统单一POS,更多的传感器数量带来了更复杂的时间同步问题;此外,子IMU需要利用传递对准技术,将杆臂补偿后的主POS实时导航结果与自身惯性导航数据进行传递对准,完成子节点位置、速度、姿态信息的获取。本文的分布式POS系统由一台分布式POS处理计算机(Distributed POS Computer System,DPCS),GPS天线,一个主IMU和两个子IMU组成。主IMU为高精度环形激光陀螺(Ring Laser Gyroscope,RLG)IMU,子IMU为FOG(Fiber Optic Gyroscope,光纤陀螺)IMU。DPCS完成3 个IMU与GPS数据接收、时间同步、导航解算、数据输出功能,其核心是分布式POS数据处理电路。

为满足分布式POS系统短时间超高精度,必须实现对运动参数的高频解算、高精度滤波组合[6],因此需要数据处理电路具有高速的运算能力和高精度的处理能力[7]。分布式POS数据处理电路采用了大规模FPGA芯片与6 片高精度浮点DSP芯片符合使用的架构方案。

FPGA芯片用于完成3 个IMU的陀螺和加速度计脉冲数据和GPS数据缓存,并通过逻辑控制完成管理和调度整个数据处理电路的工作进程;DSP是数据处理的核心,6 片DSP采用两两并行主从处理器架构,包括3 个主DSP处理器和3 个从DSP处理器,分别完成3 个IMU的导航解算。

本文设计了一种分布式POS时间同步算法,并设计了分布式POS数据处理电路软件。该软件接收主IMU、两个子IMU和GPS提供的原始信息,并完成数据预处理、时间同步、初始对准、捷联解算、组合滤波、传递对准、数据发送等任务,实现了分布式POS主/子节点高精度位置、速度、姿态信息的测量。

2 分布式POS数据采集时间同步算法

区别于传统单一POS,分布式POS具有更加复杂的结构,其数据融合算法在初始对准、捷联解算、组合滤波的基础上仍需要考虑更加复杂的时间同步算法以及传递对准问题。

对于分布式POS这样的多传感器组合导航系统,各传感器在不同时刻获取的数据是不能直接进行融合的[8],其时间同步一直是一个关键问题[9,10]。分布式POS系统包含3 个IMU时钟,数据处理计算机时钟以及GPS时钟共5 个时钟源,其时间同步机制相比单一POS系统更为复杂。它的高精度时间同步技术对分布式POS能否可靠工作和进行高精度测量意义重大。基于此,本文进行了数据采集与数据处理两个层面的时间同步方法设计。

(1)在IMU数据采集层次,将PPS秒脉冲作为同步信号引入各IMU数据采集电路中,编写FPGA采集程序,实现各IMU以同步脉冲为基准进行陀螺数据、加速度计数据采集的功能,并实时修正激光陀螺IMU内部时钟漂移,具体修正算法如下:

假设IMU数据采集脉冲理论周期为T,则在GPS秒脉冲到来前后T 2 时间内,惟一存在一个数据采集脉冲,通过IMU内部的计数器获取该脉冲相对于GPS秒脉冲的时间差 Δt ,Δt可以用晶振偏移数 Δf来表示:

式中:f为IMU时钟频率,即每秒钟晶振脉冲数,为使Δt趋于零,本文采用将每秒内的 Δf分配到IMU数据采集周期的方式进行控制,即对IMU原始数据采集脉冲产生的周期进行调整。IMU原始时钟频率为f ,数据采集频率为fC,每个数据采集脉冲对应的时钟分频数固定,设为n 。当f不发生漂移时,有:

当f发生漂移 Δf时,需要对f + Δf进行分频,将Δf分配到fC个数据采集周期内,有:

式中:a + b = fC,n1- n2= 1 ;a表示在1 s时间内根据IMU系统时钟进行n1倍分频而生成的IMU采样脉冲的次数;b表示在1 s时间内根据IMU系统时钟进行n2倍分频而生成的IMU采样脉冲的次数。由于a与b的和为fC,所以IMU采集频率保持不变,又由于n1- n2= 1 ,因此各个数据采集脉冲的时间间隔基本相等。根据以上关系式,对IMU数据采集脉冲进行修正即可控制在下一个GPS秒脉冲到来时刻,Δf趋于零,即 Δt为零,保证了IMU数据采集脉冲与PPS的时间同步性以及各IMU之间数据采集的同步性,时间同步算法具体流程如图2所示。

3 分布式POS数据处理电路算法

分布式POS数据处理在DPCS中进行,DPCS电路软件接收主/子IMU原始数据和GPS原始数据,实现时间同步、初始对准、捷联解算、组合滤波以及传递对准功能,最终输出主/子IMU高精度实时导航结果。

3.1 分布式POS数据处理时间同步算法

将各IMU数据统一到同一时间基准下是分布式POS数据融合的前提。数据处理时间同步算法首先将各IMU的数据时间标签进行处理,补偿各IMU的数据采集过程中由于低通滤波和平滑滤波引起的时间延迟,产生各IMU准确的时间标签;其次,采用分段线性插值的方法将各IMU数据统一到同一时刻,以便后续组合滤波和传递对准的进行。

3.2 分布式POS传递对准算法

分布式POS系统通过传递对准能够为子系统及其遥感设备提供高精度的位置、速度、姿态等信息。机载对地观测系统在实时成像过程中要求每个子IMU根据主POS输出信息做实时传递对准,且对实时性的要求较高。而完整的传递对准状态变量维数通常高达24 维甚至更高,这就会导致运算速度低从而无法满足对实时性的要求。本文采用15 维状态变量进行传递对准算法设计,降低运算复杂度,以满足实时性的要求。

传递对准算法流程如图3 所示,首先将主POS实时导航结果进行杆臂误差补偿,DPCS中的传递对准滤波器将主POS实时导航结果和子IMU捷联解算结果进行卡尔曼滤波,估计子IMU位置、速度、姿态和惯性器件误差,并将估计出的误差进行反馈校正,得到高精度的子IMU位置、速度、姿态等信息。

本文设计的传递对准方法以位置误差、速度误差作为量测信息,估计子IMU捷联解算的误差,系统误差方程包括姿态误差方程、速度误差、位置误差方程和惯性仪表误差方程,分别为:

式中:ωnin为子IMU导航坐标系相对于惯性坐标系的旋转角速度在其导航坐标系中的投影;δωnin为 ωnin的计算误差;Cbn为子IMU载体坐标系到其导航坐标系的方向余弦矩阵;εvb为陀螺随机误差,包括随机常值漂移和白噪声漂移;δVn= [δVEδVNδVU]T,Vn=[VEVNVU]T;VE, VN和VU分别为子IMU导航坐标系的东向、北向和天向速度;fn=[ fEfNfU]T,fE,fN和fU分别为子IMU在其导航坐标系中东向、北向和天向加速度;ωnie为地球坐标系相对惯性坐标系的旋转角速度在子IMU导航坐标系的投影;ωnen为子IMU导航坐标系相对地球坐标系的旋转角速度在其导航坐标系的投影;δωnie和 δωnen分别为 ωnie和ωnen的计算误差;δL ,δλ 和 δH分别为纬度误差、经度误差和高度误差,其中,ωie为地球自转角速度;RM和RN分别为地球沿子午圈和卯酉圈的主曲率半径;L和H分别为子IMU的纬度和高度;∇为加计随机误差,包括随机常值偏置和白噪声偏置;εv=[εxvεyvεzv]T,;子IMU的系统误差模型采用15 维,状态变量包括3 个姿态误差、3 个速度误差、3 个位置误差、3 个陀螺漂移误差和3 个加速度计漂移误差,状态变量X可表示为:

系统量测方程可表示为:

其中,V为量测噪声矩阵,系统量测矩阵H为:

根据状态方程与量测方程建立卡尔曼滤波方程,校正子IMU捷联解算的误差,从而得出高精度的子IMU位置、速度和姿态。

3.3 分布式POS数据融合软件设计

分布式POS软件是数据同步融合算法的载体,是实现分布式POS功能实现的关键,主要包括FPGA软件和DSP软件,分别完成不同功能,软件流程如图4 所示。

FPGA软件主要完成数据的管理和调度功能,因此,可将其分为时钟模块、IMU通信模块、GPS通信模块、时间同步模块、DSP的并口通信模块、外部通信模块以及数据存储模块。

(1)时钟模块。利用有源晶振输入的时钟作为主时钟,通过不同分频比得到各子时钟。

(2)IMU数据接收模块。接收IPS脉冲信号,并以200 Hz,307 200 b/s接收各IMU发送来的原始脉冲数据,并打包发送到缓冲区中。

(3)GPS数据接收模块。接收PPS脉冲信号并以1 Hz,115 200 b/s接收GPS原始数据,将GPS信息打包发送到缓冲区中。

(4)时间同步模块。以PPS信号作为时间同步信号发送至各IMU中,并完成其他时间同步功能。

(5)DSP通信模块。接收完IMU、GPS数据后,通过外部中断方式通知主DSP取数,主DSP启动并口总线通信读取FPGA发送的数据并进行计算。在DSP完成计算后,将DSP发送来的数据进行读取。

(6)外部接口及上位机通信模块。 接收完各主DSP的最终导航结果后,以200 Hz通过RS 422 向外部发送至载荷,同时将GPS原始数据,IMU原始数据通过RS 232 向外部发送,以进行监控。

(7)数据存储模块。将每个IMU的原始数据进行分包存储,同时将GPS的原始数据进行存储,以便于事后处理。

DSP软件是完成导航算法的核心,包括时间同步、初始对准、捷联解算、组合滤波、传递对准等模块。

(1)时间同步模块。首先将各IMU数据标签进行滤波实验补偿和平滑时延补偿,然后通过线性插值的方法,将各IMU数据与GPS数据统一到基准时刻,以保证后续组合导航及传递对准时间精度。

(2)初始对准模块。该模块利用IMU数据获取初始姿态,利用GPS数据获取位置和速度,为后续的捷联解算提供高精度的初始位置、速度和姿态等信息。

(3)捷联解算模块。以上一时刻的位置、速度、姿态等信息作为当前捷联解算的初始值,结合当前时刻的IMU数据进行捷联解算,获得当前时刻的位置、速度、姿态信息。

(4)组合滤波模块。读取GPS数据和IMU捷联解算结果进行卡尔曼滤波,对捷联解算模块输出的位置、速度和姿态以及惯性器件的误差进行估计,并将估计出的误差进行补偿,提高主POS测量精度。

(5)传递对准模块。首先进行杆臂误差补偿,将主POS实时导航结果补偿到子节点,传递对准滤波器将主POS的实时导航信息与子IMU捷联解算结果融合,获得子IMU高精度位置、速度、姿态等信息。

4 实验及结果分析

为验证本文设计的分布式POS多源数据同步融合算法,进行了车载半物理仿真实验,如图5 所示,采用一个高精度的RLG IMU作为主IMU,一个小型FOG IMU作为子IMU,将两个IMU安装在减震平台上,减震平台固定于车内,GPS天线安装于车顶。首先将实验车静止300 s,完成两个IMU的初始对准,然后沿预定路线行驶1 h,将原始数据进行存储,以差分GPS作为基准,比较主POS与子IMU实时导航精度。结果如表1 所示,主POS实时导航位置均方根误差(RMSE)为0.967 m和1.182 m,子IMU实时导航位置均方根误差(RMSE)为1.315 m和1.594 m。

m

5 结语

本文设计了一种分布式POS数据采集以及数据融合的时间同步算法,设计了分布式POS传递对准算法以及分布式POS数据处理电路软件,对所设计的方法进行了车载半物理仿真实验。实验结果表明,采用本文设计的分布式POS多源数据同步融合算法,主POS实时导航位置精度达到0.967 m和1.182 m,子IMU实时导航位置误差达到1.315 m和1.594 m,实现了分布式POS的基本功能,验证了多源数据同步融合算法的有效性。

参考文献

[1]安培浚,高峰,曲建升.对地观测系统未来发展趋势及其技术需求[J].遥感技术与应用,2007,22(6):28-29.

[2]MOHAMED M R,MOSTAFA K P,SCHWAR Z.Digital image geo-referencing from a multiple camera system by GPS/INS[J].ISPRS journal of photogrammetry and remote sensing,2001,56(1):1–12.

[3]LI J L,FANG J C,DU M.Error analysis and gyro-bias calibration of analytic coarse alignment for airborne POS[J].IEEE transactions on instrumentation and measurement,2012,61(11):3058–3064.

[4]LI D R,TONG Q X,LI R,et al.Current issues in high-resolution earth observation technology[J].Science China earth sciences,2012,55(7):1043-1051.

[5]房建成,张舟,宫晓琳.机载分布式POS传递对准建模与仿真[J].中国惯性技术学报,2012,20(4):379-385.

[6]李玉寰.基于DSP和FPGA的机载导航计算机设计[D].南京:南京理工大学,2010.

[7]赖冬寅,吴云峰,叶玉堂,等.基于FPGA实现由多路复合信号传输到Camera Link传输的研究[J].电子器件,2009,32(3):666-668.

[8]EL-SHEIMY N.Mobile multisensor systems final report(1995-1999)[R].[S.l.]:International Association of Geodesy IAGSpecial Commission,1999.

[9]LI Y,WANG J,DING W,et al.A time synchronization de-vice for tightly coupled GPS/INS integration[J/OL].[2014-08-19].www.researchgate.net/p

[10]朱智勤,吴玉宏,羊远新.GPS/INS组合系统中时间同步的模块化实现[J].武汉大学学报(信息科学版),2010,35(7):830-832.

分布式时间同步 篇2

关键词:分布式同步测量系统,GPS同步时钟,载波电源

0 引言

中国电力系统大区域互联和负荷的不断增长,对电力系统参数的实时同步测量提出了更高的要求。目前电力系统的实时监测主要是基于远程终端单元(RTU)的数据采集与监控(SCADA)系统和基于相量测量单元(PMU)的广域测量系统(WAMS)[1,2,3,4,5]。SCADA系统中,不同地点间的RTU缺乏高精度时钟信号,难以用于全系统的动态特性分析,而PMU受制于技术和经济方面的原因,现在还难以在系统中全面配置。

文献[4]提出一种基于全球定位系统(GPS)和以太网时间同步技术的同步化RTU(又称为同步测量单元(SMU))的设计方法,为解决上述矛盾提供了一种可行方法。SMU引入GPS同步时钟,结构介于RTU与PMU之间,可以兼顾两者的优点。与PMU相比,SMU不提供故障侦测、录波以及大规模数据缓存等功能,结构简单,具有更好的经济性。

本文以SMU为基础构建了基于GPS同步时钟载波电源的分布式同步测量系统(DSMS),其主要特点是监控终端子站(变电站、电厂等)内的各SMU的工作电源和高精度同步时钟信号由一独立的被加载了GPS时钟信号的同步时钟载波电源模块统一提供。这一改进不但简化了SMU的结构(省去了电源模块和GPS接收器),降低了成本,而且可使终端子站内的DSMS布局更加紧凑、灵活、合理。

1 DSMS的结构与特点

本文提出的基于GPS同步时钟载波电源的DSMS结构原理如图1所示。

DSMS主要由GPS同步时钟载波电源模块、现场信息SMU以及连接二者的载波电源传输线3部分构成。其中:GPS同步时钟载波电源模块相对独立,实现GPS时钟信息与SMU工作电源的载波合成,并通过载波电源传输线传送给安装在监控终端子站(变电站、电厂等)范围内的各SMU;现场SMU通过内置的解调模块,从载波电源合成信号中解调出其运行所需的工作电源和高精度同步时钟信号,因此无需另配工作电源模块和GPS接收器,即可实现对全网相量的高精度同步测量。

显然,采用这种基于GPS同步时钟载波电源的DSMS结构,不但有效降低了现场SMU的硬件配置和成本(省去了工作电源模块和GPS接收器),而且可灵活地对终端子站监控范围内的SMU配置进行调整、扩展,从而使整个DSMS布局更加紧凑、合理。

2 GPS同步时钟载波电源模块

GPS同步时钟载波电源模块由直流电源、GPS同步时钟电路和载波调制电路3部分构成(见图1)。其中:GPS同步时钟电路产生高稳定、高精度(±1 μs)的GPS同步时钟信号(秒脉冲(1PPS)和协调世界时间(UTC)时钟信息);载波调制电路将GPS同步时钟信号调制成MHz级载波信号,并在直流电源出口处通过载波信号合成变压器加载到电源传输线路中送往现场SMU。载波电源传输线路需选用同轴电缆或带屏蔽网的双绞线,以减小高频载波信号对外辐射和避免外部信号对载波信号的干扰。

2.1 GPS同步时钟电路

稳定的高精度同步时钟是SMU功能实现的基础。GPS时钟信号具有极高的精度,但在轨道卫星进行实验或失锁等情况下,其可靠性与精度将不能得到保证,因此,必须考虑GPS时钟脉冲及其信息可靠性问题[4,6,7]。图2给出一种基于GPS接收器的同步时钟电路结构,由GPS接收器、守时钟电路和处理器等构成。其中处理器判断GPS接收器输出的信号是否有效(即轨道同步卫星是否失锁)输出UTC时钟信息,并选择守时钟电路的输出。轨道同步卫星未失锁时处理器输出UTC时钟信息,控制守时钟电路直接转发GPS接收器的1PPS信号并对其进行跟踪,否则守时钟电路输出锁定的同步1PPS信号,处理器修正输出UTC时钟信息。

守时钟电路的核心是高稳定度、高精度数字锁相环(PLL),可用高精度高稳定晶振和可编程逻辑芯片等构成[8]。它能在处理器控制下,在GPS接收器输出的1PPS信号有效时进行同步跟踪,无效时输出判断失效时锁定的同步1PPS信号,从而能够在有限时间段内确保GPS同步时钟电路输出的1PPS信号的同步精度在±1 μs范围内。

2.2 信号调制与解调电路

本文中1PPS和UTC信号均采用频移键控(FSK)调制。在满足1PPS信号(占空比为20%)和UTC时钟信号(波特率为9 600 bit/s)能够成功调制解调的同时,考虑到低频信号传输延迟较大,而高频信号传输时辐射较大且容易产生驻波,并避开通信频带减小对传输线路所经区域通信的干扰,本文中1PPS和UTC时钟信号分别采用1 MHz和0.1 MHz脉冲序列进行调制。下文以1PPS信号的调制、解调为例进行说明。调制、解调电路的结构如图3所示。

图3(a)调制器电路中,GPS接收器输出的1PPS信号经非门后,再与振荡源产生的1 MHz脉冲序列信号经与门后经T1管驱动载波信号合成变压器,使信号耦合到电源线路中。图3(b)中的解调器电路由调谐电路、高频放大、检波和信号还原4个环节组成。1PPS已调信号在调谐回路L1、C1中发生谐振,耦合变压器次级的高频信号由高频管T2放大和D1、C2检波,然后由单稳电路将信号还原为标准1PPS信号。

3 SMU核心处理电路

3.1 SMU核心处理电路的结构原理

SMU核心处理电路主要由A/D采样模块、同步采样控制模块、同步时标形成模块、信号处理模块、通信模块和10 kHz脉冲生成模块6部分组成,如图4所示。其中:A/D采样模块由信号调理电路和A/D转换器组成,负责信号调理和采样;同步时标形成模块产生基于GPS的同步采样时标,时标间隔也可根据需要自由设定;同步采样控制模块用于控制A/D的采样方式,并为CPU提供采样启动信号;信号处理模块由CPU和人机界面(MMI)2部分构成,CPU负责测量数据处理,MMI用于本地设置;通信模块主要是以太网接口,用于SMU与主站通信;由于GPS同步时钟载波电源中未载入GPS的10 kHz脉冲信号,在电路中设计了10 kHz脉冲生成模块,所产生的10 kHz脉冲每隔1 s与1PPS信号强制同步一次。

3.2 同步信号发生模块

目前的信号同步采样方式主要是定时间间隔采样和自适应采样。定时间间隔采样对硬件要求不高,且易于全局同步,但需采用软件方法跟踪信号频率的变化,大大增加了CPU的负担;自适应采样获得的采样数据可以直接处理,但需要比较复杂的电路跟踪被测信号的频率变化,增加了硬件成本。为适应2种采样方式的不同需要,本文采用现场可编程门阵列(FPGA)功能逻辑芯片设计2种采样方式以供选择,简化电路的同时加强了控制功能,如图5所示。

FPGA接收并准确识别10 kHz脉冲和1PPS信号[9],确认后给各路A/D转换器发送高精度的同步采样脉冲。为防止1PPS信号失效时,造成SMU的采样脉冲同步误差增大,CPU应提供1PPS信号软同步信号,若1PPS信号有误,CPU通过MMI告警,并启用软同步信号。为保证精确性,采样脉冲发送时刻要与1PPS信号上升沿严格同步。

2种同步采样模式的选择由CPU发出的采样脉冲控制:①10 kHz脉冲在FPGA中分频,产生定时间间隔采样脉冲。此时,需由CPU采用软件方式实现对系统频率的跟踪。②在电路内部设计了PLL,用于跟踪被测信号频率,生成自适应采样脉冲。uA,B,C为三相交流电压信号叠加,用以保证PLL正常工作[10]。

3.3 同步时标形成模块

IEEE Std 1344—1995(R2001)标准规定了3种可供选择的时标同步方式,即以离散傅里叶变换(DFT)数据窗的首、中或末点为时标同步采样点的时标同步方式[11]。本文设计中由于采样环节与同步时标产生环节互不干扰,可实现同步时标的自由设定。

同步时标形成模块由计数器B及单稳电路1,2等构成(见图4)。其工作原理如下[12]:1PPS信号经过单稳电路1形成“整秒同步时标”脉冲信号P1(负脉冲),送往CPU形成整秒同步时标中断;10 kHz信号经计数器B分频和单稳电路2形成周期为TDFT(设定的周期同步间隔,与1PPS信号周期间隔成整倍数关系,如20 ms)的“周期同步时标”脉冲信号P2(负脉冲),送往CPU形成周期同步时标中断,同时复归计数器B使其实现计数值重载并按TDFT周期重新开始计数。

UTC时钟信息直接经过RS-232串口送给CPU。由于UTC时钟信息大约提前1PPS信号40 ms开始发送并在1PPS信号出现之前发送完毕,因此CPU能够在响应整秒同步时标中断之前及时接收并处理完毕与之关联的UTC时钟信息,从而在响应整秒同步时标中断时准确标定整秒同步采样的时标信息。由于10 kHz脉冲与1PPS信号严格同步,且周期数据窗宽度TDFT与1PPS信号周期成整倍数关系,因此,微处理器在响应周期同步时标中断时同样能够准确标定周期同步采样的时标信息。

4 同步时钟载波电源的硬件实现

4.1 试验结果

本文所提出的GPS同步时钟载波电源已研发成功,并在30 m长的双绞线上成功进行了试验验证,其中直流电源采用+24 V的电源。图6给出了1PPS信号调制前、调制后及解调后的试验录波图。从图6中可以看出,1PPS信号解调后的波形与调制前保持了很好的一致性。

解调器中的LC谐振回路带宽窄(频率通带在[(f0-0.15) MHz,(f0+0.15) MHz]范围内),对调制后信号有较好的选通作用,有效抑制了两信号通道间的相互干扰。图7为谐振频率为1 MHz的解调器谐振回路的幅频特性(f0处信号幅值记为1)。

4.2 通信时延对相量同步测量的影响与修正

从图6(b)可以看出,终端SMU处解调后的1PPS信号较GPS发出的1PPS信号存在一定的时延Δti,该值与调制/解调器、电源载波线等硬件特性参数有关,硬件确定后基本不变,因此可在安装完成后通过试验测得。

试验表明,Δti一般不超过1 μs且主要影响同步相量的相角测量精度(对幅值测量精度影响甚微),因此必须对SMU测得的同步相量相角值进行修正。具体修正方法在文献[12]中有详细描述,不再赘述。

5 同步时钟载波电源的同步校核方案

由于同一监测终端子站内所有SMU的同步时钟信号由1个GPS同步时钟载波电源统一提供,所以校时只针对GPS同步时钟载波电源即可,简单方便。

本文采用软件校时方案,即在SCADA数据中心(或者指定的站点)设置以太网校时服务器,用于GPS同步时钟载波电源的时间校核;并在电源中提供利用以太网作为时间同步的软同步信号通道。以太网传输存在不确定的延迟误差。根据高精度校时协议(PTP)[13],主机先后向从机发送“时间同步开始”报文和“时间同步开始时刻”报文,从机记录2次接收报文的时刻和时间同步开始时刻,可测得网络传输延迟时间,以此提高从机时差的校核精度。

6 结语

尽管理论上WAMS完全可替代现有的SCADA系统,但在目前经济技术水平下这样做并不现实,在相当长的时间内只能是SCADA和WAMS这2种系统并存。基于GPS同步时钟载波电源的DSMS测量数据与WAMS数据具有相同的时间坐标,使得基于WAMS/SCADA混合量测的电网参数辨识与估计更加简单,具有极高的实用价值。

DSMS主要特点是监控终端子站(变电站、电厂等)内各SMU的工作电源和高精度同步时钟信号由一独立的被加载了GPS时钟信号的同步时钟载波电源模块统一提供;SMU提供2种同步采样模式供选择,同步时标可根据需要自由设定,与PMU相比自身结构更紧凑,应用更灵活,可与RTU一样广泛布置而不用考虑布点问题。如果能在SCADA系统的维护过程中,逐步用SMU替代原有的RTU,形成DSMS,将为电力系统状态估计、安全预警乃至广域控制保护等提供更精确可靠的数据支撑平台。

一种分布式时钟同步系统设计 篇3

随着信息技术的不断发展,对信息采集的速度和精度要求越来越高,机器之间的时钟同步要求也越来越高。因此,分布式时钟同步系统应运而生,该系统可以协调分布式网络中的节点时间,为网络中的节点提供准确时钟。但是由于分布式网络环境的复杂性,时钟本身温漂、网络延时和成本因素等影响,系统有时不能为机器长时间提供高精度的时钟。因此,设计高精度、稳定、低成本的同步系统是必要的。

目前,时钟同步主要有2类方法,一类方法是通过Network Time Protocol(NTP)服务器来提供时间信息,如文献[1-7]中都采用了网络时间来同步机器的时间,再通过补偿算法来矫正网络时间,以此来减少网络延时误差。但是,此方法得到的时间因为线路长短,电脑时间分辨率和环境等原因,误差有随机性,同步精度只能达到几十ms左右,对于实时性同步性很高的信息采集机器来说精度是不够的。而且机器必须接入网络才可以得到时间,这也大大限制了机器使用的范围。另一类方法是通过解析GPS(Global Positioning System)的时间信息,来实时同步机器时间,GPS可以提供精度很高的时间信息,可以达到ns级别。通过解析GPS的时钟同步系统精度也可以达到μs级别,如文献[8-12]都是先通过同步GPS的时间信息来产生对应的时间码,再使用时间码来同步机器时钟。这样可以得到高精度的时间信息,但是随着机器数量的增加,使用此方法每一台机器必须配备一台GPS时间同步机器产生时间码,成本大大增加。由于机器使用的流动性,GPS时间同步机器需要一起移动,但是必须是可以接收到GPS信号的地方,这样又限制了机器的使用,机器的便捷性减弱。

为解决以上问题,本文从第2类方法思路出发,通过同步GPS源的基准时间信号,得到高精度的时间信号。为提高便捷性和降低成本,提出了一种同步GPS源的IRIG-B码的方法。在此方法的基础上使用FPGA器件,51单片机和恒温晶体完成了多机器时间同步系统的硬件实现。该系统可以以很小的体积和较低的成本嵌入到产品中,为机器提供同步时钟源,从而达到在便捷性的基础上提高精度且降低成本的目的。

1 系统设计原理

系统接收IRIG-B时钟信号来同步时间。时钟同步系统同步之后需要进入守时状态,守时状态影响时钟精度的因素主要是本地时钟的精度,首先本地时钟精度需要满足要求。

1.1 时钟误差分析

时钟同步系统要在系统同步完成后保持精度,首先系统内部时钟源精度需要满足要求。同步GPS时间同步系统的IRIG-B码为几十ns的误差,误差可以忽略。同步时钟按照1 k Hz输出、连续工作8 h、误差不大于0.5个时钟周期计算,时钟输出精度为:

式(1)的时间误差为一个时钟周期的误差要小于3.47*10-8s,机器信息采集一般误差要小于0.5个时钟周期,那么误差为:

现采用JKOC36-25.6M型号的恒温晶体,标称频率为25.6 MHz,工作温度为-40℃~70℃,在此范围内,它的短期频率稳定度优于5E-12(阿伦方差),频率温度稳定度<±5 ppb(不带隐含参考温度,ppb为10-9),日老化<±0.5 ppb,年老化<±0.05 ppm。工作电压为5 V,输出方波,高电平为2.85 V,低电平为0.25 V,占空比为45%~55%。短期稳定度可以满足要求,现主要考虑频率温度稳定度:

由式(2)、式(3)和式(4)可得采用JKOC36-25.6M型号的恒温晶体可以满足时钟按照1 k Hz输出、连续工作8 h、误差不大于0.5个时钟周期的要求(计算温度对恒温晶体的影响造成的累计误差,按照最大误差计算)。

1.2 时钟同步方案

时钟同步方案结构图如图1所示,主要由协议解析模块,实时时间计数器模块,高精度时钟生成模块和内部时钟源模块组成。FPGA器件接收CT-TSS2000B时间同步系统输出的IRIG-B,解析IRIG-B得到标准秒脉冲PPS和时间信息。将PPS和时间信息分别送到高精度时钟生成模块和实时时间模块。JKOC36-25.6M恒温晶体为FPGA器件提供外部时钟,再通过锁相环电路倍频到100 MHz的频率为高精度时钟生成模块提供基准时钟。在同步时,高精度时钟生成模块通过PPS秒脉冲来同步本身的时钟,并调整输出时钟的参数,实时时间模块直接接收解析的时间信息。在守时时,高精度时钟生成模块根据同步时时钟调整后的参数输出时钟,实时时间模块通过接收高精度时钟生成模块输出的PPS秒脉冲来更新时间。在同步半小时后,可以断开时钟源,进入守时状态。系统除了可以生成k Hz的时钟,还可以通过锁相环动态生成MHz的时钟,输出时钟频率可以通过STC12 C5 A60 S2单片机来控制。

1.3 高精度时钟生成和守时模块设计

高精度时钟生成模块的主要作用是,实现高精度时钟的生成方案以及守时方案,它由同步整形电路、相位比较电路、启动电路、分频电路和分频系数控制电路组成。该模块的结构如图2所示。

PPS秒脉冲接入高精度时钟生成模块模块之后,先经过同步整形电路,输出一个系统时钟(100 MHz)周期宽度的秒脉冲PPS_Pulse。启动电路接收到PPS_Pulse信号之后,在信号的的上升沿发送启动信号给分频电路。分频电路在启动信号的上升沿启动,以初始分频系数108-1生成PPS_C秒脉冲信号,并将PPS_C秒脉冲信号送给相位比较电路。相位比较电路接收PPS_Pulse信号和PPS_C信号,并以系统时钟为单位计数2个秒脉冲的相位差,并将相位差传递给启动模块。启动模块接收到相位差之后,在PPS_Pulse的上升沿判断相位差是否小于20,如果连续20次相位差小于20个系统时钟周期,表明恒温晶体已经稳定,则发送启动信号给分频系数控制电路。分频系数控制电路接收相位差信号,调整分频系数并传递给分频电路。分频电路使用新的分频系数生成PPS_C信号,并传递给相位比较电路。相位比较电路再将相位差传递给启动电路模块和分频系数电路模块。如此循环,不断调整分频系数,同步0.5 h后,分频系数基本收敛稳定,可以断开时钟源。此时,可得到高精度的秒脉冲信号,再用秒脉冲信号复位系统所需要的时钟信号,以此来消除时钟信号的累计误差,达到较长时间保持时钟精度的目的。

在此过程中,启动电路一共有3个状态来控制其他电路的启动。启动信号模块在PPS_Pulse脉冲的上升沿发送启动信号给分频电路,分频电路启动之后,启动电路获取相位差,若相位差连续20次小于20,发送启动信号给分频系数控制电路。启动电路的策略如图3所示。

相位比较电路共有3个状态,来计数2个秒脉冲的相位差,为启动电路和分频控制电路提供依据。在PPS_Pulse的上升沿开始计数,在PPS_C的下降沿停止计数。停止计数之后判断计数值是否过大,如果数值大于256就重新计数,小于256便输出计数值。相位比较电路的状态转换图如图4所示。

分频系数控制电路共有4个状态,如图5所示。通过相位差来调整分频系数。分频控制电路接收到启动信号,开始启动,接收相位比较电路的相位差,再经过处理得到调整之后的分频系数。调整策略主要从时钟突变和随机误差考虑,分别采用加权和平均的方法来处理随机误差和突变的影响。

2 硬件实现

系统硬件装置采用成都可为科技有限公司的CT-TSS2000B时间同步系统输出的IRIG-B(InterRange Instrumentation Group)码作为同步时钟源,FPGA芯片EP4CE15F17C8核心板用来实现同步方案,完成时钟同步系统的主要工作。STC12C5A60S2单片机最小系统系统作为控制器,控制FPGA时钟输出的频率。JKOC36-25.6M恒温晶体作为EP4CE15F17C8芯片的外部时钟源。电脑上位机软件可以通过串口与单片机最小系统通信,来控制时钟的输出。系统硬件框图如图6所示。

系统开始运行,CT-TSS2000B时间同步系统首先接收GPS信号完成时间同步,完成同步之后输出IRIG-B时间基准信号。FPGA核心板接收IRIG-B信号,解析出时间信号和PPS秒脉冲,经过0.5 h时间完成同步。通过上述高精度时钟生成方法,输出PPS标准秒脉冲和高精度时钟。使用人员可以通过PC机应用软件与单片机控制器通信,实现时间信息查询和输出时钟频率的控制。

3 实验结果

3.1 实验环境

在实验中,为了证明本系统达到要求,在不同温度下可以保持精度。本文使用高低温交变试验箱作为外部温度变化的模拟,高低温交变试验箱是用于测试和确定电工、电子及其他产品及材料进行高温、低温、或恒定试验的温度环境变化后的参数及性能。系统硬件装置采用CT-TSS2000B时间同步系统输出的IRIG-B(InterRange Instrumentation Group)码作为同步时钟源,采用Alter公司Cyclone IV系列EP4CE15F17C8芯片的核心板实现同步方案,STC12C5A60S2单片机系统作为控制器和JKOC36-25.6M恒温晶体作为EP4CE15F17C8芯片的外部时钟源。

3.2 实验结果

3.2.1 温度试验

为了测试在不同温度下,系统的时钟精度是否达到要求。本次温度实验分别设定高低温交变试验箱的温度在-10℃,-5℃,0℃,10℃,20℃,30℃,40℃,45℃和50℃,在室温下(25℃)同步完成之后,来测试温度对系统时钟精度的影响,每个温度实验时间为1 h。得到温度与时钟误差关系图如图7所示,实验表明在0℃~30℃误差最小,通常1 h<20μs。随着温度的降低和升高,误差略有增大,通常小于40μs。1 h的试验通常误差已经稳定,可以预见为机器提供8 h的时钟可以满足要求。在-10℃~50℃之内满足要求,已达到高精度,低成本的要求。

3.2.2 时钟稳定度试验

在本实验过程中,记录了常温下PPS_C秒脉冲在同步时的分频数。同步时的分频数表示时钟的稳定度,随着时间的推移,分频数的变化趋势如图8所示。

图8表明,在常温下,时钟的分频数在一定范围内波动,分频数在108-4~108+2之间波动,均值在108-1左右,波动范围在±3之内,具有较高的时钟稳定度。

4 结束语

本文从设备的便捷性和成本角度出发,提出了一种同步GPS时间同步系统的IRIG-B码的方法。在此方法的基础上使用FPGA器件,51单片机和恒温晶体完成了多机器信息采集时间同步系统的硬件实现。该方法通过同步基准时间信号源,并在断开信号源之后,可以在一定时间内保证时钟的精度。通过该方法达到了在误差不大于0.5个时钟周期的精度要求下,1 k的时钟输出,可以连续工作8 h。该系统可以以很小的体积和较低的成本嵌入到产品中,为其他采集系统提供同步信号源。在进一步的研究中将进一步提高精度和系统的稳定性。

参考文献

[1]丁永红,徐强,汪芸.基于NTP的ORBUS时间同步系统[J].东南大学学报(自然科学版),2006,36(3):477-482.

[2]李杏.网络时钟同步及时钟服务器稳定性研究[D].北京:北京化工大学,2012.

[3]徐金平.网络时钟同步的研究[D].北京:北京化工大学,2004.

[4]辛欣,游雄,刘芳,等.分布式虚拟地理环境中时间同步问题研究[J].测绘工程,2010,19(1):21-24.

[5]张红亮.分布式系统时钟同步技术的研究与应用[D].长沙:国防科学技术大学,2002.

[6]王刚,黄飞,乔纯捷,等.分布式网络时钟同步研究[J].仪器仪表学报,2008,29(11):2 399-2 403.

[7]孙祥祥.分布式系统时钟同步协议的研究与实现[D].杭州:杭州电子科技大学,2014.

[8]刘靖宇.基于CAN总线的分布式系统的时钟同步算法研究[D].青岛:青岛科技大学,2006.

[9]熊慧.CAN总线分布式系统高精度时钟同步技术的研究[D].武汉:华中科技大学,2007.

[10]陈丕龙.分布式测试系统中的GPS时钟同步系统设计[D].太原:中北大学,2011.

[11]龚晓春.分布式微型航天器的时钟同步研究[D].哈尔滨:哈尔滨工业大学,2007.

分布式数据库同步检测方法探讨 篇4

1 矩阵校验算法

1.1 算法概述

联机时将缓存的数据分成n张页面,分别记为P1, P2,…,Pn,把每个页面的校验和分别记C1、C2、…、Cn。求整数m使得(m-1) 2

在服务器方也按同样的方式分页,按同样的方式对校验和排列矩阵。在服务器方计算矩阵中每一行的签名,分别记为SRS 1, SRS 2,…,SRS m。计算矩阵中每一列的签名,分别记为SCS 1, SCS 2,…SCS m。

MU在重连后,把它所缓存的页号码发送到服务器,服务器按上述方法排列矩阵,计算每行和每列的签名,并把这些签名按顺序发送到MU。

MU也按上述方法排列矩阵和计算各行、各列的签名,每行的签名分别记为MRS 1, MRS 2,…,MRS m;每列的签名分别记为MCS 1, MCS 2,…,MCS m。

RX i=1当SRS i≠MRS i时,

0当SRS i=MRS i时.i=1, 2,…,m

比较各行的签名之后,就可以得到RX的一组值:

CX i=1当SCS i≠MCS i时,

0当SCS i=MCS i时。

比较各列的签名之后,得到CX的一组值:CX1,

CX2,…,CX m。

1.2 实例分析

假设有一个64张页的例子,则应排成8×8的矩阵,示意如下(不一致的页用*标记):

通过比较各行、各列的签名之后,得到:

将有可能不一致的页提取出来,得到如下的新矩阵

由RX1=1, CX=00100101可知:在第1行中可能不一致的页有P13, P16, P18。

由RX4=1和CX=00100101可知:在第4行中可能不一致的页有P43, P46, P48。

由RX8=1和CX=00100101可知:在第8行中可能不一致的页有P83, P86, P88。

在上述9个可能不一致的页中,至少有3个页一定有错。如果有超过3个页不一致,则这9个页就是所有不一致页的一个超集。

1.3 算法实现

Tb表示可能不一致页的集合,其初值为空页面Pij的校验和为矩阵中的Cij.Tb:=0

1.4 结果分析

算法确定了一个n×m阶的结果集,这个结果集可能就是所求的不一致页的集合,也可能是不一致页的一个超集(所有不一致的页都包含在里面)。其形式如下:对此集合中可能不一致的页的分布情况作详细讨论,并分别作相应的后续处理。

1.5 不一致页的分布情形

(1)不一致的页刚好落在矩阵对角线或反对角线上(选用一个5阶的方阵作讨论,下同),情形如下(不一致的页有*标记):

这种情况是最理想的状况,对于本例的5×5阶方阵,最少有5个页不一致,如果是该情形,则不一致的页就是对角线或是反对角线上的那些。

(2)不一致的页较分散,并不在对角线上,但是正好是满足要求的最少页。情形如下:

对于本例的5×5方阵,不一致的页正好分布在该方阵的行列式的其中一项上,所以只有5张页就能得出签名比较的结果,得到这个5×5阶的结果集合。

(3)不一致的页较分散,并不在对角线上,但是不一致页数目大于最小值,情形如下:

这种情况不一致页的分布表现得无规律性,在这25张页中,不一致页的数目在5~25之间都有可能。

(4)结果集合不是方阵的情形,不一致页的分布也可作类似分析,在此不赘述。

2 技术对比

从算法的复杂程度和实现难度来看,矩阵校验算法显然更胜一筹,其他算法必须实现麻烦的页分组机制,在分组时,随机算法的选择也很关键,不合适的随机分组算法会大大影响实现的效率,会将不一致的页判断为一致,又将一致的页判断为不一致。这都是算法本身的缺陷带来的。本算法通过简单易行却很完美的矩阵排列的方式进行分组,减少了解决问题的环节,很自然地使算法出现错误的几率δ降到了可以忽略的程度,也就是说本算法更可靠。另外本文对确定一个超集之后的解决方案作了讨论,并吸收了以前研究成果可借鉴的部分,使得本算法更可靠、更健壮,能应对在应用中出现的各种情况。

3 结束语

从上面分析可知,矩阵校验算法在很大程度上只能找出不一致页的范围,并不一定能精确到具体页,但在实际应用中,在校验一组页之前知道有多少个页不一致是不现实的,一定要精确地定位那些不一致的页也是没有实际意义的。本文技术的竞争力体现在算法复杂度和实现难度方面,通过简单而有效的矩阵排列,解决了分组的问题,使本技术比其他技术更可靠,不一致的概率更小。而且在确定一个结果集后,又采取了行之有效的措施,在结果集的基础上再作诊断,使诊断结果更为精确。

参考文献

[1]何新贵, 唐常杰, 李霖, 等.特种数据库技术[M].北京:科学出版社, 2000.

[2]Franklin M J, Carey M J, Livny M.Transactional Cli2ent/Server Cache Consistency:Alternatives and Per2formance[J].ACM Transactional on Database Sys2tems, 1997 (3) .

[3]Barbara D, Imielinski T.Sleepers and Workaholics:Caching St rategies in Mobile Environment s[R].In:Proceedings of ACM SIG-MOD Conference Minnesotai, 1994:1-12.

[4]Daniel.Barbara, Richard J Lipton.A Class of Random2ized St rategies for Low2Cost Comparison of File Copies[J].IEEE Trans-actions on Parallel and Dist ributedSystems, 1991, 12 (2) :160-170.

分布式数据库数据同步的应用分析 篇5

信息技术的发展促进了信息的交流和共享, 在人们分享数据信息和上网检索资料的过程中, 离不开数据库的支持和辅助。而随着Internet技术的迅速发展和信息共享要求的不断提高, 对于数据库系统的功能和结构等的要求也越来越高, 如今, 数据库系统发展的主要趋势包括了大型化与分散化两个方向, 分布式数据库能够有效地安排处理来自不同地区的相关数据信息, 可以给人们的生活和工作带来很多的便利和好处。在本文中, 将对分布式数据库的含义和特点进行介绍和分析, 并对分布式数据库数据同步技术进行简单介绍, 最后以计生系统为例来分析如何应用分布式数据库数据同步技术。

一、分布式数据库的简单介绍

(一) 分布式数据库的含义

单从分布式数据库的名称来看, 人们常常会觉得分布式数据库中的数据主要是呈分散状态的, 其中的数据规律性并不强, 实际上分布式数据库内部的数据在分散状态的表象下是非常严谨的逻辑思考和安排, 具有比较强的内在规律性。

具体来说, 分布式数据库是一种把不同地理位置上的数据通过网络技术整合连接起来的数据库系统, 即分布式数据库的不同站点上的数据代表着不同地区的数据, 由于各个地区地理位置的不同, 在分布式数据库中的数据呈现出一定的分散性, 为了方便使用者的查询和检阅, 在整合分布式数据库时会按照相应的逻辑和规律进行, 使各个不同站点上的数据形成一个有机的整体, 最后利用网络技术和计算机技术把经过安排的不同地理位置的数据连接起来形成一个数据系统。

在理解分布式数据库的含义时应该注意两个方面的内容:一方面, 分布式数据库中的站点是指按照地理因素把数据联系起来的逻辑单位, 站点也可以称为结点, 分布式数据库中的站点可以是分散在不同地理位置的国家, 也可以是不同的城市, 甚至也可以是一个建筑物内部的不同位置, 人们可以根据具体的需要来安排和选择站点所代表的地域, 但是无论怎样选择站点所代表地域, 分布式数据库中的数据都必须是经过逻辑思考而进行安排和整合的;另一方面, 在一个完整的分布式数据库系统中, 数据信息和计算机网络是两个必不可少的重要因素, 如果没有数据信息只有计算机网络就不可以称之为一个分布式数据库, 如果没有计算机网络而只有数据信息, 就不能满足人们信息共享和信息查阅的需要, 这样的数据库的存在也是没有意义的。

(二) 分布式数据库的特点

分布式数据库的结构组成决定了分布式数据库主要有以下五个特点:一是, 分布式数据库系统中的数据并不是储存在某个地区的一台电脑上, 分布式数据库中的数据可以根据需要储存在不同地区的多台计算机上;二是, 分布式数据库中的数据虽然是分布在不同地区的独立数据, 但是这些数据之间具有内在的相关性;三是, 经过相关人员的整合, 展现在使用者眼前的是一个完整的分布式数据库系统, 在使用者使用分布式数据库时完全不会受到数据异地存储的影响;四是, 分布式数据库系统中的每个站点既具有自身的独立性又是整个分布式数据库系统中不可或缺的一部分, 即分布式数据库中的每个站点既可以满足局部的要求也能够满足整个系统的要求;五是, 分布式数据库中的数据存在一定程度的冗余, 如果能够把这种冗余控制在适当的范围内, 分布式数据库系统的效率和可靠性都会得到大幅度的提升。

(三) 分布式数据库的优势

近些年来, 分布式数据库之所以得到人们高度的关注, 并且应用领域得到了不断的拓宽, 主要是因为分布式数据库自身存在着一些优势, 概括来说分布式数据库的优势主要包括三个方面。第一, 分布式数据库的可靠性很高, 这主要是因为分布式数据库由多个独立的站点有机组合而成, 信息和数据的存储不局限于某一台计算机上, 当某个节点或者某一台存储数据的计算机发生故障时, 其余的站点和存储数据的计算机并不会因此而受到影响, 某个站点或者存储数据的计算机出现问题只会对局部的使用产生影响, 而不会使整个分布式数据库系统面临瘫痪的风险, 这就增加了分布式数据库的可靠性和稳定性, 而且分布式数据库中存在的冗余对于提高分布式数据库的可靠性也是有帮助的。第二, 分布式数据库中结点的分地区分布能够在帮助用户减少通信费用的同时为用户提供更多的便利, 因为不同地区的用户对于数据和信息的需求都是不尽相同的, 在局部结点上安排局部用户经常访问的内容, 不仅可以减少用户的通信费用, 也增加了用户检索数据的便捷程度。第三, 分布式数据库系统中包含多个结点, 可以根据用户的需求来调节结点的内容和数量, 使分布式数据库具有很强的灵活性。

二、分布式数据库数据同步技术的简单介绍

(一) 分布式数据库数据同步技术的含义

分布式数据库数据同步技术是一种能够让分布式数据库各个结点数据同时更新的技术。分布式数据库中各个站点数据和信息能否同步更新直接影响用户使用的便捷性, 在分布式数据库中由于各个结点上存储着不同地区的数据, 而且不同地区的数据也存储在不同的计算机上, 这就使分布式数据库系统中个地区数据的同步更新成为了一个集重点和难点于一身的问题。

分布式数据库数据同步技术通过同步更新不同结点的数据, 不仅让用户可以在本地数据服务器上查询到最新的数据和信息, 而且也增加了分布式数据库的透明度和公信力。分布式数据库数据同步技术的工作原理是:把分布式数据库中的数据分为源数据和副本, 把源数据存储在需要经常进行操作和更新的站点上, 在更新数据或者修改数据时, 只需对源数据进行更新或者修改即可, 对于副本来说只能进行复制操作。

(二) 分布式数据库数据同步技术的分类

分布式数据库数据同步技术主要包括多副本间严格一致和多副本间近似一致等方式。

首先, 多副本间严格一致的方案是通过两阶段提交协议或者三阶段提交协议来实现的, 在两阶段提交协议中, 分布式数据库中各个结点数据的更新和修改是完全同步的, 这种方法的优点是能够保证各个结点的数据的更新和修改实现完全的同步, 但是这种方法的缺点是在进行数据更新和修改时, 分布式数据库中所有的服务器都必须同时处于联机状态, 如果某一个站点在联机时出现问题就会使其他所有结点的更新数据不能提交, 导致分布式数据库更新速度慢和效率低等问题出现, 除此之外多副本间严格一致的方案需要非常大的工作量, 在进行各结点数据的更新和修改时, 需要对所有的副本都要进行改动。

其次, 与多副本间严格一致的方案不同的是多副本间近似一致的方案, 在采用多副本间近似一致的方法时, 每个副本的修改并不是完全同步的, 在实际操作和应用中, 除了一些临界数据的副本其他的大量非临界性副本只要可以保持模糊的一致性就能够维持系统的运行, 多副本间近似一致方案与多副本间严格一致方案相比具有一定的优势, 一方面利用多副本间近似一致的方法进行数据的更新和修改时可以避免因各个站点同时提交更新内容而导致的网络阻塞和瘫痪, 虽然一些副本的修改时间并不是完全同步的, 但是在整个系统完成更新之后, 各个站点的副本能够保持一致, 另一方面, 多副本间近似一致方案下分布式数据库各个结点的自治性有所提升。

三、以武汉市计生系统为例分析如何应用分布式数据库数据同步技术

(一) 分析武汉市计生系统网络结构

在构建分布式数据库, 并应用数据同步技术实现分布式数据库数据同步技术之前, 首先要分析的就是具体数据库系统所面临的具体社会网络环境, 武汉市计生系统是以市级计生系统信息中心为核心, 通过网络技术与计生委的其他业务处室和辖区计生委相连, 武汉市计生系统是一个包括三个级别的网络体系, 而且这三个级别的网络结构呈现出树形结构, 这三个级别分别是市级信息中心、区级信息中心、街道信息中心。

首先, 市级信息中心是武汉市计生系统的一级结构, 也是武汉市计生系统的信息中心, 因此在进行建设时需要考虑市级信息中心的访问量和数据特点, 市级信息中心存储的数据量和访问量一般情况下都比较大, 因此市级信息中心的网络主要由数据库服务器、DNS服务器、WEB服务器、EMAIL服务器以及办公自动化服务器等组成, 为了保证市级信息中心能够在较大的访问量下还能够安全稳定的运行, 市级网络中心还设置了后备数据库和磁盘阵列等, 而且通过TCP/IP协议以及ISDN等方式, 市级信息中心还能够与湖北省计生信息网络和Internet直接相连。

其次, 区级信息中心是武汉市计生系统的二级机构, 区级信息中心主要可以实现各区之间的信息交换功能, 由于各区的计生数据存储量比市级信息中心的数据存储量要小, 而且访问量也不大, 区级信息中心的网络规模并不大, 而且相关配置也没有市级信息中心网络的配置高, 只是在本区范围内形成一个小型的局域网络, 区级信息中心网络体系在与市级信息中心网络相连时可以根据每个区规模的大小选择不同的网络连接方式, 如果一个区的面积较大人口较多则可以选择利用光纤专线的方式与武汉市市级计生系统信息中心的网络相连, 如果一个区的面积较小而且人口不多则可以选择利用ADSL宽带的方式与武汉市市级信息中心网络相连。

再次, 作为武汉市计生网络系统的三级结构, 街道信息中心主要负责街道范围内的信息存储和交换, 因为街道信息网络信息中心的访问量和数据存储数量都比较小, 因此街道信息中心通常情况下采用单台微机的方式, 利用windows操作系统完成相关的工作, 由于街道信息中心的数据存储量和访问量并不是很大, 则可以选择较为经济实惠的方式将街道信息中心与相应的区信息中心进行连接, 如通过PSTN拨号的方式, 这种方式既可以满足需要也可以降低成本, 是一种非常实用的网络连接方式。通过上述的分析可以发现武汉市计生系统中由于PSTN与公共网络等连接方式的存在, 武汉市计生系统的可靠性并不是很强, 需要通过分布式数据库数据同步技术来进行完善。

(二) 武汉市计生系统对数据同步的需求

武汉市计生系统进行数据的统计和分析的主要对象包括数据类别、数据量、数据流动方向等, 而需要进行数据同步处理的数据主要包括了武汉市流动人口信息、武汉市计生系统统计报表、相应的代码数据、武汉市市区内流动人口的相关数据等。其中流动人口信息是进行数据同步时必须及时更新的数据, 流动人口信息的收集流程主要是街道计生办对街道范围内的人口流动信息进行收集和统计并上传至区计生办, 区计生办把街道计生办上传的信息及自身收集的信息上传至市计生办, 最后在武汉市计生系统中会呈现出街道、各区以及市信息中心收集和整理的所有信息, 在这个过程中无论是街道计生办还是区计生办在向上一级传输数据和信息时应该把数据制成统计报表的形式。代码是一种可以降低信息处理工作量的特殊数据, 在数据处理过程中可以用代码来代替的可以是性别、职业等, 如可以把男生的代码设置为1, 女生的代码设置为2。武汉市市区内的人口流动数量信息也是非常重要的信息, 需要利用数据同步技术进行数据同步的设置。

(三) 应用分布式数据库数据同步技术实现武汉市计生系统的数据同步

根据上述的分析可知武汉市计生系统主要分为街道、区、市等三个级别, 这三个级别的运行单位分别是街道计生办, 区计生办以及市计生办, 在每个级别的信息系统中都需要统计的信息是流出人口情况与流入人口情况, 结合武汉市计生系统的具体情况, 在对武汉市计生系统进行数据同步时可以实现的数据同步主要包括两个内容:街道级别数据与各区级别数据的同步, 各区级别数据与市级别数据的同步, 为了实现这些数据的同步可以采用的方法主要有数据管道以及XML等方法。

第一, 可以利用数据管道的方式来实现街道级别数据与各区级别数据的同步, 数据管道是一种能够有效转移和传输数据的工具, 这种方式的主要流程是从服务器中下载相关的数据, 或者是把本机中需要转移的数据直接上传到服务器即可, 这种方式简单易行, 而且能够安全高效地传输数据, 对硬件的要求也不是非常高。

第二, 在进行区级别与市级别之间的数据传输时, 数据量是非常大的, 利用数据管道传输大量数据时很容易造成网络的阻塞和瘫痪, 因此为了实现区级别与市级别之间的数据同步, 应该采用XML的方式, 在利用XML方式时需要相关单位配置WEB服务器, 同时也应该配置质量较高的硬件设备, 而武汉市的区级计生机构和市级计生机构拥有这些设备, 因此在此可以利用XML的方式来实现区级别与市级别之间的数据同步。

结语

通过本文的研究, 可以看到分布式数据库在实际生活中所发挥的重要作用。但对于实际的使用者来说, 要想能够很好地利用分布式数据库数据同步技术, 不仅应该了解分布式数据库的含义与特点, 还应该了解分布式数据库同步技术的工作原理和流程, 在利用分布式数据库数据同步技术时应该先分析某个分布式数据库的具体结构和内在特点, 找到需要进行数据同步处理的部分, 最终选择出最佳的方式实现某个分布式数据库的数据同步。

参考文献

[1]康瑞华, 尹帆, 薛胜军等.基于B/S模式和分布式数据库技术的物流信息系统[J].武汉理工大学学报 (交通科学与工程版) , 2003, 27 (6) :860-863.

[2]周自斌, 朱方洲.分布式数据库的数据同步技术研究和应用[J].电脑学习, 2004, (2) :22-23.

[3]侯素新, 陈焜.分布式数据库技术在图书资料管理系统中的应用[J].江汉大学学报 (自然科学版) , 2005, 33 (3) :55-58.

[4]戴婉荣.基于分布式数据库的数据同步机制的研究与应用[D].武汉理工大学, 2010.

[5]苏汉辉.基于分布式数据库的通信工程设计项目管理系统的设计与实现[D].华南理工大学, 2013.

[6]田淼.分布式异构数据库同步中间件的设计与实现[D].西安电子科技大学, 2012.

分布式时间同步 篇6

随着智能变电站技术的日益成熟, 智能变电站的建设也逐渐规模化、常规化。点对点传输与采样值组网传输是现阶段智能变电站采样值的两种主要传输方式。点对点传输方式的主要优点是不存在中间节、无需进行全局同步、传输的可靠性与稳定性较高;但也存在光纤布线和单元合并结构复杂、接送和发送采样值的接口数量过多等问题。相对于点对点传输方式, 采样值组网传输方式的系统结构更简化、接口数量更少, 更易于标准化和扩展应用;但也存在过于依赖同步系统, 易导致保护动作出现错误的缺点。现阶段, 两种技术方案的应用存在着较大争议, 因而针对现阶段两种采样值传输方式存在的问题与不足, 本文探讨了分布式同步采样值组网技术的设计与实现, 以利于智能变电站规划建设的发展及完善。

1 智能变电站现阶段采样传输技术

1.1 点对点传输技术分析

智能变电站模拟量的采集是在传输系统中的合并单元内完成的, 智能变电站模拟量的处理则是在保护测控装置内完成的。如果传输路径延迟不固定, 那么各合并单元的同步采样需通过外部同步系统完成, 以保证采样值数据能同步用于保护测控计算。若同步系统出现问题或故障, 则保护装置可能出现不正确的动作。为此, 相关规范标准中明确指出继电保护装置保护功能的实现不能依赖于外部对时系统。

采样值点对点传输技术 (如图1所示) 可不使用外部同步系统实现采样值的同步传输。该技术主要采用点对点的直接采集方法, 通过光纤对测控装置、合并单元的保护与输出进行直接连接, 中间延迟都是专用通道、单路径、不存在资源竞争, 以此保证整个传输路径上的延迟都是固定的, 不需要外部同步系统, 并通过补偿各延迟输入, 实现保护测控装置内各数据输入间的采样值同步。

现阶段, 点对点传输技术比较成熟, 但在实际应用工程中仍存在以下缺陷和不足。

(1) 需要通过合并单元进行级联来实现保护测控装置接口的简化, 增加了采样值传输阶段的延迟和复杂度。

(2) 当多台设备需要采样值数据时, 需在合并单元内增加专用的点对点采样值输出插件, 并且点对点传输技术对于合并单元与输出接口的性能要求较高。

(3) 保护装置接口数量过多, 同时需将每个接口与合并单元进行一一连接对应, 增加了维修的工作量与难度。

(4) 保护装置需补偿采样值延时, 保护处理的计算方法较复杂、繁琐, 不易掌握。

1.2 采样值组网传输技术分析

相对于点对点传输技术, 采样值组网传输技术更具优势, 在智能变电站中的应用更为普遍。采样值组网传输技术 (如图2所示) 主要通过交换机连接保护测控装置、合并单元, 使三者构成一个相互关联的整体。由交换机将合并单元的输出进行多波交换后, 采样值数据被转发至各保护测控装置内。由于交换机数据的交换转发存在不确定性延迟, 以及合并单元存在着发送时抖动引起的延迟, 使测控保护装置在接收采样值数据时受到很大影响, 因此采样值组网传输系统必须配备相应的外部全局同步系统, 以保证合并单元、测控保护装置严格、精确的同步传输, 并使采样值组网传输系统在同一时刻发出的采样值报文能与采样值包序号保持一致。保护测控装置通过接收相同序号采样值包, 利用同步系统触发并延时等待同步脉冲, 来实现各采样值输入数据的同步输入。目前, B码、光纤脉冲脉、IEEE 1588等是主要的外同步系统的同步方式, 但存在二次系统在同步系统发生故障时会自动退出运行的问题。

2 分布式同步采样值组网技术探析

如图3所示, 分布式同步采样值组网传输系统主要由保护测控装置 (具有分布式同步功能) 、工业以太网交换机 (支持IEEE 1588功能) 、合并单元 (具有分布式同步功能) 所构建的网络组成, 主要依赖于多个独立IEEE 1588从钟 (单个保护测控装置内) 进行操作运行。该系统合并单元设为局部主钟, 保护测控装置设为从钟, 同时在每个测控保护装置内实现多个独立从钟, 分别与合并单元的局部主钟进行局部同步传输, 通过优化IEEE 1588跟踪机制与时钟选择, 利用插值法实现数据同步采集。

每个合并单元 (具有分布式同步功能) 在分布式同步采样网络系统内都有一个IEEE 1588主钟。这个主钟的运行可从一个任意随机的起始时间点开始, 其同步控制不受外部时间的条件限制, 仅需简单地依靠装置晶振频率就能实现自主计时功能;在每个秒周期内, 采样值包的发送和数据的采集都是按照采样率等间隔进行的。同时, 所有采样值包内的采样序号值设为主钟秒周期内的包索引号, 因此主钟每个秒周期内一个精确时刻都可由采样值包的采样序号表示, 而该时刻的采样值为采样包内的数据。

根据合并单元输入的数量, 每个保护测控装置可配置并实现若干个IEEE 1588从钟, 同时每个合并单元都被相应的从钟所对应, 合并单元内的每个从钟仅跟踪单元内唯一主钟, 无需按照标准IEEE 1588完整的执行最佳时钟逻辑 (BMC) 来选择主钟。

系统采用支持IEEE 1588的以太网交换机, 传输路径的延迟可被从钟精确补偿。稳定跟踪后, 从钟与主钟时间误差在100ns以内, 为便于分析探讨, 可将该误差忽略不计, 从钟时间可视作与主钟时间完全同步。

将一个全局独立的同步脉冲 (同步采样脉冲) 设于保护测控装置内, 每个同步脉冲到来时, 可得到该脉冲时刻每个从钟的精确时间值。由于合并单元的主钟时间与从钟时间实现同步, 且合并单元主钟的秒内时刻由采样值包的采样序号表示, 因此采样值序号与从钟时间存在着互相对应的关系, 保护测控装置内的同步脉冲时刻对应的采样序号可设为:

式中, Ts1v为同步脉冲时刻从钟的秒内时间 (s) , 0≤Tslv≤1;N为采样速率, 每秒内采样序号从0到N (-1) 变化。合并单元同步脉冲时刻对应的采样序号n为非整数时, 表示n取整采样序号时刻到下个采样序号中间的某时刻, 可通过这两个时刻的采样值插值得到对应于n的采样值。

由于系统传输的延迟, 可能导致采样序号对应的数据包在同步脉冲时刻未被传输至测控装置。为实现数据内插, 以及丢包时也能正确的插值, 必须回溯一个固定的时间TB, 同时根据采样值插值方式、丢包的允许次数及传输最大延迟来确定TB的时间长度。TB设置可由配置工具完成, 可按照当前IEC 61850-9-2传输规约中80点/周波的标准进行, 最大延迟通常考虑为1ms延迟时间 (4个包间隔) , 允许丢包次数为1次, 根据线性插值方式, 设置的TB约为5个包间隔。由此可得插值采样值的实际序号为:

采样值的插值可采用样条、拉格朗日、线性插值的方式, 具体由插值精度决定。如图4所示, 线性插值为:

式中, int (n) 为取整后的插值采样值序号;为对应于int (n) 采样序号的采样值原始值。

每个保护测控装置内的从钟对应的合并单元采样数据的处理都可通过上述方式进行, 即可得出不同合并单元同步脉冲时刻之间同步后的采样值。

由以上分析可知, 分布式同步采样值组网技术不需要全局同步, 只需合并单元与单个从钟之间进行同步。当单个合并单元故障时, 只有使用这个合并单元的设备才会受到影响, 而不会对整个系统功能造成影响。

3 结束语

智能变电站分布式同步采样值组网技术解决了采样值同步传输环节对外部全局同步系统的依赖问题, 使得采样值同步传输的稳定性、安全性和可靠性得到大幅提升。在智能变电站的建设过程中应加大对分布式同步采样值组网技术的研发力度并积极推广, 以促进智能电网事业的发展。

摘要:针对现阶段采样传输技术存在的不足和缺陷进行分析, 并探讨了智能变电站分布式同步采样组网技术方案的设计与实现方法。

关键词:智能变电站,分布式,同步采样,组网

参考文献

[1]赵家庆, 徐春雷, 高宗和, 等.基于分布式同步方法的智能变电站采样值组网技术[J].电力系统自动化, 2013, 37 (24) :60-65

[2]李澄, 袁宇波, 陆玉军, 等.智能变电站分布式同步采样组网技术[J].电网技术, 2014, 38 (1) :47-52

[3]赵家庆, 钱科军, 俞瑜, 等.智能变电站采样值组网分布式同步技术及应用[J].电力自动化设备, 2014, 34 (9) :154-158

[4]王勤.智能变电站分布式同步采样值组网技术方案[J].中国新技术新产品, 2015 (7) :1

分布式时间同步 篇7

关键词:数据同步通信,分布式,实时数据库

1 前言

随着信息技术的发展以及国家对企业安全生产信息化要求的提高, 我国大多数企业生产过程中基本都采用了各种各样的监测监控系统, 由于管理和技术的原因, 这些系统分散在各个相关职能部门, 形成了多个“信息孤岛”, 严重影响了企业安全生产管理水平的提高, 阻碍企业信息化进程。

分布式实时数据库系统DRTDBS (Distributed Realtime Database System) 的出现为各种监测监控系统提供了统一的数据平台, 以便数据的查看和使用不受监测监控系统专有技术、网络、协议的制约, 达到实时数据真正共享的目的。并确保所传输数据的实时性、准确性、有效性, 为企业上层应用提供可靠的支持。

DRTDBS按照各监控设备区域分布情况, 将整个企业的实时数据进行区域划分, 由若干实时数据库服务器 (以下简称数据服务器) 加以管理。DRTDBS的网络分布结构如图1所示。

在每个数据服务器管辖区域内, 数据采集工作站将现场设备的物理信息和实时数据上传到数据服务器, 由数据服务器统一管理。区域内的监控站点如监控开发工作站, 监控应用运行服务器、现场监控工作站点等与数据服务器通信, 从中读取所需实时数据。若监控站点想跨区域访问实时数据, 例如, 区域1的监控开发工作站想访问区域2的实时数据, 则通过两区域内数据服务器的数据同步

通信来完成实时数据的访问操作。

由于在DRTDBS中数据不仅具备分布性, 同时还具备实时性, 因此, 如何在有效的时限范围内, 使各分布站点能进行准确无误的数据通信是实现DRTDBS的关键技术之一。但由于DRTDBS数据的双重特性, 迄今为止在这方面的研究还比较薄弱, 所以数据同步通信成为了DRTDBS的一大研究难点。在此背景下, 本文对已有的分布式数据库数据同步技术进行研究, 提出了适用于DRTDBS的数据同步方案, 并给出了较详细的设计步骤。

2 影响数据同步性能的因素

由于DRTDBS中数据具有实时性, 因此衡量数据同步性能的一个重要指标就是系统中所有参与数据同步的服务器完成一次数据同步所需最大时间tmax。又由于DRTDBS处于企业局域网中, 因此本节着重讨论在局域网内影响tmax的因素, 并定性分析这些因素对tmax的影响程度, 以此作为选用数据同步策略的参考。

图2, 给出了参与数据同步的服务器 (以下简称数据服务器或服务器) 的网络链路图。在图中S1、S2、S3……Sn为数据同步服务器。为简化分析, 在此我们仅考虑极端状态即每个服务器都与其它所有服务器进行数据同步的情况。Si代表服务器Sj到服务器Wij的链路带宽。Kij代表每个服务器的数据同步率 (服务器i每次向服务器j提供的同步数据量, 单位bit) 。根据图2可以得出各服务器链路带宽矩阵 (图3) 和各服务器的数据同步率矩阵 (图4) 。

根据服务器Si到Sj的一次数据同步时间, 可得整个局域网内数据同步时间矩阵:

根据图5得整个局域网中所有数据同步服务器一次数据同步后, 所需最大时间为:

即tmax为tij中最大值。可根据tij, 做适当的假设, 分析影响tmax的各大因素, 并定性分析各大因素对tmax的影响程度。假设如下:

(1) 网络稳定, 且每条链路所占带宽相等为2B/n (n-1) , 其中为网络总带宽, n (n-1) /2为网络总链路数。

(2) 在理想情况下, 不考虑网络传输延迟问题, 不考虑主机处理同步数据耗时。则Si到Sj的一次数据同步时间为:

一次数据同步中, Si向其它所有服务器提供同步数据总量为, 那么所有服务器提供同步数据总量为:

由公式 (2) 可得出以下结论:

(1) 当n恒定且KB引起网络拥塞, 严重影响数据同步性能, 如图6所示。

(2) 当K

从tmax角度分析, 影响数据同步性能主要有3大因素, 数据同步率Kij, 数据同步服务器数目n和网络带宽B。选定局域网后, 在理想状态, 即网络带宽B不变的情况下, 提高数据同步性能集中在数据同步率Kij和数据同步服务器数目n两大因素上。由结论 (1) 可以总结出, 在设计数据同步方案时, 要尽量减少数据同步率, 但前提是不

会造成主机处理时间延长, 以至成为影响数据同步性能的主要因素之一。由结论 (2) 可以总结出, 在设计同步方案时, 应根据公式 (2) 估计在一次数据同步过程中能允许的数据同步服务器数目, 然后根据实际情况对服务器数进行适当控制调整。

3 数据的同步策略

(1) 为方便起见, 定义如下概念:

(1) 主服务器:是指那些提供同步数据的服务器, 如图8所示。

(2) 从服务器:指引进同步数据的服务器, 如图4-11中的服务器A, B, C和D。

(2) 主服务器和从服务器之间具有如下关系:

(1) 主服务器和从服务器都是数据同步服务器;

(2) 一个主服务器可以拥有多个从服务器, 因为它可以向多个从服务器提供同步数据;

(3) 一个从服务器可以有多个主服务器, 因为它可能拥有来自不同服务器的数据备份;

(4) 一个主服务器即可以是某些数据的主服务器, 也可以是另一些数据的从服务器, 即它可以向其它数据同步服务器提供同步数据, 也引进其它数据同步服务器提供的同步数据。

(3) 完全同步法 (Completion Synchronization, C_Syn)

完全同步法是指每次进行同步操作的时候, 主服务器都将生成完整的同步数据集合MD={MR1, MR2……, MR3, }, 并用M D完全刷新从服务器上的同步数据集合SD={SR1, j, SR2, j, ……, SR3, j}, 使主服务器与从服务器的数据同步起来。其优点是实现简单;缺点是数据同步率Kij增大时, 同步时间正比增加, 当存在大量同步数据时, 采用完全同步法效率低下, 对数据同步性能影响较大。若数据同步服务器数量n也增加时, 完全同步法将严重影响数据同步性能。

因此, 该方法仅适用于主从服务器之间需同步的数据量较少的情况。

(4) 差异同步法 (Difference Synchronization, DS)

为了克服完全同步法每次同步操作都完全刷新同步数据集的缺陷, 差异同步法并不将整个同步数据集应用于从服务器, 而是不停地监视自上一次同步操作以后主服务器同步数据集的变化, 在下一次同步操作的时候, 将这些变化应用到从服务器。

与完全同步法相比, 差异同步法最大的好处在于只需要同步变化了的数据即可, 从而大大减少了数据同步率Kij, 提高了数据同步的效率。

为实现差异同步法, 本文为每个需要同步的实时数据添加了跟踪因子, 每个负责监视一个同步数据的的更新情况。=实时数据索引号nm+更新标志。每经历一次实时数据更新, 每个实时数据值都要和上一次更新时的值进行比较, 若有更改则跟踪因子的更新标志置1, 若无更改, 则置0。之后把凡是置1的实时数据发送给相应的从服务器。

4 数据同步实现

每个服务器既可是主服务器又可是从服务器, 因此, 每个服务器数据同步模块功能相同, 由两大模块组成:通信处理模块、通信接收模块。

(1) 通信处理模块

主要负责命令、配置数据、实时数据的传输与相关处理。

(2) 通信接收模块

主要负责对命令、配置数据、实时数据的接收工作。该模块采用DCOM Server形式, 可被远程调用。

4.1 协议说明

要完成整个数据的访问通信需要以下几条最基本的命令:

(1) 请求命令:有关远程实时数据访问的请求命令。

(2) 回复命令:对远程实时数据访问的有关回复命令。

(3) 数据传输命令:实时数据、配置数据及配置数据修改信息的发送。

(4) 数据传输应答命令:数据接收方的应答命令, 表明是否接收到数据。

协议制定时应考虑到协议要包含必要信息, 简洁、清晰、易于处理。协议定义如下:

Cmd ID;Local ID, Cmd, Time;

Cmd ID:命令的标识, “Request”表示请求命令;“Response”表示回复命令;“Req Data”表示数据发送;“Res Data”表示数据接收应答。

Local ID:命令发送方标识。

Cmd:具体命令内容, 可以带参数, 详细Cmd命令如下:

Time:命令发送的系统时间。

4.2 通信连接建立

用户只需选择主服务器和具体请求命令, 按发送键即可, 剩下的工作都由通信处理模块和通信接收模块完成。在数据同步之前, 因各服务器处于非连接状态, 这就需要建立通信连接。通信建立过程如图9所示。

这里服务器A为主服务器, 服务器B为从服务器。因各从服务器与主服务器通信连接建立过程相同, 故仅讨论一个从服务器与主服务器通信连接建立过程。

1.首先从服务器B向主服务器A发出“请求查看配置表”RT命令;

完整的命令为:Request;2, RT, 2008-1-23 14:3:0 (其中2为服务器B标识) 。其命令解读为在2008-1-23 14:3:0, 服务器B向A发送了“请求查看配置表”命令。

2.服务器A通信接收模块接收到请求命令后, 由通信处理模块识别发送方, 并对其命令作出回应:

(1) 若服务器A允许服务器B查看配置表 (YRT命令) , 则服务器A与服务器B间通信连接建立成功。完整命令为:

Response;1, YRT, 2008-1-231 4:4:10 (其中1为服务器A标识) 。解读为在2008-1-2 314:4:10, A向B作出回应, 允许B查看配置表。

(2) 若服务器A不允许服务器B查看配置表 (NRT命令) , 则通信连接建立失败。完整命令为:Response;1, NRT, 2008-1-2314:4:10。

4.3 配置数据的选取

当通信连接建立后, 从服务器即可访问主服务器A的配置数据库。因各从服务器的访问过程相同, 故也仅讨论从服务器B对主服务器A配置数据库选取过程。服务器B从主服务器A的配置数据库中选择感兴趣的数据, 在内存中建立临时配置信息库, 暂存相关同步配置信息, 并在本服务器配置数据库中做好备份, 然后把指定的配置信息自动发送给服务器A。A收到后, 也在内存中建立临时配置信息库, 暂存B选定的配置数据, 并在自己的配置数据库中做好指定配置数据备份工作。最后A向B发送“YSTD”选定配置信息已收到命令。实现过程如图10所示。

具体命令为:

ReqData;2;SSTD, 1, a, 2, b 3, c…….;20 0 8-1-2314:5:12 (其中1, a, 2, b 3, c……为选定的配置信息) 。在2008-1-2314:5:1 2, B向A发送选定配置信息1, a, 2, b, 3, c……。

Res Data;1;YSTD;2006-5-20 15:31:24, 解读为在2008-1-23 14:5:20, A向B发送配置信息已收到命令。

4.4 多服务器实时数据同步更新

在此, 所谓多服务器实时数据同步更新是指以服务器数据更新周期为期限, 当主服务器数据更新后, 在不超过主服务器数据更新周期的时间内, 对从服务器上的引进实时数据进行更新。

首先, 服务器间要进行时钟同步操作, 统一各服务器时钟, 然后按照图11进行多服务器实时数据同步更新操作。

(1) 主服务器A实时数据库通知通信处理模块实时数据已更新 (1) 。

(2) 根据同步数据量多少分两种情况讨论:

(1) 若同步数据量较少时, 采用完全同步法。通信处理模块读取临时配置信息库中的配置数据 (2) ;接着根据配置数据, 读取相应实时数据 (3) ;然后发送各从服务器指定的实时数据 (4) ;

(2) 若同步数据量较大时, 采用差异同步法。通信处理模块读取临时配置信息库中的配置数据 (2) , 根据配置数据, 仅读取数值有更新的实时数据并发送给相应的从服务器。

(3) 各从服务器定时判断是否收到实时数据, 分别向主服务器A发送“YRTD/NRTD收到/未收到实时数据”命令, 由服务器A通信接收模块接收命令 (5) 。

(4) 通信处理模块定时从通信接收模块读取命令, 若有从服务器未收到实时数据, 并且服务器A实时数据库未进行下一次更新, 则重新发送指定的实时数据到相应从服务器。

以上整个过程应在主服务器下一个数据更新周期前完成。若某从服务器数据更新超时, 则舍弃接收到的实时数据。

5 结论与展望

本文从分析影响DRTDBS数据同步通信的因素入手, 根据DRTDBS的实际情况采取了两种数据同步策略, 并给出了差异同步法的实现方法。最后提出了设计实现DRTDBS数据同步的详细方案。实践证明该方案已取得了初步的成效。

今后应在DRTDBS的时钟同步、实时事务的并发控制等方面进行深入研究, 逐步完善DRTDBS数据同步功能。

参考文献

[1]闫晓多.非连接分布式数据库环境下的数据同步策略[D].青岛海洋大学硕士学位论文, 青岛海洋大学图书馆, 2002.

[2]王岳斌, 潘久辉.分布式环境下数据同步技术的设计与实现[J].南京大学学报 (自然科学) , 2001年10月, 37卷:276-279

[3]丁鲲, 严浩, 刁兴春.分布式数据库数据同步技术研究[J].海军工程大学学报, 2004年9月, 1卷5期:100-104

[4]谢坤武.基于组件技术的数据同步分析[J].武汉科技学院学报, 2004年6月, 3期:46-48

上一篇:形象思维与高中物理下一篇:美术史与美术馆