智能温度检测仪

2024-10-28

智能温度检测仪(精选7篇)

智能温度检测仪 篇1

1研究背景与意义

温度是物理学中的基本物理量,它表示了物体内分子热运动的剧烈程度,温度只能通过物体随温度变化的特征物理量来间接测量,无法直接获取,对它的精确检测和控制,随着科学的发展越发重要。近年,温度检测发展迅猛,由最初的分散传感集中控制结构,到现在的智能化、简单化的分散控制;由于虚拟技术在智能化仪器中的使用,加速了智能温度检测的发展;以数据采集为基础结构发展的温度传感检测报警器在各类应用中也发挥着举足轻重的作用[1]。然而现有的温度检测技术在稳定性、精确性方面已经不再能够满足科学研究的需求,因此,对检测及算法的研究显得尤为重要。

2系统简介

通过特征物理量的变化来推算出当前的温度值,同时温度的变化是一个渐变量,随着时间的变化不是很剧烈。只有对温度作出更准确的检测判断以及与温度变化能匹配的控制过程,才能为后续其它控制打下可靠的基础。当温度发生变化时,传感器中相应的物理量随之发生相应的变化,经内部电路的处理———转化为相对应的电压或电流值,然后再进行数据处理[1,2],最后推算出所测量的实际温度数值。如果要控制温度值使他达到预设的期望值,就必须选择合适的控制算法和外围硬件。在传统检测算法中,温度控制的精度最主要的是由温度传感器的精度决定的,当然也要考虑后续数字信号处理的精度。粗糙的传感器检测精度,只能获得尚可的控制精度。然而如果在后续信号处理过程采用模糊智能算法,可以减弱粗糙温度传感器引起的控制精度不高这一问题,这也是模糊算法本身的优势,输入量的模糊化以及模糊推理算法,对输入量的精度不需要做特别的要求,也可以获得高精度的控制过程。本文采用模糊算法与传统的PID算法相结合,达到控制高精度的目的。

3系统要求与软硬件构成

温度传感器检测的范围预定为-40℃~100℃,测温精度数值为:±1℃。用户通过按键进行对温度进行目标设定。当传感器的测量值超过预定范围,给出报警信号。为了防止在预定值附近发生乒乓效应,设定冗余偏移量Δ为1℃[3]。报警的方式普通蜂的鸣叫声,同时以四位数码的形式在LED屏显示。如果传感器检测值没有超过预定范围,就参与模糊PID运算,给出控制信号。

根据功能设计,这个系统主要分为下面三个部分:①温度数据采集模块;②数据处理模块;③用户接口模块。

其中温度数据采集模块主要是以DHT11为核心的模块组。它运用单总线方法,接口便利,而且不需要额外的校准。分辨率为8bit,可以满足一般环境温度的检测需要。数据处理模块主要是由AT89S51单片机对DHT11采集到的温度数据进行数据判断处理、计算和推理逻辑操控功能。而用户接口模块主要由按键、LCD1602显示器和蜂鸣警报器构成。按键用来用户设定温度数值,LCD1602显示器用来显示数据,蜂鸣报警器用来提醒用户。

单片机处理收集到的的数据,采用模糊PID算法得到控制信号,同时把温度信号送给显示器以及其他电路。按键电路的主要功能是设置温度预定区间和目标温度值,超出这个区间便会发声报警。另外也有一个复位按键,进行复位操作。而当前的温度值主要由显示电路来完成。

把DHT11的DATA口连接AT89S51的P3.0口,把LCD1602与AT89S51的P0口连接[4],当所测出的温度值不在预设值区间时,蜂鸣器便会蜂鸣报警,原理图如图1所示。

根据功能的所需,软件流程图如图2所示。设计目标是进行对温度的实时检测并结合预设值进行比较,如果在预设值范围内,进行模糊PID运算;当实际温度值超出了预设值范围,则提醒用户进行范围调节,这个时蜂鸣器报警。首先,在刚接上电源时,蜂鸣器首先蜂鸣,这样不仅可以验证蜂鸣器是否能够正常工作的同时,也警示用户检测系统开始工作。接着LCD进入初始化,显示出温度数值,另一方面,结合按键的功能,进行温度预设范围。然后把采集到的数据进行模糊PID处理,最终给出精确控制量,同时对外输出数据。

4结论

本检测系统最大的优点是具有高的性价比,另外,高集成度使得作品体积很小,采用USB方式供电,这样直接的表现就是方便用户的使用,携带。最后整个系统操作非常简单,让它的适用性更广。然而,该作品的缺点任然是精确度问题,一是显示的温度值只能精确到整数部分;二就是检测范围问题,温度检测的范围固定值为-40℃~100℃。

摘要:系统采用数字输出温度传感器DHT11和具备低耗能、高性能的8位单片机——AT89S51以及高集成的LCD1206字符型液晶显示模块、蜂鸣报警器组成温度检测报警器,用户通过按键来设定一个目标温度值,系统检测出实际温度数值,经过噪声滤除处理,与预先设定的温度范围值进行模糊PID运算,并输出控制信号。软件部分包括主程序、显示模块子程序和测温度子程序。

关键词:AT89S51单片机,LCD1206显示器,DHT11传感器

参考文献

[1]李俊.基于单片机的温湿度检测与控制系统研究[J].微计算机信息,2010(21):146-146.

[2]张冬林,李鑫,戴梅.基于DHT11的低成本蚕室温湿度自动控制系统设计[J].现代农业科技,2010(18):14-15.

[3]刘宝元,张玉虹,姜旭,段存丽.基于单片机的温湿度监控系统设计[J].国外电子测量技术,2009(12):77-80,83.

[4]李建民.单片机在温度控制系统中的应用[M].江汉大学学报,1996:210-215.

TLM型智能温度巡测仪 篇2

TLM型智能温度巡测仪采用MCS-51系列单片机控制40点温度轮流显示, 经放大器放大后, 送A/D转化成数字量, 经I/O口送到单片机进行计算处理, 显示温度值, 可以任意设定各通道的热电阻、热电偶分度号及上下限报警值。

2 智能温度巡测仪工作指标及操作系统

2.1 仪器主要特征及技术指标

测温范围:

仪表测试精度:0.5级

仪表报警精度:显示温度±1个字

显示方式:报警点-用红色发光二极管显示

测量通道号-用两位LED显示

测量温度-用四位LED显示

报警方式:音响信号动作5妙左右自动复位。以后检测该路越限时, 自动封铃, 但其它通道越限时, 仍有音响信号。

报警指示:红色发光二极管指示各路的报警点。越限时, 发光二极管亮, 复限时自动熄灭。

消耗功率:≤15W

2.2 系统原理

TLM型智能温度巡测仪采用MCS-51系列单片机控制40点温度轮流显示, 经放大器放大后, 送A/D转化成数字量, 经I/O口送到单片机进行计算处理, 显示温度值, 送出报警信号, 其中热电阻和热电偶信号是分开的, 恒流源是由单片机根据被测通道上所接测温元件的分度号来控制的, 当被测通道上接的是热电偶时, 单片机切断恒流源, 当被测通道上接的是热电阻时, 单片机接通恒流源。

