CN105450323B - 一种soe时间同步控制方法及系统 - Google Patents

一种soe时间同步控制方法及系统 Download PDF

Info

Publication number
CN105450323B
CN105450323B CN201510770405.8A CN201510770405A CN105450323B CN 105450323 B CN105450323 B CN 105450323B CN 201510770405 A CN201510770405 A CN 201510770405A CN 105450323 B CN105450323 B CN 105450323B
Authority
CN
China
Prior art keywords
time
controller
master controller
soe
fpga
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510770405.8A
Other languages
English (en)
Other versions
CN105450323A (zh
Inventor
周新辉
贺剑锋
杜军钊
李蒙
黄振林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hollysys Automation Co Ltd
Original Assignee
Hangzhou Hollysys Automation Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hollysys Automation Co Ltd filed Critical Hangzhou Hollysys Automation Co Ltd
Priority to CN201510770405.8A priority Critical patent/CN105450323B/zh
Publication of CN105450323A publication Critical patent/CN105450323A/zh
Application granted granted Critical
Publication of CN105450323B publication Critical patent/CN105450323B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation

Abstract

本发明公开了一种SOE时间同步控制方法,应用于SOE时间同步控制系统中,每个控制器分别对应一个控制站,预先选择一个控制站的控制器作为对时的主控制器,剩余的控制站的控制器为从控制器,主控制器和从控制器之间通过硬接线连接,该方法包括预先设置好时间初值的主控制器与从控制器通过硬接线进行时间同步;主控制器和从控制器向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步。主控制器与从控制器之间通过硬接线来实现时间同步,提高了控制站间的控制器的时间同步精度,也即实现了控制站间以及控制站内的SOE模块的时间同步,且成本低,很好实现了成本与精度之间的平衡。本发明还公开了一种SOE时间同步控制系统。

Description

一种SOE时间同步控制方法及系统
技术领域
本发明涉及时间同步技术领域,特别是涉及一种SOE时间同步控制方法及系统。
背景技术
在火力发电厂DCS(Distributed Control System,分布式控制系统或集散控制系统)系统、变电站自动化系统、水电站自动化系统等自动化控制系统中,经常涉及到对大量设备状态的监测,这些设备的状态可能是开关接点、断路器接点、重合闸信号等开闭状态。对于这些接点信号的监测有的时候根据其重要性不仅仅需要监测其状态变化,同时也要监测并记录其状态变化发生的时刻。在同一个系统中,有些设备的状态变位是有关联性的,因此需要用SOE(Sequence Of Event,事件顺序记录系统)模块将这类状态变位的发生时刻记录下来。SOE系统是DCS系统中用于异常记录的子系统,它所记录的是工厂事故发生前后装置或设备的运行状态、事件发生时间、首发事件和连锁发生事件的间隔顺序,这些间隔顺序是工厂分析运行异常、设备故障和生产事故的最重要依据。
在DCS系统中,对SOE的事件记录分辨率一般要求达到毫秒级,国际上先进系统SOE的分辨率都可以到1ms甚至更高,因此,SOE模块的时间同步就显的尤为重要,往往成为衡量系统是否先进的关键指标之一。但是在大型的DCS系统中,大量的SOE模块是散布在不同的过程控制站中的,如何保证不同过程控制站内SOE模件的时间同步是很难实现的,获得准确事件顺序的关键在于协调定时达到非常高的精确度。
传统意义上的SOE模块时钟同步大部分采用以下几种方式:
方式一:DCS系统内有多个控制站,每个控制站内均有若干个SOE模块,统一的时间服务器通过工业以太网对所有控制站进行初次时间同步,各控制站之间通过以太网NTP(Network Time Protocol,网络时间协议)协议进行周期为60s的时间同步,控制站通过通讯总线对站内的SOE模块进行广播式时间同步,同步周期也是60s,SOE模块接收到时间同步报文时将本地时钟清零,当采集到通道信号有状态跳变时记录时钟值。由于NTP对时精度只能达到10ms级,因此不同控制站间的SOE精度难以达到1ms。
方式二:控制器之间使用IEEE1588协议(PTP)实现10us精度的时间同步,其他时间同步机制与方式一类似,这种方式可以实现控制站内、控制站间1ms级的SOE精度,但是需要使用专门的支持IEEE1588协议的网络设备,控制器内部也要有支持IEEE1588协议的软硬件处理,极大地增大了系统的成本。
因此,如何提供一种精度高但成本低的SOE时间同步控制方法是本领域技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种SOE时间同步控制方法,主控制器与从控制器之间通过硬接线来实现时间同步,时间同步误差可以控制在几十微秒内,达到了1ms的精度,提高了控制站间的控制器的时间同步精度,也即实现了控制站间以及控制站内的SOE模块的时间同步,且成本低,很好实现了成本与精度之间的平衡;本发明的另一目的是提供一种包括SOE时间同步控制系统。
为解决上述技术问题,本发明提供了一种SOE时间同步控制方法,应用于SOE时间同步控制系统中,每个控制器分别对应一个控制站,预先选择一个控制站的控制器作为对时的主控制器,剩余的控制站的控制器为从控制器,所述主控制器和所述从控制器之间通过硬接线连接,该方法包括:
预先设置好时间初值的所述主控制器与所述从控制器通过所述硬接线进行时间同步;
所述主控制器和所述从控制器向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步。
优选地,所述主控制器的预先设置时间初值的过程为:
时间接收设备从GPS上获取标准时间;
时间服务器与所述时间接收设备的所述标准时间进行时间同步;
所述主控制器与所述时间服务器进行时间同步,以实现对所述主控制器的时间初值设置。
优选地,所述主控制器与所述时间服务器进行时间同步的过程具体为:
所述主控制器的操作系统OS时钟向所述时间服务器进行时间同步;
所述主控制器的主FPGA时钟向所述主控制器的OS时钟进行时间同步,以实现对所述主FPGA时钟的初始时间的设置。
优选地,所述主控制器的主FPGA时钟向所述主控制器的OS时钟进行时间同步,以实现对所述主FPGA时钟的初始时间的设置的过程具体为:
当所述主控制器中的实时系统RTS以第一周期查询到所述主控制器的操作系统OS时钟的时钟变量达到整分时,判断所述主控制器的CPU是否有时间向所述主FPGA时钟发送第一时间同步校时命令;
当所述主控制器的CPU立即向所述主FPGA时钟发送所述第一时间同步校时命令时,所述主控制器的CPU将所述主FPGA时钟的时间初值设为0;
当所述主控制器的CPU在△t1后才向所述主FPGA时钟发送所述第一时间同步校时命令时,所述主控制器的CPU将所述主FPGA时钟的时间初值设为△t1;其中,所述主FPGA时钟为周期为60s的主1分钟定时器。优选地,所述第一周期为50ms。
优选地,所述预先设置好时间初值的所述主控制器与所述从控制器通过所述硬接线进行时间同步的过程具体为:
当所述主1分钟定时器满足60s溢出时,所述控制器中的PFGA的主逻辑单元通过所述硬接线向所述从控制器中的FPGA的从逻辑单元发送广播报文;
所述从逻辑单元依据所述广播报文将所述从控制器中的PFGA的从1分钟定时器的初值设置为0。
优选地,所述主控制器和所述从控制器向各自对应的SOE模块进行时间同步的过程具体为:
当所述控制器中的1分钟定时器满足60s溢出时,所述控制器中的FPGA的逻辑单元向所述控制器中的DP通讯主站发送第二时间同步校时命令,其中,所述控制器为所述主控制器或者所述从控制器;
当所述DP通讯主站在接收到所述第二时间同步校时命令就立即向与所述控制器相对应地SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,所述时间戳对应的值为0;
当所述DP通讯主站虽然接收到所述第二时间同步校时命令但在△t2时间后才开始向所述SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,所述时间戳对应的值为△t2;
所述DP通讯从站接收到所述时间戳时,所述MCU依据所述时间戳以及接收误差值对所述SOE模块中的FPGA中的时间定时器的时间进行时间同步。
优选地,所述接收误差值包括接收过程误差值,其中,所述接收过程误差值的获取过程为:
所述MCU在所述DP通讯从站开始接收所述时间戳时立即向所述SOE模块中的FPGA发送开启指令,启动所述FPGA中的误差定时器;
所述SOE模块对所述时间戳进行解析,得到时间戳Ta,同时向所述SOE模块中的FPGA发送停止指令,停止所述误差定时器,此时所述误差定时器的定时值为时间戳△Tb。
优选地,所述接收误差值还包括接收中断误差值△Tc,其中:
△Tc为所述SOE模块在接收所述时间戳的第一个字节过程中,未启动所述误差定时器造成的时间差。
优选地,所述MCU依据所述时间戳以及接收误差值对所述SOE模块中的FPGA中的时间定时器的时间进行时间同步的过程具体为:
所述MCU对Ta、△Tb以及△Tc做求和处理,得到T;
将所述时间定时器的时间更新为T,实现对所述SOE模块中的FPGA中的时间定时器的时间的时间同步。
为解决上述技术问题,本发明还提供了一种SOE时间同步控制系统,该系统包括:
预先设置好时间初值的主控制器,用于与从控制器通过硬接线进行时间同步;
所述主控制器和所述从控制器还用于向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步;
其中,每个控制器分别对应一个控制站,时间服务器预先选择一个控制站的控制器为所述主控制器,剩余的控制站的控制器为所述从控制器,所述主控制器和所述从控制器之间通过所述硬接线连接。
本发明提供的一种的SOE时间同步控制方法和系统,包括从控制器和预先设置好时间初值的主控制器,且主控制器和从控制器之间通过硬接线连接,从控制器与主控制器先通过硬接线进行时间同步,然后主控制器和从控制器向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步。可见,主控制器与从控制器之间通过硬接线来实现时间同步,时间同步误差可以控制在几十微秒内,达到了1ms的精度,提高了控制站间的控制器的时间同步精度,也即实现了控制站间以及控制站内的SOE模块的时间同步,且成本低,很好实现了成本与精度之间的平衡。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种SOE时间同步控制方法的过程的流程图;
图2为本发明提供的一种SOE时间同步控制系统的结构示意图;
图3为本发明提供的另一种SOE时间同步控制方法的过程的流程图;
图4为本发明提供的一种主控制器与时间服务器进行时间同步的过程的流程图;
图5为本发明提供的一种主控制器的主FPGA时钟向主控制器的OS时钟进行时间同步的过程的流程图;
图6为本发明提供的一种控制器内部的对时框图;
图7为本发明提供的一种预先设置好时间初值的主控制器与从控制器通过硬接线进行时间同步的过程的流程图;
图8为本发明提供的一种主控制器和从控制器向各自对应的SOE模块进行时间同步的过程的流程图;
图9为本发明提供的一种SOE模块对时机制框图;
图10为本发明提供的一个信号进入两个SOE模块A、B输入通道的示意图;
图11为本发明提供的一种光电耦合器的响应时间/负载阻抗关系图;
图12为为本发明提供的一种FPGA通道滤波原理图;
图13为本发明提供的一种SOE模块的晶振的参数图;
图14为本发明提供的一种DP报文中,功能码FC=00H时的数据帧格式图;
图15为本发明提供的一种事件毫秒时标去掉小数取整表示时序图;
图16为本发明提供的另一种事件毫秒时标四舍五入取整表示时序图。
具体实施方式
本发明的核心是提供一种SOE时间同步控制方法,主控制器与从控制器之间通过硬接线来实现时间同步,时间同步误差可以控制在几十微秒内,达到了1ms的精度,提高了控制站间的控制器的时间同步精度,也即实现了控制站间以及控制站内的SOE模块的时间同步,且成本低,很好实现了成本与精度之间的平衡;本发明的另一核心是提供一种包括SOE时间同步控制系统。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参照图1,图1为本发明提供的一种SOE时间同步控制方法的过程的流程图;
该方法应用于SOE时间同步控制系统中,每个控制器分别对应一个控制站,预先选择一个控制站的控制器作为对时的主控制器,剩余的控制站的控制器为从控制器,主控制器和从控制器之间通过硬接线连接,该方法包括:
步骤s1:预先设置好时间初值的主控制器与从控制器通过硬接线进行时间同步;
步骤s2:主控制器和从控制器向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步。
可以理解的是,操作人员可事先对多个控制站内的控制器的主从关系的设置规则做限定,例如图2所示,图2为本发明提供的一种SOE时间同步控制系统的结构示意图,假设有n个控制站,首先对控制站进行标号,也即控制站1,控制站2…控制站n,通过软件编程可设定标号最小的控制站中的控制器作为主控制器,其他控制站中的控制器作为从控制器。当主控制器出现故障时,剩下的从控制器中控制站标号最小的控制器自动升级为主控制器。
另外,这里的主控制器的时间初值是预先设置好的,主控制器和从控制器之间通过硬接线连接,并通过硬接线来进行时间同步,可将时间同步误差控制在几十微秒内,直接地提高了控制站内控制器间的时间同步精度,也间接的提高了控制站间SOE模块的时间同步精度。
主控制器和从控制器均可以分别对应有多个SOE模块,当主控制器和从控制器在时间同步完成后分别均向各自对应的SOE模块进行时间同步。
本发明提供的一种的SOE时间同步控制方法,包括从控制器和预先设置好时间初值的主控制器,且主控制器和从控制器之间通过硬接线连接,从控制器与主控制器先通过硬接线进行时间同步,然后主控制器和从控制器向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步。可见,主控制器与从控制器之间通过硬接线来实现时间同步,时间同步误差可以控制在几十微秒内,达到了1ms的精度,提高了控制站间的控制器的时间同步精度,也即实现了控制站间以及控制站内的SOE模块的时间同步,且成本低,很好实现了成本与精度之间的平衡。
实施例二
请参照图3,图3为本发明提供的另一种SOE时间同步控制方法的过程的流程图。
该方法包括:
步骤s3:时间接收设备从GPS上获取标准时间;
步骤s4:时间服务器与时间接收设备的标准时间进行时间同步;
步骤s5:主控制器与时间服务器进行时间同步,以实现对主控制器的时间初值设置;
可以理解的是,时间同步是自上而下进行的,时钟源头是GPS,时间接收设备首先从GPS上获取标准时间,然后时间服务器与时间接收设备进行对时,再然后主控制器通过NTP向时间服务器进行校时,以实现主控制器的时间初值设置。
值得注意的是,步骤s3、s4以及s5并不是在每一次SOE时间同步控制方法中都需要实施一次,而是只在最开始的时候进行一次,目的是为了给主控制器设置一个标准的时间初值。后面则只进行主控制器对从控制器进行时间同步以及主控制器和从控制器分别对各自对应的SOE模块进行时间同步即可。
可以理解的是,在对SOE时间同步控制系统上电开始运行时,时间服务器除了对主控制器进行时间初值的设置,同时还对SOE时间同步控制系统内的从控制器进行时间初值的设置(仅一次),后续将不再重复此过程,只进行主控制器向从控制器进行时间同步以及主控制器和从控制器向各自对应的SOE模块进行时间同步。
请参照图4,图4为本发明提供的一种主控制器与时间服务器进行时间同步的过程的流程图;
作为优选地,步骤s5中主控制器与时间服务器进行时间同步的过程具体为:
步骤s51:主控制器的操作系统OS时钟向时间服务器进行时间同步;
步骤s52:主控制器的主FPGA时钟向主控制器的OS时钟进行时间同步,以实现对主FPGA时钟的初始时间的设置。
请参照图5,图5为本发明提供的一种主控制器的主FPGA时钟向主控制器的OS时钟进行时间同步的过程的流程图;
作为优选地,步骤s52中主控制器的主FPGA时钟向主控制器的OS时钟进行时间同步,以实现对主FPGA时钟的初始时间的设置的过程具体为:
步骤s521:当主控制器中的实时系统RTS以第一周期查询到主控制器的操作系统OS时钟的时钟变量达到整分时,判断主控制器的CPU是否有时间向主FPGA时钟发送第一时间同步校时命令;
步骤s522:当主控制器的CPU立即向主FPGA时钟发送第一时间同步校时命令时,主控制器的CPU将主FPGA时钟的时间初值设为0;
当主控制器的CPU在△t1后才向主FPGA时钟发送第一时间同步校时命令时,主控制器的CPU将主FPGA时钟的时间初值设为△t1;其中,主FPGA时钟为周期为60s的主1分钟定时器。
具体地,请参照图6,图6为本发明提供的一种控制器内部的对时框图;
可以理解的是,主控制器的OS(Operating System,操作系统,运行在主控制器的CPU上)时钟通过以太网接收时间服务器发送的NTP协议对时信号,实现操作系统OS时钟与时间服务器的时间同步。
然后,主控制器中的CPU中的RTS(Real time system,实时系统,运行在主控制器的操作系统OS上)每隔第一周期就对主控制器的操作系统OS时钟的时钟变量(由软件维持)进行查询,判断OS时钟的时钟变量是否达到整分,如果达到整分,则判断CPU是否有时间立即发送第一时间同步校时命令。
可以理解的是,当主控制器的操作系统OS时钟的时钟变量达到整分时,此时CPU可能正在处理其他任务。
如果此时CPU没有在处理其他任务,而是立即对向主FPGA时钟发送第一时间同步校时命令,并对主FPGA时钟进行时间同步,则CPU通过控制线1将主FPGA时钟的时间初值设为0。
但是如果主控制器的操作系统OS时钟的时钟变量达到整分时,此时CPU正在处理其他任务,无法立即向主FPGA时钟发送第一时间同步校时命令,并对主FPGA时钟进行时间同步,而是在处理完当前正在处理的任务过了△t1时间后才开始对主FPGA时钟进行时间同步,在这一过程中,RTS会将超过整分的时间也即△t1存储在Register1中,CPU通过控制线1将主FPGA时钟的时间初值设为△t1。
另外,在CPU对主FPGA时钟的时间初值进行设置之前先查看CPU是否已经向主FPGA时钟发送第一时间同步校时命令,如果是,则直接对主FPGA时钟的时间初值进行设置;如果没有,则先向主FPGA时钟发送第一时间同步校时命令,然后再对主FPGA时钟的时间初值进行设置,并清除下发第一时间同步校时命令的标志位,这样做可防止漏发第一时间同步校时命令。
具体地,这里的主FPGA时钟为周期为60s的主1分钟定时器,也即主1分钟定时器是一个周期为60s的独立时钟。
另外,作为优选地,这里的第一周期可以为50ms。当然,也可以是其他数值,例如10ms,第一周期的具体数值本发明在此不做特别的限定。
至此,完成了对主控制器的主FPGA时钟的初始时间的设置,可以理解的是,在对SOE时间同步控制系统上电开始运行时,时间服务器除了对主控制器进行时间初值的设置,同时还对SOE时间同步控制系统内的从控制器进行时间初值的设置(仅一次),后续将不再重复此过程,只进行主控制器向从控制器进行时间同步以及主控制器和从控制器向各自对应的SOE模块进行时间同步。
步骤s1:预先设置好时间初值的主控制器与从控制器通过硬接线进行时间同步;
请参照图7,图7为本发明提供的一种预先设置好时间初值的主控制器与从控制器通过硬接线进行时间同步的过程的流程图。
作为优选地,预先设置好时间初值的主控制器与从控制器通过硬接线进行时间同步的过程具体为:
步骤s11:当主1分钟定时器满足60s溢出时,控制器中的PFGA的主逻辑单元通过硬接线向从控制器中的FPGA的从逻辑单元发送广播报文;
步骤s12:从逻辑单元依据广播报文将从控制器中的PFGA的从1分钟定时器的初值设置为0。
可以理解的是,主1分钟定时器在设置好时间初值后开始运行,当主1分钟定时器满足60s溢出也即从59s跳变到0s时,主逻辑单元通过硬接线向从控制器中的FPGA的从逻辑单元发送广播报文;从逻辑单元依据广播报文将从控制器中的FPGA的从1分钟定时器的初值设置为0,实现了主控制器和从控制器之间的时间同步。
另外,各个控制站间通过将硬接线连接到RS485总线上,实现控制站间的时间同步。
可以理解的是,这里的还可以将硬接线连接在RS422接口总线或者以太网等,本发明在此不作特别的限定。
步骤s2:主控制器和从控制器向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步。
请参照图8,图8为本发明提供的一种主控制器和从控制器向各自对应的SOE模块进行时间同步的过程的流程图;
作为优选地,主控制器和从控制器向各自对应的SOE模块进行时间同步的过程具体为:
步骤s21:当控制器中的1分钟定时器满足60s溢出时,控制器中的FPGA的逻辑单元向控制器中的DP通讯主站发送第二时间同步校时命令,其中,控制器为主控制器或者从控制器;
步骤s22:当DP通讯主站在接收到第二时间同步校时命令就立即向与控制器相对应地SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,时间戳对应的值为0;
当DP(PROFIBUS-DP)通讯主站虽然接收到第二时间同步校时命令但在△t2时间后才开始向SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,时间戳对应的值为△t2;
步骤s23:DP通讯从站接收到时间戳时,MCU依据时间戳以及接收误差值对SOE模块中的FPGA中的时间定时器的时间进行时间同步。
请参照图6和图9,图9为本发明提供的一种SOE模块对时机制框图;
可以理解的是,因为主控制器和从控制器在对各自对应的SOE模块进行时间同步时的过程是相同的,为使阐述更加简洁,上述步骤中的控制器可以为主控制器也可以为从控制器。
当控制器中的1分钟定时器满足60s溢出时,控制器中的FPGA的逻辑单元会向控制器中的DP通讯主站发送第二时间同步校时命令,但是此时的DP通讯主站可能正在对SOE模块中的DP通讯从站进行轮循。
因此,当DP通讯主站在接收到第二时间同步校时命令时没有正在对SOE模块中的DP通讯从站进行轮循而是立即向与控制器相对应地SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,此时时间戳对应的值为0。
当此时的DP通讯主站在接收到第二时间同步校时命令时正在对SOE模块中的DP通讯从站进行轮循,直到经过△t2时间轮循完DP通讯从站后才才开始向SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,此时时间戳对应的值为△t2。
另外,这里的DP通讯主站通过PROFIBUS-DP V0/V1协议向DP通讯从站下发时间戳广播包。
具体地,在1分钟定时器满足60s溢出时,1分钟定时器会输出高电平至逻辑单元,同时,逻辑单元有如下动作:
1)通过控制线2输出电平(也即第二时间同步校时命令)触发DP通讯主站中断,告知已经满足整分条件,DP通讯主站在轮循完当前DP通讯从站后执行下发时间戳。
2)通过控制线4输出电平启动定时器Time1,记录DP通讯主站在接收到中断后,需要轮循完当前DP通讯从站才能下发时间戳带来的延时,也即△t2。DP通讯主站在下发全局时间戳前停止定时器Time1,并把计数值锁存到Register2中。
下面就逻辑单元在主控制器和从控制器中分别使能各端口的状态作介绍:
Register3由RTS写入,与Register1同时更新,每分钟更新一次,纪录当前控制器为主控制器还是从控制器,用于逻辑单元查询,以便使能各个端口。
1)在主控制器中,使能控制线2、控制线4和控制线5对应的端口,数据线3默认为接收状态,在整分时刻被设置为发送,等发送完第一时间同步校时命令后再转为接收状态;
2)在从控制器中,使能控制线2、控制线4对应的端口,不使能“控制线5”端口;数据线3默认为接收状态。另外,逻辑单元内部也有一个定时器,主要监控是否丢失第一时间同步校时命令,监控原则:超过5s仍未收到第一时间同步校时命令,则下发时间戳给本控制站内的SOE模块进行校时。
具体地,这里的5s是设定的从控制器接收第一时间同步校时命令的超时时间,从控制器认为超过整分时刻5s还没有接收到主控制器发送的第一时间同步校时命令,就认为同步中断了,将本地运行的时钟时间下发给控制站内的SOE模块。
最后,DP通讯从站接收到时间戳时,MCU依据时间戳以及接收误差值对SOE模块中的FPGA中的时间定时器的时间进行时间同步。
作为优选地,接收误差值包括接收过程误差值,其中,接收过程误差值的获取过程为:
MCU在DP通讯从站开始接收时间戳时立即向SOE模块中的FPGA发送开启指令,启动FPGA中的误差定时器;
SOE模块对时间戳进行解析,得到时间戳Ta,同时向SOE模块中的FPGA发送停止指令,停止误差定时器,此时误差定时器的定时值为时间戳△Tb。
具体地,SOE模块中的MCU进入DP接收中断后,立即向SOE模块中的FPGA发送开启指令,启动FPGA中的误差定时器Time2,如果本次接收中断为校时中断,则解析时间戳,得到时间戳Ta,并把时间戳发送至FPGA的Regis ter5中,然后立即向SOE模块中的FPGA发送停止指令,停止误差定时器Time2,此时误差定时器Time2的定时值为时间戳△Tb,△Tb记录了从CPU进入中断到时间戳完全解析这个过程所用的时间。
作为优选地,接收误差值还包括接收中断误差值△Tc,其中:
△Tc为SOE模块在接收时间戳的第一个字节过程中,未启动误差定时器造成的时间差。
作为优选地,MCU依据时间戳以及接收误差值对SOE模块中的FPGA中的时间定时器的时间进行时间同步的过程具体为:
MCU对Ta、△Tb以及△Tc做求和处理,得到T;
将时间定时器的时间更新为T,实现对SOE模块中的FPGA中的时间定时器的时间的时间同步。
可以理解的是,T=Ta+△Tb+△Tc,FPGA将T更新为时间定时器的值。如果忽略一切其他不可控的时间的话,T应该等于控制器中1分钟定时器的运行时间。
另外,这里的时间定时器可以为0.1ms定时器,也即SOE模块的时钟对时主要通过调整0.1ms定时器的初值来完成,保证了时钟运行的连贯性,根本上杜绝了本模块内不同通道出现事件倒置、相同时标等问题。
本发明提供的一种的SOE时间同步控制方法,在实施例一的基础上,在控制器对SOE模块进行时间同步时,充分考虑到由于DP通讯主站在接收到第二时间同步校时命令时没有立即向SOE模块发送时间出而是经过时间△t2后而造成的误差Ta、SOE模块的CPU进入中断到时间戳完全解析这个过程造成的误差△Tb以及SOE模块在接收时间戳的第一个字节过程中,未启动误差定时器造成的时间误差△Tc,依据Ta、△Tb以及△Tc来对时间定时器的初值进行设置,实现了对时间定时器的晶振偏差的补偿,提高了控制站内SOE模块的时间同步精度,进一步提高了控制站间的SOE模块的时间同步精度,且没有增加额外的硬件设备,充分运用SOE时间同步控制系统已有的装置,成本低,进一步很好实现了成本与精度之间的平衡。
下面对上述两个实施例中的SOE时间同步控制方法进行误差分析:
因为从上到下整个校时过程中,都是以时间戳的方式传递当前的运行时间,并以定时器的方式来记录各部分的执行时间,但仍有一些不可控的时间无法被定时器记录,这些不可控的时间即校时误差,如果这些校时误差和模块采集误差之和可以控制在1ms以内,就可说明SOE模块更加能满足1ms的精度。1、时间同步误差分析
由下面的分析计算得出校时误差
t3=Δt3+Δt4+Δt5=0.098+0.01+0.1=0.2ms
校时误差包括控制器PROFIBUS-DP通讯主站处理时间戳时带来的不可控的时间、DP数据线路传输延时、SOE模块处理时间戳时带来的不可控的时间、硬件传输延时时间。
1)控制器PROFIBUS-DP通讯主站引起的误差Δt3
从控制器PROFIBUS-DP通讯主站下发时间戳机制来看,不可控的部分主要包括从PROFIBUS-DP通讯主站停止Timer1到DP通讯主站开始全局下发时间戳广播包这段时间Δtx、Timer1在计时过程中由晶振造成的时间误差Δty。
Δtx的计算:这一部分主要包括PROFIBUS-DP通讯主站读取FPGA单元的Register2的时间和PROFIBUS-DP通讯主站组织数据帧并发送到双口RAM的时间。PROFIBUS-DP通讯主站与FPGA通讯速率为以1byte/6M,设校时帧长度为10个字节,则读取和转发的时间为2*10*1/6=3.4us;设PROFIBUS-DP通讯主站组织数据帧需要执行20条语句(每条语句约为10个机器周期,每个机器周期约为0.48us),则该段时间约为96us。
Δty的计算:timer1的定时长度依赖于PROFIBUS-DP通讯主站轮循当前DP通讯从站周期的长度,且不可估量,暂以不可能出现的较大数值100ms来估算,并以此来计算定时误差。设FPGA使用的晶振为33M,晶振误差为25PPM,则100ms内计数的最大误差为2.5us,即Δty=2.5us。
由上可计算出控制器PROFIBUS-DP通讯主站下发时间戳机制造成的误差Δt3=Δtx+Δty=96+2.5=98.5us。
2)DP-Hub造成的传输延时误差Δt4
由于DP数据要通过DP-Hub才能传输到SOE模块,DP-Hub造成的延时可控制在1us内。
假设DP数据最大经10级DP-Hub才可传输到SOE模块,则
Δt4=10*1us=10us。
3)SOE模块级对时误差Δt5
a)SOE模块处理时间戳时带来的不可控的时间
根据上述分析,不可控的时间包括FPGA所用晶振造成的误差、Timer1的定时误差、FPGA计算Ta+ΔTb+ΔTc并赋值给脉冲计数单元这个过程所用的时间、中断响应时间,代码执行延时时间、计数单元四舍五入取整误差,其中代码方面采用的是软DP,中断优先级最高,主要考虑中断响应的延时差,延时差可控制在3条语句周期内(设晶振为24M,一条语句指令周期大约10个机器周期,约为5us),这样代码延时差约为3*5us=15us=0.015ms,综上,前五种时间误差一般可控制在us级,并可包含于第六种时间误差(最大0.1ms),因此模块处理时间戳时带来的不可控的时间可认为是0.1ms
b)硬件传输延时时间
硬件传输的延时主要分网络传输延时和模块内RS485器件的接收延时两部分,网络传输时间可忽略不计;RS485接收延时最大为10ns,最小为4ns,时间可控制在10ns。
请参照表1,表1为RS485器件参数指标表。
表1 RS485器件参数指标表
因此,SOE模块级对时误差Δt5=0.1+0.00001=0.1ms。
2、采集精度误差分析
由下面的分析计算出:
分辨率误差t6+t7+t8=0.1+0.229+0.01=0.339ms。
分辨率误差主要是指SOE模块采集SOE事件时造成的分辨误差,体现在时标的精度上,由采样周期、通道参数差异引起的信号偏差、晶振偏差等因素组成。
1)模块采样周期t6的选取
由1ms的分辨力指标作如下约束:t6+t7+t8+t9<1ms,其中:
t6:信号采样周期;
t7:通道参数差异造成的输入信号偏差;
t8:模块晶振造成的偏差;
t9:校时偏差,主要包括控制器层校时偏差,DP数据传输延时、SOE模块处理时间戳时带来的不可控的时间三部分。
因此,为保证t7、t8、t9有较大裕量,t6越小越好,选取t6=0.1ms。
2)通道参数差异造成输入信号偏差t7
请参照图10,图10为本发明提供的一种两个SOE模块A、B输入通道示意图;虚线圆圈表示该部分会造成信号延时,因为SOE模块关注的是不同通道的先后顺序,因此可如下计算A和B两通道的时延差即可:
(a)ΔT1表示两个不通通道RC的充电常数之差,即ΔT1=Ta1-Tb1
其中R:5570±5%,100PPM;C:10nF(+80%,-20%),+30%,-80%(-25℃-85℃)。
Rmax=5570*(1+5%)*(1+(60℃-25℃)*0.01%)=5.868K;
Rmin=5570*(1-5%)*(1-(60℃-25℃)*0.01%)=5.272K;
Cmax=10*(1+80%)*(1+30%)=23.4nF;Cmin=10*(1-20%)(1-80%)=1.6nF;
则ΔT1=Rmax*Cmax-Rmin*Cmin=5.868K*23.4nF-5.272K*1.6nF=0.129ms;
实际上电容C具有温度变化的同向性,通过高低温度测试验证电容容量最大也就是5nF,不太可能出现上述23.4-1.6=21.8nF的差值。但为了综合考虑,本部分还是按照指标中误差最大来计算。
(b)ΔT2表示光耦(以HCPL-181为例)开启关断时间差,即ΔT2=Ta2-Tb2。HCPL-181响应时间/负载阻抗关系如下图11所示:
当RL=10K时,tr、tf约为100us。因为关系图中没有涉及到温度、Ic等参数与响应时间的关系式,所以以不可能出现的较大值tr=100us来表示延时差,即按ΔT2=tr=100us=0.1ms。
(c)ΔT3表示信号通过SN74ACT14的最大建立时间差,即ΔT3=Ta3-Tb3
请参照表2,表2为74ACT14性能指标表,tplh=1-12.5ns,tphl=1-11ns,则ΔT3=Ta3-Tb3=12.5-1=11.5ns=0.000012ms。
表2 SN74ACT14参数指标表
(d)ΔT4表示信号经过FPGA的硬件滤波后产生的时间差,即ΔT4=Ta4-Tb4。
请参照图12,图12为本发明提供的一种FPGA通道滤波原理图,时钟输入为24M,晶振误差为25PPM,ΔT4主要包括时钟输入偏差和晶振造成的偏差。由于异步逻辑的关系,时钟输入偏差最大为1个时钟脉冲,约为0.041us;晶振造成的偏差为±25us/s,即±0.025us/ms,则在最大20ms内的滤波时间内,最大偏差为0.050us*20=1us。
ΔT4=0.041us+1us=0.001ms。
综上所述,两通道的最大时延差
T7=ΔT1+ΔT2+ΔT3+ΔT4=0.129+0.1+0.000012+0.001=0.229ms。
可作出如下推断:当两个相互间隔1ms的信号输入两个不同通道后,有可能变为间隔0.771ms或者是1.229ms的信号,这样实际要求SOE模块达到的分辨力指标最小为0.771ms。
3)晶振偏差(t8)补偿
假定SOE模块晶振型号为M126FAN-24.000MHZ,其频率稳定性为24MHz±25ppm。详细见下图13。
25ppm的晶振造成的偏差为±25us/s,即±1.5ms/min,不同晶振偏差最大为3ms/min。对于3ms的误差,SOE模块是不能容忍的,新方案拟利用如下原理进行补偿:
条件1:以0.1ms的定时周期采样,定时器初值N为2400(24M计数时钟);
条件2:1min中内需要计数m为600000次(一次0.1ms);
基于以上两个条件:
(a)晶振偏差计算:假设1min内晶振偏差了1.5ms,即应相当于多计了1.5*2400*10=36000个数,则需要通过调整计数器初值N来抵消这36000个数
该部分主要是对1分钟内晶振计数的累加,误差主要来源于时钟锁存输入偏差和晶振造成的偏差。由于异步逻辑的关系,时钟输入偏差最大为1个时钟脉冲,约为0.041us;晶振造成的偏差为±25us/s,即±0.0025us/0.1ms(0.1ms为最小计数单位),所以该部分造成的误差为0.0435us。
(b)调整周期T计算:对于0.1ms的时间段内调整一个数(相当于调整0.041us)几乎不影响精度,所以此方案可行。T=600000/36000=16.7(单位为0.1ms)。
该部分主要是定时器初值调整,误差主要来源于晶振造成的偏差和计数初值调整造成的偏差。晶振造成的偏差为±25us/s,即±0.0025us/0.1ms(0.1ms为最小计数单位),再加上0.041us的调整,总计0.0435us。
(c)调整策略:在0-600000范围内,每到T的倍数时调整定时器初值N为2399,其他数值时N仍为2400。
综上理论计算出的误差为0.087us。由于每分钟内补偿的依据为上一分钟的偏差(偏差所述时间段=1分钟—本次时间戳+上次时间戳),所以补差精度跟晶振偏差变化有较大关系,前后两分钟晶振不应变化较大,但这个量很难评估的,只能利用实测验证是否满足要求。试验证明利用该原理,晶振造成的偏差通过补偿后可控制在t8=10us内。
下面对PROFIBUS-DP总线广播对时报文的处理作介绍:
1.控制器DP通讯主站发送Global_Control报文格式
在本方案中,需要借助DP程序中的Global_Control报文来完成时间戳的下发。标准DP报文Global_Control数据帧格式中,当功能码FC=00H时,DU字段(长度为两个字节)为时间信息,可以用来下发时间戳信息,请参照图14所示。
2、SOE模块DP通讯从站对Global_Control报文的处理
SOE模块在接收到Global_Control报文(仅限FC=00H)后,需要解析出时间戳信息,并转发到FPGA中。因为解析过程也要占用时间,为了使模块与控制器能更精密的同步,就需要也能把解析过程所占用的时间计算出来,最后加到时间戳信息中。
在DP通讯从站协议栈内预留用户接口,可以直接操作一个GPIO。只要进入中断,就立即通过该GPIO输出高电平。FPGA收到GPIO口的高电平后,立即启动内部定时器,直到再次收到MCU发过来的时间戳后停止该定时器。
下面对时标处理作介绍:
1、关于时标分辨率0.1ms的说明
按照目前的机制,上层软件日志时标的显示最小单位为1ms,控制器时间运算最小单位也是1ms,这就要求模块上报时标最小单位也必须为1ms,但这样会带来如下问题:
1)如果采用去掉小数的取整方法,请参照图15所示,图15为本发明提供的一种事件毫秒时标去掉小数取整表示时序图;由图15分析可看出前后间隔的1ms的信号在取整后可能会出现相同时标的现象,A、B模块同步精度为0.2ms。
SOE模块A、B采样周期为0.2ms,如果这时前后间隔1ms的SOE事件1、2,分别进入A、B两个模块,进入时机如下图所示,则A、B两个模块上报取整后的时标值有可能都是0ms,这样前后间隔的事件就无法区分顺序了。
2)如果采用四舍五入的取整方法,由下图分析可看出前后间隔的1ms的信号在取整后也可能会出现相同时标的现象,A、B模块同步精度为0.2ms。
SOE模块A、B采样周期为0.2ms,如果这时前后间隔1ms的SOE事件1、2,分别进入A、B两个模块,进入时机如下图16所示,图16为本发明提供的另一种事件毫秒时标四舍五入取整表示时序图;则A、B两个模块上报取整后的时标值有可能都是1ms,这样前后间隔的事件也无法区分顺序。
如上显示单位若能支持到0.1ms,则事件的先后顺序是可以分开的。
如果显示单位仍是1ms,那么模块时标只能采用取整的方法,这样就会间接的引入了较大误差,导致相同时标的问题。无论采样周期有多小,都会是相同的结论。
2、SOE模块上报的事件时标格式
模块事件时标的最小单位为0.1ms,则1分钟需要计数600000次,之前的1个字已不能表示出来,需要4个字节来表示时间:两个字节来表示ms级,数值范围:0-65535ms;后两个字节来表示0.1ms级,数值范围0.0-0.9ms(主要考虑字节/字的一致性问题)。
模块只有一个module,上报事件数据格式如下表所示,每次最多上报18条事件,总需126个字节。模块开缓冲区(1K Byte)存储未上报SOE事件,每到上传时间间隔时刷新SOE数据,直到缓冲区变空为止。
请参照表3,表3为SOE模块上报SOE事件数据格式表。
表3 SOE模块上报SOE事件数据格式表
数据格式说明:
第1-16个字节代表进行数据交换时16路通道的当前实时状态,每通道的状态均由一个字节来表示。
第17、18个字节代表本次上报的SOE事件条数(0---18),最多包含18条SOE事件记录。
随后的数据每6个字节为1条SOE事件记录。其中:
第1、2个字节代表SOE事件发生的ms级时标(范围:0-65535);
第3、4个字节代表SOE事件发生的0.1ms级时标(范围:0-9);
第5个字节代表发生SOE事件的通道状态(例:AA表示1;55表示0);
第6个字节代表发生SOE事件的通道号n(n=1-16)。
3.控制器RTS对SOE事件时标的拼接处理
模块上报N=0-65535数值(表示分钟以内的ms数),控制器RTS会在当前下发校时命令时刻T0(分辨率到ms级)的基础上,进行如下运算T=T0+N,以T作为当前事件时标值。
SOE模块不仅要上报N1=0-65535数值(表示分钟以内的ms数),还要上报N2=0-9数值(表示0.1ms级的数),因为模块上报的时间戳是以当前整分时刻为起点的,控制器RTS只需在当前整分的基础上补充上分钟内的数值T=N1+N2/10,即可作为当前事件时标值。
与上述方法实施例相对应地,本发明还提供了一种SOE时间同步控制系统,该系统包括:
预先设置好时间初值的主控制器,用于与从控制器通过硬接线进行时间同步;
主控制器和从控制器还用于向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步;
其中,每个控制器分别对应一个控制站,时间服务器预先选择一个控制站的控制器作为对时的主控制器,剩余的控制站的控制器为从控制器,主控制器和从控制器之间通过硬接线连接。
本发明提供的一种的SOE时间同步控制系统,包括从控制器和预先设置好时间初值的主控制器,且主控制器和从控制器之间通过硬接线连接,从控制器与主控制器先通过硬接线进行时间同步,然后主控制器和从控制器向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步。可见,主控制器与从控制器之间通过硬接线来实现时间同步,时间同步误差可以控制在几十微秒内,达到了1ms的精度,提高了控制站间的控制器的时间同步精度,也即实现了控制站间以及控制站内的SOE模块的时间同步,且成本低,很好实现了成本与精度之间的平衡。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (8)

