S7-1200 PLC循环移位指令做流水灯控制
基于PLC控制的流水灯的设计与制作毕业设计
![基于PLC控制的流水灯的设计与制作毕业设计](https://img.taocdn.com/s3/m/84eadbb402768e9950e738ab.png)
毕业设计(论文)基于PLC控制的流水灯的设计与制作Based on PLC control water lights design and production班级应用电子092学生姓名学号指导教师职称副教授/副教授导师单位徐州工业职业技术学院论文提交日期2011 年11 月23日徐州工业职业技术学院毕业设计(论文)任务书课题名称基于PLC控制的流水灯的设计与制作课题性质设计与制作班级应用电子092学生姓名学号指导教师导师职称一.选题意义及背景流水灯控制电路是灯光控制器的一个分支,由于流水灯所具有的特有流动感而广泛应用于广告控制及人们生活中,给人们一种美感,为人们生活带来乐趣。
在现代生活中,大型楼宇的轮廓装饰或大型晚会的灯光布景,由于其变化多、功率大,数字电路则不能胜任。
针对PLC日益得到广泛应用的现状,本设计采用PLC设计流水灯,灯的亮灭、闪烁时间及流动方向的控制均通过PLC控制来达到控制要求。
作为电类专业即将毕业的学生在学习完全部专业课程后,应该能独立地设计制作一种实用而又具有一定复杂程度的控制装置。
通过本设计制作,培养学生的设计机电控制装置的思路,学会制定设计方案,掌握PLC的综合应用以及一般机电控制装置设计的方法,培养学生综合分析问题的能力和提高工程实践的能力。
二、毕业设计(论文)主要内容合理选择PLC类型、LED型号,设计流水灯控制电路,具体要求如下:1、画出流水灯控制流程图;2、合理选择PLC的型号;3、合理分配PLC的I/O接口;4、画出相应的PLC接线图;5、编写控制程序并上机模拟调试。
(提示:选用我院实验室具备的FX2N—48MR可编程控制器,以便调试)。
三、计划进度四、毕业设计(论文)结束应提交的材料1、制作实物并调试成功;2、提交设计论文(设计的电路图中的符号必须符合图形符号的国标规范,论文格式必须符合文字出版物国家规范)。
指导教师:张明金教研室主任:张明金2011年10月12日2011年10月12日论文真实性承诺及指导教师声明学生论文真实性承诺本人郑重声明:所提交的作品是本人在指导教师的指导下,独立进行研究工作所取得的成果,内容真实可靠,不存在抄袭、造假等学术不端行为。
PLC应用技术项目教程(西门子S7-1200)项目3 彩灯控制系统设计
![PLC应用技术项目教程(西门子S7-1200)项目3 彩灯控制系统设计](https://img.taocdn.com/s3/m/a77626b5afaad1f34693daef5ef7ba0d4b736d51.png)
任务3.1 彩灯控制系统设计
知识点2 移位与循环移位指令
SIMATIC S7-1200的移位和循 环指令包含向右移位指令、向 左移位指令、循环向右移位指 令、循环向左移位指令。
任务3.1 彩灯控制系统设计
知识点2 移位与循环移位指令
任务3.1 彩灯控制系统设计
知识点3 比较指令
等 于 指 令 CMP== 、 不 等 于 指 令 CMP>< 、 大 于 或 等 于 指 令 CMP>= 、 小 于 或 等 于 指 令 CMP<=、大于指令CMP>、小于 指令CMP<等六条指令的上方为操 作数1,下方为操作数2。
六条指令分别在操作数1等于、不 等于、大于或等于、小于或等 于、大于、小于操作数2时,返回 运算结果1,否则返回0。
任务3.1 彩灯控制系统设计
知识点2 移位与循环移位指令
循环移位指令用于将输入 IN 中 操作数的内容按位向右循环移 位 , 并 在 输出 OUT 中查 询 结 果。参数 N 用于指定循环移位 中待移动的位数。用移出的位填 充因循环移位而空出的位。
注意: ✓ 如果参数 N 的值为“0”,则将输入 IN 的值复制到输出 OUT 的操作数中。 ✓ 如果参数 N 的值大于可用位数,则输入 IN 中的操作数值仍会循环移动指定位数。
任务3.1 彩灯控制系统设计
知识点1 移动指令
“移动块”指令将一个存储区 (源范围)的数据移动到另一 个存储区(目标范围)中。使 用输入 COUNT 可以指定将移 动到目标范围中的元素个数。 可通过输入 IN 中元素的宽度 来定义元素待移动的宽度。
任务3.1 彩灯控制系统设计
S7-1200 PLC的指令
![S7-1200 PLC的指令](https://img.taocdn.com/s3/m/4565b9d976a20029bd642dea.png)
2020/3/4
26
扩展指令——日期时间指令—日期时间的数据类型
数据类型Time的长度为4B,取值范围为: T#-24d_20h_31m_23s_648ms T#24d_20h_31m_23s_648ms -2147483648ms 2147483647ms
数据结构DTL(日期时间)如表:
数据 年 月 日 星期
字节数 取值范围 数据
2
19702554
h
1
1 12
min
1
1 31
s
1 17(周日周六) ns
字节数 取值范围
1
023
1
059
1
059
4 0999999999
2020/3/4
27
扩展指令——日期时间指令—时间转换、相加、相减、时间差
T_CONV(时间转换)用于将数据类型Time转换为DInt,或者作反向的转换。IN和OUT 参数均可以去数据类型Time转换为Dint。
7
基本指令——比较指令——举例 1/2
用接通延时定时器和比较指令组成占空比可调的脉冲发生器。
M2.0和接通延时定时器TON组成一个脉冲发生器,使MD4中TON的已耗时间从0到 3000不断变化。
2020/3/4
8
基本指令——比较指令——举例 2/2
M2.0
一个扫描周期
Q0.0
2s
3s
Q0.0为0的时间取决于比较触点下面的操作数的值。
2020/3/4
2
基本指令——比较指令 2/2
2020/3/4
3
基本指令——比较指令——举例 1/2
用比较和计数指令编写开关灯程序,要求灯控按钮I0.0按下一次,灯Q4.0亮,按下两 次,灯Q4.0,Q4.1全亮,按下三次灯全灭,如此循环。
任务26流水灯显示PLC控制
![任务26流水灯显示PLC控制](https://img.taocdn.com/s3/m/7f3f76a6ba0d4a7303763a24.png)
(三)“流水灯显示PLC控制”程序分析==循环移位指令
18
(三)“流水灯显示PLC控制”程序分析==寄存器移位指令
19
(四)“流水灯显示PLC控制”调试检修
调试:在老师的现场监护下进行通电调试,验证是否符合设计 要求。 (1)编写梯形图程序,编译后将编译好的梯形图程序下载到 PLC中。 (2)按下启动按钮SB1,输出端口QB0指示灯L1~L8间隔1s依 20 次循环点亮,按下停止按钮SB2,输出端口QB0指示灯L1~L8 全部熄灭 。
检修:如出现故障,学生应独立完成检修调试,直至能够正常工作。 (1)检修线路连接是否正确。 (2)梯形图程序编写中移位指令及数据传送指令使用是否正确 。
思考:
21
1.八盏流水灯PLC控制:PLC输出端口控制8个指示灯L1~ L8(任意时刻仅有1个灯点亮),启动开关闭合后指示灯间隔1s自 L1到L8依次循环点亮,启动开关断开后指示灯间隔1s自L8到L1依 次循环点亮。按下停止开关指示灯熄灭。
例程 :单数据传送指令
数 据 传 送 指 令
6
I0 .0→ VW200=1800 I0 .1→ VW200=1200 I0 .2→ VW200=600
例程 :数据块传送指令
数
据 7
传
送
指 令
VW0 → VW6=1
VW2 → VW8=2
/
例程 :字节交换/填充指令
字 节 交
8
换 填 充 指 16#1A23 → VW100 = VW102 令
案
过依次移位逐个点亮输出端口QB0的八盏灯 。
Q0.7 Q0.6 Q0.5 Q0.4 Q0.3 Q0.2 Q0.1 Q0.0
00000001
S71200PLC的指令
![S71200PLC的指令](https://img.taocdn.com/s3/m/2808c5b8580216fc710afd09.png)
2020/3/23
10
6.3 基本指令——数学运算指令——四则运算指令
方法1:双整数运算。乘法运算的结果可能会大于一个字能表示的最大值,因此使用 双整数的乘法和除法。
方法2:浮点数运算。
2020/3/23
11
基本指令——数学运算指令——其他整数数学运算指令
MOD指令:除法指令只能得到商,余数被丢掉,MOD指令可以用来求除法的余数。 NEG指令:将输入IN的值取反,保存在OUT中。 INC和DEC指令:参数IN/OUT的值分别加1和减1。 绝对值指令ABS:求输入IN中有符号整数或实数的绝对值。
2020/3/23
2020/3/23
14
基本指令——数学运算指令——浮点数函数运算指令 3/3
c a2 b2
2020/3/23
15
基本指令——数据传送指令 1/2
2020/3/23
17
基本指令——数学运算指令——转换指令
2020/3/23
18
基本指令——取整指令
由于浮点数的数值范围远远大于32位整数,有点浮点数不能成功转换为32位整数,此 时ENO为0状态。
2020/3/23
19
基本指令——标定指令
SCALE_X指令的浮点数输入值被线性转换为下限和上限定义数值范围之内的整数:
OUT=VALUE*(MAX-MIN)+MIN
2020/3/23
20
基本指令——标准化指令
三角函数和反三角函数指令中的角度均为以弧度为单位的浮点数。
2020/3/23
13
基本指令——数学运算指令——浮点数函数运算指令 2/3
11.S7-1200指令(比较、移位等)
![11.S7-1200指令(比较、移位等)](https://img.taocdn.com/s3/m/cad0c3bc0066f5335a81219e.png)
5.1.1 比较指令——例1
注意比较指令针对的数据类型是Time
5.1.1 比较指令——例2
用比较和计数指令编写开关灯程序。要求灯控 按钮I0.0按下第一次,灯Q4.0亮,按下第二次, 灯Q4.0、Q4.1全亮,按下第三次灯全灭。如此 循环。
关键点:在程序中所用计数器为加法计数器,当加到3 时,必须复位计数器。
模拟量输入的规范化
规范化的最大最小值与模拟量输入 0.0和 1.0 之间的值,然 后将其换算到 0 到 27648 之间或 -27648 到 27648之间
模拟量输出的规范化
Scale的最大最小值与模拟量输出通道的极性有关
5.1.4 数据传送指令
“1”);若执行有误,则能流就此中止 ➢ ENO可作为下一个方框的EN输入
哪些指令有EN和ENO? 传送与转换指令、数学运算指令、移位与循环指令、字 逻辑运算指令
5.1.3 数据转换指令
• 几种数据转换指令
1)CONV 数据类型转换
2)浮点数取整 浮点数转换为双字整数
3)SCALE_X 按比例,将百分比小数(浮点数)变为整数
比较指令都可以等效为一个触点,因为比较
的结果仅有两种情况:TRUE or False
5.1.1 比较指令
5.1.1 比较指令
1)基本的比较指令
• 功能:比较数据类型相同的两个数IN1和IN2的大小有符 号数或无符号数的大小,进而输出。
• 两个要素:比较符、数据类型 ➢ 比较运算符有6种:==、>=、<=、>、< 和 <> ➢ IN1和IN2数据类型(按长度分):字节(有符号、 无符号)、字(有符号、无符号)、双字整数(有 符号、无符号)、实数、字符和字符串、时间等
1200plc移位指令
![1200plc移位指令](https://img.taocdn.com/s3/m/0c7d7a9c29ea81c758f5f61fb7360b4c2f3f2a12.png)
1200plc移位指令移位指令是可编程逻辑控制器(PLC)中一种常用的指令,用于对数据进行位移操作。
在1200plc中,移位指令有着丰富的分类和广泛的应用。
本文将详细介绍1200plc移位指令的分类、应用实例以及编程技巧,以帮助读者更好地理解和使用这些指令。
一、移位指令的概述移位指令是将数据按照指定的位数进行左移或右移的操作。
在PLC编程中,移位指令常用于对输入信号进行处理,或者对中间结果进行位操作。
根据移位方向的不同,移位指令可分为左移指令和右移指令。
二、1200plc移位指令的分类及应用1.左移指令(SHL)左移指令将指定的数据向左移动指定的位数,最高位(符号位)不变。
左移指令在1200plc中的表示为:SHL [位地址],[移位位数]。
应用场景:当需要对一个二进制数进行多次加法操作时,可以使用左移指令将每次加法操作的结果左移一位,以实现高位补零的效果。
2.右移指令(SHR)右移指令将指定的数据向右移动指定的位数,最低位(符号位)不变。
右移指令在1200plc中的表示为:SHR [位地址],[移位位数]。
应用场景:当需要对一个二进制数进行多次减法操作时,可以使用右移指令将每次减法操作的结果右移一位,以实现低位补零的效果。
三、移位指令的编程实例以下是一个使用移位指令的编程实例:假设有两个16位的二进制数A和B,分别存储在地址100和200中。
我们需要对这两个数进行按位与操作,并将结果左移4位。
编程步骤:1.定义变量C,地址为300,用于存储运算结果。
2.编写移位指令:SHL 300, 43.使用与指令(AND)对A和B进行按位与操作,并将结果存储在C中:AND 100, 200, 300四、移位指令在实际工程中的应用技巧1.合理选择移位位数:根据实际需求选择合适的移位位数,既能满足功能需求,又能减少程序复杂度。
2.结合其他指令使用:移位指令可以与其他指令(如逻辑与、或、非等)结合使用,实现更复杂数字逻辑控制。
S7-1200第08讲:移动操作,转换,程序控制,字逻辑运算,移位与循环移位指令
![S7-1200第08讲:移动操作,转换,程序控制,字逻辑运算,移位与循环移位指令](https://img.taocdn.com/s3/m/57d1deb13968011ca2009161.png)
移动指令:
VariantGet:读取 SRC 参数所指向的变量,并将其写入到 DST参数的变 量中。
VariantPut:将 SRC 参数所引用的变量写入到 DST参数所指向的变量中。
CountOfElements:计算 IN参数指向的数组中所含数组元素的数目。
GET_ERR_ID:指示发生程序块执行错误,并报告错误的 ID(标识符代 码)。
RUNTIME:测量整个程序、各个块或命令序列的运行时间。
字逻辑运算指令:
AND、OR 和 XOR 逻辑运算指令: 所选数据类型将 IN1、IN2 和 OUT 设置为
相同的数据类型。 IN1 和 IN2 的相应位值相互组合,在参数
NORM_X:标准化通过参数 MIN 和 MAX指定的值范围内的参数 VALUE: OUT = (VALUE - MIN) / (MAX - MIN),其中 (0.0 <= OUT <= 1.0)
程序控制指令:
JMP:RLO(逻辑运算结果)= 1 时跳 转:如果有能流通过 JMP 线圈 (LAD), 则程序将从指定标签后的第一条指令 继续执行。
FLOOR:将实数(Real 或LReal)转换为小于或等于所选实数的最大整数 (IEEE“向负无穷取整”)。
TRUNC:TRUNC 用于将实数转换为整数。实数的小数部分被截成零(IEEE - 取整为零)。
SCALE_X:按参数 MIN 和 MAX所指定的数据类型和值范围对标准化的实 参数 VALUE(其中,0.0 <= VALUE <=1.0)进行标定: OUT = VALUE (MAX - MIN) + MIN
流水灯的PLC控制
![流水灯的PLC控制](https://img.taocdn.com/s3/m/c07459394afe04a1b171de0b.png)
任务二PLC接线
活动四 根据接线图完成输入输出接线
FX2N 48MT
K0
L0
X0
Y0 L1
-
K1
Y1
X1
L2 Y2
K2 X2
Y3 L3
COM1
K3 X3
Y4 L4
L5
COM
Y5
COM2
1.先将所有首端与Y连 2.尾端相连接电源 3.最后回公共端
任务三 运行程序让流水灯亮起来PLC接线
观察程序运行,总结PLC输入输出控制原理: 外接开关闭合时,相应输入继电器线圈通电,获得输 入信号,触点动作;
指示灯L2 Y2
指示灯L3 Y3
指示灯L4 Y4
指示灯L5 Y5
任务二PLC接线
活动三 K0 K1
根据地址分配表画接线图
接线规则
X0 X1 COM
FX2N 48MT
-
L0 Y0
L1 Y1
L2 Y2 Y3 L3
COM1
Y4 L4 L5
Y5
COM2
1.将按钮串接在对应X 端子与COM端子之间。
2. 将指示灯、电源串 联连接在对应Y端子与 对应输出公共端子之 间
3. 两组输出端子使 用同一电源时,可 将两个公共端连接 在一块
任务二PLC接线
活动四 根据接线图完成输入输出接线
输入接线
断电操作 轻拔轻插
先将所有元件首端与X端子连 接,然后尾端相连回COM 不回COM
任务二PLC接线
活动四 根据接线图完成输入输出接线 接线方法
FX2N 48MT
K0
L0
X0
Y0 L1
-
K1
Y1
X1
L2 Y2
电气控制与PLC技术 第六章 S7-1200PLC的编程指令
![电气控制与PLC技术 第六章 S7-1200PLC的编程指令](https://img.taocdn.com/s3/m/96f30d6fec630b1c59eef8c75fbfc77da269970b.png)
电气控制与PLC技术(S7-1200)
--|NOT|--:取反RLO
该指令不会影响 RLO。线圈输入的 RLO 将直接发送到输出。
电气控制与PLC技术(S7-1200)
启保停控制程序
电气控制与PLC技术(S7-1200)
- 6.1.2 置位和复位指令
--(S)--: 置位输出
使用“置位输出”指令,可将指定操作数的信号状态置位为“1”。仅当线圈输入的逻辑运算结果 (RLO) 为“1”时,才执行该指令。如果信号流通过线圈(RLO=“1”),则指定的操作数置位为“1” 。如果线圈输入的 RLO 为“0”(没有信号流过线圈),则指定操作数的信号状态将保持不变。
两个或多个常开触点串联时,将逐位进行“与”运算。串联时,所有触点都闭合后才产 生信号流。
常开触点并联时,将逐位进行“或”运算。并联时,有一个触点闭合就会产生信号流。
电气控制与PLC技术(S7-1200)
--|/|--:常闭触点
常闭触点的激活取决于相关操作数的信号状态。当操作数的信号状态为“1”时,常闭触点将打开, 同时该指令输出的信号状态复位为“0”。
电气控制与PLC技术(S7-1200)
1.脉冲定时器(TP) TP指令可用于生成具有预定宽度时间的脉冲。
电气控制与PLC技术(S7-1200)
--|N|--:扫描操作数的信号下降沿
使用“扫描操作数的信号下降沿”指令,可以确定所指定操作数(<操作数 1>)的信号状态是 否从“1”变为“0”。该指令将比较 <操作数 1> 的当前信号状态与上一次扫描的信号状态,上一 次扫描的信号状态保存在边沿存储器位 <操作数 2> 中。如果该指令检测到逻辑运算结果 (RLO) 从 “1”变为“0”,则说明出现了一个下降沿。
西门子S7-1200 移位和循环指令
![西门子S7-1200 移位和循环指令](https://img.taocdn.com/s3/m/672bad39df80d4d8d15abe23482fb4daa58d1de7.png)
当拨动开关拨到OFF位置后,给QW0赋值为0,所有彩 灯均熄灭。
循环左移ROL
下图显示了如何将 DWORD 数据类型操作数的内容向左循环移动 3 位。
案例:彩灯循环控制
编程要求
当拨动开关拨到到ON位置后,彩灯从Y0开始,Y0亮1s后熄灭,Y2亮,Y2亮1s后熄灭,Y3亮....依次循环; 当拨动开关拨到OFF位置后,所有彩灯均熄灭。
案例:彩灯循环控制
编程过程
循环右移ROR
下图显示了如何将 DWORD 数据类型操作数的内容向右循环移动 3 位。
循环左移ROL
“循环左移”指令将输入 IN 中操作数的内容按位向左循环移位,并在输出 OUT 中查询结果。参数 N 用于 指定循环移位中待移动的位数。用移出的位填充因循环移位而空出的位。
如果参数 N 的值为“0”,则将输入 IN 的值复制到输出 OUT 的操作数中。 如果参数 N 的值大于可用位数,则输入 IN 中的操作数值仍会循环移动指定位数。
22
S7-1200 移位和循环指令
右移SHR
“右移”指令将输入 IN 中操作数的内容按位向右移位,并在输出 OUT 中查询结果。参数 N 用于指定将指 定值移位的位数。
如果参数 N 的值为“0”,则将输入 IN 的值复制到输出 OUT 的操作数中。 如果参数 N 的值大于位数,则输入 IN 的操作数值将向右移动该位数个位置。 无符号值移位时,用零填充操作数左侧区域中空出的位。如果指定值有符号,则用符号位的信号状态填充空 出的位。
左移SHL
下图说明了如何将 WORD 数据类型操作数的内容向左移动 6 位。
PLC控制流水灯系统的设计
![PLC控制流水灯系统的设计](https://img.taocdn.com/s3/m/85235dfca76e58fafbb003b8.png)
目录第一章绪论 (3)1.1 前言 (3)1.1流水灯系统的意义、现状及要求 (4)1.1.2 技术现状 (5)1.2彩灯的发展 (6)1.2.1 彩灯的最初来源 (6)1.2.2 彩灯给城市带来的五彩缤纷 (6)1.3PLC的发展前景及趋势 (7)1.4PLC的定义及特点 (11)第2章硬件电路的设计 (12)2.1流水灯电路的设计 (13)2.2开关电路的设计 (14)第3章软件设计 (15)3.1软件设计的方案 (11)3.2PLC结构 (14)3.3工作原理 (15)3.4编程语言 (16)3.5S7-200的指令系统 (19)3.6流水灯的工作要求 (18)3.7梯形图 (22)结束语 (41)致谢 (42)参考文献 (43)PLC控制流水灯系统的设计[摘要]本次毕业设计是应用S7-200 PLC流水灯设计的硬件电路,并利用OB1的梯形图控制程序设计。
通过控制S7-200 PLC的定时继电器的功能来实现各彩灯按一定的规律点亮和熄灭。
接通延迟定时器SD的特点(如果RLO有正跳沿,则接通延迟定时器启动指令,以设定的时间值启动指令的定时器)。
这种控制电路结构简单,可靠性高,应用性强;软件程序适应范围广,对各彩灯按一定的规律点亮和熄灭的控制,只需要改变相应的定时器的时间接通即可。
第一章绪论前言随着科技的飞速发展,无论在日常生活中,还是在工农业发展中,PLC具有广泛的应用。
PLC的一般特点:抗干扰能力强,可靠性极高、编程简单方便、使用方便、维护方便、设计、施工、调试周期短、易于实现机电一体化。
PLC总的发展趋势是:高功能、高速度、高集成度、大容量、小体积、低成本、通信组网能力强。
本次毕业设计是应用S7-200 PLC流水灯设计的硬件电路,并利用OB1的梯形图控制程序设计。
通过控制S7-200 PLC的定时继电器的功能来实现各彩灯按一定的规律点亮和熄灭。
接通延迟定时器SD的特点(如果RLO有正跳沿,则接通延迟定时器启动指令,以设定的时间值启动指令的定时器)。
PLC指令编程:流水灯测试
![PLC指令编程:流水灯测试](https://img.taocdn.com/s3/m/a69867bbf424ccbff121dd36a32d7375a417c6cf.png)
PLC指令编程:流水灯测试看到很多的流水灯,都是按下开关,几个灯轮着点亮,再轮着熄灭,或者是间接点亮,错乱的熄灭,方式迥异,但程序设计的思路是一样的。
【控制要求】按下开关,a,b,c,d灯同时点亮,延时2s,再按着d,c,b,a的顺序依次熄灭且每次熄灭保持1s。
开关信号若一直保持,流水灯就会循环运行;若只有一次开关信号,流水就只会运行一次。
【动作分析】按下开关,就是一个等待输入信号;延时2s,采用延时等待指令,等待2s;a,b,c,d灯同时点亮,就是触发输出端为通状态,a,b,c,d为4个输出端,可选用Y0,Y1,Y2,Y3分别代表a,b,c,d灯;接着就是d,c,b,a的顺序依次熄灭且每次熄灭保持1s,这里每个灯熄灭,用到了两条指令,先是用触发输出,触发Y端为断状态,就是熄灭的状态,再用延时等待指令,等待1s,这样就是一个灯熄灭1s。
【控制流程图】按照动作分析,每一个动作就是一个指令,每个指令用流程图的方式连接起来。
【修改别名】在软件别名处,对动作需要用到的端口进行别名修改:输入端别名修改:X0:按键开关。
输出端别名修改:Y0 :a灯、Y1:b灯、Y2:c灯、Y3:d灯。
【程序编辑】根据流程图编程,按下开关,添加“等待输入”指令;a,b,c,d灯同时点亮实际是4条触发输出指令,在编辑程序的时候就要分别列开。
在编程软件JS_PRGMR中,可以一条指令触发多个输出端口。
【程序调试】当所有的程序编辑完成之后,我们就可以将程序通过串口下发至PLC 中,程序调试有几种方式。
1 、可以在编程软件上进行程序调试,在菜单栏中的调试框中,打开“ 在线调试环” ,选择下发程序的端口,即可在线调试。
2、可在触摸屏软件上实现在线模拟,进行程序调试。
S7-1200的指令
![S7-1200的指令](https://img.taocdn.com/s3/m/ad03e7ce240c844769eaee81.png)
【例3-2】 用接通延时定时器设计周期和占空比可调的振荡电路。 图3-22中的串联电路接通后,定时器T5的IN输入信号为1状态,开始定时。 2s后定时时间到,它的Q输出使定时器T6开始定时,同时Q0.7的线圈通电。 3s后T6的定时时间到,它的输出“T6”.Q的常闭触点断开,使T5的IN输入电 路断开,其Q输出变为0状态,使Q0.7和定时器T6的Q输出也变为0状态。下一 个扫描周期因为“T6”.Q的常闭触点接通,T5又从预设值开始定时。Q0.7的 线圈将这样周期性地通电和断电,直到串联电路断开。Q0.7线圈通电和断电 的时间分别等于T6和T5的预设值。
6.置位/复位触发器与复位/置位触发器 SR方框是置位/复位(复位优先)触发器,在置位(S)和复位(R1)信号 同时为1时,方框上的输出位M7.2被复位为0。可选的输出Q反映了M7.2的状态。 RS方框是复位/置位(置位优先)触发器,在置位(S1)和复位(R)信号 同时为1时,方框上的M7.6为置位为1。可选的输出Q反映了M7.6的状态。
5.置位位域指令与复位位域指令 “置位位域”指令SET_BF将指定的地址开始的连续的若干个位地址置位, “复位位域”指令RESET_BF将指定的地址开始的连续的若干个位地址复位。
7.扫描操作数信号边沿的指令 中间有P的触点的名称为“扫描操作数的信号上升沿”,在I0.6的上升沿, 该触点接通一个扫描周期。M4.3为边沿存储位,用来存储上一次扫描循环时 I0.6的状态。通过比较I0.6前后两次循环的状态,来检测信号的边沿。边沿存 储位的地址只能在程序中使用一次。不能用代码块的临时局部数据或I/O变量 来作边沿存储位。 中间有N的触点的名称为“扫描操作数的信号下降沿”,在M4.4的下降沿, RESET_BF的线圈“通电”一个扫描周期。该触点下面的M4.5为边沿存储位。
S7-1200的指令
![S7-1200的指令](https://img.taocdn.com/s3/m/6f5dba054b73f242336c5f48.png)
4.置位、复位输出指令 S(置位输出)、R(复位输出)指令将指定的位操作数置位和复位。 如果同一操作数的S线圈和R线圈同时断电,指定操作数的信号状态不变。 置位输出指令与复位输出指令最主要的特点是有记忆和保持功能。如果I0.4 的常开触点闭合,Q0.5变为1状态并保持该状态。即使I0.4的常开触点断开, Q0.5也仍然保持1状态。在程序状态中,用Q0.5的S和R线圈连续的绿色圆弧和 绿色的字母表示Q0.5为1状态,用间断的蓝色圆弧和蓝色的字母表示0状态。
10.检测信号边“检测信号下降沿”指令。 它们是函数块,在调用时应为它们指定背景数据块。这两条指令将输入CLK的 当前状态与背景数据块中的边沿存储位保存的上一个扫描周期的CLK的状态进 行比较。如果指令检测到CLK的上升沿或下降沿,将会通过Q端输出一个扫描 周期的脉冲。 在输入CLK输入端的电路时,选中左侧的垂直“电源”线,双击收藏夹中的 “打开分支”按钮,生成一个串联电路。用鼠标将串联电路右端的双箭头拖拽 到CLK端。松开鼠标左键,串联电路被连接到CLK端。
9.扫描RLO的信号边沿指令 在流进“扫描RLO的信号上升沿”指令(P_TRIG指令)的CLK输入端的能 流(即RLO)的上升沿,Q端输出脉冲宽度为一个扫描周期的能流,方框下面 的M8.0是脉冲存储位。 在流进“扫描RLO的信号下降沿”指令(N_TRIG指令)的CLK输入端的能 流的下降沿,Q端输出一个扫描周期的能流。方框下面的M8.2是脉冲存储器位。 P_TRIG 指令与N_TRIG 指令不能放在电路的开始处和结束处。
5.置位位域指令与复位位域指令 “置位位域”指令SET_BF将指定的地址开始的连续的若干个位地址置位, “复位位域”指令RESET_BF将指定的地址开始的连续的若干个位地址复位。
7.扫描操作数信号边沿的指令 中间有P的触点的名称为“扫描操作数的信号上升沿”,在I0.6的上升沿, 该触点接通一个扫描周期。M4.3为边沿存储位,用来存储上一次扫描循环时 I0.6的状态。通过比较I0.6前后两次循环的状态,来检测信号的边沿。边沿存 储位的地址只能在程序中使用一次。不能用代码块的临时局部数据或I/O变量 来作边沿存储位。 中间有N的触点的名称为“扫描操作数的信号下降沿”,在M4.4的下降沿, RESET_BF的线圈“通电”一个扫描周期。该触点下面的M4.5为边沿存储位。
PLC控制的流水灯
![PLC控制的流水灯](https://img.taocdn.com/s3/m/d063fee1cc17552706220885.png)
目录第一章绪论 (2)1.1引言 (2)1.2采用流水灯的意义和目的 (2)1.3 本次设计的主要内容 (2)第二章主要硬件设备的介绍 (3)2.1可编程控制器的发展历史 (3)2.1.1 可编程控制器的定义 (4)2.1.2 可编程控制器的特点 (4)2.1.3 PLC的基本结构和工作原理 (5)2.2西门子S7-200的硬件组成 (8)第三章电路及软件设计 (10)3.1硬件电路设计 (10)3.1.1流水灯分布图 (10)3.1.2控制系统I/O点及地址分配 (10)3.2软件设计 (10)3.2.1梯形图 (10)3.2.2指令表 (19)第四章系统调试 (21)4.1 系统的连接与运行 (20)4.2 流水灯闪烁 (20)4.3 流水灯的调试 (22)总结 (22)第一章绪论1.1引言随着改革的不断深入,社会主义市场经济的不断繁荣和发展,各大中小城市都在进行亮化工程。
企业为宣传自己企业的形象和产品,均采用广告手法之一:流水灯广告屏来实现这一目的.当我们夜晚走在大街上,马路两旁各色各样的广告灯均可以见到,一种是采用流水灯管做成的各种形状和多中彩色的灯管,另一种为日光等管或白炽灯管作为光源,另配大型广告语或宣传画来达到宣传的效果。
这些灯的亮灭,闪烁时间及流动方向等均可以通过PLC 来达到控制的要求。
可编程控制器PLC:英文全称Programmable Logic Controller ,中文全称为可编程逻辑控制器,是一种数字运算操作的电子系统,专为在社会环境应用而设计的。
它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算,顺序控制,定时,计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程.作为自动控制装置的核心,它具有功能强,可靠性高等诸多优点。
该装置可以完成各种指令系统训练以及多种控制对象的程序设计训练。
1.2采用流水灯的意义和目的随着社会市场经济的不断发展,各种装饰流水灯,广告流水灯越来越多的出现在城市中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
案例详解 | S7-1200 PLC循环移位指令做流水
灯控制
在S7-1200 PLC中的移位和循环移位指令指令包括了移位指令SHL和SHR,循环移位指令ROL和ROR。
这几个指令跟S7-200/200 SMART PLC是一样的,如果学习过这几个指令的同学也可以重新温习一下,或者直接拉到后面看流水灯控制的程序案例编写~
下面我们就分别来看一下这几个指令吧。
1、移位指令
移位指令分为左移指令SHL和右移指令SHR这两个,它们执行的过程是一致的,只是移动的方向不同而已,左移指令是由低位往高位移动,右移指令是由高位往低位移动。
我们以左移指令来看一下,指令中的N是移位的位数,是将输入操作数IN中的二进制位按N位向左进行移位,从而输出到输出端OUT中,注意移位指令移出的位是自动丢去的,而低位中空出的位是自动补零的。
关于移位指令使用时支持的数据类型,除了支持位字符串的数据类型之外,还可以支持整数的数据类型。
2、循环移位指令
循环移位指令分为循环左移ROL和循环右移ROR这两个指令,同样的它们的移动方向是不同的,循环左移指令是由低位往高位移动,循环右移指令是由高位往低位移动。
关于循环移位指令支持的数据类型只要位字符串的数据类型哦。
下面我们以循环左移指令来看一下指令的执行过程,指令中的N同样的是用于指定移动的位数,指令是将输入操作数IN中的二进制位按N位进行循环左移,这个指令和移位指令的区别是,循环移位指令移出的位并不会丢失,而是会放回到地位中
空出的位置中的。
我们下面讲一个流水灯控制,是以循环移位指令实现的,主要是为了让大家能够熟悉指令的使用哦。
下面就先看看控制要求吧!
控制要求:有八盏指示灯分别对应于PLC输出Q0.0~Q0.7,按下启动按钮,从第一盏灯开始每隔1s点亮,点亮下一盏的同时熄灭上一盏。
当第八盏灯点亮后延时5秒,然后以反反向点亮,回到第一盏时又延时5秒进
行下一轮循环,按下停止按钮所有指示灯都熄灭。
我们分析一下以上的程序,当按下启动按钮时,M20.0接通,M20.0接通同时随1s 时钟脉冲每隔一秒进行向左移位,依次点亮一盏灯并熄灭上一盏灯,当第八盏灯点亮了则Q0.7接通,置位切换方向信号M20.1,M20.1触点接通并开始延时5秒,5秒时间到后M20.2线圈接通,M20.2触点接通同时随1s 时间脉冲每隔1秒进行向右移位,直到点亮第一盏灯时,不再执行ROR 右移指
令,而去执行程序段5,Q0.0触点接通,定时器开始延时5秒时间,延时时间到后复位M20.1,也就是复位切换方向的信号,同时置位启停标志M20.0,接着又开始下一次的轮回。
当按下停止按钮时,MOVE指令将0移动到QB0,进行清零,使所有输出都复位,指示灯全部熄灭,同时也将启停标志M20.0和切换方向信号M20.1都复位掉。