基于DSP的智能温度检测系统设计
扫描二维码
随时随地手机看文章
摘要:为实现农业的智能化管理,本文基于DSP技术利用节点可扩展的温度传感器DS18B20芯片设计了一款具有GPRS远程报警功能,经济、实用型温度检测系统。结果证明,该系统可实时检测环境温度,报警灵敏,可广泛应用在农业及其他领域。
随着物联网时代的到来,农业正朝着智慧农业发展。“智慧农业”就是充分应用现代信息技术成果,集成应用计算机与网络技术、物联网技术、音视频技术、无线通信技术及专家智慧与知识,实现农业的智能化管理。温度作为农业生产过程中的一个重要指标,温度检测系统是智能农业的一个子系统。以DSP技术为核心,利用接口简单、性能稳定的DS18B20温度传感器芯片,设计了具有温度检测、温度阈值设定、现场蜂鸣器报警、远程智能短信报警、温度值实时显示、温度节点可扩展等功能的温度检测系统。该系统在农业领域可广泛进行应用推广。
1 智能温度检测系统
智能温度检测系统在智慧农业中发挥着重要的作用,成为智慧农业中信息采集必不可少的一部分。精确的获取农业生产或农业产品管理中的温度参数,有助于提升我国农业管理水平和农业生产效能,促进农业的现代化精准管理、加速智慧农业时代的到来。
1.1 系统实现整体方案
本智能温度检测系统主要由DSP主控单元、CPLD译码单元、键盘扫描单元、温度检测单元、蜂鸣器/LED灯报警单元、GSM单元、液晶屏显示单元组成,当系统检测的温度高于或低于设定的阈值,系统可通过现场的蜂鸣器报警,或通过智能手机模块将信息远程发送。温度阈值和系统发送的手机终端号码均可通过键盘扫描单元设定或修改,液晶屏显示操作进程。
该系统框图如图1所示。
1.2 DSP主控单元
本智能温度检测系统采用TMS320C54x DSP芯片作为主处理器。TMS320C54x是TI公司生产的一款16位定点型DSP处理器,内部采用程序总线和数据总线分开的增强型哈佛结构,存储空间包括数据存储空间、程序存储空间、I/O空间,具有专门的硬件乘法器,采用流水线操作,提供特殊的数字信号处理指令。TMS320C54x采用核电压和外设电压分开供电的双电压供电模式,具有丰富的外设接口,内置看门狗定时器,提供多种程序固化方式。主处理器的选择为系统的低功耗、功能扩展、产品升级提供了保障。
1.3 CPLD译码单元
CPLD(Complex Programmable Logic Device)为复杂可编程逻辑器件,是一种用户根据自身设计要求而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法实现,生成相应的目标文件,通过下载电缆(“在系统”编程)将代码传送到目标芯片中,实现设计的数字系统。在本设计中,选用XILINX公司的XC95144XL-T0100芯片,用来完成系统硬件资源分配、逻辑译码、键盘扫描等工作,利用原理图及VHDL硬件编程语言混合模式进行译码实现,编译环境为Xilinx ISE 10.1版本软件。
1.4 智能手机单元
智能手机单元(GSM)采用Qisda公司的M33G模块,此模块具有开放的44引脚接口,可以方便用户进行二次开发。M33G为串口通信模块,在系统硬件设计时,选用16C450芯片实现并口到串口的转换,使DSP处理器可以快速高效的与M33G通讯。在硬件设计时一定要考虑M33G模块天线及SIM卡座的固定方式。本单元可实现远程智能短信报警功能,此单元与系统的连接如图2所示。(备注:系统中各功能单元的+5 V、+3.3 V、GND与系统的+5 V、+3.3 V、GND连接,不在图中体现,下同。)
1.5 键盘扫描单元
键盘扫描单元由CPLD硬件描述语言VHDL程序设计实现,采用4x4键盘,自行定义键值。扫描输入端共需四根信号线,扫描输出端共需四根信号线,八条信号线均接到CPLD芯片上的I/O引脚,通过CPLD软件译码实现键盘的功能,这样的设计节省硬件资源,进一步提高了系统的性价比。通过本单元实现远程手机号码的输入、更改、删除等功能。此单元与系统的连接如图3所示。
1.6 液晶屏显示单元
液晶屏显示单元采用AM—17622液晶屏,AM—17622是台湾晶采光电科技股份有限公司生产的2.0英寸TFT-LCD屏,具有白色LED背光,驱动芯片采用HX8309,支持8/9/16/18位并行接口设计,并具有丰富的命令功能。本系统采用16位并行接口设计,与系统的连接如图4所示。通过液晶屏可实时显示监控的温度值,在手机号码的输入、更改、删除时,液晶屏显示当前操作内容。
1.7 蜂鸣器/LED灯单元
蜂鸣器/LED灯单元在本系统中负责系统报警,当系统的温度与设定温度的偏差不在设定的控制范围时,蜂呜器/LED灯报警。设计中,利用TMS320C54x的XF、HD2引脚分别通过电流放大电路控制蜂鸣器和LED灯工作。
2 温度检测单元硬件设计
温度传感器选择性价比较高的DS18B20芯片。该芯片是DALLAs公司生产的单总线器件,能够直接读取被测物体的温度值,电压适用范围为3~5 V。DS18B20抗干扰能力强,转换精度高,接口电路简单,可实现多点组网测温,给硬件设计工作带来了极大的方便。
2.1 DS18B20特点
DS18B20提供9~12位精度的温度测量,温度测量范围为-55~+125℃,在-10~85℃范围内,测量分辨率为±0.5℃,增量值最小可为0.0625℃,电源供电范围3.0~5.5 V。将测量温度转换为12位的数字量最大需要750 ms,DS18B20有外部供电和寄生电源两种供电方式,采用信号线寄生供电,不需额外的外部供电,在需要远程温度探测和空间受限的场合特别有用。每个DS18B20有唯一的64位序列号,这使得可以有多个DS18B20同时在一条单总线上工作。
2.2 硬件电路
DS18B20与TMS320C54x DSP处理器的硬件接口连接极其简单,设计中DSl8820采用外部3.3 V电源供电,与TMS320C54x DSP处理器的外设供电电压一致;DS18B20的关键信号线与TMS320C54x DSP的一条GPIO口相连,利用GPIO口的双向输入输出特性完成对DS18B20芯片的读写功能,选用TMS320C54x DSP外设HPI主机接口单元的数据引脚HD1与其连接,将HD1引脚配置成通用输入输出功能,实现DS18B20芯片对温度的适时采集:DQ信号线需加4.7 KΩ的上拉电阻,保证HD1数据线的驱动能力。DS18B20的GND端与系统的GND相连即可。
3 温度检测软件实现
基于DSP的智能温度检测系统整体实现的流程如图6所示。
DS18B20芯片对时序和电性参数要求很高,在软件程序编写时,必须严格遵守其工作时序,任何一个环节有误,DS18B20均不能正常工作。本系统采用一个DS18B20芯片,在软件程序编写时可以忽略对序列号的读取。当硬件中增加温度节点控制时,需要对多个DS18B20进行温度采集,可以通过读取DS18B20序列号用匹配ROM指令按顺序依次访问各个传感器,实现对各个传感器的温度采集。在DS18B20芯片复位时,如果芯片复位不成功,DS18B20就不会产生应答信号,应用数字示波器跟踪检查其工作时序是否正确。温度检测单元软件实现的流程如图7所示。
4 结论
基于DSP的智能温度检测系统经实验验证可以实时检测当前环境的温度值,测量结果误差小、精度高,并且可以通过显示屏进行实时显示测量结果,当系统检测到当前温度大于或小于设定的温度阈值范围时,系统通过现场蜂鸣器/LED灯报警或通过远程智能短信进行报警.该系统可实现多个温度节点组网测温,省去了ZigBee组网通信技术,提高了系统的性价比,为农业实现智能化管理奠定了一定的技术基础,该智能温度检测系统具有良好的经济性和实用性。