s7-200 传送及移位指令(MOV SHL)

合集下载

s7-200 传送及移位指令(MOV SHL)

s7-200 传送及移位指令(MOV SHL)

案例7相关背景知识关于:数据处理指令一、传送类指令传送类指令用于在各个编程元件之间进行数据传送。

根据每次传送数据的数量,可分为单个传送指令和块传送指令。

1.单个传送指令MOVB,BIR,BIW,MOVW,MOVD,MOVR单个传送指令每次传送l个数据,传送数据的类型分为字节传送、字传送、双字传送和实数传送。

(1)字节传送指令MOVB,BIR,BlW字节传送指令可分为周期性字节传送指令和立即字节传送指令。

①周期性字节传送指令MOVB。

在梯形图中,周期性字节传送指令以功能框的形式编程,指令名称为MOV_B。

当允许输入EN有效时,将一个无符号的单字节数据IN传送到0UT中。

影响允许输出EN0正常工作的出错条件为:SM4.3(运行时问),0006(问接寻址)。

在语句表中,周期性字节传送指令MOVB的指令格式为:MOVB IN,OUT。

IN和0UT的寻址范围。

操作数类型寻址范围IN BYTE VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数OUT BYTE VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD②立即字节传送指令BIR,BIW。

立即读字节传送指令BIR:当允许输入EN有效时,BIR指令立即读取(不考虑扫描周期)当前输入继电器区中由IN指定的字节,并传送到OUT。

在梯形图中,立即读字节传送指令以功能框的形式编程,指令名称为:MOV_BIR。

当允许输入EN有效时,将1个无符号的单字节数据IN传送到0UT中。

在语句表中,立即读字节传送指令BIR的指令格式为: BIR IN,OUT。

IN和0UT的寻址范围如下表所示.操作数类型寻址范围IN BYTE IBOUT BYTE VB,IB,QB,MB,SB,SMB,LB,AC,。

VD,8AC,。

LD(2)字传送指令MOVW字传送指令MOVW将1个字长的有符号整数数据IN传送到OUT。

在梯形图中,字传送指令以功能框的形式编程,当允许输入EN有效时,将1个无符号的单字长数据IN传送到0UT中。

S7-200指令详解

S7-200指令详解

S7-200指令详解PLC在运行时需要处理的数据一般都根据数据的类型不同、数据的功能不同而把数据分成几类。

这些不同类型的数据被存放在不同的存储空间,从而形成不同的数据区。

S7-200的数据区可以分为数字量输入和输出映像区、模拟量输入和输出映像区、变量存储器区、顺序控制继电器区、位存储器区、特殊存储器区、定时器存储器区、计数器存储器区、局部存储器区、高速计数器区和累加器区。

3.1 S7-200的数据区1. 数字量输入和输出映象区(1) 数字量输入映像区(I区)数字量输入映像区是S7-200 CPU为输入端信号状态开辟的一个存贮区,用I表示。

在每次扫描周期的开始,CPU对输入点进行采样,并将采样值存于输入映像区寄存器中。

该区的数据可以是位(1bit)、字节(8bit)、字(16bit)或者双字(32bit)。

其表示形式如下。

·用位表示I0.0、I0.1、…I0.7I1.0、I1.1、…I1.7…I15.0、I15.1、…I15.7共l28点。

输入映像区每个位地址包括存储器标识符、字节地址及位号三部分。

存储器标识符为“I”,字节地址为整数部分,位号为小数部分。

比如Il.0表明这个输入点是第1个字节的第0位。

·用字节表示IB0、IB1、…IB15共l6个字节。

输入映像区每个字节地址包括存储器字节标识符、字节地址两部分。

字节标识符为“IB”,字节地址为整数部分。

比如IB1表明这个输入字节是第1个字节,共8位,其中第0位是最低位,第7位是最高位。

·用字表示IW0、IW2、…IW14共8个字。

输入映像区每个字地址包括存储器字标识符、字地址两部分。

字标识符为“IW”,字地址为整数部分。

一个字含两个字节,一个字中的两个字节的地址必须连续,且低位字节在一个字中应该是高8位,高位字节在一个字中应该是低8位。

比如,IW0中的IB0应该是高8位,IB1应该是低8位。

·用双字表示ID0、ID4、…ID12共4个双字。

S7-200 SMART移位和循环移位运算指令怎么用?

S7-200 SMART移位和循环移位运算指令怎么用?

S7-200 SMART移位和循环移位运算指令
移位指令
S7-200 SMART移位指令分为左、右移位、循环左、右移位及寄存器移位指令三大类。

前两类移位指令按移位数据的长度又分字节型、字型、双字型3种。

下图所示为移位指令梯形图:
图1. 移位指令:
移位与循环指令相关视频教程的链接如下:
如下为一个移位和循环移位实例:
图2.移位和循环移位程序图
其中:
I4.0上升沿触发
FOR_W为字循环右移
SHL_W为字左移
其移位和循环移位的过程可由下图进一步说明:
图3.移位和循环移位过程说明图
For Next 循环
程序循环结构用于描述一段程序的重复循环执行。

由 FOR和NEXT指令构成程序的循环体。

FOR指令标记循环的开始,NEXT指令为循环体的结束指令。

图4.For Next 循环
其中:
INIT,FINAL分别定义起始值和结束值。

使能输入EN有效,循环体开始执行,执行到NEXT指令时返回,每执行一次循环体,当前值计数器INDX增1,达到终止值FINAL时,循环结束。

