《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于云計(jì)算的溫室視頻監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
Digikey(202412)
2024测试测量培训202410
基于云計(jì)算的溫室視頻監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
2015年電子技術(shù)應(yīng)用第6期
劉文慧,王 喆
齊齊哈爾大學(xué) 通信與電子工程學(xué)院,黑龍江 齊齊哈爾161006
摘要: 針對(duì)目前溫室大棚視頻監(jiān)控系統(tǒng)存在著離線數(shù)據(jù)量大的特點(diǎn),為了更加高效、安全地處理離線數(shù)據(jù)信息,并準(zhǔn)確獲取溫室大棚視頻數(shù)據(jù)信息,將云計(jì)算技術(shù)與視頻監(jiān)控技術(shù)融合在一起,既可以解決傳統(tǒng)的網(wǎng)絡(luò)視頻監(jiān)控不能傳輸大量數(shù)據(jù)、無法實(shí)現(xiàn)海量視頻文件存儲(chǔ)及計(jì)算的問題,又能從本質(zhì)上保證監(jiān)控系統(tǒng)的安全性、穩(wěn)定性、實(shí)時(shí)性和提高計(jì)算效率。這一技術(shù)的結(jié)合在增加農(nóng)民經(jīng)濟(jì)效益、減少人力消耗的同時(shí),促進(jìn)經(jīng)濟(jì)的快速發(fā)展,最終達(dá)到農(nóng)業(yè)科技信息化。
中圖分類號(hào): TP311
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)06-0139-04
Design and implementation of green house video monitoring system based on cloud computing
Liu Wenhui,Wang Zhe
College of Telecommunication and Electronic Engineering,Qiqihar University,Qiqihar 161006,China
Abstract: Aiming at greenhouses video monitoring system has the characteristics of offline data, in order to process offline data information more efficiently and safely, and accurately obtain greenhouses video data information, the Hadoop technology and video monitoring technology fuse in together,which can meet the needs of traditional network video monitoring cannot transmit large amounts of data, mass video file storage and computation, and can essentially guarantee control system security, stability, real-time and improve computational efficiency. The combination of this technology can increase farmers′ economic benefits and reduce the consumption of manpower,at the same time,it can promote the rapid development of economy,eventually achieving agricultural science and technology information.
Key words : cloud computing;video monitoring;greenhouse;agricultural informatization

   

0 引言

    雖然我國的信息化農(nóng)業(yè)較美國等發(fā)達(dá)國家起步晚,但現(xiàn)階段我國正在大力發(fā)展農(nóng)業(yè)的信息化、科技數(shù)字化。政府對(duì)數(shù)字農(nóng)業(yè)發(fā)展的大力支持和鼓勵(lì),并在黑龍江等省市進(jìn)行數(shù)字農(nóng)業(yè)實(shí)施[1],使我國在這些省市區(qū)的信息網(wǎng)絡(luò)基本完成建設(shè)并且逐步向基層發(fā)展,重大科技專項(xiàng)領(lǐng)域也取得了非常可喜的成果。

    隨著社會(huì)的進(jìn)步、科學(xué)技術(shù)的飛速發(fā)展、農(nóng)村電視網(wǎng)絡(luò)的普及以及城市先進(jìn)思想的影響,使現(xiàn)在農(nóng)民思想進(jìn)步了很多。根據(jù)國家出臺(tái)的相應(yīng)的政策措施,農(nóng)村土地將會(huì)最終趨于集中化、規(guī)?;?,加之農(nóng)民創(chuàng)業(yè)、就業(yè)的增加,將來農(nóng)村的勞動(dòng)力資源就會(huì)偏向不足。而且農(nóng)民因?yàn)榭梢岳脟业男☆~貸款政策,所以資金比較充足。因此溫室就急需要一些科技設(shè)備來對(duì)農(nóng)作物生長環(huán)境進(jìn)行監(jiān)測[2-3]?,F(xiàn)在全球科學(xué)技術(shù)飛速發(fā)展,數(shù)字化的發(fā)展也相當(dāng)迅速,并且被應(yīng)用到許多的行業(yè)中。加之全球數(shù)字農(nóng)業(yè)的快速發(fā)展,全球農(nóng)業(yè)走向規(guī)?;?、專業(yè)化是必然趨勢,而且我國政府現(xiàn)在出臺(tái)的政策也是讓我國的農(nóng)業(yè)與國際接軌,使現(xiàn)在農(nóng)業(yè)自動(dòng)化逐漸地深入,農(nóng)業(yè)現(xiàn)在也在逐漸數(shù)字化,必然會(huì)使視頻圖像采集逐漸被應(yīng)用到農(nóng)業(yè)中,這樣可以準(zhǔn)確獲得農(nóng)作物的實(shí)時(shí)動(dòng)態(tài)信息,進(jìn)而能更好、更方便地管理農(nóng)業(yè)生產(chǎn),用最少的投資來獲取最高的收益。

    本系統(tǒng)以云計(jì)算[4-5]框架為開發(fā)平臺(tái),利用無線通信網(wǎng)絡(luò)的移動(dòng)終端設(shè)備進(jìn)行數(shù)據(jù)的傳輸,實(shí)現(xiàn)了為移動(dòng)用戶終端設(shè)備提供遠(yuǎn)程監(jiān)控的設(shè)計(jì)。此設(shè)計(jì)可以對(duì)溫室的環(huán)境進(jìn)行監(jiān)測,提高工作效率的同時(shí)也增加了用戶對(duì)終端設(shè)備使用的靈活性。

1 設(shè)計(jì)原理及內(nèi)容

1.1 設(shè)計(jì)原理

    基于云計(jì)算的溫室視頻采集模塊設(shè)計(jì)的硬件部分是由主控芯片、外擴(kuò)兩部分構(gòu)成的,其中主控芯片是三星公司的S3C2440芯片,外擴(kuò)部分包括:LCD顯示部分、USB控制器、攝像頭、網(wǎng)絡(luò)傳輸?shù)?。本設(shè)計(jì)的相關(guān)軟件部分有:Linux系統(tǒng)的搭建、USB攝像頭的驅(qū)動(dòng)程序、視頻采集程序、LCD實(shí)時(shí)顯示程序、網(wǎng)絡(luò)傳輸程序等??傮w結(jié)構(gòu)如圖1所示。

jsj2-t1.gif

    軟件部分主要實(shí)現(xiàn)將前端采集的數(shù)據(jù)存儲(chǔ)在分布式文件系統(tǒng)(HDFS)中,分布式文件系統(tǒng)是基于云計(jì)算框架開發(fā)的。由于此平臺(tái)是分布的,多臺(tái)計(jì)算機(jī)可并行計(jì)算,提高運(yùn)算效率。

1.2 主要研究的內(nèi)容

    通過對(duì)黑龍江省齊齊哈爾市周邊的溫室大棚進(jìn)行詳細(xì)的調(diào)查和理論分析,得到溫室視頻采集模塊的具體要求如下:

    (1)采集到的農(nóng)作物的視頻圖像清晰度必須要保證能夠使操作人員從中很迅捷地獲得植物的自身生長發(fā)育以及病蟲害情況。

    (2)采集的視頻圖像信息不僅要有農(nóng)作物的近景,也必須有較遠(yuǎn)的圖像信息,并且是可以進(jìn)行操控的。

    (3)要能夠把采集到的視頻圖像信息以非常高的質(zhì)量傳輸?shù)娇刂浦行?,進(jìn)而保證對(duì)農(nóng)作物進(jìn)行實(shí)時(shí)有效的監(jiān)測。

    (4)采集模塊不需要進(jìn)行安裝與維護(hù),并且體積要盡量小,能夠方便在溫室進(jìn)行安裝和轉(zhuǎn)移。

    (5)要求采集模塊有很好的擴(kuò)展性,采集的性能非常穩(wěn)定,還要功耗較低,性價(jià)比高。

    (6)由于采集到的視頻信息需要長時(shí)間保存,有助于對(duì)農(nóng)作物的分析,就要求很大的存儲(chǔ)空間與計(jì)算能力。

2 總體設(shè)計(jì)

2.1 溫室視頻采集模塊硬件設(shè)計(jì)

    選用FL2440開發(fā)板,可以提供豐富的USB硬件接口。主板采用兩層的PCB板設(shè)計(jì),有兩個(gè)串口、一個(gè)采用DM900AE的100M網(wǎng)口、4個(gè)USB接口、一個(gè)SD卡接口、有擴(kuò)展LCD或者觸摸屏的接口、一個(gè)CMOS攝像頭接口等,可以滿足本實(shí)驗(yàn)所需的所有接口。因此本次研究的硬件系統(tǒng)非常適合采用FL2440開發(fā)板。

    主控芯片主要采用S3C2440微處理器芯片。它的內(nèi)部嵌有先進(jìn)微控制器總線架構(gòu)。S3C2440微處理器支持的最大尋址空間是4 GB,它的數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器在內(nèi)存空間中的總線接口不同,但是編址采用的是統(tǒng)一的。在本次研究中,S3C2440微處理器地址空間是1 GB,而且該地址空間被分成8份,每一份的容量是128 MB。它的存儲(chǔ)器可以被認(rèn)為是由零地址為開始的字節(jié)的線性組合,存儲(chǔ)器存儲(chǔ)字?jǐn)?shù)據(jù)的方式有大端和小端的兩種,這兩者的具體數(shù)據(jù)存儲(chǔ)如圖2和圖3所示。S3C2440微處理器有7種處理器工作模式,并且每種模式下的寄存數(shù)組和訪問權(quán)限都不一樣。

jsj2-t2.gif

jsj2-t3.gif

2.2 溫室視頻采集模塊軟件設(shè)計(jì)

    從軟件的方面劃分嵌入式操作系統(tǒng),可以分成三部分:一個(gè)是引導(dǎo)加載程序,實(shí)質(zhì)是一段很小的程序;第二個(gè)在本大田視頻采集模塊中所使用的是Linux內(nèi)核;在這兩者的后面是涵蓋有系統(tǒng)命令和應(yīng)用程序的文件系統(tǒng)。嵌入式中儲(chǔ)存結(jié)構(gòu)圖如圖4所示,包含有引導(dǎo)加載程序、內(nèi)核啟動(dòng)參數(shù)、內(nèi)核映像以及文件系統(tǒng)。

jsj2-t4.gif

2.3 內(nèi)核剪裁、制作和移植

    Linux內(nèi)核有五個(gè)基本元素,它們的名稱及相互關(guān)系如圖5所示。因?yàn)閮?nèi)核是為軟硬件提供服務(wù)的,所以對(duì)于不同的硬件平臺(tái)就需要使用不同的內(nèi)核。因此,當(dāng)要把內(nèi)核移植到一個(gè)嵌入式平臺(tái)時(shí),就需要對(duì)要進(jìn)行移植的內(nèi)核進(jìn)行編譯。

jsj2-t5.gif

2.4 系統(tǒng)文件的制作和移植

    最常見的儲(chǔ)存器件有SDRAM、DRAM和ROM(常用Flash存儲(chǔ)器)。而日常學(xué)習(xí)工作中常見的基于存儲(chǔ)設(shè)備的根文件系統(tǒng)有YAFFS、YAFFS2等。本設(shè)計(jì)的硬件系統(tǒng)采用的儲(chǔ)存器件是NAND閃存,因此本系統(tǒng)的文件系統(tǒng)采用的是基于NAND閃存的YAFFS文件系統(tǒng)。

    設(shè)計(jì)系統(tǒng)所運(yùn)行的文件系統(tǒng)為:管理層所進(jìn)入的入口、系統(tǒng)內(nèi)YAFFS內(nèi)部自身運(yùn)行的層面以及系統(tǒng)進(jìn)入NAND閃存的入口層。這樣用戶在做它與系統(tǒng)的入口的相關(guān)程序時(shí)就非常簡單了,能夠更加快速便捷地把自己設(shè)計(jì)的程序模塊集成到所使用的系統(tǒng)里。綜合上面的比較,YAFFS的運(yùn)行速率更迅速,并且內(nèi)存空間使用小。

2.5 攝像頭驅(qū)動(dòng)程序設(shè)計(jì)

    USB攝像頭移除函數(shù)在該驅(qū)動(dòng)程序中的名字是sp_discon,它的參數(shù)有u_dev *dev和 *ptr,該函數(shù)的作用是注銷USB攝像頭的video設(shè)備、釋放端口、傳輸U(kuò)RB包、釋放內(nèi)存空間等工作。該驅(qū)動(dòng)模塊的操作函數(shù)是file_opt。這個(gè)驅(qū)動(dòng)程序完成設(shè)備的關(guān)鍵系統(tǒng)調(diào)用,它所依據(jù)的是V4L協(xié)議。因?yàn)檫@是攝像頭驅(qū)動(dòng)程序,它的主要功能就是完成數(shù)據(jù)的采集和傳輸功能,不需要向攝像頭寫數(shù)據(jù),所以不需要有寫操作,因此系統(tǒng)也不會(huì)調(diào)用write函數(shù)。USB攝像頭驅(qū)動(dòng)的具體代碼如下所示:

    PDEBUG(S,"iface alt size :%d %d %d",spca50px->iface ,alt, size);

    if(usb_set_interface(spca50px->dev, spca50x->iface,alt)<0){

        err("Set packet size:set interface error");

        return -EBUSY;

    }

    ep=SPCA50X_ENDPOINT_ADDRESS -1;

    #if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,3)

    intf=usb_ifnum_to_if(dev,spca50x->iface);

    if(intf){

        interface=usb_altnum_to_altsetting(intf,alt);

    }else{

        PDEBUG(0,"intf not found");

        return -ENXT0;

    }

    整個(gè)溫室視頻采集模塊最重要的部分就是視頻圖像的采集部分,通常視頻數(shù)據(jù)的采集方式有內(nèi)存映射式和直接讀取式兩種。本文采用的是內(nèi)存映射方式,它是要經(jīng)過執(zhí)行mmap函數(shù)來實(shí)現(xiàn)內(nèi)存映射的。mmap系統(tǒng)調(diào)用的實(shí)質(zhì)就是讓兩個(gè)進(jìn)程映到一個(gè)相同的普通文件從而來達(dá)到內(nèi)存共享的目的。這樣進(jìn)程對(duì)文件的操作就如同操作內(nèi)存一樣了。

3 溫室視頻采集模塊的安裝與調(diào)試

3.1 視頻圖像編碼

    因?yàn)橛肬SB攝像頭所采集到的原始視頻圖像的信息特別大,并且現(xiàn)在所用網(wǎng)絡(luò)的傳輸量很有限;所以要對(duì)采集到的原始視頻圖像先進(jìn)行壓縮,然后再進(jìn)行傳輸。不同的視頻采集設(shè)備所采集到的視頻圖像的格式是不同的,在該系統(tǒng)中使用的ZC301的USB攝像頭采集的格式是RGB,還有YUV、JPG等。對(duì)采集到的原始視頻圖像一般要進(jìn)行JPEG編解碼,編碼如圖6所示。

jsj2-t6.gif

3.2 視頻圖像編JPEG解碼

    本系統(tǒng)使用的USB攝像頭的芯片是ZC301,它內(nèi)置的DSP能夠進(jìn)行快速的壓縮編碼。所以如果要進(jìn)行視頻圖像顯示,就必須對(duì)USB攝像頭傳輸回來的數(shù)據(jù)進(jìn)行解碼,具體的解碼流程如圖7所示。

jsj2-t7.gif

3.3 圖像數(shù)據(jù)的網(wǎng)絡(luò)傳輸

    本文使用的是socket中比較常用的流式套接字類型。使用流式套接字的TCP服務(wù)器端通信流程是:最開始就要用socket函數(shù)來初始化和創(chuàng)建流式套接字,接著通過bind函數(shù)來把端口號(hào)綁定,再通過listen函數(shù)來等候客戶端所發(fā)送的連接請(qǐng)求,然后系統(tǒng)就會(huì)通過accept函數(shù)來完成服務(wù)器與客戶端的連接,這樣就把一個(gè)新的通信進(jìn)程創(chuàng)建完成了。相比較下,客戶端要進(jìn)行的編程就容易多了,只要如服務(wù)器端先初始化和創(chuàng)建流式套接字,再通過使用connect函數(shù)來發(fā)送請(qǐng)求以及創(chuàng)建與TCP服務(wù)器的連接。這一步完成后,就能夠進(jìn)行兩者之間的通訊了。

3.4 云計(jì)算集群的搭建及數(shù)據(jù)查詢

    利用云計(jì)算集群的優(yōu)勢,首先搭建集群由一臺(tái)Master節(jié)點(diǎn)分發(fā)任務(wù)線程,由若干個(gè)Slave負(fù)責(zé)任務(wù)的執(zhí)行。數(shù)據(jù)查詢系統(tǒng)框架如圖8所示。

jsj2-t8.gif

3.5 Web服務(wù)器端顯示

    基于云計(jì)算的溫室大棚視頻監(jiān)控系統(tǒng)中,前端采集到的視頻信息通過云計(jì)算架構(gòu)存儲(chǔ)在分布式文件系統(tǒng)中,查看數(shù)據(jù)信息時(shí),由于是多臺(tái)服務(wù)器分布式并行計(jì)算,因此計(jì)算效率明顯提高。圖9為視頻采集模塊創(chuàng)建連接端口命令,通過二次模塊調(diào)試可以看出,溫室視頻采集模塊對(duì)農(nóng)作物視頻采集穩(wěn)定,觸屏的視頻圖像顯示非常清晰,并且以非常高的質(zhì)量把采集到的視頻圖像傳輸?shù)搅薖C上,在其上顯示的視頻圖像很清晰、連貫,即能夠?qū)r(nóng)作物進(jìn)行非常有效的實(shí)時(shí)監(jiān)測,使操作人員能夠從其中迅速獲得所觀測農(nóng)作物的生長發(fā)育情況和是否有病蟲害等信息。而且對(duì)于溫室的農(nóng)作物,視頻信息采集受陽光的影響很小,本次實(shí)驗(yàn)非常的成功。

jsj2-t9.gif

4 結(jié)論

    本文采用先進(jìn)的云計(jì)算技術(shù)應(yīng)用在溫室大棚視頻監(jiān)控系統(tǒng)中,不但可以長期存儲(chǔ)海量的視頻數(shù)據(jù),也可以通過服務(wù)器集群并行計(jì)算的方式快速地查找相關(guān)視頻信息,有利于農(nóng)戶實(shí)時(shí)觀察農(nóng)作物的生長狀況,增加經(jīng)濟(jì)效益,使農(nóng)業(yè)生產(chǎn)達(dá)到信息化。

參考文獻(xiàn)

[1] 張喜海,于嘯,吳亞春,等.數(shù)字農(nóng)業(yè)教育與學(xué)生創(chuàng)新意識(shí)培養(yǎng)[J].計(jì)算機(jī)教育,2010(8):11-13.

[2] 郭文川,程寒杰,李瑞明,等.基于無線傳感器網(wǎng)絡(luò)的溫室環(huán)境信息監(jiān)測系統(tǒng)[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2010,41(7):181-185.

[3] 李莉,李海霞,劉卉,等.基于無線傳感器網(wǎng)絡(luò)的溫室環(huán)境監(jiān)測系統(tǒng)[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2009,40(z1):228-231.

[4] 國際電聯(lián)電信標(biāo)準(zhǔn)化顧問組,張進(jìn)京.智能網(wǎng)格與云計(jì)算發(fā)展問題討論[J].中國信息界,2010(5):69-70.

[5] 劉洋,張鋼,韓璐,等.基于物聯(lián)網(wǎng)與云計(jì)算服務(wù)的農(nóng)業(yè)溫室智能化平臺(tái)研究與應(yīng)用[J].計(jì)算機(jī)應(yīng)用研究,2013,30(11):3331-3335.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。