基于JAVA的智能家居控制系統(tǒng)的設計信息控制端的設計論文二稿_第1頁
基于JAVA的智能家居控制系統(tǒng)的設計信息控制端的設計論文二稿_第2頁
基于JAVA的智能家居控制系統(tǒng)的設計信息控制端的設計論文二稿_第3頁
基于JAVA的智能家居控制系統(tǒng)的設計信息控制端的設計論文二稿_第4頁
基于JAVA的智能家居控制系統(tǒng)的設計信息控制端的設計論文二稿_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 PINGDINGSHAN UNIVERSITY 畢業(yè)論文(設計)題 目:基于JAVA的智能家居控制系 統(tǒng)的設計(信息控制端的設計)院(系): 軟件學院 專業(yè)年級: 軟件工程專業(yè) 2007級 姓 名: 張燦燦 學 號: 071530214 指導教師: 鮑義東 講師 年 月 日原 創(chuàng) 性 聲 明本人鄭重聲明:本人所呈交的畢業(yè)論文,是在指導老師的指導下獨立進行研究所取得的成果。畢業(yè)論文中凡引用他人已經(jīng)發(fā)表或未發(fā)表的成果、數(shù)據(jù)、觀點等,均已明確注明出處。除文中已經(jīng)注明引用的內(nèi)容外,不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的科研成果。對本文的研究成果做出重要貢獻的個人和集體,均已在文中以明確方式標明。

2、本聲明的法律責任由本人承擔。論文作者簽名: 日 期: 關于畢業(yè)論文使用授權的聲明本人在指導老師指導下所完成的論文及相關的資料(包括圖紙、試驗記錄、原始數(shù)據(jù)、實物照片、圖片、錄音帶、設計手稿等),知識產(chǎn)權歸屬平頂山學院。本人完全了解平頂山學院有關保存、使用畢業(yè)論文的規(guī)定,同意學校保存或向國家有關部門或機構(gòu)送交論文的紙質(zhì)版和電子版,允許論文被查閱和借閱;本人授權平頂山學院可以將本畢業(yè)論文的全部或部分內(nèi)容編入有關數(shù)據(jù)庫進行檢索,可以采用任何復制手段保存和匯編本畢業(yè)論文。如果發(fā)表相關成果,一定征得指導教師同意,且第一署名單位為平頂山學院。本人離校后使用畢業(yè)論文或與該論文直接相關的學術論文或成果時,第一

3、署名單位仍然為平頂山學院。論文作者簽名: 日 期: 指導老師簽名: 日 期: 基于JAVA技術的智能家居控制系統(tǒng)的設計(信息控制端的設計)摘 要智能家居(Smart Home),又稱智能住宅。它是以住宅為平臺,兼?zhèn)浣ㄖ?、網(wǎng)絡通信、信息家電、設備自動化,集系統(tǒng)、結(jié)構(gòu)、服務、管理為一體的高效、舒適、安全、便利、環(huán)保的居住環(huán)境。利用計算機技術、網(wǎng)絡通訊技術、綜合布線技術、將與家居生活有關的各種子系統(tǒng),有機地結(jié)合在一起,通過統(tǒng)籌管理,讓家居生活更加舒適、安全、有效。本文以智能家居廣闊的市場需求為基礎,選取家庭智能控制系統(tǒng)為研究對象。在對家庭樓宇自動化協(xié)議、嵌入式系統(tǒng)深入研究的基礎上,采用Java技術為

4、平臺,成功開發(fā)了調(diào)速調(diào)光控制器、家用電器調(diào)節(jié)控制器等等各項功能。該系統(tǒng)主要針對普通住宅小區(qū)家庭用戶而設計,它可以實現(xiàn)對家用電器設備的遠程控制。最后,對整個系統(tǒng)進行了大量的調(diào)試工作,包括軟件仿真和系統(tǒng)連機調(diào)試,結(jié)果證明這種網(wǎng)絡控制的方案是可行的。關鍵詞:智能家居,舒適,Java,遠程控制 The Design of smart home system based on JAVA(the information control design)AbstractSmart Home,also known as Smart Residential. It is residential as a plat

5、form, combining architecture, network communications, information appliances, equipment automation, collection system, structure, services, management for the integrated high-performance, comfort, safety, convenience, environmental protection, living environment. The use of computer technology, netw

6、ork communication technology, integrated wiring technology, home life and the various subsystems, the combination of management, through co-ordination, so that home life more comfortable, safe and effective.Driven by large market requirements, we chose the intelligent home system as research content

7、 and the embedded system as research tool. Based on in-depth study of home automation and building automation protocol and embeddem system, successfully developed the motor driver and lighting controller, vacuum type dejects collecting device on high-speed train, palmer coder based on protocol. Ligh

8、ting controller based on protocol. This system is mainly designed to aim at the ordinary residential district family user, which can achieve the household electrical appliances remote control.Last, we hava carried out a lot of work to debug the whole system including software simulation and system o

9、nline debugging. The result has proved that the scheme of the network control is feasible.Key Words:Smart Home,comfort, Java, remote control目 錄1 緒論11.1 課題背景11.2 研究意義11.3 研究現(xiàn)狀21.4研究內(nèi)容21.4.1 系統(tǒng)介紹31.4.2 模塊劃分31.5 小結(jié)42 系統(tǒng)需求分析52.1 系統(tǒng)功能需求52.2 系統(tǒng)性能需求62.3 系統(tǒng)可行性研究62.3.1 技術可行性72.3.2 經(jīng)濟可行性72.3.3 操作可行性72.4 系統(tǒng)運行環(huán)