使能输入无效时,循环体程序不执行。

每次使能输入有效,指令自动将各参数复位。

注意:使用 FOR 和 NEXT 指令可在重复执行分配计数的循环中执行程序段。

每条 FOR 指令需要一条 NEXT 指令。

For Next 编程实例
图5.For Next 循环循环程序图
使用状态表监控程序的运行如下图所示
图6.状态监视图
如上表所示,VW100值为4, INDEX大于终止值,循环终止。

第6章S7-200 PLC的功能指令及使用

第6章S7-200 PLC的功能指令及使用

Network 10 C10 +16 Network 11 C10
QB0
MOV_B EN ENO 7 IN OUT QB0
MOV_B EN ENO OUT
MOV_B EN ENO 3 IN OUT QB0
+18
MOV_B EN ENO OUT QB0
Network 12 C10 +20
MOV_B EN ENO 1 IN OUT QB0
字(整数INT)比较指令(取)
第一种 字比较触点“取”
字比较触点“取”
字(整数INT)比较指令(与)
第二种
字比较触点“与”
字比较触点“与”
字(整数INT)比较指令(或)
第三种 字比较触点“或”
字比较触点“或”
字(整数INT)比较指令(例题2)
例题2:分析程序,画出指定元件的时序
字比较指令例题2图
第一种:实数比较触点“取”
实数比较触点“取”
第二种:实数比较触点“与”
实数比较触点“与”
第三种:实数比较触点“或”
实 数 比 较 触 点 “ 或 ”
传送指令
1. 字节、字、双字、 实数的传送 SIMATIC功能指令助记符中最后的B、W、DW(或D)和R分别表 示操作数为字节(Byte)、字(Word)、双字(Doudle Word)和实数 (Real). 传送指令将输入的数据(IN)传送到输出(OUT),传送过程不改 变源地址中数据的值。
输入 启动开关 I1.0
输出 六盏灯 Q0.0-Q0.5
Network 1 I1.0 SM0.5 CU I1.0 R C10 24 Network 2 C10 +0 1 Network 3 C10 +2 3 Network 4 C10 +4 7 IN IN IN PV

西门子S7-200的数据处理指令

西门子S7-200的数据处理指令
块传送指令 字节块传送(BLKMOV_B) 字块传送(BLKMOV_W) 双字块传送(BLKMOV_D) 指令传送指定数量的数据到一个新的存储区,数据的起始地 址IN,数据长度为N个字节、字或者双字,新块的起始地址 为OUT。 N的范围从1到255。使 的错误条件:
5
10:25
二、移位指令 1. 右移和左移指令 移位指令将输入值IN右移或左移N位,并将结果装载到输出 OUT中,对移出的位自动补零。 • 如果位数N大于或等于最大允许值(对于字节操作为8,对 于字操作为16,对于双字操作为32),那么移位操作的次 数为最大允许值。 • 如果移位次数大于0,溢出标志位(SM1.1)上就是最近移 出的位值。 • 如果移位操作的结果为0,零存储器位(SM1.0)置位。 • 字节操作是无符号的。 对于字和双字操作,当使用有符号 数据类型时,符号位也被移动。
13
10:25
14
10:25
三、字节交换指令
15
10:25
四、填充指令
16
10:25
本章小结
SIMATIC S7-300有350多条指令,包 括熟知的、功能强大的STEP 5指令和 SIMATIC TISOFT指令。
6 10:25
右移和左移指令符号
7
10:25
图4-22
移位指令(字/双字)
2. 循环右移和左指令
指令将输入值IN循环右移或者循环左移N位,并将输出结果装载 到OUT中。循环移位是环形的。 • 如果位数N大于或者等于最大允许值(对于字节操作为8)。 • 如果移位次数为0,循环移位指令不执行。 • 如果循环移位指令执行,最后一位的值会复制到溢出标志位 (SM1.1)。 • 如果移位次数不是8、16和32的整数倍,最后被移出的位会 被复制到溢出标志位(SM1.1)。当要被循环移位的值是零 时,零标志位(SM1.0)被置位。 • 字节操作是无符号的。对于字和双字操作,当使用有符号数 据类型时,符号位也被移位。

S7-200的基本指令

S7-200的基本指令
使能输入有效后从起始位R-bit开始的N 个位 清 “0”并保持。
2019/4/23
4.1 位操作类指令
网络1 LD I0.0 S …Q…0.0, 1
网络2 LD I0.1 R Q0.0, 1
2019/4/23
4.1 位操作类指令 7.边沿触发指令 EU/ED
上升沿触发指令:EU
在EU指令前有一个上升沿时(由OFF→ON)产生一个宽 度为一个扫描周期的脉冲,驱动后面的输出线圈。
各种转换指令和表功能指令的作用
难点内容:
表功能指令
2019/4/23
4.1 位操作类指令
1.逻辑取(装载)指令 LD/LDN 2. 触点串联指令 A/AN 3. 触点并联指令 O/ON 4. 电路块的串联指令 ALD 5. 电路块的并联指令 OLD 6. 置位/复位指令 S/R 7. 边沿触发指令 EU/ED
LDW>= C30, VW30 //比较计数器
//当前值是否大于
程= 序举例Q0.1
//VW30 中的值 //输出触点
2019/4/23
4.1 位操作类指令
C3 0 当前值
1000
5000
5000
1000
Q Q 0.1
时序图
2019/4/23
4.2 运算指令 一、算术运算指令 二、逻辑运算指令 三、递增、递减指令
LAD
功能 IN1+IN2=OUT IN1-IN2=OUT IN1*IN2=OUT IN1/IN2=OUT
2019/4/23
4.2 运算指令
4.数学函数变换指令
(1)平方根(SQRT)指令 (2)自然对数(LN)指令 (3)自然指数(EXP)指令 (4)三角函数指令(SIN、 COS、 TAN)

