畢業(yè)設(shè)計(論文)基于單片機遙控器硬件的設(shè)計_第1頁
畢業(yè)設(shè)計(論文)基于單片機遙控器硬件的設(shè)計_第2頁
畢業(yè)設(shè)計(論文)基于單片機遙控器硬件的設(shè)計_第3頁
畢業(yè)設(shè)計(論文)基于單片機遙控器硬件的設(shè)計_第4頁
畢業(yè)設(shè)計(論文)基于單片機遙控器硬件的設(shè)計_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、河 南 科 技 大 學(xué)畢 業(yè) 設(shè) 計(論 文) 題目: 基于單片機遙控器硬件的設(shè)計姓 名 考 號 院 系 信息工程系專 業(yè) 計算機及應(yīng)用指導(dǎo)教師 2011年04月24日摘 要 21世紀以來,嵌入式技術(shù)進入了高速發(fā)展的時代,已經(jīng)滲透進人類社會的方方面面,可以說是無所不在,無處不在,正深刻地影響著人們的生活??茖W(xué)技術(shù)的不斷進步帶來了社會發(fā)展水平的提高,人們對生活品質(zhì)的提升也提出了迫切要求。傳統(tǒng)的家用電器已經(jīng)無法滿足現(xiàn)代家庭的需要,人們需要信息化、網(wǎng)絡(luò)化和智能化的信息家電,因此信息家電和智能家居進入未來家庭是一個必然的趨勢,它們將為人們提供一個舒適、安全、便捷的生活環(huán)境。 在現(xiàn)代家庭生活中使用的每種

2、傳統(tǒng)家電都有其對應(yīng)的專用遙控器,當(dāng)家里有較多的傳統(tǒng)家電時,遙控器的管理和使用會變得很不方便。在智能家居中也存在著各種各樣的信息家電,為解決上述問題,本文提出了一個可以管理和控制所有信息家電的萬能遙控器。 文章首先介紹了信息家電接口定義語言iaidl,它采用面向?qū)ο蠓椒枋鲂畔⒓译娫O(shè)備,以便將不同廠商生產(chǎn)的信息家電抽象到同一個語言平臺上進行統(tǒng)一管理和控制;然后設(shè)計了智能家居中信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)的模型,并基于該模型構(gòu)造了一個s3c2410x+linux+minigui+bluez的信息家電萬能遙控器:以嵌入式微處理器s3c2410x為中心設(shè)計硬件平臺,裁減和移植linux作為嵌入式操作系統(tǒng),以m

3、inigui作為嵌入式圖形系統(tǒng),以bluez作為藍牙協(xié)議棧,并使用c語言編程的方式實現(xiàn)萬能遙控器應(yīng)用程序;最后在萬能遙控器應(yīng)用程序的設(shè)計中進行了流程分析和關(guān)鍵討論。 木課題的研究結(jié)合了嵌入式技術(shù)、無線通信技術(shù)和手持移動終端技術(shù),提出了一個可行的方案。可以預(yù)見,在市場需求和技術(shù)發(fā)展的雙重推動下,信息家電萬能遙控器必將走進千家萬戶,成為智能家居不門一或缺的成員。關(guān)鍵詞:信息家電,萬能遙控器,iaidl,嵌入式技術(shù),動態(tài)界面布局。abstract since 21st century, embedded technology has come into high speed developed er

4、a, it has penetrated every aspect of human society, it exists in anywhere and is affecting the life of human profoundly. the ceaseless progress of science technologies enhances the social development level,people have advanced exigent demand for improving the life quality , too. but the traditional

5、domestic appliance could not satisfy the needs of modern families. people need information , internet and intelligent information appliances. as a necessity, information appliances and intelligent houses will enter our future life. besides, they will supply a comfortable, safe and convenient environ

6、ment for life. in modern families life, each traditional domesticappliance 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 introd

7、uces the information appliance interface definition language (iaidl),it adopts oriented-object 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 .:

8、 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 ;at last, in the design of

9、versatile controller , we carry on the flow analysis and key discussion.the research of this problem combined embedded technology, wireless communication technology and handled mobile-terminal technology, it proposed a feasible scheme. foresee ably,under the double drives of the market demand and th

10、e technology development , this versatile controller must walk into every family and be a necessary member.key words:information appliance, versatile controlleriaidl, embedded technology, dynamical gui layout目錄摘 要- 1 -abstract- 2 -目錄- 3 -第一章 緒論- 4 -1.1信息家電- 4 -1.1.2功能單一集中、實時性強- 5 -1.1.3協(xié)同工作和網(wǎng)絡(luò)化- 5 -

11、1.2智能家居- 5 -1.3家庭網(wǎng)絡(luò)- 6 -1.4嵌入式技術(shù)- 7 -1.5本文的研究內(nèi)容- 7 -第二章 信息家電接口定義語言iaidl- 9 -2.1 iaidl描述的內(nèi)容- 9 -2.2 iaidl的基本數(shù)據(jù)類型- 10 -2.3 iaidl規(guī)范- 10 -第三章 智能家居中信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)的系統(tǒng)結(jié)構(gòu)- 13 -3.1信息家電- 13 -3.2信息家電萬能遙控器- 14 -第四章 信息家電萬能遙控器軟硬件平臺的構(gòu)建- 17 -4.1 硬件平臺- 17 -4.1.1 samsung s3c2410x嵌入式微處理器- 17 -4.2軟件平臺- 18 -第五章 信息家電萬能遙控器的通信

