西门子模块6ES7231-7PD22-0XA8参数介绍0 引言 日本三菱公司的FX系列PLC在我国应用十分广泛,是目前上占有率较高的几种PLC机型之一。根据三菱公司提供的技术资料,在用户系统中,要实现PLC与Pc机串行通信,一般还需购买FX-232-BD通信模块;而PLC自身所带的编程口在下载完程序后处于闲置状态。因此,若能直接利用编程口实现PLC与PC机串行通信,将有利于节约资源。 PLC主要面向生产现场,具有使用方便、可靠性高和抗干扰能力强等优点。PC机直接面向用户,在数据处理、图像显示和打印报表等方面具有显著优势。将PC机与PLC以上、下位机的形式联合起来应用,可以更有效地发挥各自优势,互补应用上的不足。 LabVIEW是美国NI公司开发的一个基于计算机的虚拟仪器开发平台。强大而灵活的仪器控制功能是LsbVIEW区别于其他编程语言的主要特点,LabVIEW在数据采集、仪器控制、过程监控和自动测试等领域有着广泛的应用。1 系统硬件构成 三菱FX系列PLC自带的编程口是RS-422接口,而PC机的串行通信口则是RS-232C接口,两者之间需要通过SC-09适配电缆才能通信。不同设备上相同类型的通信接口的引脚定义可能存在差异。PC机与三菱FX系列PLC上的通信接口引脚定义如图1所示。图1 接口引脚定义 RS-422和RS-232C是两种不同标准的串行数据接口,两者的主要差别在于信号传输方式不同。RS-232C标准利用信号线与公共地线之间的电压差进行信号传输,采用的是单向传输方式;RS-422标准则是利用传输线之间信号的电压差进行传输的,采用的是差动传输方式。SC-09电缆实现了这两种不同的信号传输方式之间的转换,其内部电路如图2所示。图2 SC-09电缆内部电路2 通信协议 PC机与PLC之间有两种通信方式:一种是PC机具有优先权而PLC始终被动响应Pc机发来的命令;另一种则是PLC具有优先权,将命令发送给PC机,并接收来自PC机的响应。本文采用的是前一种通信方式。 为实现Pc机与FX系列PLC编程口之间的通信,系统采用的是编程口专用通信协议。2.1 控制字符 在PC机与FX系列PLC的串行通信中,数据是以帧为单位发送和接收的。其中,控制字符ENQ(05H)、ACK(06H)和NAK(15H)可以构成单字符帧心1,其余的字符帧在发送或接收时都必须用控制字符STX(02H)和ETX(03H)分别作为该帧的起始标志和结束标志。 各控制字符的意义如表1所示。表1 控制字符意义2.2 命令代码 PC机对PLC相应软元件的操作是通过“0”、“1”、“7”、“8”四个命令符来实现的,各命令符的含义如表2所示。表2 命令字符含义 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返回或修改当前的工作状态、返回或修改动作表中的动作字等,只要编制相应的软件,上位机就可以监视、控制自动线的运行。图54、控制面板 常规的控制面板由按钮、拨盘、开关、指示灯、数码管组成,我们这次使用了三菱公司的F940GOT人机界面,它是一个带触摸屏的彩色液晶显示器,可以自由布置各种显示、控制器件,如按钮、键盘、开关、指示灯、文字、数码管、图片、进度条等,取代了所有的常规面板元件。这不仅大大节省了PLC可贵的输入输出点,而且具有外观新颖、信息量大、使用方便、修改灵活等特点。在应用中还可以使用多屏画面,把各种显示、控制要求按功能分成多个画面,相当于多个小控制面板,再用一个封面画面负责切换。 本系统控制面板中的主控画面具有运行模式(单步、单圈、连续)的设定和显示;运行状态(运行、暂停、停止)的设定和显示;工艺(动作表)选择;行车动作的显示;手动控制;当前行车位置的数字和图形显示;定位误差的显示;动作步的显示和修改;当前动作字的显示;动作表的查询显示等。5、结束语 由于该电镀自动线充分开发了FX2N-PLC的多种先进功能,并采用了较多的先进控制手段及新型的控制器件,使整个系统具有较优良的性能。经过一年多的实际运行,证明该系统是成功的。由此我们看到,由于PLC具有许多优异的性能,并且功能也日益强大,只要深入理解这些PLC的原理,加强二次开发,就可以在更多的领域发挥PLC 的作用。1、引 言 可编程控制器(PLC)以其运行可靠、易学易用、抗干扰性强等特点,在工业控制中得到广泛应用。然而较多的应用只是根据工艺编制相应的梯形图,用以代替传统的继电器电器控制线路,功能非常有限。近年来各种型号的PLC 在功能上已经有了极大的提高,允许用户做许多底层操作,几乎可以象单片机一样灵活,加上有众多的外围设备可以选用,这就给软件、硬件设计带来了很大的灵活性和先进性。本文通过三菱FX2N-PLC 在一条电镀自动线上的应用,说明如何充分开发PLC 的先进功能,达到行车动作的灵活设定、动态修改的功能,以及断电恢复、通讯、新型人机界面的应用。2、系统简介 系统采用集散控制,参见图1,上位机使用工控微机,负责工艺调度、质量管理等宏观控制;下位机使用三菱FX2N-PLC,控制行车的动作。行车吊勾(提升电镀工件用)的垂直定位采用接近开关,水平定位采用旋转编码器,垂直和水平的运动都使用变频控制普通交流异步电机来驱动,控制面板使用三菱的F940GOT 触摸屏人机界面。图1 系统组成示意图3、PLC的应用 3.1 动作表 行车动作无非就是上下左右受控移动,按照指定的顺序(即动作表)完成一系列的动作。要求有几套动作表可以选择,动作可以静态修改,也可以在运行时由上位机动态修改。这种要求若是仅用简单的梯形图是无法实现的,因为动作都是由梯形图中的触点指令实现,而梯形图指令在运行时是不能修改的。现在的FX2N-PLC 增加了许多应用指令(底层操作,相当于微机的汇编指令),以及提供了许多可供用户使用的数据存储单元,并且有间接寻址功能,这就使表结构操作成为可能。在这里,我们把行车的一个动作定义为:“到几号工位上升,再到几号工位下降”,或者是“延时几秒”,每个动作由一个字(16 位)组成,每个动作表由若干个动作字组成,放在PLC 的数据寄存器里,动作表由PLC 程序初始化,也可以在运行时通过串行通讯由上位机读取和修改,PLC 程序在运行时只是不断地解释和执行动作表。 3.2 动作的解释和执行 动作字有3种:行车动作字、延时动作字、结束标志。 (1)行车动作字 动作字的高字节表示“上升所到的工位号”, 低字节表示“下降所到的工位号”,例如:“0205”表示让行车开到02 号工位,上升,再开到05 号工位,下降。 由于一个行车动作字表示的是宏动作,由:“前进或后退,水平到位,上升,上到位,再前进或后退,水平到位,下降,下到位,完成”几个微动作组成,通过FX2N-PLC 的步进阶梯指令STL 实现非常合适。我们可以把行车的宏动作分解为几个状态,在到位时进行状态转移。参见图2 的STL 状态转移图。垂直到位比较简单,用上下到位接近开关直接控制即可。图2 STL状态转移图 水平到位稍微复杂一些。在程序初始化时将每个工位的准确位置送到数据寄存器里,称做工位位置表,每个工位的实际位置数据通过实测得到。动作表、工位位置表、行车水平运动的关系请参见图3。运行时通过旋转编码器得到行车的当前位置,每毫米大约发3 个脉冲。在做水平动作时,先取出动作字,分离高低字节,得到目标工位号,将此工位号作为工位位置表的偏移量,用间接寻址方法得到目标工位位置,若当前位置大于目标位置则令行车后退,反之则前进,直到行车到目标位置前一个提前量时,令行车转为慢速;当行车到目标位置前另一个提前量时,令行车制动。这二个提前量都根据实际情况加以调整,慢速提前量通常为半个工位间隔,制动提前量根据实际的行车速度、惯性而定。经过调整,终定位精度可以达到±1mm 左右。图3 水平动作 图4是行车水平处理子程序,在二个水平进退STL 状态中先设置好目标工位,再调用该子程序,行车就会前进或后退,直到目标位置停下来,发出完成标志M86,即可转入下一STL状态。图4 水平处理子程序 (2)延时动作字 延时动作字的高字节用7EH作为标识,低字节为延时值,如“7E30”。延时动作比较简单,取出动作字,分析一下若是延时动作,将延时值送延时定时器就可以了。以前的PLC 定时器常数在梯形图中设定,运行时不能改变,FX2N-PLC 定时器允许将数据存储器的内容作为定时值,才使在运行时改变定时常数成为可能。 (3)结束标志 每个动作表用7FFFH作为结束标志,执行到结束标志表示一圈做完。若是单圈模式的话就进入停止状态,若是连续模式的话就让动作表指针重新指向表首,继续运行。