国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ARM的農(nóng)業(yè)物聯(lián)網(wǎng)終端控制系統(tǒng)

2018-01-15 01:42:52盧愛(ài)紅
現(xiàn)代計(jì)算機(jī) 2017年34期
關(guān)鍵詞:網(wǎng)絡(luò)地址開(kāi)發(fā)板內(nèi)核

盧愛(ài)紅

(蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院,蘇州215009)

0 引言

現(xiàn)代化農(nóng)業(yè)在向智能化的物聯(lián)網(wǎng)應(yīng)用方向發(fā)展,農(nóng)業(yè)環(huán)境控制是現(xiàn)代化農(nóng)業(yè)的核心。農(nóng)業(yè)環(huán)境控制是在一定范圍內(nèi),根據(jù)功能需要選擇不同的傳感器,采集區(qū)域內(nèi)的各種環(huán)境因素:光、熱、水、肥等或者農(nóng)作物的生長(zhǎng)情況,通過(guò)有線或無(wú)線網(wǎng)絡(luò)傳送給主控制器,主控制器對(duì)數(shù)據(jù)進(jìn)行分析處理形成專(zhuān)家系統(tǒng),并根據(jù)植物最適宜的生長(zhǎng)條件,由主控制器發(fā)出針對(duì)性的指令,對(duì)區(qū)域內(nèi)相關(guān)設(shè)備操作,使光、熱、水、肥等因素協(xié)調(diào)到最佳狀態(tài)。農(nóng)業(yè)物聯(lián)網(wǎng)系統(tǒng)通過(guò)智能控制方法,將以前的人工經(jīng)驗(yàn)農(nóng)業(yè)生產(chǎn)模式,轉(zhuǎn)變?yōu)橥ㄟ^(guò)電子系統(tǒng)精確采集經(jīng)驗(yàn)?zāi):刂频哪J剑罐r(nóng)業(yè)生產(chǎn)資源的投入精細(xì)化,農(nóng)業(yè)生產(chǎn)的產(chǎn)量最大化。農(nóng)業(yè)種植、養(yǎng)殖基礎(chǔ)設(shè)施的迅速發(fā)展,使得溫室大棚農(nóng)業(yè)生產(chǎn)也呈現(xiàn)指數(shù)增長(zhǎng),連棟大棚規(guī)模越來(lái)越大,簡(jiǎn)易溫室大棚也越來(lái)越多。連棟大棚的監(jiān)控區(qū)域較大,需要部署大量的信息采集傳感器節(jié)點(diǎn)構(gòu)成大型傳感網(wǎng)絡(luò),且探測(cè)節(jié)點(diǎn)和探測(cè)節(jié)點(diǎn)數(shù)量、位置要經(jīng)常改變。而簡(jiǎn)易溫室大棚探測(cè)、控制的節(jié)點(diǎn)較少,但要求簡(jiǎn)單方便、價(jià)格便宜。因此環(huán)境監(jiān)控系統(tǒng)必須符合市場(chǎng)的需求:①探測(cè)與控制的節(jié)點(diǎn)容量要足夠多;②探測(cè)與控制的節(jié)點(diǎn)數(shù)容易增減;③探測(cè)點(diǎn)的位置能靈活移動(dòng);④安裝、調(diào)試、使用、維護(hù)、維修方便而且要安全可靠;⑤性?xún)r(jià)比高。根據(jù)市場(chǎng)需求設(shè)計(jì)現(xiàn)代化農(nóng)業(yè)生產(chǎn)的環(huán)境監(jiān)控系統(tǒng),使用可靠的無(wú)線傳感網(wǎng)絡(luò)代替有線連接,結(jié)合最新的智能傳感技術(shù)、無(wú)線組網(wǎng)技術(shù)、微處理技術(shù)、模糊控制技術(shù)等,設(shè)計(jì)出由一臺(tái)PC和多個(gè)多用途物聯(lián)網(wǎng)智能中央控制器組成主從式分布結(jié)構(gòu)的環(huán)境無(wú)線智能監(jiān)控系統(tǒng),能有效解決以上市場(chǎng)需求問(wèn)題,可廣泛應(yīng)用于農(nóng)業(yè)種植、養(yǎng)殖等環(huán)境自動(dòng)檢測(cè)、監(jiān)控領(lǐng)域[1]。

