摘要:針對(duì)智能小區(qū)家庭中智能家居終端的特點(diǎn)和功能進(jìn)行了闡述,研究并提出了一款基于ARM芯片并以Linux為操作系統(tǒng)智能家居終端的設(shè)計(jì)方案和軟硬件模型,理論上實(shí)現(xiàn)了智能家居終端的基本功能,為今后開(kāi)發(fā)此類(lèi)產(chǎn)品提供了一個(gè)思路方法。
所謂
智能電網(wǎng),就是指通過(guò)新技術(shù)能形成業(yè)務(wù)流、信息流、能量流之間雙向互動(dòng)的未來(lái)電網(wǎng),也叫“聰明電網(wǎng)”。與傳統(tǒng)電網(wǎng)比,智能電網(wǎng)孕育著更大的市場(chǎng)空間。智能電網(wǎng)是技術(shù)密集、資金密集集合體,將會(huì)帶動(dòng)新能源、信息、傳感器等傳統(tǒng)產(chǎn)業(yè)的創(chuàng)新和發(fā)展,具有很強(qiáng)的技術(shù)輻射性和經(jīng)濟(jì)帶動(dòng)性。而智能家居系統(tǒng)就是其中顯著的一個(gè)方面,智能家居系統(tǒng)的核心設(shè)備是智能家居終端,通過(guò)它實(shí)現(xiàn)系統(tǒng)信息的采集、信息輸出、集中控制、遠(yuǎn)程控制、聯(lián)動(dòng)控制等功能。
1、智能家居平臺(tái)系統(tǒng)的技術(shù)特點(diǎn)
智能家庭網(wǎng)絡(luò)隨著集成技術(shù)、通信技術(shù)、互操作能力和布線標(biāo)準(zhǔn)的實(shí)現(xiàn)而不斷改進(jìn),它涉及到對(duì)家庭網(wǎng)絡(luò)內(nèi)所有的智能和非智能電器、設(shè)備和系統(tǒng)的操作、管理以及集成技術(shù)的應(yīng)用。
(1)家居智能平臺(tái)系統(tǒng)的組成。
通過(guò)智能家庭網(wǎng)關(guān)、智能家居終端、具有采集電量和功率功能的插座及其系統(tǒng)軟件建立家居智能平臺(tái)系統(tǒng)。智能家庭網(wǎng)關(guān)是智能家庭局域網(wǎng)的核心部分,主要完成家庭內(nèi)部網(wǎng)絡(luò)各種不同通信協(xié)議之間的轉(zhuǎn)換和發(fā)送。
用計(jì)算機(jī)技術(shù)、微電子技術(shù)、通信技術(shù),智能家居終端將家庭智能化的幾乎所有功能集成起來(lái),使智能家居建立在一個(gè)統(tǒng)一的平臺(tái)上。首先,實(shí)現(xiàn)家庭內(nèi)部網(wǎng)絡(luò)的數(shù)據(jù)交換,其次還要保證能夠識(shí)別通過(guò)網(wǎng)絡(luò)傳輸?shù)闹噶钍欠窈戏ǎ虼酥悄芗揖咏K端既是家庭信息的交通樞紐,又是信息化家庭的保護(hù)神。
(2)通過(guò)通信模塊和通信協(xié)議實(shí)現(xiàn)與家電的互聯(lián)。
為實(shí)現(xiàn)家電的控制和相關(guān)信息的采集,系統(tǒng)平臺(tái)通過(guò)通信模塊并按照特定的通訊協(xié)議借助串口發(fā)送和接收碼流,從而實(shí)現(xiàn)家電的控制和信息采集。
(3)硬件中嵌入式系統(tǒng)的應(yīng)用。
隨著功能的不斷增加、性能的不斷提升,對(duì)處理能力和速度提出了更高的要求,所以具有高性能的嵌入式芯片系統(tǒng)將應(yīng)用到智能家居終端中去。
2、智能家居平臺(tái)系統(tǒng)的結(jié)構(gòu)
智能家居平臺(tái)系統(tǒng)的物理框圖如圖1所示。
3、智能家居終端的功能
智能家居終端的功能包括如下幾個(gè)方面:
(1)家電控制。家電控制是智能家居終端的主要功能,代表著家庭智能化的發(fā)展方向,通過(guò)無(wú)線通信方式對(duì)家庭的用電設(shè)備進(jìn)行控制。
(2)用電信息采集和分析。采集家電的用電量、功率、電壓和電流等一些用電數(shù)據(jù),并以表格或者圖表的形式展示出來(lái),為用戶分析家庭的用電情況,從而指導(dǎo)用戶進(jìn)行合理用電。
(3)家庭安防。安全是居民對(duì)智能家居的首要要求,所以家庭安防成為智能家居的重要組成部分。包括家庭安防報(bào)警、門(mén)窗磁報(bào)警、燃?xì)庑孤秷?bào)警、火災(zāi)煙霧報(bào)警、緊急求助報(bào)警等。當(dāng)智能家居終端處于布防狀態(tài)時(shí),一但紅外探頭探測(cè)到家中有人走動(dòng),就會(huì)自動(dòng)報(bào)警,同時(shí)將報(bào)警信息報(bào)到物業(yè)管理中心,還可以將報(bào)警信息發(fā)到主人的手機(jī)或其他移動(dòng)終端上。
(4)視頻通話。智能家居終端上集成了可視對(duì)講功能,可實(shí)現(xiàn)終端之間的視頻通話功能。
(5)便民信息服務(wù)。物業(yè)管理中心與智能家居終端聯(lián)網(wǎng),對(duì)住戶發(fā)布一些小區(qū)信息和小區(qū)周邊的一些便民服務(wù)信息,從而為住戶提供生活方便。
(6)增值服務(wù)。通過(guò)智能家居終端可以實(shí)現(xiàn)網(wǎng)上購(gòu)物,視頻點(diǎn)播等增值服務(wù)。
4、智能家居終端的硬件設(shè)計(jì)
智能家居終端的微處理器采用S3C2440A,是三星公司推出的16/32位RISC微處理器,它為手持設(shè)備和一般類(lèi)型應(yīng)用提供了低價(jià)格、低功耗、高性能小型微控制器的解決方案。S3C2440A采用了ARM920t的內(nèi)核,0.13μm的CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元。它采用AMBA的總線架構(gòu)。ARM920t實(shí)現(xiàn)了MMU,AMBABUS和Harvard高速緩沖體系結(jié)構(gòu)。這一結(jié)構(gòu)具有獨(dú)立的16kB指令Cache和16kB數(shù)據(jù)Cache。
作為智能家居的控制中心,智能家居終端除了具有網(wǎng)絡(luò)RJ-45接口、PSTN接口、RS-485接口、無(wú)線傳輸模塊接口外,還應(yīng)該提供音頻視頻接口、報(bào)警傳感器接口、HUB接口、RS-232接口等。這些接口可以實(shí)現(xiàn)音視頻的編解碼轉(zhuǎn)換,指令的傳輸接收以及與PC機(jī)的結(jié)合等功能。
智能家居終端的硬件實(shí)現(xiàn)結(jié)構(gòu)如圖2所示。
其中控制部分,當(dāng)用戶在遠(yuǎn)程話機(jī)鍵盤(pán)上按下控制按鈕后,這些信息采用雙音頻方式通過(guò)線發(fā)出,MT8870是一款雙音多頻解碼芯片,能夠?qū)崿F(xiàn)雙音多頻信號(hào)(DTMF)的發(fā)送和接收。
以太網(wǎng)控制芯片采用CS8900A,它是CirrusLogic公司生產(chǎn)的低功耗、性能*的16位以太網(wǎng)控制器。該芯片的突出特點(diǎn)是使用靈活,其物理層接口、數(shù)據(jù)傳輸模式和工作模式等都能根據(jù)需要而動(dòng)態(tài)調(diào)整,通過(guò)內(nèi)部寄存器的設(shè)置來(lái)適應(yīng)不同的應(yīng)用環(huán)境。
此外,硬件部分還對(duì)SRAM進(jìn)行了擴(kuò)展以滿足更大的需求。另外由于智能家居終端上的一些重要參數(shù),需要在系統(tǒng)掉電的情況下保留,所以在終端上還進(jìn)行了EEPROM擴(kuò)展。
5、智能家居終端的軟件設(shè)計(jì)
5.1程序設(shè)計(jì)
在硬件結(jié)構(gòu)基礎(chǔ)上,軟件系統(tǒng)采用了Linux嵌入式操作系統(tǒng),內(nèi)核版本為2.6.28。鑒于所選ARM芯片的性能,從總體需求出發(fā),軟件部分采用多進(jìn)程+進(jìn)程中多線程的編程方案。程序總體分為兩個(gè)進(jìn)程:主進(jìn)程、Web-Service進(jìn)程。主進(jìn)程包括3個(gè)線程:主線程、輔線程和次線程。
其中,Web-Service進(jìn)程為發(fā)送命令碼流。此處需要說(shuō)明的是家庭網(wǎng)關(guān)也采用Web-Service的方法,智能家居終端作為客戶端,而家庭網(wǎng)關(guān)作為服務(wù)器端。
主控制進(jìn)程實(shí)現(xiàn)了大部分功能,是控制中心的主體。由于實(shí)時(shí)性、信息回復(fù)的不確定性,它開(kāi)機(jī)啟動(dòng)并一直處于運(yùn)行狀態(tài)。主線程在程序啟動(dòng)時(shí)首*行初始化,包括硬件各部分的驅(qū)動(dòng)初始化,各個(gè)功能模塊界面及其基本功能的初始化,還有數(shù)據(jù)存儲(chǔ)部分?jǐn)?shù)據(jù)庫(kù)的初始化。初始化完畢后將進(jìn)入一個(gè)while(1)循環(huán),不停地重復(fù)遍歷命令結(jié)構(gòu)體鏈表和返回碼流結(jié)構(gòu)體鏈表,并進(jìn)行相應(yīng)處理。輔線程完成命令碼流的轉(zhuǎn)換和處理。次線程監(jiān)聽(tīng)返回到終端的命令碼流,并進(jìn)行相應(yīng)的轉(zhuǎn)換和處理。
軟件部分的總體框圖如圖3所示。
5.2進(jìn)程間通信
程序中設(shè)計(jì)了兩個(gè)進(jìn)程,它們之間要進(jìn)行通信。兩個(gè)并行進(jìn)程可以通過(guò)互相發(fā)送消息進(jìn)行合作,消息是通過(guò)消息緩沖在進(jìn)程之間相互傳遞。進(jìn)程間通信方式采用的是命名管道(FIFO),F(xiàn)IFO是一種*先出的隊(duì)列。它類(lèi)似于一個(gè)管道,只允許數(shù)據(jù)的單向流動(dòng)。每個(gè)FIFO都有一個(gè)名字,允許不相關(guān)的進(jìn)程訪問(wèn)同一個(gè)FIFO。本程序在/tmp文件系統(tǒng)中定義命名管道,這樣當(dāng)系統(tǒng)重新啟動(dòng)或更新時(shí),管道將被清除,不會(huì)占用過(guò)多存儲(chǔ)空間。
此外,為避免兩個(gè)進(jìn)程間同時(shí)要求訪問(wèn)同一共享資源而引起訪問(wèn)和操作的混亂,在進(jìn)程對(duì)共享資源進(jìn)行訪問(wèn)前必須對(duì)其進(jìn)行鎖定,該進(jìn)程訪問(wèn)完后再釋放。還有在主進(jìn)程的3個(gè)線程內(nèi),為保證兩個(gè)或多個(gè)關(guān)鍵代碼段不被并發(fā)調(diào)用,線程內(nèi)還使用了信號(hào)量,在進(jìn)入一個(gè)關(guān)鍵代碼段之前,線程必須獲取一個(gè)信號(hào)量,一旦該關(guān)鍵代碼段完成,那么該線程必須釋放信號(hào)量,其他想進(jìn)入該關(guān)鍵代碼段的線程必須等待,直到*個(gè)線程釋放信號(hào)量。
6、結(jié)束語(yǔ)
智能家居終端及其配套設(shè)備將會(huì)得到不斷的發(fā)展和完善,為人們提供更為安全、舒適、便利的生活環(huán)境。系統(tǒng)的使用也會(huì)更加方便、價(jià)格低廉、性能可靠。本文給出了基于ARM芯片的智能家居終端的設(shè)計(jì)方案,設(shè)計(jì)了一種可行的硬件和軟件模型,在理論上解決了智能家居終端的一些設(shè)計(jì)問(wèn)題。