2.2.1 MCS-51系列单片机包括8051、8751、和8031这三个基本的产品, 还包括8052、8032等改进型产品, 它们的引脚和指令系统完全兼容, 仅在内部结构和应用特性方面存在微小差异。8051的内部结构中包括一个八位数的微处理器, 128个字节的RAM、4K字节的ROM、一个全双工串行口、两个16位的定时器/计数器等;单片的8051就是一个完善的微型计算机。8751是以内部4K字节的EPROM代替8051内部结构的ROM。8031内部结构没有ROM, 但外接一片EPROM就相当于8051, 它具有功能强、价格低、使用灵活、开发方便等特点, 适合在我国推广应用。MCS-51系列单片机功能部件包括微处理器、存储器和I/O端口等, 它们通过内部总线紧密的联系在一起。

2.2.2 MCS-51单片机是在一块芯片中集成了CPU, RAM, ROM、定时器/计数器和多种功能的I/O线等一台计算机所需要的基本功能部件。MCS-51单片机内包含下列几个部件:◆一个8位CPU;◆一个片内振荡器及时钟电路;◆4K字节ROM程序存储器;◆128字节RAM数据存储器;◆两个16位定时器/计数器;◆可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路;◆32条可编程的I/O线 (四个8位并行I/O端口) ;◆一个可编程全双工串行口;◆具有五个中断源、两个优先级嵌套中断结构。

2.2.3 放大器由组件OP07构成, OP07芯片是一种低噪声, 非斩波稳零的双极性运算放大器集成电路。由于OP07具有非常低的输入失调电压 (对于OP07A最大为25μV) , 所以OP07在很多应用场合不需要额外的调零措施。OP07同时具有输入偏置电流低 (OP07A为±2n A) 和开环增益高 (对于OP07A为300V/m V) 的特点, 这种低失调、高开环增益的特性使得OP07特别适用于高增益的测量设备和放大传感器的微弱信号等方面。

3 智能温度巡测仪内部结构

3.1 微处理器单元

微处理器单元是单片机内部的核心部件, 由它读入用户程序, 并逐条执行命令, 它由运算器模块和控制器模块组成。其中运算器模块是实现数据的算术和逻辑运算, 位变量处理和数据传送控制等。控制器模块是单片机的心脏, 由它产生执行指令的操作时序。

3.2 存储器

存储器包括程序存储器和数据存储器, 这两类储存空间是相互独立的, 物理结构也不同。程序存储器为只读存储器, 数据存储器为随机存取存储器。MCS-51系列单片机有128个字节的随机存取存储器RAM, 它们可以作为数据缓冲器, 堆栈、工作寄存器或软件标志寄存器等。CPU对内部RAM有丰富的操作指令。可以在P0口和P2口上外接随机存取存储器RAM, 以扩展数据存储器的容量。

3.3 I/O端口

MCS-51单片机有四个双向的8位并行端口, 每个口都包含有一个锁存器, 一个输出驱动和输入缓冲器。各I/O端口的每位锁存器均由D触发器组成, 在CPU的“写锁存器”信号的驱动下, 可将内部总线上的信息写入锁存器中。

4 智能温度巡测仪维护与故障修理

4.1 维护

4.1.1 仪表应尽可能远离强电磁场和振动源。

4.1.2 仪表的输入信号线要远离交流电源线。

4.1.3 仪表每过半年或一年要重新校正一次。

4.2 故障修理

随Á着我国国民经济的迅速发展与巡测仪高精度技术优势的发展, 使玻璃温度计越来越适应不了检测诸如干燥箱、热老化试验箱、水泥、混凝土、电焊条养护箱、生化培养箱等温度的动态测量、自动化及智能化发展的趋势。TLM型智能温度巡测仪在实际应用中工作性能稳定、测量温度准确、精度较高, 适用范围广泛可以单独使用作为监控仪, 应用于厂房测量各部分的工作温度, 也可以作为智能控制系统的一部分, 与其他设备协同工作。

摘要:TLM型智能温度巡测仪采用MCS-51系列单片机控制多点温度轮流显示, 可任意设定各通道的热电阻、热电偶分度好及上下限报警值, 报警时各路是有发光二极管指示。

关键词:TLM型温度巡测仪,控制温度,热电阻,热电偶

参考文献

[1]沙占友, 沙占文, 高俊岭.新型数字万用表原理与维修[J].电子工业出版社, 1994 (8) .

智能温度检测仪 篇3

1系统组成

本系统采用ATmega16为控制核心,该芯片内部的Flsah、EEPROM、SRAM容量较大,具有多种频率的内部RC振荡器、上电自动复位、看门狗、启动延时等功能,大大简化了硬件设计,提高了系统的可靠性.减少了对印制电路板的空间要求,降低了成本和系统功耗。

DS18B20为前端温度检测元件,其采用了单总线接口技术。信息的读出与写入仅需要一根口线即可。 其供电范围为3-5.5V, 且提供了寄生供电模式,可以从数据线获取供电电源,以便进一步简化CPU与DS18B20之间的硬件连接,使得系统结构更加简单可靠。

显示模块可以对各个DS18B20地址和温度进行巡回显示。硬件方面采用3位数码管显示,采用2片74HC595驱动该数码管,硬件电路简单,成本较低。

本系统还增加了隔离485通信模块,此模块可以跟上位机建立联系,方便上位机实时监测各测量点的温度。

2 DS18B20温度实现

2.1 DS18B20读写操作

1)复位操作

2)写操作

当单片机把数据线从高逻辑电平拉至低逻辑电平时,产生写时间片。有两种写时间片:写1时间片和写0时间片。所有写时间片必须有最短为60us的持续期,在各写周期之间必须有最短1us的恢复时间。

在I/O线由高电平变为低电平之后,DS1821在15-60us的窗口之间对I/O线采样。如果线为高电平, 写1就发生。如果线为低电平,便发生写0。

3)读操作

当单片机把数据线从高逻辑电平拉至低逻辑电平时,产生读时间片。数据线必须保持在低电平至少1us;来自DS1821的数据在读时间片下降沿15us有效。因此,为了读出从读时间片开始算起15us的状态主机必须停止把I/O引脚驱动至低电平。在读时间片结束时,I/O引脚经过外部的上拉电阻拉回至高电平。所有读时间片的最短持续期限为60us,各个读时间片之间必须有最短为1us的恢复时间。

2.2单线多点通信协议

单线总线是一种在一条总线(即一根I/O口线)上, 具有单主机、多从机结构的总线系统。为了不引起逻辑上的冲突,所有从机系统的单线总线接口都必须是漏极开路的,从而实现多个从机系统输出信号在总线上实现“线与”,因此在使用时必须对总线外接上拉电阻。

为保证数据的完整性,所有的单线总线器件都要遵循严格的通信协议:包括复位脉冲、应答脉冲、写时序以及读时序等信号类型。所有的单线总线命令序列(如初始化、ROM命令、寄存器读写命令等)都是由这些基本的信号类型组成的。在这些信号中,除了应答脉冲外,其它均由主机发出,并且值得注意的是: 发送的所有命令和数据都是字节的低位在前。

2.3 DS18B20 ROM码的搜索算法

2.3.1 ROM码的搜索原理

根据单线总线协议,当主机发出搜索ROM命令后, 从机应答时从64位ROM码的最低位开始,先发送原码,然后发送该位的补码,之后主机写入1位数据, ROM码最低位与此数据相同的DS18B20继续应答, 反之则不再应答,如此循环“读2位、写1位”的过程,直至读到一个完整ROM码为止,然后复位总线,进行下一次搜索。下面对读、写进行具体分析。

1)读 2 位

由于主机发出搜索命令后,所有从机都会将自己ROM码的第一位(最低位)的原码和补码放到总线上, 那么就有下面四种情况:

2)写 1 位

