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

合集下载

西门子S7-200 PLC的指令系统及指令应用

西门子S7-200 PLC的指令系统及指令应用

说明: 根据控制要求,程序在 M0.1 处应该输出 Q0.1,在 M0.2 处也应该输出 Q0.1 如果在 M0.1 及 M0.2 处直接输出 Q0.1,则就范了上面程序双线圈错误, 因此在需要输出 Q0.1 的地方,输出不同的中间继电器,然后把中间继电器的常 开点并联起来,再集中输出一个 Q0.1 的线圈,这样就能避免双线圈的问题。 或者下面的程序也能正确的满足控制要求:
分析: 若 A 先按下按钮, 则 Q0.1 灯要亮, 并且一直亮, 直到主持人按下复位按钮 I0.0, 灯才会灭。其他人按下按钮,对应的灯也不会亮。 若 B 先按下按钮, 则 Q0.2 灯要亮, 并且一直亮, 直到主持人按下复位按钮 I0.0, 灯才会灭。其他人按下按钮,对应的灯也不会亮。 同理,C、D 一样 以下程序是分析后得出的:
地址:苏州吴中宝丰路 1 号
咨询: 400-8169-114
苏州天天自动化 PLC 培训中心

触点指令应用案例 3:
用一个按钮(I0.1)来控制三个输出(Q0.1、Q0.2、Q0.3) 。 当 Q0.1、Q0.2、Q0.3 都为 OFF 时,按第一下 I0.1,则 Q0.1 变为 ON, 按第二下 I0.1,则 Q0.1、Q0.2 变为 ON, 按第三下 I0.1,则 Q0.1、Q0.2、Q0.3 都变 ON 按第四下 I0.1,则 Q0.1、Q0.2、Q0.3 都变为 OFF 状态。 按第五下 I0.1,重复执行如上动作。 试用两种不同的程序设计方法设计其梯形图程序。 以下是分析后得出的程序:
上图梯形图中,”N”此条件只有当 I0.0 由接通→断开的瞬间(也就是上面波形 图中的过程 4 这个状态时)才会接通,其他时刻都不会接通。
应用案例 1:每按一下 I0.1 按钮,变量存储器的数值加 1

西门子s7-200PLC基本指令

西门子s7-200PLC基本指令
•当输入能流断开时停止计时,同时定时器位被置0、清除 当前值。 •定时器号(Txx)决定了定时器的分辨率。
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-运算指令

西门子S7-200-运算指令

(2)功能
梯形图:使能输入EN=1时,被减数 IN1减去减数IN2,其结果传送到OUT中, 即: IN1−IN2=OUT
指令表:要先将一个减数送到OUT中, 然后用OUT中的数据减去IN2中的数据, 并将其结果传送到OUT中,即:
MOVW IN1,OUT
−I IN2,OUT
实现OUT−IN2=OUT
MUL_I MUL_DI MUL_R
整数乘法 双整数乘法 实数乘法
(4)除法:DIV
DIV_I DIV_DI DIV_R
整数减法 双整数减法 实数减法
另外: +I 16位整数相加指令 −I 16位整数相减指令 *I 16位整数相乘指令 / I 16位整数除法指令
+D 32位整数相加指令
−D 32位整数相减指令
续表
4.2.2 扩展的浮点数算术运 算指令
扩展的浮点数算术运算指令如表4-21 所示。
表4-21 扩展的浮点数算术运算指令
续表
续表
4.2.3 加、减、乘、除运算
1.加法运算
(1)梯形图符号及语句表格式
其中:ADD—加法运算符; I(INT)/DI(DINT)/R(REAL)——数据 类型符(整/双整/实数); EN(Enable In)——运算允许信号(使 能输入)。
MOVW IN1,OUT
/I IN2,OUT
实现OUT/ IN2 =OUT
(3)说明
① 应用除法指令应该注意的数据类型。 DIV_I(整数除法):将两个单字长 (16位)符号整数(IN1和IN2)相除,结 果为16位整数。
DIV_DI(双整数除法):将两个双字 长(32位)符号整数(IN1和IN2)相除, 结果为32位整数。

西门子s7200-PLC-基本指令

西门子s7200-PLC-基本指令

梯形图
操作数
无 无
NOT
NOP N
改变能流输入的状态
空操作

