用于运行冗余自动化系统的方法与流程

文档序号:11803572阅读:177来源:国知局
用于运行冗余自动化系统的方法与流程
本发明涉及一种用于运行具有至少两个子系统的自动化系统的方法,该子系统分别具有控制程序,其中,为了将其中一个子系统的单机模式的过程控制转换为具有另一个子系统的冗余控制模式,在自动化系统的更新阶段的范围中将其中一个子系统的相关数据传输给另一个子系统。另外,本发明还涉及一种适用于执行该方法的冗余自动化系统。

背景技术:
在自动化领域中,越来越需要可支配性高的、适用于将设备的可能出现的停止状态时间减小到最小的解决方法(H-系统)。这种可支配性高的解决方法的研发的费用非常高昂,其中,通常使用在自动化领域中的H-系统的特征在于,两个或多个自动化设备或计算机系统形式的子系统通过同步连接相互连接在一起。这两个子系统原则上能够读取地和/或写入地访问连接在这个H-系统上的外围设备单元。两个子系统中的一个子系统在连接在系统上的外围设备方面是主要的。这指的是:到达外围设备单元的输出内容或用于这些外围设备单元的输出信息仅仅由这两个子系统中的一个子系统来执行,这个子系统作为主机进行工作或承担着主机功能。这两个子系统通过同步连接在规定的间隔下进行同步,以使得这两个子系统可以同步地运行。在同步的频率和同步的范围方面,可以区分出不同的模式(暖备份,热备份)。一旦子系统中的一个出现故障并且必须转换到另一个子系统上时,H系统通常需要一个平稳的“失效备援(Failover)”,由此,该另一个子系 统在所谓的单机模式或非冗余模式中承担过程控制任务。这意味着:尽管在从一个子系统到另一个子系统的这种非计划的转换或这种非计划的切换的情况下,这种转换或这种切换并不会对待控制的技术过程或过程控制产生干扰。在此,允许在被连接的外围设备的输出端上出现(短暂的)停机时间,在该停机时间期间,该输出端保持在其上一个有效的过程输出值上。然而,并不期望并且由此应该避免在这个输出端上由于转换而出现值的跳跃(突发情况)。没有突发情况由此也被理解成过程输出值的曲线变化的连续性。为了实现上述设置,两个子程序在出现故障的时间点时必须具有相同的系统状态。这通过适合的同步方法来确保。当两个子系统对过程的输入信息(输入)进行处理时,那么当两个系统(在相同的过程输入数据或过程输入信息的情况下)以相同的方式改变其各自的“线程全局(thread-globalen)”数据(程序的、尤其是不同优先级的程序的共用的数据)时,这两个系统则处在相同的系统状态下。为了实现这个设置,同步方法要确保以相同的方法和方式中断或处理两个子系统的各自单独的线程。由此获得了相同的“线程山(Threadgebirge)”。另外,还必须确保在从单机的或非冗余的模式中将过程控制转换为冗余模式的过程中,例如,在更换完发生故障的子系统之后,要设法平稳地实现这种转换或者说这种过渡。在这种传输的范围中,需要将相关数据从迄今为止主导过程的子系统传输到新的或额外地连接的或接通的子系统上。在这个被称为连接和更新的传输的过程中,在所谓的连接阶段和更新阶段(AuA阶段)中不允许对待控制的技术过程或者说过程控制产生干扰影响,过程控制在这个AuA阶段(在下文中出于简明的原因称为更新阶段)期间不受干扰地继续进行。在2011版的西门子目录的第六章节的ST70中公知了一种由两个子系统构成的冗余自动化系统,该系统被设置用于,提高受控制的设备的可支配性。通过以下方法和方式设法实现更新,即,逐步地传输数据,其中, 首先检测在单机模式下运行的子系统的、存储在数据区域中的值是否不同于新的待写入的值。一旦这些值不相同的话,那么将设置所谓的“脏位(Dirty-Bit)”,这表明,这个数据区域的数据应被传输给另一个子系统。如果所有数据均被传输的话,那么自动化系统在冗余模式下工作。其缺点在于:这个数据区域的数据代表的是高动态数据,在更新阶段结束时无法没有突发情况地实现转变(“更新突发情况(Aufdatstoβ)”),这是因为在单机模式下工作的子系统必须被中止并且过程控制必须被短暂地停止。