主机写1位的目的是为了排除和定位,具体要写入什么数据需要根据读2位的结果而定:

11:表明无器件则结束搜索过程

01:表明所有器件该位相同,写入0

10:表明所有器件该位相同,写入1

00:表明总线上的器件在该位上数据发生冲突, 此时,写入1位数据具有“排除”的作用,如果器件ROM码在该位上的数据与写入的数据相同,则继续保持与总线的联系,如果不同则此器件在本次搜索中从总线上“排除”,不在响应主机发布的命令,直到主机进行下一次复位。

2.3.2 ROM码的搜索策略

由上图所知,只有遇到读2位为“00”时才会出现分叉,这也是搜索的关键所在。每一次搜索由根(即开始节点)沿树的一条路径进行,直到叶子(最后一位ROM码),读回一个ROM码,为了确保每次搜索所选路径不同,必须对所经过的分叉进行记录。具体规则为:

(1)复位总线,发送ROM搜索命令。

(2)按读2位、写1位的方式进行,寻找“00” 读码。在读到“00”之前若为“01”或“10”,直接记录对应位ROM码,并写入该原码;若为“11”, 退出搜索。

(3)第一次搜索读到“00”时,先全部都写0, 选择ROM码为0的路径,将最高“00”读码(即图中最接近叶子)位置记录并保存下来为“最高00位”。

(4)之后每次搜索中,遇到“00”读码后,比较此位与“最高00位”的位置,若在“最高00位”之前, 则一律写上一次搜索在此位置写入的值;若位置相同, 则写1;若在之后则写0。

每一次搜索完成后,要将“最高00位”更新为本次搜索中写0的最高“00”读码位置,这也是最为重要的一步。

(5)当“最高00位”更新为0,即已到树的根部, 则表明已搜索完全部ROM码,过程结束。

2.3.3单线多点功能实现

DS18B20的存储器由一个高速暂存RAM和一个非易失性、电可擦除(E2)RAM组成。后者存储高温度和低温度触发器TH和TL。暂存存储器有助于在单线通信时确保数据的完整性。数据首先写入暂存存储器,在那里它可以被读回,当数据被校验之后, 复制暂存存储器的命令把数据传送到非易失性(E2) RAM中。这一过程确保了更改存储器时数据的完成性。

暂存存储器是按8位字节存储器来组织的。头两个字节包含测得温度信息。第三和第四字节是TH和TL的非易失性拷贝,每一次上电时被刷新。接着两个字节没有使用,但是在读回时,它们呈现全逻辑1。 第七第八字节是计数寄存器,它们可获得较高的温度分辨率。第九个字节是前面8个字节的CRC值。

利用DS18B20的E2RAM, 提前为DS18B20做好编号, 例如1、2、3等, 写到DS18B20的E2RAM中,多点测温时,通过ROM搜索得到各个DS18B20的ROM码,并根据事先写入的编号,进行重新排序,将DS18B20的ROM码与器件对应的物理位置对应起来。

2.3.4软件实现

3结语

DS18B20集温度测量、AD转换为一身,具有体积小、动态范围宽、测量精度高、单总线结构等优点, 能较好地解决热敏电阻可靠性差、测量温度准确率低等缺点。可广泛应用于工业控制中的各种温度监测。 而单总线结构具有很强的扩展性,可以组建多点测温监测网络,因此,这种测温系统具有很强的实用价值。

摘要:系统采用数字温度传感器DS18B20和Mega16单片机为核心构成该智能温度检测仪。该检测仪可同时对20路温度信号进行在线巡回检测,通信距离最大可达100米。同时具有继电器输出、与上位机进行通信的功能。本系统构成简单,精度高,应用范围广。

关键词:温度,智能巡检,单片机

参考文献

[1]江世民.基于DS18B20的智能温度测量装置邵阳学院学报(自然科学版),2004(4)27-30

[2]廖琪梅,韩彬等基于单总线器件DS18B20的温度测量仪.国外电子元器件,2008(2):24-26

恒温箱温度检测仪的设计 篇4

1 系统设计

本设计的微处理器采用TI公司的MSP430F449。MSP系列单片机是目前市场化最成功的专用于低功耗设计的处理器, 在有关节能环保、智能家居以及手持设备等领域应用广泛。MSP430F449是一款性能卓越的16位单片机, 具有超低的静态电流, 灵活多变的时钟配置方式, 多达5种的低功耗模式, 最快可达6 us的唤醒时间以及丰富的外设等众多优异性能[1]。该型号单片机完全能够满足本设计对性能的要求, 且具有较高的性价比。

温度传感器选用的是一款低功耗数字温度传感器, 同样来自TI公司的TMP102。在温度为-25℃~+85℃的范围之内时, 精度为0.5℃, 由于环境温度是个缓变量, 并且温度在0.5℃之内变化时电子设备质量不会发生变化, 因此精度也满足要求。输出的温度值是数字信号, 简化了与CPU之间的电路, 同时其封装为SOT563, 包含引脚在内的厚度仅为0.6 mm, 缩小了产品的体积。

在温度采集过程中会产生大量的数据, 需要有专门的外部存储器进行保存。SST25VF032B是微芯公司推出的Flash存储器, 具有4 MByte存储容量、SPI串行通信接口、灵活的擦除策略以及快速的擦除与访问能力。

此外, 还有程序仿真下载接口、按键输入部分、射频通信部分、电源部分。系统框图如图1。

2 温度采集设计

2.1 温度值的采集

TMP102采用的是Two-Wire通信方式。内部含有五个寄存器, 分别为Pointer寄存器、温度寄存器、配置寄存器、TLOW寄存器和THIGH寄存器。通过对Pointer寄存器的设置来决定下一步CPU访问其他四个寄存器的哪一个。该传感器具有两种温度数据格式, 13 bit与12 bit, 两种格式的分辨率一样, 只是13 bit的高温范围为150℃, 高于12 bit的128℃。当环境温度到达100℃的高温时, 早已超过了设备正常运行的范围, 所以12 bit的数据格式已能满足需求。TMP102具有四种不同的转换速率, 由控制寄存器中的CR1、CR0两位来决定, 本设计将其设置成最快的8 Hz, 利于提高采样速度。完备的警告功能是该芯片的一个特色, 可以通过修改TLOW寄存器和THIGH寄存器的值, 设置正常温度范围的上下限, 当超出这一范围时, 外围管脚ALERT电平会发生变化。此外, TMP102作为Two-Wire通信中的从设备, 根据A0管脚的接法不同, 具有四种从设备地址[2]。本设计中将A0管脚与V+管脚连接, 因此从设备地址为二进制数1001001。

在读取温度值的过程中, 首先需要发送0x93, 前七位表示从设备地址, 最后一位设置接下来的操作是读还是写, ‘1’表示为读。当成功接收到TMP102的握手信号后, CPU需要准备接收两个字节的温度值。

如果需要修改某个寄存器的值, 主机首先需要发送0x92, 最后一位‘0’表示要写。随后的一个字节发送的是Pointer寄存器的值, 最后两位P1、P0的值决定了要修改的寄存器。紧接着就需要发送要修改的值。因此读取温度之前如果有修改寄存器的操作, 需要首先将P1、P0的值改为默认的00, 表示之后操作的是温度寄存器。

2.2 温度值的数据处理

