技术频道

基于数字传感器的兔舍温湿度监控仪

1引言

  养兔生产是现代畜牧业的重要内容之一,具有投资少、效益高等特点。近年来,随着国际市场的畅通和国内消费市场对兔肉产品需求的加大,肉兔的养殖逐步走向工厂化。但我们发现,在肉兔的养殖过程中,因兔舍的温度和湿度得不到较好的调节,而使肉兔的生长受到不同程度的影响。目前对兔舍的温湿度管理基本还停留在人工操作的水平上,虽然近几年出现了相关的测控设备,但通常的设计方法是多路目标参数经传感器采集后输出模拟量,然后将此模拟量通过数据线输入单片机系统进行A/D转换及相关的处理。这种方法的缺点是由于每一路传感器都需要一根数据线连接到控制主板,因此布线施工麻烦、成本高;另外,由于线路上传输的是模拟信号,因此易受干扰、损耗大。对于大面积的兔舍温湿度监控这些缺点就显得尤为突出。为了提高兔舍管理的智能化水平,我们研制了一套基于数字传感器的温湿度监控仪。

2系统总体设计思路

  本监控仪以微型单片机为控制核心,由检测模块(含温度检测和湿度检测)、信息处理模块和驱动控制模块三大部分组成。整个系统的结构框图如图1所示。


图1 系统结构框图

  整个系统工作时,单片机启动,操作人员可以通过键盘向系统输入所设定的兔舍的温度和湿度范围。布置在兔舍的温湿度传感器采集参数信号后在测量现场直接将其转换为数字信号,经一条双绞线送入控制室中的单片机,然后一方面送显示电路进行显示,另一方面与设定值进行比较,当兔舍内的温度或湿度超出所设定的范围时,单片机系统就会输出指令控制接通相应的设备;当兔舍的温度和湿度都在设定的范围内时就切断执行设备的电源。

3检测电路原理

  温湿度检测电路采用单总线技术设计,只要将一条双绞线从控制室中的单片机拉向兔舍测量现场,然后将各路温湿度传感器挂接在上面就可以了。接口电路如图 2所示。用单片机的并行接口P1.0与单总线连接来实现数据的双向传输。图中每个与单总线直接相连的芯片均有自己的64位ROM注册码,也称之为芯片的 ID号,这个注册码由厂家光刻到芯片内,以确保其唯一的可识别性。这是在单总线上实现定位和寻址通信的关键所在。


图2 检测电路原理图

  3.1温度检测电路

  对兔舍温度信号的检测,本系统选用了DS1825型温度传感器。DS1825是美国DALLAS公司生产的一种低价位、低功耗的单总线式数字温度传感器,测温范围为-55℃~+125℃,在-10℃至+85℃范围内精度为±0.5℃。它不像传统的模拟传感器与微处理器接口时需要信号调理电路和A/D转换电路等,而是可以直接与微处理器总线相连。每片DS1825除具有唯一的64位注册码外,还带有4位定位地址,可以识别系统中特定的温度传感器,缩小了查表范围。

  DS1825与单片机的接口电路如图2所示。在单片机的一根I/O总线上挂接六个DS1825同时进行不同地点的温度测量。为了避免多个传感器同时测温时有重叠的现象,在设计时,我们通过地址输入引脚AD0、AD1、AD2和AD3的不同组合来提供六种工作方式。

  3.2湿度检测电路

  湿度检测电路部分,我们采用了湿度传感器HM1500LF和A/D转换器DS2450的组合设计。HM1500LF是法国HUMIREL公司生产的一种低价位的线性电压输出湿度传感器,它采用HUMIREL专利湿敏电容HS1101设计制造,其测湿范围为0~100%RH,输出电压为1~4VDC,精度为±3%RH(10~95%RH范围),工作温度范围为-30℃~+60℃。DS2450是美国DALLAS公司最新推出的一种符合单总线协议的可组网集成A/D芯片,采用逐次逼近的转换原理,有四个模拟电压输入通道和两种模拟电压输入量程(0V~2.56V和0V~5.12V),一个数据输出口(以 16.3kb/s的速率通信,超速模式可达142kb/s),转换精度可在2~16位之间任意选择,由单5V电源供电,也可采用寄生电源方式供电。

  湿度检测电路如图2所示。六个湿度传感器分别接到一片DS2450的四个模拟电压输入通道A、B、C和D及另一片DS2450的A和B端,两片 DS2450的DATA端分别接到同一根I/O总线上,电路采用+5V电源供电。利用该电路湿度检测信号在测量现场就被直接转换为数字信号,因此 HM1500LF和DS2450组合在一起,就构成了一个单总线数字湿度传感器模块。

