S7-1200PLC控制信号灯闪烁的两种方法
在很多工业场合中,经常用LED按一定的频率闪烁来实现信号指示功能,例如红灯闪烁表示报警,黄灯闪烁表示设备处于准备状态等。如何实现LED灯的闪烁效果呢?通常使用以下两种方法:
例题:Q0.0外接一个LED发光二极管作为信号指示灯,要求PLC系统上电后LED灯以1Hz频率闪烁。
方法一:两个定时器交替工作产生脉冲信号,程序如下图所示
方法二:使用系统时钟脉冲存储器直接产生脉冲信号
在S7-1200PLC程序中除了使用两个定时器来产生脉冲信号,还可以应用PLC的系统和时钟存储器来产生特定频率的脉冲信号。时钟存储器的设置和使用步骤如下:
(1)在博图项目文件中双击“设备和网络”;
(2)鼠标双击PLC的CPU图标,下方将弹出该PLC的属性窗口;
(3)在属性窗口左侧目录中双击“系统和时钟存储器”选项;
(4)勾选启用时钟存储器字节将其激活;
(5)如下图所示可以看到PLC中支持几种特定频率的时钟存储器,我们需要选用的是1Hz的始终存储器,其默认地址为M0.5。
(6)在程序中只需调用该存储器就可以产生1Hz的脉冲信号,编程PLC程序如下图所示
这种方式的优点是程序结构简单,使用方便。缺点是产生的时钟脉冲频率是固定的。
用S7-1200 PLC实现循环彩灯的控制,含源程序
在S7-1200型PLC的实际编程工作中,无论是经验设计法还是顺序控制设计法对于要求比较复杂的任务都会产生大量的程序段,可读性差。本实例通过常见的循环彩灯控制为例,了解学习S7-1200型PLC程序块的应用。
相关知识:移动操作相关指令
(1) 移动值MOVE指令
MOVE指令用于将IN输入端的源操作数(数值或地址中的数据)赋值给输出端OUT1指定的地址中,指令执行后源操作数保持不变。该指令支持的数据类型为除Bool型数据之外的所有数据类型。
如下图程序段是PLC上电后将Q0口数值清零,一般用于系统的上电复位。
如果输入 IN 数据类型的位长度超出输出 OUT1 数据类型的位长度,则源值的高位会丢失。如果输入 IN 数据类型的位长度低于输出 OUT1 数据类型的位长度,则目标值的高位会被改写为 0。
小提示: 移动指令MOVE一般用于批量给输出寄存器Q赋值,或者在输入信号较多的情况下批量读取输入寄存器I中的数据。
例1:控制Q1.0~Q1.7上连接的8位彩灯隔一跳一点亮
再加一个按位操作的程序进行对比
例2:读取一位拨码开关输入的数值并保存在辅助寄存器M中
再加一个按位操作的程序进行对比
通过以上对比可以看出,在一些特定情况下使用MOVE指令可以可以大量简化程序步骤。
任务布置
选用5个点动按键S0~S4给PLC的输入信号,作为花样功能选择键,8个发光二极管LED0~LED7作为PLC的输出信号,编写程序实现8个发光二极管闪烁花样的切换显示。
按下按键S1,发光二极管点亮1个,并向右循环移动点亮,每秒移动1位;
按下按键S2,发光二极管点亮2个,并向右循环移动点亮,每秒移动1位;
按下按键S3,发光二极管点亮3个,并向右循环移动点亮,每秒移动1位;
按下按键S4,发光二极管点亮4个,并向右循环移动点亮,每秒移动1位;
按下按键S5,发光二极管点亮5个,并向右循环移动点亮,每秒移动1位;
任务实施
(1) 任务分析
1)在实际应用中压力传感器是将水的压力值转换成电压信号输入给PLC、单片机等控制系统,这个输入信号是模拟量。在模块中用可调电位器来模拟了压力传感器,电位器输出的电压范围是0~5V,对应的压力量程为0~0.1MPa。S7-1200PLC集成了两路模拟信号输入,传感器将电压信号输入PLC后会经过A/D转换成范围0~27648的数字量保存在IW64中。所以在本任务中要设法将地址IW64中采集的数字信号值还原成以Pa为单位的压力值。
2)系统要求有手动和自动两种工作模式,不同工作模式由点动按键ME进行切换,因此在梯形图程序编写时采用手动单步运行程序和自动连续运行程序两个函数块进行调用,具体转换条件如下图所示。
(2)I/O地址分配表
该系统共有5个输入,3个输出,资源分配如下表。
按照I/O分配表设置PLC变量,在Portal V13 软件中设置PLC变量表如下图所示
(3)硬件接线图 按照任务控制要求和I/O地址分配表画出硬件接线图并插接导线。
此处就略过不再详细解释了
(4)梯形图程序
重点难点详解:该任务有自动连续运行和手动单步运行两种工作模式,并由点动按键ME作为切换条件,设置以下4个函数功能块:
完整梯形图参考程序
OB1中的程序
FC1 上电初始化
FC4 300ms脉冲信号
FC3跑马灯循环
FC4控制循环次数
相关问答
plc灯闪烁的频率如何写?
1HZ就是1秒一次,用1秒时钟脉冲就可以。PLC输出的频率,可以当做周期来看,比如红灯闪烁,蜂鸣器响之类的,单位是Hz(赫兹)脉冲就不一样了,比如输出点外接伺...
plc让灯闪烁的指令?
要让指示灯闪烁的话,将控制指示灯的Y点由定时器定时置ON/OFF就可以了,这样闪烁频率可调。或者使用内部时钟脉冲出点FX系列为M8013,Q系列为SM412一秒ON/OFF一次...
PLC设计灯光闪烁电路,要求按下开启按钮后开始闪烁,每秒闪一...
为什么不用国产PLC有用(0)回复展开查看全部5条讨论精品应用推荐新浪微博...附加:纠结要不要带数字键盘区。预算最多8000。尽量便宜些。1.2万浏览2回...
三菱PLC输出时LED指示灯有微弱闪烁?
可能led有问题,可能电压不足。也有可能程序有问题大概就这么些情况,教你怎么试灯,你把闪烁的led比如这个led是y0那么在程序里把y0改成y1试试y1闪烁不如果闪就...
plc控制红绿灯闪烁是什么原因?
plc红灯一直闪是因为plc内部存在错误,上电初始化时没有通过,无法进入正常运行状态。如果手上有程序的备份的话,可以一根串口的PPI编程电缆,然后用安装程序中...
1200plcerror灯闪烁为什么能正常工作?
ERROR:表示PLC程序或CPU出错的LED。程序错误时闪烁、CPU错误时灯常亮、运行正常时灯灭。检查下通信的账号是否设置正确,是否连接上西门子通讯故障的原因是内...
plc输入输出红灯闪烁是何故障?
PLC输入输出红灯闪烁可能是由于以下故障引起的:1.输入信号异常:输入信号可能出现短路、断路或信号干扰等问题,导致红灯闪烁。2.输出故障:输出模块可能存在...
plc输出输入指示灯闪烁是怎么回事?
1.可能是PLC损坏(或是输出端有损坏),你可以写一个简单的自锁程序来进行端口好坏的验证。2、误判,对于PLC,输出方式有两种,一种是继电器输出,一种是晶体管...
三菱plc2n电池灯闪是什么意思?
1说明plc内的锂电池寿命已经快结束了,则需要尽快更换新的锂电池,以免PLC内的程序自动消失。如果更换新的锂电池后,该LED灯仍然亮着,则可能是CPU板存在故障。[...
plc红灯一直亮怎么回事
[最佳回答]1、PLC的I/O指示灯,就是输入/输出指示灯,当PLC的输入有信号时,相应的输入指示灯就亮了,当程序里控制输出有信号时,相应的输出指示灯就亮了,这是正常...