TMP102分辨率可达0.062 5℃。当温度值数据格式为12 bit时, 采集的范围为-55℃~128℃。温度寄存器分为两个字节, 12位的数据分别存放于高字节与低字节的前4位。Two-wire协议接收的时候是单个字节接收的, 所以首先需要通过高字节左移8位与低字节相加的方法, 将两个字节的数据存入一个16位的变量中。此时温度值占据的是变量的高12位, 将其右移4位便于数据处理。通过实测发现, 环境实际温度与传感器检测的数据有一个极其微小的差距, 所以需要在最后的数据上添加上这个微小的偏差。

TMP102温度值采用的是补码形式, 为了满足显示的需要, 此处将补码转化成BCD码, 并须有正负的信息。需要五个字节来存放最后的数据, 一个字节存放正负信息, 0表示正数, 1表示负数, 两个存放整数部分的BCD码, 一个存放小数部分的BCD码。程序处理过程中, 通过12位中的最高位来判断正负, 负数需要将补码转为原码。无论正负, 将原码乘以分辨率0.062 5℃, 结果转化为BCD码。程序流程如图2。

3 温度值的存取设计

3.1 SST25VF032B的访问

SST25VF032B的通信方式为SPI, 具有多达17种命令, 功能丰富。

SST25VF032B的读命令有两个, Read与High-SpeedRead。Read的读取速度为25 MHz, 而High-Speed-Read可达80 MHz, 远远超过一般单片机的访问速度。还有一个特点, 读命令是可以连续读的, 地址为自动增加, 一直到片选信号CE#变为高电平截止, 大大增强了访问的速度。当读取完整个Flash最后一个地址的字节后, Flash会自动返回输出第一个地址的数据。进行读操作时, 首先主机向设备发送0x0B, 随后发送三个字节的起始地址, 以及紧跟一个无效的字节。之后便可以依序接收数据。

SST25VF032B具有灵活的写保护功能。管脚WP#与状态寄存器里面的BPL、BP3、BP2、BP1与BP0五个位共同实现写保护功能。当WP#输入为高, 处于写保护状态, 同时禁止任何对BPL、BP3、BP2、BP1与BP0的修改。当WP#输入为低, 可以修改BPL位。BPL位决定了主机是否可以修改BP3、BP2、BP1、BP0, BPL位为1时候, 禁止修改。BP3、BP2、BP1、BP0四位决定了写保护的范围。当为十进制0时, 整个Flash没有写保护, 此时可以对其进行擦除与写操作。为十进制数1时, 只保护Flash的1/64, 即地址3F0000H~3FFFFFH。为十进制2~7时候, 分别保护Flash的1/32、1/16……直到全部[3]。当进行写与擦除操作之前, 需要断开WP#硬件保护及取消状态寄存器的软件保护。

擦除是SST25VF032B的一个特色。具有四种擦除机制。可以分别以整块、4 KByte扇区、32 KByte块、64 KByte块为单位进行擦除。经过对本设计要求的分析, 主要采取4 KByte扇区擦除的方式。这样整个Flash就被分成了4M/4K=1 024个扇区, 每个扇区中有4 096个字节。整个Flash共有4M个字节, 地址需要占用24位, 字节地址的高12位表示扇区地址。在擦除过程中, 状态寄存器的BUSY位为1, 当成为0时表示擦除操作完成。

进行擦除操作之前, 需置WP#管脚为低, 同时发送读取状态寄存器命令RDSR, 确认BUSY为0以及WEL (写使能位) 为1。当不满足要求时, 发送EWSR (使能状态寄存器修改) 命令, 允许修改状态寄存器。通过WRSR命令写入0x00, BPL、BP3、BP2、BP1、BP0为0, 解开软硬件的写保护。接着需要发送WREN (写使能) 命令, 设备会将WEL位置1。最后读取状态寄存器的值, 看值是否为0x02, 如果不是, 重复上述操作, 直到修改成功。此时可以发送扇区擦除命令0x20, 其后跟着三个字节的地址, 设备只取前12位为扇区地址。之后不断检测BUSY位, 当变为0时, 整个擦除过程结束。

写命令有Byte-Program与AAI两种, 第一种每次可以写入一个字节, AAI为地址自动增加写命令。AAI每次可写入两个字节, 当Flash存入这两个数之后, 主机可以连续发送下两个字节, 而不需重新输入地址, 加快了速度。但这两个字节存放的地址是对齐的, 即第一个字节存放的地址最后一位为0, 第二个字节存放的地址最后一位为1。与擦除命令之前的准备工作一样, 写操作也需要完成对状态寄存器同样的设置。

3.2 创新的温度值的存取机制

为了满足多样化的设置需求, 本检测仪可以通过上位机来设置采集启动时间、采集间隔。要求存储多种数据, 同时为了以后历史数据查询的方便, 需要设计合理的数据存储策略。

每次上位机传下来新的采集时间间隔, 检测仪需要按照新的配置重新启动一次新的任务。此时, 数据存储从新的一个扇区开始。首先需用Sector-Erase命令将这一扇区擦除。每个任务的开头需要存放的信息有任务起始时间 (年、月、日、时、分、秒) 、温度采集间隔 (时、分、秒) , 分别占用16个字节、6个字节、3个字节。每个温度值需占用2个字节。温度值为从温度传感器TMP102读取回来, 右移四位, 并加上偏差值的数据。温度值采用AAI命令写入, 其他数据采用Byte-Program命令。

我们搜索某次任务的温度值时, 只需要检测每个扇区开头的任务起始时间就可以检索到相应的历史数据。但一次任务所占空间可能会超出一个扇区。占据多个扇区的任务只有它所占据的第一个扇区的开头是任务起始时间, 而其他扇区是温度值。这就给检索造成了障碍。我们定义在每次任务的开头首先存入0x AA, 表示一次任务的开头。在整个任务的结尾存入0x55, 表示一次任务的结束。通过这样的设置, 可以支持上位机多种的搜索需求。可以查找某次任务的温度数据, 也可以查找某次任务某一时刻的温度数据, 还可以查找异常值等等。数据存储的流程图如图3所示, 查找某次任务的温度数据程序流程图如图4所示。

4 测试结果

以一次时间较短的、间隔较长的任务为例来对本系统进行测试。假设启动时间设置为2015年1月1日15点整, 每隔3秒采集一次数据, 采集1分钟, 即一共采集20个数据。在这一分钟之内, 采用改变温度传感器周围的环境温度的办法来检测温度检测仪是否能正常工作。先迅速加热, 之后降温。采集的温度值首先存入到Flash中, 再从Flash中读取出来。图5所示为IAR开发工具的一个截图, 所示为内部RAM的数据, 黑色部分为采集回的数据, 共51个字节。

将温度值提取出来, 乘以分辨率0.062 5℃, 保留小数点后1位, 四舍五入, 整理成波形如图6所示。可以明显的看出温度变化趋势, 首先是18.3℃的室温, 之后先升后降, 由于时间较短, 最后温度没有降到室温。

5 结论与展望

本设计中采用MSP430F449作为系统的CPU, 利于以后的低功耗设计。对温度传感器TMP102以及Flash SST25VF032B做了详细的研究, 根据本项目实际要求, 充分利用了这两者的功能。对温度传感器采集回来的数据进行了科学有效的处理, 并设计了合理的存储机制, 充分利用了FLASH的存储空间, 满足了上位机对数据搜索快速、多样灵活的要求。

摘要:为了满足电子设备恒温箱对温度实时监测的要求, 设计了一个功能丰富的温度检测仪。选取了MSP430F449作为CPU。对微型的温度传感器TMP102以及Flash存储器SST25VF032B做了详细的分析, 并根据实际需求对芯片的功能进行了适当的取舍。将采集回的温度数据进行分析处理, 提出了创新的温度值存储机制, 形成合理的文件系统, 可以快速检索历史数据, 实现了多样化的数据查找方式。