10、境82.5 小結(jié)83 系統(tǒng)總體設計93.1 系統(tǒng)結(jié)構(gòu)設計93.2 系統(tǒng)工作原理93.3 系統(tǒng)關鍵技術103.4 小結(jié)104 系統(tǒng)詳細設計與實現(xiàn)114.1 數(shù)據(jù)存儲114.2 系統(tǒng)功能的設計與實現(xiàn)124.2.1 登錄功能的詳細設計124.2.2 家居狀態(tài)的詳細設計144.2.3 修改密碼功能的詳細設計174.3 遠程電器控制模塊的模擬實現(xiàn)174.4 小結(jié)175 系統(tǒng)測試195.1 單元測試195.2 功能測試205.3 性能測試205.4 小結(jié)206 結(jié)論21附 錄22參考文獻25致 謝271 緒論1.1 課題背景隨著社會的發(fā)展和科學技術的進步,數(shù)字網(wǎng)絡生活時代已經(jīng)到來,以家庭智能化、物業(yè)管理現(xiàn)

11、代化和社區(qū)服務信息化為典型特征的智能社區(qū)也在悄然應運而生。住宅智能化是人類住宅的又一場新的革命。它能夠為人們提供更加輕松、有序、高效的現(xiàn)代生活方式,是未來居住模式的必然發(fā)展趨勢。隨之而然,智能家居系統(tǒng)也在逐漸成為一個新興的研究領域。智能家居提供的是一個具有高度安全性、生活舒適性和通信快捷性的信息化與自動居住空間。智能家居是指將家庭中各種與信息相關的通信設備、家用電器和家庭保安裝置,通過家庭總線技術連接到一個家庭智能化系統(tǒng)(即家庭控制器)上,以實現(xiàn)監(jiān)視、控制和家庭事務型管理,并保持這些設施與住宅環(huán)境的和諧與協(xié)調(diào)。要實現(xiàn)家居的智能化,必須在家電里面加入接收和控制端,這樣就能對家里的電器、燈光、電源

12、、家庭環(huán)境進行方便地控制,使人們盡享高科技帶來的簡便而時尚的現(xiàn)代生活。將社會的信息化建設與小區(qū)的信息化、智能化建設有機地融合起來,充分利用已有的寬帶網(wǎng)絡,做到資源共享,達到節(jié)省投資、降低使用費用、方便物業(yè)管理,為用戶提供盡可能多的高品質(zhì)服務,已成為房產(chǎn)商、電信運營商、物業(yè)管理公司、城市公用事業(yè)公司和用戶等幾方共同關注的問題。自動化的智能家居不再是一幢被動的建筑,相反,成了幫助主人盡量利用時間的工具,使家庭更為舒適、安全、高效和節(jié)能。家居智能化技術起源于美國,網(wǎng)絡系統(tǒng)中的各個設備均可實現(xiàn)資源的共享。因其布線簡單、功能靈活,擴展容易而被人們廣泛接受和應用。目前,已經(jīng)有越來越多的機構(gòu)和個人開始了對智

13、能家居的研究。1.2 研究意義智能家庭控制系統(tǒng)是以以太網(wǎng)、現(xiàn)場總線、公共電話網(wǎng)、無線網(wǎng)的傳輸網(wǎng)絡為平臺,控制技術為技術平臺,現(xiàn)場總線為應用操作平臺,構(gòu)成一個完整的集家庭通信、家庭設備自動控制、家庭安全防范等功能的控制系統(tǒng)。 智能家居控制系統(tǒng)的總體目標是通過采用計算機技術、網(wǎng)絡技術、控制技術和集成技術建立一個由家庭到小區(qū)乃至整個城市的綜合信息服務和系統(tǒng),以此來提高住宅高新技術的含量和居民居住環(huán)境水平。 使人們享受到高科技帶來的方便快捷的生活方式。人們的生活方式在逐漸加快,因此生活中就需要更為便捷的生活方式。智能家居就是在這種情況下應運而生的。人們需要通過一個按鈕就可以實現(xiàn)對家

14、具的控制,減少了原來需要尋找遙控器或者是開關等方式帶來的不便。從而使人們的家更舒服,更方便。系統(tǒng)通常由系統(tǒng)服務器、家庭控制器(各種模塊)、路由器、通訊器、控制器、無線收發(fā)器、各種傳感器等主要部分組成。1.3 研究現(xiàn)狀由于中國的居住模式和文化與發(fā)達國家有很大的區(qū)別,所以智能家居在中國的發(fā)展也體現(xiàn)出其獨具的特色。中國人口眾多,城市住宅建設也多選擇密集型的住宅小區(qū)方式,因此很多房地產(chǎn)商會站在整個小區(qū)智能化的角度來看待家居的智能化,也就出現(xiàn)了目前一統(tǒng)天下、無所不包的“智能小區(qū)”的模式。智能小區(qū)同樣是中國特有國情的產(chǎn)物。智能小區(qū)與公共建筑中的智能建筑的主要區(qū)別是,智能小區(qū)強調(diào)住宅單元個體,側(cè)重物業(yè)管理功

