首页 理论教育 PAC编程基本教程:简单功能块综合运用

PAC编程基本教程:简单功能块综合运用

时间:2023-10-26 理论教育 版权反馈
【摘要】:与梯形图指令相似的简单功能块,我们也可用来解决类似梯形图的需求。如果希望控制功能块的执行或不执行,可以用程序来控制这个使能位。HLL是上限设定报警和下限设定报警的功能块,根据设定的上限值和下限值,输入数据根据判断将产生相应的报警位作为输出端提供给需要的功能块或者标签值。功能块HLL的参数设定如图18-16所示。在PAC控制器中组合梯形图和功能块的特长来运用,这是Logix控制器的产品优势之一。

PAC编程基本教程:简单功能块综合运用

还有一部分功能块跟梯形图的指令功能是相同或相似的,用起来有时也很方便。下面,我们试着用一些功能块来完成熟悉的梯形图指令功能。

首先,我们看看计数器在功能块中的用法。功能块的增减计数集成在一个功能块中,由增计数使能端CUEnable的跳变引起累积数加1;减计数使能端CDEnable的跳变引起累积数减1。在梯形图逻辑编程中,我们不得不通过技巧来解决,采用一个梯级的CTU指令和一个梯级的CTD指令来共同修改同一个计数器结构数据标签,每个梯级则用各自的计数梯级条件,即增计数脉冲和减计数脉冲。在功能块中,使用一个计数器便可以了,如图18-9所示。

此外,可以看到,计数器功能块的预置值也可以在输入端直接用立即数给定,不一定要通过一个双整字标签来设定,或进入参数表中直接设定。

梯形图中的宽脉冲变窄脉冲的前沿触发脉冲和后沿触发脉冲指令,用功能块也能实现,组态非常简单,功能块的组态如图18-10所示。对于功能块来说,就是输入宽脉冲,输出窄脉冲。

与梯形图指令相似的简单功能块,我们也可用来解决类似梯形图的需求。下面的功能块实例编程是采用与梯形图相似的指令功能,我们来对比运用。

加法功能块如图18-11所示。加数Analog1和被加数Analog2作为源数据,提供给功能块ADD的输入端,功能块相加之后的和作为目标地址输出引向功能块ADD的输出端。

减法功能块如图18-12所示。减数Analog1和被减数Analog2作为源数据,提供给功能块SUB的输入端,功能块相减之后的差作为目标地址输出引向功能块SUB的输出端。

978-7-111-36030-8-Chapter18-16.jpg

图18-9 具有增减计数的计数功能块

978-7-111-36030-8-Chapter18-17.jpg

图18-10 前沿触发和后沿触发的功能块

978-7-111-36030-8-Chapter18-18.jpg

图18-11 加法功能块

978-7-111-36030-8-Chapter18-19.jpg

图18-12 减法功能块

将相加之后的和与相减之后的差送入选择功能块SEL,如图18-13所示。加法的和被送入功能块SEL的输入端In1,减法的差被送入功能块SEL的输入端In2,选择开关由输入点Select_IN的状态决定,可由外部或程序控制,为0时选择输出为加法的和,为1时选择输出为减法的差。

功能块SEL的参数设置如图18-14所示。默认是功能块使能,即EnableIn为1,例程被扫描时功能块将被执行。如果希望控制功能块的执行或不执行,可以用程序来控制这个使能位。

将功能块SEL的输出送入功能块HLL的输入,如图18-15所示。HLL是上限设定报警和下限设定报警的功能块,根据设定的上限值和下限值,输入数据根据判断将产生相应的报警位作为输出端提供给需要的功能块或者标签值。

功能块HLL的参数设定如图18-16所示。当输入值In大于等于上限值900时,上限报警位HighA-larm设置为1;当输入值In小于等于下限值100时,下限报警位LowAlarm设置为1。当输入值高于上限值或低于下限值时,输出被限幅在上限值或下限值。

