湘潭西门子PLC一级代理商
西门子PLC常用功能指令介绍
有了基本指令系统,加上定时器和计数器可以对开关量主导的继电控制进行编程设计了。但在解决复杂的逻辑控制设计时,仅用几个基本指令会感到力不从心,程序设计非常复杂。而功能指令的出现使程序设计变得相对简单方便,也将应用范围从开关量扩充到模拟量、运动量、通信等方面。本书是基础编程入门书籍,为扩大初学者对编程的学习,仅引入常用的两个功能指令传送指令 MOV 和比较指令 CMP。结合这两个指令和触点比较指令,就使程序编制变得简便,应用范围也得到扩充。同时,初学者通过对这两个指令的学习和应用,为今后进一步学习功能指令打下了基础。
1. 传送指令MOV
1)指令格式
MOV S D 16位连续执行型
MOVP S D 16位脉冲执行型
DMOV S D 32位连续执行型
DMOVP S D 32位脉冲执行型
2)可用软元件
可用软元件如表3.4-5所示。
表3.4-5 MOV指令可用软元件
操作数内容与取值见表3.4-6.
表3.4-6 MOV指令操作数内容与取值
3)梯形图表示
指令梯形图如图3.4-8所示。
图3.4-8 MOV指令梯形图
4)指令功能与应用
● 指令功能
MOV 指令的操作功能当驱动条件成立时,将源址 S 中的二进制数复制到(统称传送)终址 D 中。操作完毕,源址 S 中的数保持不变,而终址 D 中的数变为和源址 S 相同的数。
● 指令应用
传送指令 MOV 是功能指令中应用多的基本功能指令,其实质是一个对字元件进行读写操作的指令。应用组合位元件也可以对位元件进行复位和置位操作,现举例给予说明。
【例3.4-4】 解读指令MOV D10 D0执行功能。
执行功能是将D10的值复制到D0中去,即(D0)=(D10),且(D10)不变。说明在PLC书籍中,习惯将D10表示为寄存器,而(D10)则表示寄存器 D10 存储的二进制数。
这个指令有三层含义。对D0来说,是把D10的值复制到D0中,即对D0写入一个数。同时可以认为是把D10的数读到D0中去,通过D0就可知道D10是多少,所以,传送指令MOV实质上是一个对存储器进行读和写操作的指令。
如果源址是一个数,例 MOV K25 D0,则就是一个写操作,但指令 MOV D10 K25是不存在的。
在程序中,D0可多次写入,存新除旧,以后一次写入为准。【例3.4-5】 解读指令MOV K2 K2Y0执行功能。
执行功能是将K2用二进制数表示,并以其二进制位值控制组合位元件Y0~Y7的状态,如图3.4-9所示。
图3.4-9 例3.4-5梯形图
这是利用传送指令对位元件进行复位和置位操作的实例。如果希望得到相应的输出,则其对应的二进制数不同即可。例如,希望Y0,Y3,Y5 置1,其余皆置0,则二进制数为00101001=K41。
【例3.4-6】 解读指令MOV K2X0 K2Y0执行功能。
执行功能是输入口的状态控制输出口的状态。如输入口X接通(ON),则相应输出口Y 有输出(ON),反之亦然。如用基本逻辑指令编制,程序要写成8行,由此可见,合适的功能指令可以代替烦琐的基本逻辑指令程序编制。
【例3.4-7】 解读指令MOV D2 K4M10执行功能。
和【例3.4-5】类似,执行功能是D2所存的二进制数的位值控制M10~M25的状态。显然控制比【例3.4-5】灵活,如欲改变输出位元件M10~M25的状态,只需改变D2值即可。在程序中,利用寄存器D存新除旧的性质,常常把D作为变量寄存器用,改变D的数值,就相当于改变控制值。
【例3.4-8】 解读指令MOVP C1 D20执行功能。
指令中,C1为计数器C1的当前值,当驱动条件成立时,把计数器C1的当前值马上存入 D20。注意,该指令为脉冲执行型,执行功能是在驱动条件成立的扫描周期内仅执行一次把计数器的当前值马上传送到 D20 中存储起来,而且驱动条件每 ON/OFF 一次,执行-次。如果使用连续执行型传送指令 MOV,则驱动条件成立期间,每个扫描周期均会执行次,这样C1的当前值是变化的。根据不同的控制要求,使用不同的指令,在应用时必须加以注意。如果是32位计数器C200~C235,则必须用32位指令DMOV或DMOVP。
与计数器C类似的应用还有定时器T。
【例3.4-9】 解读指令MOVP K0 D10执行功能。
把K0送到D10,即(D10)=0。利用MOV指令可以对位元件或字元件进行复位和清零,其功能与RST指令相。但是不同的是,RST指令在对定时器和计数器进行复位时,其相应的常开、常闭触点也同时回归复位状态,而 MOV 指令仅能对定时或计数的当前值复位,不能使其相应的触点复位,即相应触点仍然保持执行指令前的状态。
【例3.4-10】通过驱动条件的 ON/OFF,可以对定时器设定两个值。当设定值是2个以上的时候,则需要使用多个驱动条件ON/OFF,程序梯形图如图3.4-10所示。
图3.4-10 例3.4-10梯形图
【例3.4-11】 图3.4-11为一输出Y0,Y2,Y4,Y6和Y1,Y3,Y5,Y7轮流闪烁2s 的梯形图程序。程序中,把H55传送给Y0~Y7,即010101对应于Y0,Y2,Y4,Y4,Y6,而HAA传送给Y0~Y7时,为10101010对应于Y1,Y3,Y5,Y5,Y7。如果不采用传送指令,程序中要编制8个输出。
图3.4-11 例3.4-11梯形图
浔之漫智控技术(上海)有限公司专注于西门子等