一种利用rs232串口精确对时的方法及装置

文档序号:1651164 发布日期:2019-12-24 浏览:13次 >En<

阅读说明:本技术 一种利用rs232串口精确对时的方法及装置 (Method and device for accurately timing by utilizing RS232 serial port ) 是由 程加强 赵小凤 罗培城 毛敏 于 2019-09-12 设计创作,主要内容包括:一种利用RS232串口精确对时的方法,包括如下步骤:S1.授时装置输出串口信号到二次监测装置RS232串口的RXD引脚,S2.二次监测装置串口响应中断后,根据串口包含的年月日时分秒时间信息对时系统秒级以上大时间信息;S3.授时装置输出秒脉冲信号到RS232接口的DCD引脚,秒脉冲信号上升沿触发所述DCD引脚的串口控制器中断,以微秒时间偏差为基础,通过PID算法计算的步长值对系统的微秒时间计数器步长值进行修正;S4.所述二次监测装置根据步骤S2和S3对时系统秒级以上大时间信息和修正系统微秒时间计数器步长值从而对装置系统时间进行整体对时。本发明还公开了一种利用RS232串口精确对时的装置。本发明在不增加硬件成本和接口的情况下,可以利用原有装置硬件串口实现精确对时。(A method for accurately timing by utilizing an RS232 serial port comprises the following steps that S1, a timing device outputs a serial port signal to an RXD pin of the RS232 serial port of a secondary monitoring device, S2, after the serial port of the secondary monitoring device responds to interruption, large time information above a system second level is timed according to year, month, day, hour and minute time information contained in the serial port, S3, the timing device outputs a second pulse signal to a DCD pin of an RS232 interface, the rising edge of the second pulse signal triggers a serial port controller of the DCD pin to interrupt, the step value of a microsecond time counter of the system is corrected through a step value calculated through a PID algorithm on the basis of microsecond time deviation, and S4, the secondary monitoring device corrects the large time information above the system second level and the step value of the system microsecond time counter according to the steps of S2 and S3, so that the system time of the device is integrally timed. The invention also discloses a device for accurately setting time by utilizing the RS232 serial port. The invention can realize accurate time synchronization by utilizing the hardware serial port of the original device under the condition of not increasing hardware cost and interfaces.)

一种利用RS232串口精确对时的方法及装置

技术领域

本发明属于电力系统技术领域,涉及授时技术,具体涉及一种利用RS232串口精确对时的方法及装置。

背景技术

随着变电站二次监测装置对时间精度的要求越来越高,特别是录波器、测控、保护和PMU(同步相量测量装置)等装置对时间精度的要求更高,这就促使GPS或北斗等授时装置输出更高精度的授时信号,目前GPS/北斗授时装置输出的对时信号有PTP(高精度时间同步协议)、B码、脉冲(时、分、秒)、NTP(SNTP)、串口等方式,达到微秒级精度对时信号有PTP、B码,达到毫秒级精度对时信号有NTP(网络时间协议)或SNTP(简单网络时间协议)、串口,串口+秒脉冲组合对时也可以达到微秒级精度对时,目前在变电站监测装置大量使用的是B码(光、电)对时,其它对时方式要么对时精度差,要么对装置硬件要求高增加成本,而一些较老的监测装置只支持串口对时。

目前,变电站二次监测装置通过RS232-C串口对时常采用以下2种方式:

一是采用RS232-C串口对时,通过接入GPS(或北斗)授时装置上的串口实现二次监测装置对时。对时只能精确到秒,对毫秒、微秒则无对时能力,对时误差≤±1s,对时精度无法满足精确对时要求。二是采用RS232-C串口+秒脉冲组合对时;通过接入GPS(或北斗)授时装置上的串口+秒脉冲实现二次监测装置对时。可以满足对时精度的要求,但有些二次监测装置无脉冲接口无法接入秒脉冲,也不能完成精确对时,故适用范围有限。

发明内容

为解决目前电力系统变配电站二次监测装置串口对时误差大、无法满足时间精度的要求、特别是一些老的二次监测装置只支持串口对时,在不增加硬件成本和接口的情况下,本发明公开了一种利用RS232串口精确对时的方法及装置。

本发明所述利用RS232串口精确对时的方法,包括如下步骤:

S1.授时装置输出串口信号到二次监测装置RS232接口的RXD引脚,

S2. 二次监测装置响应串口中断后,根据串口信号包含的年月日时分秒时间信息对时系统的秒级以上大时间信息;

S3授时装置输出秒脉冲信号到RS232接口的DCD引脚,秒脉冲信号上升沿触发所述RS232接口的DCD引脚的串口控制器中断;

设置所述二次监测装置以秒脉冲信号上升沿触发中断的时刻为微秒时间零时刻起点,读取系统微秒级时间计算时间偏差,然后以微秒时间偏差为基础,通过PID算法计算的步长值对系统微秒时间计数器步长值进行修正;

