基于Arduino的土壤温湿度远程监测系统设计
摘要:基于Arduino控制板,设计了一套时效性强、方便易用的土壤温湿度远程监测系统。该系统以Arduino Ethernet控制板为核心,采用DHT11高精度传感器为温湿度数据采集模块,通过网络将温湿度数据发布到物联网平台,并使用浏览器或者智能手机随时查看。通过分析及试验表明,该系统精确度高、成本低,是一套可靠的监控系统,对农业机械化有极大的促进作用。
关键词:Arduino;温湿度;远程监控;物♥联网
中图分类号:S714 文献标识码:A 文章编号:0439-8114(2015)16-4060-03
DOI:10.14088/j.cnki.issn0439-8114.2015.16.059
Design of Soil Temperature and Humidity Remote Monitor System Based on Arduino
LI Ge-qi, ZHANG Yan,XIANG Lun-lun
(College of Mechanical and Electrical Engineering, Hainan University,Haikou 570228, China)
Abstract:Based on Arduin。o control board, a timeless, easy-to-use soil temperature and humidity remote monitor system was designed. With Arduino Ethernet as control center, DHT11 high precision sensor as the data collector module of temperature and humidity, the data of temperature and humidity were sent to networking platform by internet, and then using any browser or smart phone to read. From the analysis and experiments, this system have high precision and low cost, is reliable monitoring system which can play important role for the agricultural mechanization.
Key words: Arduino; temperature and humidity; remote monitor; internet of things
随着科学技术的快速发展,农业机械化、智能化及现代化已成为农业发展的趋势。尤其近年来移动互联网的迅速发展,4G、Wlan、GPRS等无线通信的出现[1],手持互联网终端的廉价化以及多样化、物联网等新概念的提出,都为实时状况监测提供了必要条件,使人们随时随地了解所需信息成为可能。而土壤作为农业的根基,对作物生长有着深远的影响。了解土壤的各项指标,才能把握住农业生产的良好时机并做出应对措施。本设计利用硬件开源平台Arduino以及诸多程序代码以及免费的物联网平台来实现远程实时土壤温湿度监控,具有时效性强、成本低廉、结构简单的特点。
1 系统硬件设计
1.1 Arduino控制板
Arduino是一个开源硬件项目平台,核心设备是一个ATmega128微控制器。该平台包括一块具备简单I/O功能的电路板及一套程序开发环境软件[2]。所选择的Arduino Ethernet是一块Arduino网络版,将微型处理器换成了性能更加优异的ATmega328,并同时具有14路I/O数字接口(其中6路可作为脉冲宽度调制输出),6个analog输入接口,一个16 MHz晶振,一个有线网络接口,同时附带储存卡插座以及直流电源孔,和一个重启按钮[3]。本设计通过该主控板将传感器采集的数据处理后,通过有线网络发送至互联网(图1)。相对于其他微型控制器开发平台,Arduino最大的优点就是它的易用性,并在相当短的时间内开发出自己的项目。
1.2 DHT11温湿度传感器
DHT11温湿度传感器属于数字传感器的一种,其功耗低、抗干扰能力强、体积小、价格低,能同时测量温度与湿度,满量程校准,而不需要重新校准,可以互换使用,快速响应时间,满足使用要求。传感器以电阻式湿敏元件和热敏电阻作为测温元件的集成,连接一个8位微处理器[4]。将已调校正确的数据烧录进一次性可编程只读存储器,传感器内部检测信号处理过程中会直接读取。该传感器精度高、工作简易快捷,其性能指标如表1所示。
由于DHT11传感器外形小巧,可轻松封装进金属保护壳中,在使用过程中插入土壤,能提高测量精度。图2是加装了铜镀铝合金外壳的DHT11传感器,耐腐蚀性大幅提升,除测量土壤数据外,更可以用预埋或打孔插入等方式测量混凝土的温湿度。
图3为DHT11传感器。它与控制板都是采用1-Wire格式通信,一次通讯可以发送40 bit的数据,可将温度和湿度的具体数据拆分为2个部分发送:整数部分与小数部分,每个部分占用8 bit,余下8 bit数据为校验后的正确数据。传感器为4pin引脚封装,从左到右分别为Pin1电源+极、Pin2串行数据、Pin3空脚۵、Pin4地线。当控制板发送启动信号之后,传感器开始工作,并从低能耗待机模式转换为高能耗工作模式。在控制板的启动信号发送完成后,触发传感器进行数据采集,然后将40 bit的数据发送到控制板。控制板没有发出程序开始信号时,传感器不会采集土壤数据,以低能耗模式待机。 1.3 系统连接
将DHT11传感器的Pin1与Arduino主控板的5 V电源相连,Pin2接上数字输入接口,Pin4接上GND,如传感器与主控板之间距离小于20 m,则需要在数据跟电源之间并联上5 kΩ的电阻。将有线宽带接入主控板的RJ45接口,并插上5 V DC电源。所有硬件连接完毕后,在下一个环节输入代码,整个系统便可正常运行。DHT11引脚接线图如图4所示。
2 系统软件设计
2.1 物联网平台
物联网(The Internet of Things,IOT)的基本思想来自于20世纪末,1999年美国麻省理工学院研制的无线射频身份识别(RFID)系统标志着物联网的雏形的出现,将所有物品加装无线射频识别模块与互联网连接,实现对物品的管理与识别。随着信息技术的进步,物联网概念得到进一步拓展,即“以未来网络为基础,能自我配置的全球性网络设施,网络上的每个单位都有惟一的物理特征或编码,通过良好的交互界面实现数据传输与分享”[5]。中国物联网技术的早期发展,可以追溯到20世纪末的物联网核心传感器网络技术研究。2009年8月,温家宝的“感知中国”讲话促进了我国物联网领域的深入研究和应用开发,物联网正式列为了我国五大新兴战略性产业之一,使得我国的物联网产业迅猛发展,并涌现出一批以乐联网为首的物联网开放平台。该平台的出现,极大地方便了个人和小型企业用户。
图5为系统实物连接图,图6为本系统设计的电路原理图。在本系统设计中,选择乐联网为互联网平台。它的特点有:①简单易用,只需稍微设置网络与设备便可轻松使用;②优秀的数据处理能力,可以完成海量数据的存储和访问,并提供数据分析;③多客户端,手机App可以随时查看数据,时效性强。在注册乐联网账号之后,进入个人中心,查看网站分配的惟一API接入ID,此API ID作为上传数据的用户身份标识,具有惟一性。
2.2 Arduino IDE
给Arduino写入程序,并让它按规律完成使用IDE(集成开发环境),它是开发者提供给用户的一款免费软件,并使用Arduino可理解的语言(跟C语言类似)来开发程序。由于Arduino的硬件和软件都是开放的资源,这意味着代码以及程序设计可以被任何人使用、加工和发布。并且IDE中集☂成了多种多样的程序代码。LeweiClient--append_send调用预置的物联网通讯LeweiClient库,与服务器进行单向通信。
代码如下所示:
#include //调用Leweiclient库
#include
#include
#include
#define LW_USERKEY "b7f28ecde1a6475093c
f05ed802b7596"//乐联网的API接入ID
#define LW_GATEWAY "01"//乐联网传感器01号端口
#defiΣne POST_INTERVAL (30*1000) //延时更新 30秒发送一次数据
LeWeiClient *lwc;
补充温湿度转换代码:
#define DHT11PIN 2 //传感器
dht11 DHT11;//温湿度转换函数
double dewPoint(double celsius,double humidity)
{
double A0= 373.15/(273.15 + celsius);
double SUM = -7.902 98 * (A0-1);
SUM += 5.028 08 * log10(A0);
SUM += -1.3816e-7 * (pow(10, (11.344*(1-1/A0)))-1) ;
SUM += 8.1328e-3 * (pow(10,(-3.491 49*(A0-1)))-1) ;
SUM += log10(1013.246);
double VP = pow(10, SUM-3) *humidity;
double T = log(VP/0.610 78); //temp var
return (241.88 * T) / (17.558-T);
}
double dewPointFast(double celsius,double humidity)
{
double a = 17.271;
double b = 237.7;
double temp=(a * celsius)/(b + celsius) + log(humidity/100);
double Td = (b * temp) /(a - temp);
return Td;
}
3 系统性能分析
本系统特点在于信息的远程监控、多客户端监控,时效性高。实测证明,该系统的温度测量精度为±2 ℃,湿度测量精度为±5%RH,数据更新频率30 s/次。DHT11温湿度传感器作为新一代的传感器,智能化程度高,内置了校验数据使采集的数据更为精确,并且在没有收到主控板指令的时候为待机状态,能耗更低。
4 小结
传统的土壤温湿度检测方法有直接测定法(人工取土进行试验研究)、间接测定法(测定土壤中与湿度有关的物理参数、GPS田间定位法和遥感法[6]。这些方法测定过程复杂、无法连续检测、周期长、效率低、人为误差较大,而且管理方式落后,与农业现代化机械化理念相悖,并且要安排专人值守,人力资源过度浪费。在农业生产中,土壤温湿度采集工作频繁,该系统不但可节省大量人力物力,更可实现土壤温湿度的远程监控。该系统在精度与误差控制上,与传统方法相比有突出的优点,并且采集速度更快。由于使用了模块化设计,该系统成本低廉,易于安装与维护,适合在农业生产中推广。
参考文献:
[1] 秦 华,孙晓松.基于Arduino/Android的环境状况监测系统设计[J].无线互联科技,2013(1):59-61.
[2] 蔡睿妍.Arduino的原理及应用[J].电子设计工程,2012(8):155-157.
[3] 袁本华,董 铮.基于Arduino控制板的温室大棚测温系统设计[J].安徽农业科学,2012,40(8):5049-5050.
[4] 倪天龙,单总线传感器DHT11在温湿度测控中的应用[J].单片机与嵌入式系统应用,2010(6):60-62.
[5] 孙其博,刘 杰.物联网:概念、架构与关键技术研究综述[J].北京邮电大学学报,2010(3):1-9.
[6] 熊丽萍.基于无线传感器网络的农田土壤温湿度检测[J].电子世界,2014(10):60.