1 系統(tǒng)要求與整體設(shè)計(jì)

具有多個(gè)用途的物聯(lián)網(wǎng)終端控制器是我們?cè)O(shè)計(jì)的重點(diǎn)。作為物聯(lián)網(wǎng)應(yīng)用系統(tǒng)終端的主控制器,一般采用嵌入式設(shè)備來(lái)完成物聯(lián)網(wǎng)終端控制器的信息采集和控制的功能。物聯(lián)網(wǎng)終端控制器是現(xiàn)代化農(nóng)業(yè)生產(chǎn)現(xiàn)場(chǎng)的各種傳感器采集信息的集中管理和采集信息數(shù)據(jù)上傳到物聯(lián)網(wǎng)云服務(wù)平臺(tái)的中間紐帶,同時(shí)也是現(xiàn)場(chǎng)用戶(hù)和網(wǎng)絡(luò)遠(yuǎn)程用戶(hù)指令的執(zhí)行器?,F(xiàn)代化農(nóng)業(yè)生產(chǎn)基地的終端控制器因其功能復(fù)雜,部署數(shù)量眾多,價(jià)格敏感等特點(diǎn),大多采用基于ARM的嵌入式控制器的硬件架構(gòu),ARM開(kāi)發(fā)板具有較高的主頻、豐富的接口等性能,能適應(yīng)各種嵌入式要求。終端控制器的軟件操作系統(tǒng)可以選用可移植可裁剪功能強(qiáng)大的Linux操作系統(tǒng)。為了實(shí)現(xiàn)控制器的可視化操作,可選用常用的Android或者Qt作為GUI開(kāi)發(fā)平臺(tái)。

本設(shè)計(jì)以農(nóng)業(yè)生產(chǎn)中使用最多的溫室生產(chǎn)為例,說(shuō)明物聯(lián)網(wǎng)終端控制器的設(shè)計(jì)方法。當(dāng)前溫室生產(chǎn)的傳感網(wǎng)絡(luò),需要完成采集和控制兩大任務(wù),溫室大棚需要采集信息諸如空氣溫度、空氣濕度、光照強(qiáng)度、土壤濕度、營(yíng)養(yǎng)液EC值、PH值以及室外天氣參數(shù)等信息,并驅(qū)動(dòng)溫室中執(zhí)行機(jī)構(gòu)的控制節(jié)點(diǎn)諸如開(kāi)窗系統(tǒng)、拉幕系統(tǒng)、降溫系統(tǒng)、加溫系統(tǒng)、灌溉系統(tǒng)、補(bǔ)光系統(tǒng)(農(nóng)用鈉燈)、二氧化碳補(bǔ)給系統(tǒng)(二氧化碳生成器)、加氧等。溫室大棚的采集和控制網(wǎng)絡(luò)需要大量的傳感節(jié)點(diǎn)來(lái)實(shí)現(xiàn),溫室大棚對(duì)其監(jiān)測(cè)與控制系統(tǒng)的需求就是網(wǎng)絡(luò)容量大、監(jiān)測(cè)點(diǎn)位置能靈活變動(dòng)、節(jié)點(diǎn)數(shù)目可隨意增減、系統(tǒng)可靠性高,可使用ZigBee無(wú)線傳感網(wǎng)絡(luò)來(lái)匹配這些要求。ZigBee傳感網(wǎng)絡(luò)的協(xié)調(diào)器負(fù)責(zé)ZigBee無(wú)線傳感網(wǎng)絡(luò)的管理。終端控制器通過(guò)串口與ZigBee協(xié)調(diào)器通信,根據(jù)用戶(hù)預(yù)定義的通信協(xié)議通過(guò)ZigBee協(xié)調(diào)器收集ZigBee無(wú)線傳感網(wǎng)絡(luò)中的信息,并通過(guò)ZigBee協(xié)調(diào)器向ZigBee無(wú)線網(wǎng)絡(luò)傳達(dá)指令。終端控制器選用三星公司的ARM芯片S3C2440作為主CPU的開(kāi)發(fā)板,在開(kāi)發(fā)板上安裝Linux操作系統(tǒng),使用Qt界面設(shè)計(jì)軟件完成終端控制器的可視化界面設(shè)計(jì)。物聯(lián)網(wǎng)終端控制器系統(tǒng)功能框圖如圖1所示:

