PLC软冗余系统软硬件组成及实现原理

发布者:科技飞翔最新更新时间:2012-11-30 来源: 21IC 关键字:PLC  软冗余系统  切换机制 手机看文章 扫描二维码
随时随地手机看文章

    在工业自动化系统中,为了使系统长期稳定可靠地运行,大量选用可编程逻辑控制器(PLC)作为控制器,甚至在此基础上组建冗余系统进一步提高系统的可靠性。冗余的分类方式很多。目前,采用的PLC冗余方式分为2种,即软冗余和硬冗余。西门子公司在这2方面均给出了解决方案。基于S7-400H的硬冗余的可靠性高,但构建系统成本也较高。而基于S7-300或S7-400的软冗余是一种综合考虑提高可靠性和降低成本的折中方案。目前,软冗余系统已经在污水处理、冶金、化工等控制工程中得到了普遍应用。但目前对于软冗余的性能,仍缺乏系统的研究。文中首先叙述西门子PLC软冗余系统的实现原理,然后重点分析主备切换时间和数据同步时间,以便为类似控制系统设计提供参考依据。
    1、 软冗余实现原理
    典型的PLC软冗余系统组成案例如图1所示。


        图1 典型的PLC软冗余系统组成

    在系统运行时2个CPU均启动,但只有主CPU执行控制命令,备用CPU检测主CPU状态,时刻准备接替主CPU继续工作。与主CPU通信的IMl 53—2模块处于激活状态使主CPU能访问I/0模块。当系统发生特定故障时,系统可以实现主备切换,备站接替主站继续运行。这些故障包括:主机架电源、背板总线等故障;CPU故障;Profibus现场总线网络故障;ET200M站的通信接口模块IMl53故障。
    PLC软冗余系统要实现软冗余功能,需要存程序中调用冗余软件包的功能模块,其主要包括:初始化冗余系统运行参数的FCl00模块;故障诊断、主备切换的FCl02模块;发送/接收数据的FBl03模块;调用FBl03进行数据同步、分析系统状态的FBl01模块。带有冗余功能的程序结构见图2。


        图2 带有冗余功能的程序结构

    在PLC每个循环执行周期中,主系统先凋用FBl01接收并分析备系统状态,然后执行冗余程序,最后再调用FBl01将需要同步的数据发送到备系统。备系统先调用FBl01接收并分析主系统状态,跳过冗余程序,然后将备系统状态发送到主系统。需注意的是,实现冗余功能的最重要模块FBl01执行时先分析主备系统状态,然后再发送数据(或接收数据)。由于软件是顺序执行控制工程网版权所有,将导致接收到对方故障信息后,对故障处理的滞后。软件顺序执行机制是导致软冗余切换时间较长的一个重要原因。
    2、主备切换时间分析
    主备切换时间是指系统发生故障到备站接替主站正常丁作所需要的时间。
    2.1 主CPU或电源模块故障分析
    当前2种故障发生时,ET200M站的主通信接口模块IMl53与主CPU失去连接。自动在主备通信接口模块IM]53之间实现切换。同时备CPU在向主CPU发送备站状态时将检测到同步线数据传输错误,继而主动切换成主CPU。
    如果主CPU故障出现在备CPU调用FBl01执行发送功能之前,那么接下来备CPU在调用发送功能时就能检测到与主CPU通信连接故障,并在下一个周期调用接收功能时备CPU切换成主CPU。此时主备切换时间t最短。
        (1)
    式中t为主备切换时间;Tcyc为PLC循环扫描周期;t(FB101)为冗余功能块FBl01执行时间。[page]

    如果主CPU故障发生时备CPU刚调用FB101执行完发送功能,那么备CPU要在下一个周期调用发送功能时才能检测到与主CPU通信连接故障,并且还要等待调用接收功能时备CPU切换成主CPU。此时主备切换时间t最长。
        (2)
    2.2 Profibus或ET200M主站故障分析
    当后2种故障发生时,发生故障的ET200M从站的备IMl53将检测到主IMl53故障,自动将自己切换为主IMl53。主CPU将因为与故障IMl53失去连接而引发OB86(故障诊断)中断,并在中断中调用诊断模块FCl02完成所有从站的切换,并将自己置为备用。然后,主CPU将故障信息发送到备CPU。备CPU收到故障信息后将自己切换成主CPU。这时的切换时间为
        (3)
    式中tR为OB86中断响应时间,CPU315—2DP为1 ms;tE为OB86执行时问;ts为故障状态发送时间;tD为数据接收完毕到备站切换成主站的时间间隔。
    因为OB86中只调用FCl02诊断模块,所以tE由FCl02的执行时间决定。为分析OB86中调用FCl02时FCl02的执行顺序,对FCl02进行了适当的修改以便采集数据。这些修改主要包括:在FCl02的开始加入采集状态程序段;在跳转指令处采集跳转条件。在手动触发一些故障之后,对得到的数据进行分析便得到了FCl02的执行顺序。在各个代码段两端插入读系统时间功能块,对FCl02的程序执行时间进行分段测量。结果如表1所示(表中,为SFC58执行时间;t(2ss)8为2次SFC58执行时间;t’为其余时间;t(PC102)为FCl02总执行时间)。
    测量结果中FCl02执行时间并不等于各个时间段之和,这是因为读系统时间功能块的测量精度只能达到l ms。但从表中仍不难看出FCl02执行时间主要集中在调用系统功能SFC58向ET200M写数据(控制从站切换)的操作上,SFC58的调用次数等于ET200M从站个数,因此可以近似得出tE=3 ms×ET200M从站个数。
    式(3)中ts与主CPU的OB86中断产生的时刻有很大关系。
    如果主CPU在调用FB101执行发送功能之前产生OB86中断,则在发送数据时主CPU直接把故障状态发送给备站,在这种情况下ts最短,为发送一次数据所用时间tt,即
        (4)
    若主CPU调用FBl01执行完发送功能时产生OB86中断,则主CPU要把先前数据发送完毕才能发送故障状态到备站。在这种情况下,由于先前数据发送完毕的时刻不同,ts也会得到不同的值。
    a.若先前数据发送完毕在主CPU调州FB 101执行发送功能之前,将立即发送主站的状态,则
        (5)
    b.若先前数据发送完毕在主CPU执行完发送功能之后,则要等到下个周期调用发送功能时才能发送主站的故障状态。此时,ts是最长的。
        (6)
    式(3)中tD与备站接收完故障状态的时刻有密切关系。

