APP下载

环境温湿度检测系统设计

2015-05-30黄睿

计算机时代 2015年5期
关键词:温湿度湿度芯片

黄睿

摘 要: 设计一款数字式温湿度检测仪,可用于日常环境中的温、湿度的测量与记录。系统以MSP430F2232为核心,利用单片全校准数字式相对温、湿度传感器SHT15检测温/湿度,利用电擦写式只读存储器24LC512作为存储元件。系统可完成温、湿度的测量和记录,同时还可以记录对应的日期与时间,并通过液晶屏显示温、湿度数据及其变化曲线。利用VC语言开发的温、湿度数据接收软件还可以把数据传送到PC机,便于对这些数据进行分析和对比。系统预留有扩展口,以便于更新和升级。

关键词: SHT15; 24LC512; MSP430F2232; 温湿度检测

中图分类号:TP312 文献标志码:A 文章编号:1006-8228(2015)05-41-03

Abstract: Design a digital temperature and humidity tester, which can be used for measuring and recording the daily environment temperature and humidity. The system takes MSP430F2232 as the core, uses monolithic full calibration digital temperature and relative humidity sensor SHT15 to detect temperature and humidity, and uses electrically erasable read-only memory 24LC512 as the storage element. The system can measure and record temperature and humidity, and can also record the corresponding date and time. The temperature, humidity and the variation curve can be displayed on the LCD. The software developed with VC language for receiving temperature and humidity can send the data to PC machine for analysis and contrast. The system also has set aside a expansion port, easy to update and upgrade.

Key words: SHT15; 24LC512; MSP430F2232; temperature and humidity detection

0 引言

在现代工业环境中,温度和湿度影响到工业生产环境中电气设备的使用寿命,在农业环境中温湿度影响到农作物的正常生产,而在人居环境中,温湿度影响到人们身体的健康。因此,设计一款温湿度检测系统实时检测环境的温湿度,控制抽湿机和温控设备有效的进行工作,保护工业环境中的电气设备、农业环境中的农作物以及人们的身体健康,具有一定的现实意义。本课题设计的温湿度记录仪不但可以检测温湿度信号,还能记录其变化趋势,可以输出温湿度的日均值和小时均值。具有更准确地数据记录、更方便的数据存储、更便捷的数据分析等功能。

1 系统介绍及硬件电路

1.1 系统介绍

为了提高检测的准确性和数据的有效性,本设计温湿度传感器选用I2C总线接口的单片全校准数字式传感器SHT15[1],数据记录选用电擦写式只读存储器24LC512,为了提高环境监测的稳定性和精密性,系统还选用了低功耗单片机MPS430F2252作为中央处理单元[2]。系统通过温湿度传感探头检测温湿度数据后,送至中央处理单元,处理结果实时地通过液晶屏显示出来,并通过24LC512数据记录单元存储下来,还可通过键盘设定相应的数据记录间隔和报警范围。具体结构如图1所示。

1.2 温湿度检测电路设计

系统选择湿度和温度的集成传感器SHT15,该传感器将温湿度传感器、信号放大调理、A/D转换、串行数字通信接口电路、数字校准等功能模块集成在一块微形芯片上,不需要外围元件,可直接输出经过标定的相对湿度和温度的数字信号。湿度测量范围0~100%RH ,温度测量范围-40℃~123.8℃。工作电压在 2.4V~5.5V范围,测量状态下功耗约3mW。

⑴ 电路设计

温湿度传感器SHT15通过串行时钟(SCK)输入接口和串行数据(DATA)输出接口与单片机相连。DATA三态门用于数据的读取。电源引脚(VDD,GND)之间需增加一个100nF的电容,主要目的是去耦滤波。为保证在时钟下降沿数据的有效性,DATA 需要保持在高电平,因此需要在DATA数据接口上接一个10k的上拉电阻。具体电路见图2所示。SHT15通过后,要等待11ms以越过“休眠”状态[3-4]。

⑵ 温湿度传感器SHT15的使用

