当前位置:首页 期刊杂志

单总线多路温度采集系统的设计

时间:2024-05-04

严洪立,屈 ,梅容芳

(宜宾职业技术学院,四川 宜宾 644003)

0 引言

作为一种物理量,温度给人最直观的感受就是冷、热,反映了分子热运动的剧烈程度。任何农作物都生活在具有一定温度的外界环境之中,其生理活动、生化反应等都受温度的影响。通常,其生理生化反应随温度的升高而加快、降低而变慢,体现为温度升高,生长发育加速;温度降低,生长发育迟缓。当温度高于或低于农作物所能忍受的温度范围时,将物极必反,造成其生长缓慢、停止,发育受阻,甚至死亡。因此,农作物种植应根据作物特点,调节好作物生长环境温度,为其提供最适宜的种植温度。

温度的变化具有季节性和昼夜性,夏季温度高,农作物产量品类多;冬季温度低,农作物产量少品类少,而温室大棚的出现降低了温度季节性对农作物的影响。温室大棚起源于罗马的云母覆盖,最早运用于促进黄瓜的早熟[1]。作为世界第二大农产品出口国的荷兰,土地资源稀缺,但广泛运用温室大棚种植技术,其玻璃温室面积高达16.5万亩,约占全世界温室总面积的1/4,提高了农业产值,做到了花卉、蔬果出口量居世界第一,其中,温室蔬菜占蔬菜生产总值的3/4。

我国温室大棚种植历史悠久,最早可追溯至秦朝时期,但没有得到大规模的升级与推广。自20世纪70年代开始,我国大力引进推广新型温室大棚,温室农业得到了快速发展,温室总种植面积已跃居世界第一,但受限于规模、成本等制约,现代农业技术应用不足。单作业温室大棚农户无法承担并使用大棚综合因子测控系统,大棚种植主要靠人工维护,如温度数据的采集依赖人体感受、温度计测量,干预多且费时、费力,效率低,不利于充分发挥温室大棚的优点、为农作物提供适宜的生长环境从而提高农作物产量。因此,需要一种低成本、高效率的大棚温度采集系统,帮助农户收集大棚各区域的温度数据,辅助分析作物生产环境数据,改善农作物种植方式,提高产量。

1 系统结构设计

系统的结构主要包含显示模块、控制模块和多个温度传感器。其中,控制模块采用单片机AT89C52作为中央处置器,负责处理与温度传感器的通信及温度数据处理;显示模块为LCD1602,作为人机交互界面呈现,显示温度传感器设备号及温度数据;温度传感器采用DS18B20,在空间内布局多个传感器,以总线方式向控制模块传递温度数据。系统框架如图1所示。

图1 系统框架

2 主要硬件及系统电路

2.1 控制模块

控制模块的核心为AT89C52单片机,主要为51单片机最小系统,包含时钟电路和复位电路。AT89C52为Atmel公司推出的8位低电压、高性能微处理器,自带8 k bytes的可擦写Flash只读程序存储器和256 bytes的随机存取数据存储器[2]。该单片机还兼容MCS-51指令系统,具有中断、定时器/计数器、UART等常用功能,价格低廉,满足大部分简单的系统设计需求。

2.2 温度传感器

温度传感器是应用最多的传感器之一,主要功能是感知温度的变化,并将其装换为稳定的信号输出,品类繁多,可按测量方式和传感器材料进行划分。考虑到大棚布线及电路设计简洁的实际,本系统采用美国DALLAS公司生产的单总线数字式温度传感器DS18B20[3],结构简单,一体化设计,仅有3个引脚,电路简洁,只需一个I/O数据线相连传输即可,且价格便宜,测量精度高,使用寿命长,既经济又实用。

2.3 显示模块

