单片机彩灯移动实验_用S7-1200 PLC实现循环彩灯的控制,含源程序

本实例通过S7-1200 PLC展示如何控制循环彩灯,包括MOVE指令的使用,以及根据按键切换不同数量的彩灯以不同速度移动。详细讲解了程序设计、I/O地址分配和梯形图程序的编写,以实现不同模式的彩灯效果。
AI助手已提取文章相关产品:

在S7-1200型PLC的实际编程工作中,无论是经验设计法还是顺序控制设计法对于要求比较复杂的任务都会产生大量的程序段,可读性差。本实例通过常见的循环彩灯控制为例,了解学习S7-1200型PLC程序块的应用。

相关知识:移动操作相关指令

(1) 移动值MOVE指令

MOVE指令用于将IN输入端的源操作数(数值或地址中的数据)赋值给输出端OUT1指定的地址中,指令执行后源操作数保持不变。该指令支持的数据类型为除Bool型数据之外的所有数据类型。

如下图程序段是PLC上电后将Q0口数值清零,一般用于系统的上电复位。

1052e6d78451f6fec8554be1bcb7c0d0.png

如果输入 IN 数据类型的位长度超出输出 OUT1 数据类型的位长度,则源值的高位会丢失。如果输入 IN 数据类型的位长度低于输出 OUT1 数据类型的位长度,则目标值的高位会被改写为 0。

小提示:移动指令MOVE一般用于批量给输出寄存器Q赋值,或者在输入信号较多的情况下批量读取输入寄存器I中的数据。

例1:控制Q1.0~Q1.7上连接的8位彩灯隔一跳一点亮

1fe0069269143a86c2239a8084808d28.png

再加一个按位操作的程序进行对比

例2:读取一位拨码开关输入的数值并保存在辅助寄存器M中

1f74bc84279dcae01aafc1aafa6b6b7a.png

再加一个按位操作的程序进行对比

通过以上对比可以看出,在一些特定情况下使用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变量表如下图所示

b0ea2965e8869e64f72bc72aca097fd4.png

(3)硬件接线图按照任务控制要求和I/O地址分配表画出硬件接线图并插接导线。

此处就略过不再详细解释了

(4)梯形图程序

重点难点详解:该任务有自动连续运行和手动单步运行两种工作模式,并由点动按键ME作为切换条件,设置以下4个函数功能块:

1bb8ab4ec5abbca5d5dc56c3d462da6f.png

完整梯形图参考程序

OB1中的程序

2be62748f23549dc1868dee7c4023f52.png

FC1 上电初始化

f40a5b6d37f4957ec03e051bc8f0f038.png

FC4 300ms脉冲信号

dd2dfb755e734f49958ea3ca155d262e.png

FC3跑马灯循环

4d6f987e95b0cec7d789a16d1c8a9f35.png

FC4控制循环次数

eef2f78d94cdcc0b4faec5e9747cb125.png

您可能感兴趣的与本文相关内容

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值