12、技術(shù)及相關(guān)協(xié) 議- 23 -5.1藍牙協(xié)議blue z- 23 -5.2信息家電萬能遙控器與家庭網(wǎng)關(guān)間的通信協(xié)議- 25 -第六章 信息家電萬能遙控器的帶約束的動態(tài)界面布局- 27 -6.1約束- 27 -6.2動態(tài)界面布局的設(shè)計目標(biāo)- 27 -6.3動態(tài)界面布局的原理- 28 -6.4動態(tài)控件生成協(xié)議- 28 -6.5動態(tài)界面布局的算法- 29 -第七章 信息家電萬能遙控器應(yīng)用程序的設(shè)計- 31 -7.1邏輯功能模塊- 31 -7.2多線程- 31 -結(jié) 語- 34 -參考文獻- 35 -附錄- 36 -致謝- 37 -第一章 緒論 21世紀以來,數(shù)字化、網(wǎng)絡(luò)化和智能化技術(shù)取得了更加迅猛發(fā)展

13、并日益滲透到各個領(lǐng)域。借助這些現(xiàn)代科學(xué)技術(shù),人們已經(jīng)可以足不出戶縱覽全球。電子商務(wù)、電子政務(wù)、網(wǎng)上銀行、網(wǎng)上購物、網(wǎng)上投資、遠程醫(yī)療、遠程教育、社區(qū)智能管理等等,以超乎想象的速度改變了人類的生產(chǎn)、生活方式,更深刻地影響到人類的思維模式和生存狀態(tài)。隨著internet網(wǎng)絡(luò)向普通家庭生活不斷擴展,3c ( computer ,communication and consumer)融合的趨勢日益明顯,人類家庭正逐步進入以信息家電和智能家居為標(biāo)志的“后pc時代”。1.1信息家電 信息家電(information appliance,簡稱為ia)是一種操作簡便、實用性強、具有網(wǎng)絡(luò)信息終端功能的智能化家電

14、產(chǎn)品,是利用計算機、數(shù)字通信和電子技術(shù)與傳統(tǒng)家電相結(jié)合的創(chuàng)新產(chǎn)品,是為滿足現(xiàn)代家庭需要而設(shè)計的新型家用電器. 從技術(shù)角度來看,信息家電是以利用網(wǎng)絡(luò)主動或被動交互信息來完成產(chǎn)品功能為主要特征,它將數(shù)字化技術(shù)引入家用電器、移動通信等設(shè)備,使其成為網(wǎng)絡(luò)終端,進而成為信息裝置,用以發(fā)布、獲取和處理信息。 信息家電被人們看作是“看不見的電腦”,因為它通過對技術(shù)的隱藏,使得用戶能夠從pc機的復(fù)雜中解脫出來,將易于使用的特性展露在用戶面前。所以相對于傳統(tǒng)的家電而言,信息家電具有如下的特點。1.1.1易用性 信息家電最重要的目的就是要克服復(fù)雜性,做到以人為中心,而不是以技術(shù)為中心。由于信息家電采用了嵌入式技術(shù)

15、,從而降低了應(yīng)用界面的技術(shù)要求,增強了技術(shù)對用戶的透明度,讓用戶在使用時避免了與操作系統(tǒng)的直接接觸,只要通過日常積累起來的經(jīng)驗就能夠很方便的操作這些設(shè)備,減少了人機之間的技術(shù)障礙,突顯了應(yīng)用功能。同時由于功能的集中,可以使得使用界面保持穩(wěn)定的模式,給用戶的操作也帶來很大的方便。1.1.2功能單一集中、實時性強想用就用,無需做計劃和安排。由于復(fù)雜的控制程序由內(nèi)嵌在家電中的控制器解決,不必等待重新啟動設(shè)備或是加載軟件后才能使用設(shè)備。是指只完成某種或某幾種特定的功能。信息家電實際上是面向任務(wù)(oriented-task)的設(shè)備,它將一些特定的功能從大而全的計算機中剝離出來,集合到某一特定的產(chǎn)品中去,

16、從而提高產(chǎn)品的專 用性,盡管這也限定了它的適用范圍。1.1.3協(xié)同工作和網(wǎng)絡(luò)化 信息家電的重要特征是彼此之間的信息交流。信息家電不是獨立存在的,通常被稱為是合作的設(shè)備(cooperating devices)。要做到相互通信,信息家電就應(yīng)具有網(wǎng)絡(luò)接入能力。可以通過家庭局域網(wǎng)與pc或其它家電交換信息,或可通過家庭網(wǎng)關(guān)連入internet接收遠程信息或控制指令,并可以主動向網(wǎng)絡(luò)獲取信息或主動向網(wǎng)絡(luò)提供一些本身有用的信息。節(jié)能化、數(shù)字化、智能化、標(biāo)準化。 信息家電可根據(jù)周圍環(huán)境自動調(diào)整工作狀態(tài),從而實現(xiàn)節(jié)能;信息家電包含有微處理器,處理的是數(shù)字化信息;嵌入式技術(shù)的使用讓信息家電具有智能化。信息家電通

17、過嵌入微處理器,使得用戶能夠通過網(wǎng)絡(luò)獲取直接的、簡單的和安全的信息和服務(wù)。智能的信息家電可根據(jù)周圍環(huán)境的不同迅速做出反應(yīng),自動化和智能化的進行自我維護,而不需要人為地干預(yù)。1.2智能家居 智能家居是以家為平臺,兼?zhèn)渥詣踊?、高效化的高效、舒適、安全、便利的家居環(huán)境。智能家居是一個典型的集計算機、通訊和消費于一體的3c系統(tǒng),是整個世界形成的一個巨型網(wǎng)絡(luò)的末端,俗稱是該網(wǎng)絡(luò)的“最后100米” 。 總的來說,智能家居的基本目標(biāo)是為人們提供一個舒適、安全、方便和高效率的生活環(huán)境,它所要實現(xiàn)的主要功能有: 對信息家電和其他設(shè)備的控制、調(diào)節(jié)和監(jiān)測,如微波爐、洗衣機、燈光、電動窗簾、防盜報警器、火警檢測器、溫

