摘 要:介绍Rockwell A-B可编程序控制器(PLC)的编程方式(梯形图、结构文本、顺序功能图等),指令系统及编程手段(编程软件及编程设备)。
关键词:可编程序控制器;指令;编程软件
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下的软件包。它提供了用户所希望的每一种功能,如完全视窗化的友好界面、灵活易用的编辑器
、点中-点击方式进入输入输出组态、强有力的数据库编辑器、诊断和排错工具和可靠的通讯等。因此RSLogix产品的编程方案适合于任何层次的开发人员。最重要的是RSLogix产品还完全兼容于以前基于MS-DOS的Rockwell编程软件所生成的程序,从而使跨平台的程序易于转换及维护。因此RSLogix系列产品更适宜于现代化的编程。在起动和运行前,对所编的程序进行测试和调试是很有必要的,RSEmulate系列仿真软件包就可以用来模拟一个或多个运行的SLC500或PLC-5处理器(RSEmulate500 仿真SLC500,RSEmulate5仿真PLC-5)。RSEmulate 系列仿真软件也是基于Microsoft Windows的软件包,它除了仿真SLC500,PLC-5之外还可以用于故障检测、梯形图扫描选项、串行设备模拟等,使用十分方便。
对于Rockwell A-B各个系列的PLC,我们可以通过不同的通讯方式,利用不同的编程设备进行编程。常见的编程设备有个人计算机(386或以上)和A-B专用的编程器。我们可以通过编程器的串口对A-B PLC进行一对一的编程,也可以利用网络对多个PLC进行编程:例如在DH+网上对PLC-5进行编程,如图3示,在DH-485网上对SLC500进行编程,如图4示等。对于SLC500或Micrologix1000,我们还可以利用手持式编程器(HHT)进行编程。

四、结束语
综上所述,A-B 公司生产的各系列PLC,由于支持多种编程语言,具有丰富及先进的指令系统,加上编程软件种类多、功能强、使用方便易学,因此很容易为广大设计者、使用者所熟悉,也很容易实现诸如高速顺序控制、运动控制及传动系统控制。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。