智能家居主控模塊的設(shè)計與實現(xiàn)
3 主控模塊的軟件設(shè)計
3.1 主控模塊的軟件架構(gòu)
智能家居主控模塊要完成4個子系統(tǒng)的協(xié)同工作,采用模塊化設(shè)計思想,需要4個軟件模塊分別處理4個子任務(wù),主控模塊的軟件架構(gòu)如圖5所示,主任務(wù)協(xié)調(diào)4個子任務(wù)正常工作。每個子系統(tǒng)又可以劃分成很多更細(xì)的任務(wù)。如果采用結(jié)構(gòu)化的程序方法,程序設(shè)計非常復(fù)雜,系統(tǒng)會存在很多潛在問題。嵌入式硬件資源日益豐富,成本也較低廉,資源的增強使軟件有更多的資源可以利用。主控模塊的硬件資源非常豐富,軟件系統(tǒng)也非常龐大,軟件系統(tǒng)無法避免在訪問資源時遇到?jīng)_突、數(shù)據(jù)同步、數(shù)據(jù)交換的問題,所以需要一個嵌入式操作系統(tǒng)統(tǒng)一管理硬件資源,并對軟件開發(fā)提供良好的基礎(chǔ)環(huán)境,比如:內(nèi)存管理、進(jìn)程管理、存儲管理、文件系統(tǒng)、設(shè)備管理、消息機制、數(shù)據(jù)同步、數(shù)據(jù)交換、多線程、套接字等。操作系統(tǒng)雖然占據(jù)一定的存儲空間,但是給軟件開發(fā)帶來的便利更加可觀。操作系統(tǒng)采用Linux2.6內(nèi)核。主控模塊沒有特殊的外設(shè),驅(qū)動開發(fā)和內(nèi)核開發(fā)的任務(wù)量就很小。開發(fā)工作主要集中在子系統(tǒng)的任務(wù)開發(fā)和監(jiān)控軟件的開發(fā)上。Linux開發(fā)是在宿主機上建立交叉編譯環(huán)境,根據(jù)硬件的配置確定編譯選項,編譯后得到Linux的可執(zhí)行映像。本文引用地址:http://2s4d.com/article/163429.htm
3.2 主控模塊的主程序
智能控制主控模塊硬件上資源豐富,軟件上有Linux操作系統(tǒng)的支持,主控模塊的軟件開發(fā)運用了模塊化思想,模塊的劃分依據(jù)是高內(nèi)聚低耦合,將邏輯上緊密耦合的一組功能劃分為一個模塊。模塊劃分結(jié)果以數(shù)據(jù)流圖呈現(xiàn)出來。主控模塊的數(shù)據(jù)流圖如圖6所示。安全控制子系統(tǒng)、電器控制子系統(tǒng)和照明控制子系統(tǒng)的數(shù)據(jù)流和控制流,通過CAN總線網(wǎng)絡(luò)傳輸?shù)街骺啬K,主控模塊的CAN通信監(jiān)控子線程解析CAN網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)。接著,主控模塊的數(shù)據(jù)分發(fā)處理器子線程根據(jù)數(shù)據(jù)的類型將數(shù)據(jù)分發(fā)到相應(yīng)的數(shù)據(jù)處理程序。處理后的數(shù)據(jù)存儲到數(shù)據(jù)庫中,并在界面直觀顯示分析后的信息。
網(wǎng)絡(luò)模塊在邏輯上是一個獨立的模塊,在實現(xiàn)上由于其特殊性是在主控模塊實現(xiàn)的。遠(yuǎn)程PC通過Internet方式,手機通過GPRS方式將網(wǎng)絡(luò)流發(fā)送到網(wǎng)絡(luò)模塊,網(wǎng)絡(luò)模塊會調(diào)用網(wǎng)絡(luò)信息處理模塊處理網(wǎng)絡(luò)流,數(shù)據(jù)處理后或存儲或通過CAN總線轉(zhuǎn)發(fā)到其它控制子系統(tǒng)。
4 系統(tǒng)的測試
測試主控模塊的性能主要體現(xiàn)在通信速度和通信質(zhì)量。為了獲得這些參數(shù),需要測試主控模塊和子系統(tǒng)之間的數(shù)據(jù)傳輸能力。測試方式是:無競爭點對點雙向數(shù)據(jù)傳輸測試;有競爭點對點雙向數(shù)據(jù)傳輸測試。測試指標(biāo)是:傳輸時間和誤碼率。傳輸200 KB的數(shù)據(jù)量測試結(jié)果如表1所示。
測試結(jié)果表明主控模塊和子系統(tǒng)之間的通信比較穩(wěn)定,數(shù)據(jù)傳輸速率較高,可以滿足實時性要求。測試中誤碼率很低,一方面說明CAN協(xié)議的穩(wěn)定性;另一方面由于在數(shù)據(jù)測試中的數(shù)據(jù)量較小,從而出現(xiàn)錯誤的概率就小。
5 結(jié)論
智能家居系統(tǒng)是一個復(fù)雜的系統(tǒng),由于控制對象過多,單個智能控制系統(tǒng)無法完成控制任務(wù),需要構(gòu)成一個家庭控制網(wǎng)絡(luò)。智能控制系統(tǒng)主控模塊在網(wǎng)絡(luò)中起到調(diào)度和協(xié)調(diào)的作用。本文分析了家庭控制網(wǎng)絡(luò)的結(jié)構(gòu),提出了主控模塊的軟硬件模型和設(shè)計方案,提出了主控模塊和其他功能子系統(tǒng)聯(lián)網(wǎng)的一種實用通信方案。
較其它方案,本方案內(nèi)部采用CAN總線協(xié)議,具有組網(wǎng)方便、性能穩(wěn)定、成本低廉的特點;外部采用TCP/IP協(xié)議,具有遠(yuǎn)程控制能力、擴展性強的特點。最后介紹了主控模塊軟件的設(shè)計和主控模塊和其它功能子系統(tǒng)之間數(shù)據(jù)傳輸性能測試。測試結(jié)果表明,主控模塊結(jié)構(gòu)合理,和子系統(tǒng)通信能力強,能較好地完成主控模塊和子系統(tǒng)之間數(shù)據(jù)流和控制流的雙向傳輸。
評論