978-7-111-36030-8-Chapter18-20.jpg

图18-13 将相加之后的和与相减之后的差送入选择功能块SEL

如果我们希望上限值报警位和下限值报警位点亮的报警灯闪烁,可以增加一个计时器来实现,选取一个可复位计时器的TONR功能块,如图18-17所示。选取输入点Enable_TONR作为计时器使能位,可由外部或程序控制,计时器TONR_01完成位DN直接连接至复位输入端Reset,计时器ACC值输出引至下一个功能块。当可复位计时器如此连接便成为一个自复位的计时器。

978-7-111-36030-8-Chapter18-21.jpg

图18-14 功能块SEL_01的参数设置

978-7-111-36030-8-Chapter18-22.jpg

图18-15 将功能块SEL的输出送入功能块HLL的输入(www.xing528.com)

978-7-111-36030-8-Chapter18-23.jpg

图18-16 功能块HLL_01的参数设定

978-7-111-36030-8-Chapter18-24.jpg

图18-17 可复位计时器TONR功能块

计时器功能块参数设置如图18-18所示。将计时器预置值设为400ms,人体视觉残留时间是200ms,闪亮和熄灭各200ms将令人感觉闪烁。计时器后面的功能块将使用400ms来作为闪亮和熄灭的周期时间。

将计时器的ACC输出接至大于比较功能块GRT的输入端,如图18-19所示。功能块GRT输入是计时器的ACC值,输出值为BOOL量,当比较条件满足时,输出置为1;比较条件不满足时,输出置为0。

功能块GRT的参数设置如图18-20所示。比较对象是200,当输入小于等于200时,输出为0;当输入大于200时,输出为1。前面的计时器预置值是400,所以一半的时间输出为1,一半的时间为0,这个输出是一个闪烁的输出。

将上面的功能块GRT的输出并联在两个与门上,如图18-21所示。这两个与门分别与高报警位和低报警位相连。这样,在与门的控制下,高报警输出HighAlarm_OUT和低报警输出LowAlarm_OUT的灯便会闪烁,输出值Anaglog_OUT的输出范围在100~900之间。

完整的功能块顺序图如图18-22所示。在整个过程中,我们很少编辑逻辑关系,而是在选择合适的功能块,在功能块中设定合适的参数,并选择合适的对外连接,这就是功能块的组态。

这样编辑完成的功能块并没有确定它们的执行顺序,只有在FBD例程通过校验之后,点开其中一个功能块参数页面,查看左下角,才可以看到这个功能块的执行顺序。这里点开的是功能块SEL的页面,可以看到这个功能块的执行顺序是4,如图18-23所示。

978-7-111-36030-8-Chapter18-25.jpg

图18-18 计时器功能块TONR_01的参数设置

978-7-111-36030-8-Chapter18-26.jpg

图18-19 将计时器的ACC输出接至大于比较功能块GRT的输入

978-7-111-36030-8-Chapter18-27.jpg

图18-20 功能块GRT_01的参数设置

978-7-111-36030-8-Chapter18-28.jpg

图18-21 比较功能块GRT_01和高报警位/低报警位通过与门相连

978-7-111-36030-8-Chapter18-29.jpg

图18-22 完整的功能块顺序图

功能块组态更偏重于特定功能性的处理,是功能性很强的指令,但是运用不够灵活,诸如数组类的处理,则不如梯形图指令方便,尤其是类似硬件的寄存器操作,更是梯级逻辑处理的特权。在PAC控制器中组合梯形图和功能块的特长来运用,这是Logix控制器的产品优势之一。

978-7-111-36030-8-Chapter18-30.jpg

图18-23 功能块SEL页面可看到执行顺序

另外,功能块没有对外通信的操作功能,诸如MSG指令的操作大多由梯形图逻辑和语句结构编程来担任,梯级逻辑编写MSG是最方便和直观的,尤其是指令的组态。

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

我要反馈