有什么灯可以用plc编程 用S7-1200 PLC实现循环彩灯的控制,含源程序

小编 104 0

用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组成一个控制器,每按一次按钮增加一组灯亮;三组灯全亮后,每按一次按钮,灭一组灯(为了使每组灯亮的时间尽量相等,要求先亮的灯先灭);如果按下按钮的时间超过两秒,则灯全灭。

1.首先,根据题意编写符号表。

2.电路设计

根据控制要求,可用字节加一指令计数器INC_B组成一个计数器,计数值用MB0的低3位表示,用计数器的结果控制三个灯的组合状态。计数器的值与三个灯的逻辑关系如表所示。

由上述关系图可以得出PLC接线图和控制梯形图:

说明:

网络1,I0.0(按钮SB)按下后INC_B向上计数,因为使用了下降沿触发(N),所示是I0.0由1到0时才向上计数(也就是说是按钮松开时计数)。这里使用下降沿触发是为了使计数与按2S停止的信号相互错开,以防程序出错。

网络2,3,4:根据图表,当计数器为1、2、3时灯1亮,当计数器为2、3、4时灯2亮,当计数器为3、4、5时灯3亮。计数器MB0由M0.0至M0.7 8个位组成,每个位由0和1两种状态,那么MB0的值为0到255,计数器为1时M0.0为1,计数器为2时M0.1为1,计数器为3时M0.0,M0.1为1,计数器为4时M0.2为1,计数器为5时M0.0,M0.2为1,计数器为6时M0.1,M0.2为1,根据这些计数值与输出的关系将Q0.0、Q0.1、Q0.2与M0.0、M0.1、M0.2的对应逻辑关系写出。

网络5:为了使程序能循环使用,必须使计数器复位。此题当计数值为6时,也就是M0.1,M0.2为1时,将计数器复位。并且根据题意,按按钮2S也要讲计数器复位。

网络6:当I0.0按2S以上时,T37动作去复位计数器。

除了上述方法,还可以利用计数器C0来控制三个灯的组合状态,具体如下:

说明:网络1使用向上计数器C0代替上一个的INC_B,计数器C0的动作原理:每次向上计数输入CU从关闭向打开转换时,向上计数(CTU)指令从当前值向上计数。当前值(Cxxx)大于或等于预设值(PV)时,计数器位(Cxxx)打开。复原(R)输入打开或执行"复原"指令时,计数器被复原。达到最大值(32,767)时,计数器停止计数。.根据题意,CU接I0.0的下降沿,R接T37(2s复位)或CO位——使按钮时间达到2S或计数器到6时自行复位。PV为6.

网络2:当I0.0按2S以上时,T37动作去复位计数器。

网络3:SM0.0为PLC系统特殊位,其功能为一直通。因为当计数器为1、2、3时灯1亮,当计数器为2、3、4时灯2亮,当计数器为3、4、5时灯3亮。所以使用比较整数指令,当C0为1、2、3时灯1亮,当C0为2、3、4时灯2亮,当C0为3、4、5时灯3亮。

相关问答

plc怎么让4灯依次亮?

关于这个问题,要让4盏灯依次亮,需要使用PLC的输出模块和定时器模块来控制电路。以下是一种实现方法:1.将4盏灯连接到PLC的输出模块上,每个灯对应一个输出...

灯光秀是用plc编程的吗?

灯光秀可以使用PLC编程来控制灯光的变化和效果。PLC(可编程逻辑控制器)是一种专门用于工业自动化控制的设备,它可以接收输入信号,根据预设的程序和逻辑,输出...

高楼灯光秀用的什么灯?

灯光秀是运用LED投光灯,在大楼的墙壁上的投影,随着音乐变换灯光色彩形成。高楼灯光秀是用PLC编程,一盏灯作为一个象素点来控制,布线比较麻烦些。外墙面立面...

109ma的灯能用plc直接驱动吗?

根据您提供的信息,109ma的灯可以使用PLC直接驱动。PLC(可编程逻辑控制器)是一种用于自动化控制的设备,可以通过数字信号输出来控制外部设备。只要PLC的输出信...

plc编程实现15个指示灯依次轮流点亮?

这个很简单。我用的是西门子的,就用西门子举例吧,常亮的直接输出,闪烁的用时钟m0,有8个不同的闪烁频率,你选一个就行了去当另外两个指示灯。并联输出。如...

求编PLC程序.某一十字路口红绿灯,要求南北绿灯先亮8秒,黄灯...

[最佳回答]这是小儿科,有步入进就更加容易,

plc的灯闪烁怎么编程?

PLC编程实现灯闪烁主要有两种方法:1.使用计时器(Timer)步骤:-定义一个BOOL型变量控制灯的ON/OFF,比如Light。-定义一个TP型计时器,比如Timer1。起始时...

如何在PLC中表示两个开关控制一个灯?

在PLC中表示两个开关控制一个灯可以通过逻辑门实现。使用两个输入开关和一个输出灯,通过AND逻辑门将两个开关的信号连接,输出与和开关信号相连,该输出信号连接...

pLc第四盏灯闪烁是什么意思?

PLC是可编程逻辑控制器,它通过编程控制电气设备的运行。当PLC的第四盏灯闪烁时,通常意味着PLC系统存在故障或异常。这可能是由于电源故障、通信故障、软件错误...

博途plc编程如何实现灯的闪烁?

要实现灯的闪烁,可以使用博途PLC编程中的定时器和计数器功能。首先,设定一个定时器进行时间计数,当计时器达到一定时间时,使计数器加1。然后,通过判断计数...