[page]

    若数据接收完成是在备CPU调用FBl01执行接收功能之前,则备CPU将马上得到主CPU状态,并在调用发送功能时备CPU切换成主CPU。此时tD最小,仅为一个FBl01的执行时间,即
        (7)
    若数据接收完成是在备CPU调用FBl01执行接收功能之后,则备CPU要等到下个周期调用接收功能时才能获得主站的状态控制工程网版权所有,并在调用发送功能时切换成主CPU。此时tD是最大的。
        (8)
    由以上分析可知,在以下2种情况将得到这2类故障主备CPU切换时间的极限值。
    a.如果故障发生后主CPU马上发送故障状态,并且备CPU接收完数据是在备CPU调用接收功能之前,主备切换时间是最短的。
        (9)
    b.如果故障发生时主CPU已经开始发送数据。并且此数据发送完毕是在主CPU调用完发送数据功能之后,而备CPU接收完数据是在备CPU调用完接收功能时,主备切换时问是最长的。
        (10)
    以上所涉及的时间中,tE、t.和k所占比重最大,其余时问经测量均约为1 ms。如果要减小主备切换时间,必须减小tE、t,和k。要减小tE就要减少ET200M从站数量,即在满足要求的情况下减少I/0数量。减少t。最好的方法是选择主站与备站之间较快的数据同步通信方式。如Profibus总线方式比西门子PLC自带的MPI方式能在较短的时间内发送更多个字节数据。但前一种方式需要另外配置通信模块。k为PLC循环扫描周期,与用户程序长度有关。典型的中等规模的PLC控制系统,经计算主备切换时间的极限值范围约为150---500 ms。
    3、数据同步时间分析
    在PLC软冗余系统中,要使主系统发生故障时,备系统接替主系统继续工作,则系统在正常运行时,主控制器必须把需要同步的数据发送给备控制器,从而当故障发生时能够实现无扰切换。
    数据同步时间是指系统正常运行时,主站将同步数据发送至备站所需时间。西门子软冗余系统的数据同步是根据数据量的大小通过定时中断方式分多次进行,单次同步的数据量相同。主CPU在同步开始时将所有需要同步的数据保存起来,然后每次发送相同长度的数据块到备CPU。备CPU每接收到一个数据块就将其分配到对应的地址空间中去。这种方式将时间平均分配到了各个执行周期,避免了单次发送所有数据消耗过多时间。但是这也导致了备站得到的数据将滞后手主站。
    通过分析可知控制工程网版权所有,数据同步时间为
        (11)
    其中,LD为同步数据量。它为PLC输出过程映像区、位地址区所有冗余数据块、定时器和计数器的背景数据块和非冗余数据块长度之和。N为1次数据传送量,与数据同步方式有关。如Profibus总线方式可在1.5 Mbit/s传输速率下。每60 ms传送240个字节数据。而西门子PLC自带的MPI方式只能在187.5 Kbit/s传输速率下,每152 ms传送76个字节数据。行为传送1次数据程序执行周期数,即
        (12)
    式中td为传送1次数据的时间,与数据同步方式有关;Tob35为定时中断间隔时间。
    为减小数据同步时间,应尽量减少同步数据量LD,选择较快的数据同步方式以增加1次数据传送量N和减少传送1次数据时间td。典型的中等规模PLC控制系统,数据同步时间可能超过l s。
    4、结论
    综上所述,PLC软冗余系统出现特定故障时,系统通过软件冗余主备切换机制,使备站在经过主备切换时间后接替主站保持系统继续T作,避免系统停止运行。主备切换完成后,备用系统以最后一次完整的同步数据作为基础执行控制任务。PLC软冗余系统主备切换的功能控制工程网版权所有,达到了提高可靠性、降低成本的目的。
    但是,由于主备切换时间较长,在主备切换过程中系统暂时失去了控制功能,故不适合实时性要求较高的控制场合。PLC软冗余系统比较适合应用于实时性要求较低的过程控制应用场合。