1.一种SOE时间同步控制方法,应用于SOE时间同步控制系统中,其特征在于,每个控制器分别对应一个控制站,预先选择一个控制站的控制器作为对时的主控制器,剩余的控制站的控制器为从控制器,所述主控制器和所述从控制器之间通过硬接线连接,该方法包括:
预先设置好时间初值的所述主控制器与所述从控制器通过所述硬接线进行时间同步;
所述主控制器和所述从控制器向各自对应的事件顺序记录系统SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步;
其中,所述主控制器的预先设置时间初值的过程为:
时间接收设备从GPS上获取标准时间;
时间服务器与所述时间接收设备的所述标准时间进行时间同步;
所述主控制器与所述时间服务器进行时间同步,以实现对所述主控制器的时间初值设置;
其中,所述主控制器与所述时间服务器进行时间同步的过程具体为:
所述主控制器的操作系统OS时钟向所述时间服务器进行时间同步;
所述主控制器的主FPGA时钟向所述主控制器的OS时钟进行时间同步,以实现对所述主FPGA时钟的初始时间的设置;
其中,所述主控制器的主FPGA时钟向所述主控制器的OS时钟进行时间同步,以实现对所述主FPGA时钟的初始时间的设置的过程具体为:
当所述主控制器中的实时系统RTS以第一周期查询到所述主控制器的操作系统OS时钟的时钟变量达到整分时,判断所述主控制器的CPU是否有时间向所述主FPGA时钟发送第一时间同步校时命令;
当所述主控制器的CPU立即向所述主FPGA时钟发送所述第一时间同步校时命令时,所述主控制器的CPU将所述主FPGA时钟的时间初值设为0;
当所述主控制器的CPU在△t1后才向所述主FPGA时钟发送所述第一时间同步校时命令时,所述主控制器的CPU将所述主FPGA时钟的时间初值设为△t1;其中,所述主FPGA时钟为周期为60s的主1分钟定时器。
2.如权利要求1所述的SOE时间同步控制方法,其特征在于,所述第一周期为50ms。
3.如权利要求1所述的SOE时间同步控制方法,其特征在于,所述预先设置好时间初值的所述主控制器与所述从控制器通过所述硬接线进行时间同步的过程具体为:
当所述主1分钟定时器满足60s溢出时,所述控制器中的PFGA的主逻辑单元通过所述硬接线向所述从控制器中的FPGA的从逻辑单元发送广播报文;
所述从逻辑单元依据所述广播报文将所述从控制器中的PFGA的从1分钟定时器的初值设置为0。
4.如权利要求1所述的SOE时间同步控制方法,其特征在于,所述主控制器和所述从控制器向各自对应的SOE模块进行时间同步的过程具体为:
当所述控制器中的1分钟定时器满足60s溢出时,所述控制器中的FPGA的逻辑单元向所述控制器中的分散外设DP通讯主站发送第二时间同步校时命令,其中,所述控制器为所述主控制器或者所述从控制器;
当所述DP通讯主站在接收到所述第二时间同步校时命令就立即向与所述控制器相对应地SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,所述时间戳对应的值为0;
当所述DP通讯主站虽然接收到所述第二时间同步校时命令但在△t2时间后才开始向所述SOE模块中的微控制单元MCU中的DP通讯从站发送时间戳时,所述时间戳对应的值为△t2;
所述DP通讯从站接收到所述时间戳时,所述MCU依据所述时间戳以及接收误差值对所述SOE模块中的FPGA中的时间定时器的时间进行时间同步。
5.如权利要求4所述的SOE时间同步控制方法,其特征在于,所述接收误差值包括接收过程误差值,其中,所述接收过程误差值的获取过程为:
所述MCU在所述DP通讯从站开始接收所述时间戳时立即向所述SOE模块中的FPGA发送开启指令,启动所述FPGA中的误差定时器;
所述SOE模块对所述时间戳进行解析,得到时间戳Ta,同时向所述SOE模块中的FPGA发送停止指令,停止所述误差定时器,此时所述误差定时器的定时值为时间戳△Tb。
6.如权利要求5所述的SOE时间同步控制方法,其特征在于,所述接收误差值还包括接收中断误差值△Tc,其中:
△Tc为所述SOE模块在接收所述时间戳的第一个字节过程中,未启动所述误差定时器造成的时间差。
7.如权利要求6所述的SOE时间同步控制方法,其特征在于,所述MCU依据所述时间戳以及接收误差值对所述SOE模块中的FPGA中的时间定时器的时间进行时间同步的过程具体为:
所述MCU对Ta、△Tb以及△Tc做求和处理,得到T;
将所述时间定时器的时间更新为T,实现对所述SOE模块中的FPGA中的时间定时器的时间的时间同步。
8.一种SOE时间同步控制系统,其特征在于,该系统包括:
预先设置好时间初值的主控制器,用于与从控制器通过硬接线进行时间同步;
所述主控制器和所述从控制器还用于向各自对应的SOE模块进行时间同步,以实现控制站间以及控制站内的SOE模块的时间同步;
其中,每个控制器分别对应一个控制站,时间服务器预先选择一个控制站的控制器作为对时的所述主控制器,剩余的控制站的控制器为所述从控制器,所述主控制器和所述从控制器之间通过所述硬接线连接;
其中,所述主控制器的预先设置时间初值的过程为:
时间接收设备从GPS上获取标准时间;
时间服务器与所述时间接收设备的所述标准时间进行时间同步;
所述主控制器与所述时间服务器进行时间同步,以实现对所述主控制器的时间初值设置;
其中,所述主控制器与所述时间服务器进行时间同步的过程具体为:
所述主控制器的操作系统OS时钟向所述时间服务器进行时间同步;
所述主控制器的主FPGA时钟向所述主控制器的OS时钟进行时间同步,以实现对所述主FPGA时钟的初始时间的设置;
其中,所述主控制器的主FPGA时钟向所述主控制器的OS时钟进行时间同步,以实现对所述主FPGA时钟的初始时间的设置的过程具体为:
当所述主控制器中的实时系统RTS以第一周期查询到所述主控制器的操作系统OS时钟的时钟变量达到整分时,判断所述主控制器的CPU是否有时间向所述主FPGA时钟发送第一时间同步校时命令;
当所述主控制器的CPU立即向所述主FPGA时钟发送所述第一时间同步校时命令时,所述主控制器的CPU将所述主FPGA时钟的时间初值设为0;
当所述主控制器的CPU在△t1后才向所述主FPGA时钟发送所述第一时间同步校时命令时,所述主控制器的CPU将所述主FPGA时钟的时间初值设为△t1;其中,所述主FPGA时钟为周期为60s的主1分钟定时器。
CN201510770405.8A 2015-11-11 2015-11-11 一种soe时间同步控制方法及系统 Active CN105450323B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510770405.8A CN105450323B (zh) 2015-11-11 2015-11-11 一种soe时间同步控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510770405.8A CN105450323B (zh) 2015-11-11 2015-11-11 一种soe时间同步控制方法及系统

