
介绍
目前,工业控制现场大量使用智能仪表进行生产过程检测。将智能仪器检测到的数据传输到监控计算机进行显示和分析,是一个非常必要的环节。虽然智能仪器的通信协议有很多种,但很多智能仪器都有两种通信接口类型:RS-232和RS-485。
RS-232是1969年发布的通信协议,由美国EIA(电子印古什协会)和贝尔等公司共同开发。它也是工业控制中应用最广泛的串行接口。它采用非平衡传输方式,即所谓的单端通信,但其传输距离短,最大30m左右,传输速率低,最大速率20kb/s,共模抑制能力差,抗噪声干扰能力弱。
RS-485是EIA在1983年提出的串行数据接口标准,弥补了RS-232通信距离短、传输速度低等缺点。RS-485采用差分传输方式,也叫平衡传输,具有比较高的噪声抑制能力,最大传输距离约1200m,最大传输速率10Mb/s,还增加了多点和双向通信能力,所以RS-485
工业计算机一般只有RS-232串行接口,智能仪表与监控计算机的距离往往在30m以上。因此,将智能仪表检测到的数据传输到监控计算机RS-485是首选,也就是说要将监控计算机的RS-232串口转换成RS-485串口,与智能仪表构建RS-485网络。
UT-201是深圳宇泰公司生产的RS-232转RS-485通用接口转换器。该转换器兼容RS-232、RS-485标准,可将单端RS232信号转换为平衡差分RS485信号。
基于水厂水泵机组温度自动检测系统的设计,主要介绍监控计算机通过UT-201接口转换器与现场智能仪表连接RS-485网络的实现方法。
1、系统联网方案
泵站中对泵机组进行保护的重要措施之一是对泵机组的温度进行实时监测。一般采用嵌入式铂电阻和嵌入式铜电阻作为传感器,检测水泵机组的电机和水泵轴承的温度,并将检测到的信号送到现场智能仪表,仪表将信号转换成相应的温度值,显示在LED屏上。随着自动化水平的不断提高,需要在监控计算机上显示温度值。利用UT-201接口转换器在监控计算机和现场智能仪表之间建立RS-485网络,监控计算机可以通过RS-485网络读取现场智能仪表的温度值。设备层的网络结构如图1所示。
图1设备层拓扑示意图
该系统采用简单的主从总线结构,监控计算机作为主机发起通信,多个现场智能仪表作为从机。每个从机在发送前必须等待主机的许可信号。通信链中的主机可以向从机发送和接收信息,而从机始终处于被动状态,随时准备响应主机相应的通信请求。
本系统采用一点对多点/双线半双工通信方式。UT-201接口转换器与智能仪表的硬件接线图如图2所示。
图2 RS-485点对多点/双线半双工连接示意图。
2、UT-201变频器介绍
UT-201转换器采用DB-9/DB-9通用适配器插头,其输出接口配有普通端子。其引脚分布如下表1和表2所示:
表1 RS-232端子的引脚分配
表2 RS-485终端的引脚分配
表1显示了UT-201转换器和监控计算机之间的RS-232接口。因为不使用监控计算机的传输控制信号,所以只需要三条接口线,即发送数据,正在接收数据和信号地。在表2中,T/R和T/R- r
连接发送/接收-的另一方,并将T/R(发送/接收)连接到另一方 A和T/R-(发送/接收-)给另一方 B-当连接RS-485半双工模式时。
3、网络通信协议介绍
监控计算机和智能仪表之间通过UT-201建立RS-485网络。硬件为RS-485接线,主从半双工通信,主呼叫从地址,从应答。通信协议遵循MODBUS协议。由于与现场智能仪表通信,选择了MODBUS通信协议的RTU(远程终端设备)模式。数据帧有10位,1个起始位,8个数据位,1个停止位,无校验。波特率:9600;19200;38400。
MODBUS协议中有二十多种功能代码。我们使用的智能仪器是XMD5000通用输入多通道巡检仪,只需要使用03H、06H、83H、86H等MODBUS协议的几个功能码就可以实现基础数据的传输。
比如主机要读取1号表第一通道(寄存器地址0010)的瞬时值(假设130),只需要调用功能码03H即可。请求和从机响应的帧格式如下:
主机发送:
第1字节ARD:从地址码(=001 ~ 254)
字节03H:读取寄存器值功能代码
字节3、4:要读取的寄存器的起始地址
字节5、6:要读取的寄存器数量
字节7、8:字节1至6的CRC16校验和
从机器发回:
浮点数:43020000表示整数130(符合IEEE-754标准的单精度浮点数)
第1字节ARD:从地址码(=001 ~ 254)
字节03H:返回读取的功能码
第3个字节:总字节数
字节4 ~ 7:寄存器数据
字节8、9:字节1至7的CRC16校验和
当从机接收到错误时,从机发送回:
第1字节ARD:从地址码(=001 ~ 254)
字节2 83H:读取寄存器值时出错
第3字节信息代码:可查阅信息代码表。
字节4、5:字节1至3的CRC16校验和
UT-201接口转换器遵循MODBUS通信协议,帧格式及其执行的功能都有明确的定义,不能随意更改。在通信过程中,要确保主从的对应关系是正确的。此外,用户可以根据实际需要配置合适的传输波特率。
4、用VB(Visual Basic)开发通信程序
许多水厂泵站的监控组态软件都是基于美国Rockwell公司开发的RSView32软件。RSView32软件支持VB编程,在此基础上开发通讯应用相当方便实用。
在开发VB通讯应用程序时,调用MSComm控件使程序更加简洁有效。MSComm控件是微软公司为简化Windows下的串行通信编程而提供的ActiveX控件,为应用程序通过串行接口发送和接收数据提供了一种简单的方法。该程序主要由以下几部分组成:
初始化MSComm控件主要设置串口,包括波特率、奇偶校验位、数据位和停止位。
并发送读取指令,主要是根据MODBUS通信协议设置要读取的智能仪表和寄存器的地址,并计算CRC16校验和。
接收数据主要是读取智能仪表发回的响应帧。
数据处理主要是判断响应帧数据的有效性,如果正确就访问数据,否则重新读取。
根据UT-201变频器与智能仪表的通信原理,绘制了如图3所示的主机通信程序的结构框图。
图3通信程序框图。
结束语
现场调试后,监控计算机通过UT-201接口转换器接入由10台智能仪表组成的RS-485网络,每台智能仪表连接2个嵌入式铂热电阻和3个嵌入式铜电阻。实际应用证明,这种方式构成的系统结构简单,使用方便,能够满足控制要求。