18、度和濕度控制器、各種手動開關(guān)和遙控器等。溝通計算機和其他視頻設(shè)備之間以及外部世界之間的信息通道,其中包括:臺式/手持計算機、電視、錄/攝像機、vcd/dvd和數(shù)碼照相機等,同時還可以實現(xiàn)對它們的控制和監(jiān)測。通過對外的接口,實現(xiàn)遠程控制和信息交換,如:電話線、有線電視電纜、照明線、雙絞線和無線通信方式等。 根據(jù)智能家居的特點、功能及目標(biāo),我們設(shè)計的智能家居的基本結(jié)構(gòu)如圖1-1所示。 圖1-1智能家居基本拓 樸結(jié)構(gòu) 從以上智能家居的結(jié)構(gòu)圖我們可以看到,要實現(xiàn)智能家居,將家居中的信息家電設(shè)備、燈光控制系統(tǒng)、安全控制系統(tǒng)等連成一體,給家庭信息設(shè)備提供一個統(tǒng)一平臺,要通過該平臺實現(xiàn)家庭信息設(shè)備之間的互連

19、和信息共享、實現(xiàn)家庭信息設(shè)備與外界的信息交換就必須有一個完善的家庭網(wǎng)絡(luò)。1.3家庭網(wǎng)絡(luò) 家庭網(wǎng)絡(luò)(home network)是實現(xiàn)智能家居系統(tǒng)架構(gòu)的前提和基礎(chǔ)。通常意義的家庭網(wǎng)絡(luò)是加工、管理、傳輸和存儲信息諸要素的集合體,能夠連接和集成家庭中的計算、控制、監(jiān)視和通信等多種設(shè)備。它是在家庭和社會的信息網(wǎng)絡(luò)相連之前,將家庭內(nèi)部的所有信息設(shè)備(包括信息家電、燈光控制系統(tǒng)、安全控制系統(tǒng)等)連接起來而形成的網(wǎng)絡(luò);它提供了一個實現(xiàn)家庭信息設(shè)備之間的互連和信息共享、實現(xiàn)家庭信息設(shè)備與外界的信息交換的統(tǒng)一的信息化平臺。家庭內(nèi)部設(shè)備存在多樣性,如信息家電、控制設(shè)備等,根據(jù)家庭內(nèi)部信息傳輸?shù)奶攸c和要求,可將家庭網(wǎng)

20、絡(luò)分為三部分:高速娛樂用家庭內(nèi)網(wǎng)。用以傳輸音頻和視頻數(shù)據(jù)的流媒體信號。中速操縱用家庭內(nèi)網(wǎng)用以傳輸功能類信息家電(如:空調(diào)、洗衣機、微波爐等)的控制、處理的數(shù)字信號。低速控制用家庭內(nèi)網(wǎng)。用于傳輸在門、窗、煙霧探測儀等上的傳感器、控制器的監(jiān)視信號、控制信號和報警信號等。雖然這些控制裝置安裝比較靈活、數(shù)目也較多,但它們傳輸?shù)臄?shù)據(jù)量都很小,對傳輸速率要求比較低,是家庭網(wǎng)絡(luò)中唯一的低速網(wǎng)絡(luò)。1.4嵌入式技術(shù) 嵌入式系統(tǒng)就是“以應(yīng)用為中心、以計算機技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)”。總的來說,嵌入式系統(tǒng)具有以下特點:嵌入式系統(tǒng)“嵌入”到對象的

21、體系中,對對象、環(huán)境和嵌入式系統(tǒng)自身具有嚴格的要求。一般的嵌入式系統(tǒng)具有功耗低、體積小、成本低、集成度高、專用性強等特點。嵌入式系統(tǒng)是將先進的計算機技術(shù)、半導(dǎo)體技術(shù)和電子技術(shù)與各個行業(yè)的具體應(yīng)用相結(jié)合的產(chǎn)物。嵌入式系統(tǒng)的硬件和軟件都必須高效率地設(shè)計,量體裁衣,去除冗余,力爭在同樣的硅片面積上實現(xiàn)更多的功能和更高的性能。嵌入式系統(tǒng)和具體應(yīng)用有機地結(jié)合在一起,它的升級換代也是和具體產(chǎn)品同步進行的,因此嵌入式系統(tǒng)產(chǎn)品一旦進入市場,就具有較長的生命周期。嵌入式系統(tǒng)開發(fā)需要專門的開發(fā)工具和開發(fā)環(huán)境。1.5本文的研究內(nèi)容 由于現(xiàn)有智能家居在操作方式、性能等方面不能滿足用戶的要求,而且隨著信息家電種類的增多

22、,必然會造成多種遙控器并存的情形,在這種情況下用戶對信息家電的使用將會復(fù)雜化?;谏鲜鰡栴},本文提出一種解決方案:結(jié)合嵌入式系統(tǒng)、網(wǎng)絡(luò)技術(shù)、無線通信技術(shù)以及手持移動終端技術(shù),設(shè)計一個能夠在智能家居中管理和控制所有信息家電的、可以直接與用戶交互的可視化嵌入式智能設(shè)備信息家電萬能遙控器。 主要研究內(nèi)容如下: (1)智能家居中信息家電的接口定義語言iaidl;在信息家電設(shè)備在被外界識別、理解、使用之前,必須有一種統(tǒng)一、抽象的語言來進行設(shè)備的定義和功能描述本文通過對信息家電的特點進行分析,給出了一種針對家庭網(wǎng)絡(luò)中信息家電的接口定義語言。iaidl不是編程語言,它唯一的目的是以與任何具體編程語言無關(guān)的形

23、式來定義智能家居中的信息家電。 (2)信息家電遙控器的軟硬件系統(tǒng)的設(shè)計 信息家電遙控器是一種嵌入式設(shè)備,為滿足高效、便攜、穩(wěn)定等特性,需要為其量身定做硬件系統(tǒng)。本文在研究過程中,對其硬件系統(tǒng)進行了設(shè)計,包括cpu, flash, sdram, keyboard, blue teeth, lcd, touch pad, power各個模塊。 第二章 信息家電接口定義語言iaidl 在智能家居中存在著多種不同類型和功能的信息家電設(shè)備,若每種信息家電都按自己的方式來申明其所具有的功能和提供的控制接口,則智能家居系統(tǒng)需要多個解釋模塊來理解各種信息家電所申明的內(nèi)容,系統(tǒng)的復(fù)雜性也隨之增加。因此,需要在信