关键字:PLC  软冗余系统  切换机制 引用地址:PLC软冗余系统软硬件组成及实现原理

上一篇:采用常规PLC优化运动控制功能
下一篇:PLC应用在电厂化学水处理系统中

推荐阅读最新更新时间:2024-05-02 22:27

单片机与PLC之间的串行通信实现
随着微处理器、计算机和数字通信技术的飞速发展,计算机控制已经扩展到了几乎所有的工业领域。其中,PLC和单片机在小规模控制系统中获得了广泛的应用。 在塑料挤出机温度自动控制中,选用S7-200系列PLC作为主控器件,PIC16F877单片机作为温度数据采集和模数转换芯片,单片机通过通信端口将数据传输给PLC,由于采用了RS-485接口标准,传输距离可达1000m。PLC经过PID运算后控制加热圈以保持温度恒定。下面结合实例就PLC和单片机的通信实现做一下介绍。 2、硬件构成 2.1、PIC16F877单片机 Microchip公司的PIC16F877单片机采用哈佛总线结构和精简指令集技术,具有功耗低、运行速度高、驱动能力强和外
[网络通信]
浅谈电气电路控制和PLC控制之间的转换原理
电气电路控制和PLC控制之间的原理是相通的,自然的电气控制都可以通过PLC更加方便,高效的演绎,那么电气控制电路具体是怎么产生的?又是怎么样转换为梯形图,进而转化为PLC受控的逻辑指令的,为了更加清晰直观的说明这一路的变化,我们以最简单的:按钮互锁正反转控制电路为例。 一、电气控制部分 1、按钮互锁正反转控制电路的引入原因 2、按钮互锁正反转控制的主电路 3、按钮互锁正反转控制的控制电路 4、按钮互锁正反转控制电路个元器件的作用 5、按钮互锁正反转控制电路工作原理 6、按钮互锁正反转控制电路的各种保护措施 7、按钮互锁正反转控制电路的优缺点 8、按钮互锁正反转控制电路实物接线图
[嵌入式]
浅谈电气电路控制和<font color='red'>PLC</font>控制之间的转换原理
PLC的高效设计与批量编辑的方式
本次分享,主要为读者介绍PLC的高效设计与批量编辑的方式。在前期的调研中发现读者朋友们对PLC设计相关的话题十分关注。于是我们进行本次分享,希望通过本次分享能够为读者朋友们的工作带来一些帮助,拓宽研发思路,提高设计效率。 我们以下图为例进行介绍,本例中的PLC系统需要插入电源模块、CPU模块以及一个DI和一个DO模块,然后对其进行设计。 传统设计方式 在开始之前,我们先看一下被调研的A公司的三位工程师是如何对PLC进行设计的? 1. 负责研发的李工在对PLC点位地址以及属性规划完成后,手动将PLC 的K1、K1.1、K1.2三个模块的IO点地址信息以及功能文本输入到EPLAN项目中去。 2. 负责审核的张工发现李工用了一个
[嵌入式]
<font color='red'>PLC</font>的高效设计与批量编辑的方式
G3 PLC在农用液压打包机上的应用
1前言 在工业应用领域,大部分机械设备都采用先进、实用的控制产品对生产过程进行控制,以提高设备运行的可靠性和生产效率。但是,在农业应用领域,由于农机设备运行环境恶劣、操作人员技术水平偏低,绝大部分机械设备没有采用先进的控制产品,而是采用传统的手工操作和继电器控制。 中国是个农业大国,农机设备遍布大江南北。把性能稳定、质量可靠、功能强大的控制产品应用到市场巨大的农机设备中,对提高我国农业的自动化水平和农机企业的市场竞争力将会产生十分积极的影响。 本文介绍了和利时公司新一代小型一体化PLC在农用液压打包机上的应用,该应用在提高农机设备自动化方面取得了很好效果,具有很好的推广价值。 2系统概述 山东某液压机械制造有限
[工业控制]
PLC的条件跳转、子程序调用等
条件跳转指令: 指令名称,助记符,指令代码,程序步如下表: 程序步可以是连续执行或者是脉冲执行,CJ执行的为3步,CJ(P)为1步。 指令格式: 当我们按下X000后,程序跳转指令开始运行,程序所跳转的位置为程序指针所在的位置,也就是标号10,在这里我们要注意程序指针写在左母线的左边。当我们启动跳转指令后,X001这段程序就会被跳过不执行。 当X0为ON时,被跳转CJ命令到标号之间的程序不子执行。在跳转过程中如果Y、M,S被OUT、SET. RST指令驱动使输入发生变化则仍保持跳转前的状态。例如,通过X1驱动输出Y10后发生跳转,在跳转过程中即使X0变为ON,但输出Y10仍有效。 注意: 1、对于T、C,如果跳转时
[嵌入式]
<font color='red'>PLC</font>的条件跳转、子程序调用等
西门子200/300PLC连接CHNet-S7200/300与MatrikonOPC ModbusTCP通信
西门子200/300PLC连接CHNet-S7200/300与 MatrikonOPC ModbusTCP通信 MatrikonOPC 通过以太网连接西门子 S7300 系列 PLC, CHNet-S7300通讯模块为 PLC 提供以太网通讯接口。 设备硬件 西门子 S7300PLC(CPU314 等) 监控计算机,MatrikonOPC,通讯模块兴达易控CHNet-S7300 1) 将 CHNet-S7300 连接到西门子 S7300PLC(CPU314 等); 2) 将各个 CHNet-S7300通讯模块,接入到局域网网络,与上位监控计算机连接。 2、CHNet 通讯模块参数配置 如图配模块的 IP 地址:192.
[嵌入式]
西门子200/300<font color='red'>PLC</font>连接CHNet-S7200/300与MatrikonOPC ModbusTCP通信
可编程逻辑控制器(PLC)基本操作及功能简介
可编程逻辑控制器(Programmable Logic Controller,PLC),它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程。   数十年以来,可编程逻辑控制器(PLC)始终是工厂自动化和工业过程控制有机组成的一部分。从简单的照明功能到环境系统、再到化学加工等各种应用,都离不开PLC控制。   这些系统具备许多功能,提供各种模拟和数字输入/输出接口、信号处理、数据转换以及各种不同的通信协议。PLC的所有元件和功能都以控制器为中心,而控制器则针对某项具体任务进行编程。   基本的PLC组件必须足够
[模拟电子]
可编程逻辑控制器(<font color='red'>PLC</font>)基本操作及功能简介
SIMATIC S7-1500 PLC梯形图编程的原则
尽管梯形图与继电器电路图在结构形式、元件符号及逻辑控制功能等方面类似,但它们又有许多不同之处,梯形图有自己的编程规则。 ①每一逻辑行总是起于左母线,最后终止于线圈或右母线(右母线可以不画出),如图1所示。 图1 ②无论选用哪种机型的PLC,所用元件的编号必须在该机型的有效范围内。例如CPU1511-1PN最大I/O范围是32KB。 ③触点的使用次数不受限制。例如,辅助继电器M0.0可以在梯形图中出现无限制的次数,而实物继电器的触点一般少于8对,只能用有限次。 ④在梯形图中同一线圈只能出现一次。如果在程序中,同一线圈使用了两次或多次,称为“双线圈输出”。对于“双线圈输出”,有些PLC将其视为语法错误,绝对不允许(如三菱FX系
[嵌入式]
SIMATIC S7-1500 <font color='red'>PLC</font>梯形图编程的原则
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved