微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 欧姆龙PLC功能指令

欧姆龙PLC功能指令

时间:12-16 来源:互联网 点击:

CMP指令可使用的通道或常数为输入/输出继电器通道、 内部辅助继电器通道、保持继电器通道、定时器/计数器通道数据存储通道及0000~FFFF的常数。

比较后,如果S1>S2,则专用内部辅助继电器1905为ON;如果S1=S2,则专用内部辅助继电器1906为ON;如果S1图19说明了一个将定时器的当前值与一个通道的内容相比较的例子。

图19 CMP指令

10、传送指令MOV(FUN 21)和取反传送指令MVN(FUN 22)

MOV和MVN指令在梯形图中的符号如图20所示。

MOV指令将源通道S中的内容或一个4位十六进制常数传送到目的通道D中去;而MVN指令则是先将源通道S中的内容取反后(即0→1,1→0)再传送到目的通道中去。MOV及MVN指令使用的通道和常数如表3所示。

图20 MOV和MVN指令在梯形图中的符号

表3 MOV及MVN指令使用的通道和常数

执行MOV指令时,如果源通道S中的内容全为“0”,或执行MVN指令时源通道S中的内容全为“1”,则专用内部辅助继电器1906(零标志)为ON。

图21中,当0002为ON时,CPU每扫描一次程序,就执行一次MOV及MVN指令,如果希望0002每得电(ON)一次只进行一次传送,应使用DIFU或DIFD指令。

图21 MOV、MVN指令

应用传送指令还可以实现在程序运行时改变定时器和计数器的设定值(此时通道内容必须是4位BCD码,否则1903为ON,使MOV指令不能执行),如图22所示。

图22 用MOV指令改变定时器的设定值

图22所示是把HR1通道的内容作为定时器TIM01的设定值,当0002为ON时,TIM01的设定值为10 s,10 s后输出继电器0500变为ON。当0003为ON时,TIM01的设定值为30 s,30 s 之后0500变为ON。如果0002和0003同时为ON,TIM01不动作。

11、置进位标志指令STC(FUN 40)和清进位标志指令CLC(FUN 41)

STC和CLC指令在梯形图中的符号如图23所示。

STC指令把进位标志1904置为ON。

CLC指令把进位标志1904置为OFF。在执行ADD和SUB指令前需用CLC指令对进位标志位进行清零。

图23 STC和CLC指令在梯形图中的符号

12. 加法指令ADD(FUN 30)和减法指令SUB(FUN 31)

ADD和SUB指令在梯形图中的符号如图24所示。

图24 ADD和SUB指令在梯形图中的符号

加法指令ADD用于两个4位数的相加,即将被加数通道S1中的内容加上加数通道S2中的内容或一个常数,其结果送到和通道D。

减法指令SUB用于两个4位数的相减,即将被减数通道S1中的内容减去减数通道S2中的内容或一个常数,其结果送到差通道D。

ADD及SUB指令使用的通道和常数如表4所示。

表4 ADD及SUB指令使用的通道和常数

使用ADD及SUB指令时应注意如下问题:

(1)要求通道内容须为BCD码,否则1903变为ON,ADD及SUB指令不能执行。

(2)在执行ADD或SUB指令前,必须先用CLC指令对进(借)位标志位1904进行清零,否则进位标志位也要参加运算。

(3)ADD和SUB指令都是在条件满足时CPU每扫描程序一次就执行一次,如果要求只执行一次加、 减法操作,应使用DIFU或DIFD指令。

两个4位数相加后,其结果可能是4位或5位数,如果进位标志位(1904)为ON,则其和为5位数,可用传送指令MOV将进位标志位存放待用,如图25所示。

图25 ADD指令及进位

在执行SUB指令时,如差值为负,则D通道的内容为差值的反码。为得到差值的原码,可再执行一次用常数0000减去差值反码的减法操作,其结果仍可以送到D通道中。

在图26中,如果12通道的内容为1234,则SUB指令的执行过程见右图。

图26 MLPX和DMPX指令在梯形图中的符号

13、译码指令MLPX(FUN 76)和编码指令DMPX(FUN 77)

MLPX和DMPX指令在梯形图中的符号如图27所示。

图27 MLPX和DMPX指令在梯形图中的符号

MLPX指令的功能是将源通道S中的4位十六进制数的一位或几位进行译码,其结果送到目的通道D的对应位上去。MLPX指令可使用的通道和常数如表6-10所示。

表5 MLPX指令可使用的通道和常数

在MLPX指令中的数字目标使用一个4位数,只有低2位有效。最低位表示从源通道S的第几位数字位开始译码:0、1、2、3表示从第0、1、2、3位开始译码。次低位表示需要译码的位数:0、1、2、3分别表示要译1、2、3、4位。如数字目标为0023,则表示从源通道S的第3位开始译码,共译3位,它们分别是第3位、第0位、第1位。如果要求译码的位数多于1位,则存放译码结果的目的通道D也应多于1个,在程序中的目的通道D仅为存放第一个译码结果的通道号,其它位的译码结果依次存放到通道D+1,D+2,…中。在MLPX指令中,由数字目标指定的源通道和目的通道的对应关系见图28。

图28 MLPX指令中源通道和目的通道的对应关系

图28中,如果10通道中的内容为18A5,其执行过程如图29所示。

图29 MLPX指令 

图30MLPX指令

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top