S4.所述二次监测装置根据步骤S2和S3对时系统秒级以上大时间信息和修正系统微秒时间计数器步长值,从而对装置系统时间进行整体对时。

优选的,所述步骤S3中修正时使用的算法为PID算法,所述PID算法具体为:

在每一采样周期,按照PID算法,根据当前实时时间偏差Xn,积分时间误差Xy=Xn+X(n-1) +…+X(n-k),n=1、2、3…及微分时间误差Xz=Xn-X(n-1),综合计算系统微秒计数器调整步长值y,y=AXn+BXy+DXz ,直至在S3中测量到的实时时间偏差Xn小于误差容忍度C;

所述Yn为微秒计数器步长值,A、B、D分别为时间偏差,积分时间误差及微分时间误差的权重系数,且A+B+D=1,,k为积分累积数,n表示第n个采样周期

优选的,所述步骤S1中,授时装置输出串口信号到二次监测装置RS232接口的RXD引脚后,RS232接口的TXD引脚输出应答信号到授时装置。

本发明还公开了一种利用RS232串口精确对时的装置,其特征在于,包括授时装置和二次监测装置,所述授时装置的TXD引脚连接所述二次监测装置RS232接口的RXD引脚,所述授时装置的RXD引脚连接所述二次监测装置RS232接口的TXD引脚, 所述授时装置的PPS引脚连接所述二次监测装置RS232接口的DCD(载波监测)引脚。

具体的,所述授时装置为GPS或北斗授时装置。

具体的,所述二次监测装置设置有系统秒级以上大时间寄存器和系统微秒计数器。

具体的,所述二次监测装置为故障录波器、保信子站、测控装置或远动装置等。

采用本发明所述利用RS232串口精确对时的方法及装置,可以提供串口精确对时,在不增加硬件成本和接口的情况下,利用原有装置硬件串口实现精确对时,具有精度高、兼容性好、可靠性高、实时性好、实用范围广等特点,满足变配电站、发电厂等电力二次监测装置精确对时的要求。

本发明的优越性在于:

1、采用一个RS232-C串行接口完成精确对时,对时精度可以低于20us。

2、兼容原有串口对时协议软件,增加时间PID算法软件保证了对时精度。

3、兼容原来装置的串口对时方式,不需要增加硬件成本和接口,现场接

线接单,施工方便,用途范围广。

附图说明

图1为本发明所述利用RS232串口精确对时的装置的一种

具体实施方式

示意图。

具体实施方式

下面对本发明的具体实施方式作进一步的详细说明。

本发明所述利用RS232串口精确对时的方法基于一种利用RS232串口精确对时的装置,其包括授时装置和二次监测装置,所述授时装置的TXD引脚连接所述二次监测装置RS232接口的RXD引脚, 所述授时装置的RXD引脚连接所述二次监测装置RS232接口的TXD引脚, 所述授时装置的PPS引脚连接所述二次监测装置RS232接口的DCD(载波监测)引脚。

其中DCD(载波监测)引脚为RS2329芯串口的载波检测脚,该脚的电平变化可以触发串口控制器的中断,从而得到准确的系统微秒时间。

其中,授时装置通过TXD引脚输出串口信号到二次监测装置RS232接口的RXD引脚,二次监测装置响应串口信号后,读取串口信息包含的年月日时分秒时间信息,并对自身系统秒级以上大时间信息进行修正。

授时装置通过PPS引脚输出串口信号到二次监测装置RS232接口的DCD引脚,二次监测装置响应串口信号后,读取串口信息包含的亚秒级时间信息,并对自身系统亚秒级时间信息进行修正。

二次监测装置的RXD接到串口时间信息后,可以将响应通过自身的TXD引脚发送到所述授时装置的RXD引脚,使授时装置知道接收时间信息成功。

授时装置为采用GPS或北斗模块为接收模块,扩展各种对时接口发布精确时间输出的时间同步装置,所述二次监测装置为变电站中对一次设备如主变压器及其附属设备进行保护、监视、测量、操作控制的辅助设备,如故障录波器、保信子站、测控装置或远动装置等。

基于上述利用RS232串口精确对时的装置进行精确对时的方法,可以包括如下步骤:

S1.授时装置输出串口信号到二次监测装置RS232接口的RXD引脚,

S2.二次监测装置响应串口中断后,软件读取串口信息包含的年月日时分秒时间信息对时系统秒级以上大时间信息;

串口信号为包含年月日时分秒级时间信息,二次监测装置通过响应串口中断,读取串口信号包含的年月日时分秒级以上大时间信息对时系统秒级以上大时间信息。

二次监测装置的RXD接到串口时间信息后,可以将响应通过自身的TXD引脚发送到所述授时装置的RXD引脚,使授时装置知道接收时间信息成功。

所述秒级以上大时间信息对时是指通过授时装置串口传递信号中的年月日时分秒级以上大时间信息对接收信息的二次监测装置系统秒级以上大时间进行对时。对时后的秒级以上大时间可以存储在系统秒级以上寄存器内。

