当前位置:文档之家› 西门子S7-200PLC指令系统手册及应用

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

系统区:存放有关PLC配置结构的参数, 存储器为:EEPROM;
数据区:是S7-200 CPU 提供的存储器的特定区 域,将数据存储区作了进一步的分区,并为每个存储 区域赋予了不同的功能,形成专用的存储单元。 包括:I、Q、V、M、S、SM、L、T、C、AI、AQ、 AC、HC;存储器为:EEPROM和RAM。 (一)数据区存储器的地址表示格式 1. 位地址格式 由存储器区域标识符、字节地址及位号构成 例如:V5.4
VB(0-5119)
储器 作中的中间结果或 (2)V[数据长度][起始字 VW(0-5118)
(V)
其他数据,即全局 节地址]
有效
例:VB20 VW100 VD2
VD(0-5116)
(1)L[字节地址].[位地
局部存 存放局部变量,是 址] 例: L0.0
储器 局部有效的,即只 (2) L[数据长度][起始
(L) 能在某一程序分区 字节地址]
中使用
例: LB3 LW44 LD55
L(0.0-63.7) LB(0-63) LW(0-62) LD(0-60)
用于顺序控制(或 (1)S[字节地址].[位地
顺序控 步进控制);顺序 址] 例: S1.2
制继电 控制继电器指令 器存储 (SCR)是基于顺 器(S) 序功能图(SFC)
的“电路”,不允许“短路”、“开路”,也不允许 “能流”反向流动;
功能图(FBD)中,输入总在框图的左边, 输出总在框图的右边。
(三)允许输入端、允许输出端 功能框的EN端是允许输入端,只有EN端存
在“能流”时,才执行该功能框图的相应功能;
在语句表(STL)中,没有EN允许输入端, 但允许执行指令的条件是栈顶的值必须为1。
传递参数或返回参 数
例:AC0
AC(0-3)
存储器 功能
HC用来累计高速 高速计 脉冲信号,HC的 数器 当前寄存器为32 (HC) 位,则读取高速计
数器当前值应以双 字(32位)来寻址
地址格式
有效地址范 围
HC[高速计数器号]
例:HC1
HC(0-5)
四、寻址方式 S7-200 PLC 的寻址方式有:立即寻址、直
(1) I[字节地址].[位地 I(0.0-15.7)
输入映 存放输入点的状
址] 例:I0.1
IB(0-15)
像寄存 态,每一个输入端 (2) I[数据长度][起始字 IW(0-14)
器(I) 子与I的相应位相
节地址]
对应
例:IB4 IW6 ID10
ID(0-12)
存放CPU执行程序 (1)Q[字节地址].[位地址] Q(0.0-15.7)
时,才执行中断程序,可在扫描周期的任意点执 行。
(六)编程的一般规约 (一)网络
在梯形图(LAD)中,程序被分成称为网络 的一些程序段,而每一个网络由一个或多个梯级 组成;
功能块图(FBD)中,使用网络概念给程序 分段;
语句表(STL)中,使用“NETWORK”关键 词对程序分段。
(二)梯形图(LAD)/功能块图(FBD) 梯形图(LAD)中,一个梯级是一个完整
接寻址、间接寻址 (一)立即寻址
指令中直接给出操作数,即操作数紧跟在操 作码后面,在取出指令的同时也取出了操作数;
立即寻址常用来提供常数,设置初始值等; 指令中常数表示形式:十进制、十六进制、 ASCII码或浮点数
(二)直接寻址-指令中直接给出操作数的地址 的寻址方式 例: 位寻址 AND Q5.5
功能框的ENO端是允许输出端,即允许功能 框的布尔量输出,用于指令的级联 ;
语句表(STL)中,用AENO(ANDENO)指 令产生允许输出。
(四)条件输入、无条件输入 条件输入:在梯形图(LAD)、功能块图
(FBD)中,与“能流”有关的功能框或线圈不直 接与左母线连接;
无条件输入:在梯形图(LAD)、功能块图 (FBD)中,与“能流”源自关的线圈或功能框直接 与左母线连接。
例如:LBL、NEXT、SCR、SCRE等
(五)无允许输出端的指令 无允许输出端(ENO)的指令方框,不能用
于级联,例如:CALL SBR_N(N1,…)子程序调 用指令和LBL、SCR等。
第二节 S7-200 PLC 的基本指令及编程方法 一、基本逻辑指令
基本逻辑指令以位逻辑操作为主,操作数的 有效区域为:I、Q、M、SM、T、C、V、S、 L,且数据类型是BOOL (一)标准触点指令 梯形图(LAD)中
(二)功能块图(FBD) FBD 类似于普通逻辑功能图,一般用一种
功能方框表示一种特定的功能,框内的符号表 示该方框图的功能。 (三)语句表(STL)
STL是用助记符来表达PLC的各种控制功 能,类似于计算机的汇编语言。 二、数据类型 (一)基本数据类型及数据类型检查
1. 基本数据类型 1位布尔型(BOOL)、8位字节型
三、逻辑堆栈指令-只用于语句表(STL)中 其中栈装载与(ALD)、栈装载或(OLD)
指令用于两个或两个以上的触点组的串联或并 联编程,指令无操作数,属于压入/弹出堆栈的 操作指令;
逻辑推入栈(LPS)、逻辑读栈(LRD)、 逻辑弹出栈(LPP),用于一个触点(或一个触 点组)同时控制两个或两个以上线圈的编程。
数、减计数、增减 计数
T[定时器号] 例:T24
C[计数器号] 例:C3
T(0-255) C(0-255)
存储器 功能
地址格式
有效地址范围
模拟量 外部输入的模拟信 AIW[起始字节地址]
输入映 号通过模拟输入模 例: AIW4
像寄存 器
(AI)
块转换成1个字长 的数字量存放在模 拟量输入映像寄存
注:AI的地址必须用偶 数字节地址来表示
使用局部变量时,执行简单数据类型检查; 使用全局变量时,指令操作数为地址而不是 可选的数据类型时,执行无数据类型检查。 (二)数据长度和数值范围 数据长度:用字节型(B)、字型(W)、 双字型(D)分别表示8位、16位、32位数据; 不同的数据长度对应的数据范围如表5-4所示
注意:操作数的数据类型应该和指令标识 符相匹配。 三、存储器区域 PLC的存储器分为:程序区、系统区、数据区 程序区:存放用户程序, 存储器为: EEPROM
STL中,常开立即触点编程由LDI、AI、OI指 令描述,常闭立即触点由LDNI、ANI、ONI指 令描述。
(二)立即输出指令-操作数地址指定的物理输出 点的位(bit)值等于“能流”; 在STL中,堆栈操作时,栈顶值被同时复制 到物理输出点和相应的Q寄存器中,而不受扫描 过程的影响;
(三)立即置位和立即复位(N位)指令
字节寻址 ORB VB33 , LB21 字寻址 MOVW AC0 , AQW200 双字寻址 MOVD AC1 , VD200 (三)间接寻址-指令中给出了存放操作数地 址的存储单元的地址的寻址方式 1. 建立指针
指针中存放存储器的某个地址,则以指针中 内容值为地址就可进行间接寻址;
注:只能使用V、L、AC1、AC2、AC3作为 指针,AC0不能用作间接寻址的指针 例: MOVD &VB200 , AC1 2. 使用指针来存取数据 使用指针可存取字节、字、双字型的数据 例: MOVW *AC1 , AC0
3. 修改指针:用自增或自减指令修改指针,则可 连续存取存储单元中的数据
五、用户程序的结构 用户程序可分为三个区:主程序、子程序和
中断程序; 主程序(OB1):是用户程序的主体,CPU
在每一个扫描周期都要执行一次主程序指令; 子程序:可选部分,只有主程序调用时才执
行; 中断程序:可选部分,只有当发生中断事件
语句表(STL)中,输出指令为“=”,把栈 顶值复制到操作数地址指定的存储器位(bit), 堆栈各级栈值不变。
(三)置位和复位指令-把从操作数(bit)指定 的地址开始的N个点都被置位或复位,其中N=1 -255
在LAD和FBD中,只要“能流”到,就执行 置位并保持或复位并保持,置位后即使“能流” 断,仍保持置位,复位后即使“能流”断,仍保持 复位;
AIW(0-62)
器(AI)中
模拟量 CPU运算的相关结 AQW[起始字节地址]
输出映 果是驱动外部模拟 例:AQW4
像寄存 器
量控制的设备时, 则此结果存放在模
注:AQ的地址必须用 偶数字节地址来表示
(AQ) 拟量输出映像寄存
器(AQ)中
AQW(0-62)
累加器 暂时存放计算中间
(AC)
值,也可向子程序 AC[累加器号]
输出映 运行的结果,且输
例:Q1.1
QB(0-15)
像寄存 出模块每一个的端 器(Q)子与Q的相应位相
对应
(2)Q [数据长度][起始字 节地址]
例:QB5 QW8 QD2
QW(0-14) QD(0-12)
也称为内部线圈, (1)M[字节地址].[位地 M(0.0-31.7)
内部标 模拟继电器控制系 址] 例:M26.7
在STL中,当栈顶值为“1” 时,才执行置位指令 S bit , N 或复位指令 R bit ,N;
置位后即使栈顶值为“0”,仍保持置位,执行 复位指令后即使栈顶值为“0”,仍保持复位。
二、立即I/O指令 (一)立即触点指令
执行该指令时,直接读取物理输入点的值, I寄存器的内容不更新,指令操作数仅限于输入 物理点的值;
功能块图(FBD)中
语句表(STL)中 LD(load)指令,表示一个逻辑梯级编程的开 始; A(And)指令:表示触点的串联编程; O(Or)指令:表示触点的并联编程; LDN、AN、ON指令则是分别表示对常闭触点的
(二)输出指令 梯形图(LAD)中,“()”表示线圈,“能
流”到线圈端,则线圈被激励,其Q寄存器的相 应位为1,反之为0;
相关主题