S7-200系列PLC的数据处理指令

S7-200系列PLC的数据处理指令

VW200 1110 0010 1010 1101
第一次循环移位后
溢出
第一次移位后
溢出
AC0
1010 0000 0000 0000
1 VW200 1100 0101 0101 1010
1
第二次循环移位后 AC0 0101 0000 0000 0000
0 标志位(SM1.0 )=0 溢出标志位(SM1.1 )= 0
中。
在梯形图中,可以设定OUT和IN指向同一内存单元,这

可节省内存。
(6)双字的循环右移/左移指令
指令
说明
ROR_ 双字的循环右移/左移指令把源双字IN指定的内容向右/左循环
DW 移N位,结果存入OUT指定的目标字中。
EN
操作数:
IN
IN:VD,ID,QD,MD,SMD,AC,HC,*VD,*AC,
可节省内存。
执行结果对特殊标志位影响。SM1.0(0),SM1.1 溢出

CPU212和CPU214无此指令。
(5) 字的循环右移/左移指令
指令
说明
ROR_W 字的循环右移/左移指令把源字IN指定的内容向右/左循环移
EN
N位,结果存入OUT指定的目标字中。
IN
操作数:
N OUT
IN:VW,T,C,IW,QW,MW,SMW,AC,AIW, 常
N:VB,IB,QB,MB,SMB,AC,常数,*VD ,
*AC,SB
(6)字的块传送指令
指令
说明
BLKMOV_W
字的块传送指令:
EN
将从IN开始的连续N个字的数据块的内容复制到
IN1
从字OUT开始的数据块里。N的有效范围是1~255

西门子S7-200 PLC指令简介及实例分析

西门子S7-200 PLC指令简介及实例分析

数据处理、运算指令及应用本章要点●数据传送、字节交换、字节立即读写、移位、转换指令的介绍、应用及实训●算术运算、逻辑运算、递增/递减指令的介绍、应用及实训●表的定义、填表指令、表取数指令、填充指令、表查找指令的介绍5.1 数据处理指令5.1.1 数据传送指令1. 字节、字、双字、实数单个数据传送指令MOV数据传送指令MOV,用来传送单个的字节、字、双字、实数。

指令格式及功能如表5-1所示。

表5-1单个数据传送指令MOV指令格式使ENO = 0即使能输出断开的错误条件是:SM4.3(运行时间),0006(间接寻址错误)。

【例5-1】将变量存储器VW10中内容送到VW100中。

程序如图5-1所示。

LD I0.1MOVW VW10, VW100图5-1 例5-1题图2. 字节、字、双字、实数数据块传送指令BLKMOV数据块传送指令将从输入地址IN 开始的N 个数据传送到输出地址OUT 开始的N 个单元中,N 的范围为1至255,N 的数据类型为:字节。

指令格式及功能如表5-2所示。

表5-2 数据传送指令BLKMOV 指令格式使ENO= 0的错误条件:0006(间接寻址错误)0091(操作数超出范围)。

【例5-2】程序举例:将变量存储器VB20开始的4个字节(VB20- VB23)中的数据,移至VB100开始的4个字节中(VB100-VB 103)。

程序如图5-2所示。

LAD STLLD I0.0BMB VB20 ,VB100, 4图5-2 例5-2图程序执行后,将VB20~VB23中的数据30、31、32、33送到VB100~VB103。

执行结果如下:数组1数据 30 31 32 33数据地址 VB20 VB21 VB22 VB23块移动执行后:数组2数据 30 31 32 33数据地址 VB100 VB101 VB102 VB1035.1.2 字节交换、字节立即读写指令1. 字节交换指令字节交换指令用来交换输入字IN 的最高位字节和最低位字节。

第六章 S7-200PLC特殊功能指令

第六章 S7-200PLC特殊功能指令

BLKMOV-DW
EN ENO IN N OUT
数据块传送指令把从输入 (IN)指定地址的N个连续 字节、字、双字的内容传送 到从输出(OUT)指定地址 开始的N个连续字节、字、 双字的存储单元中去。
VB20 VB21 VB22 VB23 VB24
数组1 30
31
32
33Βιβλιοθήκη 34VB100 VB101 VB102 VB103 VB104
LD I0.0 //T37产生周期为 AN T37 0.5s的移位脉冲 TON T37, +5
LD T37 //每来一个脉冲 RLB QB0, 1 彩灯循环左移1位
已知:I0.0接外部开关,Q0.0接指示灯,问下面的梯形图 实现什么功能?
(5)移位寄存器指令 移位寄存器指令可用来进行顺序控制、物流及数据流控制。
SM1.1 移位后 1 1010 1011 0011 0110 VW300
例题:用I0.0控制接在Q0.0~Q0.7上的8个彩灯循环移位,从左
到右以0.5s的速度依次点亮,保持任意时刻只有一个指示灯亮 ,到达最右端后,再从左到右依次点亮。 要求:使用循环移位指令。
LD SM0.1 //首次扫描时 MOVB 1, QB0 //置8位彩灯初态
I0.1
MOV-W
EN ENO
VVDW11000 IN OUT AC0
MSB
VW100
10
LSB
46
MSB AC0
LSB
10 46
MOVW VW100, AC0
若I0.1=1,则将VW100的数据传送到AC0
(2)数据块传送指令
BLKMOV-B
EN ENO IN N OUT
BLKMOV-W

