9
西门子S7-200编程语言的基本单位是语句,而语句的构成是指令,每条指令有两部分:一部分是操作码,另一部分是操作数。操作码指出这条指令的功能是什么,操作数则指明操作码所需要的数据所在。所谓寻址,就是寻找操作数的过程。
S7-200 CPU
的寻址分为三种:立即寻址、直接寻址和间接寻址。
1)立即寻址
在一条指令中,如果操作码后面的操作数就是操作码所需要的具体数据,这种指令的寻址方式就叫立即寻址。
例如,在传送指令MOV IN OUT中,操作码“MOV”指出该指令的功能是把IN中的数据传送到OUT中,其中IN为源操作数,OUT为目标操作数。
若该指令为MOVD 2505 VD500,则其功能为:将十进制数2505传送到VD500中,这里2505就是源操作数。因这个操作数的数值已经在指令中,不用再去寻找,这个操作数即为立即数。这个寻址方式就是立即寻址方式。而目标操作数的数值在指令中并未给出,只给出了要传送到的地址VD500,这个操作数的寻址方式就是直接寻址。
2)直接寻址
在一条指令中,如果操作码后面的操作数是以操作数所在地址的形式出现的,这种指令的寻址方式就叫直接寻址。
例如:MOVD VD400 VD500
功能:将VD400中的双字数据传给VD500。
3)间接寻址
在一条指令中,如果操作码后面的操作数是以操作数所在地址的地址形式出现的,这种指令的寻址方式就叫间接寻址。
例如:MOVD 2505 *VD500
*VD500是指存放2505地址的地址。
若VD500中存放的是VDO,则VDO是存放2505的地址。
该指令的功能:将十进制数2505传送给VDO地址中。
软元件是plc内部具有一定功能的器件,这些器件由电子电路和寄存器及存储器单元等组成,主要包括以下器件。
1)输入继电器(I)
输入继电器一般有一个PLC的输入端子与之对应,它用于接收外部开关信号。外部的开关信号闭合,则输入继电器的线圈得电,在程序中其常开触点闭合,常闭触点断开。
2)输出继电器(Q)
输出继电器一般有一个PLC的输出端子与之对应。当通过程序使输出继电器线圈得电时,PLC上的输出端开关闭合,它可以作为控制外部负载的开关信号,同时在程序中其常开触点闭合,常闭触点断开。
3)通用辅助继电器(M)
通用辅助继电器的作用和继电器控制系统中的中间继电器相同,它在PLC中没有输入/输出端子与之对应,因此它的触点不能驱动外部负载。
4)特殊继电器(SM)
有些辅助继电器具有特殊功能或用来存储系统的状态变量、控制参数和信息,我们称其为特殊继电器。
5)变量存储器(V)
变量存储器用来存储变量。它可以存放程序执行过程中控制逻辑操作的中间结果,也可以使用变量存储器来保存与工序或任务相关的其他数据。
6)局部变量存储器(L)
局部变量存储器用来存放局部变量。局部变量与变量存储器所存储的全局变量十分相似,主要区别在于全局变量是全局有效的,而局部变量是局部有效的。
7)顺序控制继电器(S)
有些PLC中也把顺序控制继电器称为状态器。顺序控制继电器用在顺序控制或步进控制中。
8)定时器
定时器是PLC中重要的编程元件,是累计时间增量的内部器件。
9)计数器(C)
计数器用来累计输入脉冲的个数,经常用来对产品进行计数或进行特定功能的编程。
10)模拟量输入映像寄存器(AI)、模拟量输出映像寄存器(AQ)
模拟量输入电路用以实现模拟量/数字量( A/D)之间的转换,而模拟量输出电路用以实现数字量/模拟量( D/A)之间的转换。
11)高速计数器(HC)
一般计数器的计数频率受扫描周期的影响,不能太高,而高速计数器可累计比CPU的扫描速度更快的事件。
功能块图用来描述功能、功能块和程序的行为特征,还可以在顺序功能流程图中描述步、动作和转变的行为特征。功能块图与电子线路图中的信号流图非常相似,在程序中,它可看做两个过程元素之间的信息流。功能块图普遍地应用在过程控制领域。
功能块用矩形块来表示,每个功能块的左侧都有不少于一个的输入端,在右侧有不少于一个的输出端。功能块的类型名称通常写在块内,但功能块实例的名称通常写在块的上部,功能块的输入、输**称写在块内输入、输出点的相应地方。
1)功能块图的信号流
在功能块网络中,信号通常是从一个功能或功能块的输出传递到另一个功能或功能块的输入。信号经由功能块左端流入,并求值更新,在功能块右端流出。
布尔信号的取反:在使用布尔信号时,功能或功能块的取反输入或输出可以在输入端或输出端用一个小圆点来表示,这种表示与在输入端或输出端加一个“取反”功能是一致的。
信号反馈:功能块图允许功能块的输出反馈回网络左侧的功能块输入,形成反馈路径。
2)功能块网络设计
功能块图的设计首先应该**主信号流的线路清晰,避免过多的信号跨接和线路方向改变。
3)功能的执行控制
功能块图网络中的功能执行控制隐含地从各功能所处的位置中表现出来。每一功能的执行隐含地由一个输入使能EN控制,该输入EN是一个布尔类型变量,允许功能有选择地求值。当输入EN为TRUE时,该功能就执行,否则功能不执行。功能的输出ENO也是…个布尔变量,当ENO从FALSE变成TRUE时表明功能已经完成了求值。
4)跳转和标注
功能块图允许使用“Jump”功能使功能块图控制从程序的一个部分跳转到另一个由标识符“Lable”标识的部分继续执行。