15、能。真正意義的智能小區(qū)中的單元-單個住宅,應該安裝智能家居(Smart home),這樣智能小區(qū)的功能才得以有效運用,對大型社區(qū)來說,智能小區(qū)是智能家居運行的基礎平臺。其實無論是安全防護還是智能家居,都應該屬于智能住宅的大的范疇,其中不單單包括智能安防以及智能家居,還包括諸多住宅智能化的功能,隨著物聯(lián)網(wǎng)技術的發(fā)展興起,其廣闊的運用以及領先的技術優(yōu)勢必定能改改變現(xiàn)在的市場現(xiàn)狀,未來的智能家居將是物聯(lián)網(wǎng)相關運用的一個典范,將家居系統(tǒng)完美的結(jié)合以及協(xié)同各種傳感元件進行有效感知,其中不單單指內(nèi)部感知,更包括了系統(tǒng)對外部的感知以及數(shù)據(jù)交換。1.4研究內(nèi)容系統(tǒng)采用典型的C/S(Client/Server客

16、戶機和服務器)架構(gòu)。C/S的優(yōu)點是能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務器。對應的優(yōu)點就是客戶端響應速度快。由客戶端調(diào)用send()方法發(fā)送控制信息,控制服務器端的家居狀態(tài),服務器受到控制信號之后,修改現(xiàn)在的狀態(tài),并把修改之后的狀態(tài)通過recived()方法返還給客戶端??蛻舳苏{(diào)用相應的recived()方法把結(jié)果顯示出來。1.4.1 系統(tǒng)介紹使用J2me技術實現(xiàn)手機界面,以及家用電器的監(jiān)視和控制、照明設備的監(jiān)視、調(diào)節(jié)和控制、門的控制、窗簾的控制等。并實現(xiàn)客戶端與服務器端之間的通信。通過手機上的各個按鈕控制發(fā)送信號,進而實現(xiàn)家居的開關控制。系統(tǒng)選用J2me技術開

17、發(fā)基于手機平臺的信息控制端軟件。以發(fā)送數(shù)據(jù)信號的方式發(fā)送到控制端,實現(xiàn)控制家居設備的功能。J2me是sun公司針對嵌入式、消費類電子產(chǎn)品推出的開發(fā)平臺,是一系列規(guī)范的集合,由JCP組織制定相關的JSR并發(fā)布,各個廠商會按照規(guī)范在自己的產(chǎn)品上進行實現(xiàn),但是必須要通過TCK測試,確保兼容性。通過使用J2me中的無線網(wǎng)絡開發(fā)技術實現(xiàn)手機客戶端與系統(tǒng)終端的通訊。使用通用連接框架技術建立HTTP連接。使用servlet技術實現(xiàn)計算機之間的即時通訊。1.4.2 模塊劃分根據(jù)系統(tǒng)本身的需要,我們把系統(tǒng)分為以下模塊:主頁面顯示智能家居控制系統(tǒng)的字樣,以及輸入密碼的輸入框。密碼輸入成功則可以直接進入智能家居控制

18、系統(tǒng)的主界面。如果密碼輸入錯誤,則需要重新輸入。對密碼的設定采用最大不能超過八個字符的簡單定義來實現(xiàn)對系統(tǒng)安全的保護工作。密碼輸入成功則可以登陸控制家具的頁面。根據(jù)房間的布局,把整個家庭分為三個模塊。分別為客廳、廚房和臥室,對房間中的家居進行合理的分配,從而達到更高效的目的。同時為了方便修改密碼。把修改密碼的功能也和這三個控制頁面一起,放入到了同一個界面中。下面介紹各個房間中能夠控制的家用電器。客廳中能夠控制的家用電器包括:防盜門、窗簾、吊燈、空調(diào)和電視。防盜門、窗簾和電視的控制分為兩個分別是“開啟”和“關閉”。吊燈的控制除了在“開啟”和“關閉”的基礎上增加了一個亮度調(diào)節(jié)的控制,用滑動條的形式

19、來實現(xiàn)對溫度的調(diào)解。根據(jù)空調(diào)的特性,給空調(diào)又增加了溫度和濕度的控制。分別用兩個滑動條來實現(xiàn)對家居的控制。廚房中能夠控制的家用電器包括:燈、窗簾。廚房中的燈和窗簾的控制分為“開啟”和“關閉”兩個設置。臥室中能夠控制的家用電器包括:床頭燈、窗簾和吊燈。臥室中的床頭燈和臺燈一樣在開啟和關閉的基礎上增加了對亮度調(diào)節(jié)的控制。窗簾則只有“開啟”和“關閉”的功能為了方便人們的操作,增加了修改密碼的功能。在臥室的下面就是改密的字樣。點擊確定按鈕,則可以修改密碼,鍵入新密碼,返回密碼修改成功的字樣。無論何時何地,只要您想要控制家中家居的狀態(tài),拿起手機,進入到智能家居控制系統(tǒng),選擇要更改的房間,以及要控制的電器,

20、選擇之后點擊發(fā)送按鈕,就可以實現(xiàn)對家用電器狀態(tài)的更改??照{(diào)和其它的模式則不同,不僅具有開和關的狀態(tài),還增加了溫度的調(diào)節(jié)和控制。電燈的控制方式和空調(diào)的類似,在開和關控制的基礎上增加了調(diào)解亮度的功能。使人們能夠根據(jù)自己的喜好來調(diào)節(jié)亮度。豐富了人們選擇的范圍,使選擇方式不再單一。1.5 小結(jié)本章首先介紹了該課題的背景、研究意義,我們了解到此系統(tǒng)廣闊的發(fā)展前景,以及適用性。在不改變?nèi)藗兙幼…h(huán)境的前提下,實現(xiàn)對家居的監(jiān)制和控制。接著介紹了有關該系統(tǒng)的國內(nèi)外研究現(xiàn)狀,以便于在前人研究基礎上能有所創(chuàng)新。充分結(jié)合前人的研究,使系統(tǒng)更為完善,更滿足用戶的需求。最后介紹了研究內(nèi)容,對自己所研究的內(nèi)容進行了更加徹底

21、的分析。方便人們了解到此系統(tǒng)實現(xiàn)的所有功能。2 系統(tǒng)需求分析2.1 系統(tǒng)功能需求項目主要實現(xiàn)用戶對家用電器的控制,其中包括家居的開和關,以及其他的相關操作。客戶端發(fā)送控制信息的請求,通過網(wǎng)絡傳輸方式發(fā)送到服務器端,服務器端相應客戶端的操作,然后再把結(jié)果返回給客戶器端。其中家用電器的控制在開和關相關控制的基礎上增加了智能調(diào)節(jié)控制。空調(diào)實現(xiàn)了用下拉框的形式開實現(xiàn)對濕度和溫度的控制。進而為人們實現(xiàn)對家具的控制提供了方便。其中,系統(tǒng)交互圖如下:客戶端MIDlet發(fā)送消息和數(shù)據(jù)服務器Servlet處理登錄請求處理登錄請求處理登錄請求Login_UserUpdate_AccountList_Account

22、 圖(1)客戶端服務器端系統(tǒng)交互圖該系統(tǒng)共分為五個模塊,分別為登陸、客廳、廚房、臥室和改密。模塊一:為了保證客戶使用信息的安全性,為此系統(tǒng)添加了登陸模塊,運行智能家居控制系統(tǒng)的客戶端,就要鍵入密碼,密碼輸入正確就自動跳轉(zhuǎn)到家居的控制頁面,反之重新鍵入密碼。模塊二:客廳中的家用電器主要包括:防盜門、窗簾、吊燈、空調(diào)和電視。實現(xiàn)對防盜門、窗簾的開關控制、對吊燈的開關操作以及亮度調(diào)節(jié)的控制、對空調(diào)的開關操作以及對室內(nèi)溫度和濕度的控制以及調(diào)節(jié)控制電視的開和關,等等一系列的操作。模塊三:廚房中的家用電器主要包括:吊燈和窗簾。還是用下拉菜單實現(xiàn)對各個家電的開關控制。模塊四:臥室中的家用電器主要包括:吊燈、

23、窗簾和臺燈。這個模塊中的家具設計的雖然不是很多,但是也同樣實現(xiàn)了家具的開關和家用電器的監(jiān)制和控制。模塊五:用戶可以修改密碼,鍵入你想要設置的新的密碼,點擊設置按鈕就可以設置你想要的新的密碼了。2.2 系統(tǒng)性能需求智能家居控制系統(tǒng)是一個很有發(fā)展前景的系統(tǒng)。因此為了使本系統(tǒng)能夠長期使用,必須使系統(tǒng)滿足安全、穩(wěn)定、可靠、高效的運行模式,生活水平的提高,伴隨著生活質(zhì)量的提高。同時人們生活的節(jié)奏也逐漸加快,怎樣高速的完成任務就是我們要考慮的主要問題。因此系統(tǒng)應滿足如下性能需求:(1) 較強的擴展能力和通用性,此系統(tǒng)即能夠滿足一個家庭之間的遠程控制,同時對一個小區(qū)來說也同樣適用。由于這次我們主要研究的是控

24、制家居這方面的內(nèi)容,以后,我們還可以擴展此系統(tǒng),加上遠程通信、智能報警等等各項功能。(2) 由于本系統(tǒng)的界面簡單明了,因此人們很容易就學會操作。擴大了系統(tǒng)的用戶群。在不改變?nèi)藗兩钭≌那闆r下,有效的實現(xiàn)對家居的控制。使人們可以節(jié)約時間,享受生活。(3) 系統(tǒng)的準確性和及時性系統(tǒng)處理的準確性和及時性是我們要考慮的主要問題。在控制家電的過程中,確保對家居狀態(tài)更改的準確而且及時。優(yōu)化系統(tǒng),使系統(tǒng)的反應能力和控制家居的能力滿足用戶多功能的需求。2.3 系統(tǒng)可行性研究驗證一個系統(tǒng)是否可行,需要從多個方面著手分析。其中主要的內(nèi)容包括:技術可行性、經(jīng)濟可行性和操作可行性三個方面。2.3.1 技術可行性系統(tǒng)

