PLC与上位机的通信实现-最新文档

更新时间:2024-05-14 16:21:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

PLC与上位机的通信实现

PLC作为一种高性能的控制装置,在分布式系统中得到了越来越广泛的应用。在这种控制方式中,上位监控机系统是其中重要的组成部分。PLC可以多种方式如直接采用现有的组态监控软件与上位监迭机通信,但针对小规模的控制系统,找到一种高性能价格比的通信方法,具有积极的实际意义。本文就日本三菱公司生产的FX2N可编程控制器与PC机通信方式的实现,从软、硬件两个方面来说明这个问题。 1.上位机与PLC通讯的原理

在利用外部设备与可编程控制器之间进行通讯前,必须首先规定一些参数,如数据长度,奇偶校验、停止位以及波特率等,即通讯格式。通讯格式是通过一个四位的16进制数而设定,这里设定为H6880,其含义是数据长度为7位,终结符为7位,奇偶校验为无,控制线为RS232接口,停止位为1位,和校验为自动添加,波特率为9600BPS,协议为专用协议,标题无,传输控制协议为协议格式1。通讯格式是在PLC中首先将其设置好的。其中协议格式的通讯格式依次规定了控制代码、站号、PC号、命令、消息等待以及和校验代码等。在FX系列可编程控制器中,站号是通过特殊寄存器D8121来设定的。设定范围是从00H到0FH。本实验台中由于上位机只和一个PLC气动实验台通信,所以站号为00H。PC号是A系列MELSECNET(II)或MELSECNET/B

上用来确定可编程控制器CPU的数字。FX系列的PC号为FFH,由两位ASCII字符来代表,即“FF”。命令用来指定要求的操作(如读,写),在此控制软件中所使用的向PLC发送的主要指令有:批量读出位元件BR指令;批量写入位元件BW指令;强制PLC运行(RUN)RR指令;强制PLC停止(STOP)RS指令。消息等待是一段计算机要求的延迟时间,以实现在发送和接受状态间的转换。和校验代码用来确定消息中的数据没有受到破坏。它是通过加上和校验区域中的ASCII字符的16进制值计算得到的。 上位机和PLC在遵循相同的通讯格式和通讯协议下便可以进行通讯了。其通讯的基本过程是:先由上位机控制软件向PLC发出一条指令,随即控制软件进入等待状态,准备接收PLC的回应信息,在收到反馈信息后进行解读并判断通讯是否正确;如果判定反馈信息正确,就解读其反馈信息,在获得了所需的信息以后,即完成该次通讯过程,并准备进入下一个通讯过程;反之,如果判定反馈信息不正确,则进行相应的错误处理,如向PLC重发指令等等。

2.通信装置的硬件描述

PLC与PC机之间实现通道,可使二者互补功能上的不足,PLC用于控制方面既方便又可靠,而PC机在图形显示、数据处理、打印报表以及中文显示等方面有很强的功能。因此,各PLC制造厂家纷纷开发了适用于本公司的各种型号PLC与PC机通信的接口模块。三菱公司开发的FX-232AW接口模块用于FX2N系列

PLC与计算机通信。还有与以太网连接的接口模块AJ71E71、与MAP网连接的接口模块AJ71M51-S1、与FAIS MAP网连接的接口模块AJ71M51M1等。在此介绍一种通过PC机的RS-232口与PLC进行通信的实现方法。

FX2N系列PLC的编程接口采用RS-422标准,而计算机的串行口采用RS-232标准。因此,作为实现PLC计算机通信的接口电路,必须将RS-422标准转换成RS-232标准。RS-232与RS-422标准在信号的传送、逻辑电平均不相同。

RS-232采用单端接收器和单端发送器,只用一根信号线来传送信息,并且根据该信号线上电平相对于公共的信号地电平的大小来决定逻辑的“1”(-3~-15V)和“0”(+3~+15V); RS-422标准是一种以平衡方式传输的标准,即双端发送和双端接收,根据两条传输线之间的电位差值来决定逻辑状态。RS-422电路由发送器、平衡连接电缆、电缆终端负载和接收器组成。它通过平衡发送器和差动接收器将逻辑电平和电位差之间进行转换(+2V表示“0”,-2V表示“1”)。将RS-232的RS、CS短接,这样对计算机发送数据来说,PLC总是处于就绪状态。也就是说,计算机在任何时候都可以将数据送到PLC内。 3.通信装置的软件描述

3.1 FX2N系列PLC与计算机之间通信协议。FX2N系列PLC与计算机之间的通信采用RS-232标准,其传输速率固定为9600bps,奇偶校验位采用偶校验。数据以帧为单位发送和接收。

一个多字符帧由力所示的五部分组成,其中和校验值是将命令码ETX之间的呢字符的ASCII码(十六进制数)相加,取得所得和的最低二位数。STX和ETX分别表示该字符帧的起始标起和结束标志。

3.2 通信过程。采用Bland C编写主机与PLC的通信程序。首先必须对COM1口进行初始化,波特率为9600bps,奇偶校验位采用偶校验,七位有效数据。当计算机接收到来自PLC的应答字符ACK后,就可以进入数据通信了。

计算机可对PLC内各软设备进行读、写和强制ON/OFF操作。除开PLC的计时器和计数器的设定值采用常数时,以及文件寄存器内的数据,FX2N系列PLC的所有开关量输入、输出以及各软件设备对计算机都是透明的。为了保证主机与PLC的通信准确无误,上位机也必须按通信协议进行和校验。如接收的信息有误,则重新读取。如重复3次仍不行,则显示错误信息。使用C语言很容易实现以上编程。主机还可向PLC写数据,进行单点的强近置位和复位。

本文来源:https://www.bwwdw.com/article/2nz7.html

Top