DATA在SCK时钟下降沿之后改变状态,并仅在 SCK 时钟上升沿有效。数据传输期间,在SCK时钟高电平时,DATA必须保持稳定。为避免信号冲突,单片机应驱动DATA在低电平。需要一个外部的上拉电阻(例如:10kΩ)将信号提拉至高电平(参见图2)。

单片机发布一组测量命令(‘00000101表示相对湿度RH,‘00000011表示温度T)后,控制器要等待测量结束。这个过程大约需要320ms,14bit 测量。确切的时间随内部晶振速度,可能有-30%的变化。SHT15 通过下拉DATA 至低电平并进入空闲模式,表示测量的结束。控制器再次触发SCK 时钟前,必须等待这个“数据备妥”信号来读出数据。检测数据可以先存储,这样控制器可以继续执行其他任务,在需要时再读出数据[5]。

1.3 数据记录单元电路设计

为方便数据的记录及查询,设计中采用24lc512作为存储单元。该芯片由美国微芯科技公司生产的电擦写式只读存储器容量范围为512K,最大频率为400kHz。支持I2C串行接口,以x8位存储器块进行组合。允许工作电压2.5-5.5V,待机电流和工作电流分别为1μA和1mA,具有页写入能力。功能性地址线允许连接到同一条总线上的器件数目最多可达8个,具体电路如图3所示,本设计中使用了4个24lc512。

A0、A1和A2引脚用于多器件工作,当这些输入引脚上的电平与从器件地址中的相应位作比较,如果比较结果为真,则该器件被选中。串行数据引脚SDA为双向引脚,用于把地址和数据输入/输出器件。该引脚为内部漏极开路。因此,SDA总线要求在该引脚与VCC之间接入10k的上拉电阻。对于正常的数据传输,只允许在SCL为低电平期间改变SDA电平。而 SDA电平在SCL高电平期间若发生变化,表明起始和停止条件产生。时钟SCL引脚用于数据传输同步。写保护(WP)引脚必须连接到VSS或者VCC。如果连接到VSS,能写操作。如果连接到VCC,则禁止写操作,但读操作不受影响。具体电路见图3。

1.4 电源电路

为实现记录仪的小巧便于携带,系统采用锂电池供电。BL8503是一款正电压输出,低功耗低压差的三端线性稳压器,在输入输出电压差低至400mV时都可提供250mA(Vin=4.0V、Vout=3.0V时)的负载电流。BL8503极低的静态功耗(Iq=1.5uA)可极大的提高电池使用时间。电路如图4所示,输入端外接11uF钽电容作为旁路电容,保证电路的稳定性,在输入端接1uF钽电容作电源滤波电容。具体电路见图4所示。

外围应用电路简单,只需输入输出两个电容和负载即可工作。芯片内部包括电压基准源电路,过流保护,误差放大器,功率管及其驱动电路等模块组成。其中过流保护能够在应用电路的负载电流大于250mA时,保证芯片和系统的安全。BL8503的参考电压电路提供稳定的参考电平,由于采用内部的修正技术,保证输出电压精度达到±2%,同时由于参考电压经过精心的温度补偿设计考虑,使得芯片的输出电压的温度漂移系数小于100ppm/℃。

1.5 主控中心电路设计

本设计选择MSP430F2232芯片作为核心芯片, 该芯片是一款超低功率混合信号微控制器,此微控制权具有两个内置 16 位定时器、一个通用串行通信接口,具有集成基准和数据传输控制器。S0~S10,COM0~COM3用于LCD显示,P3.1,P3.2 用于数据存储,P6.4,P6.5 用于温湿度测量。TXD,RXD分别作为输入端、USB串口电路。JTAG端口为在线编程接口。具体电路如图5所示。

2 软件设计

本设计软件编程主要分为以下几部分:温湿度传感器SHT15测量程序、数据存储芯片24lc512读写程序、液晶显示程序、按键程序以及按键控制程序等。程序采用VC语言编写,下面给出与上述硬件电路配套的部分C51应用程序[5]。