圖1 終端控制器系統(tǒng)框圖

2 硬件設(shè)計(jì)

物聯(lián)網(wǎng)終端控制器的開(kāi)發(fā)板選用CPU為S3C2440的ARM開(kāi)發(fā)板,開(kāi)發(fā)板周邊接口豐富。選用ARM開(kāi)發(fā)板的串口UART0和網(wǎng)口eth0與PC電腦相連,串口UART0作為開(kāi)發(fā)板調(diào)試串口,網(wǎng)口eth0作為文件傳輸接口。PC電腦上安裝Ubuntu虛擬機(jī),再通過(guò)軟件搭建嵌入式系統(tǒng)開(kāi)發(fā)需要的交叉編譯環(huán)境。ZigBee網(wǎng)絡(luò)協(xié)調(diào)器開(kāi)發(fā)板設(shè)計(jì)時(shí),為了外觀的輕便簡(jiǎn)介,采用USB總線的轉(zhuǎn)接芯片CH340實(shí)現(xiàn)了USB轉(zhuǎn)串口,ARM開(kāi)發(fā)板需要通過(guò)USB接口與ZigBee網(wǎng)絡(luò)協(xié)調(diào)器的USB接口相連,并在ARM開(kāi)發(fā)板上Linux操作系統(tǒng)中安裝芯片CH340的USB轉(zhuǎn)串口的驅(qū)動(dòng),使得ARM開(kāi)發(fā)板與ZigBee網(wǎng)絡(luò)協(xié)調(diào)器開(kāi)發(fā)板之間硬件連線是通過(guò)USB接口連接,軟件通信是通過(guò)串口協(xié)議方式實(shí)現(xiàn)通信。ARM開(kāi)發(fā)板選用LCD接口與群創(chuàng)7寸真彩液晶屏,帶四線電阻式觸摸屏接口。ARM開(kāi)發(fā)板采用5V電源供電。

3 軟件設(shè)計(jì)

ARM開(kāi)發(fā)板的軟件設(shè)計(jì)分為三個(gè)部分:ARM開(kāi)發(fā)板的Linux操作系統(tǒng)內(nèi)核程序及其驅(qū)動(dòng)程序的安裝;物聯(lián)網(wǎng)終端控制器ARM開(kāi)發(fā)板與ZigBee協(xié)調(diào)器串口通信協(xié)議的設(shè)計(jì);物聯(lián)網(wǎng)終端控制器Qt可視化界面的設(shè)計(jì)。

(1)Linux操作系統(tǒng)內(nèi)核程序

ARM開(kāi)發(fā)板使用的內(nèi)核源碼是開(kāi)發(fā)板定制的linux-2.6.30.4版本,內(nèi)核的交叉編譯工具選用EABI-4.3.3版本,拷貝內(nèi)核源碼和交叉編譯工具壓縮包到Ubuntu虛擬機(jī),解壓后,配置交叉編譯環(huán)境的PATH環(huán)境變量,進(jìn)入內(nèi)核源碼包目錄,使用#make menuconfig命令可以選擇CH340驅(qū)動(dòng)加入內(nèi)核源碼編譯,在確認(rèn)各個(gè)內(nèi)核編譯選項(xiàng)后,調(diào)用#make zImage命令生成內(nèi)核鏡像。通過(guò)BusyBox生成ARM開(kāi)發(fā)板的文件系統(tǒng),由制作yaffs文件系統(tǒng)工具mkyaffs2image生成文件系統(tǒng)鏡像。使用ARM開(kāi)發(fā)板支持的燒錄鏡像的工具,將內(nèi)核鏡像和文件系統(tǒng)鏡像分別燒錄到ARM開(kāi)發(fā)板的NandFlash不同分區(qū)中,開(kāi)發(fā)板上電,內(nèi)核和文件系統(tǒng)成功啟動(dòng),并正常進(jìn)入內(nèi)核的shell模式,完成了內(nèi)核鏡像的燒錄和啟動(dòng)。