Publications (2)

Publication Number Publication Date
CN105450323A CN105450323A (zh) 2016-03-30
CN105450323B true CN105450323B (zh) 2017-12-19

Family

ID=55560163

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510770405.8A Active CN105450323B (zh) 2015-11-11 2015-11-11 一种soe时间同步控制方法及系统

Country Status (1)

Country Link
CN (1) CN105450323B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106094495B (zh) * 2016-06-15 2018-06-19 国网江苏省电力公司电力科学研究院 变电站智能电子设备时间同步精度和守时精度的测试方法
CN106230577B (zh) * 2016-08-05 2017-05-24 光一科技股份有限公司 一种提高智能网荷互动终端多板分辨率的方法
CN106254023B (zh) * 2016-08-09 2018-04-17 珠海优特物联科技有限公司 一种主从设备通信的方法及系统
CN106502233B (zh) * 2016-09-29 2019-06-07 北京广利核系统工程有限公司 一种核电站数字化仪控系统校时方法
CN106448110B (zh) * 2016-10-26 2022-09-16 南方电网科学研究院有限责任公司 基于北斗卫星的计量自动化数据采集系统及方法
CN107168266B (zh) * 2017-06-26 2020-04-21 南京南瑞继保电气有限公司 一种基于i/o总线的数据发送优化方法
CN107479530B (zh) * 2017-07-29 2019-11-29 北京广利核系统工程有限公司 一种实现控制站间SOE分辨率低于1ms的方法
CN107819563A (zh) * 2017-08-30 2018-03-20 悦享趋势科技(北京)有限责任公司 时间同步装置和脉搏波传导速度的测量系统
CN107561953A (zh) * 2017-09-01 2018-01-09 中国科学院长春光学精密机械与物理研究所 一种控制方法以及控制系统
CN109302255B (zh) * 2018-09-12 2020-11-13 杭州和利时自动化有限公司 时间同步控制方法、装置、系统及计算机可读存储介质
CN109309719A (zh) * 2018-10-10 2019-02-05 爱普(福建)科技有限公司 一种分布式服务器数据处理与交互方法和系统
CN111381486B (zh) * 2018-12-28 2022-02-08 北京金风科创风电设备有限公司 控制器校时方法、装置、控制器及风力发电机组
CN112994818B (zh) * 2019-12-18 2022-12-16 海信视像科技股份有限公司 一种时间同步方法及显示设备
CN113225151B (zh) * 2021-04-19 2023-08-25 杭州康吉森自动化科技有限公司 一种基于can总线的时钟同步系统、方法和装置
CN113708879B (zh) * 2021-09-10 2024-03-26 北京广利核系统工程有限公司 一种分布式系统的对时系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1801023A (zh) * 2005-11-14 2006-07-12 杨卫民 一种多事件顺序记录与测试系统
CN101211184A (zh) * 2006-12-28 2008-07-02 上海自动化仪表股份有限公司 事件顺序记录方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110222561A1 (en) * 2010-03-11 2011-09-15 General Electric Company Systems and methods for providing time synchronization

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1801023A (zh) * 2005-11-14 2006-07-12 杨卫民 一种多事件顺序记录与测试系统
CN101211184A (zh) * 2006-12-28 2008-07-02 上海自动化仪表股份有限公司 事件顺序记录方法

