APP下载

STM32单片机在室内环境监测系统中的应用

2014-04-03

自动化仪表 2014年7期
关键词:温湿度湿度控制器

(华北科技学院电信学院1,北京 101601;华北科技学院资产处2,北京 101601;华北科技学院机电学院3,北京 101601)

0 引言

单总线(1-wire)通信与目前多数标准串行数据通信方式(如SPI/I2C/MicroWire)不同,它采用单根信号线,既传输时钟又传输数据,且数据是双向传输,因此节省了I/O口资源,系统结构简单、便于总线扩展和维护。单总线的测温技术在国内已经得到了广泛的应用。文献[1]对单总线协议作了详细的介绍;文献[2]对单总线的应用技巧进行了详细的描述;文献[3]利用寄生电源的方式,只采用两芯线缆,即可实现超长距离多点测温;文献[4]利用DS2438单总线智能电池监视芯片和压力传感器构成单总线传感器,并应用于实际工程中;文献[5]~[7]将单总线器件成功应用于室内温度监测和采暖系统。

通过以上单总线技术的探索,借鉴前人的研究经验,本文设计了基于DS2438[8]的单总线温湿度传感器和单总线空气污染物浓度传感器;并采用当前主流32位单片机STM32系列控制器,设计基于单总线的建筑物内空气质量数据采集控制器;最后采用工业组态软件设计上位机监控软件,实现建筑物内环境参数的监控。

1 系统设计

系统控制器采用意法半导体STM32系列的微控制器——STM32F103VBT6。这款控制器属于增强型系列,使用了高性能的ARM®CortexTM-M3 32位的RISC内核[9],工作频率为72 MHz,内置128 kB的Flash和20 kB的SRAM。其不仅包含2个12位的ADC、3个通用16位定时器和1个PWM定时器,还包含标准和先进的通信接口: 2个I2C接口和SPI接口、3个USART接口、1个USB接口和1个CAN接口,完全满足系统中采集单元控制和通信的需求。基于STM32F103VBT6微控制器的室内环境参数采集控制器的硬件设计框图如图1所示。

图1中,通过单总线温度传感器DS18B20和单总线芯片DS2438采集多点温度、湿度和二氧化碳浓度的模拟信号,并将信号转换成数字信号后,由单总线网络输入到STM32控制器。

DS2438芯片内部集成一个13位的温度传感器,具有全球唯一的ID。单总线进行数据传输时,控制器不仅可以收到传感器的数据,还可以辨识出是由哪个芯片传出的信息。信号传输率可达到110 kbit/s,在通信链路较好的情况下,最远传输距离可达到600 m以上。STM32控制系统可通过RS-232接口、CAN或者USB接口与监测计算机相连。上位机不仅能够获得现场环境的参数数据,还能够得到其相应位置。控制器将采集的数据进行处理,同时读取实时时钟,将数据和时间显示在LCD上,并按照设定的时间间隔存储在SD卡中。通过屏幕数据查询按钮,实现历史数据查询功能。

图1 采集控制器硬件框图

2 传感器电路设计

2.1 温湿度传感器设计

湿度传感器选用美国Honeywell公司生产的HIH-3610相对湿度传感器。该传感器采用热固聚酯电容式传感头,内部集成了信号处理功能电路,能够将相对湿度值变换成电容值,再将电容值转换成线性电压并输出。该传感器具有精度高、响应快速、稳定性高、温漂低、抗化学腐蚀性能强及互换性好等优点。利用DS2438内部的温度传感器实现环境温度的测量,一方面用于温度值输出,另一方面用于湿度测量时温度补偿。利用DS2438内部的电压ADC,通过多路开关切换分别得到湿度测量值和湿度测量时单总线的电压值。利用DS2438内部的EEPROM,可存储湿度传感器HIH-3610的标定技术参数(如型号、精度、5 V电压下的标定值等)。文献[10]对该湿度传感器温度补偿进行了详细的阐述,本文不再详述,直接引用温度补偿公式:

RH=(sensor%RH)/(1.054 6-0.002 16T)

(1)

式中:T为环境的实际湿度值;RH为湿度的修正值。

HIH-3610与DS2438构成的单总线湿度传感器如图2所示。

图2中, HIH-3610湿度传感元件的2引脚为电压模拟信号输出,DS2438通过输入主ADC采样引脚4采集湿度传感器输出的电压值,然后通过信号输出引脚8(DO)传送给监测装置。采集控制器通过电压输出转换函数将电压值转换成相对湿度值。DS2438自身具有温度采集功能,采集到的温度值也是通过信号输出引脚传送给控制器。

图2 单总线湿度传感器电路图

2.2 单总线空气质量传感器设计