⑴ 温湿度采集部分代码

char s measure(uchar*p value,uchar*p checksum,uchar mode)

{ unsigned error=0;

uint i;

stransstart(); //transmission start

switch(mode); //send command to sensor

{ case TEMP :error+=s write byte(MEASURE TEMP);break;

case HUMI :error+=s write byte(MEASURE HUMI);

break; default :break;

}

for(i=0; i<65000; i++)

{ delay(1);

if(DAT==0) break;

} //wait until sensor has finished the measurement

*(p value)=s read byte(ACK);//read the first byte(MSB)

*(p value+1)=s read byte(ACK);//read the second byte(LSB)

*p checksum=s read byte(noACK);//read checksum

return error;

}

⑵ 存储器部分代码

Write_NByte(&RXBuffer[7],RXBuffer[6],(RXBuffer[3]*2-0x14));

//-0x14为了不跨页

if(DataAddr==Userdata1)

{ Bvale.Byte8[1]=RXBuffer[7];

Bvale.Byte8[0]=RXBuffer[8];

if((Bvale.Byte16<3000) &&(Bvale.Byte16>5000))

{ Bvale.Byte16=3950; }

writeOK=1;

}

else if((DataAddr>=0x02c0) && (DataAddr<0x02c6))

//Writing the system time

{ TimeInit_8563(&RXBuffer[7]);

DispTime(0);

writeOK=1;

}

else if(DataAddr==0x02c6) //writ RAM

{ DataAddr+=(RXBuffer[6]-1);

for(i=0; i{* (uchar *)DataAddr=RXBuffer[7+i];

//From the high bytes starting assignment

DataAddr --;

}

writeOK=1;

}

3 结束语

温湿度传感器SHT15集温度传感器和湿度传感器于一体,因此,采用SHT15进行温湿度实时监测的系统具有精度高、成本低、体积小、接口简单等优点。该芯片在温湿度监测、自动控制等领域均已得到广泛应用,在现代化温室控制系统中具有广阔的发展前景。另外24lc512芯片内部集成存储容量大,性能稳定便于操作。本文设计的便携式数显温湿度检测记录仪体积小,重量轻,性能稳定可靠,且便于携带;与传统的模拟式温湿度计相比具有明显的优势,即数字式显示,方便读出数值;保存温度湿度值,通过输出变化曲线,可以掌握环境温湿度的变化趋势,从而可以做出相对性的措施进行环境的改良。系统电路简单,留有扩展接口,便于系统的升级和改良[4-6]。

参考文献:

[1] 张瑾,周彬,朱文艺. 基于SHT10单片机技术的温室监测系统[J].电子测量技术,2013.36(10):136-138

[2] 孙继平.煤矿安全生产监控与通信技术[J].煤炭学报,2010.35(11):1925-1929

[3] 孙环,滕召胜.基于SHT10单片集成传感器温湿度检测模块设计[J].国外电子测量技术,2009.41(13):107-109

[4] 颜丽娜,王顺忠,张铁民.基于DHT11温湿度测控系统的设计[J].海南师范大学学报(自然科学版),2013.24(4):128-130

[5] 陆荣鑑,李品,孙周.SHT10传感器在温湿度监测系统中的应用[J].传感器与微系统,2012.9:45-47

[6] 张中华,王泽勇.基于SHT10的便携式数显温湿度检测仪的设计[J].现代电子技术,2009.179(304):137-139

猜你喜欢

温湿度湿度芯片
植物有话说(十七) 松果:开与合,看湿度
温湿度控制器在回收砂冷却系统中的应用
工业锅炉饱和蒸汽湿度的运行控制
基于DSP的多路温湿度监测系统
基于湿度控制的室内空气净化器高压电源设计
基于温湿度控制的天气预测装置
蒸发冷却温湿度独立控制空调系统的应用
芯片测试
多通道采样芯片ADS8556在光伏并网中的应用
跟踪导练(二)(2)