对开关输入信号跳变时序进行记录的方法技术

技术编号:7760217 阅读:175 留言:0更新日期:2012-09-14 03:31
本发明专利技术公开了一种对开关输入信号跳变时序进行记录的方法,具体步骤如下:(1)采样开关输入信号值;(2)将采样值与SOE状态值进行比较运算,判断是否发生跳变;(3)判断是否为稳定跳变;(4)查找出该稳定跳变的首次跳变记录并记录;(5)计算稳定时间,并比较稳定时间与滤波周期的大小;(6)查找首次跳变;(7)查找到首次跳变记录后记录跳变时刻;(8)处理所有跳变状态,退出程序。本发明专利技术通过设计一种对开关输入信号跳变时序进行记录的方法采用高分辨率的采样周期,解决了开关输入信号跳变时间短、硬件滤波成本高,可靠性差、不易测试的问题,特别是可对多路开关输入信号同时进行采样记录时,有效提高了检测速度。

【技术实现步骤摘要】

本专利技术属于工也控制领域,特别是涉及对开关输入信号跳变时序的记录领域。
技术介绍
SOE (Sequence Of Event)事件顺序记录,记录故障发生的时间和事件的类型,比如某开关某时某分某秒某毫秒发生什么类型的故障,是故障和系统异常分析的主要依据。开关输入信号主要应用在工业控制领域中,无论是在压力还是电量的控制方面都有广泛的应用。开关输入信号只有“开”和“关”两种状态,没有信号大小、方向之分,如果 开关量在信号输入时发生跳变,将会对整个受控设备产生很大影响,严重的会将致使整个控制系统瘫痪,造成人身伤亡,对工业流程造成很大的损失。开关输入信号的跳变时间很短、多路并发,是发生在一瞬间的事件,跳变时序不易记录,本专利技术通过SOE算法高速对数据进行采样,并对采样数据记录、存储历史状态,存储时间大于噪声滤波宽度,从历史记录中查找有效的跳变信号,滤除噪声等无效的跳变沿,精确开关输入信号的跳变时序并记录。
技术实现思路
本专利技术针对现有技术中存在的开关输入信号跳变事件短,多路并发,硬件滤波成本高、准确性差,不易记录跳变时序的问题,本专利技术通过设计一种,通过高频率采样得到开关输入信号的跳变信息,解决了开关输入信号跳变时间短、不易测试和记录的问题,而且得到的数据精度较高。实现上述专利技术目的的本专利技术的技术方案为,一种,其具体步骤如下 (1)采样开关输入信号值DINewSts,即采样值; (2)将采样值DINewSts与SOE状态值DISOESts进行异或比较运算,DUUMP = DINewSts ADISOESts^当DIJUMP值为I时,发生跳变,执行步骤(3);否则继续采样;这里的DIJUMP是跳变记录值; (3)将跳变记录DIJUMP存入跳变缓冲区DIChangeRecord,依据DDUMPk &DUUMPk] &DIIUMPt2 &--■&DUUMPi &DnUMPtl = 0作与运算的结果判断该跳变记录是否为稳定跳变,这里DljUMPfDIjUMPH是从k时刻向前至i_l时刻的跳变记录值,如果为稳定跳变,通过该公式查找到首次稳定跳变时刻i,并进入步骤(4)S0E事件处理流程;否则对下一个跳变记录利用该公式进行判断; (4)用当前所在的稳定跳变时刻k与首次稳定跳变时刻i作减法运算T=k-i,得到一个稳定时间T ; (5)比较所得的稳定时间T与滤波周期TMETICK的大小,若T不小于滤波周期TMETICK,则进入步骤(6)查找首次抖动跳变时刻jsta ;若T小于滤波周期TMETICK,则判断下一个稳定时刻重复步骤(4)和步骤(5);(6)从上一个滤波周期的j时刻开始,这里j=i_TMETICK,至时刻i之间的每个跳变记录作加&DUDlvIPj > 0运算,加 值为所有稳定跳变记录作与运算,即DnUMPlt ADUUMPk4 &DUDMPk.2=声—3£2^所得的结果,如果运算结果成立,则判定该j时刻为首次抖动跳变发生的时刻;如果运算不成立,判断j的下一个时刻的跳变记录,直至时刻i,若直至跳变时刻i均未发生抖动跳变,则将时刻i视为首次跳变发生的时刻,将i时刻的记录作为首次跳变记录并进入步骤(8); (7)若在j时刻或j与i的中间某时刻找到首次抖动跳变记录,则不用继续查找,进入步骤(8); (8)查找到第一次跳变记录后,通过公式DISOESts= DISOESts ~ DIJump更新稳定跳变后的开关信号状态值,并将查找到的时刻存入SOE缓存中,并将所有跳变记录清除,退出程序。 进一步的,通过所述步骤(6)查找首次抖动跳变记录时,查找完抖动阶段所有时刻仍未查找到首次跳变记录,通过公式^(~DIJUMPj)即判断值与DIJump的逆值作与运算所得的值是否为零,若值为零,说明抖动阶段无跳变,稳定跳变的首次跳变记录即为首次跳变不为零,则进入步骤(6)继续查找。本专利技术查找完抖动阶段所有时刻后的进一步判断,使整个查找程序更为完整,更为严谨。优选的,所述采样周期为200辦。优选的,所述滤波周期为5ms。采样周期小于滤波周期,保证采样得到的数据的精确度,使得采样得到的数据与实际发生的事件误差最小,保证所记录的跳变时序的准确性。开关输入信号的跳变是瞬间发生的事件,开关输入信号的跳变时序很难精确的得到并记录,本专利技术利用SOE算法采用高分辨率的采样周期采样,能精确得到并准确的记录开关输入信号的跳变时序,解决了开关输入信号跳变发生时间短、时序不易测试的问题,同时可针对多路开关输入信号同时进行采样记录,而且本专利技术方法采用纯软件,减少了硬件滤波的成本。附图说明图I为本专利技术流程 图2为本专利技术判断稳定跳变及查找首次稳定跳变的实施例; 图3本专利技术查找首次跳变记录的实施例; 图4本专利技术开关输入信号多条通道跳变实施例; 图5本专利技术开关输入信号清除跳变记录后的状态实施例。具体实施例方式为便于对本专利技术技术方案的理解,下面结合附图来详细描述本专利技术的记录过程。本专利技术是一种,如图I所示,其具体步骤如下 (1)以200蜱的采样周期读取最新的开关输入信号值即DI值DINewSts,DINewSts即采样值; (2)将采样值DINewSts与SOE状态值DISOESts进行异或比较运算,DUUMP = DINewSts ADISOESts^判断本次跳变结果,当DIJUMP值为I时,发生跳变,执行步骤(3);否则继续采样;这里的DIJUMP是跳变记录值; (3)将跳变记录DIJUMP存入跳变缓冲区DIChangeRecord,依据DUUMPk &DmJMPh4 &DnilMP^2 DIJTJMPi &DITUMPtl 二 0作与运算的结果判断该跳变记录是否为稳定跳变,这里DIJUMPk…DIJUMPh是从k时刻向前至i_l时刻 的跳变记录值,程序中将所有稳定时刻跳变记录作与运算的值记录为DIChangeStsOld,DIChangeStsOld与前一时刻的运算值记为DIChangeSts ,如果为稳定跳变,通过该公式查找到首次稳定跳变时刻i,并进入步骤(4) SOE事件处理流程;否则对下一个跳变记录利用该公式进行判断; (4)用当前所在的稳定跳变时刻k与首次稳定跳变时刻i作减法运算T=k-i,得到一个稳定时间T ; (4)比较所得的稳定时间T与滤波周期TMETICK的大小,滤波周期TMETICK为5ms,为稳定时限3. 8ms和程序运行时间的总和,若T不小于滤波周期TMETICK,则进入步骤(6)查找首次抖动跳变时刻jsta ;若T小于滤波周期TIMETICK,则判断下一个稳定时刻重复步骤(4)和步骤(5); (6)从上一个滤波周期的j时刻开始,这里j=i_TMETICK,至时刻i之间的每个当前时刻跳变记录DIJUMP与DIChangeStsOld作与运算,如果运算结果成立大于零,则判定该j时刻为首次抖动跳变发生的时刻;如果运算等于零,判断j的下一个时刻的跳变记录,直至时刻i,若直至跳变时刻i均未发生抖动跳变,则将时刻i视为首次跳变发生的时刻,将i时刻的记录作为首次跳变记录并进入步骤(8); (7)若在j时刻或j与i的中间某时刻找到首次抖动跳本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:樊红斌
申请(专利权)人:北京新航智科技有限公司
类型:发明
国别省市:

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

1