(2)物聯(lián)網(wǎng)終端控制器ARM開(kāi)發(fā)板與ZigBee協(xié)調(diào)器的串口通信協(xié)議

ARM開(kāi)發(fā)板與ZigBee協(xié)調(diào)器通過(guò)串口通信,方便ARM開(kāi)發(fā)板查詢(xún)ZigBee網(wǎng)絡(luò)各節(jié)點(diǎn)網(wǎng)絡(luò)狀態(tài)參數(shù)和傳感器信息,并根據(jù)需要設(shè)置各個(gè)ZigBee節(jié)點(diǎn)執(zhí)行器的狀態(tài)。由于ZigBee網(wǎng)絡(luò)傳感和執(zhí)行節(jié)點(diǎn)較多,各種功能需求的通信比較復(fù)雜,需要通過(guò)用戶(hù)自定義的ZigBee無(wú)線網(wǎng)絡(luò)通信協(xié)議來(lái)規(guī)范化通信的數(shù)據(jù)包格式。ZigBee無(wú)線網(wǎng)絡(luò)通信協(xié)議的數(shù)據(jù)包格式可以采用如表1、表2所示的命令包格式和返回包格式,命令包是ARM開(kāi)發(fā)板向ZigBee協(xié)調(diào)器發(fā)送的數(shù)據(jù)包,返回包是ZigBee協(xié)調(diào)器向ARM開(kāi)發(fā)板發(fā)送的數(shù)據(jù)包。命令包及返回包中多字節(jié)內(nèi)容,均是低前高后存放[2]。

表1 命令包格式

表2 返回包格式

ARM開(kāi)發(fā)板讀取ZigBee網(wǎng)絡(luò)各個(gè)節(jié)點(diǎn)的數(shù)據(jù),首先需要向ZigBee協(xié)調(diào)器查詢(xún)各個(gè)節(jié)點(diǎn)ZigBee網(wǎng)絡(luò)參數(shù),包括各節(jié)點(diǎn)物理地址和網(wǎng)絡(luò)地址及其父節(jié)點(diǎn)物理地址和網(wǎng)絡(luò),讀取ZigBee網(wǎng)絡(luò)參數(shù)RNW命令格式為:&(1)+WSN(3)+RNW(3)+“yyyyyyyy”(8)+*(1),返回格式為:&(1)+WSN(3)+RNW(3)+(type)S(1)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+總節(jié)點(diǎn)數(shù)(1)+節(jié)點(diǎn)類(lèi)型(3)+節(jié)點(diǎn)物理地址(8)+父節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+PANID(2)+“yyyyy”(5)+*(1),其中返回格式中的節(jié)點(diǎn)類(lèi)型用ROU表示路由器,COR表示協(xié)調(diào)器,RFD表示終端。ARM開(kāi)發(fā)板查詢(xún)到ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)信息后,形成一張當(dāng)前ZigBee網(wǎng)絡(luò)拓?fù)鋱D,并根據(jù)各個(gè)節(jié)點(diǎn)的物理地址識(shí)別出各個(gè)節(jié)點(diǎn)的功能,自動(dòng)完成功能與節(jié)點(diǎn)的綁定。然后ARM開(kāi)發(fā)板需要向ZigBee協(xié)調(diào)器查詢(xún)各個(gè)功能節(jié)點(diǎn)的傳感器信息,以讀取農(nóng)業(yè)生產(chǎn)基地空氣溫濕度數(shù)據(jù)和氣壓壓力數(shù)據(jù)的數(shù)據(jù)格式為例,說(shuō)明查詢(xún)傳感器信息的數(shù)據(jù)格式。讀取溫濕度數(shù)據(jù)RWS命令格式為:&(1)+WSN(3)+RWS(3)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+“yyyyyy”(6)+*(1),返回格式為:&(1)+WSN(3)+RWS(3)+(type)S(1)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+溫度數(shù)據(jù)(2)+濕度數(shù)據(jù)(2)+”yyyyyyyyyyyyyyyy”(16)+連接質(zhì)量(1)+*(1)。讀取氣壓壓力數(shù)據(jù)?RYL?命令格式為:&(1)+WSN(3)+RYL(3)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+”yyyyyy”(6)+*(1),返回格式為:&(1)+WSN(3)+RYL(3)+(type)S(1)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+氣壓數(shù)據(jù)(1)+”yyyyyyyyyyyyyyyyyyy”(19)+連接質(zhì)量(1)+*(1)。根據(jù)讀取溫濕度數(shù)據(jù)RWS命令和讀取氣壓壓力數(shù)據(jù)RYL命令的關(guān)鍵字的區(qū)別,可以衍生出其余功能傳感器節(jié)點(diǎn)的數(shù)據(jù)包詳細(xì)格式。

