版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 內(nèi) 容 摘 要隨著科學(xué)技術(shù)的飛速發(fā)展,我們的家居生活越來越便捷化、越來越智能化。而作為我們?nèi)粘I蠲懿豢煞值恼彰飨到y(tǒng)在我們的生活中扮演著越來越重要的角色。所以對于照明控制系統(tǒng)的研究對提高人們的生活質(zhì)量、節(jié)約能源、倡導(dǎo)綠色照明等具有十分重要的意義。本論文使用了MATLAB GUI設(shè)計了可視化的智能照明控制系統(tǒng)的界面。采用了典型的客戶/服務(wù)器的模型實現(xiàn)遠程的控制。論文主要實現(xiàn)了智能家居照明系統(tǒng)的一鍵全開全關(guān)功能、照明開關(guān)定時功能、場景區(qū)域的控制、燈光調(diào)節(jié)功能、多點操作等功能。本論文有兩個創(chuàng)新點: (1)模擬了現(xiàn)實中的臥室和客廳的真實情況對現(xiàn)實中的智能家居照明系統(tǒng)的研究具有一定的借鑒意義。 (2)
2、本論文預(yù)留了遠程監(jiān)控系統(tǒng)、可視對講系統(tǒng)、門禁控制系統(tǒng)、安防報警系統(tǒng)、家電控制系統(tǒng)、窗簾控制系統(tǒng)和背景音樂系統(tǒng)的研究,為以后智能家居的發(fā)展預(yù)留了空間。關(guān)鍵詞MATLAB;智能照明;可視化;遠程通信Design of intelligent home lighting control system based on Matlab technologyAbstractWith the rapid development of science and technology, our home life more convenient, more and more intelligent. As our
3、 daily life are inseparable lighting systems play an increasingly important role in our lives . So the lighting control system for the study to improve the quality of life, energy saving , green lighting and other advocates of great importance.This paper uses the MATLAB GUI design a visual interface
4、 to intelligent lighting control system . With a typical client / server model remote control . Paper mainly achieved full control of a key feature of smart home full off lighting systems , lighting switch timing, scene area , lighting adjustment function , multi-point operation and other functions.
5、This paper has two innovations: ( 1 ) to simulate the real situation in reality bedroom and the living room has a certain significance for the study of the reality of the smart home lighting system . ( 2 ) This paper studies aside remote monitoring systems, video intercom systems, access control sys
6、tems, security alarm systems, home appliances control system, curtain control systems and background music systems for the development of future space reserved for the smart home . keywordMATLAB,Intelligent lighting,Visualization,Remote communication目 錄TOC o 1-3 h u HYPERLINK l _Toc19479 第一章 緒論 基于Ma
7、tlab的智能家居照明控制系統(tǒng)的設(shè)計第一章 緒論1.1課題的研究背景和意義近年來,隨著國民經(jīng)濟和科學(xué)技術(shù)水平的提高,特別是計算機技術(shù)、網(wǎng)絡(luò)技術(shù)、通信技術(shù)、控制技術(shù)的迅速發(fā)展,促使了社會信息化的加速,使人們的工作生活和通訊的關(guān)系日益緊密。信息化的社會在改變?nèi)藗児ぷ髁?xí)慣與生活方式的同時,對傳統(tǒng)住宅的自動化,信息化,環(huán)境舒適化、安全化提出了挑戰(zhàn)。信息化影響了人們生活的各個方面,改變了人們的生活習(xí)慣,提高了人們的生活質(zhì)量,家居智能化也正是在這種形勢下應(yīng)運而生。智能家居的概念起源于微軟的智能家居系統(tǒng),根據(jù)住房為平臺,使用綜合布線技術(shù)、網(wǎng)絡(luò)通信技術(shù)、智能家居 - 系統(tǒng)設(shè)計、安全技術(shù)、自動控制技術(shù)、音頻和視
8、頻技術(shù)將圍繞設(shè)施一體化的家居生活,構(gòu)建高效的住宅設(shè)施與家庭事務(wù)管理制度議程,提高家庭安全、方便、舒適、美觀,實現(xiàn)環(huán)境環(huán)保的生活方式。照明燈光是生活中不可缺少的部分。那么智能照明控制系統(tǒng)也就是智能家居系統(tǒng)中不可缺少的一部分。而且它還是智能家居的一大亮點。它既滿足了我們發(fā)展科技的向往又滿足了我們節(jié)能優(yōu)先、發(fā)展低碳的要求。以下是智能照明系統(tǒng)的特點:(1)實現(xiàn)照明的人性化。因為不同的區(qū)域和不同的人群對照明質(zhì)量的要求不同, 所以智能照明系統(tǒng)要求我們可以調(diào)整控制照度,以完成場景控制、定時控制、多點控制等種種計劃控制方案計劃。(2)延長光源壽命。智能照明系統(tǒng)具有軟驅(qū)動和軟關(guān)斷技術(shù),防止了打開燈具時電流對燈絲
9、的過度的沖擊,所以使得燈具的壽命得到延長。 (3)節(jié)約能源。使用智能傳感器感受到室外外亮度來自動調(diào)理燈光,以保持室內(nèi)適合的照度,既能使室內(nèi)有最佳照明情況,又能達到節(jié)能的效益。按照各區(qū)域的勞動情況進行照度設(shè)定,并按時進行自動開、關(guān)照明,使照明體系能最大限度地節(jié)約能源。 (4)提高管理水平。將傳統(tǒng)的手動的開關(guān)控制照明燈具的通斷,轉(zhuǎn)變成智能化的控制,使高素質(zhì)的思維管理意識用于智能照明系統(tǒng),以保證照明的質(zhì)量,提高照明的效率。 (5)使用安全,可與其他報警系統(tǒng)聯(lián)動。比如與火警系統(tǒng)的聯(lián)動,當(dāng)屋子里出現(xiàn)火災(zāi)的時候房間會自動報警。1.2智能照明系統(tǒng)國內(nèi)外研究現(xiàn)狀從上世紀六十年代開發(fā)了普通燈具、熒光燈具、高強度
10、放電燈具所使用的電子調(diào)光器,到90年代以來,國際以計算機技術(shù)為基礎(chǔ)研制出燈光自動調(diào)節(jié)系統(tǒng)、定時開關(guān)系統(tǒng)和自動補償系統(tǒng),也稱“智能照明”的新型智能照明控制體系,并已有定型產(chǎn)品得以很好的推廣和使用,使建筑照明由傳統(tǒng)按鍵控制走向計算機控制或無人控制的新領(lǐng)域。當(dāng)今意義上的智能照明網(wǎng)絡(luò)是從舞臺燈光控制系統(tǒng)發(fā)展起來的,1986年美國影視劇場技術(shù)協(xié)會(USITT)的工程委員會開始制定控制燈光設(shè)備和附件的數(shù)字式傳輸協(xié)議DMX512協(xié)議,1990年公布正式文本?,F(xiàn)在調(diào)光網(wǎng)絡(luò)領(lǐng)域中影響較大的CAN協(xié)議和ART-net協(xié)議都是在此基礎(chǔ)上發(fā)展而來的。 目前澳大利亞奇勝場景的智能照明控制系統(tǒng)開發(fā),可以對同一個場所中至多
11、18個燈區(qū)(照明回路)進行供電控制和亮度調(diào)節(jié)。用戶能夠調(diào)節(jié)和預(yù)設(shè)每一個燈區(qū)的亮度以適應(yīng)最多5種場景,只需按一下按鍵就能夠為你的行動選擇你自己滿意的照明環(huán)境。國內(nèi)開發(fā)的真善美智能照明系統(tǒng)擁有集中控制和操縱、集中顯示、斷電自鎖、免打擾功效、遙控功能等智能功能,使家居生活更加便利、舒適和快捷。1.3研究內(nèi)容隨著科技的發(fā)展未來的家居照明系統(tǒng)肯定會越來越智能、越來越便捷,不僅能提高照明的管理效率而且還能夠舒緩人們的身心、提高住宅的防御能力。所以本論文研究智能家居的功能如下: (1)一鍵全開全關(guān)功能。整個家居的照明系統(tǒng)可以實現(xiàn)一鍵全開或全關(guān)的功能。所以當(dāng)我們睡覺或者上班去的時候可以一鍵把所有房間的燈都關(guān)了
12、,不用再跑每個房間關(guān)燈,節(jié)省了我們的時間。(2)照明開關(guān)定時功能。通過一些模塊的設(shè)定來完成照明系統(tǒng)的定時開關(guān)功能。例如:在每天早上八點的時候讓房間的燈光自動的打開,晚上十一點的時候讓房間的燈光自動的關(guān)閉,有事出門的時候關(guān)燈,燈光延時五秒在關(guān)閉。(3)場景區(qū)域的控制。通過MATLAB的編程功能設(shè)定一些特定的照明模式,比如:回家模式、晚餐模式、工作模式、閱讀模式等等。通過一次輕觸的操作就可以隨心所欲的切換各種模式來達到自己滿意的效果。 (4)燈光調(diào)節(jié)功能。當(dāng)我們在吃飯、會客、工作、閱讀的時候可以按照自己的心情來調(diào)節(jié)燈光的亮度。用燈光為我們營造一個舒適、溫馨的氛圍。當(dāng)我們思考的時候可以把燈光調(diào)的黑而
13、暗來有利于我們的思考,當(dāng)我們和朋友在房間里娛樂的時候我們可以把燈光調(diào)的明而亮為我們營造一個活潑、快樂、熱烈的氣氛。 (5)多點操作功能。在任何一個地方的終端上均可控制不同地方的燈,或者是在不同地方的終端可以控制同一盞燈??梢酝ㄟ^觸摸屏或者電話等各種方式來管理照明系統(tǒng)。第二章 開發(fā)系統(tǒng)簡介2.1 MATLAB簡介MathWorks公司的MATLAB是美國的商業(yè)貿(mào)易數(shù)學(xué)軟件,計算用于算法開發(fā),數(shù)據(jù)可視化,數(shù)據(jù)剖析和數(shù)值計算的較高的技術(shù)計算語言和交互式情況,除了矩陣運算、繪制圖形等經(jīng)常使的用功能外,MATLAB還可以用來建立用戶界面及調(diào)用其余的語言(包括C,C+和FORTRAN)編寫的程序。他包括M
14、ATLAB和Simulink兩部分。 MATLAB是matrix&laboratory兩個詞的組合,意為矩陣工廠,是有美國HYPERLINK /view/1855191.htmmathworks公司公布的通常面向科學(xué)計算、可視化和交互式HYPERLINK /view/8332.htm程序設(shè)計的高科技計算環(huán)境。她的數(shù)值剖析、矩陣計算、科學(xué)數(shù)據(jù)以及建模和仿真非線性動力系統(tǒng),以及許多其余的強大的功能的可視化集成在一個易于利用的Windows環(huán)境,并為研究和規(guī)劃工程,以及需要有用數(shù)值繁多的科學(xué)領(lǐng)域提供了一個完備的解決方案。并在很大程度上擺脫了古板的非交互式語言編程(如C,F(xiàn)ortran語言)的編纂形式
15、,是科學(xué)規(guī)劃的當(dāng)今國際非常有名的計算水平。MATLAB的主要性能特點: (1)語言簡單,語法限制不嚴,程序設(shè)計自由度大,可移植性好。 Matlab是一個高級的矩陣語言,它包含豐富的控制語句、函數(shù)和數(shù)據(jù)結(jié)構(gòu)?;贛ATLAB的矩陣,無需預(yù)先定義的變量和矩陣(包括數(shù)組)維度,就可以很容易地算術(shù)運算,關(guān)系運算和邏輯運算符等,但大多數(shù)這些操作符可以在不改變陣列之間的相關(guān)性被復(fù)制,只要在算術(shù)中增加“”就可用于另一組操作符之間。 (2)運算符、庫函數(shù)豐富。MATLAB的一個重要特點是通過調(diào)用擴展系統(tǒng)和一組特定應(yīng)用程序的工具箱方案,每一個工具箱是一類學(xué)科和定制的應(yīng)用程序。當(dāng)有專門的庫中的特定矩陣MATLAB
16、函數(shù),如做鑒定在解決信號處理、建模、系統(tǒng)、控制、優(yōu)化和存在的問題等方面顯得非常簡單、高效、便捷。在此基礎(chǔ)上,高版本的Matlab已逐步擴展到科學(xué)及工程計算的其它領(lǐng)域。 (3)巨大的數(shù)值(矩陣)運算功能。MATLAB是一種包含計算機算法的大集合。它擁有超過600個項目中使用的數(shù)學(xué)函數(shù),用戶可以很方便地實現(xiàn)所需的計算功能。算術(shù)函數(shù)用于科學(xué)和工程計算、新的研究成果,以及可以進行各種優(yōu)化和容錯能力。在正常情況下,你可以用它來代替基本的編程語言如C和C + +。在計算要求相同的情況下,利用MATLAB編程的將事半功倍。這些措施包括套簡單的MATLAB函數(shù)中最基本的功能,如矩陣、向量插圖、快速傅立葉變換的
17、復(fù)雜功能。函數(shù)的功能:可以解決矩陣和通常的線性方程組、微分方程和求解偏微分方程、符號運算、統(tǒng)計數(shù)據(jù)的問題、傅立葉變換和數(shù)據(jù)分析、工程優(yōu)化問題、稀有矩陣運算、一個復(fù)雜的各種運算、三角函數(shù)和其余的基本的數(shù)學(xué)運算多維數(shù)組與動態(tài)仿真建模。 (4)界面友好、編程效率高。寫在無拘無束的形式,稱為“草稿式”的語言的MATLAB程序,那是因為她的名字和功能更接近我們的思維來寫的表達公式的方法,例如在寫MATLAB程序的公式和解決問題的草稿紙,讓你可以快速驗證算法。此外Matlab是一種解釋性語言且沒有特殊的編譯器。具體來說,運行MATLAB,MATLAB的語句直接輸入行命令后,立即處理,以完成設(shè)計的全過程,鏈
18、接和運行系統(tǒng)。使用豐富的庫函數(shù),以避免復(fù)雜的編程任務(wù)子程序,壓縮一切不必要的程序。 (5)圖形功能強大。MATLAB具有一個顯示矩陣和圖形的陣列,如坐標的線性、對數(shù)、半對數(shù)坐標和極坐標只是調(diào)用不同的畫圖功能(命令) ,而它增加了很強的能力可以讓這些注釋的圖形可以打印和標記。 MATLAB圖形技術(shù),包括二維和三維可視化、圖像處理、高層次的專業(yè)圖形動畫高級繪圖功能(如光圖形處理、色彩處理、和四個數(shù)據(jù) - 維性能等) ,而且還包括一些讓用戶可以做控制的低級別的圖形繪制命令的特性,你可以使用MATLAB的圖形處理技術(shù)來創(chuàng)建一個圖形界面。即使一些視覺特殊的要求,例如圖形對話,MATLAB也有相應(yīng)的功能的
19、性能,以確保不同層次的用戶的需求。 Matlab的另一個新版本做了很大的改進討論生產(chǎn)的圖形用戶界面(GUI ) ,也可滿足這方面用戶特殊要求。2.2 GUI設(shè)計工具簡介圖形用戶HYPERLINK /view/240704.htm界面(Graphical User Interface,簡稱 GUI,又稱圖形HYPERLINK /view/1309799.htm用戶接口)是指采用圖形方式顯示的計算機操作用戶HYPERLINK /view/240704.htm界面。與早期計算機使用的HYPERLINK /view/5483485.htm命令行界面相比,圖形界面對于用戶來說在視覺上更易于接受。2.2.
20、1 GUI界面和控件介紹Matlab GUI 的界面由菜單欄、工具欄、控件工具欄和圖形對象設(shè)計區(qū)等四個功能區(qū)組成。GUI 的菜單欄有File、Edit、View、Layout、Tools、和Help 6個菜單項。使用其中的命令可以完成圖形用戶界面的設(shè)計操作。編輯工具在菜單欄的下方,提供常用的工具;設(shè)計工具區(qū)位于窗口的左半部分,提供設(shè)計GUI過程中所用的控件;空間模板區(qū)是網(wǎng)格形式的用戶設(shè)計GUI的空白區(qū)域??丶菍崿F(xiàn)用戶與計算機交互的主要途徑。表2-1列出來十種控件的特征和功能。 表2-1 控件特征及功能控件名稱功能Push Button啟動運算Slider連續(xù)步進獲取數(shù)值Radio Butto
21、n多項護持功能選擇Check Box多重選擇功能Edit Text數(shù)據(jù)傳遞Pop-up Menu單項選擇Listbox單項選擇功能Toggle Button兩狀態(tài)切換Axes繪圖坐標系Static Text文本顯示2.2.2 GUI編輯器介紹在GUI的設(shè)計中我們需要用到各種的編輯器。比如:屬性編輯器、對象瀏覽器、菜單編輯器、Tab順序編輯器、控件布置編輯器、網(wǎng)格標尺設(shè)置編輯器、GUI應(yīng)用屬性設(shè)置編輯器。屬性編輯器(Properties Inspector):查詢并設(shè)定屬性值??丶贾镁庉嬈鳎ˋlignment Objects):調(diào)整各對象相互之間的幾何關(guān)系和位置。對象瀏覽器(Object Br
22、owser):用于獲取當(dāng)前Matlab圖形用戶界面程序中的全部信息,對象的類型,同時顯示控件的名稱和標識,在控件上雙擊鼠標可以打開該控件的屬性編輯器。菜單編輯器(Menu Editor):創(chuàng)建、設(shè)計、修改下拉式菜單和快捷菜單。Tab順序編輯器(Tab Order Editor):用于設(shè)置當(dāng)用戶按下鍵盤上的Tab鍵時,對象被選中的先后順序。網(wǎng)格標尺設(shè)置編輯器(Grid and Rulers):通過網(wǎng)格標尺設(shè)置編輯器,可以再GUI面板中添加網(wǎng)格以及標尺,來方便用戶的界面設(shè)計。GUI應(yīng)用屬性設(shè)置編輯器(GUIDE Application Options):通過該編輯器可以設(shè)定GUI界面縮放形式、GU
23、I對句柄操作的響應(yīng)方式,以及定義GUI的保存方式。第三章 智能家居照明系統(tǒng)的設(shè)計3.1模擬家居燈光的設(shè)計現(xiàn)代家庭中,家庭一般分為客廳,臥室,餐廳,廚房,書房,衛(wèi)生間等。由于他們在我們使用中的頻率、心情、功能的不同,我們可以設(shè)計出不同的照明模式來滿足我們不同的要求。不要小看空間、照明,這些隱身設(shè)計元素可以影響你的家庭裝修。形狀舒適或溫暖、冷靜或活潑、浪漫或親密的結(jié)構(gòu)、裝飾,營造出不同的光線會有不同的氣質(zhì)。 (1)客廳??蛷d,家居空間中使用頻率最高的區(qū)域,也是最能體現(xiàn)家居氣質(zhì)的中心地帶。一般配有吊燈、射燈、壁燈、筒燈等,可以用不同的燈光相互搭配產(chǎn)生不同的照明效果。我們可以通過吊燈、射燈、壁燈、筒燈
24、不同的亮度來設(shè)定不同的照明模式。例如:設(shè)定會客場景為吊燈亮80%、壁燈亮60%、筒燈亮80%;看電視場景為吊燈亮20%、壁燈亮40%、筒燈亮10%。 (2)臥室。臥室是主人體息的地方,通過控制吊燈、射燈、壁燈、筒燈創(chuàng)造一種寧靜、安逸、舒適的氛圍,同時滿足我們休息、閱讀能要求的實現(xiàn)。 (3)餐廳。餐廳里邊我們也可以設(shè)定中餐、西餐等模式來營造我們想達到的目的。此外餐廳的燈光盡量要明亮一些,同時注意燈罩朝下布置在餐桌上方,目的是讓你的豐盛佳肴更加誘人。 (4)廚房。廚房要保證有足夠的亮度,尤其是在操作區(qū)不能有陰影和眩光,這關(guān)系到您在揮灑刀功的同時,不會傷害到手指。 (5)書房。書房的照明布置的原則是
25、以滿足照度要求為準。此外,在書房里為了減輕長時間閱讀所造成的眼睛疲勞,應(yīng)考慮色溫較接近早晨太陽光和不閃的照明。 (6)衛(wèi)生間。衛(wèi)生間的要求一般,不過一般要有局部照明的功能。 智能照明控制系統(tǒng)可以利用遙控器或者觸摸屏的控制界面方便的調(diào)節(jié)燈光的亮度和區(qū)域場景模式的切換,極大地方便了我們的日常生活。照明系統(tǒng)與我們的日常生活密切相關(guān),照明系統(tǒng)的智能化不僅能過給我們帶來極大地便捷也能夠提高我們的生活質(zhì)量。 我們根據(jù)DSP評估板提供的資源來模擬實際家庭中的燈光使用情況。設(shè)計了如下表所示的一組燈光控制系統(tǒng)。用評估板上的四個LED燈模擬燈具的各種狀態(tài)。設(shè)計了客廳和臥室兩個房間。客廳和臥室中分別有三盞燈:吊燈、
26、筒燈、臺燈。表3-1 客廳燈光模式設(shè)置狀態(tài)1234567891011模式開吊燈開筒燈開臺燈關(guān)吊燈關(guān)筒燈關(guān)臺燈全開全關(guān)回家模式影院模式閱讀模式表3-2 臥室燈光模式設(shè)置12131415開吊燈關(guān)吊燈全開全關(guān)3.2客戶端GUI的設(shè)計3.2.1燈光控制界面的設(shè)計 在MATLAB中Command Window窗口下輸入guide命令,在彈出的對話框GUIDE Quick Start中的Creat New GUI選項下選擇Blank GUI,新建一個空白模板??瞻啄0蹇梢宰層脩糇杂稍O(shè)置個性化的界面。選擇FilePreferences,選擇復(fù)選框 Show names in component palett
27、e選項,單擊OK可顯示出控件的名稱。空白頁如圖3-1所示。圖3-1 GUI的空白面板 在空白面板里面我們添加Push Button、Pop-up Menu、Static Text、Panel四個控件。其中Push Button用來構(gòu)建連接、退出按鈕。這兩個按鈕用來控制用戶界面與DSP的通信。Pop-up Menu用來選擇控制不同的燈具及其亮度或選擇不同的運行模式。Static Text用來顯示用戶界面上的靜態(tài)信息,用做其它控件的標簽,在該用戶界面中用于顯示控制項目名稱。Panel來構(gòu)建組件。 選擇控件,單擊“Property Inspector”按鈕,打開“Property Inspector
28、”對話框,依次更改名稱、數(shù)據(jù)類型等控件屬性。 (1)其中對于按鈕來說String屬性是顯示在按鈕上的標題,對于下拉菜單來說String屬性是彈出菜單的字串。(2)通過Back ground Color來改變控件的背景顏色。(3)通過Font Size來改變控件字體的大小。 (4)Tag屬性的值,是每個控件唯一的標識符,GUIDE用它來構(gòu)造GUI中不同控件的唯一響應(yīng)函數(shù)名。因為控件在剛建立時,GUIDE給它們的都是默認名,為了突出每個控件的個性,表現(xiàn)它的作用,要重新設(shè)置Tag的屬性。(5)通過ctrl選擇多個控件之后再由快捷鍵Align ObjectsL來選擇各個控件之間的行距和寬度。修改完成后
29、如圖3-2所示。圖3-2 燈光控制界面 當(dāng)設(shè)置好界面后,點擊界面上的保存按鈕,MATLAB自動生成兩個文件:untitled1.m文件和untitled1.fig文件。為了完成單擊控件時響應(yīng)相應(yīng)的事件或行為,需要對不同控件編寫相應(yīng)的回調(diào)函數(shù)。在用戶界面編輯窗口選中控件,點擊鼠標右鍵,選擇View CallbacksCallback,即可進入控件相應(yīng)的回調(diào)函數(shù)進行代碼的編寫或添加,使之實現(xiàn)相應(yīng)的功能。界面上的連接按鈕是要創(chuàng)建一個UDP對象,其回調(diào)函數(shù)會在MATLAB環(huán)境下UDP數(shù)據(jù)報的發(fā)送和接收中介紹。退出按鈕的作用是停止遠程控制,點擊它時會出現(xiàn)一個對話框,提醒用戶是否真的退出系統(tǒng)。其流程圖如圖
30、所示。下拉菜單用來選擇控制不同的燈具及其亮度或選擇不同的運行模式。在剛打開用戶界面時,雖然下拉菜單中顯示有各種燈具、運行模式、亮度選擇,但是這不會調(diào)用回調(diào)函數(shù),只有當(dāng)下拉菜單被點擊時才會執(zhí)行相應(yīng)的命令。流程圖如圖3-3、3-4所示圖3-3 退出按鈕回調(diào)函數(shù)流程圖 圖3-4 下拉菜單回調(diào)函數(shù)流程圖回調(diào)函數(shù)別寫好后,在設(shè)計面板中選擇“run”命令,MATLAB會自動調(diào)用程序代碼,調(diào)試成功后,通過選擇按鈕,即可實現(xiàn)對應(yīng)函數(shù)的調(diào)用和執(zhí)行。程序執(zhí)行后的狀態(tài)如圖3-5所示。圖3-5 運行后的燈光控制系統(tǒng)界面3.2.2智能家居控制系統(tǒng)界面的設(shè)計智能家居系統(tǒng)包括八個子系統(tǒng),即燈光控制系統(tǒng)、遠程監(jiān)控系統(tǒng)、可視對
31、講系統(tǒng)、門禁控制系統(tǒng)、安防報警系統(tǒng)、家電控制系統(tǒng)、窗簾控制系統(tǒng)和背景音樂系統(tǒng)。智能家居系統(tǒng)主界面如圖3-6所示。本文中的智能家居系統(tǒng)客戶端界面將這些子系統(tǒng)集成在一起,通過調(diào)用不同按鈕的回調(diào)函數(shù)可進入各子系統(tǒng)的控制界面。比如調(diào)用燈光控制系統(tǒng),可在其按鈕的回調(diào)函數(shù)中寫入以下代碼: untitled1; %調(diào)用untitled1.m函數(shù)。set (untitled2,visible,off); %不顯示智能家居系統(tǒng)界面。set (untitled1,visible,on); %顯示燈光控制系統(tǒng)界面。 若要求退出子系統(tǒng)時返回智能家居系統(tǒng)主界面,則可在各子系統(tǒng)的退出按鈕的回調(diào)函數(shù)中的case是后加入以下
32、代碼: set (untitled2,visible,on); %顯示智能家居系統(tǒng)主界面。set (untitled1,visible,off); %不顯示燈光控制系統(tǒng)界面。圖3-6 智能家居控制系統(tǒng)的界面3.2.3 將MATLAB GUI程序轉(zhuǎn)換成可執(zhí)行的程序 對于一個通用的,比較成熟的解決方案,當(dāng)然期望它能應(yīng)用到更多的場合,而.exe(可執(zhí)行)文件可運行于所有的通用Windows操作系統(tǒng)。因此,將M文件轉(zhuǎn)換成.exe文件會使用戶使用起來更加方便,加強了應(yīng)用程序的通用性。在此我們將untitled1.m和untitled1.fig生成.exe文件。 在確定安裝好Matlab Compiler
33、后,還需要對Compiler進行適當(dāng)?shù)呐渲?,方法是在Matlab命令窗口輸入:Mbuild setup。按提示選擇編譯器。進行操作的信息如下:mbuild -setupPlease choose your compiler for building standalone MATLAB applications: Would you like mbuild to locate installed compilers y/n? ySelect a compiler: 1 Microsoft Visual C+ 2010 Express in C:Program Files (x86)Microso
34、ft Visual Studio 10.0 0 None Compiler: 1 Please verify your choices: Compiler: Microsoft Visual C+ 2010 Express Location: C:Program Files (x86)Microsoft Visual Studio 10.0 Are these correct y/n? y* Warning: Applications/components generated using Microsoft Visual C+ 2010 require that the Microsoft V
35、isual Studio 2010 run-time libraries be available on the computer used for deployment. To redistribute your applications/components, be sure that the deployment machine has these run-time libraries. * Trying :C:UsersasusAppDataRoamingMathWorksMATLABR2010bcompopts.bat From template: D:matlabbinwin64m
36、buildoptsmsvc100freecompp.bat Done . . . 將已有的untitled1.m和untitled1.fig單獨放在一個文件夾中,然后打開MATLAB,選擇路徑為此文件夾,然后在命令窗口輸入:mcc -m untitled1等待即可將GUI程序轉(zhuǎn)換成可執(zhí)行程序。在此路徑下生成mccExcludedFiles.log,ReadMe.txt,gui.ctf,gui.prj,gui_main.c,gui.exe。其中:gui.ctf,gui.exe為脫離matlab環(huán)境運行必需的文件。有了gui.ctf,gui.exe兩個文件就可以在未安裝matlab的機器上運行客戶
37、端圖形界面??偨Y(jié)4.1總結(jié)經(jīng)過本系統(tǒng)設(shè)計學(xué)到了很多東西,設(shè)計過程也是一個知識快速增長的過程,對不會的知識及時和老師交流、查閱資料,以解決設(shè)計過程中遇到的問題。本論文最困難的是回調(diào)函數(shù)的設(shè)計,在回調(diào)函數(shù)的設(shè)計過程中經(jīng)常達不到預(yù)期的目標,最終在指導(dǎo)老師的幫助下順利的完成了預(yù)定的目標。這次畢業(yè)設(shè)計,感受最深的是經(jīng)過自己的努力和老師、同學(xué)的幫助,我學(xué)習(xí)到了很多知識,認識的自己知識的欠缺,有時候遇到問題,分析問題不夠透徹,使我在設(shè)計的過程中走了很多彎路,不過及時和老師溝通和同學(xué)交流,都能分析到問題的根本所在;因此我覺得在今后的學(xué)習(xí)過程中,認識問題、分析問題很重要,這樣能夠及時解決問題,使自己有更多的時間
38、學(xué)習(xí)更多的知識。根據(jù)設(shè)計要求,本文完成的工作有:(1) 詳細設(shè)計了燈光控制系統(tǒng)客戶端的圖形用戶界面,使得對燈光系統(tǒng)的控制可視化。(2) 考慮到燈光控制系統(tǒng)只是智能家居系統(tǒng)的一個子系統(tǒng),設(shè)計了一個智能家居系統(tǒng)圖形用戶界面,集成了八個子系統(tǒng)。通過點擊不同按鈕可調(diào)用不同子系統(tǒng)的圖形用戶界面。致 謝本論文是在周鵬教授的親自指導(dǎo)下成功完成的。通過和周老師多次交流,我深深的感覺到周老師知識廣博、治學(xué)嚴謹、細致認真,經(jīng)常指導(dǎo)和給我們意見,對論文要求嚴格。對于我請教的問題,耐心細致解答,在此衷心感謝周老師在我設(shè)計課題的過程中,悉心的指導(dǎo)和幫助。同時我要感謝我的同學(xué),在本次設(shè)計工作中,他們給予我了很多專業(yè)性的幫
39、助。不僅如此,他們在學(xué)習(xí)過程中堅定的毅力以及不怕困難,勇于挑戰(zhàn)的精神都是我應(yīng)該努力的方向。最后感謝我的家人對我一如既往的關(guān)懷和鼓勵。他們教了我很多做人的道理以及踏實實干的精神。在精神和物質(zhì)上都給予了我最大的支持,使我能夠更加積極地面對學(xué)習(xí)和生活中的困難,勇于進取。參考文獻1 陳垚光. 精通MATLAB GUI設(shè)計M.北京: 電子工業(yè)出版社, 2008.2 董振海. 精通MATLAB7編程與數(shù)據(jù)庫應(yīng)用M. 北京: 電子工業(yè)出版社,2007.3 李宗. 智能家居中燈光控制系統(tǒng)的研究D. 碩士論文. 上海:上海交通大學(xué),2008.4 王軍宇等著. 數(shù)字信號處理技術(shù)原理與開發(fā)應(yīng)用M. 北京: 高等教育
40、出版社, 2003.6.5 葉敏著. 數(shù)字信號處理與交換網(wǎng)M.北京: 北京郵電大學(xué).6 吳偉陵編著.移動通信中的關(guān)鍵技術(shù)M.北京.北京郵電大學(xué)出版社,2000 7 韓斌杰等著.GSM原理及其網(wǎng)絡(luò)優(yōu)化M.機械工業(yè)出版社,2009附錄一:智能家居系統(tǒng)界面的程序代碼function varargout = untitled2(varargin)% UNTITLED2 MATLAB code for untitled2.fig% UNTITLED2, by itself, creates a new UNTITLED2 or raises the existing% singleton*.% H =
41、UNTITLED2 returns the handle to a new UNTITLED2 or the handle to% the existing singleton*.% UNTITLED2(CALLBACK,hObject,eventData,handles,.) calls the local% function named CALLBACK in UNTITLED2.M with the given input arguments.% UNTITLED2(Property,Value,.) creates a new UNTITLED2 or raises the% exis
42、ting singleton*. Starting from the left, property value pairs are% applied to the GUI before untitled2_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to untitled2_OpeningFcn via varargin.% *See GUI Options on GUIDEs Too
43、ls menu. Choose GUI allows only one% instance to run (singleton).% See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help untitled2 % Last Modified by GUIDE v2.5 09-May-2014 22:06:34 % Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct(gui_
44、Name, mfilename, . gui_Singleton, gui_Singleton, . gui_OpeningFcn, untitled2_OpeningFcn, . gui_OutputFcn, untitled2_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, va
45、rargin:);else gui_mainfcn(gui_State, varargin:);end% End initialization code - DO NOT EDIT % Executes just before untitled2 is made visible.function untitled2_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata rese
46、rved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to untitled2 (see VARARGIN) % Choose default command line output for untitled2handles.output = hObject; % Update handles structureguidata(hObject, handles);
47、 % UIWAIT makes untitled2 wait for user response (see UIRESUME)% uiwait(handles.figure1); % Outputs from this function are returned to the command line.function varargout = untitled2_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject han
48、dle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structurevarargout1 = handles.output; % Executes on button press in pushbutton1.function pushbutton1_Callback(hOb
49、ject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)untitled1; %調(diào)用lightcontrol.m函數(shù)。set (untitled2,visible,off); %不顯示智能家居系統(tǒng)界面。set (untitled1,visible,on); %顯示燈光控
50、制系統(tǒng)界面。 % Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Executes on button pre
51、ss in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles)% hObject handle to pushbutton3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Executes on button press in pushbutton4.function push
52、button4_Callback(hObject, eventdata, handles)% hObject handle to pushbutton4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Executes on button press in pushbutton5.function pushbutton5_Callback(hObject, event
53、data, handles)% hObject handle to pushbutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Executes on button press in pushbutton6.function pushbutton6_Callback(hObject, eventdata, handles)% hObject handle
54、to pushbutton6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Executes on button press in pushbutton7.function pushbutton7_Callback(hObject, eventdata, handles)% hObject handle to pushbutton7 (see GCBO)% even
55、tdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Executes on button press in pushbutton8.function pushbutton8_Callback(hObject, eventdata, handles)% hObject handle to pushbutton8 (see GCBO)% eventdata reserved - to be defined
56、in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)附錄二:燈光控制系統(tǒng)的程序代碼function varargout = untitled1(varargin)% UNTITLED1 MATLAB code for untitled1.fig% UNTITLED1, by itself, creates a new UNTITLED1 or raises the existing% singleton*.% H = UNTITLED1 returns the hand
57、le to a new UNTITLED1 or the handle to% the existing singleton*.% UNTITLED1(CALLBACK,hObject,eventData,handles,.) calls the local% function named CALLBACK in UNTITLED1.M with the given input arguments.% UNTITLED1(Property,Value,.) creates a new UNTITLED1 or raises the% existing singleton*. Starting
58、from the left, property value pairs are% applied to the GUI before untitled1_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to untitled1_OpeningFcn via varargin.% *See GUI Options on GUIDEs Tools menu. Choose GUI allows
59、 only one% instance to run (singleton).% See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help untitled1 % Last Modified by GUIDE v2.5 08-May-2014 20:43:57 % Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Sin
60、gleton, gui_Singleton, . gui_OpeningFcn, untitled1_OpeningFcn, . gui_OutputFcn, untitled1_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年蘇科新版九年級生物下冊月考試卷含答案
- 2025年魯科版七年級物理下冊階段測試試卷
- 二零二五版美容美發(fā)行業(yè)員工勞動合同終止補償合同4篇
- 二零二五年度農(nóng)業(yè)病蟲害防治設(shè)備租賃合同4篇
- 二零二五版鎳氫電池產(chǎn)品供應(yīng)鏈管理合同4篇
- 二零二五年度門窗行業(yè)供應(yīng)鏈管理服務(wù)合同7篇
- 二零二五年度IT行業(yè)IT支持服務(wù)合同2篇
- 2025年度文化創(chuàng)意產(chǎn)業(yè)園區(qū)開發(fā)合同協(xié)議范本4篇
- 2025版農(nóng)機零部件供應(yīng)合同協(xié)議范本4篇
- 二零二五年度沐足行業(yè)員工薪酬福利合同范本4篇
- 2024年公證遺產(chǎn)繼承分配協(xié)議書模板
- 燃氣經(jīng)營安全重大隱患判定標準課件
- JB-T 8532-2023 脈沖噴吹類袋式除塵器
- 深圳小學(xué)英語單詞表(中英文)
- 護理質(zhì)量反饋內(nèi)容
- 山東省濟寧市2023年中考數(shù)學(xué)試題(附真題答案)
- 抖音搜索用戶分析報告
- 鉆孔灌注樁技術(shù)規(guī)范
- 2023-2024學(xué)年北師大版必修二unit 5 humans and nature lesson 3 Race to the pole 教學(xué)設(shè)計
- 供貨進度計劃
- 彌漫大B細胞淋巴瘤護理查房
評論
0/150
提交評論