4系统控制主板设计

  系统的硬件电路配置如图3所示。


图3 系统硬件电路配置

  监控仪的微处理器选用与MCS-51兼容的ATMEL系列单片机AT89C52,它是低电压,高性能CMOS 8位单片机,片内含8K可反复擦写的Flash只读程序存储器和256字节的随机存取数据存储器。

  LED显示电路和键盘电路由一片8255、一片74HC245、一片MC1413和两片74HC374组成。显示控制的位码由74HC374输出,经 MC1413反向驱动后,作为LED的位选通信号。位选通信号同时作为键盘列扫描码,键盘扫描的行数由74HC245读回,74HC374输出的列扫描码经74HC245读入后,用来判断是否有键按下,以及按下的是什么键。如果没有键按下,由于上拉电阻的作用,经74HC245读回的值为高,如果有键按下,74HC374输出的低电平经过按键被接到74HC245的端口上,这样从74HC245读回的数据就会有低位,根据74HC374输出的列信号和 74HC245读回的行信号,就可以判断哪个键被按下。LED显示的段码由另一片74HC374输出。

  驱动控制电路由驱动器74LS04和固态继电器组成。根据单片机AT89C52输出的执行信号控制着空调机和除湿机的启闭。

5系统软件设计

  系统应用程序采用模块化设计方法。整个软件程序由主程序、中断服务程序以及应用子程序组成,主程序主要完成对系统进行初始化及兔舍初始温度值和湿度值的设定;中断服务程序用来对整个温湿度监控系统进行过程控制。

  5.1数据采集子程序设计

  在温(湿)度采集子程序中,系统首先对DS1825(DS2450)进行初始化,并在线搜索DS1825(DS2450)的注册码,启动A/D转换,读取模拟输入通道的A/D转换值。为了说明其程序设计方法,下面给出了对DS2450操作的软件流程,如图4所示。


图4 DS2450操作软件流程

  5.2软件设计的抗干扰措施

  由于本系统直接放在监控现场使用,而现场环境一般都含有种种噪音和干扰,所以必须对采样值进行数字滤波。考虑到测量对象是变化缓慢的温度参数和湿度参数,本系统采用低通滤波和加权平均滤波两种算法的复合数字滤波技术,其输入输出关系如图5所示。


图5 数字滤波器输入输出关系

  低通滤波法是根据惯性环节的特性建立起来的,其算法为

  

  式中,为滤波系数; X(n)为低通滤波输入值;C(n-1) 为上次低通滤波器输出值; C(n)为本次低通滤波器输出值。

  加权平均滤波法是对连续n次采样值,分别乘上不同的加权系数之后再求累加和,为了突出最新几次采样的效果,加权系数一般先小后大。加权平均滤波的算法为

  

  


6结束语

  在设计中,由于采用了低价位、低功耗的单总线式数字温度传感器和湿度传感器模块来对目标参数进行检测,而且在软件上采取了一定的抗干扰措施,因此,简化了整机的电路结构,降低了其成本和功耗,提高了其检测精度和可靠性。该仪器研制成功后,经过在实际现场反复试验、测试,温度误差小于±0.6℃,相对湿度误差小于±4%RH,试验结果表明,仪器设计合理,性能可靠,完全满足了应用实际的设计要求。

  本文作者创新点:本文将计算机数字传输技术与目前兔舍温湿度监控设备现状相结合,针对现有设备中存在的不足之处,提出了一种新的设计方法,并且采用新型的集成芯片设计出数字式湿度检测模块,配合数字式温度传感器,运用单总线技术设计出一套全数字化温湿度监控仪,为了提高采样数据的可靠性,文中还给出了一种复合数字滤波器的设计。

参考文献

  [1]刘建华,吴秋瑞,硕禾等,基于单总线技术的热量表的研制[J].微计算机信息, 2005,21(5):175-176.

  [2]孟庆浩,翟振铎.恒温库多点温湿度检测系统软硬件设计[J].河北工业大学学报,1997,26(4):102-108.

  [3]潘新民,王燕芳.微型计算机控制技术[M].北京:电子工业出版社,2003.

  [4]王大海. 新型温湿度自动控制系统的设计与应用[J]. 电子工程师,2002,28(3):33-36.

  [5]王幸之,钟爱琴,王雷等. AT89系列单片机原理与接口技术[M].北京:北京航空航天大学出版社,2004.

  [6]Dallas Semiconductor Corporation.Dallas Semiconductor Data Books[Z],1995.

文章版权归西部工控xbgk所有,未经许可不得转载。