PLC标准ST编程之执行器的标准功能块思路
对于程序里常用的执行机构,最好总结出一个标准功能块,通过改参数,实现这个功能块不同的功能,下面以用的最多执行机构-气缸为例,讲一下达到封装标准的功能块使用的思路。
1、 气缸介绍
气缸上下、伺服左右运行、吸气吹气等等,都是具有两个状态的逻辑对象。我们的气缸一般有两个状态,工作状态和非工作状态,我们一般把非工作状态叫做基本位,工作状态叫做工作位。
气缸使用电磁阀来切换气路,一般气缸分为单电磁阀气缸和双电磁阀气缸。
单电磁阀:通过单个电磁阀来控制气缸的正反动作, 用磁性开关是无法使气缸停到中间某个位置的。
双电磁阀:通过两个电磁阀分别控制气缸的正反向运行,例如三位五通的电磁阀执行器的。
检测气缸的到位信号一般有两种方法,第一种通过时间限位来实现:根据气缸的移动速度,计算出到达工作位置的时间,通过这个时间来确实是否到位。第二种通过气缸上的实际到位信号来判断是否到位。一般气缸带有磁性开关(一般2个,检测两端到位),用来检测气缸到位情况 (这个也是PLC的输入信号)
2、标准的气缸功能块
气缸功能块FB_Actuator适用于各种气缸(例如单/双电磁阀气缸,时间限位/硬件反馈气缸等),首先了解一下FB_Actuator控制原理。
功能块程序结构
1) FB_Actuator功能块输入输出管脚的介绍
功能块
输入管脚:
inWork: 在工作位置的实际信号输入
inBasic: 在基本位置的实际信号输入
FilterInWork: 在工作位置滤波时间
FilterInBasic: 在基本位滤波时间22
rqWork: 到工作位指令
rqBasic: 到基本位指令
EnableManuWorkBt: 使能到工作位按钮
EnableManuBasicBt: 使能到基本位按钮
btManuWork: 手动按钮
btManuBasic: 手动按钮
TimeOutWork: 到工作位超时报警时间,单位s
TimeOutBasic: 到基本位超时报警时间,单位s
bUseTimeLimit: 利用时间做限位到位开关,不使用实际的反馈点
DoWorkTimeOutId: 超时报警的ID号
DoBasicTimeOutId: 超时报警的ID号
bLockByItself: 是否自锁
bForceEnableManualBt: 强制使用手动按钮功能,不需要转换到手动模式
sName: 执行器名字
输出管脚:
IsWork: 已经到了工作位置
IsBasic: 已经到了基本位
doWork: 开始到工作位置输出信号
doBasic: 开始到基本位输出信号
RqManuWorkALarm: 手动,不在工作位条件不满足报警
RqManuBasicALarm: 手动,不在基本位置条件不满足报警
bError: 错误
MoveWorkTime: 到工作位时间计时,单位s
MoveBasicTime: 到基本位时间计时,单位s
2) 执行器的HMI模板介绍
执行器使用的模板是PH_ACTER,该模板中包括了手动控制执行机构的控件,显示从基本位(工作位)到工作位(基本位)移动的时间控件,到达基本位,工作位的状态显示控件和执行器的名字。
HMI
3) 模板的调用
执行器的程序中,是单电磁阀的气缸,并且有实际信号的反馈。具体调用步骤如下:
第一步:新建变量,实例化功能块
声明
其中FBisManualActive是自动使能,rqwork是要求执行器从基本位运行到工作位。
第二步:调用相关功能块
RqSysAutoModeIsActive:=true; //切换到自动模式
fbActuator.sName:="吸嘴"; //对执行器命名,用于区分
fbActuator(
inWork:=stInput.biSnVacuuSor, //执行器反馈到位信号
FilterInWork:=t#20ms , //反馈信号的滤波
rqWork:=rqwork , //要求执行器动作
sName:= ,
isWork=> ,
isBasic=> ,
doWork=>stOutput.bqClamperSuck, //用输出模块控制执行器的动作
);
第三步:HMI模板调用
通过HMI中的Frame控件来调用HMI模板
HMI
调用Frame控件之后,进入Frame属性里面设置相关参数:
1) 设置调用HMI控件,选择congfigure,添加PH_ACTER作为模板。
2) 通过绑定变量Main.fbActuator,实现控制器上的程序变量和HMI上的控件的对应。
想要原程序看看的可以私信我!
PLC编程——单按钮控制灯变亮的不同控制方式(感觉挺难的)
之前在网上看到一个网友提问,要求是:有一个按钮,还有一个指示灯,控制方式为按钮按下,在10S内如果连续3次按下,那么指示灯变亮,如果10s内没有3下就灭掉。这个题目可以说简单,也可以说难,当找到正确的编程思路的时候就会很简单,反之就会感觉无从下手,这边我提供一个我自己思路,用的西门子博图软件来模拟
具体的思路是用:当前按下按钮的时间来——前面第二次按下的时间<10s这个天剑来控制灯的亮灭
首先我们先新建一个DB块,新建5个变量,用来放置当前时间和按下按钮时候的时间值
DB数据块
然后我们来写程序,因为程序中需要用的时间,所以我们先提取时间,看下图
将当前时间放到“数据块_当前时间”这个变量中,以便后面程序调用,接下来我们按照思路来写,将最近3次按下按钮的时间分别传送到DB数据块当中,
如上图所示,每按下一次,数据都会整体移动一次,保证了最新3次按下按钮的时间都在这几个变量中,接下来就要做时间间隔的计算了,我们将最新按下时间和最新前2次按下时间相减得出时间差,如果这个时间差<10s,且>0,我们就输出指示灯,这里>0是因为当按钮一次都没按是这个时间差会是0,也会满足<10的条件~
这样这个逻辑就成立了,不知道网友们还有别的什么思路拿出来一起分享下吧,共同进步~
相关问答
plc呼吸灯的原理和程序?
PLC呼吸灯的原理是通过控制PLC输出信号的变化,使灯光逐渐从暗到亮再从亮到暗,形成呼吸灯的效果。程序方面,需要使用PLC的计时器、比较器等功能模块,设定相应...
哪位大佬可以用通俗的言语让我明白PLC(可编程逻辑控制器)这个专业术语,不胜感激?
呵呵,不知道您要通俗到哪种程度对你来说才是通俗易懂的。我简单来说几句我个人的理解,首先PLC它是一个控制器,就是主要目标是用于控制一些设备的。比如家里...
往复式压缩机负荷调节帮忙翻译一下哦-盖德问答-化工人互助问...
该调节阀接受从plc来的4~20ma信号。旁路阀流量为总流量的25%,以实现75%~100%之间的无极控制。根据上将的翻译略作修改。the1ststagebypassfee...
kn95口罩机改什么设备最好?
kn95口罩机可以改造成以下设备:KN95口罩定型机:采用PLC控制系统,可自动完成从送料、剪切、退料等多道工序,相比传统人工操作可省去3-5个人力。KN95口罩熔切机...
Pv阀是什么意思?
P肯定指压力了,这是一个控制压力的阀,但你这种叫法好像缺点什么,应该是PSV,或者PCV之类的名称吧,PSV是一种紧急关断阀,只有开关两点;PCV有两种,一种是调节阀,...
...蒸汽发生器有什么共同点和区别?,PLC蒸汽发生器哪个最好用??
[回答]轻质隔墙板是一种新型节能墙材料,它是一种外型象空心楼板一样的墙材,但是它两边有公母隼槽,安装时只需将板材立起,公、母隼涂上少量嵌缝砂浆后对拼...
你觉得女人是怎样一步步变成“黄脸婆”的?
油烟除了能让女人变成黄脸婆之外,长期吸入油烟会带来什么危害?如何减少油烟对人体的危害呢?那么在肺癌如此高发的情况下,女性应该做哪些肺癌筛查或者是预防措...
脱硫液提盐主要流程是什么?
[回答]排放。本装置设置两套文氏管吸气系统,另一套将废气洗净塔的塔顶的含氨废气吸入,同样用清液喷淋洗涤后从塔顶排放。两台清液泵有以下功能:一是向文氏...
请问什么是δ受体?–960化工网问答
与G蛋白偶联的效应器主要分为三类:AC-cAMP、PLC-IP3/DAG、离子通道(Ca2+与K+),这些效应器控制着众多的细胞指标,如膜电位、细胞内Ca+水平,以及众多的蛋白激酶活...
《不识字的老师》阅读题答案-mJplCfLkt3F的回答-懂得
渔夫阅读吗?《不识字的老师》阅读答案?那个年代的留美学生,暑假打工是惟一能yán续求学的方法。仗着身强体壮,这年我找了份高薪的伐木工作,在科罗...
扫一扫微信交流