由于大棚的空间范围比较大,为了保证测量温度的准确性和有效性,需要对大棚内多个区域的温度进行测量,在显示模块需要显示多个数据,而传统数码管能够显示的内容有限,且不够灵活,需要耗费多个IO口,因此,本设计在显示模块采用LCD1602液晶显示。LCD1602的芯片工作电压在4.5~5.5 V,能够显示两排,共32个字符,每个字符为5×8点阵,且能够滚动显示,满足系统对多个温度数据灵活显示功能。

2.4 系统电路

系统电路中,控制模块的XTAL1和XTAL2引脚接时钟电路,为控制模块提供稳定的时钟,RST引脚与复位电路相连,实现点击轻触开关复位;显示模块的VSS电源地引脚接地,VDD电源引脚接5 V电源,VEE液晶显示偏压引脚与滑动变阻器相连,实现液晶偏压调节,其核心是3根控制线和数据线的连接,连接方式有直接控制方式和间接控制方式,这两种连接方式区别在于间接方式比直接方式可节省4个I/O口和数据刷新耗时不同。考虑到温度数据的刷新情况,本系统采用直接控制方式,将RS数据/命令选择引脚与P2^0相连,RW读/写选择引脚与P2^1相连,E使能信号引脚与P2^2相连,D0到D7数据引脚与P0接个上拉电阻后相连接;温度传感器A,B,C,D的VCC电源引脚接5 V电源,GND引脚接地,DQ数据引脚接上拉电阻后与P2^3相连。系统电路如图2所示。

图2 系统电路

3 软件设计

3.1 显示程序设计

经查阅LCD1602的驱动芯片数据手册可知,在对LCD1602进行编程时,应当遵守读写时的序图规则,并满足基本的时序时间参数要求,RS,RW,E这3根控制线在不同的指令时,应遵守基本操作[4],具体如表1所示。在读状态时,RS清0,RW置1,同时,E应保持高脉冲,即可从D0—D7引脚读出状态字;在读数据时,RS和RW都应置1,E保持高脉冲,即可从D0—D7引脚读出数据;在写命令时,RS和RW都应清0,E保持高脉冲,才能向D0—D7写入命令;在写数据时,RS置1,RW

表1 LCD1602的4种基本操作

清0,E保持高脉冲,才能向D0—D7写入数据。

3.2 温度传感器程序设计

由于DS18B20为单总线数据协议,因此,在每次操作时,数据/命令的读写只能一位一位地传输,从DS18B20的数据手册时序图可知,在编程时,需要先对DS18B20进行初始化;在读操作时,先读取一位数据,再把数据左移操作,将数据拼接为一个字节;在写操作时,先把数据最低位取出,发送后,再把数据右移,取最低位发送,直至8位数据发送完毕。每个DS18B20都有64位光刻ROM,类似人的身份证号,具有唯一性。在单总线多路温度传感器采集时,需要先读出ROM序列号,再将ROM序列号进行匹配,匹配成功后,方可将对应的传感器温度数据读取出来。

3.3 系统程序设计

系统的程序中,先初始化LCD1602,待液晶显示初始化完成后,再初始化DS18B20,将DS18B20的ROM序列号与单总线上对应的温度传感器匹配后,再读取该温度传感器的温度数据,将其显示在LCD1602液晶屏幕上,如此循环,采集刷新,实现对大棚内各区域温度的实时采集显示。系统程序的流程如图3所示。

4 结语

本系统在Proteus仿真软件上进行仿真验证,结果表明,系统设计方案可行,能够实现基于单总线对多路温度传感器数据处理显示,实现对多点温度测量,采集显示的温度精度为0.1 ℃,实时数据刷新,满足温室大棚对数据采集的需求;本系统利用51单片机最小系统,LCD1602液晶显示和DS18B20温度传感器实现,设计电路简单,安装调试简单,操作方便,界面简洁直观,成本低廉,充分考虑了单作业温室大棚种植农户的经济条件,符合农户的实际需求,具有一定的应用价值。

图3 系统程序的流程

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!