一种实时冗余主站数据同步方法

文档序号:7851992阅读:186来源:国知局
专利名称:一种实时冗余主站数据同步方法
技术领域
本发明涉及工业控制和数据处理,特别涉及一种实时冗余主站数据同步方法。
背景技术
在工业控制现场,为了提高整个系统的可靠性和稳定性,一般都会采用冗余主站技术。冗余的方式分为冷冗余和热冗余两种冷冗余是指备用的主站不会同时运行,甚至可能是以备件的形式存在;热冗余时备用主站和工作主站同时运行;当工作主站出现问题时,备用主站开始介入并接管整个控制权限。在这种切换的过程中,实时数据的同步是比较复杂的问题。对于冷冗余的方式,可能不存在实时数据的同步,备用主站上电运行时,实时数据库处于清除状态,在一个正常的循环周期结束后,实时数据库中的数据变得有效;对于 热冗余的方式,在备用主站切入时,应该保证备用主站的数据库和被切换的工作主站的数据库是同步的。当前对于热冗余的方式,一般采用的是在一个循环的开始或者结束时间点进行同步。这样,两个数据库的差异为一个循环周期。这种方式有一个问题是当切换发生时,当前工作主站的数据可能还没有备份到备用主站,备用主站保存的还是上一个循环的数据,这样导致两个数据库不同步。

