◆關(guān)麗華
?
溫室內(nèi)部空氣環(huán)境數(shù)據(jù)采集終端的設(shè)計(jì)與研究
◆關(guān)麗華
(山西經(jīng)貿(mào)職業(yè)學(xué)院山西 030000)
隨著現(xiàn)代電子信息技術(shù)的不斷發(fā)展與完善,網(wǎng)絡(luò)技術(shù)、微型傳感器技術(shù)、物聯(lián)網(wǎng)技術(shù)在農(nóng)業(yè)生產(chǎn)中發(fā)揮出越來越重要的作用。通過對溫室內(nèi)部的空氣環(huán)境數(shù)據(jù)進(jìn)行實(shí)時(shí)監(jiān)測與在線存儲,大幅減少了人工作業(yè),并有效提升了溫室大棚空氣環(huán)境數(shù)據(jù)采集的準(zhǔn)確度與實(shí)時(shí)性。在提高農(nóng)業(yè)生產(chǎn)資源利用率、促進(jìn)現(xiàn)代農(nóng)業(yè)可持續(xù)發(fā)展等方面都有著非常重要的意義。
傳感器技術(shù);物聯(lián)網(wǎng)技術(shù);溫室管理;空氣檢測
在溫室大棚的運(yùn)行過程中,空氣的溫濕度、二氧化碳與氧氣的含量變化是幾個(gè)非常重要的參數(shù),將上述條件通過技術(shù)手段將其人為控制在最優(yōu)范圍內(nèi),對農(nóng)業(yè)大棚的作物產(chǎn)量與經(jīng)濟(jì)效益有著重要影響,而準(zhǔn)確的實(shí)時(shí)數(shù)據(jù)采集功能則是設(shè)計(jì)合理有效的環(huán)境控制方案的必要前提條件。
數(shù)據(jù)采集終端需要實(shí)現(xiàn)對農(nóng)業(yè)大棚內(nèi)部的4項(xiàng)空氣環(huán)境參數(shù)(溫度、濕度、二氧化碳濃度及氧氣濃度)的采集以及數(shù)據(jù)的格式轉(zhuǎn)換與上傳功能,數(shù)據(jù)采集功能通過在Raspberry Pi 3B+平臺上搭載微型傳感器設(shè)備來實(shí)現(xiàn),這些傳感器使用杜邦線與Raspberry Pi 3B+平臺所提供的GPIO接口(40個(gè)接口中含多個(gè)電源輸出即數(shù)據(jù)I/O接口)連接并進(jìn)行信號傳輸[1]。而數(shù)據(jù)的格式轉(zhuǎn)換與遠(yuǎn)程上傳功能則由在Raspberry Pi 3B+平臺運(yùn)行的Python程序?qū)崿F(xiàn)。系統(tǒng)硬件架構(gòu)如圖1所示。
系統(tǒng)為實(shí)現(xiàn)二氧化碳數(shù)據(jù)的采集功能所選用的氣體傳感器模塊為BYC11-CO2,在本項(xiàng)目中,主要使用BYC11-CO2傳感器的3個(gè)引腳:Pin1(信號輸出),Pin4(接地),Pin5(供電輸入)。BYC11-CO2與RasPberry Pi 3B+的GPIO接口的線路連接方式如表1所示。

圖1 系統(tǒng)硬件架構(gòu)
表1 BYC11-CO2線路連接方式

BYC11-CO2發(fā)送的是一組高低電平脈沖信號,檢測24位數(shù)據(jù)(16位數(shù)據(jù)與8位校驗(yàn)位)以高電平信號的持續(xù)時(shí)間進(jìn)行描述,以低電平信號為結(jié)束標(biāo)記。信號的處理基于對傳感器輸出電平變化的檢測來完成,其中第一個(gè)循環(huán)用于等待高電平信號的接收(即等待信號開始),第二個(gè)循環(huán)用于等待低電平信號的接收(即等待信號結(jié)束)。在完成24位信號的接收過程后,首先將數(shù)組中記錄下來的時(shí)間長度轉(zhuǎn)換為二進(jìn)制數(shù)據(jù),轉(zhuǎn)換條件為數(shù)組單元(下標(biāo)從0-15)中的值大于等于100(毫秒)時(shí),更新該單元的值為1,否則為0,然后再將數(shù)組中的二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為10進(jìn)制數(shù)據(jù)存儲至內(nèi)存中等待上傳。
系統(tǒng)中為實(shí)現(xiàn)溫度數(shù)據(jù)采集功能所選用的傳感器模塊為DHT11,在本項(xiàng)目中,主要使用DHT11傳感器的3個(gè)引腳:Pin1(供電輸入),Pin2(接地),Pin3(信號輸出)。DHT11與RasPberry Pi 3B+的GPIO接口的線路連接方式如表2所示。
表2 DHT11線路連接方式