24、息家電設(shè)備在被外界識別、理解、使用之前,有一種統(tǒng)一、抽象的語言來進行設(shè)備的定義和功能描述。所有的信息家電采用同一種方式申明自己所具備的功能和提供的控制接口,這樣,所有信息家電都建立在同一個語言平臺上,從而對信息家電的控制在實現(xiàn)上就變得容易了。 信息家電接口定義語言(iaidl)是一種用來定義家庭網(wǎng)絡(luò)中信息家電的說明性語言,是對設(shè)備資源信息的描述。2.1 iaidl描述的內(nèi)容2.1.1屬性 屬性描述的是設(shè)備的某種特性。設(shè)備的屬性可以分為不變屬性和可變屬性。不變屬性的值一經(jīng)廠家設(shè)定,就不會改變;而可變屬性的值是隨著環(huán)境的影響和使用者的干預(yù)而不斷變化的。例如:一臺空調(diào),它的型號、生產(chǎn)廠家等屬性就是不

25、變屬性;它的當(dāng)前室溫就是一個可變屬性。2.1.2操作 將設(shè)備提供的物理功能以應(yīng)用程序接口(api)的形式提供給應(yīng)用程序開發(fā)人員,并由應(yīng)用程序開發(fā)人員來實現(xiàn)設(shè)備操作和控制的細節(jié)。對最終用戶來說這是透明的,無須知道該應(yīng)用程序接口的存在及其用法。 在iaidl中,操作是以類似函數(shù)的方式進行表達,包括:操作名,功能說明,操作返回值,操作的參數(shù)數(shù)目、參數(shù)類型和參數(shù)的取值范圍等。2.2 iaidl的基本數(shù)據(jù)類型 在iaidl中基本的數(shù)據(jù)類型有:整型、字符串型、和自定義枚舉型。其中,自定義枚舉型的使用頻率最高,這是因為不同的信息家電設(shè)備的在屬性上的取值存在特殊性的特點。例如:電視的輸入模式(input mo

26、de)屬性就具有兩個值。枚舉型的定義是在所有操作定義之前,對某枚舉型類型的使用遵循先定義后使用的原則。其語句為: enum枚舉類型名稱二(枚舉值1,枚舉值2,,枚舉值n);2.3 iaidl規(guī)范本設(shè)計中設(shè)計iaidl規(guī)范4如下:=:=is ,:二“i空,”:=*:=en um+; 46 ( 35,”*“),“;”:一卜屬性類型attribute:“”屬性名稱”,“;”:.=function:“”“”references “”可變屬性名稱“”,()八“;”:=i:=:.=int”數(shù)值范圍下限,”string1:=constivar:=字符串:=字符串:=字符串:=字符串:=字符串:二字符串:=字

27、符串:=voidstring :=字符串:=字符串:=數(shù)字:二數(shù)字符號說明: 對于iaidl語法描述的符號有點類似于extended backus-naur format (ebnf )?,F(xiàn)說明如下:1 :=表示定義為;2 表示可選3 表示包含了參數(shù)說明;4 表示變量;5 text表示規(guī)定書寫的內(nèi)容;6 a表示可重復(fù)0次或i次;7 *表示可重復(fù)0次或多次;8 +表示可重復(fù)i次或多次;9 夏表示一個獨立的接口;10 表示對后面內(nèi)容的說明。如果內(nèi)包含的關(guān)鍵字是atttibute,則說明后面表示的是一個屬性;如果內(nèi)包含的關(guān)鍵字是function,則說明后面表示的是一個操作;11 說明整型類參數(shù)的取值

28、范圍。例如:海爾電視is en um switch=(開,關(guān)); en um channel= (cctv tvb,); en um mode= (av, tv); const attribute:廠家海爾集團; const attribute:屏幕響應(yīng)速度8ms; const attribute:型號lc-42r35; const attribute:數(shù)字接口hdmi*2; const attribute:顏色白色; const attribute:分辨率1366*768; var attribute:開關(guān)關(guān); var attribute:靜音否; var attribute:屏顯否; va

29、r attribute:音量50; var attribute:亮度50; var attribute:頻道cctv; var attribute:輸入模式tv; function:開關(guān)references開關(guān)void on off (switch power); function:靜音references靜音void mute(); function:屏顯references屏顯void screen display (); function:設(shè)置音量references音量void set volume(int volume0,100); function:設(shè)置亮度references亮度

30、void set brightness(intvolume0,100); function:設(shè)置頻道references頻道void set channel(channel name); function:設(shè)置輸入模式references輸入模式void set in put mode(mode name);上述iaidl表示的意義如下:被定義的信息家電為海爾電視,該電視的類型屬于電視類白色信息家電,它所具有的不變屬性有:廠家、屏幕響應(yīng)速度、型號、顏色、數(shù)字接口和物理分辨率;它所具有的可變屬性有:開關(guān)、靜音、屏顯、音量、亮度、頻道和輸入模式;該家電的操作共有七個,分別為開關(guān)、設(shè)置靜音、設(shè)置屏顯

31、、設(shè)置音量、設(shè)置亮度、設(shè)置頻道和設(shè)置輸入模式,可見,每種操作對應(yīng)著一個可變屬性。下面重點介紹設(shè)置輸入模式操作和設(shè)置音量操作的聲明及該聲明的意義。 第三章 智能家居中信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)的系統(tǒng)結(jié)構(gòu) 在有了iaidl之后,智能家居中的所有信息家電設(shè)備都可以建立在一個統(tǒng)一的語言平臺上。這樣,讓設(shè)備與家庭網(wǎng)關(guān)之間相互理解和交互成為了可能。在iaidl基礎(chǔ)上,再應(yīng)用嵌入式技術(shù)、網(wǎng)絡(luò)通信技術(shù)和控制技術(shù),就可以搭建一個智能家居內(nèi)信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)。信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)是由信息家電、家庭網(wǎng)關(guān)、信息家電萬能遙控器三部分所組成,它們相輔相成、缺一不可,并通過家庭網(wǎng)絡(luò)連接在一起。該系統(tǒng)是一個典型的c/s結(jié)構(gòu),由信