发明内容
本发明的目的是针对现有技术中,可能导致工作主站和备用主站实时数据不同步的问题,提出了一种新的实时冗余主站数据同步方法。该方法用于热备冗余数据采集控制系统,能够结合具体的应用层协议,可以有效地解决工作主站和备用主站之间的数据同步问题,从而有效提高系统的不间断运行能力,保证了备用主站数据库的有效性。本发明的具体技术方案如下—种实时冗余主站数据同步方法,其特征在于,包括以下步骤a.实时数据存储在主站上面的实时数据库中;b.工作主站拥有数据总线的控制权,完成对实时数据的采集和数据库的更新操作;c.主站之间有一个即时的同步通道用于数据库的同步操作;d.对于数据库的操作由工作主站的本机指令和外部指令组成,本机指令的数据库更新操作在完成本地数据库操作的同时排队给备用主站;外部指令对数据库的更新操作在成功更新到备用主站后再更新本地主站,然后才进行指令返回。上述方案中,所述主站为数据采集系统中定义有主机和从机的主站;所述主站上工作在主机的部分通过本机指令列表进行数据库的操作;主站上工作在从机的部分通过接收外部的指令进行数据库的操作。上述方案中,所述步骤d中本机指令对数据库的更新操作具体步骤是每条对数据库的更新操作指令,在更新本地数据库的同时,排队更新操作到备用主站的数据库;这种排队操作类似于一种先进先出队列(FIFO),在临界状态下,可能导致最后的指令丢失;为了避免这种缓冲队列引起的指令丢失问题,本机的指令列表顺序需要进行分类。上述方案中,所述对数据库的周期性更新操作指令放在指令列表的最开始;非周期性的更新操作指令(一般由逻辑操作条件产生)紧随其后;其余指令放在最后。上述方案中,所述步骤d中外部指令对数据库的更新操作具体步骤是外部的更新指令可能是非周期性的指令,因此,每条指令的执行成功的前提是确保备用主站上的数据库做了同步更新。所以,对于这种指令,在正常返回前,需要同步更新备用主站上的数据库,并确保更新成功。上述方案中,所述当工作主站检测到有新的备用主站加入时,首先同步本机数据库到备用主站,这个操作也是通过主站间的先进先出队列(FIFO)完成的;当备用主站切换为工作主站时,指令列表需要从头开始执行。 本发明所述数据同步方法把数据库的更新操作进行了分类处理,对于外部触发式的指令能够保证工作主站和备用主站都能同步;对于本地指令列表所产生的数据更新能保证最大化的同步,细化了同步力度,保证了同步的有效性,避免了有效数据的丢失,提高了冗余主站的可靠性。
以下结合附图
具体实施方式
来进一步说明本发明。图Ia为本发明所述方法中主机数据库更新流程图。图Ib为本发明所述方法中从机数据库更新流程图。图2为本发明方法具体运用过程中所涉及的以太网转串口的网络设备的框图。
具体实施例方式为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。本发明所述的一种实时冗余主站数据同步方法,包括以下步骤a.实时数据存储在主站上面的实时数据库中;b.工作主站拥有数据总线的控制权,完成对实时数据的采集和数据库的更新操作;c.主站之间有一个即时的同步通道用于数据库的同步操作;d.对于数据库的操作由工作主站的本机指令和外部指令组成,本机指令的数据库更新操作在完成本地数据库操作的同时排队给备用主站;外部指令对数据库的更新操作在成功更新到备用主站后再更新本地主站,然后才进行指令返回。如图Ia和图Ib所示,主站为数据采集系统中定义有主机和从机的主站;这里主机和从机的定义即通信系统中所定义的主机(Master)和从机(Slave)。主站上工作在主机的部分通过本机指令列表进行数据库的操作;主站上工作在从机的部分通过接收外部的指令进行数据库的操作。对于数据库的操作分为两种类型一种是本机指令列表;另一种是为外部指令。
本机指令对数据库的更新操作;即每条对数据库的更新操作指令,在更新本地数据库的同时,排队更新操作到备用主站的数据库;这种排队操作类似于一种先进先出队列(FIFO),在临界状态下,可能导致最后的指令丢失;为了避免这种缓冲队列引起的指令丢失问题,本机的指令列表顺序需要进行分类。如图Ia所示,具体步骤如下Slll :执行指令列表;SI 12:指令返回;S113 :更新本地数据库;S114 :排队更新操作到备用主站。需要指出的是,对数据库的周期性更新操作指令放在指令列表的最开始;非周期性的更新操作指令(一般由逻辑操作条件产生)紧随其后;其余指令放在最后。外部指令对数据库的更新操作;即外部的更新指令可能是非周期性的指令,因此,每条指令的执行成功的前提是确保备用主站上的数据库做了同步更新。所以,对于这种指令,在正常返回前,需要同步更新备用主站上的数据库,并确保更新成功。如图Ib所示,具体步骤如下S121 :外部数据库更新指令;S122 :更新本地数据库;S123 :更新备用主站数据库;S124:指令返回。另外,当工作主站检测到有新的备用主站加入时,首先同步本机数据库到备用主站,这个操作也是通过主站间的先进先出队列(FIFO)完成的;当备用主站切换为工作主站时,指令列表需要从头开始执7TT。以下通过一个具体实施例来说明本发明方法的实现过程。如图2所示,这是本发明方法具体实施在以太网转串口的网络设备上的一个例子。该实施例中,第一通讯控制器201和第二通讯控制器202为相同的以太网转串口控制器,上行连接2路工业以太网210和DCS控制器203相连;下行有多路现场RS485总线211连接若干个现场设备(204,205,206)。控制器之间通过工业以太网交换数据。控制器中可以运行多种协议,下面以modbus协议为例详述本发明所述数据同步方法。对于上行以太网,控制器可以作为主机(Master)或者从机(Slave)运行,当运行为从机时(Modbus-TCP以Server方式运行),DCS控制器发送数操作指令给通讯控制器,该指令如果为数据库更新指令,那么要等到两个通讯控制器都执行该指令后才会返回。当运行为主机时(Modbus-TCP以Client方式运行),对数据库的更新指令为本机指令,更新操作通过以太网排队到另外一个通讯控制器。对于下行的RS485网络,控制器作为主机(Master)运行。对现场设备的操作通过指令列表进行,指令列表开始部分为查询现场设备的状态数据,得到的数据会更新数据库;指令列表的下半部分为现场设备的操作指令,这些指令从数据库中获取数据。对数据库的更新操作通过以太网排队到另外一个通讯控制器。当一台通讯控制器重新启动,加入冗余网络时,当前正在工作的通讯控制器立即更新全部实时数据库到新加入的通讯控制器。以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术、人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内 。本发明要求保护范围由所附的权利要求书及其等效物界定。
权利要求
1.一种实时冗余主站数据同步方法,其特征在于,包括以下步骤 a.实时数据存储在主站上面的实时数据库中; b.工作主站拥有数据总线的控制权,完成对实时数据的采集和数据库的更新操作; c.主站之间有一个即时的同步通道用于数据库的同步操作; d.对于数据库的操作由工作主站的本机指令和外部指令组成,本机指令的数据库更新操作在完成本地数据库操作的同时排队给备用主站;外部指令对数据库的更新操作在成功更新到备用主站后再更新本地主站,然后才进行指令返回。
2.根据权利要求I的实时冗余主站数据同步方法,其特征在于,所述主站为数据采集系统中定义有主机和从机的主站;所述主站上工作在主机的部分通过本机指令列表进行数据库的操作;主站上工作在从机的部分通过接收外部的指令进行数据库的操作。
3.根据权利要求I的实时冗余主站数据同步方法,其特征在于,所述步骤d中本机指令对数据库的更新操作具体步骤是每条对数据库的更新操作指令,在更新本地数据库的同时,排队更新操作到备用主站的数据库;这种排队操作类似于一种先进先出队列,在临界状态下,可能导致最后的指令丢失;为了避免这种缓冲队列引起的指令丢失问题,本机的指令列表顺序需要进行分类。
4.根据权利要求I的实时冗余主站数据同步方法,其特征在于,所述对数据库的周期性更新操作指令放在指令列表的最开始;非周期性的更新操作指令紧随其后;其余指令放在最后。
5.根据权利要求I的实时冗余主站数据同步方法,其特征在于,所述步骤d中外部指令对数据库的更新操作具体步骤是外部的更新指令可能是非周期性的指令,因此,每条指令的执行成功的前提是确保备用主站上的数据库做了同步更新。所以,对于这种指令,在正常返回前,需要同步更新备用主站上的数据库,并确保更新成功。
6.根据权利要求I的实时冗余主站数据同步方法,其特征在于,所述当工作主站检测到有新的备用主站加入时,首先同步本机数据库到备用主站,这个操作也是通过主站间的先进先出队列完成的;当备用主站切换为工作主站时,指令列表需要从头开始执行。
全文摘要
本发明公开了一种实时冗余主站数据同步方法,包括以下步骤a.实时数据存储在主站上面的实时数据库中;b.工作主站拥有数据总线的控制权,完成对实时数据的采集和数据库的更新操作;c.主站之间有一个即时的同步通道用于数据库的同步操作;d.对于数据库的操作由工作主站的本机指令和外部指令组成,本机指令的数据库更新操作在完成本地数据库操作的同时排队给备用主站;外部指令对数据库的更新操作在成功更新到备用主站后再更新本地主站,然后才进行指令返回。该方法用于热备冗余数据采集控制系统,能够结合具体的应用层协议,可以有效地解决工作主站和备用主站之间的数据同步问题,有效提高系统的不间断运行能力,保证了备用主站数据库的有效性。
文档编号H04J3/06GK102710356SQ201210165110
公开日2012年10月3日 申请日期2012年5月25日 优先权日2012年5月25日
发明者周明, 王可中 申请人:周明, 王可中
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1