基于電力線(xiàn)載波的智能家居控制系統(tǒng)研究
2.2 硬件結(jié)構(gòu)
μC/OS系統(tǒng)控制器采用ARM7TDMI內(nèi)核的微控制器,外接電源模塊、電力線(xiàn)載波通信模塊、GPRS無(wú)線(xiàn)收發(fā)模塊、LCD模塊、觸摸屏模塊、Flash模塊等,硬件模塊結(jié)構(gòu)示意圖如圖2所示。本文引用地址:http://m.butianyuan.cn/article/159417.htm
2.3 微控制器
微控制器是系統(tǒng)的主控點(diǎn),向下通過(guò)電力線(xiàn)載波通信模塊與各控制節(jié)點(diǎn)進(jìn)行通信,實(shí)現(xiàn)家庭內(nèi)部網(wǎng)的本地監(jiān)控;向上通過(guò)GPRS無(wú)線(xiàn)收發(fā)模塊與局域網(wǎng)相連,進(jìn)而通過(guò)以太網(wǎng)與遠(yuǎn)程主機(jī)連接起來(lái),實(shí)現(xiàn)了系統(tǒng)的遠(yuǎn)程監(jiān)控功能。微控制器采用Atmel公司的AT91RM40008芯片,一款基于ARM7TDMI內(nèi)核的32位控制器,工作頻率為66 MHz,其片內(nèi)集成了256 KB RAM,可以將代碼直接運(yùn)行在片內(nèi)RAM上,使得應(yīng)用程序的設(shè)計(jì)可以采用任務(wù)查詢(xún)方式,增強(qiáng)了系統(tǒng)的穩(wěn)定性。兩個(gè)全雙工通用同步/異步收發(fā)器(UART)與外圍控制器PDC連接,整段數(shù)據(jù)交給硬件自動(dòng)收發(fā)處理,比單字節(jié)處理大大減輕系統(tǒng)處理壓力,保證了系統(tǒng)的實(shí)時(shí)性。電路圖略——編者注。
2.4 LCD模塊
μC/OS系統(tǒng)控制器界面顯示采用7寸LCD屏幕,800×480像素分辨率,提供了良好的人機(jī)交互界面。驅(qū)動(dòng)控制采用SSD1963Q芯片,可以顯示16×16、32×32等漢字和字符。觸摸屏模塊中采用TI公司的ADS7843芯片,它是12位取樣模/數(shù)轉(zhuǎn)換器,具有功耗低的優(yōu)點(diǎn),適合用于該核心控制器。電路圖略——編者注。
2.5 電力線(xiàn)載波通信模塊
電力線(xiàn)載波通信芯片是電力線(xiàn)載波通信系統(tǒng)的核心,在該控制系統(tǒng)中,選用了力合微公司生產(chǎn)的LME2980芯片,該芯片具有抗干擾能力強(qiáng)、靈敏度高等優(yōu)點(diǎn),集成了看門(mén)狗等電路,確保了工業(yè)環(huán)境下的可靠性。電力線(xiàn)載波通信電路設(shè)計(jì)如圖3所示。
3 μC/OS系統(tǒng)控制器軟件設(shè)計(jì)
μC/OS系統(tǒng)控制器的軟件設(shè)計(jì)可以分為3層:應(yīng)用層、中間層和驅(qū)動(dòng)層。驅(qū)動(dòng)層是整個(gè)軟件控制系統(tǒng)工作的基礎(chǔ),主要包括LCD驅(qū)動(dòng)、定時(shí)器驅(qū)動(dòng)、CPU驅(qū)動(dòng)等;中間層主要實(shí)現(xiàn)中間層對(duì)底層不同設(shè)備的兼容和向上層提供各類(lèi)應(yīng)用程序開(kāi)發(fā)的統(tǒng)一接口,主要包括一些C庫(kù)函數(shù)、底層功能函數(shù)以及μC/OS系統(tǒng)調(diào)用接口;應(yīng)用層通過(guò)調(diào)用中間層提供的接口,完成界面控制、網(wǎng)絡(luò)通信、串口通信等功能用以控制智能家居設(shè)備??刂破鞯能浖K層次圖如圖4所示。
3.1 載波通信模塊軟件設(shè)計(jì)
載波通信過(guò)程中,載波通信控制單元發(fā)送完一位擴(kuò)頻數(shù)據(jù)后,自動(dòng)產(chǎn)生一次中斷,允許下一位數(shù)據(jù)發(fā)送。根據(jù)捕獲和同步過(guò)程需要,首先發(fā)送至少42位的全“1”數(shù)據(jù),本文中發(fā)送45位全“1”數(shù)據(jù);然后按位發(fā)送同步幀頭0xA5;之后根據(jù)用戶(hù)的有關(guān)通信協(xié)議按位發(fā)送通信地址、數(shù)據(jù)長(zhǎng)度、數(shù)據(jù)體、校驗(yàn)等字節(jié)。數(shù)據(jù)全部發(fā)送完后,載波通信模塊即可轉(zhuǎn)為接收態(tài)。但為確保待發(fā)送數(shù)據(jù)的最后一位發(fā)送成功,必須在發(fā)送完最后一位數(shù)據(jù)后的下一次發(fā)送中斷到來(lái)后,才可以轉(zhuǎn)換載波發(fā)送態(tài)到接收態(tài)。載波發(fā)送過(guò)程中,CPU必須使計(jì)數(shù)器復(fù)位,避免自動(dòng)復(fù)位提前進(jìn)入載波接收態(tài)。
為了保證命令數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性,將協(xié)議設(shè)計(jì)如下:設(shè)備地址+數(shù)據(jù)包+數(shù)據(jù)包類(lèi)型+命令長(zhǎng)度+命令設(shè)備+設(shè)備子命令+命令參數(shù)+校驗(yàn)和。設(shè)備地址為命令上傳或者下發(fā)時(shí)從設(shè)備的物理地址;數(shù)據(jù)包根據(jù)數(shù)據(jù)的傳輸方向分為請(qǐng)求數(shù)據(jù)包和響應(yīng)數(shù)據(jù)包,分別對(duì)應(yīng)于處理器向下發(fā)送命令和子設(shè)備回復(fù)數(shù)據(jù)包;命令長(zhǎng)度表示了后續(xù)命令包的長(zhǎng)度;命令設(shè)備、設(shè)備子命令和命令參數(shù)等表示針對(duì)不同的子設(shè)備,需要發(fā)送的命令格式也不同;校驗(yàn)和是指所有幀數(shù)據(jù)的數(shù)據(jù)和。
接在電力線(xiàn)上的子設(shè)備主要分為兩類(lèi):一類(lèi)是需要上傳狀態(tài)信息的設(shè)備,主要包括空調(diào)、微波爐、冰箱、熱水器和洗衣機(jī)等;還有一類(lèi)就是開(kāi)關(guān)型設(shè)備,只需實(shí)時(shí)查詢(xún)即可,無(wú)需上傳狀態(tài)信息,如日光燈等開(kāi)關(guān)型設(shè)備。
評(píng)論