ARM開(kāi)發(fā)板在獲取到各個(gè)節(jié)點(diǎn)傳感器的實(shí)時(shí)信息后,形成專(zhuān)家系統(tǒng),根據(jù)經(jīng)驗(yàn)?zāi):刂?,設(shè)置農(nóng)業(yè)物聯(lián)網(wǎng)ZigBee網(wǎng)絡(luò)各個(gè)執(zhí)行器節(jié)點(diǎn)的狀態(tài)。以控制農(nóng)業(yè)生產(chǎn)基地的風(fēng)扇開(kāi)關(guān)和LED調(diào)光光源為例,說(shuō)明設(shè)置命令的數(shù)據(jù)格式。風(fēng)扇開(kāi)關(guān)SFS命令格式為:&(1)+WSN(3)+SFS(3)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+打開(kāi)或關(guān)閉風(fēng)扇控制碼(1)+“yyyyy”(5)+*(1),返回格式為:&(1)+WSN(3)+SFS(3)+(type)S(1)+節(jié) 點(diǎn)網(wǎng)絡(luò)地址(2)+“yyyyyyyyyyyyyyyyyyyy”(20)+連接質(zhì)量(1)+*(1)。LED燈調(diào)光 STG 命令格式為:&(1)+WSN(3)+STG(3)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+占空比(1)+“yyyyy”(5)+*(1),返回格式為:&(1)+WSN(3)+STG(3)+(type)S(1)+節(jié)點(diǎn)網(wǎng)絡(luò)地址(2)+“yyyyyyyyyyyyyyyyyyyy”(20)+連接質(zhì)量(1)+*(1)。根據(jù)風(fēng)扇開(kāi)關(guān)SFS命令和LED調(diào)光STG命令的關(guān)鍵字的區(qū)別,可以衍生出其余功能執(zhí)行節(jié)點(diǎn)的數(shù)據(jù)包詳細(xì)格式。

(3)物聯(lián)網(wǎng)終端控制器Qt可視化界面的設(shè)計(jì)

Qt的集成開(kāi)發(fā)環(huán)境(IDE)采用Qt Creator應(yīng)用程序,開(kāi)發(fā)環(huán)境基于Ubuntu平臺(tái),需要在Ubuntu上安裝Qt Creator的安裝程序qt-creator-linux-x86-opensource.bin。安裝Qt Creator之后,新建項(xiàng)目工程仍不具備Application GUI應(yīng)用,需要安裝Qt庫(kù)文件Qt4.8.1,并配置Qt編譯環(huán)境qmake,須用Ubuntu操作系統(tǒng)的root賬戶(hù)安裝Qt SDK。再在Qt Creator應(yīng)用程序中配置Qt Sdk,設(shè)置好交叉編譯環(huán)境,生成的可執(zhí)行文件拷貝到ARM開(kāi)發(fā)板的Linux文件系統(tǒng)后,可以運(yùn)行GUI界面程序。

