1、 课程设计报告书 课程名称:《传感器原理及应用》课程设计 题 目:基于SHT11温湿度传感器的湿度 计设计 系 (院): 电子工程学院测控系 学 期: 2013-2014-1 专业班级: 测控111 姓 名: 学 号: 评语: 成绩: 签名: 日期:
2、 1 设计目的 (1) 能较全面地巩固和应用“传感器及检测技术”课程中所学的基本理论和基本方法,并初步掌握小型数字系统设计的基本方法。 (2) 通过《传感器及检测技术》课程设计,掌握传感器及检测系统设计的方法和设计原则及相应的硬件调试的方法。进一步理解传感器及检测系统的设计和应用。 (3) 培养独立思考、独立准备资料、独立设计规定功能的数字系统的能力。 (4) 培养书写综合设计报告的能力。 2 本题目的具体设计要求 (1)本实验设计的温湿度计能完成多种环境中的温度、湿度测量; (2)根据系统要求,选择合适的传感器,本实验所选用传感器为SHT11温湿度传感器;
3、 (3)设计传感器测量电路; (4)选择单片机的品种、型号,设计单片机的外围测量电路; (5)计算有关的电路参数,有条件的情况下,根据实验室现有设备进行实验数据的测取,明确测量电路输出与被测非电量的关系; (6)画出系统电路图; 3 本系统的总体实现原理、方案设计 3.1 国内外发展现状及文献综述: 温湿度的测量在仓储管理、生产制造、气象观测、科学研究以及日常生活中被广泛应用,传统的模拟式湿度传感器一般都要设计信号调理电路并需要经过复杂的校准和标定过程,因此测量精度难以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。SHT11是瑞士Sensirion公司推出的基
4、于COMSensTM技术的新型温湿度传感器。该传感器将CMOS芯片技术与传感器技术结合起来,从而发挥出它们强大的优势互补作用。 3.2 本系统的实现原理、总体方案设计 采用湿度和温度测量,即用一个温湿度传感器SHT11实现。温湿度传感器SHT11将湿度测量、温度测量、信号变换、A/D转换等功能集合到一个芯片上,该芯片包含一个电容性聚合体湿度敏感元件和一个用能隙材料制成的温度敏感元件,这个两个敏感元件分别将湿度和温度转换成电信号,该信号首先进入微弱信号放大器进行信号放大,然后进入一个14位的A/D转换器,最后经过二线串行数字接口输出数字信号,采用数码管显示所测湿度。图1为系统方框图。 湿度
5、采集电路 湿度采集电路 A/D转换 AT89C51单片机系统 显 示单 元 图1 系统框图 4 硬件选用与设计 4.1 SHT11温湿度传感器 本实验所选用传感器为SHT11温湿度传感器。SHT11是瑞士Sensirion公司生产的具有I^2C总线接口的单片全校准数字式相对湿度和温度传感器。该传感器采用独特的CMOSensTM技术,具有数字式输出、免调试、免标定、免外围电路及全互换的特点。 4.1.1 SHT11引脚说明 SHT11温湿度传感器采用SMD(LCC)表面贴片封装形式,管脚排列如图1所示,其引脚说明如下:
6、 (1)GND:接地端; (2)DATA:双向串行数据线; (3)SCK:串行时钟输入; (4)VDD电源端:0.4~5.5V电源端; 图2 SHT11引脚图 (5~8)NC:空管脚。 4.1.2 SHT11温湿度传感器的主要特性 SHT11温湿度传感器的主要特性如下: (1)将温湿度传感器、信号放大调理、A/D转换、I^2C总线接口全部集成于一芯片(CMOSensTM技术); (2)可给出全校准相对湿度及温度值输出; (3)带有工业标准的I^2C总线数字输出接口; (4)具有露点值计算输出功能; (5)具有卓越的长期稳定性; (6)湿度值输出分辨率为14位,温
7、度值输出分辨率为12位,并可编程为12位和8位; (7)小体积(7.65x5.08x23.5mm),可表面贴装; (8)具有可靠的CRC数据传输校验功能; (9)片内装载的校准系数可保证100%互换性; (10)电源电压范围为2.4~5.5V; (11)电流消耗,测量时为550μA,平均为28μA,休眠时为3μA。 4.1.3 SHT11温湿度传感器内部结构及其工作原理 图3 SHT11内部结构框图 SHT11的湿度检测运用电容式结构,并采用具有不同保护的“微型结构”检测电极系统与聚合物覆盖层来组成传感器芯片的电容,除保持电容式湿敏器件的原有特性外,还可抵御来自外界的影响。由于
8、它将温度传感器与湿度传感器结合在一起而构成了一个单一的个体,因而测量精度较高且可精确得出露点,同时不会产生由于温度与湿度传感器之间随温度梯度变化引起的误差。COMSensTM技术不仅将温湿度传感器结合在一起,而且还将信号放大器、模/数转换器、校准数据存储器、标准I^2C总线等电路全部集成在一个芯片内。SHT11传感器的内部结构框图如图3所示。 SHT11的每一个传感器都是在极为精确的湿度室中校准的。SHT11传感器的校准系数预先存在OTP内存中。经校准的相对湿度和温度传感器与一个14位的A/D转换器相连,可将转换后的数字温湿度值送给二线I^2C总线器件,从而将数字信号转换为符合I^2C总
9、线协议的串行数字信号。 由于将传感器与电路部分结合在一起,因此,该传感器具有比其它类型的湿度传感器优越得多的性能。首先是传感器信号强度的增加增强了传感器的抗干扰性能,保证了传感器的长期稳定性,而A/D转换的同时完成,则降低了传感器对干扰噪声的敏感程度。其次在传感器芯片内装载的校准数据保证了每一只湿度传感器都具有相同的功能,即具有100%的互换性。最后,传感器可直接通过I^2C总线与任何类型的微处理器、微控制器系统连接,从而减少了接口电路的硬件成本,简化了接口方式。 4.1.4 命令与接口时序 SHT11传感器共有5条用户命令,具体命令格式见表1所列。下面介绍一下具体的命
10、令顺序及命令时序。 表1 SHT11传感器命令列表 命 令 编 码 说 明 测量温度 00011 温度测量 测量湿度 00101 湿度测量 读寄存器状态 00111 “读”状态寄存器 写寄存器状态 00110 “写”状态寄存器 软启动 11110 重启芯片,清除状态记录器的错误记录11毫秒后进入下一个命令 (1)传输开始 初始化传输时,应首先发出“传输开始”命令,该命令可在SCK为高时使DATA由高电平变为低电平,并在下一个SCK为高时将DATA升高。接下来的命令顺序包含三个地址位(目
11、前只支持“000”)和5个命令位,当DATA脚的ACK位处于低电位时,表示SHT11正确收到命令。 (2)连接复位顺序 如果与SHT11传感器的通讯中断,下列信号顺序会使串口复位:即当DATA线处于高电平时,触发SCK 9次以上(含9次),此后应接着发一个“传输开始”命令。 表2 SHT11状态寄存器类型及说明 位 类型 说 明 缺 省 7 保留 0 6 读 工检限(低电压检查)
12、 X 5 保留 0 4 保留 0 3 只用于试验,不可以使用 0 2 读/写 加热 0 关 1 读/写 不从OTP重下载 0 重下载 0 读/写 '1'=8位相对湿度,12位温度分辨率。'0'=12位相对湿度,14位湿度分辨率 0 12位相对湿度,14位湿度 (3)温湿度测量时序 当发出了湿(温)度测量命令后,控制器就要等到测量完成。使用8/12/14位的分辨率测量分别需要大约11/55/210ms的时间。为表明测量完成SHT11会使数据线为低,此时控制器必须重新启动SCK,然后传送
13、两字节的测量数据与1字节CRC校验和。控制器必须通过使DATA为低来确认每一个字节,所有的量均从右算,MSB列于第一位。通讯在确认CRC数据位后停止。如果没有用CRC-8校验和,则控制器就会在测量数据LSB后保持ACK为高来停止通讯,SHT11在测量和通讯完成后会自动返回睡眠模式。需要注意的是:为使SHT11的温升低于0.1℃,此时的工作频率不能大于标定值的15%(如:12位精确度时,每秒最多进行3次测量)。 (4)寄存器配置 SHT11传感器中的一些高级功能是通过状态寄存器来实现的,寄存器各位 的类型及说明见表2所列。下面对寄存器相关位的功能说明: ① 加热
14、 使芯片中的加热开关接通后,传感器温度大约增加5℃,从而使功耗增加至8mA@5V。加热用途如下: ●通过对启动加热器前后的温、湿度进行比较,可以正确地区别传感器的功能; ●在相对湿度较高的环境下,传感器可通过加热来避免冷凝。 ② 低电压检测 SHT11工作时可以自行检测VDD电压是否低于2.45V,准确度为±0.1V。 ③ 下载校准系数 为了节省能量并提高速度,OTP在每次测量前都要重新下载校准系数,从而使每一次测量节省8.2ms的时间。 ④ 测量分辨率设定 将测量分辨率从14位(温度)和12位(湿度)分别减
15、到12位和8位可应用于高速或低功耗场合。 4.2 AT89C51 4.2.1内部结构 本实验选用的单片机为AT89C51。AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。 4.2.2 主要性能参数: ● 与MCS-51产
16、品指令系统完全兼容 ● 4k字节可重擦写Flash闪速存储器 ● 1000次擦写周期 ● 全静态操作:0Hz-24MHz ● 三级加密程序存储器 ● 128×8字节内部RAM ● 32个可编程I/O口线 ● 2个16位定时/计数器 ● 6个中断源 ● 可编程串行UART通道 ● 低功耗空闲和掉电模式 4.2.3 功能特性概述: AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz
17、的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 4.2.4 引脚说明 AT89C51的引脚图如右图4所示。 (1)VCC:电源电压。 (2)GND:地。 (3)P0 口:P0 口是一组8 位漏极开路型双向I/O 口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。 在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8
18、位)和数据总线复用,在访问期间激活内部上拉电阻。 在FIash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 图4 AT89C51引脚图 (4)P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。 FIash编程和程序校验期间,P1接收低8位地址。 (5)P2口:P2是一个带有内部上拉电阻的
19、8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。 在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX@RI 指令)时,P2 口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。 Flash编程或校验时,P2亦接收高位地址和其它控制信号。 (6)P3口:P
20、3口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。 P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下表3所示: 表3 AT89C51的P3口第二功能 引脚口 功 能 P3.0 RXD串行输入端口 P3.1 TXD串行输出端口 P3.2 INT0 外中断0 P3.3 INT1 外中断1 P3.4 T0定时器0外部输入 P3.5
21、 T1定时器1外部输入 (7)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。 (8)ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE 仍以时钟振荡频率的l/6 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的DO 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX和
22、MOVC指令ALE才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。 (9)PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。 (10) EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。 如EA端为高电平(接VCC端),CPU则执行内部程序存储器
23、中的指令。 Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。 (11)XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。 (12)XTAL2:振荡器反相放大器的输出端。 5 其它各部分单元电路设计 5.1 传感器工作电路设计及说明 微处理器采用二线串行数字接口和温湿度传感器芯片SHT11进行通信,所以硬件接门设计非常简单;然而,通信协议是芯片厂家自己定义的,所以在软件设计中,需要用微处理器通用I/O口模拟通道。SHT11通过二线数字串行接口来访问,所以硬件接口电路非常简单。需要注意的地方是:DATA数据
24、线需要外接上拉电阻,时钟线SCK用于微处理器和SHT11之间通信同步,由于接口包含了完全静态逻辑,所以对SCK最低频率没有需求;当工作电压高于4.5V时,SCK频率最高为10MHz,而当工作电压低于4.5V时,SCK最高频率则为1MHZ。硬件连接如下图5所示。 图5 SHT11硬件连接 5.2 测量原理 首先利用2只传感器分别产生相对湿度、温度的信号;然后经过放大,分别送至A/D转换器进行模数转换、校准和纠错;再通过二线串行接口将相对湿度及温度的数据送至单片机;最后利用单片机完成非线性补偿和温度补偿。
25、5.3 显示器LED LED是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128*64全点阵液晶显示器组成。可完成图形显示,也可以显示8*2个(16*16点阵)数字或8*4个(16*16点阵)汉子。LED接P0口必须接上拉电阻,P0口才能输入高电平,LED才能正常工作。LED液晶显示器如下图6所示。 图6 LED液晶显示器 5.4 显示原理图 开始 单片机初始化 接收数据 地址校验 取温湿度给定值 采样温湿度值 数码显示 上传数据 N Y 图7 LED显示原理图 图7为软件方面的显示原理图,开始后,单片机经过
26、初始化后接收数据,然后进行地址校验,校验不合格继续接受数据,检验合格的话取湿度给定值进而采样温湿度值,然后数码显示后上传数据,继续循环。 5.5 湿度和温度值计算 (1)湿度值输出 SHT11可通过I^2C总线直接输出数字量湿度值,其相对湿度数字输 出特性曲线如图8所示。 图8 SHT11传感器相对湿度数字输出特性曲线 由图3可看出,SHT11的输出特性呈一定的非线性,为了补偿湿度传感器的非线性,可按如下公式修正湿度值: =++ 式中
27、为传感器相对湿度测量值,系数取值如下: 12位:=-4,=0.0405,=-2.8* 8位::=-4,=0.648,=-7.2* (2)温度值输出 由于SHT11温度传感器的线性非常好,故可用下列公式将温度数字输出转换成实际温度值: Temperature= 当电源电压为5V,且温度传感器的分辨率为14位时,=-40=0.01,当温度传感器的分辨率为12位时,=-40=0.04。 (3)露点计算 空气的露点值可根据相对湿度和温度值来得出,具体的计算公式如下: ㏒EW=(0.66077+7.5T/(237.3+T))+[㏒10-2] =[(0.66077-㏒EW)*23
28、7.3]/(㏒EW-8.16077) 6 应用说明 6.1 运行条件 测量量程以外的温度会使湿度信号暂时地偏移+3%。然后传感器会慢慢返回到校准条件。若将芯片在湿度小于5%环境下加热24小时到90℃,芯片就会迅速恢复高相对湿度、高温度环境的影响,但是,延长强度条件会加速芯片的老化。 6.2 安装注意事项 由于大气的相对湿度与温度的关系比较密切,因此,测量大气温度时的要点是将传感器与大气保持同一温度,如果传感器线路板上有发热元件,SHT11应与热源保持良好的通风,为减少SHT11和PCB之间的热传导,
29、应使铜导线最细并在其中加上窄缝,同时应避免使传感器在强光或UV下曝晒。 传感器在布线时,SCK和DATA信号平行且相互接近,或信号线长于10cm时,均会产生干扰信息,此时应在两组信号之间放置VDD或GND。 7 系统总电路原理图 以单片机为中心,采集从SHT11传感器传来的数据,经计算处理后将结果送8155,然后由8155的PA口送出位码,PB口送出段码,由数码管显示出结果。系统总电路原理图如图9所示。 图9 SHT11温湿度计系统总原理电路图 8 总结与心得体会 通过此次课程设计的学习,我发现了自己许多的不足之处,所学知识个别环节的薄弱,看到了自己的实践经验还是较缺乏,理论联系实际的能力还急需提高。这次学习提高我在控制检测电路和单片机系统应用方面的实践技能,通过查找资料、制作等环节,掌握工程设计方法和组织实践的基本技能,熟悉使用单片机及其外围电路完成科学实践的程序和方法。通过这次课程设计,也让我们提前熟悉了毕业设计的流程、要求等,经历了一次小小的实战,为大四的毕业设计打好了一定基础。 附录:元器件清单