25、采用J2me技術。使用J2me中特有的手機模擬器進行開發(fā),實現(xiàn)對各種家居的控制。J2me技術規(guī)范定義了Java技術在資源有限制的設備中的表現(xiàn)形式。J2me主要適用于小型嵌入式設備,這些設備與PC或是服務器設備相比沒有統(tǒng)一的硬件標準、外觀與操作方式,其功用也是千差萬別。但是J2me在使用于這些設備的同時也保留了Java的傳統(tǒng)特性,即任何時間和任何地點的代碼具有可移植性、部署靈活性、安全的網(wǎng)絡傳輸性,以及代碼穩(wěn)定性。Java平臺的主要優(yōu)點是它允許我們編寫可移植的應用程序。Java平臺的可移植性來自其執(zhí)行模型。具體地說,它是由于在運行時使用JVM來將Java字節(jié)碼處理成機器碼,因而在硬件之上提供了兼

26、容性層。Java平臺的執(zhí)行模型還引入了一些在設備本機應用程序中缺乏的重要安全性優(yōu)點。(1) 在給定的時間內(nèi)能夠?qū)崿F(xiàn)任務書中的功能。能夠?qū)崿F(xiàn)頁面的跳轉(zhuǎn)以及對服務器端家電的控制。(2) 從軟件的質(zhì)量方面來看,軟件運行速度較高,功能具備有實用價值。后期軟件維護代價相應比較小。(3) 軟件的生產(chǎn)率較高。能在短時間內(nèi)完成有效地工作。2.3.2 經(jīng)濟可行性系統(tǒng)雖然需要依靠硬件來實現(xiàn),但是開發(fā)成本相對較低。后期維護簡單方便。如果能夠?qū)崿F(xiàn),則能夠取得可觀的效益。收益遠遠大于支出,因此此項目在經(jīng)濟方面是可行的。2.3.3 操作可行性對于用戶來說,能夠使用該軟件系統(tǒng),能夠方便人們的生活,使人們生活的環(huán)境更加的美觀

27、。墻面上不會再到處都是開關,同時也不用為了尋找遙控器而發(fā)愁。使用此系統(tǒng),能夠使人們的生活方式發(fā)生天翻地覆的變化。讓人們享受科技帶來的方便生活。在家中你可以拿起手機,選擇要控制的家電,然后更改其開關狀態(tài),在戶外也同樣可以控制,實現(xiàn)家中和戶外同等控制的功能,同時優(yōu)化了無線網(wǎng)絡傳輸過程中網(wǎng)絡延遲帶來的時間上的延遲,使人們在最短的時間內(nèi)接收到服務器端返回的家居控制的信息。2.4 系統(tǒng)運行環(huán)境1. Windows XP。2. JDK,JDK是Java開發(fā)工具包(Java Development Kit)的英文縮寫。它是一種用于構(gòu)建在Java平臺上發(fā)布的應用程序、Applet和組件的開發(fā)環(huán)境。JDK是一切

28、Java應用程序的基礎,所有的Java應用程序是構(gòu)建在這個之上的。它是一組API,也可以說是一些Java Class。3. Sun WTK,Sun公司為了J2ME而提供了WTK開發(fā)工具,是最基本的J2ME程序開發(fā)工具,它是免費提供的,體積小,執(zhí)行速度較快,完全遵守J2ME的各種規(guī)范,因此是J2ME程序員最基礎的必備的工具。4. Eclipse,Eclipse是一個非常著名的集成開發(fā)工具,其自身功能強大而易用。另一個非常重要的特點是其提供了非常靈活的擴展能力。它提供了豐富的接口可以擴展其本身。同樣Eclipse中也包含J2ME支持的插件,而且不止一種。5. EclipseMe,EclipseMe