Also Published As

Publication number Publication date
CN105450323A (zh) 2016-03-30

Similar Documents

Publication Publication Date Title
CN105450323B (zh) 一种soe时间同步控制方法及系统
CN108872910B (zh) 一种用于电能质量监测装置在线检定的校时系统及方法
CN201422028Y (zh) 实现ieee1588精确对时功能的变电站测控装置
CN103616591A (zh) 一种智能变电站合并单元特性的仿真装置及其仿真方法
CN105450384A (zh) 通信系统同步时钟对时装置
CN201425704Y (zh) 卫星同步主时钟装置
CN107861087A (zh) 一种直流互感器的闭环测试系统
CN109302255A (zh) 时间同步控制方法、装置、系统及计算机可读存储介质
CN203149306U (zh) 一种北斗gps双模授时装置
CN105553593B (zh) 一种基于sdh多时间源ptp数据同步及时间监测系统
CN104426600B (zh) 光纤传输时延自动锁定及均衡补偿方法
CN105071535A (zh) 一种电网系统的时间同步管理系统及实现方法
CN106953708A (zh) 一种基于工业环网的时间同步系统及其工作方法
CN202818369U (zh) 一种支持iec61850时钟信息发布的时钟服务器
CN102593955A (zh) 一种综合性智能化时间频率测试系统与测试方法
CN106656395B (zh) 基于自学习改进的电网时间同步测量系统和方法
CN101488016B (zh) 一种基于gps的plc模件级对时方法
CN102571253B (zh) 实现精确时间同步的方法和设备
CN105471572B (zh) 一种基于goose报文的时间同步测量方法
CN207473079U (zh) 一种直流互感器的闭环测试系统
CN202772918U (zh) 一种ptp信号协议转换设备
CN106385299B (zh) 智能变电站维护业务类信息背景流的主从时钟同步方法
CN101706646A (zh) 时间综合测试系统及方法
CN205986916U (zh) 一种提高智能网荷互动终端多板分辨率的终端
CN206311927U (zh) 一种通讯管理设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Zhou Xinhui

Inventor after: He Jianfeng

Inventor after: Du Junzhao

Inventor after: Li Meng

Inventor after: Huang Zhenlin

Inventor before: Zhou Xinhui

Inventor before: Du Junzhao

Inventor before: Li Meng

Inventor before: Huang Zhenlin

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant