陳越超,程志偉,王曉丹
(長(zhǎng)春師范大學(xué)工程學(xué)院,吉林長(zhǎng)春 130032)
隨著經(jīng)濟(jì)的不斷發(fā)展,我國(guó)養(yǎng)殖場(chǎng)規(guī)模不斷擴(kuò)大,養(yǎng)殖業(yè)正向高度智能化的方向發(fā)展。針對(duì)溫濕度、有害氣體濃度和光照的控制是養(yǎng)殖場(chǎng)生產(chǎn)過(guò)程中的重要控制環(huán)節(jié),傳統(tǒng)人工方式已經(jīng)無(wú)法滿足智能化的發(fā)展。本文提出基于Arduino的養(yǎng)殖場(chǎng)環(huán)境監(jiān)控系統(tǒng),可以對(duì)環(huán)境信息進(jìn)行智能監(jiān)控,管理員可以利用手機(jī)、電腦等終端,借助此系統(tǒng)遠(yuǎn)程實(shí)時(shí)調(diào)控養(yǎng)殖場(chǎng)環(huán)境參數(shù),也能及時(shí)獲取環(huán)境參數(shù)異常報(bào)警信息。
該系統(tǒng)主要由4部分組成:數(shù)據(jù)監(jiān)控單元、用戶網(wǎng)關(guān)、OneNet平臺(tái)和用戶遠(yuǎn)程監(jiān)控平臺(tái)。數(shù)據(jù)監(jiān)控單元包括傳感器數(shù)據(jù)采集模塊和執(zhí)行器模塊。數(shù)據(jù)監(jiān)控單元可以根據(jù)養(yǎng)殖場(chǎng)要求監(jiān)控參數(shù)不同,設(shè)置相匹配的監(jiān)控模塊,可任意擴(kuò)展;用戶網(wǎng)關(guān)通過(guò)WiFi模塊與數(shù)據(jù)監(jiān)控單元的各個(gè)模塊進(jìn)行數(shù)據(jù)交互;OneNet平臺(tái)是中國(guó)移動(dòng)提供的物聯(lián)網(wǎng)平臺(tái),負(fù)責(zé)接收和存儲(chǔ)監(jiān)測(cè)數(shù)據(jù)信息及向各控制模塊發(fā)送指令信息;用戶遠(yuǎn)程監(jiān)控平臺(tái)可以是用戶電腦、手機(jī)等,用戶隨時(shí)隨地通過(guò)訪問(wèn)遠(yuǎn)程監(jiān)控平臺(tái)的方式,實(shí)時(shí)監(jiān)控整個(gè)養(yǎng)殖場(chǎng)。系統(tǒng)總體結(jié)構(gòu)圖如圖1所示。
傳感器數(shù)據(jù)采集模塊主要包括電源模塊、微控制器、數(shù)據(jù)采集單元、報(bào)警顯示單元和無(wú)線通信單元。數(shù)據(jù)采集單元包括溫濕度檢測(cè)模塊、氣體濃度檢測(cè)模塊和光照強(qiáng)度檢測(cè)模塊等,Arduino MEGA2560作為微控制器,接收并處理各模塊采集的數(shù)據(jù),通過(guò)WiFi模塊(本文采用ESP8266)將采集數(shù)據(jù)信息實(shí)時(shí)傳輸?shù)絆neNet,通過(guò)LCD12864顯示數(shù)據(jù)信息,如果有數(shù)據(jù)超過(guò)報(bào)警限,蜂鳴器發(fā)出報(bào)警信號(hào)。
微控制器是監(jiān)控系統(tǒng)最重要的部分,決定了系統(tǒng)的質(zhì)量,本設(shè)計(jì)的微控制器選用Arduino MEGA2560,核心芯片是ATmega2560,同時(shí)具有1個(gè)USB口、4路UART接口、16路模擬輸入、54路數(shù)字輸入/輸出口、1個(gè)電源插座、1個(gè)16MHz晶體振蕩器、1個(gè)ICSP header和1個(gè)復(fù)位按鈕。內(nèi)部結(jié)構(gòu)圖如圖2所示。
溫濕度主要是影響雞群的自身舒適度和生理成長(zhǎng),本文采用DHT11數(shù)字溫濕度傳感器測(cè)量養(yǎng)殖場(chǎng)環(huán)境溫濕度,它是一款全量程標(biāo)定校準(zhǔn)單線數(shù)字輸出復(fù)合型傳感器,濕度測(cè)量范圍為20%~90%RH,測(cè)量精度為±5.0%RH,溫度測(cè)量范圍為0~50℃,測(cè)量精度為±1.0℃。當(dāng)檢測(cè)到溫度或濕度超過(guò)設(shè)定值上限,Arduino向控制模塊發(fā)送指令,控制通風(fēng)器增大通風(fēng)量;當(dāng)檢測(cè)到溫度或濕度低于設(shè)定值下限,Arduino向控制模塊發(fā)送指令,控制加濕器或加熱器進(jìn)行增濕或升溫。電路圖如圖3所示。

圖1 系統(tǒng)總體結(jié)構(gòu)圖

圖2 Arduino MEGA2560內(nèi)部結(jié)構(gòu)圖

圖3 溫濕度測(cè)量電路圖
氣體濃度主要影響雞群的自身舒適度和生理成長(zhǎng),本設(shè)計(jì)氣體濃度檢測(cè)采用半導(dǎo)體氣體傳感器,它可以通過(guò)對(duì)其內(nèi)部半導(dǎo)體元件中添加不同催化劑進(jìn)行檢測(cè)特定氣體濃度,利用半導(dǎo)體氣敏原件與氣體接觸,造成半導(dǎo)體性質(zhì)發(fā)生變化,檢測(cè)出特定氣體的成分和濃度。養(yǎng)殖場(chǎng)主要影響氣體為二氧化碳和氨氣,本設(shè)計(jì)采用MQ-135檢測(cè)二氧化碳濃度、MQ-137檢測(cè)氨氣濃度。氨氣濃度檢測(cè)模塊電路圖如圖4所示。

圖4 氨氣濃度檢測(cè)模塊電路圖

圖5 光照采集電路圖
光照強(qiáng)度主要影響雞群的生理活動(dòng)(包括采食、日常活動(dòng)和性成熟等)。光照采集電路圖如圖5所示,光照強(qiáng)度通過(guò)光敏電阻進(jìn)行采集,光敏電阻與3個(gè)電阻組成電橋,電橋輸出為微弱信號(hào),需要經(jīng)過(guò)運(yùn)算放大器(本文選用LM258)放大后送入Arduino MEGA2560進(jìn)行AD轉(zhuǎn)換和數(shù)據(jù)處理。當(dāng)光照過(guò)弱時(shí),Arduino向控制模塊發(fā)送指令,控制燈光控制器,增加光亮度。
執(zhí)行器模塊主要有電源單元、微控制器、輸入單元、執(zhí)行單元和無(wú)線通信單元組成。繼電器模塊控制通風(fēng)扇通風(fēng)、加濕器加濕、燈光亮度調(diào)節(jié)、升溫和降溫等。其中升溫模塊電路圖如圖6所示,Arduino數(shù)據(jù)輸出端口D21通過(guò)NPN型三極管Q13控制繼電器吸合或斷開,繼電器控制熱風(fēng)機(jī)開啟或關(guān)閉,達(dá)到加熱的效果。其他模塊電路原理相似,不在贅述。

圖6 升溫控制電路圖
本設(shè)計(jì)軟件分為兩部分,分別為數(shù)據(jù)采集單元程序和執(zhí)行器控制程序。
數(shù)據(jù)采集單元程序:首先初始化端口、定時(shí)器、WiFi模塊、液晶顯示等,然后進(jìn)行數(shù)溫濕度采集、氣體濃度采集和光照采集,將數(shù)據(jù)通過(guò)WiFi模塊傳到OneNet平臺(tái)中,最后將數(shù)據(jù)在液晶顯示器中實(shí)時(shí)顯示。流程圖如圖7所示。

圖7 數(shù)據(jù)采集單元程序流程圖
執(zhí)行器控制程序:首先初始化端口、定時(shí)器、WiFi模塊等,然后通過(guò)WiFi模塊接收OneNet平臺(tái)數(shù)據(jù),之后掃描按鍵,最后根據(jù)邏輯判斷結(jié)果控制相應(yīng)繼電器動(dòng)作。流程圖如圖8所示。

圖8 執(zhí)行器控制程序流程圖
本監(jiān)控系統(tǒng)與其它監(jiān)控系統(tǒng)存在較大的不同,它可以通過(guò)溫濕度、氣體濃度、光照度的集成檢測(cè)完成養(yǎng)殖場(chǎng)環(huán)境檢測(cè);通過(guò)液晶顯示器使工作人員能夠掌握實(shí)時(shí)數(shù)據(jù),并在超出報(bào)警限時(shí)通過(guò)蜂鳴器和指示燈發(fā)出聲光報(bào)警;同時(shí)將實(shí)時(shí)數(shù)據(jù)上傳到OneNet平臺(tái)上,用戶可以不分地域、時(shí)間通過(guò)訪問(wèn)網(wǎng)頁(yè)的方式,實(shí)時(shí)監(jiān)控整個(gè)養(yǎng)殖場(chǎng),還可以通過(guò)平臺(tái)向執(zhí)行控制模塊發(fā)送控制指令;最后,執(zhí)行器模塊通過(guò)WiFi模塊接收OneNet平臺(tái)數(shù)據(jù)及指令,控制執(zhí)行器動(dòng)作。
隨著“互聯(lián)網(wǎng)+”時(shí)代的到來(lái),基于開放物聯(lián)網(wǎng)平臺(tái)的養(yǎng)殖場(chǎng)綜合監(jiān)控系統(tǒng)將在養(yǎng)殖業(yè)起到越來(lái)越重要的作用,進(jìn)一步推進(jìn)“智慧養(yǎng)殖業(yè)”的發(fā)展。