「分享」PLC初学者必须掌握的小程序
关注“PLC发烧友 ”,一起涨知识!
回复:西门子全套 ,领西门子系列资料包!
PLC初学者 建议学习步骤:
1:如果没有电工方面的基础,我们应该从认识硬件及它的工作原理,接线开始;比如中间继电器、接触器、断路器、正反转电路、自锁电路、互锁电路等!
2:如果有电工基础可以找些PLC相关的视频,比我们自己看书走马观花要实在;现在很多网站视频都非常的详细
3:熟悉编程软件的基本使用,如上下载程序、PLC运行/停止模式在软件上如何切换操作等
4:继续熟悉编程软件和仿真软件的使用,自己编写程序,下载至仿真器模拟仿真,根据案例学习
5:然后学习继电器 ,定时器,计数器,逻辑指令、传送指令、四则运算等指令
6:认识各种传感器及NPN 和PNP传感器的区别,各种接近开关,电磁阀,电机及其相关原理和知识
7:买一台PLC当做学习机;同时电脑也是必不可少的
8:学习高速计数、模拟量、运动控制、通信、HMI的画面编辑(初学阶段也可暂时不学)
9:仿照一些案例可以自己做实操,不断去尝试。
10:强化自己的开关量练习,喷泉程序、一键启停、控制方式选择、延时启停、顺启逆停等程序
以上10点搞定,你已经超越了PLC初学者了,应该可以自己搞一些小的项目案子了
对于PLC的使用已经入门的进阶者来说,接下来就需要对PLC的各种应用功能进行学习了,在实际的生产设备中经常会用到伺服、步进,变频器,触摸屏等设备组合使用,要能够熟悉的对这些设备进行组合使用,我们需要对PLC的过程控制、定位控制,通信控制等各种功能进行学习,如果有条件话,建议自己也可以组装一套学习机箱的设备,箱子里面可以放PLC、伺服、模拟量、步进电机等等的设备。把设备都买回家,然后自己组装,自己做实操演练使用。对于学习PLC有非常大的帮助
下面我们分享几个小案例程序供大家参考学习
控制要求一
一个按钮控制4个灯的启停,一个急停按钮,要求:每按一次按钮,亮一个灯,再按一次亮两个,再按一次亮三个,最后一次四个全部亮,全部亮后此时按一次按钮,熄灭最后一个亮的灯,再按一次灭第三个,直到第一个熄灭后,又可以再重新启动第一个灯,一直循环周而复始,如果按下急停,所有的灯熄灭
本案例采用S7-1200系列PLC编写,程序参考如下:
控制要求二
一台电机既可点动控制,也可长动控制,两种控制方式之间要有互锁
控制要求三
控制方式选择一个启动按钮,按一下时电机可点动控制,按5S是为长动控制,按10S时为启动后延时自动停止;一个模式选择开关、一个启动按钮、一个点动按钮、一个急停按钮、一个输出点Q 切换方式时,输出Q点必须停止
控制要求四
控制电机的启动并监视电机的运行时间,按下启动按钮,电机运行,按下停止按钮,电机停止,在停止按钮为NO时,,按下测试按钮可测试,电机是否正常运行
作者:技成-眭相建,未经授权不得转载!
用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控制一个灯怎么编程?
编写西门子PLC控制灯的程序,首先需要创建一个输出点,该点连接到控制灯的电路。然后将该输出点的初始状态设置为关闭。在程序的主循环中,通过读取输入数据,判...
plc中如何加一个灯当报警系统?
要在PLC中加一个灯当报警系统,需要通过编程将该灯与相应的报警条件关联起来。首先需要定义一个输入信号,例如一个开关或传感器,用于监测报警条件。当该条件满...
plc八个灯循环指令有哪些?
也就是说循环左移1位就是向左移动1位最高位移到最低位处循环右移1位相应的位向右移动1位最低位移到最高位移位指令是PLC的一条重要指令,可用于步进顺序控制...
plc模拟量输入通道指示灯常亮吗?
PLC的输入端口有信号,相应的输入指示灯就会亮,因此如果给PLC输入端口的信号是脉冲的,比如编码器的信号,那么对应的输入指示灯就是闪烁的状态。是正确的状态。...
plc模块报橙色灯什么意思?
橙色:表示设备需注意或需要人工干预。PLC200指示灯的各种颜色含义如下:-绿色:表示设备正常工作或任务执行成功。-红色:表示设备出现故障或任务执行失败。-...
plc制作霓虹灯的方法?
下班有时间,自己弄了下,用仿真器试了试,可以用,请参考,有问题可以继续问我:软件:Step7-300/400其中,灯1-16分别是Q0.0-Q1.7,I0.1是开始按钮,M点作为...下班...
plc如何实现让一个灯常亮?
第一,可以用带自锁功能的按钮开关。这个控制最简单,而且不需要PlC。第二,可以用复位按钮开关(不具备自锁),这个需要接PLC。复位开关作为PLC的一个输入信号...
plc呼吸灯的原理和程序?
PLC呼吸灯的原理是通过控制PLC输出信号的变化,使灯光逐渐从暗到亮再从亮到暗,形成呼吸灯的效果。程序方面,需要使用PLC的计时器、比较器等功能模块,设定相应...
西门子1500sf故障灯解决方法?
西门子sf故障灯解决方法:1、把plc里的程序先清除掉,sf灯还亮估计就是硬件坏了,如果不亮了,就可能程序有问题,再在线看看plc信息s7-300plc上sf灯亮而bf...西...
plc输入端灯一闪一闪没有输出?
1、PLC损坏(或是输出端有损坏),你可以写一个简单的自锁程序来进行端口好坏的验证。2、误判,对于PLC,输出方式有两种,一种是继电器输出,一种是晶体管输出...1...