29、自動為Midlet創(chuàng)建了三個方法,作用如下:startApp方法是當程序被啟動時執(zhí)行的方法;pauseApp是當程序被暫停或被打斷(如有撥入的電話)時調(diào)用的方法;destroyApp是當Midlet被銷毀時調(diào)用的方法。2.5 小結(jié)本章對系統(tǒng)進行了需求分析,首先通過對系統(tǒng)的功能需求的分析,了解了該模塊所應完成的所有功能。接著進行了系統(tǒng)性能需求的分析,以便于能夠保證系統(tǒng)長期、安全、穩(wěn)定、可靠、高效的運行。接接下來要進行系統(tǒng)可行性研究,主要從技術、經(jīng)濟、操作這三個方面加以分析。緊接著我們又分析了該系統(tǒng)所需要的運行環(huán)境。為系統(tǒng)的開發(fā)做好了準備。3 系統(tǒng)總體設計總體設計過程首先尋找實現(xiàn)目標系統(tǒng)的各種不同

30、的方案,需求分析階段得到的數(shù)據(jù)流圖是設想各種可能方案的基礎。總體設計過程通常由兩個主要階段組成:系統(tǒng)設計階段,確定系統(tǒng)的具體實現(xiàn)方案;結(jié)構(gòu)設計階段,確定軟件結(jié)構(gòu)。3.1 系統(tǒng)結(jié)構(gòu)設計系統(tǒng)采用C/S架構(gòu)進行設計。在通信過程中,移動客戶端與家庭系統(tǒng)模塊是通過TCP協(xié)議建立的可靠連接。首先移動客戶端和家庭系統(tǒng)模塊之間建立Socket連接,家庭系統(tǒng)模塊在端口上監(jiān)聽等待客戶端連接。客戶端連接之后,需要輸入密碼,密碼正確后服務器端會開啟一個線程為此客戶通信,并將這個Socket連接保存到向量中。在客戶端和家庭系統(tǒng)模塊之間建立輸入輸出流??蛻舳伺c服務器端通過Socket可以建立連接??蛻粝胍淖兗抑械募揖訝?/p>

31、態(tài),只需要進入家居控制系統(tǒng)中,選擇想要更改家居所在的房間,然后選擇家居,進而改變家具的狀態(tài),通過調(diào)用send()方法向服務器端發(fā)送請求,由服務器端響應,然后服務器端將更改家居的狀態(tài),之后將結(jié)果返回給客戶端??蛻舳送ㄟ^調(diào)用recived()方法來獲得家居更改之后的狀態(tài)??蛻舳酥饕瓿傻墓δ馨ǎ河脩舻顷憽⒎块g選擇、家居狀態(tài)選擇、修改密碼等??蛻舳松暾埮c服務器端建立連接,當客戶端與服務器端建立連接通道后就可以向服務器端發(fā)送家居狀態(tài)信息,進而實現(xiàn)對家居的遠程控制。 3.2 系統(tǒng)工作原理系統(tǒng)由多個類構(gòu)成。需要客戶端通過網(wǎng)絡發(fā)送對家居的控制。服務器端接收到客戶端發(fā)送的信息,然后再返回給客戶端。本系統(tǒng)是基

32、于HTTP網(wǎng)絡的用于智能家居環(huán)境中的一種遠程自動控制系統(tǒng)。其工作原理為:用戶通過自身的手機發(fā)出命令請求,在家值守的家庭系統(tǒng)模塊接收信息并對信息進行處理,把處理結(jié)果通過串行總線傳輸?shù)絾纹瑱C上,單片機根據(jù)信息調(diào)制出相應的紅外頻率控制相應的設備,完成用戶給出的命令。并把最終的控制結(jié)果返回給客戶端。系統(tǒng)工作原理圖如下所示:服務器類類網(wǎng)絡客戶端圖(2)系統(tǒng)工作原理圖各個程序之間通過方法和類的調(diào)用來建立關聯(lián)。選擇登陸智能家居控制系統(tǒng),該界面實現(xiàn)內(nèi)容主要包含在MainMID這個類中,其中需要鍵入密碼,同時如果密碼輸入錯誤,也可以對密碼再進行修改。直至密碼輸入正確。則會跳入到下一個頁面。下一個頁面則是家具的控

33、制頁面。選擇所要控制的家具類型,進入相應的房間之后,我們就可以選擇要控制的家電類型來實現(xiàn)對家居的控制。然后通過網(wǎng)絡連接將要發(fā)送的數(shù)據(jù)發(fā)送到服務器端。等待服務器端做出響應。3.3 系統(tǒng)關鍵技術3.4 小結(jié)本章通過對系統(tǒng)的結(jié)構(gòu)、工作原理等各方面的設計,對系統(tǒng)的流程以及系統(tǒng)所要完成的功能都有了較為深入的了解。為人們掌握智能家居的使用方法了解智能家居奠定了堅實的基礎。4 系統(tǒng)詳細設計與實現(xiàn)4.1 數(shù)據(jù)存儲在MIDP規(guī)范中,提供了記錄管理系統(tǒng)(Record Management System, RMS),這個記錄管理系統(tǒng)就是一個小型簡單的數(shù)據(jù)庫管理系統(tǒng)(Database Management Syste

34、m),除了能用于管理系統(tǒng)儲存的資料之外,也可以用于存儲對象的狀態(tài)信息。RMS是J2me的一個重要的子系統(tǒng),目的是實現(xiàn)應用程序本地數(shù)據(jù)的持久性存儲。RMS是管理數(shù)據(jù)的系統(tǒng),Record(記錄)是系統(tǒng)中最重要的實體。在移動設備存儲空間存儲的并不是字段,而是字節(jié)數(shù)組。RMS的職責是存儲和唯一標識記錄,而表示數(shù)據(jù)的任務是由應用程序來完成的。這樣做的目的是簡化MIDP的實現(xiàn),使得J2ME的子系統(tǒng)盡量的小巧、靈活。Record Store(記錄倉儲)是一系列的有序集合,記錄是不能單獨存在的,必須屬于記錄倉儲。記錄倉儲保證記錄的讀寫操作都是原子的,數(shù)據(jù)不會被破壞。在API中記錄倉儲是由javax.micro

