S7-200 PLC的指令系统基本指令3(堆栈指令)
第五章PLC3S7-200 PLC的基本指令1
ALD指令使用时注意: (1)几个并联电路块串联连接时,并联电路块的开始用LD,LDN指令。 (2)如要将多个并联电路块串联,每串联一次,使用一次ALD指令。 (3)如果有多个并联电路块串联,还可以把所有要串联的并联电路块连续 写出,再使用ALD指令,连续使用ALD指令的次数与并联电路块个 数相同。 例:
输入触点 I0.0 I0.1 功能说明 启动按钮 停止按钮 输出线圈 Q0.0 Q0.1 Q0.2 功能说明 控制M1 控制M2 控制M3
(2)编制程序
例3:电动机的正反转控制
返回目录
(四)、定时器的刷新方式 S7-200的定时器有3种不同的分辨率,这3种不同分辨率的定时器 的刷新方式是不相同的 1.1ms分辨率定时器的刷新方式 1ms分辨率定时器启动以后,定时器对1ms的时间间隔进行计时。 定时器当前值每隔1ms刷新1次,与扫描周期无关,当扫描周期较长 时,在一个扫描周期内要刷新多次(多次改变当前值)。 如图4.16a所示
4.LDS( Load stack)(装入椎栈指令) 复制堆栈中的第N级的值到栈顶,原堆栈栈值依次下压一级,栈底值 丢失
例:LDS 5 将堆栈中的第5个值复制到栈顶,n的范围不0~8. 例5-17:
返回目录
二、取非触点指令和空操作指令 1. 取非触点指令(NOT)(对堆栈的栈顶值取反操作) 含义:是将NOT指令之前的运算结果取反。 指令的使用如图5-18所示
OLD指令使用时应注意以下几点: (1)、几个串联电路块并联连接时,串联电路块(分支)的开始使用LD 或LDN指令。 (2)、如果要将多个串联电路块并联,可以在并联的每个串联电路块的后 面加OLD指令。例: (3)、如要将多个串联电路 块并联,还可以把所有要 并联的串联电路块连续写 出,然后在并联的串联电 路块末尾使用OLD指令, 连续使用OLD指令的次数 与串联电路块个数相同。
西门子s7-200PLC基本指令
15:33
14
15:33
15
2、保持型接通延时定器(TONR)
Txx IN TONR PT
•在输入(IN)收到能流时,从当前值开始计时; •当当前值达到预置值(PT)时,定时器位被置1; •当输入能流断开时停止计时,定时器位、当前值保持不变; •必须用复位指令才能清除定时器位和当前值; •定时器号(Txx)决定了定时器的分辨率。
???
② 置位线圈指令
(S) xxx
???位代表位起始地址
当指令收到能流时,则???指定位开始的XXX个位被置1;
当指令没收到能流时,则???指定的位状态不变 。
???
③ 复位线圈指令 (xRxx) ???位代表位起始地址
当指令收到能流时,则???指定位开始的XXX个位被置0;
当指令没收到能流时,则???指定的位状态不变 。
1. 基本逻辑指令 2. 堆栈操作指令* 3. 定时器指令 4. 计数器指令 5. 比较指令
15ห้องสมุดไป่ตู้33
2
一、基本逻辑指令
1、触点指令
???
① 检查闭指令 其中???位代表位地址 当???指定地址的数据为1时, 指令结果接通能流; 否则,指令结果断开能流。
???
② 检查开指令 其中???位代表位地址 当???指定地址的数据为0时, 指令结果接通能流; 否则,指令结果断开能流。
15:33
21
2、减计数器减计数指令(CTD)
Cxx CD CTD LD PV
从当前计数值开始,在每一个(CD)输入状态 的低到高时递减计数。
•当CXX的当前值等于0时,计数器位CXX置位。
s7-200基本指令
教育无他,爱与榜样而已
1.指令格式
(LAD) LD A O = (STL) I0.0 LDN I0.0 AN I0.0 ON Q0.0 功能 I0.1 用于网络起始的动合/动断触点 I0.1 动合/动断触点串联 I0.1 动合/动断触点并联 线圈输出
注:触点代表CPU对存储器的读操作,由于计算机系统对读 操作的的次数不受限制,所以用户程序中,动合、动断触点 使用的次数不受限制。线圈符号代表CPU对存储器的写操作, 在用户程序中,每个线圈只能使用一次。
4.栈操作指令 • S7-200系列PLC使用9层堆栈来处理所有逻辑操作,和计算 机中的堆栈结构相同。堆栈是一组能够存储和取出数据的 暂存单元,其特点是“后进先出”。每一次进行入栈操作, 新值放入栈顶,栈底值丢失;每次进行出栈操作,栈顶值 弹出,栈底值补进随机数。 (1)逻辑入栈指令(LPS)
• 逻辑入栈指令又称为分支电路开始指令。在梯形图的中的 分支结构中,可以形象地看出,它生成一条新的母线,其 左侧为原来的主逻辑块,右侧为新的从逻辑块,因此可以 直接编程
教育无他,爱与榜样而已
• 1.指令格式
从起始位开始的N个元件置1
从起始位开始的N个元件置0
教育无他,爱与榜样而已
• 例5.9 置位/复位指令的应用
电动机连续运转的PLC程序及语句表如下: 用置位和复位指令实现功能如下
教育无他,爱与榜样而已
例5.10 两台电动机M1、M2同时起动,M2停 止后M1才停止的程序:
教育无他,爱与榜样而已
• 3)梯形图程序绘制方法 • 梯形图程序是利用STEP7编程软件在梯形图区按照自左向 右、自上而下的原则绘制的。为提高PLC运行速度,触点 的并联网络多连在左侧母线,线圈位于右侧。 • 4)梯形图网络结构 • 梯形图网络结构是软件系统为程序注释和编译附加的,不 增加程序长度,并且软件的编译结果可以明确指出程序错 误语句所在的网络段。清晰的网络结构有利于程序的调试, 使程序简明易懂。
s7-200基本指令解析
教育无他,爱与榜样而已
常用指令助记符的定义:
1. 2. 3. 4. 6. 7. LD: 装载指令,对应梯形图左侧母线开始,连接动合触头; LDN:装载指令, 对应梯形图左侧母线开始,连接动断触 头; A:与操作指令,用于动合触点的串联连接; AN:与非操作指令, 用于动断触点的串联连接; ON:或非操作指令, 用于动断触点的并联连接; =(OUT)输出指令,线圈输出.
教育无他,爱与榜样而已
§5.1.1 基本位操作指令
含有直接位地址的指令叫位操作指令, 是PLC常用的基本指令,梯形图指令有触点 和线圈两大类,触点又分为动合和动断两种 形式;语句表指令有与、或以及输出等逻辑 关系,位操作指令能实现基本的位逻辑运算 控制。
教育无他,爱与榜样而已
梯形图与传动继电器控制符号比较
教育无他,爱与榜样而已
• 3)梯形图程序绘制方法 • 梯形图程序是利用STEP7编程软件在梯形图区按照自左向 右、自上而下的原则绘制的。为提高PLC运行速度,触点 的并联网络多连在左侧母线,线圈位于右侧。 • 4)梯形图网络结构 • 梯形图网络结构是软件系统为程序注释和编译附加的,不 增加程序长度,并且软件的编译结果可以明确指出程序错 误语句所在的网络段。清晰的网络结构有利于程序的调试, 使程序简明易懂。
教育无他,爱与榜样而已
S7-200系列PLC基本指令
SIMATIC指令有:梯形图(LAD)、语句表(STL)和 功能图(FBD)三种编程语言。比较而言,梯形图类 似于传统的继电器控制系统,直观、易懂;语句表类 似于计算机汇编语言的指令格式。本章主要讲述基本 指令的定义和梯形图、语句表的基本编程方法。基本 指令包括基本逻辑指令,算术、逻辑运算指令,数据 处理指令, 程序控制指令等。
西门子S7-200基本指令(修正版)
第4章 基本指令
4.1 位操作类指令 4.2 运算指令 4.3 其他数据处理指令 4.4 表功能指令 4.5 转换指令
第4作及运算指令, 与时也涉及与位操作亲密有关旳定时器和计数 器指令等。
l 运算指令,涉及常用旳算术运算和逻辑运算 指令。
第4章 基本指令
1. 栈装载与指令
ALD,栈装载与指令(与块)。在梯形图中用于将并联 电路块进行串联连接。 在语句表中指令ALD执行情况如表4.8所示。
第4章 基本指令
2. 栈装载或指令
OLD,栈装载或指令(或块)。在梯形图中用于 将串联电路块进行并联连接。 在语句表中指令OLD执行情况如表4.9所示。
第4章 基本指令
可编程序控制器中旳 堆栈与计算机中旳堆 栈构造相同,堆栈是 一组能够存储和取出 数据旳临时存储单元。 堆栈旳存取特点是 “ 后 进 先 出 ” , S7200可编程序控制器旳 主机逻辑堆栈构造如 表4.3所示。
第4章 基本指令
1. 原则触点指令
(1)LD:装入常开触点(LoaD) (2)LDN:装入常闭触点(LoaD Not) (3)A:与常开触点(And) (4)AN:与常闭触点(And Not)。 (5)O:或常闭触点(Or) (6)ON:或常闭触点(Or Not) (7)NOT:触点取非(输出反相) (8)= :输出指令
输出刷新
扫描周期 n 扫描周期 n+1 扫描周期 n+2
扫描周期 n+3
输入扫描
输入扫描
输入扫描
输入扫描
输入扫描
I0.0
Q0.0 Q0.1 Q0.2 Q0.3
图4.10 时序图
返回本节
第4章 基本指令
复杂逻辑指令
s7-200指令表
2.5 S7---200PLC的指令2.5.1基本指令LD/LDN指令:LD和LDI指令是连接在母线连接的触点.表示操作开始.LD是常开触点,LDN是常闭触点.A/AN指令:A和AN指令是串联连接的触点,A是常开触点, AN是常闭触点.O/ON指令:O和ON指令是并联连接的触点,执行逻辑“或”的功能.OR是常开触点,ORI是常闭触点.= 指令:=是输出触点2.5.2复杂的逻辑指令OLD/ALD指令:OLD是电路块的并联。
ALD是电路块的串联。
2.5.3逻辑堆栈的操作LPS:逻辑入栈指令。
LRD: 逻辑出栈指令。
LPP:逻辑出栈指令。
2.5.4置位/复位指令S/R指令:S是置位指令。
R是复位指令,2.5.5边冲脉冲指令EU是上升沿指令,用—|P|—表示。
ED是下降沿,用—|N|—表示。
2.5.6定时器指令TON/TOF/TONR指令:TON:表示通电延时定时器。
TOF:表示断电延时定时器TONR:表示保持型通电延时定时器。
2.5.7计数器指定CTU/CTD/CTUD指令:CTU表示增计数器。
CTD:表示减数器。
CTUD:表示增/减数器。
程序控制指令2.5.8END/MEND结束指令:END表示条件结束指令,执行条件成立时结束住程序,返回主程序起点。
MEND表示无条件结束指令,结束住程序,返回主程序起点。
STOP指令:STOP表示停止指令2.5.9比较指令: CMP(Compare)的功能指令编号为FNC10,16位运算占7个程序步,32位运算占13个程序步.2.6.1传送指令:MOV的功能号为FNC12,它是将源操作数的内容传送目标操作数.2.6.2四则逻辑运算指令(1)二进制加法指令ADDADD的功能号为FNC20,它是将源操作数S1和S2中的16位二进制数相加,然后运算结果传送到指定的目标操作数中.(2) 二进制减指令SUBSUB的功能号为FNC21.它是将源操作数S1和S2中的16位二进制数相减,然后运算结果传送到指定的目标操作数中.(3) 二进制乘法指令MULMUL的功能号为FNC22.它是将源操作数S1和S2中的16位二进制数相乘,然后运算结果传送到指定的目标操作数为首地址的软元件中.(4) 二进制除法指令DIVDIV的功能号为FNC22.它是将源操作数S1和S2中的16位二进制数相除,然后运算结果传送到指定的目标操作数D中,余数传送到D+1中.。
S7-200_PLC的指令系统基本指令3(堆栈指令)
例1:一层堆栈
I0.0 I0.1
4
5 6 7
A
= LPP =
I0.2
Q0.0
出栈
Q0.1
堆栈操作指令
I0.0 I0.1 I0.2 Q0.0 Q0.1 1 2 3 Q0.3 Q0.4 Q0.5 Q0.6 Q0.7 指令表 LD A LPS
例1:一层堆栈 13 A I0.0 I0.1 14 = I0.5 Q0.3
例1:一层堆栈 13 A I0.0 I0.1 14 = 15 16 17 LD LPS A I0.7 I0.5 Q0.3 I0.6
4
5 6 7 8 9
A
= LPP = LD LPS
I0.2
Q0.0 Q0.1 I0.3 I0.4
18 =
Q0.4
10 A
11 = Q0.2 12 LPP
堆栈操作指令
I0.0 I0.1 I0.2 Q0.0 Q0.1 I0.3 I0.4 I0.5 LPS I0.6 I0.7 I1.0 I1.1 I1.2 Q0.2 Q0.3 Q0.4 1 2 3 指令表 LD A LPS
堆栈操作指令
I0.1 I0.2 I0.3 M1.0 M1.1 M1.2 Q0.0 1 2 3 4 Q0.2 5 6 I0.4 Q0.3 7 8 9
例2:二层堆栈 指令表 LD LPS A LPS A = LPP AN = M1.0 Q0.1 I0.3 Q0.0 I0.2 I0.1 12 LPS 13 A M1.2
Q0.1
14
=
Q0.2
15 LPP 16 A I0.4 Q0.3
17 =
18 MEND
10 LPP 11 A M1.1
堆栈操作指令
说明:
西门子S7-200_PLC指令学习
西门子S7-200 PLC指令学习S7-200系列的基本逻辑指令与FX系列和CPM1A系列基本逻辑指令大体相似,编程和梯形图表达方式也相差不多,这里列表表示S7-200系列的基本逻辑指令(见表)。
表S7-200系列的基本逻辑指令S7-200系列PLC的比较指令在SIEMENS S7-200的编程软件STEP-7中,有专门的比较指令:IN1与IN2比较,比较的数据类型可以是B、I(W)、D、R,即字节、字整数、双字整数和实数;还可以有其他的比较式:>、<、≥、≤、<>等等。
当满足比较等式,则该触点闭合。
与LMODSOFT指令对照:在LMODSOFT中,没有直接的数的比较指令,但SUB指令可以通过其执行减法功能后的三个输出端的状态实现整数的比较功能。
若与LMODSOFT 中的SUB指令对应,则在STEP-7中应有三个比较指令:>、=、< 来分别对应SUB 指令的三个输出;若还要对应≥、≤、或<>,则根据SUB指令三个输出端的不同组合,均可找到对应的比较指令。
比如:①(30007)>(40030)②(30007)=(40030)③(30007)<(40030)①+②(30007)≥②+③(30007)≤(40030)①+③(30007)<>(40030)S7-200系列PLC的定时器指令类型、编号及分辨率TON——接通延时TONR——有记忆接通延时TOF——断开延时3种分辨率(时基):1ms、10ms、100ms——分别对应不同的定时器号定时器6个要素:指令格式(时基、编号等)预置值——PT使能——IN 复位——3种定时器不同当前值——Txxx 定时器状态(位)——可由触点显示定时值=时基×预置值PT。
由于定时器的计时间隔与程序的扫描周期并不同步,定时器可能在其时基(1ms、10ms、100ms)内任何时间启动,所以,未避免计时时间丢失,一般要求设置PT预置值必须大于最小需要的时间间隔。
西门子S7-200系列PLC及其基本指令
第1单元 物流运输市场分析
(2)物流运输市场的参与者。 物流运输市场是多层次、多要素的集合体。物流运输市场的
参与者可分为以下4方面。 ①物流运输服务需求方。 物流运输服务需求方是指物流运输服务的需求者,例如居民、
生产企业、销售企业等。
上一页下一页 返回
第1单元 物流运输市场分析
(4)按竞争形态和程度分,可分为竞争性物流运输市场、 垄断性物流运输市场。
(5)按供求状况分,可分为买方物流运输市场和卖方物流 运输市场。
通常用于提供常数、设置初始值等。
(2) 直接寻址
指直接给出操作数地址的寻址方式。用于位、字节、字
或双字数据存取。包括对寄存器和存储器的直接寻址。
如:A I 0.0 //对输入位I 0.0进行“与”逻辑操作
(3) 存储器间接寻址
在间接寻址方式中,操作数指的是操作对象所存放的
地址, 间接寻址需要通过“地址指针”才能进行。
第二章 物运流输市场分析与市场开拓
第1单元 第2单元 第3单元
握
物流运输市场分析 物流运输市场开拓 物流运输市场商业分析与把
第1单元 物流运输市场分析
学习情景 某一家运输公司为了制订公司未来的物流运输市场发展战略,
想要研究现在物流运输市场的状况,并对物流运输市场的竞 争情况进行了解,以便企业能合理地制订市场发展战略,占 据主动地位,所以要求市场部员工小李对物流运输市场的现 状做一份详细的分析报告,小李该如何做呢? 学习目标 一、掌握物流运输市场的构成、特征、功能 二、能够进行物流运输市场竞争的分析
(3)其它地址格式
定时器、计数器地址格式为:编程元件+元件号;
如T37表示某定时器的地址。
s7-200PLC逻辑堆栈的操作
以后循环往复,不断重复上过程。由图可见,输出信号Q0.0是输入信号I0.0的二分频。
LD I0.0 EU = M0.0 LD M0.0 A Q0.0 = M0.1 LD M0.0 O Q0.0 AN M0.1 = Q0.0
基本位逻辑指令应用举例
该电路按预先设定的输 出要求,根据对两个输 入信号I0.0、I0.1的比较, 决定某一输出:Q0.0Q0.3依次输出。
若I0.0、I0.1同时接通, Q0.0有输出;
I0.0、I0.1均不接通, Q0.1有输出;
若I0.0不接通。I0.1接 通,则Q0.2有输出;
若I0.0接通,I0.1不接 通,则Q0.3有输出。
处理最后一条支路时,必须使用LPP指令。一个独立电路块中,用入栈指
令同时保存在堆栈中的运算结果不能超过8个。
图b中 第一条LPS指令将A点的运算结果保存到堆栈的第1层;
第二条LPS指令将B点的运算结果保存到堆栈的第2层,A点的运算 结果被“压”到堆栈的第3层;
第一条LPP指令将堆栈第2层B点的运算结果上移到栈顶,第3层中A
3个独立并互相约束的指令表
Slide 14
6.1
S7-200 SIMATIC 指令集
Slide 15
点的运算结果上移到堆栈的第2层。
A
B双重堆栈
起动、保持、停止电路
基本位逻辑指令应用举例
6.1
图 外部接线图和梯形图
小结: (1)每一个传感器 或开关输入对应一个 PLC确定的输入点, 每一个负载PLC一个 确定的输出点。 (2)为了使梯形图 和继电器接触器控制 的电路图中的触点的 类型相同,外部按钮 一般用常开按钮。
西门子S7-200PLC第3章S7-200指令
• 3.6 程序控制指令
• 程序控制指令包括:跳转、循环、看门狗、停止、结 束及子程序调用等指令。
•
计数器的编号格式为: Cn (n为常数)
•
例如:C50
• (3)计数器编号在程序中可作为计数器位(输出触点)的状态及 计数器当前所累计的计数脉冲个数,
• 3.4.2 .递增计数器CTU
•
CTU:递增计数器指令助计符;
•
Cn:计数器编号;
•
CU:计数脉冲输入端;
•
R:复位输入端;
•
PV:设定值。
当复位输入(R)无效时,计数器开始对计数脉冲输入(CU)的上升沿 进行加1计数,若计数当前值大于等于设定值(PV)时,计数器位被置ON, 计数器继续计数直到32767;当复位输入(R)有效时,计数器复位,计数器 位变为OFF,当前值清零。
•
比较运是否等于IN2)
•
<>
(比较IN1是否不等于IN2)
•
>
(比较IN1是否大于IN2)
•
<
(比较IN1是否小于IN2)
•
>=
(比较IN1是否大于等于IN2)
•
<=
(比较IN1是否小于等于IN2)
比较指令格式:
例: 网络1:整数比较取指令,IN1为计数器C5的当前值,IN2为常 数20,当C5的当前值大于等于20时,比较指令触点闭合,M0.0=1。
保证每一扫描周期内同一条100ms定时器指令只执行一次。
s7-200基本指令
EM223 4DI 4DO
EM221 8DI
EM235 4AI 1AQ
EM222 8DO
EM235 4AI 1AQ
I0.0 Q0.0 I2.0 Q2.0 I3.0 I0.7 Q0.7 I2.3 Q2.3 I3.7 I1.0 Q1.0 I2.4 Q2.4 I1.5 Q1.1 I2.7 Q2.7 I1.6 Q1.2 I1.7 Q1.7
对数字量模块,I区和Q区从0号字节开始,自动以1个字节为单位按 序向各自的队列进行分配,模块获得的字节数以满足最低需要为准
对模拟量模块,AI和AQ自动以2个存储单元(即2个字)为单位按 序向各自的队列进行分配。模块获得的单元数以满足最低需要为准
课堂练习:确定内存映像的地址
CPU224 14DI 10DO
iv8
小结
1、PLC内数据存储分为RAM和ROM两个区,用户编程主要涉 及RAM区。
2、RAM被分成若干不同的功能区。不同区域的基本功能、寻址 方法、存取数据的类型是PLC应用的基础。
3、理清外部输入输出设备在RAM区的映像关系是编程前的基本 准备工作。
4、掌握输入输出映像区在内外数据交换过程中的作用是准确应 用指令的关键。
HC区的功能与寻址
HC区设置了4~6高速计数器,计数外部高速事件,计 数的频率不受扫描周期的影响。 计数单元双字长,只能读,不能写。没有状态标志。
31
24 23
16 15
87
0
HC0
Byte
Byte
Byte
Byte
高速计数器地址是HC×。(×----0~5)。
模拟量输入存储区(AI)
每个模拟量占一个字。低字节为高8位,高字节为低8位
返回
PLC的编程语言
S7-200PLC的基本指令及程序设计
S7-200PLC的基本指令及程序 设计
5.1 S7-200 PLC的编程语言
I0.1 I0.0
1.梯形图(LAD)编程语言 梯形图是与电气控制电路图相呼 应的图形语言。它来源于继电器逻辑 控制系统的描述。 2.功能块图(FBD) I2.1 功能块图类似于普通逻辑概 V5.0 念图,沿用了半导体逻辑电路的 逻辑框图表达方式。
正转互锁
反转互锁
KM1
KM2
FR
反转启动 SB3-I0.1
停止 SB1-I0.2
SB3
正转接触器 KM1-Q0.0 反转接触器 KM2-Q0.1
I0.1
SB1 I0.2 1L
MOVD VD100, VD200
5.5用户程序的结构
用户程序可分为三个程序分区:主程序、子程序(可选) 和中断程序(可选)。 主程序(OB1):是用户程序的主体。CPU在每个扫描周期都要 执行一次主程序指令。 子程序:是程序的可选部分,主程序调用时才能够执行。 中断程序:是程序的可选部分,只有当中断事件发生时,才能 够执行。中断程序可在扫描周期的任意点执行。
I0.0 I0.1 Q0.0 I0.2 I0.3 Q0.1
例1:直接启动停车控制
Q0.1 Q0.1
语句表
LD
O A
L1 QS FU1 FU2 FR KM FR 3 SB2 PE M 3~ KM KM SB1 L2 L3
I0.1
Q0.0 Q0.1 I0.0
Q0.1 Q0.0
FR KM
=
I/O分配:
I0.0:停车 I0.1:启动 Q0.1:KM
使用梯形图编程时梯形图编辑器会自动插入相关的指令处理堆栈操作栈装载与ald指令栈装载或old指令逻辑入栈lps逻辑读栈lrd逻辑出栈lpp装入堆栈lds指令aldold触点组编程lpslrdlpp一个触点或组同时控制多个线圈logo功能描述ldbit取指令用于逻辑梯级开始的常开触点与母线的连接bit与指令用于单个常开触点的串联bit或指令用于单个常开触点的并联ldnbit取非指令用于逻辑梯级开始的常闭触点与母线的连接bit与非指令用于单个常闭触点的串联bit或非指令用于单个常闭触点的并联标准触点指令logo功能描述ald栈装载与用于两个或两个以上的触点组的串联编程old栈装载或用于两个或两个以上的触点组的并联编程lps逻辑入栈用于分支电路的开始lrd逻辑读栈将堆栈中第2层的值复制到栈顶第29层的数据不变lpp逻辑出栈用于分支电路的结束lds装入堆栈用于复制堆栈中的第n层的值到栈顶logoaldold指令的使用举例ldi00t37i01i00q20q00ldm20i12s0m20i10i12t37ldnq20i10oldalds1s2s3s4logo例1
西门子PLC-200编程指令.
S7-200编程指令1、位逻辑(1)标准输入(2)立即输入(3)逻辑堆栈指令(不适合LAD和FBD)(4)NOT指令(5)上升沿和下降沿(6)输出和立即输出(7)置位和复位(8)置位和复位优先稳态触发器(9)NOP空指令2、定时器(1)定时器指令(TON、TONR、TOF)定时器类型分辨率最大值定时器编号TON、TOF1ms 32.767s T32、T9610ms 327.67s T33—T36、T97—T100100ms 3276.7s T37—T63、T101—T255 TONR1ms 32.767s T0、T6410ms 327.67s T1—T4、T65—T68100ms 3276.7s T5—T31、T69—T953、计数器(1)计数器指令(2)高数计时器4、程序控制(1)FOR-NEXT循环(2)JMP(跳转指标号)(3)SCR(顺控继电器)(4)看门狗定时器复位指令(5)获取非致命代码5、比较(1)数值比较(2)数据类型(3)功能图(4)比较字符串6、传送(1)字、字节、双字、实数传送(2)快传送(3)交换字节(4)字节立即传送7、移位和循环移位(1)移位和循环移位(2)移位寄存器位8、逻辑运算(1)取反指令(2)与、或、异或9、中断(1)中断指令10、转换(1)标准转换指令(2)格式(3)段码指令(4)ASCII码与十六进制转换(5)数字值转换ASCII字符(6)数值转化为ASCII字符串(7)ASCII字符串转化成数值(8)编码和解码11、数学运算(1)加减乘除(2)产生双整数的整数乘法和带余数的整数除法(3)三角函数、自然对数/自然指数和平方根(4)递增和递减(5)PID回路12、字符串(1)获取长度、复制和链接(2)从字符串中复制子字符串(3)在字符串中查找字符串和第一个字符13、子程序14、表(1)添表(2)先进先出和后进后出(3)储存器填充(4)查表15、脉冲输出(1)指令(2)脉宽调制PWM16、时钟(1)读取和设置实时时钟(2)读取和设置实时时钟17、通信(1)发送和接受(RS485/RS232自由端口)(2)获取端口地址和设置端口地址(RS232/RS485上的PPI协议)(3)获取IP地址和设置IP地址(以太网)文档为自己整理,源文件来自/share/link?shareid=1192470169&uk=118148775。
S7 200系列PLC的功能指令表
一般的逻辑控制系统用软继电器、定时器和计数器及基本指令就可以实现。
利用功能指令可以开发出更复杂的控制系统,以致构成网络控制系统。
这些功能指令实际上是厂商为满足各种客户的特殊需要而开发的通用子程序。
功能指令的丰富程度及其合用的方便程度是衡量PLC性能的一个重要指标。
S7-200的功能指令很丰富,大致包括这几方面:算术与逻辑运算、传送、移位与循环移位、程序流控制、数据表处理、PID指令、数据格式变换、高速处理、通信以及实时时钟等。
功能指令的助记符与汇编语言相似,略具计算机知识的人学习起来也不会有太大困难。
但S7-200系列PLC功能指令毕竟太多,一般读者不必准确记忆其详尽用法,需要时可可查阅产品手册。
操作数寻址范OUVIQMSSML A*LD和常AI还可以OUVIQMSSMLA*V*A和常还可以HOUVIQMSSMLA*V*A还可以常OUVIQMSSML A*LD和常还可以AIOUVIQMSSMLA*V*A和常还可以HOUVIQMSSMLA*V*A还可以常数OUVIQMSSML A*LD和常AI还可以VIQMSSMLAIA和常*L*L*VIQMSSMLA*AOUVIQMSSMLA*V*A和常H还可以OUVIQMSSMLA*V*A 还可以是常OUVIQMSSML A*LD和常AI还可以VIQMSSMLAIA和常*L*LQMSSM*ALA*VIOUVIQMSSMLA*V*A和常还可以HOUVIQMSSMLA*V*A还可以是常*L*A*VALSMSMQIVVIQMSSMLA*V*A*LVIQMSSMLA*V*A和常AIVIQMSSMLA*V*A*L和常HC操作OUVIQMSSM*L*A还可以是常OUVIQMSSM*L*V*A和常AI还可以是OUVIQMSSM*L*A和常H还可以是操作LAIQMSSMV*L,SMMSLVIQ*L*V*A和常AIAQVIQMSSMLA*L,&I&Q&M,常数H&VVLASMMIQS*L,*VALSMSMIQAL*VSMSMQI 和常数LSM*VSMQIV SMSMQI*VAL和常数操作VIQMSSM*L*V*AVIQMSSML*L*V*A和常AIIQMSSMLA,常*LVIQMSSML*L*A和常HIQMSSMLA,常*L,SIQMSSMLA,常*L,操作VIQMSSML*L和常AIA *LSMSMQIVAAQWIQMSML *V*A*VIQMSSMLA*LAAIW操作IQMSSMLA*V*A*LIQMSSMLA*V*IQMSSMLAIA*V,常IQMSSMLA*V*A*LIQMSSMLHA*V*A*IQMSSMLA*V*IQMSSMLAIA*V,常IQMSSMLA*V*A*LVIQMSSMLA*V*AHI还可以指令VIQMSSMLA*V*A和常HVIQMSSMLA*VD和常AIIQMSSMLAIA*V,常IQMSSMLA*V*A*LIQMSSMLA*V*A*LIQMSSMLAQA*VVIQMSSMLA*V*ALEVIQMSSML*V*A和常AC表操作CPU221/220~119~227~3CPU220~3CPU22*L*AM*V*L*ASM*VMIQSCPU221/222/22CPU22IQMSSMLA*V*A还可以是常ADD*L*ALSM*VIQMS0~0~10~到。
S7-200plc的基本指令及编程
Q1.0=I0.0*I0.1
Q0.0(SET)=I0.0*I0.1
Q0.2-Q0.4(RESET)=I0.0*I0.1
2021/5/27
36
4.立即指令
立即指令允许对输入和输出点进行快速 和直接存取
当用立即指令读取输入点的状态时,相 应的输入映像寄存器中的值并未发生更新;
用立即指令访问输出点时,访问的同时, 相应的输出寄存器的内容也被刷新。
//使能输入端 //整数加法 //VW0+VW4=VW4
2021/5/27
9
二、梯形图的基本绘制规则
work *** Network为网络段,后面的***为网 络段编号。 2.能流/使能 在梯形图中有两种基本类型的输入输
出,一种是能量流,另一种是数据。
EN为能流输入,ENO为能流输出,均
为布尔型数据。
2021/5/27
10
3.编程顺序 梯形图按照从上到下,从左到右
的顺序绘制。 4.编号分配 对外部输入/输出设备分配编号, 编号的分配必须是主机或扩展模块 本身实际提供的,而且是用来进行 编程的。
2021/5/27
11
5.内、外触点的配合
在梯形图中选择输入继电器的触点类型(内 部触点)与两方面的因素有关: 一是输入设备的触点类型(外部触点) 二是控制电路的实际通断要求。
和S1的值进行逻辑与运 算,结果放回栈顶。即
STACK3 S3 S4 STACK4 S4 S5
S0=S0*S1=1*0=0
STACK5 S5 S6 STACK6 S6 S7
执行完本指令后堆栈串行 上移一格,深度减1
STACK7 S7 S8
STACK8 2021/5/27 S8
X
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3 A I0.2
4 LPS
第二层入栈
工 学
M1.1 M1.2 Q0.2
5 A I0.3
校 电
6 = Q0.0
Q0.1
1 LD I0.0 14 = Q0.3
高
I0.3 I0.4
Q0.2
2 A I0.1 3 LPS
15 LD I0.6 16 LPS
级 技 工
I0.L5PS
Q0.3
4A 5=
I0.2 Q0.0
17 A 18 =
I0.7 Q0.4
学 校
I0.6 I0.7 I1.0 I1.1
Q0.4
LRD
Q0.5 Q0.6
例1:一层堆栈
I0.0 I0.1 I0.2 Q0.0
指令表
13 A I0.5
东 风Q0.1来自1 LD I0.0 14 = Q0.3
高
I0.3 I0.4
Q0.2
2 A I0.1 3 LPS
15 LD I0.6 16 LPS
级 技 工
I0.L5PS
Q0.3
4A 5=
I0.2 17 A Q0.0 18 =
I0.7 Q0.4
9
研
室
张树成
堆栈操作指令
东
堆栈使用示意图:LPP出栈
风
高
级
1
2
第三次
3 4
技 工 学
使用LPP
5
校
6
电
7
控
8
教
9
研
室
张树成
堆栈操作指令
说明:
东 风
4、由于堆栈操作有其独特的顺序性,因
高 级
此要求堆栈的用法要求必须正确无误。堆栈只 技
要保证入栈次数和出栈次数相等就不会出现大
工 学
的问题,读栈不影响堆栈的指针的变化。
6 LPP
19 LRD
读栈
20 A I1.0
7 = Q0.1
21 = Q0.5
8 LD I0.3 22 LRD
读栈
9 LPS
23 A Q1.1
电 控 教 研 室
I1.2 LRD Q0.7
10 A 11 =
I0.4 24 = Q0.6
Q0.2 25 LPP
LPP
12 LPP
张树成
26 A
I1.2
27 = Q0.7
第2级堆栈内容上升到栈顶,栈底自动生成随
教 研
机数。逻辑堆栈指令主要用来完成对触点进 室
行复杂的连接
张树成
堆栈操作指令
东
LPS:入栈指令(分支电路开始指令)
风
作用:运算存储。
高 级
从梯形图中的分支结构中可以形象地看
技 工
出,它用于生成一条新的母线,其左侧为原 学
来的主逻辑块,右侧为新的从逻辑块,因此
高
级
第二次使 用LPS指令
1
2
3
4
将第一次内容
5 6
压入第2层
技 工 学 校 电
7
控
8
教
9
研
室
张树成
堆栈操作指令
东
堆栈使用示意图:LPS进栈
风
高
级
第三次使 用LPS指令
1
2
3
4
将第二次内容
5 6
压入第2层
技 工 学 校 电
7
控
8
教
9
又将第一次内
研
容从第2层再
室
压入第3层
张树成
堆栈操作指令
说明:
东 风
校 电
从堆栈使用上来讲,LRD读取最近的LPS压入 控
堆栈的内容,而堆栈本身不进行Push和Pop工
教 研
作。
室
张树成
堆栈操作指令
东
LPP:出栈指令
风
作用:读出存储或复位。 分支电路结束
高 级
指令。
技 工
在梯形图分支结构中,LPP用于LPS产生 学
的新母线右侧的最后一个从逻辑块编程,它
校 电
在读完离它最近的LPS压入堆栈内容同时复位 控
电 控
教
研
室
张树成
堆栈操作指令
I0.0 I0.1
LRD
I0.2
I0.3 I0.4 I0.5 I0.6
I0.7
为并联 电路块
OLD
I1.0 I1.1
Q0.0 Q0.1
Q0.2 Q0.3
例2:一层堆栈(并用ALD、OLD指令)
东
指令表
风
1 LD I0.0
高
级
2 LPS
技
3 LD I0.1
工
4 A I0.2
校 电
可以直接编程。从堆栈使用上来讲,LPS指令 控
的作用是把栈顶值复制后压入堆栈。
教 研
室
张树成
堆栈操作指令
东
LRD:读栈指令
风
作用:读出存储。中间分支电路使用。
高 级
在梯形图分支结构中,当新母线左侧为
技 工
主逻辑块时,LPS开始右侧的第一个从逻辑块 学
编程,LRD开始第二个以后的从逻辑块编程。
9 A I0.4 21 = Q0.3
室
10 LD I0.5 22 MEND
11 A I0.6
12 OLD
张树成
堆栈操作指令
东
说明1:
风
入栈的目的就是要将当前的逻辑运算结
高 级
果暂时保存起来,然后就像没有入栈指令一样 技
完成本行指令。
工 学
再在入栈点上将逻辑运算结果读出来,
校 电
进行下一重输出行。
控
电
控
I1.0
Q0.5
教
I1.1
Q0.6
研 室
I1.2
Q0.7
张树成
堆栈操作指令
例1:一层堆栈
I0.0 I0.1 I0.2 Q0.0
指令表
东 风
Q0.1
1 LD I0.0
高
I0.3 I0.4
Q0.2
2 A I0.1
级 技
3 LPS
工
I0.5 使用LPQP0指.3令 4 A I0.2
学
5 = Q0.0
校
I0.6 I0.7
Q0.4
6 LPP
出栈
电 控
I1.0
Q0.5
7 = Q0.1
教
I1.1
Q0.6
研 室
I1.2
Q0.7
张树成
堆栈操作指令
例1:一层堆栈
I0.0 I0.1 I0.2 Q0.0
指令表
13 A I0.5
东 风
Q0.1
1 LD I0.0 14 = Q0.3
高
LPS
I0.3 I0.4
Q0.2
东
指令表
风
1 LD I0.0 13 ALD
高
2 LPS
14 = Q0.1
级 技
3 LD I0.1 15 LPP
工
4 A I0.2 16 A I0.7
学
5 ALD 6 = Q0.0 7 LRD 8 LD I0.3
17 = 18 LD 19 A 20 ALD
Q0.2
连 续
I1.0 输
I1.1
出 形
式
校 电 控 教 研
堆栈操作指令
ALDI0.0 I0.1
I0.2
LPS 电路块
I0.3 I0.4 I0.5 I0.6
I0.7
I1.0 I1.1
Q0.0 Q0.1
Q0.2 Q0.3
例2:一层堆栈(并用ALD、OLD指令)
东
指令表
风
1 LD I0.0
高
级
2 LPS
技
3 LD I0.1
工
4 A I0.2
学
5 ALD
校
6 = Q0.0
电 控
7 LRD
教
8 LD I0.3
研
9 A Q0.4
室
10 LD Q0.5
11 A Q0.6
12 OLD
张树成
堆栈操作指令
I0.0 I0.1 I0.2
Q0.0
I0.3 I0.4
Q0.1
并联电 I0.5 I0.6
路块
I0.7
ALD Q0.2
I1.0 Q0.3 LPP
I1.1
例2:一层堆栈(并用ALD、OLD指令)
校
电
控
5、这些指令为独立指令,不带任何软元
教 研
件编号。
室
张树成
堆栈操作指令
例1:一层堆栈
I0.0 I0.1 I0.2 Q0.0
指令表
东 风
Q0.1
1 LD I0.0
高
I0.3 I0.4
2 A I0.1
Q0.2
3 LPS
入栈
级 技 工
分支点开I0.5
Q0.3
学
始,使用
校
LPSI指0.6令I0.7
Q0.4
高
级
2、使用LRD,是读出最上端所存的最新数 技
据的专用指令,栈内的数据不发生移
工 学
动。
校
电
控
教
研
室
张树成
堆栈操作指令
东
堆栈使用示意图:LRD读栈
风
高
级
1 2 3 4 5
读取最上层的内 容,堆栈中的内 容不发生变化
技 工 学 校
6
电
7
控
8
教
9
研
室
张树成