DHT11發(fā)送的是一組由高低電平脈沖信號描述的24位二進(jìn)制數(shù)據(jù),其中高8位為校驗(yàn)值,第16位為溫度數(shù)據(jù)且最高位為正負(fù)值標(biāo)識。溫度信號的處理通過對高低電平變化的檢測來完成,首先將高電平信號時(shí)長以1或0的形式存儲至數(shù)組中,然后再將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為10進(jìn)制數(shù)據(jù)并根據(jù)第16位的數(shù)值設(shè)置其正負(fù)。
本系統(tǒng)選用的濕度采集傳感器模塊為DHT12,該設(shè)備屬于感濕電阻式濕度傳感器,具有很高的可靠性與穩(wěn)定性。在本項(xiàng)目中,主要使用DHT12傳感器的3個(gè)引腳:Pin1(供電輸入),Pin2(信號輸出),Pin3(接地)。DHT12與RasPberry Pi 3B+的GPIO接口的線路連接方式如表3所示。
表3 DHT12線路連接方式

DHT12發(fā)送的是一組由高低電平脈沖信號描述的24位二進(jìn)制數(shù)據(jù),其中高8位為校驗(yàn)值,第16位為濕度數(shù)據(jù),RasPberry Pi 3B+對信號的處理過程與上文中的二氧化碳數(shù)據(jù)處理過程相同。
系統(tǒng)為實(shí)現(xiàn)氧氣濃度數(shù)據(jù)采集功能所選用的傳感器模塊為4OCV,該設(shè)備屬于固態(tài)電解質(zhì)傳感器。在本項(xiàng)目中,主要使用4OCV傳感器的3個(gè)引腳:Pin2(供電輸入),Pin3(接地),Pin8(信號輸出)。4OCV輸出的信號為80位二進(jìn)制數(shù)據(jù),其中第49至64位為檢測值,第41至48位為檢測氣體當(dāng)量,溫度信號的處理通過對高低電平變化的檢測來完成,首先需要將檢測值與氣體當(dāng)量分別進(jìn)行電平分析獲取二進(jìn)制數(shù)據(jù),然后還要通過兩次進(jìn)制轉(zhuǎn)換分別將數(shù)值第49至64位以及第41至48位的監(jiān)測數(shù)值與氣體當(dāng)量數(shù)據(jù)轉(zhuǎn)換為10進(jìn)制數(shù)據(jù),并對它們進(jìn)行除法運(yùn)算來獲得氧氣濃度值結(jié)果。
Python語言中的數(shù)據(jù)庫訪問接口為Python DB-API,該接口提供了一系列數(shù)據(jù)庫模塊及訪問對象,為開發(fā)人員從不同種類的數(shù)據(jù)庫的存取信息提供了良好的支持[2]。對于MySQL數(shù)據(jù)庫,Python DB-API中與之對應(yīng)的是MySQLdb模塊,該模塊基于MySQL C API建立,在使用之前需要在RasPberry Pi3B+平臺的Linux系統(tǒng)中下載并安裝此模塊。
其中數(shù)據(jù)庫的連接建立需要使用MySQLdb對象的connect方法,而游標(biāo)的建立則使用數(shù)據(jù)庫連接對象的cursor方法,最后通過游標(biāo)對象的execute方法來執(zhí)行SQL命令字符串。此外,在服務(wù)器端接收數(shù)據(jù)時(shí),我們將服務(wù)器MySQL數(shù)據(jù)庫的網(wǎng)絡(luò)端口號由默認(rèn)的3306修改設(shè)置為23961,以盡量避免服務(wù)器受到網(wǎng)絡(luò)攻擊。
本文基于現(xiàn)代農(nóng)業(yè)管理企業(yè)在當(dāng)前溫室大棚管理工作中的現(xiàn)實(shí)需求與未來發(fā)展規(guī)劃,設(shè)計(jì)了一套能夠自動實(shí)現(xiàn)對溫室內(nèi)部空氣環(huán)境進(jìn)行實(shí)時(shí)監(jiān)測的硬件設(shè)備組建方案,為提農(nóng)業(yè)生產(chǎn)管理工作效率、提高農(nóng)作物產(chǎn)量、降低運(yùn)營成本等方面提供準(zhǔn)確的數(shù)據(jù)支持。
[1]趙建軍.基于RasPberry Pi的傳感器開發(fā)[J].山西電子技術(shù),2017,6(1):122-124.
[2]李一凡.樹莓派平臺在物聯(lián)網(wǎng)系統(tǒng)開發(fā)中的應(yīng)用研究[J].閩江學(xué)院學(xué)報(bào),2018,1(2):57-59.
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2019年5期