6ES7312-5BF04-0AB0现货供应
1 引言
可编程控制器(PLC)以其运行可靠、易学易用、抗干扰性强等特点,在工业控制中得到广泛应用。然而较多的应用只是根据工艺编制相应的梯形图,用以代替传统的继电器电器控制线路,功能非常有限。近年来各种型号的PLC 在功能上已经有了极大的提高,允许用户做许多底层操作,几乎可以象单片机一样灵活,加上有众多的外围设备可以选用,这就给软件、硬件设计带来了很大的灵活性和先进性。本文通过三菱FX2N-PLC 在一条电镀自动线上的应用,说明如何充分开发PLC 的先进功能,达到行车动作的灵活设定、动态修改的功能,
以及断电恢复、通讯、新型人机界面的应用。
2 系统简介
系统采用集散控制,参见图1,上位机使用工控微机,负责工艺调度、质量管理等宏观控制;下位机使用三菱FX2N-PLC,控制行车的动作。行车吊勾(提升电镀工件用)的垂直定位采用接近开关,水平定位采用旋转编码器,垂直和水平的运动都使用变频控制普通交流异步电机来驱动,控制面板使用三菱的F940GOT 触摸屏人机界面。
3 PLC 的应用
3.1 动作表
行车动作无非就是上下左右受控移动,按照指定的顺序(即动作表)完成一系列的动作。要求有几套动作表可以选择,动作可以静态修改,也可以在运行时由上位机动态修改。这种要求若是仅用简单的梯形图是无法实现的,因为动作都是由梯形图中的触点指令实现,而梯形图指令在运行时是不能修改的。现在的FX2N-PLC 增加了许多应用指令(底层操作,相当于微机的汇编指令),以及提供了许多可供用户使用的数据存储单元,并且有间接寻址功能,这就使表结构操作成为可能。在这里,我们把行车的一个动作定义为:“到几号工位上升,再到几号工位下降”,或者是“延时几秒”,每个动作由一个字(16 位)组成,每个动作表由若干个动作字组成,放在PLC 的数据寄存器里,动作表由PLC 程序初始化,也可以在运行时通过串行通讯由上位机读取和修改,PLC 程序在运行时只是不断地解释和执行动作表。
3.2 动作的解释和执行
动作字有3 种:行车动作字、延时动作字、结束标志。
(1) 行车动作字:
动作字的高字节表示“上升所到的工位号”, 低字节表示“下降所到的工位号”,例如:“0205”表示让行车开到02 号工位,上升,再开到05 号工位,下降。
由于一个行车动作字表示的是宏动作,由:“前进或后退,水平到位,上升,上到位,再前进或后退,水平到位,下降,下到位,完成”几个微动作组成,通过FX2N-PLC 的步进阶梯指令STL 实现非常合适。我们可以把行车的宏动作分解为几个状态,在到位时进行状态
转移。参见图2 的STL 状态转移图。
垂直到位比较简单,用上下到位接近开关直接控制即可。
水平到位稍微复杂一些。在程序初始化时将每个工位的准确位置送到数据寄存器里,称做工位位置表,每个工位的实际位置数据通过实测得到。动作表、工位位置表、行车水平运动的关系请参见图3。运行时通过旋转编码器得到行车的当前位置,每毫米大约发3 个脉冲。在做水平动作时,先取出动作字,分离高低字节,得到目标工位号,将此工位号作为工位位置表的偏移量,用间接寻址方法得到目标工位位置,若当前位置大于目标位置则令行车后退,反之则前进,直到行车到目标位置前一个提前量时,令行车转为慢速;当行车到目标位置前另一个提前量时,令行车制动。这二个提前量都根据实际情况加以调整,慢速提前量通常为半个工位间隔,制动提前量根据实际的行车速度、惯性而定。经过调整,*终定位精度可以达到±1mm 左右。
图4 是行车水平处理子程序,在二个水平进退STL 状态中先设置好目标工位,再调用该子程序,行车就会前进或后退,直到目标位置停下来,发出完成标志M86,即可转入下一STL状态。
图4 水平处理子程序
(2) 延时动作字:
延时动作字的高字节用7EH 作为标识,低字节为延时值,如“7E30”。延时动作比较简单,取出动作字,分析一下若是延时动作,将延时值送延时定时器就可以了。以前的PLC 定时器常数在梯形图中设定,运行时不能改变,FX2N-PLC 定时器允许将数据存储器的内容作为定时值,才使在运行时改变定时常数成为可能。
(3) 结束标志:
每个动作表用7FFFH 作为结束标志,执行到结束标志表示一圈做完。若是单圈模式的话就
进入停止状态,若是连续模式的话就让动作表指针重新指向表首,继续运行。
3.3 自动校正
由于旋转编码器指示的是行车的相对位置,因此在运行前应该校正一下行车的**位置。我们采取在水平方向上安装一个校正用接近开关的方法,让行车在开始运行前先朝某方向去找校正接近开关,若在3 秒钟内未碰到校正接近开关,或碰到了极限开关,就让行车朝另一方向去找。只要碰到校正接近开关,就把旋转编码器计数器置为某一个确切值,行车的位置就校正了。在以后的运行中,行车每次经过该校正接近开关,行车位置都会被再次校正,这样可以消除积累误差。
3.4 断电恢复
以前一般的电镀自动线控制系统往往没有断电恢复功能,在电镀生产线工作中如果遇到突然断电,往往结果很尴尬。即使很快又来电了,但由于看不出是在哪一步停下来的,只能从头来过,造成已经在镀的工件报废。利用PLC 的失电保存功能,我们这个系统具有断电记忆,来电恢复的功能。为实现该功能,应该整理一下所用到的寄存单元,分为要记忆和不要记忆的二部分。象STL 状态、运行模式、运行状态等都是要记忆的,而用作动作表指针的变址寄存器V、Z 无失电保存,需要用其他有失电保存的寄存器作为映象后备。一般的临时单元都不需要失电保存,每次RUN 的时候都初始化这些单元。此外还应注意的是,尽管来电后可以继续刚才的工作,但来电后自动运行起来也是有危险的。本系统是这样处理的:当RUN的时候检查一下,若原先是在运行状态下断电,则令系统处于暂停状态,等待操作者通过操
作面板按下“运行”键后才继续工作。如果断电时正在做水平运动,则因PLC 已经失电,而行车的由于惯性仍有运动,造成PLC 记忆的行车位置和实际位置不符,在重新运行时应该自动校正。
3.5 通讯
FX2N-PLC 提供了比较良好的通讯机制,只要在主机上扩展一块RS232 通讯模块(FX2N-232BD)即可。FX2N-PLC 的应用指令中有完善的串行通讯指令,可以方便地使用。
在本系统中,上位机主动发送通讯串,PLC 接收到通讯串,根据通讯串中的命令号,作出相应的动作,参见图5。上位机可以让PLC 返回或修改当前的工作状态、返回或修改动作表中的动作字等,只要编制相应的软件,上位机就可以监视、控制自动线的运行。
4 控制面板
常规的控制面板由按钮、拨盘、开关、指示灯、数码管组成,我们这次使用了三菱公司的F940GOT 人机界面,它是一个带触摸屏的彩色液晶显示器,可以自由布置各种显示、控制器件,如按钮、键盘、开关、指示灯、文字、数码管、图片、进度条等,取代了所有的常规
面板元件。这不仅大大节省了PLC 可贵的输入输出点,而且具有外观新颖、信息量大、使用方便、修改灵活等特点。在应用中还可以使用多屏画面,把各种显示、控制要求按功能分成多个画面,相当于多个小控制面板,再用一个封面画面负责切换。
图6 是本系统控制面板中的主控画面,具有运行模式(单步、单圈、连续)的设定和显示;运行状态(运行、暂停、停止)的设定和显示;工艺(动作表)选择;行车动作的显示;手动控制;当前行车位置的数字和图形显示;定位误差的显示;动作步的显示和修改;当前动作字的显示;动作表的查询显示等。
5 结束语
由于该电镀自动线充分开发了FX2N-PLC 的多种先进功能,并采用了较多的先进控制手段及新型的控制器件,使整个系统具有较优良的性能。经过一年多的实际运行,证明该系统是成功的。由此我们看到,由于PLC 具有许多优异的性能,并且功能也日益强大,只要深入
理解这些PLC 的原理,加强二次开发,就可以在更多的领域发挥PLC 的作用。
可编程控制器(Programmable Controller,简称PC)是一种数字运算操作的电子设备。它使用了可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作指令,通过数字或模拟输入/输出组件控制各种类型的机械或生产过程。PC具有功能齐全、应用灵活、操作维修容易方便和稳定可靠等特点,因此广泛用于工业现场控制。其典型应用方案是:采用PC作为下位机实现过程的自动控制,以微机为上位机,完成工业流程和工艺参数的显示以及控制参数的修改等功能。但是在一些危险和恶劣环境下,需要用微机远程控制PC系统的运行和停止。本文结合作者所开发的危险环境下控制系统,以三菱A2A 可编程控制器为例介绍VB远程控制三菱A系列可编程控制器的运行,并给出系统实现方法与示例程序。
2. 系统设置与协议
为进行系统控制需进行硬件和软件设置,这部分内容是系统实现的关键。系统利用RS232通讯接口线将PC(利用AJ71UC24通讯模块,25针)与微机的串行通信口(COM1,9针)进行连接。
2.1AJ71UC24的通信控制协议
PC的通讯模式(mode)开关设置为1。以下是Melsec-A PC 格式1通信协议的格式:
AJ71UC24的通讯参数设置均通过其DIP开关设置,本例的参数设置如下:波特率:9600,数据位:8,停止位:1,有求和效验,可以进行在线写。DIP开关设置如下表:
开关 | 设置 | 开关 | 设置 | 开关 | 设置 | 开关 | 设置 | 开关 | 设置 | 开关 | 设置 |
SW11 | OFF | SW12 | ON | SW13 | ON | SW14 | OFF | SW15 | ON | SW16 | ON |
SW17 | OFF | SW18 | OFF | SW21 | ON | SW22 | ON | SW23 | ON | SW24 | OFF |
2.3 PC的运行开关设置
若实现利用VB程序进行PC控制,必须将PC的运行开关设置在ON的位置。运行开关设置与对应的控制结果如下表:
VB通过MSCOMM控件控制串行口,该控件屏蔽了通讯过程中的底层操作程序,用户只需设置和监视控件的属性和事件,就可很方便地实现串行异步通讯,它有事件驱动通信和查询通信两种方式,通过检查InBufferCount属性值来判断输入缓冲区中是否接受到相应数目的字符,为实现所述通信,应在窗体中加入一个通讯控件MSComm,控件的参数设置要与上述PC通讯模块AJ71UC24的设置相同。控制命令的传输采用即时传送方法。
3. 软件编程与实现
监控微机主要供系统管理人员对PC进行系统运行的控制。下面主要列出微机对PC进行控制有关的程序。本例是以单个PC为例,PC站号为00H,PC号为FFH。:
该功能的实现必须将PC运行开关扳到RUN位置。通过在bbbb中加入两个option按钮实现:第一选项为启动,命令为"RR";第二选项为停止,命令为"RS"。