技术实现要素:
本发明由此基于以下目的,即,提供一种如开头所述类型的方法,借助该方法简化更新。另外,实现一种适用于执行该方法的冗余自动化系统。有利的是:能够放弃费用高昂的“脏位机构(Dirty-Bit-Mecha-nismus)”。在更新阶段开始时,在单机模式下工作的子系统(下文中称为主机)创建其相关数据的副本,该相关数据代表的是在这个更新阶段开始时主机的内部状态,其中,这些数据被以分段的方式传输给“待更新的”或新接入的子系统(下文中称为辅机或备用系统)。这种内部状态主要通过静态的和动态的数据、数据模块、过程输入值和过程输出值、以及配置数据来确定或者说预先给定。最后,辅机将通过释放信息(Freigaben)逐步地并且与实际的由主机进行的控制程序的处理时间同步地接近主机的内部状态,其中,辅机只有在它完全获得副本时才开始处理该释放信息。辅机在设定完释放信息之后利用相关数据在时间上延迟地经过主机已经过的相同的程序路径。这意味着:在程序处理或运行方面,主机在时间上先于辅机运行或者说辅机在时间上晚于主机运行。“晚于运行(Nachlauf)”或“先于运行(Vorauslauf)”在此理解为通过主机进行的处理段的处理开始和通过辅机进行的相应的处理段的处理开始之间的时间差,这相应于释放信息或者说释放信号出现的时间点。另外需要指出:程序既被理解成那样的程序,也被理解成子程序、程序部分、任务、线程、组织模块、功能 模块或其它的适用于实现自动化功能的程序码,其中,自动化系统的程序通常被划分为多个优先级并且根据其被分配的优先性来运行或者说实施。在辅机弥补了该延后或延迟或这个延迟超过待预先给定的或已预先给定的且被视作为非极限的时间周期或可容忍的值的时间点时,更新阶段结束并且自动化系统自该时间点起在冗余运行模式下进行工作。在过程控制方面,主机由此从单机模式转换到带有辅机或备用系统的冗余模式中,其中,自这个时间点开始,主机和辅机基于例如过程警报形式的事件而优选地时间同步地经过相同的程序路径。在以这种方式时间同步地经过的程序路径方面,参考在先的欧洲专利申请12166006.2,其整个公开内容应作为本申请的组成部分。当然也可以这样设计自动化系统,即,在更新阶段之后或者说在更新之后实现程序路径的时间同步的处理。基于在主机和辅机之间的时间同步的通信,在更新阶段期间也能够使用缓慢的通信连接。这意味着也可以设置一个本身在传输带宽或应答时间方面不好的通信连接,或设置一个也被其它通信参与者所使用并且由此不专门地提供给连接和更新过程使用的通信连接。由此可以放弃独立的同步连接。另外,还能够在不通过高信号传输时间或高恢复时间过分地恶化系统功率的情况下克服两个子系统之间的大的间距。在本发明的一个设计方案中提出,将过程输入值与释放信息一起传输给另一个子系统。用于另一个子系统的相关的信息首先被概括或集中并且最后被传输给另一个子系统。由此减小了两个子系统的“管理费用”。附图说明下面根据示出了本发明的一个实施例的视图来进一步阐述本发明、其设计方案以及优点。图中示出:图1示出了两个子系统的时间同步连接的过程;图2示出了更新过程;以及图3示出了冗余自动化系统。在图1至图3中的相同的部分以相同的参考标号示出。具体实施方式首先参考图3,其中示出了公知的、包括两个子系统的冗余自动化系统。第一子系统Ta和第二子系统Tb通过现场总线Fb与外围设备Pe相连接。在此,现场总线Fb例如符合PROFIBUS-DP-标准。原则上,其它总线系统,例如以太网、现场总线,modbus协议,ProfiNetIO或还有并行总线系统也都适用。外围设备单元Pe通过输入导线Es从用于检测过程状态的测量变换器或测量值传感器中获得信号,并且通过输出导线As将信号提供给用于影响过程的控制元件。出于清楚的原因,该图中没有示出过程以及测量变换器、测量值传感器和控制元件。两个子系统Ta,Tb周期性地和同步地运行相同的控制程序。为了它们的同步设置了同步连接Sv,其中,通过这个同步连接Sv实现了冗余功能和监控功能。如所描述的那样,从更新阶段结束的那个时间点开始,自动化系统在冗余运行模式下工作,并且在过程控制方面,一个子系统从单机模式转换为具有另一个子系统的冗余模式。从这个时间点开始,例如,基于过程报警形式的突发事件,两个子系统突发事件同步地经过相同的程序路径,其中,借助主机进行的过程(Durchlauf)和借助辅机进行的过程优选地时间上不同步地进行。为了阐述控制程序的事件同步处理以及为了更好地理解本发明,下面将参考图1,其中示出了在先的欧洲专利申请12166006.2中所提出的、时间上不同步地连接两个子程序的过程。“事件同步的处理”在此指的是无论是主机还是辅机都基于一个事件经过各个控制程序的相同的程序路径,其中,在时间上不同步地实现该过程。假设一个子系统作为主机M而另一个子系统作为辅机S或作为备用系统运行。主机M由此在控制技术过程方面是主要的并且承担过程控制任务,其中,主机从外围设备单元Pe(图3)中读取过程输入信息或者说过程输入值并且时间上不同步地提供给辅机S。只有一旦主机M基于干扰出现故障的时辅机S才承担主机功能或者说主控权(Masterschaft)。主机M对用于控制技术过程的程序P1进行处理,其中,辅机S也对这个与控制程序P1相应的程序P2进行处理。两个控制程序P1,P2具有持续时间不同的多个处理段(Va),其中,控制程序P1,P2在每个处理段Va每次开始和每次结束时被中断。通常包括多个程序码的每个处理段Va的开始和结束由此代表了可中断的程序点或中断点0,1,2,…y。在这些点0,1,2,…y上,可以在需要时借助主机M和辅机S中断各个控制程序P1,P2,以便在出现事件或过程警报之后能够作出适合的应对。另外,在这些中断点0,1,2,…y上可以中断每个控制程序P1,P2,由此使得主机M和辅机S可以通过现场总线Fb或通过同步连接Sv交换释放信息、应答信息或其它信息。在经过各个待预先给定的或已被预先给定的时间间隔Zi,i=1,2,…之后并且在到达经过各个时间间隔Zi之后出现中断点(优选的是紧接着各个时间间隔Zi的第一个中断点)的每个时间点时,主机M将释放信息或释放信息信号传输给辅机S,该释放信息信号告知辅机S直到哪个处理段Va才允许辅机S对控制程序P2进行处理。控制程序P2的这些处理段Va相应于主机M在处理控制程序P1的过程中已经处理过的那些处理段。在本实施例中假设:在经过时间间隔Z1到达时间点t1和到达时间点t2(在该时间点上第一中断点P1_6(中断点6)出现在时间 间隔Z1之后)时,主机M向辅机S传输释放信息F1。这个释放信息F1包括用于辅机S的信息,即允许该辅机处理它的待处理的控制程序P2直至到达中断点P2_6(中断点6)为止,其中,控制程序P1的中断点P2_6与控制程序P1的中断点P1_6相应。这意味着:基于该释放信息,辅机S能够对控制程序P2的处理段Va进行处理,这些处理段相应于控制程序P1的、直至到达产生释放信息或释放信息信号的时间点处的处理段Va,其中,在该实例中出于简明性的原因而假设:产生释放信息的时间点相应于向辅机S传输释放信息的时间点。也就是说,借助辅机S实现的这个处理段Va的处理在时间上不与借助主机M对相应的处理段Va进行的处理同步,其中,在通过辅机S处理完控制程序P2的处理段Va之后,当主机M向辅机S传输另一个释放信息时,才能利用辅机S处理下一个处理段Va。出现这种中断点P1_6,P2_6(中断点6)的时间点代表的是在时间间隔Z1之后的时间间隔Z2的开始。在所描述的方法和方式中,进一步在时间上不同步地处理控制程序P1,P2。在经过时间间隔Z2之后在到达出现第一中断点P1_A的时间点t3时,主机M向辅机M传输了另一个释放信息F2,该释放信息告知辅机S能够处理其它处理段Va直至到达中断点P2_A为止。这些处理段Va又相应于主机M从时间点t2直至时间点t3,也就是说直至到达中断点P1_A为止已经处理过的处理段。这意味着:辅机S处理的是从上次的释放信息F1的时间点t2到当前的释放信息F2的时间点t3为止的处理段。在经过时间间隔Z2之后出现第一中断点P1_A的时间点t3是时间间隔Z2之后的时间间隔Z3的开始。现在可以发现:在时间间隔中出现了事件,例如过程警报形式的事件。在实施例中,以E来代表这种事件,根据该事件,主机M在时间间隔Z3到时间点t4的过程中必须合适地根据控制程序P1的规定作出反应。在这个情况下,主机M并不在时间间隔Z3之后的、在时间间隔Z3之后出现中断点的时间点上,而是在事件E出现之后出现中断点P1_C(中断点C) 的时间点t5上向辅机S传输释放信息F3。这意味着:由于事件E而使得时间间隔Z3被缩短,其中,时间点t5是下一个时间间隔Z4的开始。基于传输给辅机S的释放信息F3,辅机S对控制程序P2的处理段Va进行处理,这些处理段相应于控制程序P1的、在时间点t3和t5之间已经被主机M处理过的处理段Va。由于该事件E,主机M在时间间隔Z4中对更高优先级的处理段Va进行处理,例如,主机M在时间点t5上执行线程切换,并且在经过时间间隔Z4后到达时间点t6,在到达时间点t7时重新传输释放信息F4,在该时间点上出现了在时间间隔Z4之后的第一个中断点P1_12(中断点12)。根据这个释放信息,辅机S同样对处理段Va进行处理直至到达控制程序P2的中断点P2_12(中断点12)为止,其中,这些处理段Va相应于控制程序P1在时间点t5和t7之间的处理段Va,并且其中,辅机S同样执行了线程切换。如阐述的那样,主机M的释放信息在辅机S经过与主机M相同的“线程山”,也就是说,辅机S在控制程序P2中的与控制程序P1中的位置相应的位置处执行“线程切换”。只有当主机M通过释放信息对辅机提出要求时辅机S才继续进行它的操作。在对处理段进行处理方面,主机M正如在单独的或非冗余的模式中那样实时地处理这些处理段并且将其给予到有规律的时间间隔中以及在出现事件之后给予释放信息以便通过辅机S处理相应的处理段,其中,主机M继续处理它的控制程序P1并且不主动地等待辅机S的应答。在对相应的处理段进行处理方面,辅机S晚于主机M并且基于被给予的主机释放信息来对这些处理段进行处理。下面假设:主机M的单机模式的过程控制转换为具有辅机S的冗余的控制模式。例如,当辅机S在修复之后重新连接到主机M上时才需要这种类型的转换。为此参考了图2,在该附图中示出了自动化系统的更新过程。这种转换在直到主机M发现辅机S连接到现场总线Fb(图3)上的时间点t11开始,其中,从这个时间点t11开始,无论是主机M还是辅机S的更新阶段均开始。主机M从这个时间点t11开始创建所有相关数据的本地副本K,这些数据代表了主机直至到达这个时间点t11的内部状态,其中,主机继续在单机模式中对控制程序P5的技术过程进行控制并且对控制程序的处理段Va进行处理。从时间点t12开始直到主机M的更新阶段结束的时间点t13为止,主机M将这个副本K以分段的方式传输给辅机S(这在图中借助箭头Kf来表示),直到时间点t14,辅机S才完全地接收完该副本。在这个时间点t14时,辅机S现在具有与时间点t11时的主机相同的内部状态。另外,从时间点t12开始,主机M的所有释放信息以及被主机M、由外围设备单元Pe(图3)读取的、所有的主机M上的过程输入值均被缓冲存储在辅机S或自动化系统的另一个子系统上,其中,在副本K被完全接收之后才激活这些通过辅机S处理的释放信息。在本实施例中假设:在从时间点t11开始到副本K的传输结束的时间点t13的时间段中在单机模式中运行的主机M产生了释放信息F13,F14,F15,F16并且另外读取过程输入值Ew3,Ew4。这些释放信息F13至F16和这些过程输入值Ew3,Ew4在辅机S中从时间点t14、即主机M的内部状态被完全提供给辅机S使用的时间点开始才被激活,这在图中通过箭头Fs和通过摆动的线L3,L4来表示。在通过主机M进行的这个激活之后,辅机S通过辅机S根据释放信息F13至F16的规则而处理副本K的数据的方式来转变成主机Ms的内部状态。在此,辅机S对其控制程序S6的处理段Va进行处理,这些处理段相应于直至时间点t13为止主机M的控制程序P5的处理段Va,其中,辅机S在控制程序P6的处理方面将过程输入值Ew3,Ew4纳入到了考虑范围内。由于辅机S在时间上不同步地接近主机M的内部状态,所以在对控制程序P6相应的处理段Va进行处理的方面,辅机S晚于主机M,其中,这种时间上的延迟必须被减小到可容忍的范围,因为过高的时滞可能会导致出现冗余损失。为了减少这种时滞而设计为,辅机S的处理速度相对于 主机M的处理速度而言更高,这在图中以控制程序P6中的“缩短”形式表示的处理段Va来表示。辅机S的处理速度的这种相对的提高可以例如,通过使得辅机S更快地处理它的程序P6的处理段Va或使得主机M更慢地处理它的程序P5的处理段Va的方式来实现。只有当延迟被弥补上或被减小到可容忍的范围或预先给定的值时,辅机S以及由此自动化系统的在时间点t12时开始的更新阶段才会结束。在本实施例中假设,将在时间点t15时的延迟减小的可容忍的范围。这样选择或预先给定这个范围,即,在主机M出现故障的情况下,辅机S能够没有突发情况地承担主控权。在图中,在时间点t16和时间点t15之间的时间差代表了该可容忍的范围,在本发明的实际的实施例中该范围大概是20毫秒。在辅机S的更新阶段的范围内,辅机S从时间点t14开始直至时间点t15为止既对在传输副本K的过程中所缓冲存储的释放信息F13至F16进行处理,又对主机M在这个传输之后传输给辅机S的释放信息F17,F18,F19进行处理。这些释放信息F17至F19告知辅机S,控制程序P6的哪些处理段Va可以另外通过该辅机S进行处理,其中,这些处理段Va相应于控制程序P5的、从时间点t14开始已被主机M所处理的那些处理段Va。换言之:在主机M将副本完全传输给辅机S或辅机S完全地接收这个副本K之后,辅机S从时间点t14开始直至时间点t16为止对它的控制程序P6的所有释放的处理段Va进行处理,这些释放的处理段相应于主机M从时间点t11开始直至时间点t15为止已经处理的处理段。从时间点t15开始,更新阶段已结束并且自动化系统转换为冗余模式。过程控制被主机M的单机模式所忽略且被辅机S的冗余模式所忽略,其中,从时间点t16开始能以所描述的方法和方式在时间上不同步地或以公知的方法和方式在时间上同步地在主机M和辅机S上进一步经过相应的程序路径。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1