基于無線傳感器網(wǎng)絡(luò)的智能大棚控制系統(tǒng)
2.3 外圍控制電路的設(shè)計
外圍控制電路子系統(tǒng)同樣采用EasyARM1138為主控制芯片,輔以nRF24L01無線通信模塊。該子系統(tǒng)通過EasyARMll38的I/O口控制DAC08 32來產(chǎn)生正弦波,然后驅(qū)動變頻器以改變外圍各電氣設(shè)備的工作狀態(tài),從而避免能源的浪費(fèi)。無線通信模塊可實(shí)現(xiàn)終端與基站、基站與基站、基站與各無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)之間的組網(wǎng)通信功能。
3 系統(tǒng)軟件設(shè)計
本智能大棚的終端虛擬化控制平臺由Nokia公司Qt開發(fā)環(huán)境編寫而成。Qt是一個多平臺的C++圖形用戶界面應(yīng)用程序框架。它能提供給應(yīng)用程序開發(fā)者建立藝術(shù)級圖形用戶界面所需的所有功能,可用于高性能的跨平臺軟件開發(fā)。整個智能大棚的控制中心軟件由6大部分組成,分別是控制內(nèi)核模塊、數(shù)據(jù)庫模塊、PID控制計算模塊、串口通信模塊、圖形繪制模塊、文件記錄管理模塊。其控制中心軟件框架結(jié)構(gòu)如圖4所示。
3.1 數(shù)據(jù)庫的設(shè)計
本程序中的數(shù)據(jù)庫部分負(fù)責(zé)建立專家系統(tǒng),用于存放各種植物參數(shù)和檢索??紤]到軟件開發(fā)的成本問題,本系統(tǒng)采用了MySQL。MySQL是一個快速客戶機(jī)/服務(wù)器結(jié)構(gòu)的SQL數(shù)據(jù)庫管理系統(tǒng),由一個服務(wù)器守護(hù)程序mysqld以及許多不同的客戶程序和庫函數(shù)組成,該系統(tǒng)雖然不是開源的,但可以免費(fèi)使用。其優(yōu)點(diǎn)是功能強(qiáng)大,靈活性好,應(yīng)用編程接口豐富,結(jié)構(gòu)精巧。
考慮到植物所包含的信息很多,所以,在設(shè)計時可采用多表結(jié)構(gòu)。分別是植物名稱、適宜生長溫度、適宜生長濕度及生長時間段。通過利用MySQL編程語言可實(shí)現(xiàn)對數(shù)據(jù)庫的訪問。
Qt的QtSql模塊通過數(shù)據(jù)庫驅(qū)動可與不同的數(shù)據(jù)庫進(jìn)行通信。創(chuàng)建一個數(shù)據(jù)庫連接需要做如下三個步驟:激活驅(qū)動程序、配置好連接信息和打開連接。整個創(chuàng)建過程可以放在內(nèi)核模塊的構(gòu)造函數(shù)里。其程序如下:
評論