QS-1型二氧化锡(SnO2)半导体气体传感器,对各种空气污染源(甲醛、甲苯、烟雾、二氧化碳等有害气体)都有很高的灵敏度,并且响应时间很快,可在极低的功耗情况下获得极好的感应特性。这款产品非常适合应用于空气品质控制系统。当传感器所处环境中存在污染气体时(CO2等),传感器的电导率随空气中污染气体浓度的增加而增大。单总线空气质量传感器电路如图3所示。

图3 单总线空气质量传感器电路图

2.3 反馈电路

当测量环境中的二氧化碳浓度超过设定值、温湿度超过上下限时,单片机输出控制信号通过光电耦合器隔离后,由继电器打开新风、空调和加湿器对空气参数进行调节。当空气中的空气污染物浓度、温湿度值满足软件设定值时,继电器断开,单片机停止动作。

3 软件设计

3.1 系统软件

在IAR软件开发环境中,利用STM32固件库[11],开发基于STM32F103VBT6的应用程序。系统控制程序流程如图4 所示。

图4 主程序流程图

3.2 数据采集程序

数据采集程序流程图如图5所示。

图5 数据采集程序流程图

单总线器件对操作时序的要求非常严格,在编程时,对DS2438和DS18B20操作程序采取C语言嵌入汇编语言方式编写。数据存储程序、LCD显示程序、串口通信程序和键盘驱动程序则采用C语言方式编写。采集子程序返回的电压值是相应传感器输出的电压值,通过转换程序,就可以得到相应的湿度或者空气污染物浓度值。所测温度值既可作为当前环境的温度值,又可作为温度补偿程序的温度参考值。

3.3 数据显示与存储

现场数据显示采用北京迪文3.5英寸(1英寸=25.4 mm)真彩液晶屏,通过串口通信将数据显示在液晶屏幕上。采用串口通信屏,加快了系统软件的开发速度。

上位机监控软件采用 FameView监控组态软件平台开发,实现上位计算机监测界面。通过Max232接口芯片,实现数据串行通信、上位机显示和数据库存储。

4 结束语

本文重点介绍了基于STM32单片机的单总线建筑室内环境监测系统设计、环境参数传感器硬件电路和软件设计流程。经过实验室测试,验证了该系统工作稳定可靠,可有效实现建筑物内温湿度和空气污染物浓度的监测。测量精度能满足现代智能建筑空气质量监测的需要。该系统非常适用于低速测控场合,且测点对象越多,越能够显示其优越性。硬件施工简单,维修方便,性价比高。通过网络扩展,系统还可以实现远程监控,适合推广应用于办公楼宇、住宅以及实验室等场合。

[1] 李晓阳,姜培刚,邬法磊.基于单总线协议的温度监测系统[J].工业控制计算机,2012,25(3):97-98.

[2] 刘建华.二叉树算法在单总线技术中的应用[J].自动化仪表,2006,27(3):63-64.

[3] 翟延忠,赵玉明.深井地层冻结一线总线监测系统的研发[J].煤炭科学技术,2011,39(11):20-22.

[4] 姚敏,刘淮霞.矿井井壁压力温度监测系统的设计[J].煤矿机械,2012,33(12):242-244.

[5] 刘士兴,邓立琼,何方,等.智能楼宇监测系统研究[J].合肥工业大学学报:自然科学版,2010,33(2):215-218.

[6] 韶华,陈书旺.室内温湿度多点测控系统的设计[J].仪器仪表学报,2007,28(8):92-95.

[7] 王喆,张炳坤,华维岗.公共建筑采暖节能温度智能控制系统的设计[J].自动化仪表,2012,33(6):59-62.

[8] 张治国,孔庆,崔纳新.电动汽车电池组监测系统的设计[J].电源技术,2011,35(10):43-45.

[9] 洪群欢,吕昂.一种基于STM32的温室SCADA系统[J].农机化研究,2010(5):128-131.

[10]韩成浩,李柏峰,高晓红,等.智能小区温湿度检测系统设计[J].长春理工大学学报:自然科学版,2009,32(3):496-497.

[11]喻金钱,喻斌. STM32F系列ARMCortex-M3核微控制器开发与应用[M].北京:清华大学出版社,2011.

猜你喜欢

温湿度湿度控制器
路基上CRTSⅡ型板式无砟轨道湿度场分析
湿度变送器测量结果不确定度评定
工商业IC卡控制器改造为物联网控制器实践
基于AT89C51的数字型蚕用温湿度计的设计
基于DSP的多路温湿度监测系统
基于温湿度控制的天气预测装置
基于DSP和μcos的温湿度检测系统的设计
带有双检测结构的电缆接头保护装置
跟踪导练(二)(2)
模糊PID控制器设计及MATLAB仿真