4 結(jié)語(yǔ)

基于ARM的物聯(lián)網(wǎng)終端控制器的設(shè)計(jì),在考慮到控制器的應(yīng)用功能需求,適當(dāng)?shù)剡x擇ARM開(kāi)發(fā)板作為硬件平臺(tái),部署了操作系統(tǒng),并根據(jù)農(nóng)業(yè)物聯(lián)網(wǎng)ZigBee無(wú)線連接的通信需求,定義了ZigBee串口通信的協(xié)議和編程方法,最后介紹了物聯(lián)網(wǎng)終端控制器ARM開(kāi)發(fā)板上部署Qt可視化界面的設(shè)計(jì)方法。本設(shè)計(jì)相對(duì)系統(tǒng)地介紹了農(nóng)業(yè)物聯(lián)網(wǎng)中核心的控制器的設(shè)計(jì)方法,詳細(xì)地描述了終端控制器與周邊網(wǎng)絡(luò)連接的設(shè)計(jì)方案,以及終端控制器自身,從底層硬件到上層應(yīng)用程序設(shè)計(jì)的完整設(shè)計(jì)方案。農(nóng)業(yè)物聯(lián)網(wǎng)終端控制器的設(shè)計(jì)為物聯(lián)網(wǎng)終端控制器在其他行業(yè)中應(yīng)用提供了參考方案。

[1]曹明勤,張濤,王健.基于ZigBee的農(nóng)業(yè)物聯(lián)網(wǎng)監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).測(cè)控技術(shù)與儀器儀表[J],2013,39(12):86.

[2]盧愛(ài)紅,吳健.基于ZigBee的智能水務(wù)系統(tǒng)的研究.計(jì)算機(jī)時(shí)代[J],2016,(2):26.

[3]羅金玲,劉羅仁.基于ARM+Linux的物聯(lián)網(wǎng)遠(yuǎn)程監(jiān)控終端設(shè)計(jì).計(jì)算機(jī)系統(tǒng)應(yīng)用[J],2013,22(1):189.

[4]李興華,宋鵬宇,王想實(shí),周薇.基于物聯(lián)網(wǎng)技術(shù)的遠(yuǎn)程智能灌溉系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).電腦知識(shí)與技術(shù)[J],2016,12(8):169.

[5]劉嘉新,郎紅.基于物聯(lián)網(wǎng)的農(nóng)林小氣候監(jiān)控系統(tǒng)數(shù)據(jù)匯聚平臺(tái).農(nóng)業(yè)科學(xué)與裝備[J],2012,11(221):9.

猜你喜歡
網(wǎng)絡(luò)地址開(kāi)發(fā)板內(nèi)核
敬 告
萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
網(wǎng)絡(luò)地址轉(zhuǎn)換技術(shù)在局域網(wǎng)中的應(yīng)用
基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
Linux內(nèi)核mmap保護(hù)機(jī)制研究
Microchip最新推出兩款PIC32 Curiosity開(kāi)發(fā)板
淺析單片機(jī)開(kāi)發(fā)板的設(shè)計(jì)與制作
電子制作(2017年22期)2017-02-02 07:10:14
淺析IP地址分類(lèi)
高校校園網(wǎng)絡(luò)IP地址設(shè)計(jì)規(guī)劃解析
云林县| 寿光市| 公主岭市| 石屏县| 竹山县| 海城市| 巴南区| 河西区| 宁波市| 封开县| 石嘴山市| 池州市| 清流县| 民权县| 临高县| 庄浪县| 宜君县| 什邡市| 广元市| 和田县| 伊吾县| 达日县| 碌曲县| 改则县| 琼海市| 安远县| 乳源| 彭泽县| 临西县| 紫金县| 墨江| 会理县| 锡林郭勒盟| 宁武县| 三门峡市| 大港区| 临清市| 咸阳市| 广水市| 高州市| 滕州市|