35、edition.rms.RecordStore實現(xiàn)的。每條記錄代表了一條數(shù)據(jù)信息。一條記錄由一個整型的RecordID與一個代表數(shù)據(jù)的byte數(shù)組兩個子元素組成。RecordID是每條記錄的唯一標識符,利用這個標識符可以從記錄倉儲中找到對應的一條記錄。其中RMS所使用的空間圖如圖所示:圖(3)RMS空間圖4.2 系統(tǒng)功能的設計與實現(xiàn)該智能家居控制系統(tǒng)實現(xiàn)了以下幾個功能:登陸、客廳模塊、廚房模塊、臥室模塊和改密等一系列的功能。下面將對以下幾種功能進行詳細的論述??蛻舳送瓿傻闹饕δ馨▽揖拥目刂?。通過客戶端發(fā)送控制信息通過網(wǎng)絡傳送到服務器端,再由服務器端返回給客戶端。進而實現(xiàn)對家居的控制。其中

36、,系統(tǒng)功能結(jié)構(gòu)圖如下所示:信息發(fā)送端用戶登錄信息發(fā)送信息接收家具控制 用戶登陸修改密碼發(fā)送控制信號接收返回信息 房間選擇家居選擇家居狀態(tài)選擇圖(4)系統(tǒng)功能結(jié)構(gòu)圖4.2.1 登錄功能的詳細設計登錄功能是為了保證用戶信息的安全,因此在智能家居控制系統(tǒng)的首頁需要鍵入密碼,鍵入密碼之后,則需要點擊菜單按鈕,然后點擊登入按鈕,如果密碼輸入正確之后才能進入智能家居控制系統(tǒng)。如果密碼輸入錯誤,則會返回一個頁面,提示密碼輸入錯誤,請重新輸入。系統(tǒng)運行界面如下所示:圖(5)系統(tǒng)運行界面PassWordCanvas類主要包含TextField子類,首先要對TextField在后臺進行實例化,TextField是

37、用于帶約束的文本類型輸入。textfield = new TextField("", "", 8, TextField.ANY | TextField.PASSWORD); / 后臺TextField實例化。其中還包括對登錄界面中字體顏色、背景等方面的設計。鍵入密碼“1234”之后點擊菜單中的登陸按鈕我們就可以進入到智能家居控制系統(tǒng)的頁面。如果輸入密碼錯誤,則跳轉(zhuǎn)到密碼輸入錯誤頁面,重新輸入密碼,直到密碼輸入正確,則可以進入到控制頁面。其中密碼輸入錯誤之后頁面提示界面如下:圖(6)密碼鍵入錯誤要實現(xiàn)對該頁面的設計,首先需要填充背景的顏色,畫出背景的邊框、

38、標題等。要通過確定錨點來實現(xiàn)對功能的定位。而鍵入的密碼則存儲在倉儲中。通過調(diào)用getNextRecordID()方法來驗證鍵入的密碼是否正確。如果密碼輸入錯誤,則會調(diào)用initAlert()方法將“密碼錯誤,請輸入正確的密碼”返回給用戶。如果密碼輸入錯誤,我們可以選擇回刪按鈕,調(diào)用deleteOneChar()方法來刪除字符。最終輸入正確的密碼后,調(diào)用IntoSystem()方法進入系統(tǒng)。4.2.2 家居狀態(tài)的詳細設計密碼鍵入成功之后,就會自動跳轉(zhuǎn)到家居的控制頁面。選擇客廳點擊開始按鈕,就會進入到家具的選擇頁面。其中包括:防盜門、窗簾、吊燈、空調(diào)和電視的控制。防盜門、窗簾和電視的狀態(tài)包括開啟和

