对温湿度的要求普遍存在如《档案库房技术管理暂行规定》中就明确指出:档案库房(含胶片库、磁带库)温度应控制在1424℃,有设备的库房日变化幅度不超过±2℃;相对湿度应控制在45%60%有设备的库房日变化幅度不超过±5%本文利用新型的C8051F020单片机和I2C总线数字式温湿度传感器SHT11设计了一套满足此要求的自动化设备。
一些仓储管理、生产制造、气象观测、科学研究以及日常生活中。
系统硬件设计
基于C8051F020档案库温湿度控制器,主器件为8051F020从器件为I2C总线数字温湿度传感器SHT11
SHT11瑞士Sennsirion公司生产的具有I2C总线接口的单片全校准数字式相对湿度和温度传感器。保守的模拟式湿度传感器一般都要设计信号调理电路并经过复杂的校准和标定过程,因此丈量精度难以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。SHT11瑞士Sennsirion公司推出的基于CMOSensTM技术(将温湿度传感器、信号放大调理、A/D转换、I2C总线全部集成在一个芯片上)新型温湿度传感器,该传感器的湿度值输出分辨率为14位,温度值输出分辨率为12位,并可编程为12位和8位。
C8051F020单片机是集成在1块芯片上的混合信号系统级单片机,具有与MCS8051内核及指令完全兼容的微控制器。除了具有规范8051机的数字外设部件外,片内还集成了数据采集与控制系统中常用的模拟部件和其他数字外设及功能部件,内部还具有JTA G和调试电路,通过JA TG接口可以使用装置在最终应用系统产品上的单片机进行非侵入、全速及在线系统调试。
由二者组成的温湿度控制器的硬件连接如图1所示。
图1C8051F020与SHT11接线图
利用I/O端口初始化顺序启动优先权交叉开关译码器把P0.0P0.1引脚分别配置成SDA
串行数据)SCL串行时钟)然后分别接SHT11DA TA 和SCK时钟的控制下来完成对SHT11采集并进行A/D转换后的温湿度数据的读取,P0.2P0.3被配置成基本输入输出,根据读取的温湿度值的高低来控制两个继电器,进而达到控制温湿度调节器的目的串行通信过程中主器件为8051F020从器件为SHT11
软件设计
1Bang-Bang控制
档案室温湿度控制中,对温湿度的要求不是一个定值,而是一个范围。执行机只有两种状态:on运转;off不运转。对于这种执行机,采用典型的数字控制算法为Bang-Bang控制算法。这样需要两个温度设置点:THIGH和TLOW,两个湿度设置点HHIGH和HLOW温度控制和湿度控制一样,所以只介绍温度的控制。如果温度高于THIGH则控制器关闭电源(继电器释放)如果温度低于TLOW则控制器打开电源(继电器吸合)THIGH与TLOW之差称为滞后。使用滞后延长了继电器的使用寿命,因为它减少了继电器开关次数。
2顺序设计
该程序包括:
系统复位子程序(Reset_Init完成对内部振荡器的设置,对XBR0和XBR2设置将SMB连到通用的I/O引脚;
SMBu初始化子程序(SMBus_Init:配置并使能SMBu设置SMBu时钟速率,为第一次传输清除SM_BUSY标志;
A/D转换和读取转换数据得子程序(ADCRead;Bang-Bang控制算法子程序(Bang-Bang;
输出控制子程序(OUTcontrol现把主要的启动A/D转换及读取数据子程序给出。
ADCRead
WRITEEQU00H
//SMBu写命令
REA DEQU01H
//SMBu写命令
Chip-A EQU00H
//SHT11从地址
MEA MURE_TEMPEQU03H
//SHT11丈量温度命令
MEA RURE_HUMIEQU05H
//SHT11丈量湿度命令
CLRRW
//写从地址
MOVA,#CHIP_A