时间:2022-10-15 02:14:10
摘要:本课题设计的是一套计算机控制的温度、湿度实时监测与报警系统,可应用于多种需要采集温湿度数据的场合,系统采用单总线传感器网络和 RS485 传输网络的设计思想。其中温度、湿度传感器都以智能终端的形式挂接到单总线上,多条单总线汇总到一起,由一台数据采集器集中控制,每台数据采集器负责一定区域内的温湿度监测。数据采集器的核心部件为单片机,主要完成对其所连接传感器件的测量与控制以及与主机的通信等功能。系统中为主机与各采集器之间的数据通信制定了完备的通信协议,采用主机调度工作形式,CRC 技术校验数据,以保证通信的可靠性。用 Delphi 开发了具有温湿度数据显示、告警、历史数据和曲线显示与打印等功能的主机用户管理软件。
关键词:单总线 单片机 数据采集 Delphi
1 系统的总体设计
1.1系统功能
1)一台主机可最多管理 32 台数据采集器;
2)一台数据采集器可管理 32 个测试点,这样一般系统总的测试点个数可达 32×32=1024 个;
3)各温湿度测试点与其所属采集器的最远距离不超过 150 米;
4)Delphi7 编写主机用户监测软件,全图形界面;
5)可随时查询、以表格形式打印历史数据;
6)可对每一个测试点设定单独的报警限值;
1.2系统主要技术指标
1)温度测量:
(1)测量范围:-55℃ ~+125 ℃;
(2)测量精度:±0.5℃(-10℃ ~+85 ℃);
±2.0℃(-55℃ ~+125 ℃);
(3)分辨率:0.1℃;
2)湿度测量:
(1)测量范围:1%~99%RH;
(2)测量精度:±5%RH(25℃);
(3)分辨率:1%RH;
1.3系统的总体结构
整个监测系统从结构上分为三层:第一层是由工控机等组成的用户监测层作为上位机;第二层是由单片机 AT89C52 构成温湿度采集器作为下位机;最底层是由 DS18B20 构成的温度传感器结点和 DS2438 与 HIH3610 构成的湿度传感器结点。
1.4系统的工作原理
系统中每台采集器都有一个唯一且固定的地址编码。作为主机的工控机以命令的方式对下层的采集器统一管理。上位机把采集到的温度值与湿度值通过应用程序管理界面显示给用户,用户可通过该界面设置每一个测试点的报警上限和下限。当采集回来的温湿度值超过其对应测试点的报警上下限时,系统给出报警信号。
1.5温度、湿度监测与报警系统的组成
该系统的构成大体上可以分为三部分:一是温湿度参数的测量转换,二是测量数据的传输,三是数据的集中显示与处理。
2温度、湿度传感器与单总线
2.1温度传感器 DS18B20
系统中温度测试点的数据采集由 DALLAS半导体公司生产的DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器。它具有体积小,接口方便,传输距离远等特点。
2.2湿度传感器 HIH3610
湿度传感器 HIH3610的管脚的外部结构使得其应用起来非常方便。其线性的电压输出可使器件直接与控制器或其它器件相连,驱动电流小使它适合于电池供电。
2.3单总线系统
单总线适用于单个主机(master)控制一个或多个从机(slave)设备的系统。本数据采集系统即为单总线系统,系统中的主机为单片机,从机为单总线器件。
3AT89C52单片机
主要性能参数:
·与MCS-51产品指令和引脚完全兼容
·8k字节可重擦写Flash闪速存储器
·1000次擦写周期
·全静态操作:0Hz——24MHz
·三级加密程序存储器
·2568字节内部RAM
·32个可编程I/O口线
·3个16位定时/计数器
·8个中断源
·可编程串行UART通道
·低功耗空闲和掉电模式
4温湿度数据采集器与 RS232/RS485 转换器
4.1数据采集器的结构
本系统中,温湿度数据采集器主要完成以下一系列的工作:接收上位机通过 RS485总线下传的命令,所有的命令都需要采集器返回应答信号,以表明采集器的工作状态。采集器把上位机下传的命令通过单总线下传给温、湿度传感器,然后通过单总线接收传感器的温、湿度数据。
4.2数据采集器的软件设计
数据采集器中主单片机 AT89C52的系统资源分配如下:
定时器/计数器 1:工作在 8 位自动重装载的定时器方式,用作波特率发生器,不允许产生中断。
串行口:串行口波特率为 2.4Kbps,外部晶振 11.0592MHz,置波特率发生器初值为TH1=TL1=0F4H。
4.3RS232/RS485 转换器
本系统中实现对各数据采集器进行统一管理与处理的主机,只有两个 RS232 串行接口,即 COM1 和 COM2。
5Delphi 与用户管理软件
Delphi 的编译器采用了事件编译和选择链接技术,使生成的可执行文件冗余更少,运行起来速度更快。该管理软件主要完成两方面的任务:一方面是与各采集器的主单片机 AT89C52 进行通信,以获取各个采集器的温度、湿度测量数据;另一方面将获取的温湿度测量数据以图形化的方式显示出来,以供用户查看,并且提供异常情况报警和历史情况查询及打印功能。
6结论
系统中采用新型的单总线数字温度传感器 DS18B20,利用原有的模拟湿度传感器HIH3610 和单总线器件 DS2438 设计并实现的单总线数字湿度传感器,避免了模拟传感器带来的共地干扰和线路干扰问题。系统中采用 RS485 现场总线将各采集器采集到的温湿度数据传送回主机,并对传输数据进行 CRC-64 校验,是数据在得以远距离传输的同时,保持了较强的抗干扰性。系统采用 Delphi 设计主机用户管理软件,界面直观,操作简单,并具有历史数据、报警信息的查询与打印功能,数据库功能强大,开发周期短,效率高,与采用 VC 等编程语言进行设计相比,大大缩短了软件的开发周期。