设置所述二次监测装置根据秒脉冲信号上升沿触发中断的时刻为微秒时间零时刻起点,上升沿到来时即时读取系统时间值,由于系统时间值包括秒和微秒2个32位整型数,理论上微秒数为0,由于存在误差,通常取微秒的时间值与0.5S比较,大于等于0.5S认为是负偏差,此时Xn(时间偏差)=微秒时间值-1000000;小于0.5mS认为是正偏差,此时Xn(时间偏差)=微秒时间值-0;通过计算得到微秒时间偏差值的大小和方向,存入buffer缓存中。然后以系统时间偏差为基础,通过PID算法计算步长值对系统的微秒时间计数器步长值进行修正。

为避免修正过度造成时钟信号反复震荡,步骤S3中修正时使用的算法为PID算法,采用比例、积分、微分算法计算系统微秒计数器调整步长值,在每个采样周期内不断缩小微秒级时间误差,而不是根据计算时间误差直接进行修正。

P表示比例:控制当前,比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差(Steady-stateerror)。

I表示积分:控制过去,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统(System with Steady-state Error)。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。

D表示微分:控制将来,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系,增大微分时间有利于加快系统的响应速度,使系统超调量减小,稳定性增加,但系统对扰动的抑制能力减弱。微分控制具有超前和预测的特性。

在每一采样周期1秒内,按照PID算法,在每一采样周期,按照PID算法,根据当前实时时间偏差Xn,积分时间误差Xy=Xn+X(n-1) +…+X(n-k)(n=1、2、3…),及微分时间误差Xz=Xn-X(n-1),综合计算系统微秒计数器调整步长值y,y=AXn+BXy+DXz ,直至在S3中测量到的实时时间偏差Xn小于误差容忍度C;

公式y=AXn+BXy+DXz中,计算得到的结果y表示对系统微秒计数器步长值在每一周期的调整值,等号右边三项分别表征了系统调整的比例P,积分I,微分D三个要素,Xn表征当前误差,对其权重系数A的调整表示了误差比例控制,Xy为累积k个连续周期的时间偏差之和,表示系统静态误差,Xz为最近2个周期的时间偏差之差,反映了误差的未来趋势。

调整的目的是在尽可能短的周期内使Xn小于误差容忍度C,而且要避免超调带来的震荡,对权重系数A,B,D的取值即遵循上述原则,例如发现超调量过大,则可以适当减小A值,发现恒定误差消失慢,则可以适当增大B值;发现调整后误差易出现不稳定,则可以适当减小D值。由于Xy为累积k个连续周期的时间偏差之和,一般k取值5-10周期。

微秒计数器默认步长值Y为1,误差容忍度C=20微秒,每秒采用PID算法计算一次y,也就是按照秒脉冲周期采样计算。 Yn=Y(n-1)+y,Yn为每次微秒计算器步长值,即计数器单位。

每周期的微秒计算器步长值Yn=Y(n-1)+y,通过不停的对Yn进行调整,系统微秒时间不断向实时误差为零的方向变化,直至在S3中测量实时误差Xn小于误差容忍度C;。。

所述Yn为微秒计数器步长值,误差容忍度C为自行设定的参数。因操作系统响应秒脉冲上升沿触发的中断时间具有不确定性,设置误差容忍度C=20微秒为可以接受的误差。

二次监测装置的系统时间是以系统的微秒计数器值为基础来计算的,假如微秒计数器值为1000000,计数器步长值=1uS,时间值=1000000*1=1000000uS=1000mS=1S;如果改变计数步长值=0.9995 uS,时间值=1000000*0.9995=999500uS=999.5mS=0.9995S,即系统时间在缩小步长后在下一周期得到提前;反之也是同理,系统时间在增大步长后在下一周期得到延迟,由此可见,通过改变系统计数器步长值,可以改变系统计时单位基础,从而改变了二次监测装置包括秒以上大时间和微秒小时间的系统时间。

在步骤S4中,所述二次监测装置根据步骤S2和S3对时系统秒级以上大时间信息和修正系统微秒级时间计数器步长值从而对装置系统时间进行整体对时。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

采用本发明所述利用RS232串口精确对时的方法及装置,可以提供串口精确对时,在不增加硬件成本和接口的情况下,利用原有装置硬件串口实现精确对时,具有精度高、兼容性好、可靠性高、实时性好、实用范围广等特点,满足变配电站、发电厂等电力二次监测装置精确对时的要求。

前文所述的为本发明的各个优选实施例,各个优选实施例中的优选实施方式如果不是明显自相矛盾或以某一优选实施方式为前提,各个优选实施方式都可以任意叠加组合使用,所述实施例以及实施例中的具体参数仅是为了清楚表述发明人的发明验证过程,并非用以限制本发明的专利保护范围,本发明的专利保护范围仍然以其权利要求书为准,凡是运用本发明的说明书及附图内容所作的等同结构变化,同理均应包含在本发明的保护范围内。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种提高射频-激光通信系统安全性的天线选择策略

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!