一种基于PTP协议的分布式控制系统及控制方法技术方案

技术编号:39322905 阅读:19 留言:0更新日期:2023-11-12 16:02
本发明专利技术涉及分布式控制系统,具体涉及一种基于PTP协议的分布式控制系统及控制方法,解决了现有基于PTP协议的分布式控制系统的时间精度受系统规模和节点类型限制的技术问题。本发明专利技术提供的分布式控制系统包括核心交换机、PTP服务器和末端执行机构,末端执行机构包括PTP模块和T个I/O模块。本发明专利技术还提供一种分布式控制方法,PTP模块产生并通过背板向I/O模块实时传输TOD、PPS及参考时钟信号,I/O模块内置FPGA,根据收到的信号进行实时硬件解码,获取当前系统时间,并与预定的指令输出起始、结束时刻比较,满足指令输出条件时,I/O模块的端子实时输出对应指令,实现时间获取和指令的同步输出。输出。输出。

【技术实现步骤摘要】
一种基于PTP协议的分布式控制系统及控制方法


[0001]本专利技术涉及分布式控制系统,具体涉及一种基于PTP协议的分布式控制系统及控制方法。

技术介绍

[0002]对于涉及水力、风电、石油化工、市政、国防等涉及国计民生领域的大型分布式控制系统,各控制节点往往分布非常广泛,而且要求各控制节点的前端控制设备均能够按照统一、精确的控制指令执行动作,对系统各个控制节点间指令输入、输出时间的同步精度具有较高要求。
[0003]目前,基于分布式控制系统的时钟同步技术包括:
[0004](1)GPS时钟同步,各分布式控制节点分别利用GPS接收机接收GPS同步卫星的秒脉冲以及串口时间信息,实现分布式时钟与GPS卫星挂载的原子钟时间同步,整个系统结构较为复杂,且容易受天气等条件干扰;
[0005](2)IRIG

B码通信,通过串口发送的时间信息,包括年、月、日、时、分和秒,接收端收到报文后对时间进行解码,实现时间同步,同步精度可以达到10微秒量级,但其传输距离受限且系统实现难度较高;
[0006](3)NTP网络时间同步,采用CS同步模式(即客户端/服务器模式)通过计算各客户端与服务器间网络的传输链路延时以及时间偏差,对本地时钟进行调节,从而实现各客户端与服务器的时间同步,其同步精度只能达到ms量级;
[0007](4)PTP网络时间同步,PTP(IEEE 1588)协议是一种基于网络的精密时钟授时协议,采用软件与硬件相结合的方式进行时钟同步,各分布式节点与主时钟间通过交换网络数据报文,实现各节点间的时间同步、频率同步,同步精度能够达到亚微秒量级。现有采用PTP协议的分布式控制系统,通常采用网络同步方式实现系统内各节点时钟的同步,通过软件控制逻辑实现控制任务。但是软件控制不能直接实现控制指令的输出,其时间精度会受到系统规模和控制节点类型等的限制。

技术实现思路

[0008]本专利技术的目的是解决现有基于PTP网络时间同步的分布式控制系统,通常采用网络同步方式实现系统内各节点时钟的同步,通过软件控制逻辑实现控制任务,存在软件控制不能直接实现控制指令的输出,其时间精度会受到系统规模和控制节点类型限制的技术问题,而提供一种基于PTP协议的分布式控制系统及控制方法。
[0009]为实现上述目的,本专利技术采用的技术方案为:
[0010]一种基于PTP协议的分布式控制系统,其特殊之处在于:包括核心交换机,以及通过核心交换机连接的PTP服务器和末端执行机构;
[0011]所述核心交换机用于PTP服务器和末端执行机构的互联;所述PTP服务器用于向末端执行机构授时;
[0012]所述末端执行机构的数量为K个,每个末端执行机构包括电源模块,以及分别与电源模块连接的PTP模块和T个I/O模块,其中,K、T均为正整数;
[0013]所述PTP模块与核心交换机通过网络接口连接,与T个I/O模块分别通过背板接口连接,PTP模块用于产生TOD信号、参考时钟信号以及PPS信号,并将其输出至T个I/O模块;
[0014]所述I/O模块内预设有指令时刻表,I/O模块用于获取系统时间,并实现指令同步输出;
[0015]所述指令时刻表包含N条指令,以及每条指令对应的指令输出起始时刻寄存器和指令输出结束时刻寄存器,其中,N为正整数。
[0016]进一步地,所述电源模块与PTP模块、T个I/O模块之间,以及PTP模块与T个I/O模块之间采用紧耦合结构通过背板接口连接。
[0017]进一步地,所述PTP模块设置有至少一个网络接口;
[0018]所述I/O模块的TOD解码模块内设置的FPGA。
[0019]一种基于PTP协议的分布式控制方法,基于上述的一种基于PTP协议的分布式控制系统,其特殊之处在于,包括以下步骤:
[0020]步骤1、PTP服务器通过核心交换机向K个PTP模块授时,每个PTP模块产生TOD信号、参考时钟信号以及PPS信号,并分别传输至其对应的T个I/O模块;
[0021]步骤2、每个I/O模块接收到PTP模块传输的TOD信号及参考时钟信号,通过I/O模块内的TOD解码模块,根据参考时钟信号对TOD信号进行解码,获得系统时间的年、月、日、时、分和秒信息,并将其分别存储至I/O模块内的年寄存器、月寄存器、日寄存器、时寄存器、分寄存器和秒寄存器内;
[0022]步骤3、I/O模块接收PTP模块传输的PPS信号及参考时钟信号,根据PPS信号到来的时刻对参考时钟信号进行同步计数,获得系统时间的秒以下信息,将其存储至I/O模块内的秒以下时间寄存器内;
[0023]步骤4、将步骤2获得的年寄存器、月寄存器、日寄存器、时寄存器、分寄存器和秒寄存器内的信息,以及步骤3获得的秒以下时间寄存器内的信息进行合并,获得当前系统时间Sys_Time,并将其存入I/O模块内的系统时间寄存器;
[0024]步骤5、将系统时间寄存器内的系统时间Sys_Time与预设的指令时刻表中各条指令的指令输出起始时刻寄存器内的指令起始时刻On_Time
i
、指令输出结束时刻寄存器内的指令结束时刻Off_Time
i
进行比较,当Sys_Time≥On_Time
i
,且Sys_Time≤Off_Time
i
时,I/O模块输出对应指令,然后执行步骤6;否则不输出指令,直接执行步骤6;
[0025]步骤6、重复步骤1