39、關閉兩種狀態(tài)。另外吊燈在開啟和關閉的基礎上另外增加了對亮度的控制??照{(diào)則是在開啟和關閉的基礎上增加了對濕度和溫度的調(diào)節(jié)和控制。輸入密碼正確之后,則可以進入到系統(tǒng)控制界面。其中包括:客廳、廚房、臥室和改密功能。其中,系統(tǒng)運行界面圖如下所示:圖(7)家居狀態(tài)選擇界面客廳、廚房、臥室的布局都是類似的,現(xiàn)在我們選擇以客廳為例:其運行界面圖如下所示:圖(8)客廳運行頁面對燈光的控制包括:無線射頻燈光控制系統(tǒng)由智能面板開關和調(diào)光器組成,調(diào)光器用以發(fā)送和接收命令信號,命令通過無線電傳播,而不是通過家庭的電源線路傳輸。每個面板開關都備有一個不同的遙控識別代碼。這些代碼利用19位識別技術,使接收器能準確辨別每個

40、指令。即使鄰居同時使用,也絕對不會因其遙控器干擾而發(fā)生傳輸錯誤。調(diào)光開關同樣內(nèi)置RF無線射頻發(fā)射器,能獨立于遙控器或移動開關之外,控制落地燈或桌燈的開關或隨意調(diào)節(jié)燈光亮度。減少干擾,傳送或接收指令更加準確無誤。燈光控制圖如下所示:圖(9)吊燈狀態(tài)選擇對信息家電的控制包括:信息家電控制是一個整合了紅外控制和無線控制的多功能遙控系統(tǒng)。它可以控制多達五種紅外設備(如:電視機、空調(diào)、DVD、功放、窗簾等)和開關、插座等無線設備。信息家電控制系統(tǒng)主要由信息家電控制器和各種智能遙控開關組成。信息家電控制器可以把普通紅外電器的遙控器的編碼通過學習的方式轉(zhuǎn)存下來從而替代原有的家電遙控器。同時它本身還是無線遙控

41、器,可以發(fā)射433.92MHz頻率的控制信號,所以它可以控制這個頻段的智能開關、智能插座以及無線紅外轉(zhuǎn)發(fā)器等。對空調(diào)的控制包括:空調(diào)的紅外編碼和其他家電的紅外編碼有很大區(qū)別,空調(diào)遙控器上每一個按鍵所對應的紅外編碼不是固定的。比如按下溫度增加或減少的按鍵,它并不是簡單地發(fā)送一個固定的溫度增加或減少的紅外編碼,而是向空調(diào)發(fā)送一個當前工作狀態(tài)的編碼(這個編碼包含空調(diào)當前是多少度)。因此實現(xiàn)對空調(diào)的控制結(jié)構(gòu)就比較復雜。人們要實現(xiàn)對室內(nèi)溫度和濕度的控制就需要先對發(fā)送出的數(shù)據(jù)進行編碼,將編碼之后的結(jié)果發(fā)送到服務器端,再由服務器端來響應對空調(diào)的控制。對控制的控制圖如下所示:圖(10)運行界面如圖所示廚房中的

42、家具包括窗簾和吊燈。調(diào)用ITEM_SELECTED()方法選擇要進入的界面。然后使用stringArray方法來定義家具的類型。調(diào)用廚房中藥使用的圖片chufang.png,其中對吊燈的亮度調(diào)節(jié),則選擇setRollingString()方法來進行顯示。開關的樣式等也是在畫布中畫出的。設置子菜單,調(diào)用setLastPage()方法將上層頁面設置為當前頁面。設置文本和背景圖片,要設置背景圖片則需要對Canvas進行重繪。4.2.3 修改密碼功能的詳細設計密碼鍵入成功,進入智能家居頁面之后,就可以修改用戶的密碼。選擇通過上下按鍵的選擇,選中改密這個文本框,然后點擊開始按鈕,則可以修改系統(tǒng)的密碼,鍵

43、入新的密碼,然后就可以完成對密碼的修改。想要修改密碼成功,首先要打開倉儲RMS將想要修改的密碼存儲,打開倉儲的方法是通過調(diào)用openRecordStore()方法來將想要修改的密碼存儲進去。存儲成功則需要關閉倉儲,即調(diào)用deleteRecordStore()方法關閉RMS。當我們下次要進入系統(tǒng)的時候則需要輸入修改之后的密碼了。4.3 遠程電器控制模塊的模擬實現(xiàn)用無線通信方式進行家電的控制靈活性較強 、覆蓋范圍較廣,免去了綜合布線的費用和精力,缺點是家庭內(nèi)部要有家庭網(wǎng)關和無線路由路,接收端還要有響應的接收裝置,成本較高。因此,基于實用性和大眾化方面考慮,本文所研究的家電控制器的控制采用I/O控制

44、。家電的本地集中控制硬件設計是利用嵌入式系統(tǒng)的I/O口對家用電器的用電進行控制。系統(tǒng)通過S3C2410的I/O口輸出高低電平來進行控制,同時用發(fā)光二極管指示家用電器工作狀況。發(fā)光二極管,表示家用電器通電,發(fā)光二極管滅,表示家用電器斷電。由于被控模塊家用電器大多使用220V交流電,屬于強電電路,所以使用繼電器控制家電。在芯片與繼電器中間加驅(qū)動電路。驅(qū)動電路可以利用光電耦合的通、斷去控制繼電器的開與關。也可以利用三極管的飽和與截止去控制繼電器的開與關,這里采用三極管方式。當I/O口引腳輸出低電平時,三極管飽和導通。4.4 小結(jié)本章通過對整個智能家居控制系統(tǒng)的客戶端進行了詳細的論述。其中介紹了每個功

45、能模塊所包含的內(nèi)容,以及實現(xiàn)的方法。通過詳細設計、編碼去實現(xiàn)預期的各項功能。除了應該保證軟件的可靠性之外,使將來編寫出的程序可讀性好、容易理解、容易測試、容易修改和維護,是詳細設計編碼階段最重要的目標。程序在設計的過程中,程序內(nèi)部的良好文檔資料,有規(guī)律的數(shù)據(jù)說明格式,簡單清晰地語句構(gòu)造和輸入輸出格式等,都對提高程序的可讀性有很大的作用,也在相當大的程度上改進了程序的可維護性。5 系統(tǒng)測試5.1 單元測試單元測試集中檢測軟件設計的最小單元模塊。通常,單元測試和編碼屬于軟件過程的同一個階段。在編寫出源程序代碼并通過了編譯程序的語法檢查之后,就可以用詳細設計描述作指南,對重要的執(zhí)行通路進行測試,以便

46、發(fā)現(xiàn)模塊內(nèi)部的錯誤??梢詰萌斯y試和計算機測試這兩種不同類型的測試方法,完成單元測試工作。這兩種測試方法各有所長,互相補充。通常,單元測試期間著重從下述5個方面對模塊進行測試。1模塊接口首先應該對通過模塊接口的數(shù)據(jù)流進行測試,如果測試數(shù)據(jù)不能正確地進出,所有其他測試都是不切實際的。在對模塊接口進行測試時主要檢查下述幾個方面:參數(shù)的數(shù)目、次序、屬性或單位系統(tǒng)與變元是否一致;是否修改了只作輸入用的變元;全局變量的定義和用法在各個模塊中是否一致。2局部數(shù)據(jù)結(jié)構(gòu)對于模塊來說,局部數(shù)據(jù)結(jié)構(gòu)是常見的錯誤來源。檢查局部數(shù)據(jù)說明、初始化、默認值等方面是否出現(xiàn)錯誤。3重要的執(zhí)行通路由于通常不可能進行窮盡測試,

47、因此在單元測試期間選擇最有代表性、最可能發(fā)現(xiàn)的錯誤的執(zhí)行通路進行測試是十分關鍵的。用于判斷不適當?shù)目刂屏髟斐傻腻e誤。4出錯處理通路設計中能預見出現(xiàn)錯誤的條件,并且設置適當?shù)奶幚礤e誤的通路,以便在真的出現(xiàn)錯誤時執(zhí)行相應的出錯處理通路或干凈地結(jié)束處理。在程序中應包含出錯處理通路。5邊界條件邊界測試時單元測試中最后的也可能是最重要的任務。軟件常常在它的邊界上失效。使用剛好小于、剛好等于和剛好大于最大值或最小值的數(shù)據(jù)結(jié)構(gòu)、控制量和數(shù)據(jù)值的測試方案,非??赡馨l(fā)現(xiàn)軟件中的錯誤。5.2 功能測試功能測試是在系統(tǒng)集成過程中和系統(tǒng)集成之后所進行的系統(tǒng)功能測試,不僅要考慮模塊之間的相互作用,而且要考慮系統(tǒng)的應用環(huán)

