王軍陣 種景 陳旭
摘 要 為實現對船載無土栽培溫室環(huán)境參數的實時監(jiān)測,提出了一種溫室環(huán)境參數監(jiān)測系統(tǒng)的設計方法。使用基于嵌入式RTMES4.11操作系統(tǒng)的STM32F4微處理器采集環(huán)境參數,在基于嵌入式Linux的S3C6410的硬件平臺上基于Qt構建應用程序,實現數據的本地存儲和本地顯示,通過Socket技術實現嵌入式平臺與服務器之間的通信,將采集到的環(huán)境參數通過網絡上傳到Linux服務器并以WEB方式實時顯示環(huán)境參數,實現對遠洋船舶無土栽培溫室內環(huán)境的遠程實時監(jiān)測。
關鍵詞 嵌入式 Linux 溫室環(huán)境 監(jiān)控
中圖分類號:S818 文獻標識碼:A
0引言
隨著計算機、自動化技術的高速發(fā)展,自動化監(jiān)控技術廣泛應用于溫室培養(yǎng)等場所,為了提高無土栽培溫室內蔬菜成活率提供了重要的監(jiān)測手段。為保證遠洋船舶內無土栽培溫室內蔬菜的成活率,必須保證溫室內的溫度、濕度和光照等環(huán)境參數保持在一定的范圍內。目前,遠洋船舶內溫室內的環(huán)境參數監(jiān)測中,可以采用人工定期檢測的方法,這種方法存在監(jiān)測不及時、維護保養(yǎng)差、記錄不方便等因素,效率較低,不能實現實時監(jiān)測等缺點。
本文根據遠洋船舶無土栽培溫室內環(huán)境的特點和需求,提出了一種遠洋船舶溫室環(huán)境參數監(jiān)測系統(tǒng)的設計方法。通過STM32F4采集室內溫度、濕度、光照強度環(huán)境參數信息,采用基于Linux嵌入式操作系統(tǒng)的S3C6410作為船舶溫室室內環(huán)境監(jiān)測的軟件和硬件平臺,嵌入式GUI采用Qt實現環(huán)境數據的本地實時顯示和本地存儲,并將環(huán)境參數通過Socket上傳到Linux服務器,以WEB方式實時顯示環(huán)境參數,實現對遠洋船舶無土栽培溫室內環(huán)境的遠程實時監(jiān)控。
1系統(tǒng)硬件設計
該室內環(huán)境監(jiān)測系統(tǒng)主要是以S3C6410為控制核心,基于ARM11的S3C6410微處理器具有低功耗、高性能、外設接口豐富等優(yōu)點,并輔以512MB NAND Flash,256MB SDRAM等器件作為ARM的外圍電路構成嵌入式ARM平臺。S3C6410通過IIC實現對環(huán)境參數采集主控單元STM32F4的控制,環(huán)境參數采集單元STM32F4采用溫濕度傳感器STH11和光強度傳感器BH1750對溫室內環(huán)境進行檢測,實現對室內環(huán)境參數的實時測量,通過IIC通信協議上傳到基于Linux的S3C6410嵌入式系統(tǒng),最后由S3C6410對環(huán)境參數進行處理、本地存儲和顯示,并通過Socket技術上傳至Linux服務器,完成對遠洋船舶無土栽培溫室內環(huán)境參數的在線實時監(jiān)測。硬件電路主要由觸摸屏顯示模塊和環(huán)境參數采集模塊等組成,總體結構如圖1所示。
1.1 STM32F4與環(huán)境參數采集模塊的接口電路
環(huán)境參數采集模塊包括溫濕度傳感器采集模塊和光照強度傳感器采集模塊兩部分,其中,濕度傳感器選用瑞士Sensirion公司生產的SHT11,其內部由一片檢測相對濕度和溫度的混合傳感器模塊及一個經校準的數字輸出組成,兩線串行數字接口和內部電壓自動調節(jié),無需外部模擬電子電路,可以方便、快速的進行系統(tǒng)集成。光照強度傳感器選用BH1750,它是一款數字型光照強度傳感器集成電路芯片,采用兩線式串行接口數據通信,具有較高的分辨率、支持標準I2C總線接口、接近人類視覺靈敏度的靈敏度特性、數字式輸出、光源依賴性弱和較大的測量范圍等特點,可以測量1lx~65535lx范圍內的光照強度。
兩款傳感器SHT11和BH1750與STM32F4的連接電路圖如圖2所示,SHT11的串行時鐘輸入線SCK用于STM32F4微控制器與SHT11之間的通信同步,與STM32F4的PB10口相連,串行數據線DATA用于內部數據的輸出與外部數據的輸入,與STM32F4的PB11口相連。BHT1750與STM32F4的I2C1外設模塊相連,將其SCL和SDA分別映射到PB6和PB7管腳。
圖2:SHT11和BH1750與STM32F407的接口電路
1.2 S3C6410與STM32F407的IIC接口電路
為了便于以后增加新的環(huán)境參數采集傳感器,STM32F4只負責環(huán)境參數的采集,而后續(xù)環(huán)境參數的處理、存儲、顯示和網絡傳輸工作全部交給高性能微處理器S3C6410,采用IIC通信協議實現將STM32F4采集到的環(huán)境參數傳輸到S3C6410微處理器,兩塊微處理器的連接電路如圖3所示,STM32F4的I2C3外設模塊與S3C6410的I2CSCL和I2CSDA相連,將其SCL和SDA分別映射到PA8和PC9管腳。
2系統(tǒng)軟件設計
系統(tǒng)軟件的設計分三個部分:基于嵌入式STM32F4環(huán)境參數采集端軟件設計、嵌入式S3C6410的控制終端軟件設計和基于Linux服務器的WEB軟件設計。
2.1基于STM32F4的軟件設計
采用嵌入式操作系統(tǒng)RTEMS4.11實現STM32F4對環(huán)境參數傳感器的控制,并實現與S3C6410之間的數據傳輸,便于后續(xù)的模塊化開發(fā)與擴展。嵌入式操作系統(tǒng)RTEMS主要負責協調各個任務,并通過實施調度將控制權交給當前最高優(yōu)先級任務。軟件的結構框圖如圖4所示。主要任務包括傳感器信息采集任務與S3C6410的通信任務等,其中,傳感器信息采集任務主要負責溫濕度和光照強度環(huán)境參數的采集;通信任務則負責將采集的環(huán)境參數通過IIC通信協議將采集的數據實時發(fā)送給S3C6410,供S3C6410完成對數據的顯示、本地存儲和網絡傳輸。
2.2 基于嵌入式Linux的軟件設計
本部分軟件包括系統(tǒng)內核、設備驅動程序和應用程序,本設計采用的是內核可裁剪的、開源的嵌入式Linux系統(tǒng)內核,設備驅動程序對底層硬件進行抽象和控制,向上為頂層應用程序提供一致的函數接口,但由于硬件設計基本采用的都是標準模塊,其驅動程序可以從現成的開發(fā)軟件中裁剪或簡單修改而成,只有與STM32F4的驅動需要重新開發(fā)。應用層軟件是整個嵌入式S3C6410硬件平臺上Linux終端監(jiān)測軟件設計的重點,包括環(huán)境參數的獲取、本地報警、本地顯示和與服務器之間的網絡傳輸等。用于本地顯示的嵌入式GUI應用程序采用Qt編寫,并通過Socket技術實現嵌入式Linux平臺與Linux服務器的通信,軟件系統(tǒng)工作流程如圖5所示。
2.3基于Linux服務器的WEB設計
服務器操作系統(tǒng)選用CentOS6.5,基于LAMP(Linux+Apache+MySql+PHP)技術搭建服務器,通過基于TCP協議的Socket通信技術實現與嵌入式Linux終端之間的數據傳輸,并將接收到的數據存儲于服務器,以便后續(xù)查詢,使用Ajax技術實現數據在WEB前端的實時顯示。
3結語
根據遠洋船舶無土栽培溫室內環(huán)境的特點和需求,提出了一種遠洋船舶溫室環(huán)境參數監(jiān)測系統(tǒng)的設計方法。系統(tǒng)采用模塊化設計,便于后續(xù)擴展。采集模塊采用STM32F4微處理器并移植嵌入式RTEMS操作系統(tǒng)實現對環(huán)境參數的采集,采用基于嵌入式Linux系統(tǒng)的S3C6410實現環(huán)境參數的本地存儲和顯示,采用CentOS6.5構建LAMP服務器,將環(huán)境參數存入服務器端數據庫并以WEB方式實時發(fā)布環(huán)境參數,可實現對遠洋船舶無土栽培溫室的實時在線監(jiān)控。
參考文獻
[1] 范治政,劉永春.基于ARM9的大棚遠程溫濕度監(jiān)控系統(tǒng)設計[J].湖北農業(yè)科學,2015,54(3):705-708.
[2] 倪康,徐曉光,崔晶.基于C#和Zigbee的大棚溫濕度監(jiān)測系統(tǒng)設計[J].洛陽師范學院學報,2015,34(2):41-44.