
冗余切换控制方法及电路的制作方法.docx
7页冗余切换控制方法及电路的制作方法专利名称:冗余切换控制方法及电路的制作方法技术领域:本发明涉及自动化控制领域中冗余系统中的切换,尤指冗余切换中的控制方法及电路背景技术: 一般的说,在工业自动化领域,对主控制模块或者重要的模拟量输入输出模块进行冗余配置,以降低故障风险,增加系统的可靠性通常,这些模块(即逻辑对象)采用了一个以上的中央处理器(CPU)这样,逻辑对象出现异常状态时,如有必要,可以在中央处理器的控制下进行正反逻辑状态切换,以保证控制任务的连续性通常构建集散控制系统(DCS)中的两个主控制模块或者输入输出(I/O)模块的冗余系统时,需要对冗余切换进行控制这样,处于工作状态的一个主控模块或者输入输出(I/O)模块发生故障、热复位、掉电等状态时,可以引发快速冗余切换,保证控制任务的连续性目前已知的冗余切换控制方法中,当互为冗余的两个逻辑对象同时上电时,通过设定一个定时器的方式来确定逻辑对象的逻辑状态,用这种方法必须考虑逻辑对象的复位时间问题,一个典型的复位芯片的复位脉冲在30~400ms,这样,这个定时器时间必须大于400ms,才能确定逻辑对象的正反逻辑状态,相关专利文献请参考公开号为CN 1275000A的中国专利申请。
当处于正逻辑状态的逻辑对象出现异常时,目前现有的冗余切换控制方法中,通常都进行了冗余切换,这样,如果在切换之前当处于反逻辑状态的逻辑对象出现严重故障,而处于正逻辑状态的逻辑对象只是轻度故障时,就产生了一次不应该进行的冗余切换在某些场合,需要按照用户的要求进行手动的冗余切换此外,当处于正逻辑状态的逻辑对象突然断电或者复位时,处于反逻辑状态的逻辑对象需要快速的接过控制权,继续执行控制任务总的来说,现有的冗余方法存在如下的一些缺点1.互为冗余的两个逻辑对象同时上电时,逻辑状态的确定时间较长;2.没有按照故障程度,进行故障条件下的冗余切换;3.没有实现手动的冗余切换;4.没有涉及处于正逻辑的逻辑对象断电和复位情况下的逻辑状态的确定发明内容本发明解决的问题是提供一种冗余切换控制方法及电路,使冗余系统按照逻辑对象的故障程度,进行故障条件下的冗余切换本发明解决的第二个问题是提供一种冗余切换控制方法及电路,使冗余系统在逻辑对象出现故障、复位及掉电情况下,快速确定逻辑对象的逻辑状态本发明解决的第三个问题是提供一种冗余切换控制方法及电路,使冗余系统响应手动切换为解决上述问题,本发明冗余切换控制方法包括以下步骤1)检测到正逻辑状态的逻辑对象A出现异常状态;2)逻辑对象A将表示自身出现异常状态的信号发送给另一个逻辑对象B;3)另一个逻辑对象B获悉逻辑对象A出现异常状态,进行逻辑对象B的故障检测,并根据自身的故障程度确定逻辑状态;4)逻辑对象A根据逻辑对象B的逻辑状态,进行故障程度比较,再次确定自身的逻辑状态;5)根据需要重复步骤1)-4)直到将故障程度较轻的逻辑对象确定为正逻辑状态。
逻辑对象故障检测结果分成两级或者两级以上的故障程度,并根据时序的不同,用逻辑对象的逻辑状态值表示逻辑对象的掉电状况列入故障状况进行处理步骤4)进一步包括如下步骤4-1)逻辑对象A延时等待;4-2)读取逻辑对象B逻辑状态4-3)判断逻辑对象B与逻辑对象A的表示逻辑状态的逻辑值是否相同;4-4)如果不同,则逻辑对象B的故障程度低于逻辑对象A的故障程度,将逻辑对象A确定为反逻辑状态;4-5)如果相同,逻辑对象A对自身的故障程度进行判断,并再次确定逻辑状态;4-6)判断逻辑对象A与逻辑对象B的表示逻辑状态的逻辑值是否相同,4-7)如果不同,则逻辑对象A的故障程度低于或者等于逻辑对象B的故障程度,将逻辑对象A确定为正逻辑状态;4-8)如果相同,则重复步骤4-1)至4-7)直至完成逻辑对象A逻辑状态的确定步骤3)具体包括如下步骤3-1)响应逻辑对象A的状态改变并进行故障检测;3-2)逻辑对象B根据故障程度确定逻辑状态;3-3)如果逻辑对象B为正逻辑状态,并通知逻辑对象A;3-4)如果逻辑对象B为反逻辑状态,逻辑对象B开始延时等待;3-5)逻辑对象B再次判断逻辑对象A的逻辑状态;3-6)如果逻辑对象A处于正逻辑状态,逻辑对象B确定为反逻辑状态;3-7)如果逻辑对象A处于反逻辑状态,则重复步骤3-1)至3-6)直至完成逻辑对象B逻辑状态的确定。
该方法还包括复位时逻辑对象逻辑状态确定流程,该流程包括逻辑对象同时复位流程及一个逻辑对象复位流程逻辑对象同时复位流程包括以下步骤1)逻辑对象都处于复位状态;2)一个逻辑对象率先结束复位状态,并把该逻辑对象确定为正逻辑;3)通知另一个逻辑对象,并确定另一逻辑对象为反逻辑一个逻辑对象复位流程包括以下步骤1)处于正逻辑状态的逻辑对象A复位,改变逻辑状态值,并通知逻辑对象B;2)逻辑对象B的复位判断;3)如果逻辑对象B处于复位状态,则此时两个逻辑对象同时在复位,按照逻辑对象同时复位流程确定逻辑状态;4)如果逻辑对象B不处于复位状态,两个逻辑对象进行正反逻辑切换此外,该方法还包括手动切换流程,该流程包括以下步骤1)逻辑对象在接收到上位机发送的正反逻辑切换命令;2)处于正逻辑状态的逻辑对象A立即确定为反逻辑状态,并通知逻辑对象B;处于反逻辑状态的逻辑对象B逻辑对象A的状态改变,进行延时等待;3)逻辑对象B再次检测到逻辑对象A为反逻辑状态,则确定自身为正逻辑状态相应地,本发明冗余切换控制电路包括一组与非逻辑电路和中央处理器,与非逻辑电路分别对应逻辑对象,具有三个输入端第一个输入端传输控制信号,由中央处理器控制;第二个输入端传输复位信号,由逻辑对象的复位芯片控制,逻辑对象复位时,相应的第二个输入端为低电平;第三个输入端传输状态信号,与相对逻辑对象与非逻辑电路的输出端相连,该第三个输入端为低电平时,表示相对逻辑对象处于或即将处于正逻辑状态;第三输入端同时连接各自对应中央处理器的一个外中断输入端,快速响应逻辑对象的逻辑状态改变。
与现有技术相比,本发明具有以下优点从以上的分析中可以看到,本发明的优点是1.能够快速确定逻辑对象的正反逻辑状态;2.根据故障等级进行正反逻辑切换;3.能快速确定两个逻辑对象同时上电时的逻辑状态;4.实现基于手动控制的正反逻辑切换;5.两个逻辑对象在同时启动之前是完全对等的关系;6.具有正反逻辑状态锁定功能;7.实现正反逻辑切换的逻辑电路简单,实现成本低廉图1是本发明冗余切换控制电路示意图图2是两个逻辑对象同时复位时逻辑状态的确定流程图图3是处于正逻辑的对象复位之后逻辑状态的确定流程图图4是处于正逻辑的对象出现故障之后逻辑状态的确定流程图图5是处于正逻辑的逻辑对象出现故障之后的正反逻辑确定时序的示意图图6是处于正逻辑的逻辑对象A出现故障时,逻辑对象A的逻辑状态的确定流程图图7是处于正逻辑的逻辑对象A出现故障时,逻辑对象B的逻辑状态的确定流程图图8是本发明冗余切换控制方法的整体流程图图9是本发明冗余切换控制方法的中断流程图具体实施例方式请参照图1所示,本发明冗余切换控制电路示意图该逻辑电路主要由一组与非逻辑电路和中央处理器组成,实现两个逻辑对象A、B的逻辑状态信息的交换、逻辑状态的互锁功能。
本实施例中采用2个与非逻辑电路作为示意性说明,与非逻辑电路1、2分别对应逻辑对象A、B,具有三个输入端,第一个输入端CON1、CON2传输控制信号,由中央处理器CPU1、CPU2控制;第二个输入端RST1、RST2,传输复位信号,由逻辑对象A、B的复位芯片控制,逻辑对象A、B复位时,相应的RST1、RST2为低电平与非逻辑电路1的第三个输入端STDBY1传输状态信号,与逻辑对象B的与非逻辑电路2的输出端WORK2相连,STDBY1为低电平时,表示逻辑对象B处于或即将处于正逻辑状态;与非逻辑电路1的输出端WORK1与逻辑对象B的与非逻辑电路2的第三个输入端STDBY2相连接,同样地STDBY2为低电平时,表示逻辑对象A处于或即将处于正逻辑状态本实施例中,正逻辑状态是指相应的逻辑对象输出端WORK1、WORK2的低电平,表示处于工作状态无故障状态,而反逻辑状态是指相应输出端为高电平,表示相应的逻辑对象处于备用状态、故障状态在有故障状况时,无故障为正逻辑而有故障为反逻辑或轻度故障为正逻辑而严重故障为反逻辑为了使中央处理器CPU1、CPU2能快速响应逻辑对象B、A从正逻辑变为反逻辑的状态改变,STDBY1、STDBY2同时连接CPU1、CPU2的一个外中断输入端INT1、INT2。
逻辑对象A的STDBY1在逻辑对象B掉电的情况是保持恒定的高电平状态,同样地适用逻辑对象B的STDBY2在逻辑对象A掉电的情况假设一个逻辑对象的输入为高电平,该逻辑对象的与非逻辑电路输出低电平,该输出与另一个逻辑对象的与非逻辑电路的一个输入端相连接,使得另一个逻辑对象的与非逻辑电路输出为高电平,表明该逻辑对象确定为反逻辑状态,实现正反逻辑的锁定,即逻辑状态互锁功能本发明适用于逻辑对象在出现故障、复位、掉电及手动切换等情况下,对冗余切换进行控制,并快速确定逻辑对象的逻辑状态其中,逻辑对象的复位,包含两个方面冷启动,指逻辑对象从断电的状态到上电的状态,且一般的情况下断电的时间大于15秒左右;热启动,指逻辑对象突然断电,之后在很短的时间(如,小于15秒)重新上电的情况关于逻辑对象的故障情况,一般说来,逻辑对象按照一定的周期(如100ms)对自身的故障循环进行检测,继而基于故障检测的基础上进行逻辑状态的确定在本实施例中,把掉电(掉电,即逻辑对象断电)也列入故障情况,一并处理关于手动切换,在某些场合,如当人为的发现自动故障检测没有检测到的逻辑对象的故障时,此时需要手动强制切换功能所述手动切换在本发明中具有最高优先级别。
请参照图8、9所示,本发明冗余切换控制方法主要包括以下流程1.复位时正反逻辑的确定流程S802,在逻辑对象复位(冷启动/热启动)时产生作用;2.故障时正逻辑对象的正反逻辑确定流程S805,对处于正逻辑的逻辑对象起作用;3.故障时反逻辑对象的正反逻辑确定流程S903,对处于反逻辑的逻辑对象起作用其中,后两个流程S805、S903是相互配合的首先是处于正逻辑的逻辑对象发生故障,进入故障时正逻辑对象的正反逻辑确定流程S805;然后,处于反逻辑状态的逻辑对象通过中断响应的方式,快速的进入故障时反逻辑对象的正反逻辑确定流程S903本发明冗余切换控制方法的整体步骤如下1)执行步骤S801,逻辑对象复位;2)执行步骤S802,按照复位时正反逻辑的确定流程确定逻辑状态,逻辑对象完成复位后允许中断;3)执行步骤S803,进行故障检测,针对正逻辑状态的逻辑对象进行故障检测;4)执行步骤S804,逻辑对象有无故障判断;5)若有故障,则执行步骤S805,按照故障时正逻辑对象的正反逻辑确定流程确定逻辑状态;6)执行步骤S806,逻辑对象的其它运行任务或者等待;7)返回步骤S803,重复步骤S803~S806处于正逻辑的逻辑对象出现故障时的反逻辑对象的正反逻辑状态的确定流程1)执行步骤S901,获知正逻辑对象发生故障,反逻辑对象进入中断;2)执行步骤S902,反逻辑对象进行故障检测;3)执行步骤S903,按照故障时反逻辑对象的正反逻辑确定流程确定正反逻辑状态;4)执行步骤S904,退出中断。
1.复位时正反逻辑的确定流程S802包括逻辑对象同时复位流程及一个逻辑对象复位流程下面针对冷启动及热启动情况,分别叙述1.1两个逻辑对象同时冷启动时正反逻辑状态的确定主要步骤如下1)逻辑对象都处于复位状态;2)一个逻辑对象率先结束复位状态,并把该逻辑对象确定为正逻辑;3)通知另一个逻辑对象,并确定另一逻辑对象为反逻辑请参阅图1、图2,当两个逻辑对象同时上电时,逻辑对象A、B都处于复位状态(执。