32、息家電萬能遙控器構(gòu)成了其client(客戶端),由家庭網(wǎng)關(guān)和信息家電共同構(gòu)成了其server(服務(wù)端);其核心是信息家電萬能遙控器,它的主要功能是在智能家居內(nèi)部管理和操縱所有信息家電。該系統(tǒng)的c/s控制結(jié)構(gòu)圖如圖3-1所示。圖3-1:信息家電網(wǎng)絡(luò)監(jiān)控系統(tǒng)的gs控制結(jié)構(gòu)圖3.1信息家電 每種信息家電設(shè)備都有對應(yīng)的用iaidl來編寫的設(shè)備描述文件,在該文件中包含著對應(yīng)設(shè)備的屬性、操作等的描述。 當(dāng)某個信息家電設(shè)備接通電源并連入家庭網(wǎng)絡(luò)后,需要立即向家庭網(wǎng)關(guān)注冊;同時,還需要將自己的設(shè)備描述文件提交給家庭網(wǎng)關(guān)。而家庭網(wǎng)關(guān)在接受到信息家電的注冊請求之后會為該設(shè)備分配一個全局唯一標(biāo)識符,且對該設(shè)備的ia

33、idl設(shè)備描述文件進行解釋和處理之后,連同該設(shè)備的當(dāng)前狀態(tài)信息一起存入家庭網(wǎng)關(guān)的數(shù)據(jù)庫中。 家庭網(wǎng)關(guān)是智能家居網(wǎng)絡(luò)上的核心設(shè)施,它將家庭內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò)(如局域網(wǎng)、internet網(wǎng)等)分離開來,并為信息家電提供了一個統(tǒng)一的平臺,通過該平臺能實現(xiàn)信息家電與萬能遙控器之間的互連和信息交互。 在該系統(tǒng)下,家庭網(wǎng)關(guān)中運行著嵌入式數(shù)據(jù)庫、iaidl編譯器、設(shè)備適配器等模塊。 家庭網(wǎng)關(guān)統(tǒng)一管理著智能家居中所有的信息家電、設(shè)備。在其上的嵌入式數(shù)據(jù)庫中,存儲著所有信息家電的注冊信息、狀態(tài)信息及統(tǒng)計信息。其中,每個信息家電設(shè)備都有其注冊信息和狀態(tài)信息,而統(tǒng)計信息則包含有:家庭網(wǎng)絡(luò)中信息家電設(shè)備類型的名稱和數(shù)

34、目信息、家庭網(wǎng)絡(luò)中每種信息家電設(shè)備類型下各個設(shè)備的名稱和數(shù)目信息。這樣,萬能遙控器在從家庭網(wǎng)關(guān)處獲取這些信息后就可以動態(tài)生成以下三種控制界面:家庭網(wǎng)絡(luò)中信息家電的類別界面,同類信息家電設(shè)備的列表界面及信息家電設(shè)備的詳細信息界面。3.2信息家電萬能遙控器 在智能家居中,信息家電萬能遙控器是一個可以操縱和管理所有信息家電的、可以直接與用戶交互的可視化嵌入式智能設(shè)備。3.2.1萬能遙控器邏輯結(jié)構(gòu) 萬能遙控器通過家庭網(wǎng)絡(luò)連接到家庭網(wǎng)關(guān),完成接收家電設(shè)備接口信息、提交服務(wù)請求、接收服務(wù)結(jié)果等功能,以此來實現(xiàn)萬能遙控器管理和控制設(shè)備。萬能遙控器由結(jié)果拆裝器、命令裝配器、界面生成器等模塊組成,其邏輯結(jié)構(gòu)圖如

35、圖3-2所示。 圖3-2:萬能遙控器的邏輯結(jié)構(gòu)圖 命令裝配器:通過在控制界面上捕獲用戶對信息家電設(shè)備的操作,裝配為實施該操作的命令,生成數(shù)據(jù)包并發(fā)送給家庭網(wǎng)關(guān)。 結(jié)果拆裝器:將家庭網(wǎng)關(guān)發(fā)至萬能遙控器的數(shù)據(jù)包按通信協(xié)議進行拆裝,作為界面生成器模塊的輸入數(shù)據(jù)。3.2.2遙控器事務(wù)流程 信息家電萬能遙控器根據(jù)其功能進行劃分,可分為信息查詢和設(shè)備控制。其中,信息查詢功能的典型特點是萬能遙控器只與家庭網(wǎng)關(guān)進行交互,而不涉及到具體的信息家電設(shè)備。它又可細分為對智能家居內(nèi)信息家電設(shè)備統(tǒng)計信息的查詢、對已注冊信息家電設(shè)備接口信息的查詢以及對信息家電設(shè)備當(dāng)前工作狀態(tài)信息的查詢?nèi)悺o論哪種查詢,都由萬能遙控器利

36、用命令裝配器將查詢請求打包并發(fā)送給家庭網(wǎng)關(guān);家庭網(wǎng)關(guān)在接收并解析數(shù)據(jù)包后,在其嵌入式數(shù)據(jù)庫中完成查詢請求,并將查詢結(jié)果打包返回至萬能遙控器;萬能遙控器在接收到數(shù)據(jù)包后,由結(jié)果拆裝器提取信息交由界面生成器,最后由界面生成器利用圖形對象庫完成控制界面的生成或更新。其事務(wù)流程圖如圖3-3所示。 圖3-3:萬能遙控器查詢功能事務(wù)流程圖 萬能遙控器對信息家電設(shè)備的控制功能的實現(xiàn)較為復(fù)雜,它涉及到家庭網(wǎng)關(guān)和信息家電設(shè)備,要求三者密切配合。其事務(wù)流程圖如圖3-4所示。當(dāng)用戶在信息家電設(shè)備的詳細信息界面上進行了某種操作,萬能遙控器會解釋該操作的具體含義,由其上的命令裝配器將對設(shè)備的服務(wù)請求打包并發(fā)送至家庭網(wǎng)關(guān)

