高 勇, 李 莉
(1.煤炭科学研究总院 沈阳研究院大连分院,辽宁 大连 116013;2.大连航运职业技术学院 辽宁 大连 116052)
国家矿用安全产品检验检测中心对矿用设备的安全性能检测中,交变湿热实验是一项重要的安全性能指标[1]。传统的温湿度检测系统的数据传输是通过一系列有线电缆实现的,随着射频技术、集成电路技术的发展,无线通信功能的实现愈来愈容易,数据传输速度也愈来愈快,抗干扰能力也更强。结合实验室实际情况和需求,本课题给出了以ATmega64L低功耗微处理器、SHT11温湿度传感器和nRF905为核心无线通信系统设计方案。
系统主要由温湿度传感器SHT11、无线通信芯片nRF905、AVR单片机、供电电源电路及外围显示控制传输电路构成。系统的总体结构框图如图1所示。
图1 系统总体结构框图Fig.1 Overall block diagram of the system
系统硬件电路是以AVR系列单片机ATmega64L为主控芯片,SHT11作为温湿度传感器,nRF905作为无线射频芯片,并配合电源电路和其他外围电路组成的。
ATmega64L单片机是美国ATMEL公司推出的一款采用RISC指令、高性能、低功耗的8位在线可编程的高速单片机,工作电压在2.7~5.5 V[2]。它自带64 k字节系统内可编程Flash(具有同时读写的能力,即RWW)、2 k字节EEPROM、4 k字节SRAM、53个通用I/O口、32个通用工作寄存器、实时计数器 (RTC)、4个具有比较模式与PWM的灵活的定时器/计数器(T/C)、2 个 USART、面向字节的两线串行接口 TWI、8 路10位具有可选差分输入级可编程增益的ADC、具有片内振荡器的可编程看门狗定时器、一个SPI串行端口、与IEEE 1149.1标准兼容的,可用于访问片上调试系统及编程的JTAG接口,以及6个可以通过软件进行选择的省电模式:空闲模式、掉电模式、省电模式、ADC噪声抑制模式、Standby模式、扩展 Standby模式,可以满足各种低功耗设计的需要[2]。
利用ATmega64L单片机低电压、低功耗特性,使其与SHT11和nRF905使用相同的工作电压,共同使用一个电源。这种设计适用于比较复杂的控制系统,避免了芯片之间的电平不匹配问题,同时又简化了电路设计,提高了系统的稳定性。该单片机有3项个主要任务:1)完成与传感器SHT11的通讯,读取传感器的测量结果;2)完成对无线射频芯片通信过程的控制;3)控制外围设备获取、处理信号并显示相关数据。
SHT11是瑞士Scnsirion公司推出的一款两线制串行通信的数字温湿度传感器芯片,工作电压2.4~5.5 V[3]。它具有数字式输出、免调试、免标定、低功耗、高可靠性、测量分辨率可编程调节(8/12/14位数据)、CRC传输校验、超小封装尺寸等特点;同时集成了温湿度传感器,可以进行温度补偿的湿度测量,并提供高质量的露点计算功能,测量精度高,适应环境能力强[4]。其应用原理图如图2所示。
图2 SHT11应用原理图Fig.2 The SHT11 applications schematic
由图2可看出SHT11并通过两线制串行方式和单片机进行通信,它向单片机发送测量结果及接收来自单片机的指令。在ATmega64L与SHT11的接口电路中,PG3和PG4分别作为SHT11的时钟端口SCK和数据端口DATA,并在数据线上接一个10 kΩ的上拉电阻。另外,在SHT11的VDD和GND引脚之间接一个0.1 μF的滤波电容,提高电源的抗干扰能力。
nRF905芯片是由Nordic VLSI公司推出的单片射频收发器,有如下特点:工作频率可以通过软件配置,在433/868/915 MHz开放的ISM频段;最大数据传输速率为100 kb/s,具有高效的GPSK调制,抗干扰能力强,适合于许多工业控制场合;125个频道选择,可满足多通信和调频通信的需要;nRF905片内集成了电源管理、低噪声放大器、晶体振荡器、频率合成器功率放大器等模块,可以实现自动处理字头、曼彻斯特编码/解码和CRC循环冗余码校验等功能;在1.9~3.6 V电压下低功耗工作,待机模式下静态电流只有 2.5 A;收发模式的切换时间短,小于 650 μs;芯片可以通过软件设置地址,并可直接与各种单片机连接使用,软件编程非常方便[5]。
nRF905具有两种工作模式(ShockBurst RX接收模式和ShockBurst TM发送模式)和两种节能模式(掉电模式和待机模式)[6]。这几种模式都是由外界MCU通过控制nRF905的3个引脚PWR_UP、TRX_CE和TX_EN的高低电平来决定。表1为它的工作模式及相应功能。
表1 nRF905的工作模式及相应功能Tab.1 The nRF905 work mode and the corresponding function
nRF905的稳定通信距离与其输出功率有着直接关系。可以通过软件编程来改变配置寄存器的内容,使nRF905的功率放大器工作于-10 dBm功率下,其发射时的电流消耗仅仅为11.0 mA,接收时的电流消耗为12.5 mA。在应用时,可根据具体的通信距离和电流消耗来择输出功率[4]。nRF905与MCU之间通过SPI接口进行数据和命令交互,为了降低硬件成本同时保证一定的传输距离,采用差分环状天线,工作频率为868 MHz。其应用原理图如图3所示。
图3 nRF905芯片的应用原理图Fig.3 The nRF905 chip applications schematic
系统总体硬件电路由以AVR系列单片机ATmega64L为主控芯片、SHT11作为温湿度传感器、nRF905作为无线射频芯片、电源电路、通信接口电路和其他接口电路所组成。系统总体的硬件电路设计框图如图4所示,单片机给SHT11温湿度传感器转换指令,SHT11转换完成后把结果发送给单片机,把数据在软件中进行优化、滤波和线性化,然后把数据经由nRF905通信模块发送出去,也可选择用RS485总线的方式进行有线传输,并进行数据的显示和报警。每一块电路板都可作为数据发送端或者数据接收端,如此模块化的设计便于安装和调试。
图4 系统总体硬件设计框图Fig.4 Overall system hardware design diagram
系统主要由温湿度传感器SHT11、无线数据收发器nRF905、单片机和显示部分组成。因此,软件设计过程中的重点是温湿度测量和无线收发数据两个部分。
温湿度传感器SHT11通过两线制串行方式和单片机进行通信[3]。单片机发送完启动命令和控制命令后,MCU要等待测量结束,该过程大约需要 11/55/210 ms,分别对应8/12/14bit测量。SHT11通过下拉DATA至低电平表示测量结束,MCU在触发SCK时钟前必须等待该数据备妥信号。在测量和通信结束后,SHT11自动转入休眠模式。为保证自身温升低于0.1℃,SHT11的激活时间不要超过15%(例如对于12 bit精度测量,每秒最多进行3次测量)[7]。
为了补偿湿度传感器的非线性以获取准确数据,需要使用式(1)来修正读数:
式中:RHlinear为进行非线性补偿后的湿度值,SORH为MCU从SHT11读取的湿度值。由于实际温度与测试参考温度25℃有显著差别,应考虑湿度传感器的温度修正系数:
式中:RHtrue为最终计算出的相对湿度值,T℃为当前实际温度。可用式(3)将数字输出转换为温度值:
式中:T为实际温度值;SOT为MCU从SHT11读取的温度数字输出量;c1、c2、c3、t1、t2、d1、d2的具体数值参见 SHT11 芯片手册。
表2 SHT11命令集Tab.2 SHT11 command set
在发送模式下,置位PWR_UP和TX_EN,ATmega64L单片机通过SPI接口配置nRF905的寄存器,等待要发送的数据写入发送地址寄存器,经过650 μs的延时,保持TRX_CE引脚高电平10 μs后变为低电平,数据发送过程中,等DR为高电平时表示数据发送完成,进入待机模式。发送数据的流程图如图5所示。
图5 nRF905数据发送流程图Fig.5 The nRF905 data send flowchart
拉低TX_EN,TRX_CE引脚高电平650 μs后进入数据接收模式。当nRF905检测到合适的载波时,CD置高电平,接收到有效地址后,AM置高。单片机判断AM是否为高电平,当为高电平时,拉低TRX_CE,读取接收到的数据后DR自动变为低电平,具体的接收流程图如图6所示。
图6 nRF905数据接收流程图Fig.6 The nRF905 data receiver flowchart
以上提出的基于SHT11和nRF905的无线温湿度检测仪可以实现远程无线温湿度测量及数据传输,通过恰当的硬件电路设计及合理的软件编程使温湿度数据得以安全可靠的传输和远程监控,保证了矿用设备检验实验室所需的复杂的温湿度环境,取得了良好的效果。
[1]熊刚,周祖德,杨东,等.新型G系列高低温交变湿热试验箱[J].环境技术,2010(4):18-22.
XIONG Gang,ZHOU Zu-de,YANG Dong,et al.G series new model numidity and high/low temperature test chamber[J].Environmental Technology,2010(4):18-22.
[2]AVR单片机嵌入式系统原理与应用实践[M].北京:北京航空航天大学出版社,2007.
[3]娄朴根,石琼,张静.部队库房温湿度监控系统的设计与实现[J].微计算机信息,2011(8):66-67.
LOU Pu-gen,SHI Qiong,ZHANG Jing.Design and implementation of the temperature and humidity measuring system in the military depot[J].Microcomputer Information,2011(8):66-67.
[4]姜连祥,许培培.温湿度传感器 SHT11的感测系统设计[J].单片机与嵌入式系统应用,2007(4):49-51.
JIANG Lian-xiang,XU Pei-pei.Sensing system design of temprature and humidity sensor SHT11[J].Microcontrollers&Embedded system,2007(4):49-51.
[5]Norway Nordic single chip 433/868/915MHz transceiver nRF905 datasheet[S].2004.
[6]Norway Nordic VLSIASA nRF905 specification product[S].2004.
[7]SHT1x/SHT7x Humidity&Temperature Sensor Datasheet[S].2005.