N=0~255
正负跳变指令、取反指令、空操作指令的几点规定
1. 正跳变指令(EU)检测到每一次正跳变(触点的输入信号 由0到1),或负跳变指令(ED)检测到每一次负跳变(触点的 输入信号由1到0),让能流接通一个扫描周期。对于正跳变指令 ,一旦发现有正跳变发生(由0到1),该栈顶值被置为1,否则 置0。对于负跳变指令,一旦发现有负跳变发生(由1到0),该 栈顶值被置为1,否则置0。 2. 取反指令(NOT)将它左边电路的逻辑运算结果取反,运算 结果为1,则变为0,为0则变为1。 3. 空操作指令(NOP)不影响程序的执行。
新值同时写到物理输出点和对 应的输出映像寄存器中 bit: Q N的取值范围为 :1~128
RI bit,N
=I bit
说明: “I”表示立即,当指令执行时,新值会同时被写到物理输出点和对 应的输出过程映象寄存器。这一点不同于非立即指令,只把新值写入 过程映像寄存器。
② 立即触点指令 语句表 LDI bit AI bit 功能 常开立即触点与左侧母线相连接 常开立即触点与其他程序段相串联 梯形图 操作数
特殊存储区的简单应用
案例1.
当报警信号I0.0接通时,报警指示灯Q0.1闪烁
例3扩展
特殊存储区,具有闪烁功 能
案例2.
在自动控制系统中,按下启动按钮I0.1,启动指示灯Q0.0输出,为了防止操 作员误动作,因此停止时需两个按钮I0.3及I0.2都按下,系统才能停止,启动 灯灭。
案例3.
水位低报警信号I0.1,故障指示灯Q0.1在有检测到故障时保持闪烁 直到按下复位按钮I0.2,指示灯灭。

西门子S7-200指令

西门子S7-200指令

表S7-200系列的基本逻辑指令
表4-20 四则运算指令
S7-200PLC逻辑运算指令
逻辑运算指令如表4-21所示。

表4-21 逻辑运算指令
S7-200PLC数据传送指令
数据传送指令如表4-22所示。

表4-22 数据传送指令
S7-200PLC移位与循环移位指令
移位与循环移位指令如表4-23所示。

表4-23 移位与循环移位指令
S7-200PLC交换和填充指令
交换和填充指令如表4-24所示。

表4-24 交换和填充指令
S7-200PLC 表操作指令
表操作指令如表4-25所示。

表4-25 表操作指令
S7-200PLC 数据转换指令
数据转换指令如表4-26所示。

表4-26 数据转换指令
S7-200PLC 特殊指令
特殊指令如表4-27所示。

PLC中一些实现特殊功能的硬件需要通过特殊指令来使用,可实现特定的复杂的控制目的,同时程序的编制非常简单。

表4-27 特殊指令。

第8章 S7-200系列PLC的功能指令

第8章 S7-200系列PLC的功能指令

1、BCD码转换成整数及整数转换成BCD码指令
2、双整数至整数、整数至双整数及双整数至实数指令
3、整数至字节及字节至整数指令
4、取整指令及截断指令
5、译码指令和编码指令
6、七段码显示指令
将字节型输入数据(IN)的低四位有效数字产生相应的七段显示码, 并将其输出到OUT指定的数据单元,直接在LED数码显示。
8.2.1 四则运算指令
2.乘法指令
当使能端EN有效时,将输入IN1、IN2中的数据有进行乘法运算, 结果存储在OUT指定的数据中。
8.2.1 四则运算指令
3.除法指令
当使能端EN有效时,将输入IN1、IN2中的数据有进行除法运算,结 果存储在OUT指定的数据中。
四则运算指令应用举例
执行图中程序,
8.1.2 移位指令
◆当使能端EN有效时,指令将输入数据(IN)向右或向左移动一定 的位数(N)。移动后的结果在输出寄存器 (OUT)中输出。 ◆移位指令属于开环移位,包括字节、字、双字等的右移或左移移位
8.1.3 循环移位指令
◆将输入数据(IN)按指定的移动位数(N)向右或向左循环移动,
结果输出到输出寄存器(OUT)中。
8.2.3 逻辑运算指令
将输入数据IN1、IN2对应位进行与(或、异或、取反)运算,结果输 出到OUT中去,指令格式说明如表8-10。
逻辑运算应用举例
想一想 练一练
设有一台5层电梯,使用PLC编写控制程序,轿厢内呼叫按 钮状态存储在IB0中,楼层上呼叫按钮状态存储在IB1,楼 层下呼叫按钮状态存储在IB2中,电梯目前停层的状态存储 在MB0中,试用逻辑运算指令编写电梯轿厢应答呼叫停层 程序。 编程思路:电梯轿厢应答呼叫停层是下面3个条件的“或”。 当IB0与MB0相与为1时; 当IB1与MB0相与为1且电梯保持上行状态时; 当IB2与MB0相与为1且电梯保持下行状态时。

西门子S7-200PLC指令系统手册

西门子S7-200PLC指令系统手册

