段 波
(昆明冶金高等专科学校,昆明 650102)
远程多点温度测量在粮食仓储、食品加工、药品制造等领域有着广泛应用。RS-485是工业界使用最为广泛的双向、平衡传输线标准接口,它以半双工方式通信,支持多点连接,具有传输距离远,传输速率快等优点,便于组建成本低廉、可靠性高且分布范围较大的局域总线网络;1-Wire总线技术具有节省I/O资源、结构简单、成本低廉,便于总线扩展和方便维护等特点。这里,结合某一工程项目的实际特点,给出了采用RS-485、1-Wire总线技术实现远程多点温度采集系统解决方案。
RS-485是一个标准的串行数据通信协议,由美国电气工业联合会(EIA)制定的利用平衡双绞线作传输线的多点通讯标准。RS-485具有以下特点:
1)它采用差分信号进行传输,接收器最小灵敏度可达±200 mV。采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。
2)最大传输距离可以达到1.2 km(实际上可达3km)。RS-485协议正是针对远距离、高灵敏度、多点通讯制定的标准。
3)最大可连接128个驱动器和收发器。即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立设备网络。
4)RS-485的电气特性:逻辑“1”以两线间的电压差为+(2~6)V表示;逻辑“0”以两线间的电压差为-(2~6)V表示。与TTL电平兼容,可方便与TTL电路连接。
MAX13082E是+5.0V供电、具有±15kV ESD保护的RS-485/RS-422收发器,具有一路驱动器和一路接收器,并具有失效保护电路,当接收器输入开路或短路时接收器确保输出逻辑高电平。MAX13082E具有热插拔能力,在上电或热插入时可以消除总线上的错误跳变。MAX13082E可支持256个节点(收发器)。
1-Wire协议是美国Maxim/Dallas公司开发的一种单线总线协议。系统由一台主机和若干台从机通过一条线连接而成。主机由此完成对从机的寻址、控制、数据传输甚至供电(如需主机单独供电,还应加电源线、地线,一般可用一条三芯电线)。主机一般由微控制器(MCU)组成,从机由1-Wire器件构成,每个1-Wire器件内嵌唯一的地址码,以实现主机对不同从机的寻址。主机可通过各种方式联入计算机系统。
DS18B20是Dallas公司生产的1-Wire数字温度传感器,它具有微型化、低功耗、高性能、抗干扰能力强、易配处理器等优点,特别适用于构成多点温度测控系统,可直接将温度转化成串行数字信号(提供9位二进制数字)给MCU处理,且在同一总线上可以挂接多个传感器芯片。它具有3引脚TO-92小体积封装形式,温度测量范围为-55~+125℃,可编程为9~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,其工作电源即可在远端引入,也可采用寄生电源方式产生,多个DS18B20可以并联到三根或两根线上,MCU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。
系统由一台主控计算机、门径和多个分布位置不同的下位机(AT89S52)组成,如图1所示。
图1 系统总体结构图
下位机通过数字温度传感器DS18B20完成各个测温点的温度参数采集,下位机和每个DS18B20通过1-Wire总线连接,每台下位机所连接的DS18B20数量可根据实际需要进行选择。
门径(AT89S52)是主控计算机和下位机之间进行信息交换的桥梁,门径和分布在不同位置的下位机通过RS-485总线构成主-从式结构。门径通过RS-485总线获取下位机采集到的温度信息,然后将温度信息通过RS-232传送到主控计算机。
主控计算机将门径传送来的温度信息进行处理(存储、统计、报表及显示)。
温度采集单元包括下位机AT89S52、RS-485接口电路、1-Wire数字温度传感器接口电路。
3.1.1 RS-485接口电路
系统中,门径和下位机之间的通信接口芯片选择的是Maxim公司的MAX13082E,由于MAX13082E可支持256个节点(收发器),且MAX13082E具有热插拔、±15kV ESD保护及失效保护特性,使得系统在通信接口电路设计上变得简洁,且便于扩展。当RS-485总线的传输距离超过一定的长度时,总线的抗干扰能力就会出现下降,在这种情况下,就要在总线的首尾两端接120欧姆的终端匹配电阻,以保证总线的稳定性。门径和下位机之间的通信接口电路原理图如图2所示。
图2 门径和下位机通信接口原理图
3.1.2 1-Wire数字温度传感器接口电路
在传统的温度测量系统设计中,往往采用模拟技术进行设计,这样就不可避免地遇到诸如引线误差补偿、多点测量中的切换误差和信号调理电路的误差等问题,而其中某一环节处理不当,就可能造成整个系统性能的下降。本方案中,温度测量元件选择的是1-Wire数字温度传感器DSl8B20,采用外部供电方式。每台下位机通过口线P1.0和3个DSl8B20的数据输入/输出引脚DQ连接,接口电路如图3所示。
图3 数字温度传感器DSl8B20接口电路
门径作为主控计算机和下位机之间进行信息交换的桥梁,它主控计算机之间的通信接口芯片选择的是Maxim公司的MAX232,接口电路如图4所示。
图4 门径和主控计算机通信接口电路
系统软件设计主要包括主控计算机组态、下位机的温度采集以及和门径之间的通信、门径和主控计算机、下位机的通信。
主控计算机的存储、统计、报警、报表及显示等功能由组态软件ForceControl 6.0实现。
组态软件是用来完成数据采集与过程控制的专用软件,它以计算机为基本工具,为实施数据采集、过程监控、生产控制提供了基础平台和开发环境。组态软件功能强大、使用方便,其预设置的各种软件模块可以非常容易地实现和完成监控层的各项功能,并可向控制层和管理层提供软、硬件的全部接口,使用组态软件可以方便、快速地进行系统集成、构造不同需求数据采集与监控系统。主控计算机的组态工作主要有创建工程界面、数据库、 定义I/O设备及I/O数据连接、动画连接、编写动作脚本、建立报表等组态工作。
下位机以及门径和主控计算机下位机的通信程序采用C语言编写。其中下位机的主程序实现温度传感器网络的自动搜索、编号排序、获取温度信息;中断服务程序实现和门径的通信功能。下位机的温度采集与处理流程如图5所示。
图5 下位机温度采集与处理流程图
在传统的温度测量系统中,往往采用模拟的温度传感器进行设计,必须经过A/D转换后才可以被微处理器识别和处理。这样的设计方法不仅对前端模拟信号处理电路提出了更高的要求,而且不具有数字通信和网络功能。本方案采用RS-485总线技术建构的远程数据传输系统,解决了主控计算机与下位机之间的分布式数据传输问题;而1-Wire总线技术及选择数字温度传感器DSl8B20则简化了系统结构,较好地解决了多点温度采集问题。方案具有安装方便、数字化程度高、适应性强等特点,在多种温度检测中具有广阔的应用前景。
[1] 郭天祥.新概念51单片机C语言教程[M].北京:电子工业出版社,2009.
[2] 1-Wire File Structure .http://china.maxim-ic.com/appnotes10.cfm/.
[3] MAX13082E技术资料. http://china.maxim-ic.com/quick_view2.cfm/.