关键词:温度检测仪,TMP102,Flash存储器

参考文献

[1]沈建华, 杨艳琴.MSP430系列16位超低功耗单片机原理与实践[M].北京:北京航空航天大学出版社, 2008:26-30.

[2]Low Power Digital Temperature Sensor With SMBus?/Two-Wire Serial Interface in SOT563[EB/OL].Texas Instruments, 2007.

电池温度智能监测系统设计 篇5

关键词:电池温度,无线传输,DS18B20,热敏电阻

蓄电池作为一种供电方便、安全可靠的直流电源, 在电力、通信、军事等领域中得到了广泛的应用。温度是蓄电池的一个重要参数, 它可以间接地反映电池的性能状况, 并且根据此温度参数可以对电池进行智能化管理, 以延长电池的寿命。在蓄电池组充放电维护及工作工程中, 电池内部产生的热量会引起电池的温度发生变化, 尤其是蓄电池过充电、电池内部电解液发生异常变化等原因均可能造成电池温度过高而造成电池损坏。传统上用人工定时测量的方法, 劳动强度大、测量精度差, 工作环境恶劣, 尤其是不能及时发现异常单体电池, 容易导致单体电池损坏, 甚至导致整组电池故障或损坏;基于总线结构的有线多点温度监测系统, 能够实现温度的智能化测量, 但存在布线繁多复杂、维护扩展困难等不足。鉴于此, 设计了一种基于单总线温度传感器和无线收发模块的电池温度无线监测系统, 能够有效地克服热敏电阻测温和总线结构控制系统的不足, 有利于提高蓄电池性能监测的智能化水平。

1 单总线温度传感器DS18B20[1,2,3]

1.1 DS18B20 芯片特性

DS18B20数字温度传感器是美国DALLAS半导体公司生产的新一代适配微处理器的智能温度传感器, 它将温度传感器、A/D转换器、寄存器及接口电路集成在一个芯片中, 采用1-wire总线协议, 可直接数字化输出、测试。与其他温度传感器相比, 具有以下主要特性:采用独特的单线接口技术, 与微处理器相连仅需一根端口线即可实现双向通信, 占用微处理器的端口较少, 可接收大量的引线和逻辑电路;使用中不需要任何外围电路, 全部传感元件及转换电路都集成在形如一只三极管的集成电路内;测温范围-55~+125 ℃, 精度可达±0.5 ℃, 可编程9~12位A/D转换精度, 测温分辨率可达0.062 5 ℃, 可实现高精度测温;测量结果直接输出数字温度信号, 同时可传送CRC校验码, 具有极强的抗干扰纠错能力;支持多点组网功能, 多个DS18B20可挂在总线上, 实现组网多点测温。适应电压范围宽:3.0~5.5 V, 在寄电源方式下可由数据线供电;DS18B20与单片机连接如图1所示, 单总线器件只有一根数据线, 系统中的数据交换、控制都在这根线上完成, 单总线上外接一个4.7 Ω的上拉电阻, 以保证总线空闲时, 状态为高电平。

1.2 DS18B20 的控制时序

DS18B20与微处理器间采用的是串行数据传送, 在对其进行读写编程时, 必须严格保证读写时序, 否则将无法读取测温结果。DS18B20控制时序主要包括初始化时序、读操作时序和写操作时序[4], 如图2所示。

(1) 初始化时序。

时序见图2 (a) , 主机总线t0时刻发送一复位脉冲 (最短为480 μs 的低电平信号) 接着在t1时刻释放总线并进入接收状态, DS18B20在检测到总线的上升沿之后等待15~60 μs , 接着DS18B20在t2时刻发出存在脉冲 (低电平持续60~240 μs) , 如图中虚线所示。

(2) 写操作时序。

当主机总线t0 时刻从高拉至低电平时, 就产生写时间隙。从t0 时刻开始15 μs之内应将所需写的位送到总线上, DS18B20在t0后15~60 μs间对总线采样, 若低电平写入的位是0, 若高电平写入的位是1, 连续写2位的间隙应大于1 μs , 见图2 (b) 。

(3) 读操作时序。

当主机总线t0时刻从高拉至低电平时, 总线只需保持低电平6~10 μs 之后, 在t1时刻将总线拉高, 产生读时间隙, 读时间隙在t1时刻后到t2 时刻前有效, t2~t0为15 μs, 也就是说, 在t2时刻前主机必须完成读位, 并在t0后的60~120 μs内释放总线, 见图2 (c) 。

2 系统硬件结构

监测系统主要由温度监测节点、主控单元和上位机等3部分组成, 系统结构如图3所示。温度监测节点分布在蓄电池组的各个单体电池上, 采集各单体电池的温度信息, 通过无线网络传输给主控单元;主控单元与所有监测节点进行通信, 接收上位机的命令和来自监测节点的温度信息, 并将温度信息上报上位机;上位机实时显示蓄电池的温度信息, 并对数据进行分析处理, 根据设定的报警门限启动告警程序, 及时发现异常电池。

2.1 温度监测节点设计

温度监测节点的功能是完成对单体电池的温度信息采集、处理和无线数据传输。采用单片机控制无线收发芯片nRF2401和单总线数字温度传感器DS18B20来实现温度的智能测量, 主要包括单片机系统、温度采集电路、无线收发电路、显示电路、告警电路和电源等组成, 其硬件结构如图4所示。

DS18B20测温电路如图1所示, 用热传导的粘合剂将DS18B20粘附在蓄电池的表明, 管芯温度与表面温度之差大约在0.2 ℃之内[5]。利用nRF2401无线收发芯片实现无线传输, nRF2401 是一个单片集成接收、发射器的芯片, 工作频率范围为全球开放的2.4 GHz 频段。它内置了先入先出堆栈区、地址解码器、解调处理器、GFSK滤波器、时钟处理器、频率合成器, 低噪声放大器、功率放大器等功能模块, 需要很少的外围元件, 使用起来非常方便。在本系统中nRf2401 通过P2 口与单片机进行通信, AT89S51 的P2.0 和P2.1 口分别与nRF2401 的CLK1, DATA 相连接。nRf2401 的CS 是片选端, CE 是发送或接收控制端, PWR_UP 是电源控制端, 分别由单片机的P2.3, P2.4 和P2.5 引脚控制。nRF2401 的DR1 为高时表明在接收缓冲区有数据, 接单片机的P2.2[6,7,8] 。

由于nRF2401 的供电电压范围为1.9~3.6 V , 而AT89S51 单片机的供电电压是5 V, 为了使芯片正常工作, 需要进行电平转换和分压处理, 设计采用MAXIM 公司的MAX884 芯片进行5 V到3.3 V 电平转换, 如图5所示。

2.2 主控单元设计

主控单元和监测节点组成无线网路, 通过主控单元实现上位机和监测单元的数据通信。主控单元的基本结构和监测单元类似, 主要由单片机系统、无线收发模块、显示电路、串行通信电路及电源等组成。

串口是计算机上一种非常通用设备通信的协议, 大多数计算机包含2个基于RS 232的串口, PC的串行口是RS 232C电平, 而单片机的串行口是TTL电平, 两者之间通过串口通信时, 必须进行电平转换, 设计运用MAX232A芯片完成单片机与PC之间的数据传输, 硬件连接电路如图6所示[9]。

