【正文】
mation appliances and intelligent houses will enter our future life. Besides, they will supply a fortable, safe and convenient environment for life. In modern families’ life, each traditional domestic appliance has its special controller, it will be inconvenient when we have to use so many controllers. To settle this problem, this paper designed a kind of controller to manage and control all information appliances. This paper introduces the Information Appliance Interface Definition Language (IAIDL), it adopts orientedobject method to describe the devices of information appliances, so that we can abstract the information appliances of different manufacturer to the same language platform, and manage and control them uniformly .: we design a hardware platform focus on embedded microprocessor S3C2410X, cut down and transplant Linux as the embedded OS, Mini GUI as the embedded graphics system, the Blue z as the Blue Tooth protocol stack, and use C to achieve the application of versa tile controller 。借助這些現(xiàn)代科學(xué)技術(shù),人們已經(jīng)可以足不出戶縱覽全球。 隨著 Inter 網(wǎng)絡(luò)向普通家庭生活不斷擴(kuò)展, 3C ( Computer ,Communication and Consumer)融合的趨勢(shì)日益明顯,人類家庭正逐步進(jìn)入以信息家電和智能家居為標(biāo)志的“后PC時(shí)代”。 信息家電被人們看作是“看不見(jiàn)的電腦”,因?yàn)樗ㄟ^(guò)對(duì)技術(shù)的隱藏,使得用戶能夠從PC機(jī)的復(fù)雜中解脫出來(lái),將易于使用的特性展露在用戶面前。 易用性 信息家電最重要的目的就是要克服復(fù)雜性,做到以人為中心,而不是以技術(shù)為中心。同時(shí)由于功能的集中,可以使得使用界面保持穩(wěn)定的模式,給用戶的操作也帶來(lái)很大的方便。由于復(fù)雜的控制程序由內(nèi)嵌在家電中的控制器解決,不必等待重新啟動(dòng)設(shè)備或是加載軟件后才能使用設(shè)備。信息家電實(shí)際上是面向任 務(wù) (orientedtask)的設(shè)備,它將一些特定的功能從大而全的計(jì)算機(jī)中剝離出來(lái),集合到某一特定的產(chǎn)品中去,從而提高產(chǎn)品的專 用性,盡管這也限定了它的適用范圍。信息家電不是獨(dú)立存在的,通常被稱為是合作的設(shè)備 (Cooperating Devices)??梢酝ㄟ^(guò)家庭局域網(wǎng)與 PC或其它家電交換信息,或可通過(guò)家庭網(wǎng)關(guān)連入 Inter接收遠(yuǎn)程信息或控制指令,并可以主動(dòng)向網(wǎng)絡(luò)獲取信息或主動(dòng) 向網(wǎng)絡(luò)提供一些本身有用的信息。 信息家電可根據(jù)周圍環(huán)境自動(dòng)調(diào)整工作狀態(tài),從而實(shí)現(xiàn)節(jié)能; 信息家電包含有微處理器,處理的是數(shù)字化信 息; 嵌入式技術(shù)的使用讓信息家電具有智能化。智能的信息家電可根據(jù)周圍環(huán)境的不同迅速做出反應(yīng),自動(dòng)化和智能化的進(jìn)行自我維護(hù),而不需要人為地干預(yù)。智能家居是一個(gè)典型的 集計(jì)算機(jī)、通訊和消費(fèi)于一體的 3C 系統(tǒng),是整個(gè)世界形成的一個(gè)巨型網(wǎng)絡(luò)的末端,俗稱是該網(wǎng)絡(luò)的“最后 100米” 。 溝通計(jì)算機(jī)和其他視頻設(shè)備之間以及外部世界之間的信息通道,其中包括 :臺(tái)式 /手持計(jì)算機(jī)、電視、 6 錄 /攝像機(jī)、 VCD/DVD和數(shù)碼照相機(jī)等,同時(shí)還 可以實(shí)現(xiàn)對(duì)它們的控制和監(jiān)測(cè)。 根據(jù)智能家居的特點(diǎn)、功能及目標(biāo),我們?cè)O(shè)計(jì)的智能家居的基本 結(jié)構(gòu)如圖 11所示。 家庭網(wǎng)絡(luò) 家庭網(wǎng)絡(luò) (Home Network)是實(shí)現(xiàn)智能家居系統(tǒng)架構(gòu)的前提和基礎(chǔ)。它是在家庭和社會(huì)的信息網(wǎng)絡(luò)相連之前,將家庭內(nèi)部的所有信息設(shè)備 (包括信息家電、燈光控制系統(tǒng)、安全控制系統(tǒng)等 )連接起來(lái)而形成的網(wǎng)絡(luò) 。 家庭內(nèi)部設(shè)備 存在多樣性,如信息家電、控制設(shè)備等,根據(jù)家庭內(nèi)部信息傳輸?shù)奶攸c(diǎn)和要求,可將家庭網(wǎng)絡(luò)分為三部分 :高速娛樂(lè)用家庭內(nèi)網(wǎng)。 中速操縱用家庭內(nèi)網(wǎng) 用以傳輸功能類信息家電 (如 :空調(diào)、洗衣機(jī)、微波爐等 )的控制、處理的數(shù)字信號(hào)。用于傳輸在門、窗、煙霧探測(cè)儀等上的傳感器、控制器的監(jiān)視信號(hào)、控制信號(hào)和報(bào)警信號(hào)等。 嵌入式技術(shù) 嵌入式系統(tǒng)就是“以 應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)”。一般的嵌入式系統(tǒng)具有功耗低、體積小、成本低、集成度高、專用性強(qiáng)等特點(diǎn)。 ③ 嵌入式系統(tǒng)的硬件和軟件都必須高效率地設(shè)計(jì),量體裁衣,去除冗余,力爭(zhēng)在同樣的硅片面積上實(shí)現(xiàn)更多的功能和更高的性能 。 ⑤ 嵌入式系統(tǒng)開(kāi)發(fā)需要專門的開(kāi)發(fā)工具和開(kāi)發(fā)環(huán)境?;谏鲜鰡?wèn)題,本文提出一種解決方案 :結(jié)合嵌入式系統(tǒng)、網(wǎng)絡(luò)技術(shù)、無(wú)線通信技術(shù)以及手持移動(dòng)終端技術(shù),設(shè)計(jì)一個(gè)能夠在智能家居中管理和控制所有 信息家電的、可 8 以直接與用戶交互的可視化嵌入式智能設(shè)備信息家電萬(wàn)能遙控器。 IAIDL不是編程語(yǔ)言,它唯一的目的是以與任何具體編程語(yǔ)言無(wú)關(guān)的形式來(lái)定義智能家居中的信息家電。本文在研究過(guò)程中,對(duì)其硬件系統(tǒng)進(jìn)行了設(shè)計(jì),包括 CPU, FLASH, SDRAM, Keyboard, BLUE TEETH, LCD, Touch Pad, POWER各個(gè)模塊。因此,需要在信息家電設(shè)備在被外界識(shí)別、理解、使用之前,有一種統(tǒng)一、抽象的語(yǔ)言來(lái)進(jìn)行設(shè)備的定義和功能描述。 信息家電接口定義語(yǔ)言 (IAIDL)是一種用來(lái)定義家庭網(wǎng)絡(luò)中信息家電的說(shuō)明性語(yǔ)言,是對(duì)設(shè)備資源信息的描述。設(shè)備的屬性可以分為 不變屬性和可變屬性。而可變屬性的值是隨著環(huán)境的影響和使用者的干預(yù)而不斷變化的。它的當(dāng)前室溫就是一個(gè)可變屬性。對(duì)最終用戶來(lái)說(shuō)這是透明的,無(wú)須知道該應(yīng)用程序接口的存在及其用法。 IAIDL 的基本數(shù)據(jù)類型 在 IAIDL中基本的數(shù)據(jù)類型有 :整型、字符串型、和自定義枚舉型。例如 :電視的輸入模式 (input mode)屬性就具有兩個(gè)值。其語(yǔ)句為 : ENUM枚舉類型名稱二 (枚舉值 1,枚舉值 2,??,枚舉值 n)。 46 ( 35{枚舉值 ’‘,” }*枚舉值 “ ),’“ 。” 操作 :.=[function:“‘” 操作名稱說(shuō)明 “”’ references “‘”可變屬性名稱 “”, ]返回值類型 操作名 (參數(shù)說(shuō)明 )八“ 。現(xiàn) 說(shuō)明如下 : 1 ::=表示定義為 。 4 text表示變量 。 6 A表示可重復(fù) 0次或 I次 。 8 +表示可重復(fù) I次或多次 。 10 []表示對(duì)后面內(nèi)容的說(shuō)明。如果 []內(nèi)包含的關(guān)鍵字是 function,則說(shuō)明后面表示的是一個(gè)操作 。 例如 :海爾電視 is電視 { En um switch=(開(kāi),關(guān) )。 En um mode= (AV, TV)。 [CONST attribute:‘屏幕響應(yīng)速度’ ]8ms。 [CONST attribute:‘?dāng)?shù)字接口’ ]HDMI*2。 12 [CONST attribute:‘ 分辨率 ’ ]1366*768。 [VAR attribute:‘ 靜音 ’ ]否 。 [VAR attribute:‘ 音量 ’ ]50。 [VAR attribute:‘ 頻道 ’ ]CCTV。 [function:‘ 開(kāi)關(guān) ’ references‘ 開(kāi)關(guān) ’ ]void On Off (switch power)。 [function:‘ 屏顯 ’ references‘ 屏顯 ’ ]void screen display ()。 [function:‘ 設(shè)置亮度 ’ references‘ 亮度 ’ ]void Set Brightness(int volume[[0,100]])。 [function:‘ 設(shè)置輸入模式 ’ references‘ 輸入模式 ’ ]void Set In put mode(mode name)。它所具有的可變屬性有 :開(kāi)關(guān)、靜音、屏顯、音量、亮度、頻道和輸入模式 。下面重點(diǎn)介紹設(shè)置輸入模式操作和設(shè)置音量操作的聲明及該聲明的意義。這樣,讓設(shè)備與家庭網(wǎng)關(guān)之間相互理解和交互成為了可能。 信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)是由信息家電、家庭網(wǎng)關(guān)、信息家電萬(wàn)能遙控器三部分所組成,它們相輔相成、缺一不可,并通過(guò)家庭網(wǎng)絡(luò) 連接在一起。其核心是信息家電萬(wàn)能遙控器,它的主要功能是在智能家居內(nèi)部管理和操縱所有信息家電。 圖 31:信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)的 GS 控制結(jié)構(gòu)圖 信息家電 每種信息家電設(shè)備都有對(duì)應(yīng)的用 IAIDL來(lái)編寫(xiě)的設(shè)備描述文件,在該文件中包含著對(duì)應(yīng)設(shè)備的屬性、操作等的描述。同時(shí),還需要將自己的設(shè)備描述文件提交給家庭網(wǎng)關(guān)。 家庭網(wǎng)關(guān)是智能家居網(wǎng)絡(luò)上的核心設(shè)施,它將家庭內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò) (如局域網(wǎng)、 14 Inter 網(wǎng)等 )分離開(kāi)來(lái),并為信息家電提供了一個(gè)統(tǒng)一的平臺(tái),通過(guò)該平臺(tái)能實(shí)現(xiàn)信息家電與萬(wàn)能遙控器之間的互連和信息交互。 家庭網(wǎng)關(guān)統(tǒng)一管理著智能家居中所有的信息家電、設(shè)備。其中,每個(gè)信息家電設(shè)備都有其注冊(cè)信息和狀態(tài)信息,而統(tǒng)計(jì)信息則包含有 :家庭網(wǎng)絡(luò)中信息家電設(shè)備類型的名稱和數(shù)目信息、家庭網(wǎng)絡(luò)中每種信息家電設(shè)備類型下各個(gè)設(shè)備的名稱和數(shù)目信息。 信息家 電萬(wàn)能遙控器 在智能家居中,信息家電萬(wàn)能遙控器是一個(gè)可以操縱 和管理所有信息家電的、可以直接與用戶交互的可視化嵌入式智能設(shè)備 。 萬(wàn)能遙控器由結(jié)果拆裝器、命令裝配器、界面生成器等模塊組成, 其邏輯結(jié)構(gòu)圖如圖32所示。 結(jié)果拆裝器 :將家庭網(wǎng)關(guān)發(fā)至萬(wàn)能遙控器的數(shù)據(jù)包按通信協(xié)議進(jìn)行拆裝,作為界面生成器模塊的輸入數(shù)據(jù)。 其中,信息查詢功能的典型特點(diǎn)是萬(wàn)能遙控器只與家庭網(wǎng)關(guān)進(jìn)行交互,而不涉及到具體的信息家電設(shè)備。無(wú)論哪種查詢,都由萬(wàn)能遙控器利用命令裝配器將查詢請(qǐng)求打包并發(fā)送給家庭網(wǎng)關(guān) 。萬(wàn)能遙控器在接收到數(shù)據(jù)包后,由結(jié)果拆裝器提取信息交由界面生成器,最后由界面 16 生成器利用圖形對(duì)象庫(kù)完成控制界面的生成或更新 。 圖 33:萬(wàn)能遙控器查詢功能事務(wù)流程圖 萬(wàn)能遙控器對(duì)信息家電設(shè)備的控制功能的實(shí)現(xiàn)較為復(fù)雜,它涉及到家庭網(wǎng)關(guān)和信息家電設(shè)備,要求三者密切配合。 當(dāng)用戶在信息家電設(shè)備的詳細(xì)信息界面上進(jìn)行了某種操作,萬(wàn)能遙控器會(huì)解釋該操作的具體含義,由其上的命令裝配器將對(duì)設(shè)備的服務(wù)請(qǐng)求打包并發(fā)送至家庭網(wǎng)關(guān) 。 17 第四章 信息 家電萬(wàn)能遙控器軟硬件平臺(tái)的構(gòu)建 硬件平臺(tái) 信息家電萬(wàn)能遙控器的硬件系統(tǒng)結(jié)構(gòu)圖如圖 41所示,其中包含有許多小模塊,它們以嵌入式處理器 S3C2410X為核心,實(shí)現(xiàn)不同的功能。 圖 41信息家電萬(wàn)能遙控器硬件系統(tǒng)結(jié)構(gòu)圖 Samsung S3C2410X 嵌入式微處理器 S3C2410X微處理器是一款由 Samsung Electronics Co ,Ltd為手持設(shè)備設(shè)計(jì)的低功耗、高度集成的嵌入式微處理器。它集成了如下片內(nèi)外圍功能部件「 71: ① 1個(gè) LCD控制器 (支持 STN和 TFT帶有觸摸屏的液晶顯示屏 )。 117位通用 I/O口和 24位外部中斷源 。 ④ 4個(gè)通道的 DMA, ⑤ 4個(gè)具有 PWM功能的計(jì)時(shí)器和 1個(gè)內(nèi)部時(shí)鐘 。 8通道 10位 AD控制器 ; 看門狗計(jì)數(shù)器 18 ⑦ 觸摸屏接口 。 ⑧ 2個(gè) USB主機(jī)接口, 1個(gè) USB設(shè)備接口 。 SD接口和 MMC 卡接口 。 MPLL所產(chǎn)生的主時(shí)鐘能夠使處理器工作頻率最高達(dá)到 203MHz。 UPLL產(chǎn)生實(shí)現(xiàn)主從 USB功 能的時(shí)鐘。它具有功耗低、容量大、擦寫(xiě)速度快、可整片或分扇區(qū)在系統(tǒng)編程等特點(diǎn),并且可由內(nèi)部嵌入的算法完成對(duì)芯片的操作,因而在各種嵌入式系統(tǒng)中得到了廣泛的應(yīng)用。常用的 Flash 的數(shù)據(jù)寬度為 8 位或 16 位,編程電壓為單。這樣,啟動(dòng)代碼、操作系統(tǒng)內(nèi)核以及用戶應(yīng)用程序可以存放在 NAND Flash中,直接從 NAND Flash中啟動(dòng)。在啟動(dòng)時(shí), S3C2410X會(huì)自動(dòng)的將 NAND Flash存儲(chǔ)器中最前 面的 4KB數(shù)據(jù)拷貝到 S3C2410X內(nèi)部的 SRAM中并自