37、;然后,家庭網(wǎng)關(guān)在接收和解析服務(wù)請求數(shù)據(jù)包并由服務(wù)集成器處理后通過設(shè)備適配器將該數(shù)據(jù)包轉(zhuǎn)發(fā)至對應(yīng)的信息家電。第四章 信息家電萬能遙控器軟硬件平臺的構(gòu)建4.1 硬件平臺 信息家電萬能遙控器的硬件系統(tǒng)結(jié)構(gòu)圖如圖4-1所示,其中包含有許多小模塊,它們以嵌入式處理器s3c2410x為核心,實現(xiàn)不同的功能。下面詳細介紹各模塊。圖4-1信息家電萬能遙控器硬件系統(tǒng)結(jié)構(gòu)圖4.1.1 samsung s3c2410x嵌入式微處理器 s3c2410x微處理器是一款由samsung electronics co ,ltd為手持設(shè)備設(shè)計的低功耗、高度集成的嵌入式微處理器。s3c2410x最突出的特性是采用了由arm公

38、司設(shè)計的16/32位arm920t risc處理器(203mhz)為其cpu核并且采用了一種新的總線結(jié)構(gòu),即amba(高級微控制器總線結(jié)構(gòu)),它的低功耗、精簡和出色的全靜態(tài)設(shè)計特別適用于對成本和功耗敏感的應(yīng)用。它集成了如下片內(nèi)外圍功能部件71: 1個lcd控制器(支持stn和tft帶有觸摸屏的液晶顯示屏); sdram控制器; 117位通用i/o口和24位外部中斷源; 3個通道的dart; 4個通道的dma,- 4個具有pwm功能的計時器和1個內(nèi)部時鐘; 8通道的10位adc; 8通道10位ad控制器;看門狗計數(shù)器 觸摸屏接口; iis總線接口; 2個usb主機接口,1個usb設(shè)備接口; 2個

39、spi接口; sd接口和mmc卡接口; 在時鐘方面s3c2410x也有突出的特點,該芯片集成了一個具有日歷功能的rtc和具有pll(mpll和upll)的芯片時鐘發(fā)生器。mpll所產(chǎn)生的主時鐘能夠使處理器工作頻率最高達到203mhz。這個工作頻率足以使處理器輕松運行l(wèi)inux, windows ce等操作系統(tǒng)以及進行較為復(fù)雜的信息處理。upll產(chǎn)生實現(xiàn)主從usb功能的時鐘。 4.1.2 flash flash存儲器又稱為閃存,是一種新興的半導(dǎo)體存儲器件,能在不加電的情況下長期保持存儲的信息。它具有功耗低、容量大、擦寫速度快、可整片或分扇區(qū)在系統(tǒng)編程等特點,并且可由內(nèi)部嵌入的算法完成對芯片的操作

40、,因而在各種嵌入式系統(tǒng)中得到了廣泛的應(yīng)用。作為一種非易失性存儲器,flash在系統(tǒng)中通常用于存放程序代碼、常量表以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)等。常用的flash的數(shù)據(jù)寬度為8位或16位,編程電壓為單3.3v。 在系統(tǒng)運行之前,需要啟動代碼(如:boot loader程序)將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核和用戶應(yīng)用程序準備好正確的環(huán)境。這樣,啟動代碼、操作系統(tǒng)內(nèi)核以及用戶應(yīng)用程序可以存放在nand flash中,直接從nand flash中啟動。其原理介紹如下: s3c2410x內(nèi)部集成了nand flash控制器,為了支持系統(tǒng)從nand flash中啟

41、動,s3c24l0x內(nèi)部有一塊被稱為“墊腳石”(steppingstone)的sram緩存。在啟動時,s3c2410x會自動的將nand flash存儲器中最前面的4kb數(shù)據(jù)拷貝到s3c2410x內(nèi)部的sram中并自動執(zhí)行,通常這4kb數(shù)據(jù)存放的是啟動代碼,這樣,啟動代碼就在s3c2410x內(nèi)部的sram中執(zhí)行。4.2軟件平臺4.2.1嵌入式linux操作系統(tǒng) linux是一種很受歡迎的操作系統(tǒng),自1992年問世至今,已發(fā)展成一個功能強大、設(shè)計完善的操作系統(tǒng)。它原本被設(shè)計為桌面系統(tǒng),現(xiàn)在廣泛應(yīng)用于服務(wù)器領(lǐng)域,而更大的影響在于它正逐漸的應(yīng)用于嵌入式系統(tǒng)。 linux作為嵌入式操作系統(tǒng)的優(yōu)勢主要表

42、現(xiàn)在以下幾個方面:1功能強大的內(nèi)核,性能高效、穩(wěn)定、多任務(wù)。linux的內(nèi)核非常穩(wěn)定。它的高效和穩(wěn)定性已經(jīng)在各個領(lǐng)域,尤其在網(wǎng)絡(luò)服務(wù)器領(lǐng)域獲得廣泛的贊譽,而且linux內(nèi)核小巧靈活,易于裁剪。2支持多種體系結(jié)構(gòu),linux支持x86, arm, mips等多種體系結(jié)構(gòu)?,F(xiàn)在,linux甚至可以在沒有mmu(內(nèi)存管理單元)的處理器上運行。3完善的網(wǎng)絡(luò)、圖形用戶界面和文件管理機制。linux誕生于網(wǎng)絡(luò),這就保證了它支持所有的標(biāo)準因特網(wǎng)協(xié)議。4支持大量的周邊硬件設(shè)備,驅(qū)動豐富,從而大大降低開發(fā)難度和周期。5可裁剪性。linux內(nèi)核與用戶界面是完全獨立的。它非常靈活,各部分的可定制性都很強,能適合多種