S7-200系列PLC的功能指令表

S7-200系列PLC的功能指令表

一般的逻辑控制系统用软继电器、定时器和计数器及基本指令就可以实现。

利用功能指令可以开发出更复杂的控制系统,以致构成网络控制系统。

这些功能指令实际上是厂商为满足各种客户的特殊需要而开发的通用子程序。

功能指令的丰富程度及其合用的方便程度是衡量PLC性能的一个重要指标。

S7-200的功能指令很丰富,大致包括这几方面:算术与逻辑运算、传送、移位与循环移位、程序流控制、数据表处理、PID指令、数据格式变换、高速处理、通信以及实时时钟等。

功能指令的助记符与汇编语言相似,略具计算机知识的人学习起来也不会有太大困难。

但S7-200系列PLC功能指令毕竟太多,一般读者不必准确记忆其详尽用法,需要时可可查阅产品手册。

表4-20 四则运算指令
表4-21 逻辑运算指令
表4-22 数据传送指令
表4-23 移位与循环移位指令
表4-24 交换和填充指令
表4-25 表操作指令
表4-26 数据转换指令
表4-27 特殊指令。

S7-200 PLC功能指令

S7-200 PLC功能指令

4.4 S7-200 PLC的功能指令PLC的功能指令(Functional Instruction)或称应用指令,是指令系统中满足特殊控制要求的那些指令。

在本节中主要介绍数据处理指令、数据运算指令、转换指令、表功能指令、程序控制类指令、中断指令、高速计数器指令、高速脉冲指令等。

1.指令格式指令的梯形图格式主要以指令盒的形式表示,如图4-49所示:图4-49 指令的梯形图格式指令盒的顶部为该指令的标题,如MOV_B,一般由两部分组成,前面部分为指令的助记符,后面部分为参与运算的数据类型,B表示字节,W表示字,DW表示双字、R表示实数、I表示整数、DI表示双整数。

指令的指令表格式也分为两部分,如字节传送指令的指令表格式为:MOVB IN,OUT。

前面部分为指令的助记符,后面部分为指令的操作数,其中“IN”为源操作数,“OUT”为目的操作数。

为了节省篇幅,对每条功能指令的操作数的内容即数据类型做如下约定:字节型:VB、IB、QB、MB、SB、SMB、LB、AC、*VD、*LD、*AC和常数。

字型及INT型:VW、IW、QW、MW、SW、SMW、LW、AC、T、C、*VD、*LD、*AC和常数。

双字型及DINT型:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*LD、*AC和常数。

2.指令的执行条作和运行情况指令梯形图格式中的“EN”端是允许输入端,为指令的执行条件,只要有“能流流入EN 端,指令就执行。

要注意的是:只要条件存在,该指令会在每个扫描周期执行一次,如果希望只执行一次,要在“EN”前加一条跳变指令。

在语句表(STL)程序中没有EN允许输入端,允许执行STL语句的条件是栈顶的值必须是“1”。

4.ENO状态(用于指令的级联)指令盒的右边设有“ENO”使能输出,若EN端有“能流”且指令被准确无误地执行了,则ENO端会有“能流”输出,传到下一个程序单元,如果指令运行出错,ENO端状态为0。

S7-200PLC的功能指令

S7-200PLC的功能指令

M0.7的值 0
1 0 1 0 1 0
7
8 9
AA80
5500 AA00
1010101010000000
0101010100000000 1010101000000000
1
0 1
10
11 12 13 14
5400
A8 5000 A000 4000/5555
0101010000000000
1010100000000000 0101000000000000 1010000000000000 0100000000000000
双字存储元件编址
• 地址分配情况:以 VD100为例,由4个存储 单元组成VB100是高8位,VB103是低8位, VB101、VB102是中间位。 • 实数也是双字数据,只是带有小数,因此 编址与双字整数相同。
5、数据类型
• 整数:整数是没有小数的数据,分为有符 号整数和无符号整数。无符号整数的最高 位表示数据的最高位;有符号整数的最高 位是符号位,0表示整数1表示负数。 • 实数(浮点数float):实数是有符号带小数 的数据,数据长度为4个字节,在传送指令中 使用MOV_R指令,可以直接输入正负小数 (7位)
LD
C30
//装入计数器触点 //作为双字增的 //脉冲输入
增 减 指 令 的 应 用
INCD
VD100
//双字增指令 //
增/减量指令的应用
• 用增量指令实现单按 钮控制起保停控制。 • 每当I0.0通断一次, M0.0奇偶变化一次, 从而使得Q0.0状态随 之反转一次。
三、实数运算指令
• 实数运算指令一般用于模拟量的运算处理, 如PID控制等。常用的实数运算分为以下几 种: • 1、实数加减运算 • 2、实数乘除运算 • 3、函数运算

S7-200指令表

S7-200指令表

