基于ZigBee智能擦窗控制系統(tǒng)設(shè)計_第1頁
基于ZigBee智能擦窗控制系統(tǒng)設(shè)計_第2頁
基于ZigBee智能擦窗控制系統(tǒng)設(shè)計_第3頁
基于ZigBee智能擦窗控制系統(tǒng)設(shè)計_第4頁
基于ZigBee智能擦窗控制系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

《物聯(lián)網(wǎng)應(yīng)用系統(tǒng)》任務(wù)書題目:基于ZigBee智能擦窗控制系統(tǒng)設(shè)計學(xué)生姓名:學(xué)號:班級:物聯(lián)網(wǎng)工程1班題目類型:物聯(lián)網(wǎng)工程指導(dǎo)教師:吳愛梅一、設(shè)計題目簡介該設(shè)計要求學(xué)生以物聯(lián)網(wǎng)在智能家居領(lǐng)域應(yīng)用為背景,設(shè)計并開發(fā)基于ZigBee智能插座控制系統(tǒng)。通過該題目的設(shè)計、開發(fā),使學(xué)生初步得到智能家居家電的訓(xùn)練,掌握物聯(lián)網(wǎng)的感知層、網(wǎng)絡(luò)層和應(yīng)用層這三層在智能家居的應(yīng)用知識。全面培養(yǎng)學(xué)生在設(shè)計開發(fā)過程中的分析、設(shè)計及文檔規(guī)范書寫的能力,通過智能家居開發(fā)的綜合訓(xùn)練,提高解決實(shí)際問題的能力。二、設(shè)計的任務(wù)1.查閱文獻(xiàn)資料,一般在10篇以上;2.以智能家居家電控制背景為基礎(chǔ),通過調(diào)研、分析現(xiàn)有的智能家居家電控制系統(tǒng),設(shè)計基于ZigBee智能插座控制系統(tǒng);3.完成硬件電氣原理圖設(shè)計;4.完成硬件驅(qū)動程序軟件設(shè)計;5.完成ZigBee協(xié)議棧開發(fā)軟件設(shè)計;6.完成PC端Qt窗體界面開發(fā)軟件設(shè)計7.撰寫設(shè)計說明書;8.做好答辯工作。三、主要內(nèi)容、功能及技術(shù)指標(biāo)1.設(shè)計內(nèi)容繪制電氣原理圖:ZigBee繼電器終端節(jié)點(diǎn)模塊、ZigBee協(xié)調(diào)器模塊;編寫繼電器驅(qū)動程序;編寫ZigBee協(xié)議棧軟件程序:ZigBee繼電器終端節(jié)點(diǎn)程序功能的實(shí)現(xiàn),ZigBee協(xié)調(diào)器程序功能的實(shí)現(xiàn);PC機(jī)Qt圖形界面軟件設(shè)計:ZigBee智能插座控制系統(tǒng)窗體界面設(shè)計,ZigBee智能插座控制系統(tǒng)窗體界面功能實(shí)現(xiàn)的設(shè)計。2.功能實(shí)現(xiàn)基于ZigBee智能插座控制系統(tǒng)設(shè)計,主要采用無線近距離通信技術(shù)對室內(nèi)插座進(jìn)行控制。PC機(jī)通過RS-232串口與ZigBee協(xié)調(diào)器模塊連接,由PC機(jī)Qt圖形交互界面上發(fā)出通電與斷電指令并傳送到ZigBee協(xié)調(diào)器模塊。再由ZigBee協(xié)調(diào)器模塊通過ZigBee網(wǎng)絡(luò)發(fā)送至ZigBee繼電器終端節(jié)點(diǎn),進(jìn)而控制室內(nèi)插座電源的通與斷。3.技術(shù)要求(1)系統(tǒng)設(shè)計使用軟件要求:IAR集成開發(fā)環(huán)境軟件、TIZ-Stack協(xié)議棧、USB轉(zhuǎn)串口驅(qū)動軟件、QtCreator跨平臺開發(fā)環(huán)境軟件。(2)系統(tǒng)設(shè)計使用硬件要求:1塊ZigBee協(xié)調(diào)器模塊、1塊ZigBee繼電器終端節(jié)點(diǎn)模塊。四、提交的成果1.課程設(shè)計說明書(1份)A4打印稿,正文部分要求不少于30頁,中文為宋體,英文為TimeNewRoman。正文及目錄格式參考(畢業(yè)設(shè)計論文格式要求)正文包括以下內(nèi)容。系統(tǒng)簡介;需求分析;ZigBee繼電器硬件電氣原理圖設(shè)計;繼電器驅(qū)動程序設(shè)計;ZigBee協(xié)議棧軟件設(shè)計;PC機(jī)Qt圖形界面軟件設(shè)計;摘要、章節(jié)目錄、總結(jié)、參考文獻(xiàn)、致謝等。2.光盤(1張)把完成的所有電子文檔(設(shè)計說明書文檔、打包后可運(yùn)行程序及源程序)一并交由指導(dǎo)老師處。為了統(tǒng)一,資料規(guī)范如下。(1)光盤名稱為“學(xué)號+姓名”,如:14730142周**。(2)光盤根目錄下只包含一個文件夾,文件夾的命名為“學(xué)號+姓名”,該文件夾中包含4部分內(nèi)容:電氣原理圖、PC機(jī)Qt圖形窗體界面圖、軟件程序流程圖和設(shè)計說明書。五、主要參考文獻(xiàn)[1]鐘永鋒,劉永俊.ZigBee無線傳感器網(wǎng)絡(luò)[M].北京郵電大學(xué)出版社.2011[2] 瞿雷,劉盛德,胡咸斌.ZIGBEE技術(shù)及應(yīng)用[M].北京航空航天大學(xué)出版社.2007[3] 王小強(qiáng),歐陽駿,黃寧淋ZigBee無線傳感器網(wǎng)絡(luò)設(shè)計與實(shí)現(xiàn)[M].化學(xué)工業(yè)出版社.2012[4] 青島東合信息技術(shù)有限公司.Zigbee開發(fā)技術(shù)及實(shí)踐.西安電子科大.2014[5] 杭州晶控電子有限公司.教你搭建自己的智能家居系統(tǒng)[M].機(jī)械工業(yè)出版社,2013[6] 鄭阿奇,陳超.Qt4開發(fā)實(shí)踐.電子工業(yè)出版社.2011.[7]李文仲,段朝玉等.ZigBee2007/PRO協(xié)議棧實(shí)驗與實(shí)踐[M].北京航空航天.2011[8] 雷梁.基于ZigBee無線傳感網(wǎng)絡(luò)的嵌入式智能家居監(jiān)控系統(tǒng)研究[P].西華大學(xué).2009.[9]童曉渝,房秉毅,張云勇.物聯(lián)網(wǎng)智能家居發(fā)展分析[J].移動通信.2010[10] 王浩,浦靈敏等.物聯(lián)網(wǎng)技術(shù)應(yīng)用開發(fā)[P].中國水利水電出版社.2014.六、各階段時間安排(共2周)周次日期內(nèi)容地點(diǎn)第1周星期一分組、選題、收集與整理資料教室星期二硬件電氣原理圖設(shè)計教室星期三硬件驅(qū)動程序設(shè)計星期四~星期五ZigBee協(xié)議棧終端節(jié)點(diǎn)開發(fā)軟件設(shè)計第2周星期一ZigBee協(xié)議棧協(xié)調(diào)器開發(fā)軟件設(shè)計教室星期二~星期三PC機(jī)Qt窗體界面設(shè)計教室星期四撰寫課程設(shè)計說明書教室星期五答辯教室2017年6月3日摘要隨著科學(xué)技術(shù)的飛躍發(fā)展,生活水平的不斷提高,人們對安全、舒適、健康的生活需求變得日益迫切。而近年來,智能家居概念已經(jīng)逐漸深入到國民的生活之中,且不斷地影響著人們的思維。因此,眾多有能力的小區(qū)、別墅用戶已經(jīng)開始安裝使用智能家居系統(tǒng),并嘗試智能化為家居生活帶來的安全、舒適和便利。時光飛逝,日夜如梭。室外清潔工作所花費(fèi)的成本與面臨的安全隱患也持續(xù)增大,然而,家庭擦窗時總會遇到這樣的麻煩,窗戶外側(cè)玻璃受到空間限制,擦拭比較困難,尤其是住在高層建筑上的住戶,操作時存在很大的安全隱患,但長時間不擦拭,粘上灰塵,就不美觀了,因此我們的設(shè)計實(shí)現(xiàn)內(nèi)外壁同時擦拭,智能化,集成化度高,操作方便,我們使用zigbee無線傳感網(wǎng)絡(luò)技術(shù)來實(shí)現(xiàn),最后顯在Qt界面上。由于我國房地產(chǎn)行業(yè)的迅速發(fā)展,也帶動了我國門窗幕墻行業(yè)的迅速發(fā)展,隨著消費(fèi)者生活水平的提高,智能化的產(chǎn)品如雨后春筍,正逐步發(fā)展和壯大。而我們的智能窗戶就是在這樣的環(huán)境下應(yīng)運(yùn)而生的,因此具有廣闊的市場空間和應(yīng)用前景。關(guān)鍵字:智能化人性化zigbee技術(shù)一體化系統(tǒng)集成目錄TOC\o"1-3"\h\u1961系統(tǒng)概述 1111151.1系統(tǒng)介紹 1281371.2系統(tǒng)總流程圖 3180792需求分析 3258523Zigbee繼電器硬件電氣原理設(shè)計 5202463.1Zigbee硬件開發(fā)平臺 5177033.2Zigbee采集節(jié)點(diǎn)模塊 6312383.3Zigbee無線傳輸模塊 6147553.4PC機(jī)無線控制執(zhí)行機(jī)構(gòu)與外設(shè)實(shí)現(xiàn)的效果圖 7137763.5關(guān)鍵代碼設(shè)計 7202714.驅(qū)動模塊設(shè)計 9236934.1器件介紹 9241794.2原理設(shè)計 9305784.3繼電器功能流程圖 10149274.4代碼 11190325zigbee協(xié)議棧軟件設(shè)計 14188955.1協(xié)調(diào)器代碼 14205815.2終端節(jié)點(diǎn) 17129596.PC機(jī)Qt圖形界面軟件設(shè)計 21233446.1軟件設(shè)計 2182386.2界面設(shè)計 23204386.3運(yùn)行程序界面 2321733總結(jié) 266613參考文獻(xiàn) 2724092致謝 281系統(tǒng)概述1.1系統(tǒng)介紹隨著生活水平的提高,人們希望擁有一個舒適、便捷、安全的家居環(huán)境,傳統(tǒng)的住宅正向智能化方向轉(zhuǎn)變。在此背景下,設(shè)計了一種基于物聯(lián)網(wǎng)的智能窗簾控制系統(tǒng)。給出系統(tǒng)結(jié)構(gòu)及工作原理,著重闡述主要硬件及軟件的設(shè)計。該系統(tǒng)以嵌入式操作系統(tǒng)為核心,采用ZigBee無線通信技術(shù)實(shí)現(xiàn)信號傳輸,GPRS通信技術(shù)實(shí)現(xiàn)系統(tǒng)遠(yuǎn)程監(jiān)控,實(shí)現(xiàn)了對窗簾的本地與遠(yuǎn)程控制。測試結(jié)果表明該系統(tǒng)運(yùn)行穩(wěn)定,數(shù)據(jù)傳輸正確率高。將該系統(tǒng)應(yīng)用于智能窗簾中,能夠使智能窗簾的控制更加多樣化與智能化,對智能窗簾未來的發(fā)展,具有實(shí)際應(yīng)用價值。智能家居是一個居住環(huán)境,是以住宅為平臺安裝有智能家居系統(tǒng)的居住環(huán)境,實(shí)施智能家居系統(tǒng)的過程就稱為智能家居集成。它將各種家庭設(shè)備通過程序設(shè)置,利用寬帶、固話和3G無線網(wǎng)絡(luò),可以實(shí)現(xiàn)對家庭設(shè)備的遠(yuǎn)程操控。與普通家居相比,智能家居不僅提供舒適宜人且高品位的家庭生活空間,而且能夠?qū)崿F(xiàn)更智能化的家庭控制管理。一方面,智能家居讓用戶有更方便的手段來管理家庭設(shè)備,比如,通過無線遙控器、智能手機(jī)、互聯(lián)網(wǎng)或者語音識別方式控制家用電器,還可以執(zhí)行場景模式稱作,使多個設(shè)備形成聯(lián)動;另一方面,智能家居的各種設(shè)備相互之間可以通信,不需要用戶干預(yù)也能根據(jù)事先設(shè)定的不同條件,相互之間進(jìn)行識別和運(yùn)行,從而給用戶帶來最大程度的高效、便利、舒適與安全。簡而言之,智能家居是以住宅為平臺,兼?zhèn)浣ㄖ⒕W(wǎng)絡(luò)通信、信息家電、設(shè)備自動化,集系統(tǒng)、結(jié)構(gòu)、服務(wù)、管理為一體的高效、舒適、安全、便利、環(huán)保的居住環(huán)境。智能家居發(fā)展的特點(diǎn)和方向智能家居的發(fā)展歷程智能家居的發(fā)展大致經(jīng)歷了4代:第一代只要基于同軸線、兩芯線進(jìn)行家庭組網(wǎng),實(shí)現(xiàn)燈光、窗簾控制和少量安防設(shè)備控制等功能。第二代主要基于rs-485線,部分基于IP技術(shù)進(jìn)行組網(wǎng),實(shí)現(xiàn)可視對講、安防等功能。第三代實(shí)現(xiàn)了智能控制的集中化,主要實(shí)現(xiàn)包括安防、控制計量等業(yè)務(wù)功能。第四代基于IP技術(shù),利用zigbee無線通信技術(shù),智能家居業(yè)務(wù)可根據(jù)用戶需求實(shí)現(xiàn)定制化和個性化。智能家居技術(shù)種類目前市場上比較可靠的智能家居技術(shù)主要有4類:集中布線技術(shù)、無線射頻技術(shù)、電力載波技術(shù)、zigbee無線組網(wǎng)技術(shù)。(1)集中布線技術(shù)它主要應(yīng)用于智能化控制,因為需要布線,所以信號相對穩(wěn)定,比較適合樓宇和小區(qū)智能化等大區(qū)域的控制,但設(shè)備安裝比較復(fù)雜、造價較高。(2)無線射頻識別技術(shù)它利用點(diǎn)對點(diǎn)的射頻技術(shù),實(shí)現(xiàn)對家居和燈光的控制,安裝設(shè)置相對比較方便,但系統(tǒng)功能相對較弱,控制方式也比較單一,易受周圍無線設(shè)備環(huán)境及障礙物的干擾,其主要應(yīng)用于實(shí)現(xiàn)特定功能電器或燈光控制領(lǐng)域。(3)電力載波技術(shù)它無需重新布線,主要利用家庭內(nèi)部的電力線傳輸控制信號,從而實(shí)現(xiàn)對家電和燈光的控制與管理,而且可以不斷升級。功能實(shí)用,比較適合大眾化消費(fèi)。(4)zigbee無線組網(wǎng)通信技術(shù)zigbee從布線上屬于無線技術(shù),具有布線簡單、易擴(kuò)展和易維護(hù)的特點(diǎn)。這使得zigbee可以按照功能要求,構(gòu)建含有任意多個節(jié)點(diǎn)的無線網(wǎng)絡(luò),通信傳輸可以在任意節(jié)點(diǎn)之間進(jìn)行,可以有效節(jié)約人力、物力成本。2.智能家居系統(tǒng)的發(fā)展方向(1)一體化系統(tǒng)集成智能家居在未來發(fā)展過程中,需要將家庭自動化管理,三表計量、安全防范監(jiān)測、火災(zāi)報警以及設(shè)備監(jiān)控等功能進(jìn)行集成,從而提高家庭管理智能化水平。(2)節(jié)能環(huán)保智能家居結(jié)合現(xiàn)有技術(shù)降低功耗,減少對家庭和周圍環(huán)境的污染,提高生活環(huán)境的質(zhì)量,這些都是智能家居今后走入家庭必須考慮的問題。(3)智能化、網(wǎng)絡(luò)化和人性化家庭智能化是當(dāng)代高科技技術(shù)和生物學(xué)技術(shù)的高度綜合和升華,其中網(wǎng)絡(luò)化是信息技術(shù)、通信技術(shù)和計算機(jī)技術(shù)發(fā)展的必然趨勢,是發(fā)展家庭智能化的一個重要條件,個性化體現(xiàn)了以用戶為中心,在家庭構(gòu)建按需所求的智能家居系統(tǒng)。1.2系統(tǒng)總流程圖圖1.1系統(tǒng)總流程圖2需求分析由于我國房地產(chǎn)行業(yè)的迅速發(fā)展,也帶動了我國門窗幕墻行業(yè)的迅速發(fā)展。一般來說,一個建筑物按建筑面積推算,有10%是窗,15%是門,全國每年新建的房屋為20億平方米,門窗的需求量為5億多平方米。如再考慮到原有城鄉(xiāng)房屋建筑的窗戶改造,每年窗戶的安裝量至少達(dá)到10億平方米。全國窗戶消費(fèi)需求空間為500億元,并且還有不斷擴(kuò)大的趨勢。門窗是家庭智能化安全防范系統(tǒng)的一個重要組成部分,是一種智能化的控制系統(tǒng),它由先進(jìn)傳感器(溫度傳感器、風(fēng)雨信號傳感器等)、遙控器及一系列機(jī)械傳動裝置組成,是具有智能化、人性化、網(wǎng)絡(luò)化的高科技產(chǎn)品??梢詫Υ皯暨M(jìn)行隨心所欲的控制和安全設(shè)置,它具有時尚、方便、安全等特點(diǎn),使人們的家居環(huán)境得到較大的改善,智能窗戶控制系統(tǒng)將在具有明顯競爭優(yōu)勢的環(huán)境下找到市場,帶來經(jīng)濟(jì)效益。1.消費(fèi)者智能化意識增強(qiáng),智能產(chǎn)品用戶增多近幾年,在國內(nèi)很多IT和家電企業(yè)紛紛躋身智能家居行業(yè)領(lǐng)域。使得行業(yè)競爭度迅速提升,一時之間市場充滿各種各種智能家居產(chǎn)品,很多人家里都使用總線制的技術(shù)的,傳感器技術(shù),紅外技術(shù),電力載波技術(shù),無線通信組網(wǎng)技術(shù),還有無線射頻技術(shù)。盡管以上這種物品的功能單一,都集中無線搖控、遠(yuǎn)程控制等處,但市場需求依舊龐大。2.市場上現(xiàn)存的部分智能家居產(chǎn)品尚且存在許多不足之處從以上信息我可以看出這些產(chǎn)品多數(shù)不能算是真正意義上的家居智能化,個別產(chǎn)品如電力線載波技術(shù)可以實(shí)現(xiàn)家居的智能化,但是通過消費(fèi)者調(diào)研和專家分析,我發(fā)現(xiàn)這些產(chǎn)品的缺點(diǎn)很多,比如傳輸信息不穩(wěn)定、產(chǎn)品質(zhì)量本身有問題、外觀差等弊病,這些對一般的家庭來說,其成本也是很高的。3.本產(chǎn)品在行業(yè)中的價值鏈分析對于本產(chǎn)品而言,它在行業(yè)中面臨的競爭,我可以通過最為基本的行業(yè)競爭波特五力模式來予以分析。在和供應(yīng)商討價還價方面,該公司在產(chǎn)品的原料上沒有什么太大的門檻,所以在討價還價上幾乎不存在阻力,同時由于生產(chǎn)科技的專利,尚無競爭對手來拼搶原料資源;面對潛在進(jìn)入者的威脅比較小,該產(chǎn)品已經(jīng)注冊,產(chǎn)品研發(fā)科技已經(jīng)申請專利保護(hù),目前產(chǎn)品尚沒有在市場上得到響應(yīng),還沒有企業(yè)關(guān)注,潛在進(jìn)入者的威脅至少在目前還不存在3Zigbee繼電器硬件電氣原理設(shè)計3.1Zigbee硬件開發(fā)平臺CC2530是用于2.4-GHzIEEE802.15.4、ZigBee和RF4CE應(yīng)用的一個真正的片上系統(tǒng)(SoC)解決方案。它能夠以非常低的總的材料成本建立強(qiáng)大的網(wǎng)絡(luò)節(jié)點(diǎn)。CC2530結(jié)合了領(lǐng)先的RF收發(fā)器的優(yōu)良性能,業(yè)界標(biāo)準(zhǔn)的增強(qiáng)型8051CPU,系統(tǒng)內(nèi)可編程閃存,8-KBRAM和許多其它強(qiáng)大的功能。CC2530芯片系列中使用的8051CPU內(nèi)核是一個單周期的8051兼容內(nèi)核。它有三種不同的內(nèi)存訪問總線(SFR,DATA和CODE/XDATA),單周期訪問SFR,DATA和主SRAM。它還包括一個調(diào)試接口和一個18輸入擴(kuò)展中斷單元。中斷控制器總共提供了18個中斷源,分為六個中斷組,每個與四個中斷優(yōu)先級之一相關(guān)。當(dāng)設(shè)備從活動模式回到空閑模式,任一中斷服務(wù)請求就被激發(fā)。一些中斷還可以從睡眠模式(供電模式1-3)喚醒設(shè)備。內(nèi)存仲裁器位于系統(tǒng)中心,因為它通過SFR總線把CPU和DMA控制器和物理存儲器以及所有外設(shè)連接起來。內(nèi)存仲裁器有四個內(nèi)存訪問點(diǎn),每次訪問可以映射到三個物理存儲器之一:一個8-KBSRAM、閃存存儲器和XREG/SFR寄存器。它負(fù)責(zé)執(zhí)行仲裁,并確定同時訪問同一個物理存儲器之間的順序。8-KBSRAM映射到DATA存儲空間和部分XDATA存儲空間。8-KBSRAM是一個超低功耗的SRAM,即使數(shù)字部分掉電(供電模式2和3)也能保留其內(nèi)容。這是對于低功耗應(yīng)用來說很重要的一個功能。32/64/128/256KB閃存塊為設(shè)備提供了內(nèi)電路可編程的非易失性程序存儲器,映射到XDATA存儲空間。除了保存程序代碼和常量以外,非易失性存儲器允許應(yīng)用程序保存必須保留的數(shù)據(jù),這樣設(shè)備重啟之后可以使用這些數(shù)據(jù)。使用這個功能,例如可以利用已經(jīng)保存的網(wǎng)絡(luò)具體數(shù)據(jù),就不需要經(jīng)過完全啟動、網(wǎng)絡(luò)尋找和加入過程。調(diào)試接口執(zhí)行一個專有的兩線串行接口,用于內(nèi)電路調(diào)試。通過這個調(diào)試接口,可以執(zhí)行整個閃存存儲器的擦除、控制使能哪個振蕩器、停止和開始執(zhí)行用戶程序、執(zhí)行8051內(nèi)核提供的指令、設(shè)置代碼斷點(diǎn),以及內(nèi)核中全部指令的單步調(diào)試。使用這些技術(shù),可以很好地執(zhí)行內(nèi)電路的調(diào)試和外部閃存的編程。設(shè)備含有閃存存儲器以存儲程序代碼。閃存存儲器可通過用戶軟件和調(diào)試接口編程。閃存控制器處理寫入和擦除嵌入式閃存存儲器。閃存控制器允許頁面擦除和4字節(jié)編程。I/O控制器負(fù)責(zé)所有通用I/O引腳。CPU可以配置外設(shè)模塊是否控制某個引腳或它們是否受軟件控制,如果是的話,每個引腳配置為一個輸入還是輸出,是否連接襯墊里的一個上拉或下拉電阻。CPU中斷可以分別在每個引腳上使能。每個連接到I/O引腳的外設(shè)可以在兩個不同的I/O引腳位置之間選擇,以確保在不同應(yīng)用程序中的靈活性。系統(tǒng)可以使用一個多功能的五通道DMA控制器,使用XDATA存儲空間訪問存儲器,因此能夠訪問所有物理存儲器。每個通道(觸發(fā)器、優(yōu)先級、傳輸模式、尋址模式、源和目標(biāo)指針和傳輸計數(shù))用DMA描述符在存儲器任何地方配置。許多硬件外設(shè)(AES內(nèi)核、閃存控制器、USART、定時器、ADC接口)通過使用DMA控制器在SFR或XREG地址和閃存/SRAM之間進(jìn)行數(shù)據(jù)傳輸,獲得高效率操作。定時器1是一個16位定時器,具有定時器/PWM功能。它有一個可編程的分頻器,一個16位周期值,和五個各自可編程的計數(shù)器/捕獲通道,每個都有一個16位比較值。每個計數(shù)器/捕獲通道可以用作一個PWM輸出或捕獲輸入信號邊沿的時序。它還可以配置在IR產(chǎn)生模式,計算定時器3周期,輸出是ANDed,定時器3的輸出是用最小的CPU互動產(chǎn)生調(diào)制的消費(fèi)型IR信號。CC2530具有一個IEEE802.15.4兼容無線收發(fā)器。RF內(nèi)核控制模擬無線模塊。另外,它提供了MCU和無線設(shè)備之間的一個接口,這使得可以發(fā)出命令,讀取狀態(tài),自動操作和確定無線設(shè)備事件的順序。無線設(shè)備還包括一個數(shù)據(jù)包過濾和地址識別模塊。3.2Zigbee采集節(jié)點(diǎn)模塊主要作用:用于接收來自傳感器的數(shù)據(jù)信號并通過天線以電磁波的形勢發(fā)送給中央節(jié)點(diǎn)。采集節(jié)點(diǎn)組成包括:天線、單片機(jī)、傳感器。其中單片機(jī)運(yùn)行所有的程序,實(shí)現(xiàn)讀傳感器數(shù)據(jù)以及把數(shù)據(jù)通過天線以電磁波的形勢發(fā)送給中央節(jié)點(diǎn)的作用。3.3Zigbee無線傳輸模塊作用:通過硬件系統(tǒng)和軟件系統(tǒng),從而實(shí)現(xiàn)傳輸模塊與上位機(jī)通信的全過程。經(jīng)調(diào)試,系統(tǒng)運(yùn)行良好。實(shí)踐證明,基于zigbee無線傳輸協(xié)議設(shè)計無線數(shù)據(jù)傳輸模塊來傳輸數(shù)據(jù)具有耗資少、安全性高、靈活性較強(qiáng)等優(yōu)點(diǎn),值得推廣和應(yīng)用。3.4PC機(jī)無線控制執(zhí)行機(jī)構(gòu)與外設(shè)實(shí)現(xiàn)的效果圖zigbee網(wǎng)絡(luò)zigbee網(wǎng)絡(luò)圖3.1無線控制效果圖PC端通過串口發(fā)送打開或關(guān)閉控制命令信息,給zigbee協(xié)調(diào)器,zigbee協(xié)調(diào)器通過無線傳感網(wǎng)絡(luò)發(fā)送至zigbee終端節(jié)點(diǎn)即繼電器接點(diǎn),實(shí)現(xiàn)窗戶和水泵的打開關(guān)閉控制。3.5關(guān)鍵代碼設(shè)計P14、P15初始化為輸出功能。voidRELAY_INT(void){P1DIR|=0x30;//繼電器12輸出P1_4=0;P1_5=0;}然后就可以對P14和P15輸出進(jìn)行操作從而對繼電器的開合進(jìn)行控制。主函數(shù)程序清單voidmain(void){ uint8keyvalue;intClock(); P1DIR|=0x04;//打開電源 P1&=~0x04;RELAY_INT();ugOled9616int();//初始化OLed配置HalAdcInit();delay(10);LcdPutString16_8(0,0,"WXL-WINDOWS",12,1);while(1) { keyvalue=0;keyvalue=halGetJoyKeyInput();switch(keyvalue){case0x01://UPP1_4=1;//K1OPENP1_5=0;//K2CLOSELcdPutString16_8(0,0,"OPEN",12,1);break;case0x02://RIGHTP1_4=0;//K1CLOSEP1_5=1;//K2OPENLcdPutString16_8(0,0,"CLOSE",12,1);break;default:break;}}}4.驅(qū)動模塊設(shè)計4.1器件介紹繼電器(英文名稱:relay)是一種電控制器件,是當(dāng)輸入量(激勵量)的變化達(dá)到規(guī)定要求時,在電氣輸出電路中使被控量發(fā)生預(yù)定的階躍變化的一種電器。它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路)之間的互動關(guān)系。通常應(yīng)用于自動化的控制電路中,它實(shí)際上是用小電流去控制大電流運(yùn)作的一種“自動開關(guān)”。故在電路中起著自動調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路等作用。\o"查看圖片"

電磁繼電器工作原理圖只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產(chǎn)生電磁效應(yīng),銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點(diǎn)與靜觸點(diǎn)(常開觸點(diǎn))吸合。當(dāng)線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點(diǎn)與原來的靜觸點(diǎn)(常閉觸點(diǎn))釋放。這樣吸合、釋放,從而達(dá)到了在電路中的導(dǎo)通、切斷的目的。對于繼電器的“常開、常閉”觸點(diǎn),可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點(diǎn),稱為“常開觸點(diǎn)”;處于接通狀態(tài)的靜觸點(diǎn)稱為“常閉觸點(diǎn)”。繼電器一般有兩股電路,為低壓控制電路和高壓工作電路。4.2原理設(shè)計這里采用兩路繼電器來實(shí)現(xiàn)鏈?zhǔn)酵拼捌鞯拈_關(guān)功能圖4.1繼電器原理圖4.3繼電器功能流程圖圖4.2繼電器功能流程圖窗戶開關(guān)取決于網(wǎng)關(guān)發(fā)送的繼電器命令組合。4.4代碼繼電器命令接收處理代碼如下。voidSampleApp_MessageMSGCB(afIncomingMSGPacket_t*pkt){ uint8RfHaveTxDara=0;//無線有數(shù)據(jù)需要發(fā)送 ieeeAddr=NLME_GetExtAddr(); memcpy(RfRx.RxBuf,pkt->cmd.Data,32); memset(RfTx.TxBuf,'x',32); switch(RfRx.RXDATA.HeadCom[0]){case'R'://讀break;case'T'://測試if((RfRx.RXDATA.HeadCom[1]=='R')&&(RfRx.RXDATA.HeadCom[2]=='E')//控制繼電器{if(SensorNum==6)//繼電器板{if((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='1')){if(RfRx.RXDATA.DataBuf[2]=='1'){Relay1State=1;P1_4=1;}elseif(RfRx.RXDATA.DataBuf[2]=='0'){Relay1State=0;P1_4=0;}}if((RfRx.RXDATA.DataBuf[3]=='K')&&(RfRx.RXDATA.DataBuf[4]=='2')){if(RfRx.RXDATA.DataBuf[5]=='1'){Relay2State=1;P1_5=1;}elseif(RfRx.RXDATA.DataBuf[5]=='0'){Relay2State=0;P1_5=0;}}memcpy(RfTx.TxBuf,RfRx.RxBuf,14);RfTx.TXDATA.DataBuf[0]='O';RfTx.TXDATA.DataBuf[1]='K';RfHaveTxDara=1;}}//end控制繼電器break;case'S'://設(shè)置break; }//end if(RfHaveTxDara)//如果有數(shù)據(jù)要發(fā)送 { RfTx.TXDATA.Head='&'; RfTx.TXDATA.LastByte='*'; SendData(0x0000,RfTx.TxBuf,32);//發(fā)送數(shù)據(jù) RfHaveTxDara=0; }}5zigbee協(xié)議棧軟件設(shè)計5.1協(xié)調(diào)器代碼uint16SampleApp_ProcessEvent(uint8task_id,uint16events){ afIncomingMSGPacket_t*MSGpkt;uint16temp;#if(defined(WXL_ROUTER)||defined(WXL_RFD))//ROUTERORRFDuint16SrcSaddr;#endif(void)task_id;//Intentionallyunreferencedparameterif(events&SYS_EVENT_MSG) {MSGpkt=(afIncomingMSGPacket_t*)osal_msg_receive(SampleApp_TaskID); while(MSGpkt) {switch(MSGpkt->hdr.event) {caseKEY_CHANGE: SampleApp_HandleKeys(((keyChange_t*)MSGpkt)->state,((keyChange_t*)MSGpkt)->keys); break; caseAF_INCOMING_MSG_CMD: SampleApp_MessageMSGCB(MSGpkt); break; caseZDO_STATE_CHANGE: SampleApp_NwkStat(devStates_t)(MSGpkt->hdr.status); if((SampleApp_NwkState=DEV_ROUTER)||(SampleApp_NwkStat==DEV_END_DEVICE)) { HalLedSet(HAL_LED_1,HAL_LED_MODE_ON); memset(RfTx.TxBuf,'x',32); RfTx.TXDATA.Head='&'; RfTx.TXDATA.HeadCom[0]='J'; RfTx.TXDATA.HeadCom[1]='O'; RfTx.TXDATA.HeadCom[2]='N'; ieeeAddr=NLME_GetExtAddr(); memcpy(RfTx.TXDATA.Laddr,ieeeAddr,8);SrcSaddr=NLME_GetShortAddr(); RfTx.TXDATA.Saddr[0]=SrcSaddr;RfTx.TXDATA.Saddr[1]=SrcSaddr>>8;#ifdef WXL_RFD RfTx.TXDATA.DataBuf[0]='R'; RfTx.TXDATA.DataBuf[1]='F'; RfTx.TXDATA.DataBuf[2]='D';#endif #ifdef WXL_ROUTER RfTx.TXDATA.DataBuf[0]='R'; RfTx.TXDATA.DataBuf[1]='O'; RfTx.TXDATA.DataBuf[2]='U';#endif NLME_GetCoordExtAddr(&RfTx.TXDATA.DataBuf[3]);temp=NLME_GetCoordShortAddr();RfTx.TXDATA.DataBuf[11]=(unsignedchar)(temp>>8);RfTx.TXDATA.DataBuf[12]=(unsignedchar)(temp);RfTx.TXDATA.DataBuf[13]=SensorNum;RfTx.TXDATA.LastByte='*';SendData(0x0000,RfTx.TxBuf,32);//發(fā)送自己的節(jié)點(diǎn)信息到主機(jī)if(JY) osal_start_timerEx(SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT, SAMPLEAPP_1000MS_TIMEOUT);//每秒采集一次傳感器數(shù)據(jù) } BreakecaseSPI_INCOMING_ZTOOL_PORT: UartRxComCallBack();//串口收到一帖數(shù)據(jù)的處理 break; default: break; } osal_msg_deallocate((uint8*)MSGpkt); MSGpkt=(afIncomingMSGPacket_t*)osal_msg_receive(SampleApp_TaskID); } return(events^SYS_EVENT_MSG); } if(events&SAMPLEAPP_SEND_PERIODIC_MSG_EVT)//發(fā)送數(shù)據(jù)超時 {osal_start_timerEx(SampleApp_TaskID,SAMPLEAPP_SEND_PERIODIC_MSG_EVT,SAMPLEAPP_1000MS_TIMEOUT);return(events^SAMPLEAPP_SEND_PERIODIC_MSG_EVT); } if(events&SAMPLEAPP_UART_RX_EVT)//串口接收數(shù)據(jù)超時 {return(events^SAMPLEAPP_UART_RX_EVT); } return0;}協(xié)調(diào)器CPU:采用TI公司LM3S9B96;CORTEXM3內(nèi)核;主頻為80MHz。所謂協(xié)調(diào)器,就是網(wǎng)絡(luò)組織的管理者。針對一般的應(yīng)用模式,在一個Zigbee網(wǎng)絡(luò)形成之后,協(xié)調(diào)器不是必須的。它最主要的作用是,依據(jù)掃描情況,選擇一些合適參數(shù)建立一個網(wǎng)絡(luò)?;贑C2420的zigbee協(xié)調(diào)器具有結(jié)構(gòu)簡單、功耗低、成本低等特點(diǎn)。5.2終端節(jié)點(diǎn)voidSampleApp_MessageMSGCB(afIncomingMSGPacket_t*pkt){ uint8RfHaveTxDara=0;//無線有數(shù)據(jù)需要發(fā)送 ieeeAddr=NLME_GetExtAddr(); memcpy(RfRx.RxBuf,pkt->cmd.Data,32); memset(RfTx.TxBuf,'x',32); switch(RfRx.RXDATA.HeadCom[0]){case'R'://讀break;case'T'://測試if((RfRx.RXDATA.HeadCom[1]=='V')&&(RfRx.RXDATA.HeadCom[2]=='F'))//控制排風(fēng)扇{if(SensorNum==6&&DeviceName==12){if((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='1')){P1_4=1;}elseif((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='0')){P1_4=0;}memcpy(RfTx.TxBuf,RfRx.RxBuf,14);RfTx.TXDATA.DataBuf[0]='O';RfTx.TXDATA.DataBuf[1]='K';RfHaveTxDara=1;}}//end控制繼電器elseif((RfRx.RXDATA.HeadCom[1]=='A')&&(RfRx.RXDATA.HeadCom[2]=='L')){if(SensorNum==6&&DeviceName==12){if((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='1')){P1_5=1;}elseif((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='0')){P1_5=0;}memcpy(RfTx.TxBuf,RfRx.RxBuf,14);RfTx.TXDATA.DataBuf[0]='O';RfTx.TXDATA.DataBuf[1]='K';RfHaveTxDara=1;}}//end控制繼電器elseif((RfRx.RXDATA.HeadCom[1]=='A')&&(RfRx.RXDATA.HeadCom[2]=='W')){if(SensorNum==6&&DeviceName==3)//繼電器控制窗戶{if((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='0')){P1_4=0;P1_5=1;}elseif((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='1')){P1_4=1;P1_5=0;}elseif((RfRx.RXDATA.DataBuf[0]=='K')&&(RfRx.RXDATA.DataBuf[1]=='2')){P1_4=0;P1_5=0;}memcpy(RfTx.TxBuf,RfRx.RxBuf,14);RfTx.TXDATA.DataBuf[0]='O';RfTx.TXDATA.DataBuf[1]='K';RfHaveTxDara=1;}}//end控制繼電器break;case'S'://設(shè)置break; } if(RfHaveTxDara)//如果有數(shù)據(jù)要發(fā)送 { RfTx.TXDATA.Head='&'; RfTx.TXDATA.LastByte='*'; SendData(0x0000,RfTx.TxBuf,32);//發(fā)送數(shù)據(jù) RfHaveTxDara=0; }}6.PC機(jī)Qt圖形界面軟件設(shè)計6.1軟件設(shè)計QT是一個1991年由奇趣科技開發(fā)的跨平臺圖形用戶界面應(yīng)用程序開發(fā)框架。廣泛用于開發(fā)GUI程序,這種情況下又被稱為部件工具箱。也可用于開發(fā)非GUI程序,比如控制臺工具和服務(wù)器。它是Digia公司的產(chǎn)品。QT使用標(biāo)準(zhǔn)的C++和特殊的代碼生成擴(kuò)展(稱為元對象編譯器(MetaObjectCompiler,moc))以及一些宏。通過語言綁定,其他的編程語言也可以使用QT。QT是自由且開放源代碼的軟件,在GNU較寬松公共許可證條款下發(fā)布。所有版本都支持廣泛的編譯器,包括GCC的C++編譯器和VisualStudio。Qt開放源代碼,并且提供自由軟件的用戶協(xié)議。使得它可以被廣泛地應(yīng)用在各平臺上的開放源代碼軟件開發(fā)中。Qt提供三種授權(quán)方式。三種授權(quán)方式的功能、性能都沒有區(qū)別,僅在于授權(quán)協(xié)議的不同。LGPL和GPL是免費(fèi)發(fā)布,商業(yè)版則需收取授權(quán)費(fèi)。Qt商業(yè)版-Qt商業(yè)授權(quán)適用于開發(fā)專屬和/或商業(yè)軟件。此版本適用于不希望與他人共享源代碼,或者遵循GNU寬通用公共許可證(LGPL)2.1版或GNUGPL3.0版條款的開發(fā)人員。提供了技術(shù)支持服務(wù)??梢匀我獾男薷腝t的源代碼,而不需要公開。GNULGPLv.2.1-Qt4.5.0及以后的版本開始遵循GNULGPL。LGPL允許鏈結(jié)到它的軟件使用任意的許可證,可以被專屬軟件作為類庫引用、發(fā)布和銷售??梢再徺I支持服務(wù)。GNUGPLv.3.0-如果您希望將Qt應(yīng)用程序與受GNU通用公共許可證(GPL)3.0版本條款限制的軟件一同使用,或者您希望Qt應(yīng)用程序遵循該GNU許可證版本的條款,則此版本Qt適用于開發(fā)此類Qt應(yīng)用程序??梢再徺I支持服務(wù)。Qt的圖形用戶界面的基礎(chǔ)是QWidget。Qt中所有類型的GUI組件如按鈕、標(biāo)簽、工具欄等都派生自QWidget,而QWidget本身則為QObject的子類。Widget負(fù)責(zé)接收鼠標(biāo),鍵盤和來自窗口系統(tǒng)的其他事件,并描繪了自身顯示在屏幕上。每一個GUI組件都是一個widget,widget還可以作為容器,在其內(nèi)包含其他Widget。QWidget不是一個抽象類型。并且可以被放置在一個已存在的用戶界面中;若是Widget沒有指定父Widget,當(dāng)它顯示時就是一個獨(dú)立的視窗、或是一個頂層widget。QWidget顯示能力包含了透明化及Double-Buffering。Qt提供一種托管機(jī)制,當(dāng)Widget于創(chuàng)建時指定父對象,就可把自己的生命周期交給上層對象管理,當(dāng)上層對象被釋放時,自己也被釋放。確保對象不再使用時都會被刪除。Qt利用信號與槽(signals/slots)機(jī)制取代傳統(tǒng)的callback來進(jìn)行對象之間的溝通。當(dāng)操作事件發(fā)生的時候,對象會發(fā)提交一個信號(signal);而槽(slot)則是一個函數(shù)接受特定信號并且運(yùn)行槽本身設(shè)置的動作。信號與槽之間,則通過QObject的靜態(tài)方法connect來鏈接。信號在任何運(yùn)行點(diǎn)上皆可發(fā)射,甚至可以在槽里再發(fā)射另一個信號,信號與槽的鏈接不限定為一對一的鏈接,一個信號可以鏈接到多個槽或多個信號鏈接到同一個槽,甚至信號也可連接到信號。以往的callback缺乏類型安全,在調(diào)用處理函數(shù)時,無法確定是傳遞正確型態(tài)的參數(shù)。但信號和其接受的槽之間傳遞的數(shù)據(jù)型態(tài)必須要相符合,否則編譯器會提出警告。信號和槽可接受任何數(shù)量、任何型態(tài)的參數(shù),所以信號與槽機(jī)制是完全類型安全。信號與槽機(jī)制也確保了低耦合性,發(fā)送信號的類型并不知道是哪個槽會接受,也就是說一個信號可以調(diào)用所有可用的槽。

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論