43、需求。4.2.1.1嵌入式linux內(nèi)核 完整的linux內(nèi)核主要由五個部分組成:進程管理模塊,進程間通信模塊,內(nèi)存管理模塊,虛擬文件系統(tǒng)和網(wǎng)絡(luò)通信模塊。進程管理。 進程是程序在某個數(shù)據(jù)集上的執(zhí)行過程,包括一個地址空間和至少一個控制點,進程在這個地址空間上執(zhí)行單一的指令序列。在進程的生命周期中,可能處于以下狀態(tài)之一:運行、等待、停止和僵死。進程管理包括進程調(diào)度和進程間通信。進程調(diào)度控制著進程對cpu的訪問。通過進程調(diào)度算法來確定下一個將要運行的進程。對于普通進程,linux采用動態(tài)優(yōu)先級調(diào)度;對于實時進程,linux采用fifo(先來先服務(wù))和round robin(時間片輪轉(zhuǎn))兩種調(diào)度略。進

44、程間通信。 對于多任務(wù)、多用戶的操作系統(tǒng)來說,進程間通信是一項必不可少的手段。進程間通信支持進程間的各種通信機制,是內(nèi)核用于協(xié)調(diào)進程的活動。linux支持ipc(inter progress communication)機制,包括信號和管道。此外,linux還支持unix system v版本中的3種進程間通信機制:消息隊列、信號量和共享內(nèi)存。內(nèi)存管理。 內(nèi)存管理涉及內(nèi)存空間分配,地址映射以及內(nèi)存保護等范疇,并支持虛擬內(nèi)存技術(shù)。內(nèi)存管理的實現(xiàn)與mmu關(guān)系密切。mmu的主要作用有兩個方面:一是提供地址映射;二是提供訪問保護。虛擬文件系統(tǒng)。 虛擬文件系統(tǒng)(vfs, virtual file sys

45、tem)為系統(tǒng)內(nèi)核與不同的文件系統(tǒng)之間提供了統(tǒng)一的接口,是對各種文件系統(tǒng)的抽象。虛擬文件系統(tǒng)可以分為邏輯文件系統(tǒng)和設(shè)備驅(qū)動程序兩部分。邏輯文件系統(tǒng)指linux所支持的各種文件系統(tǒng),如ext, fat和nfs等。 網(wǎng)絡(luò)通信。 linux所使用的bsd socket不僅是網(wǎng)絡(luò)通信的接口,而且是一種進程間通信的機制。它是以4.3 bsd為模型而實現(xiàn)的。bsd(berkeley software distribution)是unix現(xiàn)有技術(shù)的一個重要來源,具有良好的穩(wěn)定性和網(wǎng)絡(luò)通信性能,其代碼結(jié)構(gòu)嚴謹。4.3 bsd是unix發(fā)展歷史中的一個版本。 4.2.2嵌入式圖形系統(tǒng)minigui mini g

46、ui是一個適用于嵌入式系統(tǒng)的、功能強大的、輕量級的圖形用戶界面支持系統(tǒng),是由北京飛漫軟件技術(shù)有限公司擁有版權(quán)并主持和維護的自由軟件21?;趍ini gui的應(yīng)用程序一般通過ansi c庫以及mini gui自身提供的api來實現(xiàn)自己的功能;mini gui中的“可移植層”可將特定操作系統(tǒng)及底層硬件的細節(jié)隱藏起來,而上層應(yīng)用程序則無需關(guān)心底層的硬件平臺輸出和輸入設(shè)備。 圖4-2 minigui與嵌入式操作系統(tǒng)的關(guān)系4.2.2.1 minigui的特性 作為操作系統(tǒng)與用戶應(yīng)用程序的中間件,minigui將底層操作系統(tǒng)及硬件平臺差別隱藏起來,并對上層用戶應(yīng)用程序提供了一致的功能特性。這些功能特性如

47、下:完備的多窗口機制; minigui中的窗口分為4類,分別為主窗口、對話框、控件和主窗口的子窗口。mini gui中的主窗口與windows應(yīng)用程序的主窗口概念類似,但有一些重要的不同,minigui中的每個主窗口及其附屬主窗口對應(yīng)于一個單獨的線程,通過函數(shù)調(diào)用可建立主窗口以及對應(yīng)的線程。完備的事件驅(qū)動機制和消息傳遞機制; minigui使用事件驅(qū)動作為應(yīng)用程序的創(chuàng)建構(gòu)架。每個minigui應(yīng)用程序都包含一個主事件循環(huán),它不停地、反復(fù)地檢測是否有計算機外設(shè)發(fā)生的事件,例如:鍵盤的敲擊、觸摸屏上的觸摸等。一旦有這樣的事件發(fā)生,minigui將事件轉(zhuǎn)換成為一個消息,并將消息發(fā)送到mini gui

48、應(yīng)用程序的消息隊列之中。一般來說,消息由代表消息的一個整數(shù)和消息的附加參數(shù)組成。應(yīng)用程序中的主要任務(wù)是處理消息,所以需要建立一個消息循環(huán),從應(yīng)用程序的消息隊列中檢索消息,并將每條消息發(fā)送到相應(yīng)的窗口處理函數(shù)(如:win proc函數(shù))中,由窗口處理函數(shù)來進行處理。引入圖形抽象層和輸入抽象層;在minigui中弓!入了圖形抽象層(graphics abstract layer ,gal )和輸入抽象層(input abstract layer, ial)的概念。抽象層的概念類似于linux內(nèi)核虛擬文件系統(tǒng)的概念。它定義了一組不依賴于任何特殊硬件的抽象接口,所有頂層的圖形操作和輸入處理都建立在抽象