S7-200指令表指令名称梯形图语句表触点指令常开触点LD A O 位地址常闭触点LDN AN ON位地址常开立即触点LDI AI OI 位地址常闭立即触点LDNI ANI ONI位地址取反触点NOT正转换触点P EU负转换触点N ED线圈指令输出指令-()=位地址置位指令-( S )S 位地址、个数复位指令-( R )R 位地址、个数立即输出指令-( I )=I 位地址立即置位指令-(SI )SI 位地址、个数立即复位指令-(RI )RI 位地址、个数时间指令接通延时定时器TON TON T××PT(预设值)有记忆接通延时定时器TONR TONR T××PT 断开延时定时器TOF TOF T××PT 触发时间间隔指令BGN__ITIME BITIM OUT计算时间间隔指令CAL__ITIME CITIM IN OUT计数器指令增计数器CTU CTU C××PV(预设值)减计数器CTD CTD C××PV增减计数器CTUD CTUD C××PV普通传送指令字节传送指令MOV__B MOVB IN,OUT 字传送指令MOV__W MOVW IN,OUT 双字传送指令MOV__DW MOVD IN,OUT 实数传送指令MOV__R MOVR IN,OUT字节指令字节立即读指令MOV__BIR BIR IN ,OUT 字节立即写指令MOV__BIW BIW IN ,OUT块传送指令字节块传送指令BLKMOV__B BMB IN,OUT,N(数目)字块传送指令BLKMOV__W BMW IN,OUT,N(数目) 双字块传送指令BLKMOV__D BMD IN,OUT,N(数目)交换指令字节交换指令SWAP S字节比较指令字节等于比较指令==B LDB=IN1,IN2 AB=IN1,IN2 OB=IN1,IN2 字节不等于指令<>B LDB<>IN1,IN2 AB<>IN1,IN2 OB<>IN1,IN2 字节大于等于指令>=B LDB>=IN1,IN2 AB>=IN1,IN2 OB>=IN1,IN2 字节小于等于指令<=B LDB<=IN1,IN2 AB<=IN1,IN2 OB<=IN1,IN2 字节大于指令>B LDB>IN1,IN2 AB>IN1,IN2 OB>IN1,IN2 字节小于指令整数比较整数等于比较指令==I LDW=IN1,IN2 AW=IN1,IN2 OW=IN1,IN2 整数不等于指令<>I LDW<>IN1,IN2 AW<>IN1,IN2 OW<>IN1,IN2。

西门子S7-200PLC第5章 S7-200功能指令PLC

西门子S7-200PLC第5章  S7-200功能指令PLC

码),该信号使数码管显示“4”。
• 3. 字符串转换指令

字符串转换指令是实现由ASCII码表示字符串数据与其它数据类
型之间的转换。
• 例:ASCII码转换为十六进制数指令ATH
当EN有效时,把从IN开始的LEN(长度)个字节单元的ASCII码, 相应转换成十六进制数,依次送到OUT开始的LEN个字节存储单元中。
在语句表指令中,IN1和OUT按位与,其结果送入OUT中。 逻辑非指令,把1字节长的无符号数IN按位取反后送OUT中。
• 5.3 移位指令

移位指令的作用是对操作数按二进制位进行移位操作,移位指令
包括:左移位、右移位、循环左移位、循环右移位以及移位寄存器指
令。
• 1. 左移和右移指令
• 左移和右移指令的功能是将输入数据IN左移或右移N位,其结果 送到OUT中。移位指令分字节、字、双字移位指令,其指令格式类同。 下面为一般字节移位指令:
• 例如:设S_BIT=V20.5(字节地址为20,位序号为5),N=16 。自定 义移位寄存器地址范围为20.5~22.4,共16位,如图所示。
• 5.4 表功能指令

所谓表是指定义一块连续存放数据的存储区,通过专设的表功能指
令可以方便地实现对表中数据的各种操作。
• 1. 填表指令
• 填表指令ATT(Add To Table)用于向表中增加一个数据。
其中,BLKMOV_B为字节块传送梯形图指令标识符;BMB为语句表 指令操作码助记符;
N为字节型数据,表示块的长度 ;IN为字节块起始地址 。
• 2. 填充指令FILL • 填充指令FILL用于处理字型数据。 • 例,在I0.0控制开关导通时,将VW100开始的256个字节全部清0。程

4.3-S7-200-的功能指令

4.3-S7-200-的功能指令
B、减法指令
LAD
STL 功能 说明
-I IN2,0UT
-D IN2,0UT
-R IN2,0UT
整数减法 IN1-IN2=OUT
双整数减法 IN1-IN2=OUT
实数减法 IN1-IN2=OUT
操作数IN1与OUT共用一个地址单元,因此语句表中: OUT-IN2=OUT
21
第21页,共132页。
4.3 S7-200PLC的功能指令
说明:为了节省内存,在加法的梯形图指令中,可以指定IN1或 IN2=OUT,这样,可以不用数据传送指令。如指定INI=OUT,则语句表 指令为:+I IN2,OUT;如指定IN2=OUT,则语句表指令为:+I IN1,OUT。这个原则适用于乘法指令。
【例1】
20
第20页,共132页。
4.3 S7-200PLC的功能指令
第四章
S7-200 PLC的指令系统
4.3 S7-200PLC的功能指令
1
第1页,共132页。
4.3 S7-200PLC的功能指令
1. 传送指令 (1) 数据传送指令MOV
L A D
S
T MOVB IN,OUT
L
MOVW IN,OUT MOVD IN,OUT
MOVR IN,OUT整数
第5页,共132页。
在I0.1接通的每个扫描周 期把定时器T32的当前值传 送到VW12中
5
4.3 S7-200PLC的功能指令
【例4】小数传送
在I0.0接通的那个扫描周期把
3.14传送到VD14中
在I0.1接通的每个扫描周 期把小数VD14传送到
VD18中
3.14是小数,所以要求使用小数传送。 注意连续执行型与脉冲执行型实现功能的区别。