3 控制程序设计

系统控制程序主要由单总线测温控制程序、无线收发控制程序和上位机监测程序等组成。单总线测温程序负责单总线设备初始化、采集电池温度并传送给nRF2401模块;无线收发控制程序主要功能是负责无线网络的组建和数据信息的无线传送;上位机监测程序的主要功能是通过串口和主控单元进行数据通信, 实时显示并存储数据信息。以监测节点为例, 图7是监测单元的程序流程图, 监测单元首先进行初始化, 主要包括单片机系统的通信、中断及定时的初始化等, 然后采集单体电池的温度信息、保存并用数码管显示, 实时监测主控单元的数据传送命令, 如果有就将电池的温度数据通过无线模块发送出去。

4 试验结果

设计了试验样机, 监测节点试验电路实物如图8所示, 在室内进行了温度测试, 采用4个监测节点, 分别在距离主控单元4 m, 8 m, 12 m的距离进行了试验, 试验数据如表1所示。

从表1可以看出, 温度的测量精度可达±0.3 ℃, 无线传输的准确率较高, 能够满足无线温度监测的需要。

5 结 语

本文针对蓄电池组中单体电池的温度监测问题, 设计了基于DS18B20数字温度传感器和无线收发芯片组成的远程无线监测系统。系统由上位机、主控单元和多个监测单节点组成, 主控单元通过串口与上位机进行通信。与传统的有线多点温度测量系统相比, 具有布设、扩展、维护及更新方便等特点, 有一定工程实际应用价值。

参考文献

[1]张军.智能温度传感器DS18B20及其应用[J].仪表技术, 2010 (4) :68-70.

[2]江世明, 刘先任.基于DS18B20的智能温度测量装置[J].邵阳学院学报, 2004 (4) :28-30.

[3]王守中.51单片机开发入门与典型实例[M].北京:人民邮电出版社, 2008.

[4]刘长勇, 叶希梅.基于DS18B20的温度测量装置的设计[J].鲁东大学学报, 2009, 25 (3) :225-228.

[5]钱江, 凌朝东.智能型的铅酸蓄电池管理系统[J].单片机与嵌入式系统应用, 2009 (4) :56-58.

[6]王晓红.基于nRF2401的无线数据传输系统[J].太原师范学院学报, 2006, 15 (1) :64-66.

[7]朱颖莉, 罗玉峰, 刘玉莹.基于nRF2401的滚动轴承振动检测系统的设计[J].工矿自动化, 2009 (8) :129-131.

[8]丁彦闯, 韦佳宏, 刘光哲.基于nRF2401的分布式测温系统设计[J].电子测量技术, 2008, 31 (12) :107-109.

温室温度智能测控系统的设计 篇6

在现代农业中, 温室已经不是单纯用于为作物升温的设施, 而是根据作物的要求来调节或保障作物生长条件的设施。其中, 对温室温度的调节为主要因素之一, 无论是升温还是降温, 都需要相应的设施。冬季温室内温度过低时, 仅利用太阳能来升温明显不足, 因此温室内必须增加加热设备来升温;夏季太阳能又过分充足, 温室温度过高, 使温室的降温和植物的光合作用对阳光的需求形成矛盾, 因此必须增加制冷设备来降温。

国外温室的内部设施已经发展到比较完备的程度, 并形成了一定的标准。国内有关温室环境测控方面的研究起步较晚。目前国内的温室测控设备, 无论在智能化程度还是控制策略方面都不能和发达国家相比, 而进口的测控设备由于能耗大、价格高并不能完全适应我国农业生产的要求。因此, 开发符合我国国情的温室温度智能测控系统, 对提高我国温室产品质量、温室经济效益和生产现代化水平具有重要意义。

本文立足国情, 基于我国不同类型温室经营者的经济和技术水平, 研制开发出一种价格适中、扩展性好的多因子温室温度智能测控系统。其主要是根据外界环境的温度、湿度、光照以及风速、风向、雨量等气候因子, 基于温室专家系统和用户参数设定, 通过一些控制措施来调节温室内的温度, 创造出适合作物生长的温度, 即根据作物不同生长阶段的需求制定出检测标准, 通过对温室温度的实时检测, 将测得参数进行比较后自动调整温室各个控制设备状态, 以使温室温度符合既定要求。它能够有效地改善农业生态、生产条件, 促进农业资源的科学开发和合理利用, 提高土地产出率、劳动生产率和社会、经济效益。

1 系统整体框图

温室生态环境优良的依据, 是按不同植物生长的要求进行统筹优化后制定的。由植物生长不同阶段的需求制定出监测的标准, 对温室温度环境进行监测, 将测得参数进行比较后进行调整。

温室温度智能测控系统主要由以下几个部分组成:

(1) 温度信号采集电路:主要通过传感器DS18B20进行温室温度检测。

(2) 信号处理部分:核心元件是单片机AT89C52, 整个系统主要是通过AT89C52按照所编的程序进行相应控制的。

(3) 输出及控制部分:主要控制升、降温电路, 声光报警电路, 还有控制遮阳网、喷雾系统、水幕墙系统、窗的开关等系统的电路。

系统整体框图如图1所示。其主要的工作原理为:系统由温度设定按键来调节预设温度, 通过温度信号采集电路测得温室内的温度, 将数据输送到单片机AT89C52中, 然后按照所编程序进行实时决策, 对各参数进行实时控制、调节, 输出控制参数, 驱动执行元件, 以满足作物生长需要。

2 系统硬件组成

整个系统硬件部分主要包括核心元件AT89C52、温度信号采集电路 (主要通过传感器DS18B20进行温室温度检测) 、加热电路、降温电路、声光报警电路、温度设定按键、LED显示电路等。现对主要部分简要介绍如下:

2.1 单片机AT89C52

我们选用ATMEL公司89系列的标准型单片机AT89C52, AT89C52是一种低功耗、高性能的8位单片机, 片内带有一个4K字节的FLASH可编程可擦除只读存储器 (EPROM) , 它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器 (NURAM) 技术, 而且其输出引脚和指令系统都与MCS-51兼容。AT89C52是一种功能强、灵活性高且价格合理的单片机, 它可方便地应用在各种控制领域。

2.2 温度传感器DS 18B20

DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种数字化单总线器件, 属于新一代适配微处理器的改进型智能温度传感器。与传统的热敏电阻相比, 它能够直接读出被测温度, 并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20“一线总线”数字化温度传感器支持“一线总线”接口, 测量温度范围为-55~125℃, 在-10~85℃范围内, 精度为±0.5℃。现场温度直接以“一线总线”的数字方式传输, 用符号扩展的16位数字量方式串行输出, 大大提高了系统的抗干扰性。

2.3 预设温度按键

为了能设定不同的预设温度, 所以设计了2个按键来改变预设温度。用按键UP来升高预设温度, 用按键DOWN降低预设温度。当有按键按下时指示灯就会亮起来, 从而能形象且简单地达到预定的效果。

2.4 LED显示

为了更加直观的了解系统的工作情况, 给系统添加了三位LED显示器。用来显示当前温室的温度。其中包含:十位, 个位和小数位。

LED显示屏由于亮度高, 是主动发光器材, 不受环境影响, 使用寿命长, 个别像素损坏可维护且不影响全局。虽然它的点密度不高, 不适合近距离观看。但是已经能足够达到所需目的, 而且价格便宜, 降低了成本, 所以选择LED的显示设备。

2.5 升降温设备

