首页 理论教育 计时器与计数器的联合应用示例

计时器与计数器的联合应用示例

时间:2023-10-26 理论教育 版权反馈
【摘要】:计时器和计数器是经常联合使用的,自复位的计时器可以为计数器提供一个定时的计数脉冲,从而得到一个自动计数的计数器。编写梯形逻辑如图5-37所示,3个计时器的DN作为3个计数器的计数脉冲,上部的两个阀门由增计数器来模拟液体流入混合容器升高液位;下部的一个阀门由减计数器来模拟液体流出混合容器降低液位。

计时器与计数器的联合应用示例

计时器和计数器是经常联合使用的,自复位的计时器可以为计数器提供一个定时的计数脉冲,从而得到一个自动计数的计数器。

为配合人机界面开发软件的组态练习,用计时器和计数器编写一个模拟程序,运行在控制器中模仿现场控制状态。如图5-35所示,一个混合容器(Tank),上部阀门1(Valve1)和阀门2(Valve2)控制通过两个管道将不同液体注入混合容器,下部阀门3(Valve3)控制通过管道流出的混合后的液体。

实例需求:

●3个阀门的流量可以调整;

●既可以在本地用输入开关控制,也可以在人机界面远程控制;

●有上溢出和下溢出限制控制,发生溢出时不能继续流入或流出液体。

978-7-111-36030-8-Chapter05-33.jpg

图5-35 现场控制示意图

我们用3个计时器来模拟3个管道的液体流动,这是自复位计时器,按照设定的预置值产生计数脉冲,脉冲发送的频度,也就是模仿的液体流量。编写梯级逻辑如图5-36所示,3个计时器指令的梯级来模仿液体流动。修改各个计时器的预置值,也就修改了模拟的液体流量,预置值越大,DN置位的频度越低,流量越小;预置值越小,DN置位的频度越高,流量越大。阀门打开时,液体开始流动;阀门关闭时,液体停止流动,阀门由本地或远程来控制。

978-7-111-36030-8-Chapter05-34.jpg

图5-36 编写3个计时器来模仿液体流量

计数器的脉冲计数累积,模仿了混合容器液体平面的位置,即容量。编写梯形逻辑如图5-37所示,3个计时器的DN作为3个计数器的计数脉冲,上部的两个阀门由增计数器来模拟液体流入混合容器升高液位;下部的一个阀门由减计数器来模拟液体流出混合容器降低液位。模拟上部阀门的计数器梯级被上溢出状态位限制,当达到上限位值时,液体停止流入混合容器;模拟下部阀门的计数器梯级被下溢出状态位限制,当达到下限位值时,液体停止流出混合容器。

978-7-111-36030-8-Chapter05-35.jpg

图5-37 编写3个计数器来模仿容器液位变化

三条梯级看上去有点累赘,那么两个上部的计数器的梯级条件能不能并列呢?如图5-38所示,回答是不可以的。计数器是按梯级条件跳变来计数脉冲的,如果两个输入并列,在计数脉冲同时发生的时候,只有一个梯级条件成立,计数器只会计数一次,从而丢失了计数脉冲。特别是当计时器都是相同的预置值时,由于同步运行,丢失脉冲的几率就更大了。在此种情况下,必须分为两个梯级,即使两个计时器完成位DN同时置位,令前梯级Timer_Valve1.DN计数一次,后一个梯级Timer_Valve2.DN再计数一次,以保证脉冲都被记录下来,因而表达了流量的准确性。

978-7-111-36030-8-Chapter05-36.jpg

图5-38 两个上部计数器并列的梯级条件(www.xing528.com)

用两条比较指令来判断混合容器(Tank)的上溢出和下溢出,从而限制上部的增加或下部的减少。对于模拟程序来说是必不可少的,因为计数器可以出现负数或高于混合容器(Tank)液面的最大值,模拟的混合容器(Tank)却不可以,实际操作也是如此,容器都是有上限位和下限位的检测和管理的。梯级逻辑编写如图5-39所示,比较指令产生的上限和下限输出报警状态位Overflow UP和Overflow Down,一方面用来限制计数器计数的梯级条件,令它不能继续增加或继续减少,相当于关闭了阀门;另一方面为人机界面(HMI)提供所需要的报警状态显示,告知阀门的控制已经失去作用。

978-7-111-36030-8-Chapter05-37.jpg

图5-39 上限位和下限位的检测

978-7-111-36030-8-Chapter05-38.jpg

图5-40 本地或远程控制阀门

现在来看阀门是如何被控制的。编写梯级逻辑如图5-40所示,每个阀门都有两路控制,一路是本地的手动控制,另一路是远程的人机界面(HMI)上的操作来控制。这两路选择由选择开关控制,选择开关打向远程,远程一路接通,远程控制有效;选择开关打向本地,本地一路接通,本地控制有效。本例中规定,Remote_Local为1远程有效,为0本地有效。这是远程本地必居其一的做法,并对远程或本地做出明显的选择。本地或远程的选择Select_RL,可以由一个位置开关来担任,也可以在人机界面上来操作。

也有例外,如果对远程或本地没有特别的限制,任何一个操作都会引起回归,可以按如图5-41所示编写的梯级逻辑,这样如果原先的状态在本地操作,只要一个远程操作,就把远程操作抢了过来,如果再来一个本地操作,又把本地操作抢了过来。这种做法使得远程本地操作切换便利,几乎无须额外的介入,适合远程本地操作是随意的情况,但是很多控制系统是本地优先的,一旦处在本地操作,远程是不可以介入的,否则会有一定的风险。

978-7-111-36030-8-Chapter05-39.jpg

图5-41 本地或远程选择

以上梯级逻辑的编写是按照编程过程的思路来讨论的,实际上,我们在编写梯级逻辑时,应该按照执行过程的先后插入或加入梯级,所以刚才的编写顺序并不是梯级逻辑执行的顺序。如图5-42所示才是执行例程中完整的梯级逻辑的执行顺序。

下载到控制器运行测试,一切正常。

978-7-111-36030-8-Chapter05-40.jpg

图5-42 完整的梯级逻辑执行顺序

978-7-111-36030-8-Chapter05-41.jpg

图5-42 完整的梯级逻辑执行顺序(续)

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