APP下载

实验室温、湿度测试的设计与实现

2019-03-14徐明

电脑知识与技术 2019年1期
关键词:温度传感器内核寄存器

徐明

摘要:本设计核心部分是利用8051单片机与DS18B20温度传感器以及HTU21D濕度传感器设计硬件上的数据反馈,研究使用单片机通过分析温度和湿度的返回信息进行实验室内的监控, 最终通过ZigBee无线网络实现单片机与主机的对接,客户端通过网络与主机相连来实现监测。

关键词:8051单片机;DS18B20温度传感器;HTU21D湿度传感器

中图分类号:TP311      文献标识码:A      文章编号:1009-3044(2019)01-0262-02

伴随着电子技术的日新月异,单片机、传感器与个人使用的电子类产品也得到了极大地发展,温度、湿度传感器成本的降低以及在数字化方面的进步,使得在实验室设计推广采用单片机测试温度、湿度,通过个人手机或者PC机来收取这些数据,以实现预防火灾、漏水危险。

本设计电路方面拟采用8051系列的单片机来接收DS18B20温度传感器和HTU21D湿度传感器上的采集数据,这两种传感器的检测与数据输出集成在一个芯片上,体积小且抗干扰能力强,利用ZigBee无线传感器跟主机相连,最后客户端通过Internet网络访问主机。

1 系统总体设计方案

目前市面上已有出售跟单片机焊接在一起的温度传感器和湿度传感器,但是传统的单片机需要通过双公头USB线跟主机相连,对于空间比较大的实验室实现起来比较困难,本系统拟采用ZigBee无线传感器测试网络来实现,主要是为了减少对USB线的依赖,以及减少在实验室密集的空间带来的布线麻烦。该系统的装置结构图如图1所示,温度与湿度传感器通过单片机控制,单片机通过ZigBee无线传感器测试网络与主控端控制,客户端(手机端和PC端)与主控端进行交互以达到实现温度和湿度的反馈。

针对温度和湿度两种非电信号量,需要先利用传感器将其转换为电信号,再由集成电路分析处理[1],最终可以在客户端查看到当前实验室的相关信息。

2详细设计

2.1单片机系统模块

CC2530的“增强型8051内核”与“标准的8051微控制器”进行比较,除了在速度方面进行改进之外,还有以下两种情况:内核代码方面:从代码的兼容性来看,CC2530的内核目标代码是可以向下兼容“标准8051”的内核目标代码,换句话说就是CC2530的内核目标代码可以利用“标准8051”的编译软件进行编译。微控制器方面:由于CC2530的内核目标代码是可以向下兼容“标准8051”的内核目标代码,换句话说就是CC2530的内核所使用的指令时钟不同于“标准8051”,因此CC2530在编译时与之前标准内核的代码编译就会有所不同。

对于使用CC2530的“增强型8051内核”与“标准的8051微控制器”中出现的问题,必须优先解决内核的存储空间不对称这种情况,从FLASH存储器来说,CC2530将其划分成几个bank,其中每个bank的大小都是固定的值,为32KB。对于CC2530F256设备来说,它有8个bank,分别为bank0~bank7。通过操作寄存器FMAP.MAP[2:0]来控制将哪个编号的bank映射到CODE区域 。CC2530的供电模式有很多种,通常这些供电模式会影响到单片机的运行,所以需要根据不同的温度采集或者湿度采集来设定相对应的供电模式,如果模式选择错误会影响单片机与传感器之间的联系,因此在CC2530开始工作之前必须要选定正确的供电模式 。从CC2530的五种供电模式中进行比较:

主动模式:完全功能模式。稳压器的数字内核开启;此时的高频振荡器的32MHz晶振和16MHz RC振荡器其中之一开始运作,抑或两者会同时运作,这个需要看运行的传感器的数量和传感器的型号;与此同时低频振荡器的32KHz晶振和32KHzRC振荡器其中一个开始运作。如果选中该模式,那么CPU、外置的设备以及RF收发器都变成处于活跃状态,此时可以通过代码操控CPU内核是停止运行还是继续运作,是否进入到空闲的模式。如果想要唤醒空闲模式下的CPU内核继续运作可以通过操作寄存器来设置寄存器复位、寄存器中断或设定睡眠定时器。