系统温度调节使用弱电控制强电的原理, 通过继电器来控制升降温设备。由于升降温设备在设计的时候比较麻烦, 所以在模拟时可用2个发光二极管来代替 (用红色管来代替升温设备, 用绿色管代替降温设备) 。这样也能更加形象的观察到系统的工作情况。

2.6 声光报警设备

当系统检测到温室温度到了所设定的最高值时, 声光报警设备就自动工作, 提醒工作人员必须立刻对温室进行相应的维护。声光报警设备不仅仅是专门对温度测量设计的, 当遮阳棚、喷灌设施或者是通风窗等设备出现不正常情况时也进行报警。由于单片机只是输出高低两种电平, 所以在蜂鸣器前加上一个音乐芯片, 从而达到声光报警的作用。

3 系统软件设计

用单片机对温室温度进行控制就必须要有实现对应功能的程序。本程序是通过C语言来编写的, 其中包含一个主程序和几个子程序。子程序有显示程序、键盘扫描程序、温度读取程序和延迟程序等。所有硬件及检测过程都由软件来控制, 最终能够实现温室温度的实时采集与处理。程序采用模块化设计, 将一个复杂应用程序按整体功能划分成若干相对独立的程序模块, 各模块可以单独设计、编程、调试和查错, 然后装配起来联调成完整的程序。主程序运行过程中对子程序进行对应的调用, 从而达到对温室温度的控制。

3.1 系统的功能

系统软件实现的功能主要有两部分:监测和控制。

(1) 读入各传感器的测量值, 并传送给单片机, 如需要, 将测量数据存入大容量的掉电保护存储器中, 即使停电也不会丢失数据。

(2) 按照对温室内作物选定的生长环境曲线, 并根据当时的光照、温湿度等实际情况, 对温室内的温度进行在线最优控制, 求得在保持作物生长的条件下, 使系统的能耗、水耗达到最少。

(3) 可以根据不同的需要及不同的季节改变DDC参数值, 并可在数据库中保存几组设定值, 以备使用。

(4) 根据测量值及相应生长期的各个温度的最高、最低值, 自动控制相关设备的打开和关闭, 当测量值大于最高值或者小于最低值时, 除打开相应设备外, 还应启动报警设备, 提醒工作人员注意。

3.2 系统流程图

本系统采用自上向下的结构化设计方法来表示算法, 系统启动之后通过按键对预设温度进行设定。系统启动的同时, 温度传感器也开始了对温度信号的采集。按照AT89C52中的程序进行比较控制。其程序流程图如图2所示。

系统运行后, 首先进行初始化, 包括为存放各通道检测的数据开辟缓冲区、设置环境报警和控制极限值, 并完成对中断入口、有关芯片和定时器的初始化操作等。转入循环体后, 完成各路信号的巡回检测, 经分析处理后转向相应控制与报警。在程序执行过程中, 系统随时检测外部中断和定时器中断发出的中断请求信号, 一旦有中断申请则转入相应服务程序, 否则返回显示时钟状态。

4 结语

该温室温度智能测控系统集传感器技术、测控技术及单片机技术于一体, 除了具有参数显示、控制及报警功能外, 用户还可以根据不同作物在不同生长期对环境的不同要求, 灵活方便地利用功能键对目标控制及报警参数进行重新设定或现场修改。该系统具有控制智能化、成本低、扩展性及抗干扰性强等特点, 投入使用将会带来较好的经济效益和社会效益。

参考文献

[1]齐文新, 周学文.分布式智能型温室计算机控制系统的一种设计与实现[J].农业工程报, 2004, 20 (1) :246-254.

[2]颜全生.温室的自动控制设计及实现[J].电力系统及其自动化学报, 2001, 13 (4) :65.

[3]徐立鸿, 任雪玲.工控系统在设施农业中的应用[J].基础自动化, 2001, 8 (3) :40.

手持式农业环境温度检测仪的设计 篇7

动植物生长都需要适宜的环境条件,温度是最主要的环境因子之一。对于植物,温度不仅能通过影响光合、呼吸和蒸腾等代谢过程影响植物生长,而且也可以通过影响有机物的合成与运输等代谢或水肥的吸收和输导过程影响植物生长[1,2];对于动物,温度可直接或间接地影响其生长发育、繁殖和生活状态等行为[3,4]。除此之外,温度的变化还能引起湿度、降水、氧气在水中的溶解度以及食物和其他动植物活动或行为的改变,从而间接影响动植物的生命活动。因此,及时了解环境温度情况对于指导农业生产有着非常重要的实际意义。目前,我国多数农户依然采用悬挂温度计的方法进行温度检测,这种方式存在着效率低和误差大等缺点,远不能满足现代农业发展的需求;而现有手持式温度监测设备由于存在价格高与操作复杂等缺点,很难在农业生产中推广应用[5]。我国农业正处于从传统农业向现代农业转化的阶段,开发操作简单、检测精度高和适用于农业实际生产的环境因子检测设备是现代农业发展的最基本需要。

本文以STC12LE5A60S2单片机为核心[6,7],以数字式温度传感器DS18B20为温度数据采集器[8,9],以SD卡 (Secure Digital Memory Card)作为数据存储设备[10,11],设计了一种支持用户现场读数和数据存储功能的手持式温度检测仪,可实现现场读数与历史数据查询,且支持与PC机的数据通信及数据长期存储。实际应用证明,本仪器可适用于农田、温室动物养殖或植物种植环境温度检测场合,具有较高的实用价值。

1 系统结构设计

系统采用模块化设计,主要包括传感器模块、中央处理模块、时钟模块、数据存储模块、人机交互模块及电源模块等6个部分。传感器部分选择数字式温度传感器DS18B20,可以省去A/D模块,简化电路设计;数据存储模块运用SD卡槽安装SD卡,实现数据的存储;时钟模块选用DS1302,具有系统提供时间功能;电源模块利用TPS79533芯片将外接电池电压转换成3.3V为系统供电;中央处理模块采用STC12LE5A60S2系列单片机作为设备核心处理器;时钟模块采用DS1302芯片设计,为系统及用户提供时间功能;串口模块采用MAX232实现与PC机的数据通信;人机交互模块采用LCD液晶屏,通过并口方式与单片机相连,完成数据显示任务,采用按键完成用户查询信息。系统原理图如图1所示。

2 系统硬件电路设计

2.1 传感器模块

传感器模块选用DALLAS公司生产的数字温度传感器DS18B20,其温度测量范围-55~+125℃,工作电压范围3~5.5V,精度±0.5℃,具有将温度信号直接转换成串行数字信号供单片机处理的特点,而且内含64位ROM单元及9字节的暂存器。其独特的单线接口减少了传感器对单片机I/O口的占用,简化了逻辑电路,使系统设计更灵活方便,而且可靠性高,价格低,完全满足农业应用对温度检测的要求。传感器模块的电路连接图如图2所示。其中,1脚GND接电源地;2脚DQ为数字信号输入/输出端;3脚VDD连接供电电源端。

2.2 电源模块及单片机处理模块

本系统运行电压为3.3V。为满足简单易携带的设计要求,系统选择由3节1.5V电池串联供电,利用降压芯片TPS79533将外接电池电压转换为3.3V,再为整个系统供电。该模块根据TPS79533芯片手册中的典型应用示例设计,不需要添加其他的电路。

