【文章內(nèi)容簡介】
塊、紅外遙控模塊、手動控制模塊、電機(jī)驅(qū)動執(zhí)行模塊、單片機(jī)主控器件模塊。本章介紹了智能遙控窗簾控制體系的主程序設(shè)計(jì)以及各主要模塊子程序的設(shè)計(jì)過程,程序代碼和仿真詳見附錄B。 主程序設(shè)計(jì)主程序主要實(shí)現(xiàn)體系結(jié)構(gòu)初始化操作及各個子程序之間的共同作用,主程序是能夠無限循環(huán)的,主要的功能是讓單片機(jī)初始化不斷運(yùn)行程序?qū)崿F(xiàn)窗簾各種狀態(tài)的運(yùn)轉(zhuǎn)。對按鍵與紅外遙控信號進(jìn)行掃描,控制步進(jìn)電機(jī)工作等功能。 主程序流程圖主程序流程說明:電路主要分為以下幾個模塊,分別是電源模塊、指示燈顯示模塊、按鍵模塊、步進(jìn)電機(jī)驅(qū)動模塊、紅外遙控模塊、單片機(jī)主控器件模塊,各模塊具有不同的子程序設(shè)計(jì)[5]。主程序的作用主要是先初始化系統(tǒng)的狀態(tài)以及指示燈的指示內(nèi)容;然后掃描按鍵和紅外遙控按鍵的操作內(nèi)容,并且對按鍵進(jìn)行分析以及處理,通過分析處理,對于控制鍵,調(diào)用相關(guān)程序運(yùn)行執(zhí)行相應(yīng)的功能及切換智能窗簾系統(tǒng)的制動模式。 鍵盤程序設(shè)計(jì)在操作按鍵的過程中,不管是按下還是松開,按鍵觸點(diǎn)在閉合和斷開時都會產(chǎn)生抖動,這時邏輯電平是非常不穩(wěn)定的,如果不能正確處理,可能會導(dǎo)致單片機(jī)對按鍵命令的錯誤執(zhí)行。解決這個問題的最有效辦法就是利用軟件延時。當(dāng)按鍵按下后延時50ms,過濾掉按鍵起始時的抖動,然后處理該按鍵對應(yīng)的按鍵內(nèi)容,處理完按鍵內(nèi)容以后對按鍵要做按鍵判斷釋放。這樣就避免了一下程序誤操作。 鍵盤程序流程圖 步進(jìn)電機(jī)程序設(shè)計(jì)步進(jìn)電動機(jī)是控制窗簾開關(guān)的主要執(zhí)行器件,其程序設(shè)計(jì)主要是根據(jù)單片機(jī)控制指令和按鍵指令驅(qū)動電機(jī)的正轉(zhuǎn)或者反轉(zhuǎn)。步進(jìn)電機(jī)程序設(shè)計(jì)的主要任務(wù)是判斷電機(jī)轉(zhuǎn)動的方向,依次按順序傳送控制脈沖,判斷所要求的控制步數(shù)是否已經(jīng)傳送結(jié)束。 步進(jìn)電機(jī)程序流程圖4 仿真與調(diào)試 軟件介紹與使用 KEIL軟件介紹KeiluVision是美國Keil Software公司開發(fā)的51系列兼容單片機(jī)C語言軟件設(shè)計(jì)系統(tǒng),和匯編相比,C語言在功能上、結(jié)構(gòu)性、可續(xù)性、可維護(hù)上有了明顯的優(yōu)勢,因此使用廣泛。 KeiluVision軟件供給大量的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全windows用戶界面。此外特殊的一面是只要看一下編譯后生成的匯編代碼,就能體會到KeiluVision生成目標(biāo)代碼的效率極其之高。多數(shù)語句生成的匯編代碼很緊湊,極易理解。在開發(fā)大型軟件時更能體現(xiàn)出高級語言的優(yōu)勢。KeiluVision軟件提供了包含C編譯器、宏匯編、連接器、庫管理器和一個功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整的開發(fā)系統(tǒng)。運(yùn)行KeiluVision軟件需要PENTIUM及以上的CPU,16MB或更多的RAM,20MB以上的空閑的硬盤空間和WIN9NT、WIN2000、WINXP等操作系統(tǒng)[6]。 KEIL軟件的使用啟動Keil C51設(shè)計(jì)軟件,進(jìn)入用戶編輯界面。1)需要建立一個新工程,單擊Project菜單,在彈出的下拉菜單中選擇New Project選項(xiàng)。2)接下來選擇用戶想保存的路徑,輸入工程文件的名稱,比如保存在C51文件里,工程文件的名稱為C51,,然后點(diǎn)擊保存.3)此時頁面會彈出一個對話框,讓你選擇單片機(jī)的型號,你可以按照你采用的單片機(jī)型號來選擇,keil c51軟件基本上能夠包含所有的51系列的單片機(jī)型號,在這里我還是以大家用的比較多的Atmel 的89C51來說明[7],選擇89C51之后,右邊框欄是對這個單片機(jī)的基本介紹,然后點(diǎn)擊確定.4)結(jié)束上一步操作之后,就可以開始編寫程序了。單擊“File”菜單,點(diǎn)擊下拉菜單中的“New”選項(xiàng)。這時光標(biāo)會在編輯窗口中閃爍,此時可以輸入用戶的應(yīng)用程序了,但是要先保存該空白的文件,單擊菜單上的“File”,在下拉菜單中選中“Save As”選項(xiàng)選中,在“文件名”一欄右邊的編輯框中,輸入想要命名的文件名,同時必須輸入正確的擴(kuò)展名。注意,若用C語言編寫程序,則擴(kuò)展名必須為(.c);若用匯編語言編寫程序,則擴(kuò)展名必須為(.asm)。最后,點(diǎn)擊“保存”按鈕。5)回到用戶編輯界面后,單擊“Target 1”前面的“+”號,然后在“Source Group 1”上單擊右鍵,彈出菜單,接著單擊“Add File to Group ‘Source Group 1’”6),然后單擊“Add ”7)輸入程序8)單擊“Project”菜單,在下拉菜單中點(diǎn)擊“Built Target”選項(xiàng)(或者使用快捷鍵F7),編譯結(jié)束后,再單擊“Project”菜單,在下拉菜單中點(diǎn)擊“Start/Stop Debug Session”(或者使用快捷鍵Ctrl+F59)程序調(diào)試:,單擊“Debug”菜單,在下拉菜單中點(diǎn)擊“Go”選項(xiàng),(或者使用快捷鍵F5),然后再單擊“Debug”菜單,在下拉菜單中點(diǎn)擊“Stop Running”選項(xiàng)(或者使用快捷鍵Esc);最后單擊“View”菜單,再在下拉菜單中點(diǎn)擊“Serial Windows 1”選項(xiàng),就能看到你編輯的程序運(yùn)行后的結(jié)果了。 10)最后,把程序下載到單片機(jī)中。 注意事項(xiàng)在硬件制作過程中首先要確定整體電路的布局,然后插元器件開始焊接,先焊小器件這樣能使焊接難度減小,在焊接過程中要注意安全避免自己或他人被燙傷,焊口要光滑精致不能將焊頭連在一起造成電路連接錯誤出現(xiàn)故障損壞元器件。 安裝調(diào)試本設(shè)計(jì)主要完成了如下工作:硬件部分:(1)選用USB電源。電壓穩(wěn)定在5V給供單片機(jī)供電;(2)單片機(jī)選用STC89C52,是整個系統(tǒng)的核心部件,擔(dān)負(fù)整個系統(tǒng)的管理控制任務(wù);(3)紅外線遙控模塊。發(fā)射器件選用普通的遙控器,既能降低成本又能方便操作;接收器件選用HS38B一體化紅外線接收頭,主要是通過STC89C52進(jìn)行紅外解碼,分析出需要執(zhí)行的命令,再由單片機(jī)去控制外圍電路完成;(4)窗簾的開關(guān)利用步進(jìn)電動機(jī)來實(shí)現(xiàn),電機(jī)的轉(zhuǎn)動方向由繼電器來控制。軟件部分(1)對89C52芯片進(jìn)行初始化,I2C總線進(jìn)行單字節(jié)數(shù)據(jù)讀寫傳送、多字節(jié)數(shù)據(jù)讀寫傳送;(2)利用紅外線一體化接收頭對紅外遙控器發(fā)射的數(shù)字信號進(jìn)行接收,然后由單片機(jī)處理接收到的信號進(jìn)行紅外解碼;(3)控制程序,根據(jù)解碼得到的結(jié)果去執(zhí)行需要的操作。手動開/關(guān)窗簾、遙控開/關(guān)窗簾、開/關(guān)自動開關(guān)簾、開/關(guān)自動關(guān)窗簾;無線遙控按鍵的功能是發(fā)射信號傳入單片機(jī)由單片機(jī)執(zhí)行相應(yīng)程序驅(qū)動電機(jī)控制窗簾的正轉(zhuǎn)或者反轉(zhuǎn)。手動控制按鍵的功能是發(fā)射信號傳入單片機(jī),由單片機(jī)執(zhí)行相應(yīng)程序驅(qū)動電機(jī)控制窗簾的正轉(zhuǎn)或者反轉(zhuǎn)。另外這個電路體系中設(shè)有復(fù)位按鍵,無論是在怎樣的工作狀態(tài)下復(fù)位鍵命令能使窗簾控制系統(tǒng)恢復(fù)到初始狀態(tài)。窗簾工作模式的選擇是選擇無線遙控和選擇手動控制,在無線遙控模式下,同時手動控制有效;在手動控制狀態(tài)下無線遙控控制同時有效。電機(jī)轉(zhuǎn)動時間長度的設(shè)定,是按照不同用戶窗簾的長度來設(shè)定,設(shè)置對應(yīng)的電機(jī)一次運(yùn)行時間,保證在無線遙控模式下窗簾拉開或者關(guān)閉到位。在整個設(shè)計(jì)過程中使用巧妙的停機(jī)方法:硬件上,在窗簾端點(diǎn)處并聯(lián)1個限位開關(guān),當(dāng)窗簾開度到位后,限位開關(guān)立即斷開,電機(jī)馬上停止運(yùn)轉(zhuǎn);軟件上,進(jìn)行程序控制,例如定時10S,10S后電機(jī)自動停止運(yùn)轉(zhuǎn)。本次電路設(shè)計(jì)經(jīng)過了多次修改,參照現(xiàn)在實(shí)際電路通用的做法,在現(xiàn)有的技術(shù)狀況下各個功能已經(jīng)達(dá)到設(shè)計(jì)要求,但由于自身水平有限,電路中還存在一些技術(shù)性問題有待進(jìn)一步解決。如窗簾的開度和開關(guān)反應(yīng)速度以及紅外線接受電路可以進(jìn)一步調(diào)試其精確度和靈敏度。5 結(jié)束語本次畢業(yè)設(shè)計(jì)論述了一種基于光照檢測的智能遙控窗簾系統(tǒng)的硬件電路設(shè)計(jì)以及軟件設(shè)計(jì)。在總體結(jié)構(gòu)設(shè)計(jì)中利用光敏電阻作為檢測光照強(qiáng)度的傳感器件,利用步進(jìn)電動機(jī)作為信號輸出的執(zhí)行器件,采用STC89C52單片機(jī)作為系統(tǒng)核心的控制器件,并且使用了按鍵和指示燈顯示電路。采用STC89C52單片機(jī)的優(yōu)勢減少了硬件的復(fù)雜性,光敏電阻接收外界光照信號,經(jīng)過電壓比較器后,傳送給單片機(jī)一個電平號,單片機(jī)經(jīng)過接收處理后,控制步進(jìn)電機(jī)做出相應(yīng)的動作,以實(shí)現(xiàn)對窗簾的開關(guān)控制。在達(dá)到基本功能的基礎(chǔ)上,又添加了紅外遙控功能,增加了用戶使用的便利性。光敏電阻良可靠的感光性以及步進(jìn)電機(jī)的穩(wěn)定性,使得智能遙控窗簾系統(tǒng)控制方面的優(yōu)點(diǎn)更加顯著。本次畢業(yè)設(shè)計(jì)的整個研究與設(shè)計(jì)過程包括方案、硬件設(shè)計(jì)、軟件設(shè)計(jì)以及安裝調(diào)試。首先,在選擇方案方面查閱了很多與題目有關(guān)的資料和課題并且制定設(shè)計(jì)方案,進(jìn)行設(shè)計(jì)的總體規(guī)劃,然后將方案落實(shí)到設(shè)計(jì)環(huán)節(jié)中。其次,在制定的方案基礎(chǔ)上運(yùn)用所學(xué)的知識對硬件以及軟件進(jìn)行設(shè)計(jì),并用protues軟件進(jìn)行仿真設(shè)計(jì)。最后,對設(shè)計(jì)內(nèi)容進(jìn)一步改進(jìn),以求達(dá)到最佳的設(shè)計(jì)結(jié)果。雖然設(shè)計(jì)結(jié)果基本實(shí)現(xiàn)了設(shè)計(jì)要求的功能,但是其中還是存在一些不足,比如在設(shè)計(jì)中沒有考慮到窗簾開關(guān)速度的顯示以及沒有添加類似遠(yuǎn)程控制的功能等。 此次設(shè)計(jì)過程中,在完成設(shè)計(jì)任務(wù)之外也讓我深刻地認(rèn)識和進(jìn)一步掌握了單片機(jī)運(yùn)用技術(shù),從本次畢業(yè)設(shè)計(jì)過程中我更加全面地體會到理念來源于實(shí)際的含義。在和同學(xué)以及老師就相關(guān)問題的探討中,讓我認(rèn)識到自己的很多不足,但在這個過程中我又學(xué)到了很多知識,促使我的綜合應(yīng)用能力有了顯著的提升。 致 謝經(jīng)歷了數(shù)月的研究,畢業(yè)設(shè)計(jì)和論文已經(jīng)快要結(jié)束了。在整個畢業(yè)設(shè)計(jì)的過程中,由于知識的缺乏以及自身能力有限,不可避免的存在許多考慮不周全的地方,在選題,設(shè)計(jì)等方面,如果沒有指導(dǎo)老師的悉心指導(dǎo),沒有同學(xué)們的幫助,染我單獨(dú)完成這個畢業(yè)設(shè)計(jì),確實(shí)還是有一定難度的。在論文定稿之際,我想借此機(jī)會對在完成畢業(yè)設(shè)計(jì)期間關(guān)心、幫助、支持和鼓勵過我的老師、同學(xué)以及朋友們致以最誠摯的謝意和最衷心的祝福!首先我要感謝的是我的導(dǎo)師魏老師,在完成整個畢業(yè)設(shè)計(jì)的過程中,老師給我提供了很大的幫助,在選題、設(shè)計(jì)以及修改論文的各個環(huán)節(jié)里老師給我指出了很多錯誤,并且提出了很多寶貴意見,對于設(shè)計(jì)中存在的問題也是耐心的指導(dǎo),讓我能夠順利的完成畢業(yè)設(shè)計(jì)。在此謹(jǐn)向老師致以誠摯的謝意和崇高的敬意。 其次要感謝的是所有在大學(xué)四年中教育指導(dǎo)過我的所有老師,你們傳授給我的專業(yè)知識是我完成本次畢業(yè)設(shè)計(jì)的必要條件,更是今后進(jìn)入社會踏入工作崗位的重要基石,對于老師們一絲不茍,兢兢業(yè)業(yè)的精神表示衷心的感謝。最后我還要向所有關(guān)心和幫助我學(xué)習(xí)的朋友和同學(xué)們表示真摯的謝意!感謝你們對我的關(guān)心、幫助和支持。參 考 文 獻(xiàn)[1] 童詩白,,2003.[2] 胡漢才,:清華大學(xué)出版社,2004.[3] 江思敏,:清華大學(xué)出版社,2002.[4] 李全利,:高等教育出版社,2001.[5] 程學(xué)先,林珊,:機(jī)械工業(yè)出版社,2005.[6] 王建校,:科學(xué)出版社,2002.[7] :北京航空航天大學(xué)出版社 2004[8] :高等教育出版社,1998.[9] STC89C52 DATA SHEEP Philips Semiconductors [10] Parady, Turnered. Electric Motors. Georgia:the american association For vocational instructional materials, 1978.附錄AIntelligent buildings design and building management systemsOverview of 39。intelligent buildings39。 and 39。intelligent homes39。 technologiesThe field of Intelligent Buildings, Intelligent Homes, Building Management Systems (BMS) enpasses an enormous variety of technologies, across mercial, industrial, institutional and domestic buildings, including energy management systems and building controls. The function of Building Management Systems is central to 39。Intelligent Buildings39。 concepts。 its purpose is to control, monitor and optimise building services, eg., lighting。 heating。 security, CCTV and alarm systems。 access control。 audiovisual and entertainment systems。 ventilation, filtration and climate control, etc.。 even time amp。 attendance control and reporting (notably staff movement and availability). The potential within these concepts and the surrounding technology is vast, and our lives are changing from the effects of Intelligent Buildings developments on our living and working environments. The impact on facilities planning and facilities management is also potent