(二)输出指令 梯形图(LAD)中,“()”表示线圈,“能 流”到线圈端,则线圈被激励,其Q寄存器的相 应位为1,反之为0; 语句表(STL)中,输出指令为“=”,把栈 顶值复制到操作数地址指定的存储器位(bit), 堆栈各级栈值不变。 (三)置位和复位指令-把从操作数(bit)指定 的地址开始的N个点都被置位或复位,其中N=1 -255
3. 修改指针:用自增或自减指令修改指针,则可 连续存取存储单元中的数据
五、用户程序的结构 用户程序可分为三个区:主程序、子程序和 中断程序; 主程序(OB1):是用户程序的主体,CPU 在每一个扫描周期都要执行一次主程序指令; 子程序:可选部分,只有主程序调用时才执 行; 中断程序:可选部分,只有当发生中断事件 时,才执行中断程序,可在扫描周期的任意点执 行。
(二)直接寻址-指令中直接给出操作数的地址 的寻址方式 例: 位寻址 AND Q5.5
字节寻址 ORB VB33 , LB21 字寻址 双字寻址 MOVW MOVD AC0 , AQW200 AC1 , VD200
(三)间接寻址-指令中给出了存放操作数地 址的存储单元的地址的寻址方式 1. 建立指针
S7-200 PLC 的SIMATIC指令集不支持完全 数据类型检查; 使用局部变量时,执行简单数据类型检查; 使用全局变量时,指令操作数为地址而不是 可选的数据类型时,执行无数据类型检查。 (二)数据长度和数值范围 数据长度:用字节型(B)、字型(W)、 双字型(D)分别表示8位、16位、32位数据; 不同的数据长度对应的数据范围如表5-4所示
在语句表(STL)中,没有EN允许输入端, 但允许执行指令的条件是栈顶的值必须为1。 功能框的ENO端是允许输出端,即允许功能 框的布尔量输出,用于指令的级联 ; 语句表(STL)中,用AENO(ANDENO)指 令产生允许输出。 (四)条件输入、无条件输入 条件输入:在梯形图(LAD)、功能块图 (FBD)中,与“能流”有关的功能框或线圈不直 接与左母线连接;

7-西门子S7-200系列PLC应用指令解析

7-西门子S7-200系列PLC应用指令解析
2018/10/14
电气控制与PLC
6
高速计数器指令
2018/10/14
电气控制与PLC
7
时钟指令
读实时时钟指令(TODR):从硬件时钟中读取当前日期,并把它装载到一个8字节、 起始地址为T的时间缓冲区。 写实时时钟指令(TODW):将当前时间和日期写入硬件时钟,当前时钟存储在以地 址T开始的8字节时间缓冲区中。时钟指令见表。 使ENO=0的错误条件:间接寻址(代码:0006)、TOD数据错误(代码:0007,只对 写实时时钟指令有效)、时钟模块不存在(代码:000C)。 时钟指令所有日期和时间值必须按照BCD码的格式编码,如图所示。 时间和日期(TOD)时钟在电源掉电或内存丢失后,初始化日期和时间为:日期01Jan-90、时间00:00:00、星期日。
LAD BGN-ITIME EN ENO OUT FBD BGN-ITIME EN ENO OUT BITIM OUT IN: ID、QD、VD、MD、SMD、SD、 LD、HC、AC、*VD、*LD、*AC OUT: ID、QD、VD、MD、SMD、SD、 LD、AC、*VD、*LD、*AC CITIM IN,OUT STL
时间间隔定时器指令
时间间隔定时器指令:触发时间间隔指令(BITIM)和计算时间间隔指令(CITIM)。 BITIM指令:读内臵的1ms计数器的当前值,并将此值存储到OUT中,双字ms值的最 大定时间隔是2的32次幂或49.7天。 CITIM指令:计算当前时间和IN提供的值之间的时间差,时间差被存储到OUT中,双 字ms值的最大定时间隔是2的32次幂或49.7天。依据BITIM指令执行的时间,CITIM自动 处理在最大间隔内发生的1ms定时器翻转。
2018/10/14
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
块传送指令 字节块传送(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)被置位。 • 字节操作是无符号的。对于字和双字操作,当使用有符号数 据类型时,符号位也被移位。
第4 章 S7-300的指令系统及编程 数据处理指令
4.3 数据处理指令 传送指令
移位指令 字节交换指令 填充指令
一、传送类指令 1. 单个传送指令 字节传送(MOV_B) 字传送(MOV_W) 双字传送(MOV_D) 实数传送(MOV_R) 指令在不改变原值的情况下将IN中的值传送到OUT。
3
10:25
字节立即传送(读和写) 指令允许在物理I/O和存储器之间立即传送一个字节数据。
字节立即读(MOV-BIR)指令读物理输入(IN),并将结 果存入内存地址(OUT),但过程映像寄存器并不刷新。
字节立即写指令(MOV-BIW)从内存地址(IN)中读取数 据,写入物理输出(OUT),同时刷新相应的过程映像区。
9
10:25
循环右移和左指令符号
10
10:25
图3-25
循环移位
图3-26
双字循环移位
3. 移位寄存器指令 指令将一个数值移入移位寄存器中。提供了一种排列和控制产 品流或者数据的简单方法。使用该指令,每个扫描周期, 整个移位寄存器移动一位。 • 移位寄存器指令把输入的DATA数值移入移位寄存器。其 中,S_BIT指定移位寄存器的最低位,N指定移位寄存器的 长度和移位方向(正向移位=N,反向移位=-N)。 • SHRB指令移出的每一位都被放入溢出标志位(SM1.1)。 • 这条指令的执行取决于最低有效位(S_BIT)和由长度 ( N)指定的位数。
相关文档
最新文档