中央处理模块选用新一代51单片机STC12LE5A60S2作为微控制单元(MCU),工作电压为3.3V,工作频率可达35MHz,内部具有2路PWM输出口,4个16位定时器,8路10位精度A/D转换,56kB Flash存储空间,60kB应用程序空间,1280B的RAM,并集成MAX810专用复位电路,拥有UART与SPI接口,功耗低,抗干扰性强,完全满足系统对环境温度采集及数据处理的要求,且为系统后续开发提供了保障。该模块电路如图3所示。其中:P0口连接液晶屏的8路数据口;P1口与采样信号及SD卡数据存储连接:P1.0接入温度检测信号,完成对温度监测数据的采集;P1.4连接SD卡SS; P1.5连接SD卡MOSI;P1.6连接SD卡MISO;P1.7连接SD卡SCLK,实现SD卡对环境温度信息的存储;P3.0和P3.1口与串口连接,实现程序的烧写以及单片机与PC机之间的通信的要求;P1.1,P4.4和P4.5分别与时钟芯片DS1302的I/O,SCK,RST相连,具有系统时间功能;P2.4~P2.7与4个按键控制连接,满足用户按键操作的要求。

2.3 SD卡存储模块

系统充分考虑农业生产的实际需求,设计SD储存模块,方便用户查询历史环境温度信息,并可为后期实验研究提供可靠数据。

SD卡数据存储有两种总线模式,即SD总线模式和 SPI总线模式。其中,SD总线模式采用4条数据线并行传输数据,传输速率高,但传输协议复杂,只有少数单片机提供此接口;而SPI总线模式虽然只有1条数据传输线,数据传输速率相对较低,但传输协议简单,易于实现。本系统所选用的STC12LE5A60S2型号单片机具有SPI 接口以及SPI控制器,因此可通过SPI总线模式读写数据。图4为SD卡SPI总线方式电路连接图。其中,片选拐角CS与P1.4连接,由于SD卡初始化过程中会自动进入SD总线模式,并在SD总线模式下发送复位命令,因此必须在单片机控制SD卡前,拉低片选信号端CS,使SD卡进入SPI总线模式;然后,再由主机向SD卡发送命令。SPI数据输入MOSI与P1.5连接; SPI数据输出MISO与P1.6连接;SCLK与 P1.7相连接。

2.4 时钟模块

针对用户以及设备自身对时间管理的要求,系统设计时钟模块保证数据的准确化管理。通过对性能、价格以及开发周期综合考虑,选用DALLAS公司开发的具有涓细电流充电能力的DS1302作为时钟芯片,可以对2100年以前的年、月、日、周、日、时、分、秒进行准确计时,且具有闰年补偿功能,完全满足系统要求。DS1302是一款低功耗芯片,具有双电源管脚可用于主电源和备份电源双电源供电模式,2~5.5V宽电压输入,可保证每次传送多个字节的时钟信号或RAM数据给单片机。内嵌用于暂存数据的31*8位RAM寄存器。DS1302硬件电路基于芯片手册中的典型应用电路设计,与CPU通过I/O,SCK,RST等3个引脚相连,具体电路如图5所示。

2.5 串口及人机交互模块

串口模块的主要作用是实现系统与PC机之间的数据传输。该模块采用性价比较高的MAX232作为核心芯片,通过电平转换将单片机串口电平转换为PC机串口电平,并利用该电平转换完成单片机与PC机之间的数据通信,具体电路图如图6所示。

人机交互模块是用户对设备操作和管理的基础。根据系统设计要求,本系统采用LCD显示以及按键方式实现人机交互功能。其中,LCD液晶显示采用带有中文字库的12 864点阵型液晶屏,工作电压3.3V,可直接显示所有汉字与多种图形,简化了系统软件设计以及开发周期,与单片机采用并行通信方式进行数据传输;按键电路采用独立式按键结构,每一个按键占用一个I/O口,任何一个按键工作时都不会影响到其他按键,具有电路配置灵活的特点;同时,为防止按键在机械弹性过程中产生的抖动反应,系统在软件上采用延迟方法消除抖动,即当检测到有按键按下时,执行一个10ms的延迟程序来消除抖动,保证按键正常工作。

3 软件设计

系统软件设计采用Keil作为开发工具,利用C51语言编写,主要包括主程序、传感器解析函数、SD卡程序、Petit FAT文件系统函数、LCD液晶显示子程序和按键中断子程序等。其中,SD卡程序主要包括SD卡初始化、读指定扇区与写指定扇区。为简化系统软件设计,在数据存储到SD卡过程中系统移植了Petit FAT文件系统模块式设计,具有良好的可移植性,可完全移植到51 单片机。通过Petit FAT文件系统模块提供的API函数可以方便操作文件的读写,而不用关注底层细节,软件流程图如图7所示。首先,系统初始化,主要是对各模块初始化;完成初始化之后,系统必须判断是否插入了SD卡,若没有检测到SD卡则提示用户及时插入;确定插入SD之后开始检测环境温度信息,并执行相关程序,实现系统功能。

4 运行结果分析

本系统已通过运行测试,可实现实时环境温度显示。温度数据存入SD卡中指定文件内,具有查询历史数据等所有功能,且运行稳定。测得温度数值虽然与标准温度计存在一定误差(3%以内),但完全符合农业生产要求。图8为设备实物图。

5 结论

通过实际应用证明,手持式农业环境温度检测设备运行稳定,实现了对动植物生长环境温度因子的实时检测,且能够将温度信息存储到SD卡中或直接存储到PC机,用于后期研究分析;也可以通过设备直接查询历史温度数据,方便用户使用。与其他同类温度监测仪相比,该设备具有以下特点:

1)易操作,稳定性高。由于系统采用数字式传感器采集温度信息,采用STC系列单片机处理数据,使设备整体电路简单,稳定性好。同时,系统设计简单,用户不需要掌握太多电子技术就可以操作应用。

2)性价比高。系统充分考虑成本问题,选用目前 市场上同类器件中性价比较高的元器件,不但满足系 统工作性能要求,而且大幅降低了成本。

3)能耗少,待机时间长。系统采用芯片大多为低功耗,电路设计合理,在很大程度上减少了系统耗电,完全适合农民长时间户外使用。

参考文献

[1]李永庚,蒋高明,杨景成.温度对小麦碳氮代谢、产量及品质影响[J].植物生态学报,2003,27(2):164-169.

[2]刘有军,纪永福,马全林,等.温度和光照对3种一年生植物种子萌发的影响[J].中国生态农业学报,2010,18(4):840-814.

[3]刘艳,张露阳.豆天蛾温室养殖气象条件分析[J].现代农业科技,2010,14:303-304.

[4]廖永岩,肖展鹏,袁耀阳.三疣梭子蟹幼体和幼蟹的温度适应性[J].水生生物学报,2008,32(4):534-543.

[5]赖家胜.温室多点温度测量及控制系统设计[J].安徽农业科学,2010,38(24):13391-13392.

[6]于京.51系列单片机C程序设计与应用案例[M].北京:中国电力出版社,2006.

[7]李朝青.单片机原理与接口技术[M].北京:北京航天航空大学出版社,2005.

[8]李钢,赵彦峰.1-Wire总线数字温度传感器DS18B20原理及应用[J].现代电子技术,2005,28(21):77-79.

[9]齐婉玉,孟英红,沈满.用DS18B20进行温度检测的方法与技巧[J].仪器仪表学报,2003,24(s2):235-236.

[10]李世齐,董浩斌,李荣生.基于FatFs文件系统的SD卡存储器设计[J].测控技术,2011,30(12):79-81.

上一篇:社会工作行政下一篇:诗歌鉴赏能力的升格