步骤5,实时获取系统时间,并在获取系统时间的同时实现指令同步输出,直至完成分布式控制系统的控制。
[0026]进一步地,所述步骤2具体为:
[0027]2.1、I/O模块接收PTP模块传输的TOD信号及参考时钟信号;
[0028]2.2、通过I/O模块的TOD解码模块内设置的FPGA根据参考时钟信号对TOD信号进行串行协议解码,将TOD信号的高低电平信号转换为TOD字节信号,输出使能信号RX_VLD、TOD字节信号RX_TOD和错误信号RX_ERR,当RX_VLD为1且RX_ERR为0时,将RX_TOD字节数据传送至TOD解码模块;若RX_ERR为1,则报警,提示系统错误;若RX_VLD为0,不做处理,返回步骤1;
[0029]2.3、TOD解码模块逐字节接收TOD字节信号RX_TOD,以数据为ASIIC码的“,”的字节
为分割点,将TOD字节信号RX_TOD分割为多个数据帧;
[0030]2.4、根据数据帧的首个字段判断数据帧是否为RMC数据帧或ZDA数据帧;
[0031]2.5、若数据帧为RMC数据帧,则选取数据帧的第二个字段作为时间信息,将第二个字段中对应字节的数据分别存储至时寄存器、分寄存器和秒寄存器;取第十个字段作为日期信息,将第十个字段中对应字节的数据分别存储至I/O模块内的年寄存器、月寄存器和日寄存器;
[0032]若数据帧为ZDA数据帧,则选取第二个字段作为时间信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于PTP协议的分布式控制系统,其特征在于:包括核心交换机(2),以及通过核心交换机(2)连接的PTP服务器(1)和末端执行机构(3);所述核心交换机(2)用于PTP服务器(1)和末端执行机构(3)的互联;所述PTP服务器(1)用于向末端执行机构(3)授时;所述末端执行机构(3)的数量为K个,每个末端执行机构(3)包括电源模块(4),以及分别与电源模块(4)连接的PTP模块(5)和T个I/O模块(6),其中,K、T均为正整数;所述PTP模块(5)与核心交换机(2)通过网络接口连接,与T个I/O模块(6)分别通过背板接口连接,PTP模块(5)用于产生TOD信号、参考时钟信号以及PPS信号,并将其输出至T个I/O模块(6);所述I/O模块(6)内预设有指令时刻表,I/O模块(6)用于获取系统时间,并实现指令同步输出;所述指令时刻表包含N条指令,以及每条指令对应的指令输出起始时刻寄存器和指令输出结束时刻寄存器,其中,N为正整数。2.根据权利要求1所述的一种基于PTP协议的分布式控制系统,其特征在于:所述电源模块(4)与PTP模块(5)、T个I/O模块(6)之间,以及PTP模块(5)与T个I/O模块(6)之间采用紧耦合结构通过背板接口连接。3.根据权利要求2所述的一种基于PTP协议的分布式控制系统,其特征在于:所述PTP模块(5)设置有至少一个网络接口;所述I/O模块(6)的TOD解码模块由FPGA硬件实现。4.一种基于PTP协议的分布式控制方法,基于权利要求1

3任一所述的一种基于PTP协议的分布式控制系统,其特征在于,包括以下步骤:步骤1、PTP服务器(1)通过核心交换机(2)向K个PTP模块(5)授时,每个PTP模块(5)产生TOD信号、参考时钟信号以及PPS信号,并分别传输至其对应的T个I/O模块(6);步骤2、每个I/O模块(6)接收到PTP模块(5)传输的TOD信号及参考时钟信号,通过I/O模块(6)内的TOD解码模块,根据参考时钟信号对TOD信号进行解码,获得系统时间的年、月、日、时、分和秒信息,并将其分别存储至I/O模块(6)内的年寄存器、月寄存器、日寄存器、时寄存器、分寄存器和秒寄存器内;步骤3、I/O模块(6)接收PTP模块(5)传输的PPS信号及参考时钟信号,根据PPS信号到来的时刻对参考时钟信号进行同步计数,获得系统时间的秒以下信息,将其存储至I/O模块(6)内的秒以下时间寄存器内;步骤4、将步骤2获得的年寄存器、月寄存器、日寄存器、时寄存器、分寄存器和秒寄存器内的信息,以及步骤3获得的秒以下时间寄存器内的信息进行合并,获得当前系统时间Sys_Time,并将其存入I/O模块(6)内的系统时间寄存器;步骤5、将系统时间寄存器内的系统时间Sys_Time与预设的指令时刻表中各条指令的指令输出起始时刻寄存器内的指令起始时刻On_Time
i
、指令输出结束时刻寄存器内的指令结束时刻Off_Time
i
进行比较,当Sys_Time≥On_Time
i
,且Sys_Time≤Off_Time
i
时,I/O模块(6)输出对应指令,然后执行步骤6;否则不输出指令,直接执行步骤6;步骤6、重复步骤1

步骤5,实时获取系统时间,并实现指令同步输出,直至完成分布式控制系统的控制。
5.根据权利要求4所述的一种基于PTP协议的分布式控制方法,其特征在于,所述步骤2具体为:2.1、I/O模块(6)接收PTP模块(5)传输的TOD信号及参考时钟信号;2.2...

【专利技术属性】
技术研发人员:白琼严明王煜李二鹏赵三军喻勇张杰魏媛
申请(专利权)人:西北核技术研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1