第六章S7-200 PLC的功能指令及使用

第六章S7-200 PLC的功能指令及使用

1.四则运算指令--加法指令
②双整数加法指令 梯形图:
语句表:+D IN1, OUT 功能:当EN=1时,将两个双字长的有符号整数IN1和I N2相加,结果为双字长的有符号整数存入OUT 。
1.四则运算指令--加法指令
③实数加法指令 梯形图:
语句表:+R IN1, OUT 功能:当EN=1时,将两个32位实数IN1和IN2相加, 结果为32位实数存入OUT 。
数据由IN传送到OUT 。
2.数据块传送指令
①字节块传送指令 梯形图:
语句表:BMB IN, OUT, N 功能:当EN=1时,将从IN开始的N个字节型数据 传送到OUT开始的N个字节型存储单元 。
2.数据块传送指令
②字块传送指令 梯形图:
语句表:BMW IN, OUT, N 功能:当EN=1时,将从IN开始的N个字型数据传 送到OUT开始的N个字型存储单元 。
2.数学功能指令—平方根指令
梯形图:
语句表:SQRT IN, OUT 功能:当EN=1时,将双字长的实数IN开平方,结果 为32的实数存入OUT 。
2.数学功能指令—自然指数指令
梯形图:
语句表: EXP IN, OUT 功能:当EN=1时,将双字长的实数IN取e为底的指数, 结果为32的实数存入OUT 。
6.1.1 数据传送指令
1.单一数据传送指令 2.数据块传送指令 3.交换字节指令 4.字节传送立即读、写指令
1.单一数据传送指令
①字节传送指令 梯形图:
语句表:MOVB IN, OUT 功能:当EN=1时,将一个无符号单字节数据
由IN传送到OUT 。
1.单一数据传送指令
②字传送指令 梯形图:
1.四则运算指令—减1指令

第五章_s7-200的功能指令及应用

第五章_s7-200的功能指令及应用



比较指令是将两个操作数按指定的条件比较, 操作数可以是整数,也可以是实数,在梯形图 中用触点表示比较结果,比较条件成立时,触 点就闭合,否则断开。 比较触点可以装入,也可以串、并联。 第3章\039.doc
5.1.5 转换指令


