发表于:2008-02-03 21:35:00
楼主
[color=#0000FF]Rockwell A-B的PLC由于支持多种编程方式,具有丰富的编程指令,加上各系列的PLC都有相应的编程软件,调试仿真软件,因此在自动化领域中已越来越受到广泛的应用。
一、编程方式
所有的A-B PLC(Micrologix1000, SLC500, PLC-5和Controllogix)都支持梯形图的编程方式,而大多数PLC-5系列处理器(增强型以上系列)还支持结构文本及顺序功能图两种编程方式。
1、梯形图
梯形图是一种最典型,也是最基本的编程方式,它采用图形语言,沿用了继电器的触点、线圈、串并联等术语和图形符号,并增加了一些继电接触控制没有的符号。梯形图形象、直观,对于熟悉继电器表示方式的人来说,非常容易接受,而不需要学习更深的计算机知识。这是一种最为广泛的编程方式,适用于顺序逻辑控制、离散量控制、定时/计数控制等操作。
梯形图一般由多个不同的阶梯组成,每一个阶梯又可以由一个或几个输入指令及一个输出指令组成。输出指令应出现在阶梯的最右边,而输入指令则出现在输出指令的左边,如图1所示。
2、结构文本
结构文本类似于BASIC编程,利用它可以很方便地建立、编辑和实现复杂的算法,特别在数据处理、计算存储、决策判断、优化算法等涉及描述多种数据类型的变量应用中非常有效。对于PLC-5处理器结构文本可以支持以下结构。
赋值:赋一个整数或浮点数值给一个数据单元
非保持型位赋值:赋一个二进制数给一个位单元,当处理器工作模式从编程方式到运行方式时或当顺序功能图(SFC)的步被扫描后,这些位被清零。
保持型位赋值:赋一个二进制数给一个位单元,当处理器工作模式从编程方式到运行方式时或SFC的步被扫描后,这些位并不被清零。
IF-THEN-ELSE:有条件的执行一段程序
FOR-NEXT:重复执行一段程序
WHILE:只要输入表达式为真就重复执行一段程序
REPEAT:重复执行一段程序直至某输入表达式为真
EXIT:在处理器到达正常结束条件之前退出循环结构(REPEAT,FOR 或WHILE)
CASE:根据一个数学表达式或操作数据的值有条件地执行一段程序
;;:相当于一个无操作指令NOP
梯形图功能:可调用任一梯形图程序或指令。
下面是一段利用结构文本的编程例子:
IF (T4:0.DN) THEN
TON(T4:0,0.01,100,0)
ELSE RES(T4:0)
END-IF
3、顺序功能图SFC
SFC是一种顺序控制语言,用这种语言可以对一个控制过程进行控制,并显示该过程的状态。对于用户的应用,可将逻辑分成易于处理的步和转换来替代较长的梯形图或结构文本。SFC中的每一步对应于一个控制任务(实际上是一段为了完成某一个控制任务的程序,该程序可以是梯形图、结构文本、SFC的任一形式),用方框表示,步与步之间有转换条件(也是一段程序),通过对该条件的检测来决定处理器什么时候可始执行下一步,转换条件用水平线表示。通过显示这些步和转换条件,你可在任何时刻看到一个机器过程的状态。简单的SFC程序例子,如图2示。
二、指令系统
A-B PLC具有丰富的指令系统(约有110多条指令),虽然不同系列的PLC所能支持的指令的种类有所区别,但一些基本指令却是大家共用的,下面主要介绍PLC-5系列可编程序控制器的指令类型。
1、继电器指令
继电器指令用于监控数据表中的位状态,如输入位或者计时器控制字的位,继电器型指令包括:
检查通(XIC);检查断(XIO);
输出激励(OTE);输出锁存(OTL);
输出解锁(OTU);立即输入(IIN);
立即输出(IOT)。
2、计时器/计数器指令
计时器和计数器指令用于控制基于时间和事件计数的操作,包括:
通延时计时器(TON);断延时计时器(TOF);
保持型计时器(RTO);加计数(CTU);
减计数(CTD);计时器/计数器复位(RES)。
3、比较指令
比较指令用于比较表达式或指定比较指令的值,它包括:
比较(CMP);等于(EQU);
大于等于(GEQ);大于(GRT);
小于等于(LEQ);小于(LES);
极限测试(LIM);屏蔽相等比较(MEQ);
不等于(NEQ)。
4、计算指令
计算指令用于计算表达式或用指定的算术指令进行算术运算,它包括:
计算(CPT);乘法(MUL);
取反(NEG);正弦(SIN);
平方根(SQR);排序(SRT);
减法(SUB); 正切(TAN);
反正弦(ASN);反余弦(ACS);
对数(LOG);自然对数(LN);
除法(DIV);余弦(COS);
清零(CLR);平均值(AVE);
反正切(ATN);加法(ADD);
标准差(STD);X的Y次幂(XPY)。
5、逻辑指令
逻辑指令用于逻辑操作,包括:
与操作(AND);非操作(NOT);
或操作(OR);异或操作(XOR)。
6、转换指令
转换指令用于整数与BCD之间的相互转换及度与弧度之间的相互转换,包括:
整数转换成BCD码(TOD);
从BCD码转换成整数(FRD);
弧度转换成度(DEG);
度转换成弧度(RAD)。
7、位处理和传送指令
位处理和传送指令用于位调整和位传送,包括:
位分配(BTD);字传送(MOV);
屏蔽传送(MVM)。
8、文件指令
文件指令用于文件数据的运算和文件数据的比较,包括:
文件算术和逻辑指令(FAL);
文件检索和比较指令(FSC);
文件拷贝(COP);
文件填入(FLL)。
9、移位指令
移位指令用于模拟部件和信息的运动或流动,包括:
位左移(BSL);位右移(BSR);
先入先出装入(FFL);先入先出卸出(FFU)
后入先出装入(LFL);后入先出卸出(LFU)。
10、程序控制指令
程序控制指令可以改变梯形图程序执行的方向,包括:
跳转(JMP);禁止用户中断(UID);
恒假指令(AFI);标号(LBL);
允许用户中断(UIE);暂时结束(TND);
中止(BRK);循环(FOR,NXT);
SFC复位(SFR);子程序(SBR);
跳转到子程序(JSR);返回(RET);
主控复位(MCR);转换的结束(EOT)。
11、I/O信息指令
用于信息的传送,包括对本地或远程I/O框架上的块传送模块进行读写,以及处理器之间的信息传送。
块传送写(BTW);块传送读(BTR);
信息指令(MSG)。
另外还有用于控制具有连续性和重复操作特性的自动流水线上的顺序器指令(如顺序器输入SQI,顺序器输出SQO,顺序器装入SQL),用于过程控制的PID指令;用于检测用户程序的诊断指令,以及ASCⅡ指令等。大量的指令使用户在开发程序中,可以选取合适的指令,从而大大节省开发时间。
三、编程软件及编程设备
Rockwell A-B各个系列的PLC都具有相应的编程软件及仿真软件。表1给出了目前广泛使用的各系列PLC相应的一些编程软件。
表1 PLC的编程软件
PLC系列 PLC-5 SLC-500或Micrologix100
编程软件 PLC-5 A.I.系列 SLC500 A.I.系列
RSLogix5 RSLogix500
仿真软件 RSEmulute5 RSEmulate500
其中A.I.系列的编程软件是基于MS-DOS的软件包,可以对相应的A-B PLC各系列处理器实现离线和在线开发、文档和报表功能,由于A.I软件使用菜单和功能键等特点,因此初学者易于使用,其强大的编辑和诊断工具又会为梯形图开发和故障检测节省大量的时间。帮助系统则可以帮助用户熟悉软件的特点,并提供PLC指令集的详细信息。
RSLogix5 及RSLogix500是一个基于Microsoft 32 位,在Windows95或Windows NT下的软件包。它提供了用户所希望的每一种功能,如完全视窗化的友好界面、灵活易用的编辑器、点中-点击方式进