李戈琦等
摘要:基于Arduino控制板,設(shè)計(jì)了一套時(shí)效性強(qiáng)、方便易用的土壤溫濕度遠(yuǎn)程監(jiān)測(cè)系統(tǒng)。該系統(tǒng)以Arduino Ethernet控制板為核心,采用DHT11高精度傳感器為溫濕度數(shù)據(jù)采集模塊,通過(guò)網(wǎng)絡(luò)將溫濕度數(shù)據(jù)發(fā)布到物聯(lián)網(wǎng)平臺(tái),并使用瀏覽器或者智能手機(jī)隨時(shí)查看。通過(guò)分析及試驗(yàn)表明,該系統(tǒng)精確度高、成本低,是一套可靠的監(jiān)控系統(tǒng),對(duì)農(nóng)業(yè)機(jī)械化有極大的促進(jìn)作用。
關(guān)鍵詞:Arduino;溫濕度;遠(yuǎn)程監(jiān)控;物聯(lián)網(wǎng)
中圖分類(lèi)號(hào):S714 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):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 Arduino 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
隨著科學(xué)技術(shù)的快速發(fā)展,農(nóng)業(yè)機(jī)械化、智能化及現(xiàn)代化已成為農(nóng)業(yè)發(fā)展的趨勢(shì)。尤其近年來(lái)移動(dòng)互聯(lián)網(wǎng)的迅速發(fā)展,4G、Wlan、GPRS等無(wú)線通信的出現(xiàn)[1],手持互聯(lián)網(wǎng)終端的廉價(jià)化以及多樣化、物聯(lián)網(wǎng)等新概念的提出,都為實(shí)時(shí)狀況監(jiān)測(cè)提供了必要條件,使人們隨時(shí)隨地了解所需信息成為可能。而土壤作為農(nóng)業(yè)的根基,對(duì)作物生長(zhǎng)有著深遠(yuǎn)的影響。了解土壤的各項(xiàng)指標(biāo),才能把握住農(nóng)業(yè)生產(chǎn)的良好時(shí)機(jī)并做出應(yīng)對(duì)措施。本設(shè)計(jì)利用硬件開(kāi)源平臺(tái)Arduino以及諸多程序代碼以及免費(fèi)的物聯(lián)網(wǎng)平臺(tái)來(lái)實(shí)現(xiàn)遠(yuǎn)程實(shí)時(shí)土壤溫濕度監(jiān)控,具有時(shí)效性強(qiáng)、成本低廉、結(jié)構(gòu)簡(jiǎn)單的特點(diǎn)。
1 系統(tǒng)硬件設(shè)計(jì)
1.1 Arduino控制板
Arduino是一個(gè)開(kāi)源硬件項(xiàng)目平臺(tái),核心設(shè)備是一個(gè)ATmega128微控制器。該平臺(tái)包括一塊具備簡(jiǎn)單I/O功能的電路板及一套程序開(kāi)發(fā)環(huán)境軟件[2]。所選擇的Arduino Ethernet是一塊Arduino網(wǎng)絡(luò)版,將微型處理器換成了性能更加優(yōu)異的ATmega328,并同時(shí)具有14路I/O數(shù)字接口(其中6路可作為脈沖寬度調(diào)制輸出),6個(gè)analog輸入接口,一個(gè)16 MHz晶振,一個(gè)有線網(wǎng)絡(luò)接口,同時(shí)附帶儲(chǔ)存卡插座以及直流電源孔,和一個(gè)重啟按鈕[3]。本設(shè)計(jì)通過(guò)該主控板將傳感器采集的數(shù)據(jù)處理后,通過(guò)有線網(wǎng)絡(luò)發(fā)送至互聯(lián)網(wǎng)(圖1)。相對(duì)于其他微型控制器開(kāi)發(fā)平臺(tái),Arduino最大的優(yōu)點(diǎn)就是它的易用性,并在相當(dāng)短的時(shí)間內(nèi)開(kāi)發(fā)出自己的項(xiàng)目。
1.2 DHT11溫濕度傳感器
DHT11溫濕度傳感器屬于數(shù)字傳感器的一種,其功耗低、抗干擾能力強(qiáng)、體積小、價(jià)格低,能同時(shí)測(cè)量溫度與濕度,滿量程校準(zhǔn),而不需要重新校準(zhǔn),可以互換使用,快速響應(yīng)時(shí)間,滿足使用要求。傳感器以電阻式濕敏元件和熱敏電阻作為測(cè)溫元件的集成,連接一個(gè)8位微處理器[4]。將已調(diào)校正確的數(shù)據(jù)燒錄進(jìn)一次性可編程只讀存儲(chǔ)器,傳感器內(nèi)部檢測(cè)信號(hào)處理過(guò)程中會(huì)直接讀取。該傳感器精度高、工作簡(jiǎn)易快捷,其性能指標(biāo)如表1所示。
由于DHT11傳感器外形小巧,可輕松封裝進(jìn)金屬保護(hù)殼中,在使用過(guò)程中插入土壤,能提高測(cè)量精度。圖2是加裝了銅鍍鋁合金外殼的DHT11傳感器,耐腐蝕性大幅提升,除測(cè)量土壤數(shù)據(jù)外,更可以用預(yù)埋或打孔插入等方式測(cè)量混凝土的溫濕度。
圖3為DHT11傳感器。它與控制板都是采用1-Wire格式通信,一次通訊可以發(fā)送40 bit的數(shù)據(jù),可將溫度和濕度的具體數(shù)據(jù)拆分為2個(gè)部分發(fā)送:整數(shù)部分與小數(shù)部分,每個(gè)部分占用8 bit,余下8 bit數(shù)據(jù)為校驗(yàn)后的正確數(shù)據(jù)。傳感器為4pin引腳封裝,從左到右分別為Pin1電源+極、Pin2串行數(shù)據(jù)、Pin3空腳、Pin4地線。當(dāng)控制板發(fā)送啟動(dòng)信號(hào)之后,傳感器開(kāi)始工作,并從低能耗待機(jī)模式轉(zhuǎn)換為高能耗工作模式。在控制板的啟動(dòng)信號(hào)發(fā)送完成后,觸發(fā)傳感器進(jìn)行數(shù)據(jù)采集,然后將40 bit的數(shù)據(jù)發(fā)送到控制板??刂瓢鍥](méi)有發(fā)出程序開(kāi)始信號(hào)時(shí),傳感器不會(huì)采集土壤數(shù)據(jù),以低能耗模式待機(jī)。endprint
1.3 系統(tǒng)連接
將DHT11傳感器的Pin1與Arduino主控板的5 V電源相連,Pin2接上數(shù)字輸入接口,Pin4接上GND,如傳感器與主控板之間距離小于20 m,則需要在數(shù)據(jù)跟電源之間并聯(lián)上5 kΩ的電阻。將有線寬帶接入主控板的RJ45接口,并插上5 V DC電源。所有硬件連接完畢后,在下一個(gè)環(huán)節(jié)輸入代碼,整個(gè)系統(tǒng)便可正常運(yùn)行。DHT11引腳接線圖如圖4所示。
2 系統(tǒng)軟件設(shè)計(jì)
2.1 物聯(lián)網(wǎng)平臺(tái)
物聯(lián)網(wǎng)(The Internet of Things,IOT)的基本思想來(lái)自于20世紀(jì)末,1999年美國(guó)麻省理工學(xué)院研制的無(wú)線射頻身份識(shí)別(RFID)系統(tǒng)標(biāo)志著物聯(lián)網(wǎng)的雛形的出現(xiàn),將所有物品加裝無(wú)線射頻識(shí)別模塊與互聯(lián)網(wǎng)連接,實(shí)現(xiàn)對(duì)物品的管理與識(shí)別。隨著信息技術(shù)的進(jìn)步,物聯(lián)網(wǎng)概念得到進(jìn)一步拓展,即“以未來(lái)網(wǎng)絡(luò)為基礎(chǔ),能自我配置的全球性網(wǎng)絡(luò)設(shè)施,網(wǎng)絡(luò)上的每個(gè)單位都有惟一的物理特征或編碼,通過(guò)良好的交互界面實(shí)現(xiàn)數(shù)據(jù)傳輸與分享”[5]。中國(guó)物聯(lián)網(wǎng)技術(shù)的早期發(fā)展,可以追溯到20世紀(jì)末的物聯(lián)網(wǎng)核心傳感器網(wǎng)絡(luò)技術(shù)研究。2009年8月,溫家寶的“感知中國(guó)”講話促進(jìn)了我國(guó)物聯(lián)網(wǎng)領(lǐng)域的深入研究和應(yīng)用開(kāi)發(fā),物聯(lián)網(wǎng)正式列為了我國(guó)五大新興戰(zhàn)略性產(chǎn)業(yè)之一,使得我國(guó)的物聯(lián)網(wǎng)產(chǎn)業(yè)迅猛發(fā)展,并涌現(xiàn)出一批以樂(lè)聯(lián)網(wǎng)為首的物聯(lián)網(wǎng)開(kāi)放平臺(tái)。該平臺(tái)的出現(xiàn),極大地方便了個(gè)人和小型企業(yè)用戶。
圖5為系統(tǒng)實(shí)物連接圖,圖6為本系統(tǒng)設(shè)計(jì)的電路原理圖。在本系統(tǒng)設(shè)計(jì)中,選擇樂(lè)聯(lián)網(wǎng)為互聯(lián)網(wǎng)平臺(tái)。它的特點(diǎn)有:①簡(jiǎn)單易用,只需稍微設(shè)置網(wǎng)絡(luò)與設(shè)備便可輕松使用;②優(yōu)秀的數(shù)據(jù)處理能力,可以完成海量數(shù)據(jù)的存儲(chǔ)和訪問(wèn),并提供數(shù)據(jù)分析;③多客戶端,手機(jī)App可以隨時(shí)查看數(shù)據(jù),時(shí)效性強(qiáng)。在注冊(cè)樂(lè)聯(lián)網(wǎng)賬號(hào)之后,進(jìn)入個(gè)人中心,查看網(wǎng)站分配的惟一API接入ID,此API ID作為上傳數(shù)據(jù)的用戶身份標(biāo)識(shí),具有惟一性。
2.2 Arduino IDE
給Arduino寫(xiě)入程序,并讓它按規(guī)律完成使用IDE(集成開(kāi)發(fā)環(huán)境),它是開(kāi)發(fā)者提供給用戶的一款免費(fèi)軟件,并使用Arduino可理解的語(yǔ)言(跟C語(yǔ)言類(lèi)似)來(lái)開(kāi)發(fā)程序。由于Arduino的硬件和軟件都是開(kāi)放的資源,這意味著代碼以及程序設(shè)計(jì)可以被任何人使用、加工和發(fā)布。并且IDE中集成了多種多樣的程序代碼。LeweiClient--append_send調(diào)用預(yù)置的物聯(lián)網(wǎng)通訊LeweiClient庫(kù),與服務(wù)器進(jìn)行單向通信。
代碼如下所示:
#include
#include
#include
#include
#define LW_USERKEY "b7f28ecde1a6475093c
f05ed802b7596"http://樂(lè)聯(lián)網(wǎng)的API接入ID
#define LW_GATEWAY "01"http://樂(lè)聯(lián)網(wǎng)傳感器01號(hào)端口
#define POST_INTERVAL (30*1000) //延時(shí)更新 30秒發(fā)送一次數(shù)據(jù)
LeWeiClient *lwc;
補(bǔ)充溫濕度轉(zhuǎn)換代碼:
#define DHT11PIN 2 //傳感器
dht11 DHT11;//溫濕度轉(zhuǎn)換函數(shù)
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 系統(tǒng)性能分析
本系統(tǒng)特點(diǎn)在于信息的遠(yuǎn)程監(jiān)控、多客戶端監(jiān)控,時(shí)效性高。實(shí)測(cè)證明,該系統(tǒng)的溫度測(cè)量精度為±2 ℃,濕度測(cè)量精度為±5%RH,數(shù)據(jù)更新頻率30 s/次。DHT11溫濕度傳感器作為新一代的傳感器,智能化程度高,內(nèi)置了校驗(yàn)數(shù)據(jù)使采集的數(shù)據(jù)更為精確,并且在沒(méi)有收到主控板指令的時(shí)候?yàn)榇龣C(jī)狀態(tài),能耗更低。
4 小結(jié)
傳統(tǒng)的土壤溫濕度檢測(cè)方法有直接測(cè)定法(人工取土進(jìn)行試驗(yàn)研究)、間接測(cè)定法(測(cè)定土壤中與濕度有關(guān)的物理參數(shù)、GPS田間定位法和遙感法[6]。這些方法測(cè)定過(guò)程復(fù)雜、無(wú)法連續(xù)檢測(cè)、周期長(zhǎng)、效率低、人為誤差較大,而且管理方式落后,與農(nóng)業(yè)現(xiàn)代化機(jī)械化理念相悖,并且要安排專人值守,人力資源過(guò)度浪費(fèi)。在農(nóng)業(yè)生產(chǎn)中,土壤溫濕度采集工作頻繁,該系統(tǒng)不但可節(jié)省大量人力物力,更可實(shí)現(xiàn)土壤溫濕度的遠(yuǎn)程監(jiān)控。該系統(tǒng)在精度與誤差控制上,與傳統(tǒng)方法相比有突出的優(yōu)點(diǎn),并且采集速度更快。由于使用了模塊化設(shè)計(jì),該系統(tǒng)成本低廉,易于安裝與維護(hù),適合在農(nóng)業(yè)生產(chǎn)中推廣。
參考文獻(xiàn):
[1] 秦 華,孫曉松.基于Arduino/Android的環(huán)境狀況監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].無(wú)線互聯(lián)科技,2013(1):59-61.
[2] 蔡睿妍.Arduino的原理及應(yīng)用[J].電子設(shè)計(jì)工程,2012(8):155-157.
[3] 袁本華,董 錚.基于Arduino控制板的溫室大棚測(cè)溫系統(tǒng)設(shè)計(jì)[J].安徽農(nóng)業(yè)科學(xué),2012,40(8):5049-5050.
[4] 倪天龍,單總線傳感器DHT11在溫濕度測(cè)控中的應(yīng)用[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2010(6):60-62.
[5] 孫其博,劉 杰.物聯(lián)網(wǎng):概念、架構(gòu)與關(guān)鍵技術(shù)研究綜述[J].北京郵電大學(xué)學(xué)報(bào),2010(3):1-9.
[6] 熊麗萍.基于無(wú)線傳感器網(wǎng)絡(luò)的農(nóng)田土壤溫濕度檢測(cè)[J].電子世界,2014(10):60.