把PLC与PLC或者PLC与计算机以及其他智能装置通过传输介连接起来,就可实现通信或组建网络,从而构成功能更强,性能更好的PLC网络控制系统。这样可以极大的提高PLC的控制范围、和控制规模,实现多个设备之间的数据共享和协调控制,提高控制系统的可靠性和灵活性,增加系统的监控和科学管理水平,便于用户的程序开发和应用[1,2]。同时,以PC机为上位机实现对各PLC的监控管理及对控制数据的处理,还提供了人机界面友好的操控平台。
1 通信系统联网结构
可编程控制器的联网结构主要指从物理上把各个节点连接起来形成网络,实现通信,构成更强大的控制系统,常用的连接结构主要有链接结构和网络结构。在通信网络中,各网络节点、各用户主机进行通信,必须遵守一套事先制定的规则协议,1979年国际标准化组织提出了一套开放式系统互联参考模型,定义了各种设备连在一起进行通信的结构框架。
组网控制系统的控制器为三菱FX2N-48MR型可编程控制器,选用RS-232C/485转换接口以及FX-485ADP通信模块组成1:8的联网控制系统,实现控制和监控数据的发送与接收,上位计算机监视PLC间的数据通信,开发程序的修改由上位机PCc机编写与下载。上位机与PLC联网通信系统结构图如图1所示。
2 通信协议及通信格式
1) 系统的通信协议
三菱FX2N-48MR PLc的传输参数和传输控制协议设置在内部寄存器D8120,寄存器参数设置可由b0设置数据长度;b1b2设置奇偶校验;b3位停止位设置;b4-b7位控制波特率的设置位;b13位为和校验位;b14位为协议位;b15位为传输控制协议设置。在该组网控制系统中通信方式采用半双工,同步方法采用起始停止位方式同步,传输速率为9600bps,起始位为1位,数据长度为7位,奇偶校验为偶校验,停止位1位,使用校验和,采用三菱公司专用协议,D8120设置为H6082。
2) 站号的设置
网络控制系统中明确各个PLC控制器的站号,用可编程控制器提供的数字来确定计算机在访问的哪个可编程控制器。在三菱FX2N-48MR型PLC中,站号由D8121寄存器来确定,可以应用指令MOVE KX D812l,其中x可从00H到0FH。在该系统中站号设定为0—7。系统采用面向字符的通信协议,数据传输以帧为单位,上位机与下位机每次只传送一帧信息,主站发出命令帧发起通信,被访问的从站PLC相应含有自己从站号的命令,从站发出一个响应帧,该从站就通知主站与哪台从站进行通信。
信息帧格式如图2所示。
ENQ计算机发出请求,ASCII码为05H:ACK PLc对计算机的提问做出确认回答,ASCII码为06H;NAK PLC对计算机的提问做出否认回答,ASCII码为15H;STX信息帧开始标志,ASCII码为02H;ETX信息帧结束标志,ASCII码03H。PC机向PLC发出的命令PLC不理解时用NAK回答。
3) PC机向PLC发送报文格式
PC机向PLC发送的报文格式如下:
其中STX为开始标志02H;ETx为结束标志03H;CMD为命令的ASCII码;SUMH,SUML为CMD到ETX按字节求累加和,溢出不计。由于每字节十六进制数变为两字节ASCII代码,故校验和SUMH与SUML。
PLC对PC机应答报文格式如下:
对读命令的应答报文数据段为要读取的数据,一个数据占两个字节,分上位下位。对写命令的应答报文无数据段,而用ACK及NAK作为应答内容。
4) 传输过程
PC机与FX2N-48MR之间采用应答方式通信,传输出错则组织重发。PLC根据PC机的命令,在每个循环扫描结束处的END语句后组织自动应答,无需用户在PLC一方编写程序。
3.通信的实现
根据PC机与FX2N-48MR PLC的传输应答过程编制出如图3所示的通信程序流程图。按照流程图可以编写出通信程序实现PC机与PLC之间的串行通信以完成数据的读取。
4 结论
本文所述PC上位机实现对下位机PLC的联网控制方案已经得到成功应用,提高了可编程控制器的控制范围和规模,增加了系统监控和智能管理水平,易于实现程序开发和利用。