AB PLC梯形图下的MOVE指令来看AB PLC编程的一些特点
说明:
AB PLC很早以前接触过,不过没有认真去了解过,这段有时间就来细看一番,发现它和西门子的PLC编程方法和理念还是很不一样,虽然我也用过美国GE的plc,但是还是和这个AB的很不一样,因此AB的PLC有必要仔细的学习一下,故有此随笔。
正文:
Rockwell Allen-Bradley也就是罗克韦尔AB PLC的英文名称,后边我都说AB PLC了。目前AB plc的软件版本非常多,我主要使用RsLogix 5000和Studio 5000这2个软件(需要说明的是这是两个不同的软件,可能你搜索软件的时候都是叫RS5000,但是下载下来却发现是Studio5000),因此后续的文章也都主要是这个2个软件环境下的讲解。
今天本文先来讲一个简单的MOVE指令,让朋友们感受一下,AB PLC和西门子PLC有多大的区别。
MOVE指令的区别
这个图片的上边部分是STEP7软件中西门子300项目中的一个MOVE传送指令,实现把MW20中的值传送给DB1.DBW20中。而下边的这个是AB PLC软件中的MOVE传送指令,这个指令中的source是源,来源的意思;而这个dest不是桌子的是意思,是destination目标,目的地的意思,所就是把来源的数据传送到目标数据中的一个传送MOVE指令。
Move指令不就是把一个数据传送到另外一个数据么?为何AB PLC中的Move指令右侧有四处问号呢?
其实,帮助文件中也没有解释的太清楚,不过我可以测试,请看下图:
AB PLC move指令
这个图片是我把3个图片整合在一起了,图中①是离线时候的原始程序,所以②③图片的左右两侧的母线是绿色的粗线,而①处则没有,因为是在离线状态。
①和②的程序是一样的,是都没有执行时候的程序状态,可以看到TP1下的箭头处是20,TP2下的箭头处是0,TP3下的箭头处是45。而当我把两个MOVE指令前边的常开接点让其接通的时候,可以看到③处Local:2:Data.0两侧的横线变为了绿色表示该接点接通了,而此时TP2和TP3下方箭头的数值都变成了20。---这样的程序接通前后的变化,就可以说明箭头所指的数据,可以理解为是你定义的初始值,比如TP1和下边的20,就相当于TP1的初始值定义为20,TP2的初始值定义为0,TP3的初始值定义为45,经过MOVE指令的传送后TP2和TP3中的值都变为了source中的值。
箭头所指的值是初始值,那TP1是由何而来呢?是我创建的一个标签名字或者说一个变量名字!
示例图片1
AB PLC中的变量系统设置应该说和很多PLC的变量系统设置不一样,因此在使用很多指令的时候都需要建立一个标签。这里先说一示例图片1中Dset处的35为何我放置了一个错误的x号,因为Dset处是只能放标签tag的是不能放立即数的,在程序编译的时候会报错!
再来看一下下方的AAA,就是我要创建的一个标签名字,是随意取的。在没有定义这个AAA之前,我只是在这里写了个AAA,那么下方的??处,将无法写入数值,必须对AAA有个明确的定义,让系统知道你是创建了这个AAA的tag才行,见下图:
创建Tag
该图右上角的Creat就是创建的意思,即使你的一切设置都是按照这个默认设置去设置,也要进入这个画面点击一个这个Creat,这样才算告知系统已经创建了一个叫AAA的变量,进而上边图片中下方赋予初始值那里才能写入数值!
再开看一下之前程序运行时,创建的标签在监控中的情况:
TP2标签的值
这个图片可以看到TP2标签的值是20,TP2是一个DINT类型的变量,所以它是32位的,可以看到有32个位,TP2.4和TP2.2这两个位的值都是1,也说明了TP2中的32个位,数据排列的方法是T2.0是最低位,TP2.31是最高位。
MOVE指令大概就说到这里了,我想朋友们应该已经能看到,还是和西门子PLC有很多不一样的地方。感谢阅读,如果有问题欢迎留言和批评指正,谢谢!
AB PLC指令集
一、位指令
1.检查是否闭合指令(XIC)
XIC属输入指令,若相应位地址中是1(ON),则表示该指令的逻辑为真(true). 它类似于常开开关,如果位地址使用了输入映象表的位,则其状态必须与相应地址实际输入设备的状态相一致.XIC的指令形式如右图. 在该指令中,若发现数据表中Local:1:I.Date.0是ON状态(数据为1),则指令为真. Local:1:I.Date.0与本地机架1号槽的数据第0位对应,若输入电路为真,则指令为真.
2.检查是否断开指令(XIO)
XIO属输入指令,若相应位地址的数据是1(ON),则表示该指令的逻辑为假(false),否则该指令的逻辑为真(true ),它类似于一常闭开关.XIO 的形式如右图. 在该指令中,若发现数据表中Local:1:I.Date.0是OFF(数据为0)则指令为真. Local:1:I.Date.0与本地机架1号槽的数据第0位对应,若输入电路为假则指令为真.
3.输出激励指令(OTE)
OTE属输出指令,用于控制存贮器中的位.若该位对应输出模块上的一个端子,则当该指令使能时,连接到该端子上的设备被接通,反之,设备不动作.若OTE指令前面的阶梯条件为真,则处理器使能OTE指令.
一条OTE指令如同一个继电器的线圈.OTE指令由它前面的输入指令控制,而继电器的线圈由硬触点控制.OTE的形式如右图.
在该指令中,若阶梯条件为真,则该指令使处理器把输出映象表中的Local:2:O.Date.0置为ON状态(数值为1);若阶梯条件为假,则置为OFF状态(数值为0).地址Local:2:O.Date.0与本地机架2槽的数据第0位对应
4.输出锁存指令(OTL)
OTL属输出指令,并且是保持型指令,也就是说,当阶梯条件是真时,OTL指令使处理器置位某一地址位,然后该位保持置位.此后即使阶梯条件变假,该位依然保持置位;若要复位,则需要在另一阶梯中使用解锁指令OUT对同一地址的位解锁.OTL的形式如下图.在该指令中,若阶梯条件为真,则使处理器把输出映象表中的Local:2:O.Date.0置位,直至用OUT对其解锁.
相关问答
plc上a+和b+什么意思?
1.在plc(可编程逻辑控制器)中,a+和b+是两种常见的电路连接方式,用于输入/输出(io)模块或执行器的连接。2.a+(也称为a相正)通常是指plc中的一个输入端...1...
plc网线接a还是b?
都可以,在早些年网线之所以要分568A和568B是因为有些设备需要用到,比如老式的交换机在连接console口时,需要用A类型的,不然通讯连接不上。现在随着技术的发展...
...种不是PLC的输出形式()A.继电器输出B.晶体管输出C.晶_作业帮
[最佳回答]1、下列哪种不是PLC的输出形式(D.MOSFET输出)2、动断点与母线连接的指令是(B.LDI)步进顺控程序一般从(A.S0)开始执行。4、FX系列PLC中PLF,...
手摇轮(手动脉冲发生器)AB相输出,如何与台达PLC通讯?需要哪些指令?
将手摇轮(手动脉冲发生器)的AB相输出接到台达PLC的输入X0,X1上,然后调用2相高速计数器C232就可以了.当然还要注意电平的问题.将手摇轮(手动脉冲发生器)的AB相...
abplc复位方法?
ABPLC有两种复位方法。1,根据官方使用手册的官方标准,ABPLC的复位方法使用inputcode,当inputcode符合复位条件时,复位信号就会被发送给PLC。2,在实际应用...
西门子plcs7-200CPU224XP自带的2个模拟量输入a+b+有什么区别?都要电压?还是电流输入?
A+和B+是和M对应的两个模拟量输入,可以输入0~5,0~10V的电压信号,另外MIV是一个输出信号,只能接其中一种输出,I是电流输出,V是电压输出。所以说CPU224XP...
A-B、GE等PLC这类产品主要应用于什么行业?
根据我的了解,现在市场上主流的欧美品牌PLC,主要是西门子,施耐德,AB,GE,行业的使用习惯(相对)大概是冶金行业-西门子,发电行业-GE,施耐德,煤炭行业...根据我...
西门子两百plcAC/Dc/rly分别代表什么意思?
第一个DC,表示直流电源(24VDC),若是AC,则表示交流电源(220VAC);第二个DC,表示直流输入(24VDC);第三个DC,表示直流输出(24VDC,晶体管),若是RLY,则表示......
三菱PLC的ASC指令怎么用?
ASC指令ASC(ABCDEFGH)D100;指令功能就是把计算机输入的输入的8个字母,转换成对应的ASCII码保存在D100---D103中,顺序为A保存在D100低字节,B保...A...
plc五种编程语言?
plc编程语言如下1、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言。它是与继电器线路类似的一种编程语言。由于电气设计人员对继电器控制较为熟...