49、接口之上。多種控件的支持; minigui提供了多種控件類的支持,包括:靜態(tài)文本框、按鈕、單行和多行編輯框、列表框、組合框、進度條、屬性頁、工具欄、拖動條、樹型控件和月歷控件等等。另外,mini gui還支持對話框、菜單、加速鍵和定時器等其他gui元素。多字符集和多字體支持; 目前minigui支持is08859-1-is08859-15, gb2312, gbk,gb18030, big5, euc-jp, unicode等字符集,支持等寬點陣字體、變寬點陣字體、qt/embedded使用的嵌入式字體qpf, truetype以及adobe等矢量字體。支持兩種不同的顯示設(shè)備; minigui

50、通過兩種不同的內(nèi)部軟件結(jié)構(gòu)支持低端顯示設(shè)備(如:單色lcd)和高端顯示設(shè)備(如:彩色顯示器)。前者小巧靈活,而后者是在前者基礎(chǔ)上提供了更加強大的圖形功能。對界面皮膚的支持用戶可通過皮膚支持獲得外觀非常華麗的圖形界面。針對嵌入式的特殊支持;mini gui對嵌入式系統(tǒng)進行了特殊的支持,包括一般性的i/o流操作和字節(jié)序相關(guān)函數(shù)等。第五章 信息家電萬能遙控器的通信技術(shù)及相關(guān)協(xié) 議5.1藍牙協(xié)議blue z 信息家電萬能遙控器同家庭網(wǎng)關(guān)之間是通過藍牙進行無線網(wǎng)絡(luò)通信的,在藍牙硬件模塊的基礎(chǔ)上還需要藍牙協(xié)議棧的支持。 藍牙協(xié)議是藍牙技術(shù)的核心組成部分,它能使藍牙設(shè)備之間互相定位并建立連接;通過這個連接,

51、設(shè)備上的應(yīng)用程序就可以進行交互和數(shù)據(jù)交換。一個適用于本系統(tǒng)的藍牙協(xié)議棧結(jié)構(gòu)如圖5-1所示。 圖s-1系統(tǒng)所使用的藍牙協(xié)議棧結(jié)構(gòu)圖 在該藍牙協(xié)議棧中,包含了藍牙規(guī)范中的所有核心協(xié)議:基帶協(xié)議(base band )、鏈路管理協(xié)議(lmp )、邏輯鏈路控制和適配器協(xié)議(l2cap)和服務(wù)發(fā)現(xiàn)協(xié)議(sdp)。 除此之外,該協(xié)議還包括了主機控制接口(hci ),它屏蔽了底層硬件的差異性,向上層協(xié)議提供一個統(tǒng)一的通信接口。5 .1 .1 blue z 隨著linux操作系統(tǒng)在開源世界里的作用越來越重要,許多組織針對linux操作系統(tǒng)的特性開發(fā)出很多的開源藍牙協(xié)議,如:bluez ,affix, open

52、bt , blue drekar 等。 blue z藍牙協(xié)議棧的結(jié)構(gòu)如圖5-2所示。bluez協(xié)議棧主要由三部分組成:blue z -kernel, blue z-fibs, blue。其中,blue z-kernel和blue z-fibs實現(xiàn)了圖中host controller interface.berkley socket interface之間的全部內(nèi)容。 b1uez藍牙協(xié)議棧將藍牙核心協(xié)議全部實現(xiàn)為可裝卸的模塊。其中基帶和lmp協(xié)議由藍牙硬件適配器實現(xiàn),主機通過主機控制器接口hci與藍牙硬件適配器通信,而主機端實現(xiàn)的藍牙核心協(xié)議就只有l(wèi)2cap和sdp協(xié)議,hci是上層核心協(xié)議和底

53、層核心協(xié)議的通信接口。5 .1.2 socket blue z藍牙協(xié)議棧為高層用戶應(yīng)用程序提供了網(wǎng)絡(luò)api接口支持,而網(wǎng)絡(luò)api的標(biāo)準形式就是向用戶提供一個套接字(socket這樣我們就涉及到了套接字編程260 利用socket實現(xiàn)通信采用的是客戶機/服務(wù)器模式,將請求服務(wù)的一端稱為客戶機,而提供服務(wù)的一端稱為服務(wù)器。在本系統(tǒng)中,信息家電萬能遙控器將作為客戶機,而家庭網(wǎng)關(guān)作為服務(wù)器。使用套接口編寫網(wǎng)絡(luò)應(yīng)用的流程圖如圖5-3所示:5.2信息家電萬能遙控器與家庭網(wǎng)關(guān)間的通信協(xié)議信息家電萬能遙控器與家庭網(wǎng)關(guān)之間主要完成信息家電設(shè)備信息的獲取、發(fā)送控制信息、接收信息家電狀態(tài)改變信息等方面的交互。其通信

54、協(xié)議定義如下:5.2.1幀格式說明:f為頭標(biāo)志 ($7e)size:字節(jié)數(shù)(hio字段的長度)info:信息字段,每種類型定義不同。fcs:校驗碼(循環(huán)校驗碼,公式為x16+xlz+xs+l),計算校驗碼不包括標(biāo)志。5.2.2信息字段hio域的說明第六章 信息家電萬能遙控器的帶約束的動態(tài)界面布局 信息家電萬能遙控器的主要作用是提供一個前端的圖形用戶界面,以便于用戶的交互操作。在萬能遙控器上需要三種界面:智能家居中信息家電的類別界面,同類信息家電設(shè)備的列表界面及具體信息家電設(shè)備的詳細信息界面。由于每個家庭中的信息家電設(shè)備的種類和數(shù)目及其詳細信息都不盡相同,因此在萬能遙控器上必須動態(tài)來生成gui界面。然而,界面又是由若干控件所組成,這樣,“如何合理、美觀、高效地生成界面”就轉(zhuǎn)化成為“如何在界面上將動態(tài)生成的控件合理、美觀、高效地布局”了。6.1約束 每種信息家電設(shè)備都具有自

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論