48、境。功能測試主要是檢測被測試的系統(tǒng)是否滿足各方面功能的使用要求。5.3 性能測試性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統(tǒng)的各項性能指標進行測試。負載測試和壓力測試都屬于性能測試,兩者可以結(jié)合進行。通過負載測試,確定在各種工作負載下系統(tǒng)的性能,目標是測試當負載逐漸增加時,系統(tǒng)各項性能指標的變化情況。壓力測試是通過確定一個系統(tǒng)的瓶頸或者不能接收的性能點,來獲得系統(tǒng)能提供的最大服務級別的測試。它主要包括并發(fā)性能測試、疲勞強度測試、大數(shù)據(jù)量測試和速度測試等,其中并發(fā)性能測試是重點。5.4 小結(jié)本章通過對智能家居控制系統(tǒng)進行單元測試、功能測試以及性能測試這一繁瑣的內(nèi)容,我

49、們了解到系統(tǒng)測試是軟件開發(fā)與維護過程中不可缺少的一部分。軟件測試需要耗費大量的人力,不僅需要采用計算機測試,同時還要進行人工測試。在測試過程中我們使用這兩種測試方法,最終使此系統(tǒng)滿足客戶的要求。6 結(jié)論經(jīng)過充分的調(diào)查和對大量資料的研究,分析了智能家居的現(xiàn)狀和發(fā)展趨勢,并考慮到我國的經(jīng)濟發(fā)展和人們生活水平的不均衡等特點,利用GPRS移動通信網(wǎng)絡,以及嵌入式技術結(jié)合藍牙無線通信技術,安全可靠,性能穩(wěn)定的智能家居控制系統(tǒng)。同時本系統(tǒng)除用于家庭設備遠程自動控制外,還可用于家庭通信、家庭娛樂,共同組建智能家居控制系統(tǒng)。開發(fā)充分利用了j2me技術中所提供的API,以及高效的編程。不僅適應了嵌入式系統(tǒng)的軟硬

50、件資源受限的特點,而且使得程序的運行速度有所提高。目前該系統(tǒng)在模擬系統(tǒng)中正常運行,實現(xiàn)了目前市場上智能家居系統(tǒng)中最重要的組成部分智能家居終端的大部分功能。在此基礎上,今后的研究工作將從以下方面進行深入:一方面是增加智能家居終端控制家電設備的種類,這需要對協(xié)議進行擴展;另一方面使用戶能夠通過更多途徑方案進行遠程控制,例如,手機短信控制也是一種方案;第三,考慮到嵌入式系統(tǒng)硬件資源受限,還需要就某些功能的實現(xiàn)代碼進行進一步優(yōu)化,例如,可通過考慮將多進程改為多線程來減少進程的創(chuàng)建和切換的開銷等。由于個人能力的局限性,做出的程序不是十分完善,但是本系統(tǒng)已經(jīng)滿足開題報告中所提出的內(nèi)容,在以后的過程中,可以

51、通過擴充自己的知識儲備,對課題進行進一步的完善。附 錄ControlCanvas類主要代碼如下所示:public ControlCanvas(FamilyList fl, Display display, int Type, int i) index = i;Fl = fl;this.Type = Type; / 頁面樣式this.display = display;Cmd_Back = new Command("返回", Command.BACK, 1);Cmd_Send = new Command("發(fā)送", Command.OK, 1);addCo

52、mmand(Cmd_Back);addCommand(Cmd_Send);setCommandListener(this); / 設置功能鍵偵聽器setTitle(Fl.getItemString(index); / 設置標題try selectImage = Image.createImage("/select.png"); catch (IOException e) e.printStackTrace();protected void paint(Graphics g) / 畫背景圖片if (Fl.getBackImage() != null) g.drawImage(

53、Fl.getBackImage(), 0, 0, Graphics.TOP | Graphics.LEFT);if (Type = ControlCanvasType_STYLE_ON_OFF) / 開關樣式draw_On_Off_String(g, getWidth() / 5, getHeight() / 3); else if (Type = ControlCanvasType_STYLE_ROLL) / 滾動樣式draw_roll_Style(g); else if (Type = ControlCanvasType_STYLE_DOUBLE_ROLL) / 雙滾動條樣式draw_do

54、ubleroll_Style(g);FamilyList類中的主要代碼如下所示:public FamilyList(Display display, Canvas cv, String title, String items,Image backImage) Title = title;setTitle(Title); / 設置標題setLastPage(cv);this.display = display;/ 音效MidPlayer mp = new MidPlayer();mp.sound();ITEMS = items;BackImage = backImage;Cmd_Back = n

55、ew Command("返回", Command.BACK, 1);Cmd_OK = new Command("設置", Command.OK, 1);addCommand(Cmd_Back);addCommand(Cmd_OK);setCommandListener(this); / 設置功能鍵偵聽器private void drawItems(Graphics g) / 畫背景圖片int pointX = 40;/ 橫坐標固定點int BaseY = 40; / 縱坐標固定基點if (BackImage != null) g.drawImage(BackImage, 0, 0, Graphics.TOP | Graphics.LEFT);for (int i = 0; i < ITEMS.length; i+) Font fnt = Font.getDefaultFont();if (

溫馨提示

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

評論

0/150

提交評論