理论教育 介绍欧姆龙PLCDM、EM区及其访问方法

介绍欧姆龙PLCDM、EM区及其访问方法

时间:2023-07-01 理论教育 版权反馈
【摘要】:DM,数据存储区的简称,是PLC基本的存储介质。欧姆龙DM区按字使用,以字编址。除了DM、有的品牌PLC还有扩充数据存储区。早期欧姆龙公司PLC DM区不大,用BCD码指针足以访问整个DM区。而今,有的PLC DM区可大到32K,只得用二进制码指针。如欧姆龙的CS1机及CJ1机即有此寄存器。

介绍欧姆龙PLCDM、EM区及其访问方法

DM,数据存储区的简称,是PLC基本的存储介质。它容量大,又为掉电保持的,故可用以大量,而又长久的保留所存储的数据。

欧姆龙DM区按字使用,以字编址。在CJ1机之前,不能对字中的位进行处理。

除了DM、有的品牌PLC还有扩充数据存储区(EM)。另外,其他内部器件也可用以存储数据。有的也可或也是掉电保持的。只是这些器件的容量要小些。

有了DM区或其他存储器件,程序如要直接访问它,指明地址就可以了。只是直接访问不够灵活,效率也不高。要能灵活地访问,不用很多指令就能频繁地访问,就得用间接访问。间接地址访问大体有4个方法。

1.使用指针访问

欧姆龙DM区可用指针实现这个间接寻址。指针是C语言常用的编程技法,正确使用指针可提高的程序效率。但使用前一定要控制好指针。失控的指针,也就是间接地址不存在的或不希望出现的指针称野指针。使用这样的指针是危险的。

图5-3所示为使用指针传送数据的程序。

从图5-4可知,使用指针访问,先总是指针赋值,再才是数据赋值。数据赋值时,把指定的数据传送给指针指向(指针的值)的地址。

早期欧姆龙公司PLC DM区不大,用BCD码指针(4位最大为9999)足以访问整个DM区。而今,有的PLC DM区可大到32K,只得用二进制码指针。16位二进制码指针最大可为66735,足以访问所有的地址了。

978-7-111-39745-8-Chapter06-4.jpg

图5-4 用指针传数

图5-4所示程序,在两种指针的赋值与使用上是有区别的。用BCD码指针的那两条指令,是把即时数88赋给DM90。用二进制码指针的那两条指令,是把即时数88赋给DM91(十六进制码5B,即91)。

2.使用指令作偏移传送

欧姆龙有两个指令:DIST(080)及COLL(081)。也可作与使用指针类似地访问DM,甚或访问其他内存区。可用它作偏移传送。其功能与上述指针类似,而且不仅可处理DM区,还可处理其他数据区。

DIST(080)指令的梯形图格式如图5-5a所示,COLL(081)指令的梯形图格式如图5-5b所示。

图5-5a中,S为原数据字;Bs为目标字基址;Of为目标字偏址。(www.daowen.com)

图5-5b中,Bs为原数据字基址;Of为原数据字偏址;D为目标字地址。

978-7-111-39745-8-Chapter06-5.jpg

图5-5 DIST及COLL指令格式

图5-6所示为使用这两条指令,把DM0~DM99的数据倒序传送到DM100~DM199的程序。

从图知,它有两个偏移,偏移1与偏移2,且两者一个增时,另一个则减,两者的和为99。这两个偏移就相当于两个指针。偏移1用于从不同地址取数,偏移2用于向不同地址传数。每次取、传数后,也修改偏移。这样,一次次执行这程序,将实现上述目标。

此两指令,不仅可指向DM区,也可指向任何数据区。

3.寄存器访问

高档的PLC多有变址寄存器及数据寄存器。如欧姆龙的CS1机及CJ1机即有此寄存器。变址器寻址可把间接寻址扩大到其他数据区,而且还可处理位数据。使数据的使用更加灵活。

图5-7所示为使用变址寄存器完成与图5-6功能完全相同的程序。

978-7-111-39745-8-Chapter06-6.jpg

图5-6 用偏移指令传送

978-7-111-39745-8-Chapter06-7.jpg

图5-7 用变址寄存器访问

从图5-7可知,它的取数、传数、修改指针,仅用一条MOV指令。但操作数用的是变址寄存器(指针)指向的地址。IR0为取数后修改其内容,IR1为先修改内容后传数。图中用的其他指令都是为了处理指针的。有指针初始化,当开始执行本程序或传送完成时,对指针初赋值。指针控制,用一个计数器。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