空闲模式:所谓的空闲模式是指CPU内核暂时停止运作,在CPU内核运作时是与主动模式相同。如果想要唤醒空闲模式下的CPU内核继续运作可以通过操作寄存器来设置寄存器复位、寄存器中断或设定睡眠定时器进入主动模式。

PM1:在PM1模式下,稳压器的数字部分开启;该模式下的高频振荡器的32MHz晶振不运作,且高频振荡器的16MHz RC振荡器也不会运作;此刻由低频振荡器的32KHz晶振和32KHz RC振荡器中间的一个开始运作维持稳压器的基本运行需求。但此模式有个问题,就是当发生寄存器复位、寄存器中断或设定睡眠定时器到时时系统又将转到主动模式,此刻的PM1模式下就不再起任何作用。

PM2:在PM2模式下,稳压器的数字部分就会发生关闭,该模式下的高频振荡器的32MHz晶振不运作,且高频振荡器的16MHz RC振荡器也不会运作;此刻由低频振荡器的32KHz晶振和32KHz RC振荡器中间的一个开始运作维持稳压器的基本运行需求。但此模式有个问题,就是当发生寄存器复位、寄存器中断或设定睡眠定时器到时时系统又将转到主动模式,此刻的PM2模式下就不再起任何作用。且当睡眠时间超过3ms时使用此模式。PM1模式和PM2模式最大区别就是稳压器的数字部分是否开启。

PM3:在PM3模式下,稳压器数字部分也会发生关闭,但跟PM2模式有所不同,就是所有的振荡器都不运作。当发生寄存器复位、寄存器中断或设定睡眠定时器到时时系统又将转到主动模式,此刻的PM3模式下就不再起任何作用。PM3用于系统最低功耗的运行模式。

本系统是以8051系列单片机为核心,对单片机设计算法实现对温度湿度数据的分析和调节控制[2]。P0.0端口是连接在两个三极管之间的,它的功能与P1.0、P2.0、P3.0端口的功能不同,只存在下拉的能力,高电平输出时时没有电流通过的,此时表现为高阻态,平时设定的也就是高阻态的模式。当实验过程中如果需要利用 P0 端口时则需要加上拉电阻,使其可以实现输出高电平和低电平的状态,这样系统在工作过程中就可以实时检测到当前实验室的温度、湿度的值,并且及时将这些信息传送给客户端,以达到监控该实验室的温度和湿度的目的,预防火灾以及漏水等现象。.

系统在工作过程中通过客户端发布的实时命令来达到检测当前实验室温度、湿度的值, 并且将检测到的值发给客户端,然后客户端根据实际的值来进行报警或者及时处理。

2.2温度传感器模块

温度传感器DS18B20DS18B20 是美国DALLAS 半导体公司生产的单总线接口的温度传感器。与传统的热电偶传感器相比,大大提高了测量温度的准确度和精度[3]。温度采集模块是采用DS18B20温度传感器,该系列传感器属于IC 温度传感器,它比以往的传感器相比是属于集成电路芯片,可以把测量的温度值通过集成在传感器中的部分模数芯片直接将其转化成数字信号。

温度的采集这块,主要是通过DS18B20 这个直接数字温度传感器。相应的精度分别为0.5℃、0.25℃、0.125℃、0.0625℃。默认的分辨率为12 位。

2.3 湿度传感器模块

之所以选择HTU21系列模块,是因为它的低功耗且体积小,在配置过程中安装比较方便,且其响应速度相对其他的湿度传感器来说比较快,在信号的传输方面抗干扰能力强,在价格方面性价比高,所以本系统的湿度采集模块通过HTU21D湿度传感器来实现,其功能主要完成湿度的采集,并将测试到的模拟信号先转换成数字电信号,然后通过电路传递给主机。但是由于水滴滴在地面上不容易聚集,所以需要找到地面上相对洼的地方,使其聚集,方便信息的采集。

HTU21D湿度传感器可以放置在温度为-40到125度的地方,满足一般实验室的温度环境,且其供电的电压为3.8V,湿度范围为0~100%RH,数字I/O针脚-0.3~VDD+0.3,任何针脚输入电流-10MA~+10MA。在传输SCK和DATA的信号平行距离不超过10cm时会引起串音并导致信号丢失,我们在指定线路VDD或者GND两路数据信号之间使用屏蔽电缆。

因为实验室通常都是置于室内的环境,所以如果室内一旦发生漏水,此时实验室内的水气(绝对湿度)就会达到一定的值,而这时最方便我们测量,湿度传感器就是通过测量空气中湿度达到饱和时的温度,这是热力学的直接结果,准确度高,测量范围宽。

2.4客户端模块

客户端主要是用来监控温度传感器和湿度传感器当前测试的数据,客户端分为PC机端和手机APP端,PC机端通常能够的台式电脑就可以实现,是使用。NET来开发完成,而手机APP端则是通过Andriod软件来开发实现,适用于安卓机。无论使用哪种模式,都需要通过用户登录,用户在登录成功后直接进入到监控界面,点击查看当前温度传感器和湿度传感器的探测值,通过网络跟关联单片机的主机相连,通过测试软件直接读取数据,可以实现实时控制并且可以调取该实验室的监控,详细了解该实验室的安全情况。

2.5 ZigBee无线网络模块

Zigbee技术在硬件网络上来说算是是一种近距离的,并且复杂度比较低、对电子设备的功耗要求也很低、搭建容易的双向无线通讯技术。其主要的功能是方便传输速率不高的数据传输,作用于距离比较短且功耗低的各种电子类设备。本系统因为只是传输传感器检测到的信息,故通信数据量不大并且,数据传输速率也相对较低。且单片机以及单片机上连接的传感器只需要很少的能量,通过无线电波将数据从一个传感器传到单片机上,并能实现传感器与单片机与传感器之间的组网,实现无线传感器网络分布式、自组织和低功耗的特点。数据的发送和接收是通过IEEE802.15.4标准专门定义的三个原语来实现的。IEEE802.15.4标准专门定义了三个与数据相关的原语:数据请求原语(PD-DATA.Request),数据确认原语(PD-DATA.comfirm)和数据指示原语(PD-DATA.Indication),这三个原语实现网络的传送。

3 结束语

本设计主要是以单片机配合温度传感器以及湿度传感器为核心,并且配合ZigBee无线网络,对传感器采集到的温度和濕度信号在单片机上地完成了对应的信号的处理,并能将这些处理后的信息发送到主机上,通过广域网来查看这些信息,该设计具有网络搭建简单、用户易于操作、设计成本低的特点,这样实验室内温度和湿度的监控更方便。

参考文献:

[1] 何淑贤.室内温度和湿度智能调控系统的设计与实现.晋中学院学报,2014.6(3):74-77

[2] 吴永.基于网络的单片机多点温度采集系统的设计[J].计算机测量与制,2010,18(4):959-960.

[3] 沙占友.智能温度传感器的发展趋势[J].电子技术应用,2002(5):6-7.

猜你喜欢

温度传感器内核寄存器
强化『高新』内核 打造农业『硅谷』
Lite寄存器模型的设计与实现
温度传感器DS18B20在温度计设计中的应用
一种高性能CMOS温度传感器
基于嵌入式Linux内核的自恢复设计
Linux内核mmap保护机制研究
XTR105电流变送器在温度传感器中的应用
分簇结构向量寄存器分配策略研究*
温度传感器在笔记本电脑散热系统中的应用
高速数模转换器AD9779/AD9788的应用