PLC中方波输出的实现
前些天,我的一个客户向我咨询。咨询的问题是:根据目前生产情况,工艺要求对两台阀门采用定时自动开关。具体思想是:当阀门关闭30秒后,自动打开;打开1分钟后,自动关闭,来回自动执行开关操作,除非有故障状态,否则无需人为参与。其实这个问题解决,对有一定项目经验的人来说非常简单,但是对小白或者是初学者来说,那就未必。鉴于此,我就有了一个想法,那就是撰写一篇如何实现方波输出的PLC程序段介绍,供读者参考。
常说解决问题的方法千千万万,条条大道通罗马。对实现某项功能来说,同样有很多方法,本文介绍用定时器来实现方波输出。
在PLC中,定时器种类很多,有延时导通定时器、延时断开定时器等。而对不同厂家的PLC,定时器代号可能不一样,但是其功能原理都一样的。这里以罗克威尔(AB)PLC为例来做讲解。要实现方波输出,需要延时导通定时器、延时断开定时器,其符号分别是:TON、TOF,定时器为毫秒型(1s=1000ms,如预设值为1000时,计时时间为1s)。下面我们来具体讲讲如何实现该功能。
一、变量定义
1、标签名:test1,数据类型:bool,功能:用于测试启动、关闭定时器;
2、标签名:TIM1,数据类型:TIMER,功能:用于延时导通定时器;
3、标签名:TIM2,数据类型:TIMER,功能:用延时断开定时器;
4、标签名:TIM1_PRE_SP,数据类型:DINT,功能:用于延时导通定时器预设值,便于HMI修改方波宽度;
5、标签名:TIM2_PRE_SP,数据类型:DINT,功能:用于延时断开定时器预设值,便于HMI修改方波宽度;
6、标签名:FangBo,数据类型:bool,功能:输出方波变量,在趋势图中的趋势为该变量的趋势展现图。
在定时器中用到定时器的几个参数:TIM1.DN,为延时导通定时器的完成计时状态,当计时达到预设值后,该参数输出1;如果定时器未恢复计时,该参数一直为1,直到重新计时和计时期间为0;TIM2.DN,为延时断开定时器的完成计时状态,当计时达到预设值后,该参数输出0;如果定时器未恢复计时,该参数一直为0,直到重新计时和计时期间为1;TIM2.TT,为延时断开定时器的计时状态,定时器正在计时时,该状态为1,否则为0.
二、程序的实现
程序编写为logix5000,程序如图:
方波程序
三、仿真效果
1、高电平时间:2s,低电平时间:4s
2、通过改变TIM2_PRE_SP参数的值,来改变高电平的时间,调整该参数为10000(高电平时间为10s),效果如下图所示:
改变了电平时间
总结:
在PLC中,要是实现方波输出,实现起来很简单,但是在使用定时器时,要认真阅读手册关于该定时器的使用说明。
好了,本文就写到这里,欢迎读者指正。
如何在s7-200smart PLC上实现可调方波输出?
在前面一篇文章里,我写了关于AB PLC如何实现可调的方形波输出。由于西门子PLC与AB的PLC存在比较大的差异,今天我就以s7-200smart PLC为例,讲解一下s7-200smart PLC中是如何实现方波输出的。
第一步,编写程序,如下图所示:
程序说明,为了仿真和开启方波输出,定义I0.0为方波启动开关,T37是以100ms为基准的时间定时器,当接通时,定时器开始定时,时间达到设定时间时,定时器输出,此时定时器会继续计时,知道达到最大值或者使能断开。同样为了仿真的时候方便更改波形输出宽度,这里选用AIW16作为低电平宽度输出设置地址、AIW18作为高电平宽度输出设置地址。Q0.0为方波输出。
第二步:将程序导出为**.AWL文件,这里导出文件为s11.awl。
第三步:打开仿真平台,并组态相应模块,如下图所示:
1、DO输出状态指示灯,依次是Q0.0~Q1.7,有输出时,指示灯亮。
2、DI输入状态指示灯,依次为I0.0~I2.7,有输入时,指示灯亮。
3、模拟量输入地址区,可修改,AIW16为本次用于设置低平宽度的地址,AIW18为设置高平宽度的地址。
其他说明,详见图上所示。
第四步:将导出的s11.awl装载到仿真软件中,装载成功后如图所示:
第四步:调出监控表窗口,并将I0.0设置为强制状态,便于写入启动方波程序。如下图所示:
第五步:设置好方波输出宽度,实例中设定值均为20,代表方波输出为2秒高低电平切换,并启动CPU处于运行状态,如下图所示:
第六步:强制I0.0为1,自动方波程序,如图,I0.0可以通过状态指示灯查看,灯亮代表状态为1。图中编号1-2-3-4,代表Q0.0输出状态。
由于本仿真没有办法像AB PLC那样有趋势图,所以只能以这样的方式粗略说明。盼各位读者海涵。
相关问答
1200plc循环中断怎么控制方波?
答:1200plc循环中断怎么控制方波:1.功能循环中断OB在经过一段固定的时间间隔后执行相应的中断OB中的程序.S7-1200最多支持4个循环中断OB,在创建...
在STEP7中怎样实现方波发生器的功能?
STEP7中实现“方波发生器”的方法有很多,通常可解忧定时器来实现。下面,我们以“脉冲定时器S_PAUSE”加以说明。一、脉冲定时器S_PAUSES_PAUSE在STEP7中称为...
电脑哪个软件可以看方波?
MATLAB,plc
请教高手解决一下:PLC的振荡电路原理是什么?
PLC振荡电路其实就是两分频电路的俗称。也就形成方波的程序。用定时输出就可以实现了PLC振荡电路其实就是两分频电路的俗称。也就形成方波的程序。用定时输出...
[求助-西门子PLC300/400]300plc如何在step7中编程使定时器的时间可以设置?
参考下载中心文档:A0019S7-300_STEP7中的时间_日期_定时器A0087step7中有关时间和定时器的使用和例程这种方波脉冲输出可以用一个定时器做脉冲周期,然后按...
西门子PLC是怎样控制伺服系统的?
西门子PLC可以通过输出高速脉冲给伺服驱动器,从而控制伺服电机。输出脉冲方波的频率的快慢,决定伺服电机转动快慢。输出脉冲方波的个数决定伺服电机转动圈数。...
伺服驱动器是通过放大plc发出的脉冲信号来驱动伺服电机的吗?
不是简单放大,PLC输出的只是方波,而驱动器输出的是正弦波。可以理解成PLC的脉冲是伺服驱动器的工作指令,好比领导的工作指示,伺服驱动器是给领导干活的干事,...
pLc输入和输出怎么检测好坏?
PLC输入和输出的好坏可以通过以下几个步骤进行检测:1.检查PLC输入和输出的连接:首先需要检查PLC输入和输出的连接是否正确,包括连接线是否插好、连接端口是...
请问S7-300怎样用SP定时器实现循环计时?
用PLC实现这个,有很大局限性,首先考虑频率是否能满足,其次考虑量化误差(除方波外)。PLC实现主要是利用模块输出功能,用DO模块实现方波,AO模块实现三角波...
plc中上升沿在一个周期结束后,是否保持之前的值?
如果输入信号是一个正弦波,...因此,上升沿在一个周期结束后,输出信号会保持之前的值。例如,如果输入信号是一个正弦波,那么上升沿触发器会在每个正弦波的上...