转换指令是对操作数的类型进行转换,并输出 到指定目标地址中去。转换指令包括数据的类 型转换、数据的编码和译码指令以及字符串类 型转换指令。 不同功能的指令对操作数要求不同。类型转换 指令可将同一个数据用到不同类型的指令中, 包括字节与字整数之间的转换,整数与双整数 的转换,双字整数与实数之间的转换,BCD码与 整数之间的转换等。
6. 七段显示译码指令 链接文件夹第五章\013.doc 7. ASCII码与十六进制数之间的转换指令 链接文件夹第五章\014.doc
5.2 算术运算、逻辑运算指令
5.2.1 算术运算指令
1. 整数加减法指令 链接文件夹第五章\019.doc 2. 整数乘除法指令 链接文件夹第五章\020.doc 3. 实数加减乘除指令 链接文件夹第五章\021.doc 4. 数学函数变换指令 链接文件夹第五章\022.doc
双字递增和双字递减指令在输入双字( IN)上 加1或减1,并将结果置入OUT。 递增和递减双字运算带符号 (16#7FFFFFFF 增1为 16#80000000)
5.2.4 运算单位转换实训
1. 实训目的 链接文件夹第五章\025.doc 2. 实训内容 将英寸转换成厘米,已知C10的当前值为英寸 的计数值,1英寸=2.54厘米。 3. 写入程序、编译并下载到PLC 链接文件夹第五章\026.doc
5.1.3 移位指令及应用举例
移位指令分为:移位、循环移位和寄存器移位 三大类。前两类按移位数据长度又分字节型、字型、 双字型3种。 1.移位指令 链接文件夹第五章\005.doc 2.循环移位指令 链接文件夹第五章\006.doc 3.寄存器移位指令 链接文件夹第五章\007.doc

西门子S7-200基本指令

西门子S7-200基本指令

//
O
I2.0
//
ALD
//
=
Q 1.3
//
辑 指
.
图 4
令 11
的 应 用
复 杂 逻
返回本节
4.1.4 定时器指令
系统提供3种定时指令:TON、TONR和TOF。 精度等级: S7-200定时器的精度(时间增量/时间单位/分辨率)有3 个等级:1ms、10ms和100ms,精度等级和定时器号关系 如表4.14所示。
图4.7 置位复位
本程序对应的时序图如图4.8所示。
I0.0 I0.1 Q1.0 Q0.0 Q0.2-Q0.4
图4.8 时序图
4. 立即指令
(1)立即触点指令 (2)=I,立即输出指令 (3)SI,立即置位指令 (4)RI,立即复位指令
(1)立即触点指令 在每个标准触点指令的后面加“I”。指令执行时, 立即读取物理输入点的值,但是不刷新对应映像 寄存器的值。
LD
I0.0
//装入常开触点
=
Q0.0 //输出触点,非立即
=I
Q0.1 //立即输出触点
SI
Q0.2, 1 //从 Q0.2 开始的 1 个
//触点被立即置 1
LDI =
I0.0 Q0.3
//立即输入触点指令 //
图4.9 立即指令程序
输出刷新
输出刷新
输出刷新
输出刷新
输出刷新
I0.0
扫描周期n 输入扫描
5. 逻辑读栈指令
LRD,逻辑读栈指令。在梯形图中的分支结构中,当左 侧为主控逻辑块时,开始第二个和后边更多的从逻辑块。 在语句表中指令LRD 执行情况如表4.12所示。
6. 装入堆栈指令
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

案例7相关背景知识关于:数据处理指令一、传送类指令传送类指令用于在各个编程元件之间进行数据传送。

根据每次传送数据的数量,可分为单个传送指令和块传送指令。

1.单个传送指令MOVB,BIR,BIW,MOVW,MOVD,MOVR单个传送指令每次传送l个数据,传送数据的类型分为字节传送、字传送、双字传送和实数传送。

(1)字节传送指令MOVB,BIR,BlW字节传送指令可分为周期性字节传送指令和立即字节传送指令。

①周期性字节传送指令MOVB。

在梯形图中,周期性字节传送指令以功能框的形式编程,指令名称为MOV_B。

当允许输入EN有效时,将一个无符号的单字节数据IN传送到0UT中。

影响允许输出EN0正常工作的出错条件为:SM4.3(运行时问),0006(问接寻址)。

在语句表中,周期性字节传送指令MOVB的指令格式为:MOVB IN,OUT。

IN和0UT的寻址范围。

操作数类型寻址范围IN BYTE VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数OUT BYTE VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD②立即字节传送指令BIR,BIW。

立即读字节传送指令BIR:当允许输入EN有效时,BIR指令立即读取(不考虑扫描周期)当前输入继电器区中由IN指定的字节,并传送到OUT。

在梯形图中,立即读字节传送指令以功能框的形式编程,指令名称为:MOV_BIR。

当允许输入EN有效时,将1个无符号的单字节数据IN传送到0UT中。

在语句表中,立即读字节传送指令BIR的指令格式为: BIR IN,OUT。

IN和0UT的寻址范围如下表所示.操作数类型寻址范围IN BYTE IBOUT BYTE VB,IB,QB,MB,SB,SMB,LB,AC,。

VD,8AC,。

LD(2)字传送指令MOVW字传送指令MOVW将1个字长的有符号整数数据IN传送到OUT。

在梯形图中,字传送指令以功能框的形式编程,当允许输入EN有效时,将1个无符号的单字长数据IN传送到0UT中。

影响允许输出EN0正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。

在语句表中,字传送指令MOVW的指令格式为MOVW IN,OUT。

IN和0UT的寻址范围.操作数类型寻址范围IN WORD VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD和常数OUT WORD VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD(3)双字传送指令MOVD双字传送指令MOVD将1个双字长的有符号整数数据IN传送到0UT。

在梯形图中,双字传送指令以功能框的形式编程,指令名称为:MOV_DW。

当允许输入EN有效时,将1个有符号的双字长数据IN传送到0UT中。

影响允许输出EN0正常工作的出错条件为SM4.3(运行时间),0006(问接寻址)。

在语句表中,双字传送指令MOVD的指令格式为:MOVD IN,OUT。

IN和0UT的寻址范围如下表所示。

操作数类型寻址范围IN DWORD VD,ID,QD,MD,SMD,LD,AC,HC,*VD,*AC,*LD和常数OUT DWORD VD,ID,QD,MD,SMD,LD,AC,*VD,*AC,*LD(4)实数传送指令MOVR实数传送指令MOVR 将1个双字长的实数数据烈传送到OUT 。

在梯形图中,实数传送指令以功能框的形式编程,当允许输入EN 有效时,将1个有符号的双字长实数数据IN 传送到OUT 中。

影响允许输出EN0正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。

在语句表中,实数传送指令MOVR 的指令格式为:MOVR IN ,OUT 。

I N 和 0UT 的寻址范围如下表所示。

操作数类 型 寻址范围 INREAL VD ,ID ,QD ,MD ,SMD ,LD ,AC ,HC ,*VD ,*AC ,*LD 和常数 0UT REAL VD ,ID ,QD ,MD ,SMD ,LD ,AC ,4VD ,*AC ,*LD2.块传送指令BMB ,BMW ,BMD块传送指令用来进行一次传送多个数据,将最多可达255个的数据组成1个数据块,数据块的类型可以是字节块、字块和双字块。

(1) 字节块传送指令BMB字节块传送指令BMB 的功能是:当允许输入EN 有效时,将从输入字节IN 开始的N 个字节型数据传送到从OUT 开始的N 个字节存储单元。

(2)字块传送指令BMW字块传送指令BMW 的功能是:当允许输入EN 有效时,将从输入字IN 开始的N 个字型数据传送到从0UT 开始的N 字存储单元。

(3)双字块传送指令BMD双字块传送指令BMD 的功能是:当允许输入EN 有效时,将从输入双字IN 开始的N 个双字型数据传送到从OUT 开始的N 个双字存储单元。

块传送指令在梯形图中以功能框形式编程,影响允许输出EN0正常工作的出错条件为:M4.3(运行时间),0006(间接寻址),0091(数超界),在语句表中,块传送指令的指令格式如下。

字节块传送指令:BMB IN ,OUT ,N 。

字块传送指令: BMW IN ,OUT ,N 。

双字块传送指令:BMD IN ,OUT ,N 。

块传送指令的IN ,N ,OUT 的寻址范围 指令 操作数 类型 寻址范围BMB INBYTE VB ,Ⅲ,QB ,Ⅷ,SMB ,LB ,AC ,HC ,*VD ,*AC ,*LD OUTBYTE VB ,IB ,QB ,MB ,SMB ,LB ,AC ,HC ,*VD ,*AC ,*LD NBYTE VB ,IB ,QB ,MB ,SMB ,LB ,AC ,*VD ,*AC .*LD BMW INWORD VW ,IW ,QW ,MW ,SMW ,LW ,AIW ,T ,C ,AQW ,AC ,HC ,*VD ,*AC .*LD OUTWORD NBYTB VB ,IB ,QB ,MB ,SMB ,LB ,AC ,*WD ,*AC .*LD BMD INDWORD VD ,ID ,QD ,MD ,SMD ,SD ,LD ,AC ,HC ,*VD ,*AC .*LD OUTDWORD NBYTE VB ,113,QB ,MB ,SMB ,LB ,AC ,+VD ,*AC ,*LD 和常数 关于:移位指令1.左移和右移指令左移或右移指令的功能是将输入数据IN 左移或右移N 位后,把结果送到0UT 。

左移或右移指令的特点如下。

.被移位的数据是无符号的。

.在移位时,存放被移位数据的编程元件的移出端与特殊继电器SM1.1连接,移出位进入SM1.1(溢出),另一端自动补0。

.移位次数N与移位数据的长度有关,如N小于实际的数据长度,则执行N次移位。

如N大于数据长度,则执行移位的次数等于实际数据长度的位数。

.移位次数Ⅳ为字节型数据。

左移和右移指令影响的特殊继电器:SM1.0(零),当移位操作结果为0时,SM1.0自动置位;SM1.1(溢出)的状态由每次移出位的状态决定。

影响允许输出EN0正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。

(1)字节左移指令SLB(Shift Left Byte)和字节右移指令SRB(Shift Right Byte)在梯形图中,字节左移指令或字节右移指令以功能框的形式编程,指令名称分别为:SHL B和SHR B。

当允许输入EN有效时,将字节型输入数据IN左移或右移N位(N≤8)后,送到0UT指定的字节存储单元。

在语句表中,字节左移指令SLB或字节右移指令SRB的指令格式如下。

字节左移指令:SLB OUT,N(OUT与IN为同一个存储单元)字节右移指令:SRB OUT,N(OUT与IN为同一个存储单元)(2)字左移指令SLW(ShiftLeftWord)和字右移指令SRW(ShiftRightWord)在梯形图中,字左移指令SLW或字右移指令SRW以功能框的形式编程,指令的名称分别为:SHL_W和SHR_W。

当允许输入EN有效时,将字型输入数据IN左移或右移N位(N≤l6)后,送到0UT指定的字存储单元。

在语句表中,字左移指令SLW或字右移指令SRW的指令格式如下。

字左移指令:SLW OUT,N(OUT与IN为同一个存储单元)字右移指令:SRW OUT,N(OUT与IN为同一个存储单元)(3)双字左移指令SLD(Shift Left Double word)和双字右移指令SRD(Shift Right Double word)在梯形图中,双字左移指令SLD或双字右移指令SRD以功能框的形式编程,当允许输入EN有效时,将双字型输入数据IN左移或右移N位(N≤32)后,送到0UT指定的双字存储单元。

在语句表中,双字左移指令SLD或双字右移指令SRD的指令格式如下。

双字左移指令:SLD OUT,N(OUT与IN为同一个存储单元)双字右移指令:SRD OUT,N(OUT与IN为同一个存储单元)2.循环左移和循环右移指令循环移位的特点如下。

·被移位的数据是无符号的。

·在移位时,存放被移位数据的编程元件的移出端既与另一端连接,又与特殊继电器SM1.1连接,移出位在被移到另一端的同时,也进入SM1.1(溢出),另一端自动补0。

·移位次数N与移位数据的长度有关,如N小于实际的数据长度,则执行N次移位。

如N大于数据长度,则执行移位的次数为N除以实际数据长度的余数。

·移位次数N为字节型数据。

循环移位指令影响的特殊继电器:SM1.0(零),当移位操作结果为0时,SM1.0自动置位:SM1.1(溢出)的状态由每次移出位的状态决定。

影响允许输出EN0正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。

(1)字节循环左移指令RLB(Rotate Left Byte)和字节循环右移指令RB(RotateRightByte)在梯形图中,字节循环移位指令以功能框的形式编程,指令名称分别为:ROL_B和ROR_B当允许输入EN有效时,把字节型输入数据州循环移位Ⅳ位后,送到由0UT指定的字在语句表中,字节循环移位指令的指令格式如下。

字节循环左移指令:RLB OUT,N字节循环右移指令:RRB OUT,N(2)字循环左移指令RLW(Rotate Left Word)和字循环右移指令RRW(Rotate Right Word)在梯形图中,字循环移位指令以功能框的形式编程,指令名称分别为:ROL_W和ROR_W。

当允许输入EN有效时,把字型输入数据IN循环移位N位后,送到由OUT指定的字。

在语句表中,字循环移位指令的指令格式如下。

字循环左移指令:RLW OUT,N字循环右移指令:RRW OUT,N(3)双字循环左移指令RLD(Rotate Left Double word)和双字循环右移指令RRD(Rotate Right Double word) 在梯形图中,双字循环移位指令以功能框的形式编程,指令名称分别为:ROL_DW和ROR_DW。

相关文档
最新文档