内容总览
1,气缸功能块功能的介绍。
2,气缸功能块的引脚介绍。
3,编写气缸控制PLC程序。
一:气缸功能需求整理
本节内容主要讲解FB_MoveMent气缸功能块的伸出,缩回,联锁,延时到位检测,超时报警以及手自动控制的功能的程序编写。要想解决这个问题,我们首先得收集气缸控制的功能需求,下面我们一步步来整理。
1:伸出、缩回功能。气缸大家应该不算陌生,他主要的功能就是通过他的伸出,缩回来达到设备的需求,在FB中我们位了程序的通用及复用性我们定义缩回位为Bas位,伸出位为Wrk位。分别用o_ToBas和o_ToWrk来表示。
2:既然是伸出、缩回到位的检测。这个不难理解,我们给了命令,假设给的是缩回的命令,实际项目中,有可能因为机械的原因卡住,导致气缸缩回不到位,进而赵成撞击,所以必须要有到位的检测功能。所谓的延时到位检测,是在到位检测的基础上做的一个改进,增强设备的稳定性,在FB中我们分别用i_InBas和i_InWrk来表示磁性开关到位的信号,用i_DelayToBas和i_DelayToWrk来定义延时时间,o_DelayedInBas和o_DelayedInWrk来表示延时到位的输出信号。
3:联锁功能。气缸什么时候伸出,达到什么条件才能缩回,在FB中我们分别用i_ReleaseBas和i_ReleaseWrk来表示。
4:超时报警功能。所谓超时报警就是假设我给了缩回的命令,在规定的时间内缩回的磁性开关信号还没有,就报警。FB中我们分别用o_ToBasTimeOut和o_ToWrkTimeOut来表示超时报警输出的信号。
5:手自动功能。所谓手自动功能就是,手动模式下(主要通过触摸屏来操作,FB中我们用i_Manual来表示)我们需要对手动命令进行操作才有用,同样迁移到自动模式下也是一样的。FB中我们用i_KeyBas和i_KeyWrk来表示手动模式下回原位和去工作位的命令。自动模式下我们用i_CMD_Bas和i_CMD_Wrk来表示。
6:报警复位功能。FB中我们用i_FaultACK来表示。
7:其他功能,比如双传感器检测报警功能、使能功能等,留作读者自行完成。
二:功能块引脚介绍
其实刚刚已经全部都列出来了,为了简明我们用一张图片来展示。
三:控制程序编写
为了更快的展示,就用我之前做过的一个项目来展示,亲测功能是有用的,是用T型图写的,用的是汇川的H5U CPU写的一个程序,至于ST语言有兴趣的朋友可以自行完成。
四:功能块的调用
功能块的调用,我个人喜欢把它叫做实例化。如下图所示。
1,首先不管手动模式还是自动模式,我们M0必须有信号,你可以理解为设备通气完成信号。
2,手动模式下(M100有信号),我们只要对M914,M915赋值就可以了。自动模式下(M100没有信号)对M814,M815赋值。
3,X12,X10分别是气缸在工作位,和气缸在原位的磁性开关型号,一般直接接PLC的输入。
4,M714,M715分别输出给电磁阀,一把直接接PLC的 输出。
5,程序中其他地方用到位信号,就用M614,和M615。为什么不直接用X12和X10自己动动脑子理解一下。
结语,为了通用性这个块我们是封装在FB里面的,方便后续调用。为什么不用FC来写,FB与FC的区别我们后续讲解。题外话,FC\FB的理解直接影响到一个PLC工程师是菜鸟界别呢,还是已经入门,还是高手。别小看这玩意,很多所谓资深的PLC工程师都不理解,不理解这玩意不管你有过多少年的工作经验,都只是入门级,不会有什么沉淀的。谢谢大家。