




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第頁共29頁基于STM32單片機的的環(huán)境狀態(tài)的實時監(jiān)控系統(tǒng)設(shè)計目錄TOC\o"1-3"\h\u305351緒論 281781.1課題產(chǎn)生的背景 3184641.2物聯(lián)網(wǎng)服務(wù)器的現(xiàn)狀及研究的意義 3271931.3物聯(lián)網(wǎng)服務(wù)器研究的現(xiàn)狀 4287841.4本文主要內(nèi)容 589482整體方案設(shè)計 6235212.1系統(tǒng)概述 681552.2系統(tǒng)的設(shè)計原則 6100112.3系統(tǒng)實現(xiàn)的功能 7311103系統(tǒng)硬件的開發(fā) 8257833.1STM32核心開發(fā)板的說明 8294523.2ESP8266模塊簡介 9125843.3溫濕度模塊 10126753.4電源模塊設(shè)計 1155993.5LED燈電路 12273154采集部分的軟件實現(xiàn) 1365434.1開發(fā)環(huán)境 13152334.2系統(tǒng)整體工作流程圖 1361644.3DHT11溫濕度采集部分流程 1426904.4ESP8266的傳輸數(shù)據(jù)的實現(xiàn) 1651175物聯(lián)網(wǎng)服務(wù)器的實現(xiàn) 176665.1服務(wù)器相關(guān)技術(shù)的說明 17112695.2集中監(jiān)控前端界面的實現(xiàn) 1860405.3數(shù)據(jù)庫的設(shè)計 19190175.4集中監(jiān)控各個功能的說明 20115626電路板的制作與系統(tǒng)調(diào)試 26274046.1電路板制作 2623906.2單片機HEX文件的生成和燒入 267126.3系統(tǒng)的聯(lián)調(diào) 27200997結(jié)論 31摘要目前,基于物聯(lián)網(wǎng)的智能監(jiān)控設(shè)備出現(xiàn)在各種應(yīng)用場景中,隨著使用范圍的擴大需要接入的設(shè)備的種類越來越多,需要適應(yīng)的協(xié)議也越來越多,為滿足這一需求。本系統(tǒng)采用云服務(wù)作為物聯(lián)網(wǎng)服務(wù)器,本服務(wù)器借鑒了傳統(tǒng)網(wǎng)絡(luò)中常用的B/S結(jié)構(gòu),針對物聯(lián)網(wǎng)的特點提出了服務(wù)端和采集端的概念,組件監(jiān)控系統(tǒng)。本畢業(yè)設(shè)計完成以下工作。(1)采集功能的實現(xiàn)。本系統(tǒng)使用STM32F103為核心控制單元,在硬件功能設(shè)計中配置ESP8266作為通訊模塊與服務(wù)端進行通訊,使用核心控制控制單元中的串口功能為傳統(tǒng)非IP設(shè)備提供接入能力,實現(xiàn)其IP化。(2)基于傳統(tǒng)互聯(lián)網(wǎng)的架構(gòu),使用現(xiàn)有互聯(lián)網(wǎng)接入設(shè)備;采用C/S模式,實現(xiàn)服務(wù)器與各個采集點的信息的傳輸;在通訊協(xié)議上遵循TCP/IP協(xié)議和訪問方法。(3)使用常規(guī)云服務(wù)組建服務(wù)端。本畢業(yè)設(shè)計中采用的服務(wù)器軟件是Tomcat-8.1;后臺數(shù)據(jù)庫軟件是MySQL,Client端采用Bootstrap4.前端框架進行開發(fā),使用JAVA語言完成系統(tǒng)開發(fā)。滿足了多屏幕,多平臺,多場景下的使用需求。(4)功能的驗證和性能的測試。在采集端的硬件設(shè)計和編碼完成后,以及服務(wù)端的組建和編碼后,對本畢業(yè)設(shè)計中設(shè)計的功能進行了聯(lián)調(diào)聯(lián)試,測試內(nèi)容包含C端的數(shù)據(jù)采集,ESP8266與服務(wù)端的通訊,以及各個監(jiān)控端的展示。經(jīng)過對監(jiān)控端的應(yīng)用數(shù)據(jù)分析可知,本次設(shè)計的基于物聯(lián)網(wǎng)的服務(wù)器系統(tǒng),在服務(wù)端性能穩(wěn)定,反應(yīng)迅速,吞吐能力強;在接入端適用范圍廣,接入成本低,魯棒性強,性價比高;監(jiān)控管理端使用網(wǎng)頁瀏覽方式,使用便捷、高效同時滿足了大屏和小屏的使用需求,能夠?qū)崿F(xiàn)采集端實時信息獲取和遠程操作。關(guān)鍵詞:采集端;WEB后臺管理;STM32;ESP8266;集中監(jiān)控1緒論1.1課題產(chǎn)生的背景從古至今,遠程指揮、遠程控制這些話題就深深的吸引著人們不斷的去探索。特別是隨著信息時代的到來,無線通訊技術(shù)、語音通訊技術(shù)、數(shù)據(jù)交換技術(shù)得到迅速發(fā)展,并應(yīng)用到生活的方方面面。像生活中所用的短信通話和個人視頻,在電信網(wǎng)絡(luò)的連續(xù)升級迭代中,已成為必備的公共產(chǎn)品。而遠程控制,還處在市場爆發(fā)的初期。經(jīng)過歷次產(chǎn)品的升級換代,智能手機已經(jīng)成為市場產(chǎn)品的主流,已經(jīng)成為人們居家日常必備的生活資料和基本的生活配置。從技術(shù)上講,在受控端和被控端端信息處理能力具備后,端與端聯(lián)接能力允許后。完成控制的整個流程,只需要端與端之間數(shù)據(jù)接口完美的匹配,實現(xiàn)發(fā)控端和受控端之間信息的發(fā)送和接收,就實現(xiàn)了遠程控制的整個流程。為了實現(xiàn)了多頻次大規(guī)模的應(yīng)用,技術(shù)人員又設(shè)計了具備中轉(zhuǎn)功能的服務(wù)器,專門處理收和發(fā)。以更加強大的處理能力,適應(yīng)應(yīng)用的需求。隨著超微電子技術(shù)和通訊技術(shù)的進步,以片上系統(tǒng)和專用功能芯片為代表的各種各樣的微控制器迅速的被市場接受,在信息處理能力信息交換能力的瓶頸被突破后,形成了不同應(yīng)用狀況下的多種解決方案。STM32和ESP8266就是信息處理和信息交換環(huán)節(jié)中優(yōu)秀的代表。STM32是一個基于ARM內(nèi)核的處理平臺,可以具體的使用場景選擇適合的產(chǎn)品,使用C語言和keil一體化的IDE。ESP8266是一種優(yōu)秀的無線信息傳輸技術(shù),以較低造價,極低的功耗設(shè)計,而著稱,非常適合物聯(lián)網(wǎng)的使用場景,推廣以來受到許各行設(shè)計人員的青睞。在逐步解決控制和連接問題后,建立一個能快速、穩(wěn)定的后臺服務(wù)來支持控制和受控。因此,建立了基于網(wǎng)絡(luò)應(yīng)用程序的服務(wù)器,與互聯(lián)網(wǎng)上的大型數(shù)據(jù)、云計算等技術(shù)相結(jié)合,普及到日常生活的每一處地方。1.2物聯(lián)網(wǎng)服務(wù)器的現(xiàn)狀及研究的意義物聯(lián)網(wǎng)控制設(shè)備的功能可以滿足人們?nèi)粘I畹男枨?。它直接?lián)系著人們的生產(chǎn)和生活。關(guān)于它的研究的重要性和廣泛性是不言而育的。第一,物聯(lián)網(wǎng)控制設(shè)備讓,人們從日常生活中復雜的家務(wù)中解放,可以滿足自己的需求,投入更多的勞動時間去生產(chǎn)和學習避免了時間的浪費,縮短了工作時間,為其他的工作帶來的時間的保證。其次,工業(yè)化的勞動產(chǎn)品為滿足人們對高品質(zhì)、高性能的需求提供了堅實的物質(zhì)基礎(chǔ),為用戶的使用感受帶來了質(zhì)的飛躍,提高了用戶體驗。另一方面是巨大的需求和廣闊的市場。白色的家用器具創(chuàng)造了巨大的產(chǎn)業(yè),并且誕生了很多擁有巨大影響力的公司。抓住這樣機會的國家,推動了國家經(jīng)濟的發(fā)展,通過家電產(chǎn)業(yè)進入了經(jīng)濟發(fā)達國家的行列。例如,日本通過對模擬電子技術(shù)的學習和研究,為經(jīng)濟發(fā)展貢獻了巨大的GDP,另一個例子是韓國的三星和LG。他們對消費通信產(chǎn)品的深度培育使他們的經(jīng)濟有了質(zhì)的飛躍。到目前為止,三星手機的銷量還是排名第一。隨著物聯(lián)網(wǎng)、云計算等新技術(shù)的不斷使用,特別是人工智能技術(shù)的迅猛發(fā)展,將為傳統(tǒng)家居行業(yè)如虎添翼,創(chuàng)造巨大的產(chǎn)業(yè)空間,制造巨大的產(chǎn)業(yè)價值。因此,研究是當務(wù)之急,具有廣闊的前景。1.3物聯(lián)網(wǎng)服務(wù)器研究的現(xiàn)狀20世紀60年代到70年代,物聯(lián)網(wǎng)控制設(shè)備在西方國家出現(xiàn)雛形。由于技術(shù)發(fā)展有限和一些不可克服的缺點,它沒有得到普及和廣泛應(yīng)用。但是,各種遠程控制設(shè)備以及基于各種便利使用方法的智能措施正在各種遠程控制設(shè)備中使用。一般的紅外線遙控器、智能定時控制設(shè)備、基于馬達的最佳控制算法等都大大提高生產(chǎn)效率、降低勞動強度的方法和措施都廣泛的使用在各種設(shè)備當中。能提供智能化方法和措施的遠程控制設(shè)備誕生于21世紀初,隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,特別是互聯(lián)網(wǎng)+,片上系統(tǒng)的普及,遠程控制設(shè)備的應(yīng)用越來越普及。因此,歐美等發(fā)達國家國家將其廣泛應(yīng)用于農(nóng)業(yè)、醫(yī)療、教育等領(lǐng)域,對物聯(lián)網(wǎng)控制設(shè)備進行了比較深入的研究和開發(fā)。特別是智能手機的普及促進了物聯(lián)網(wǎng)控制設(shè)備行業(yè)的快速發(fā)展。通過非常普及的集中監(jiān)控,遠程控制受控端的設(shè)備,人們可以依靠這種模式應(yīng)用于社會的各種行業(yè),如遠程指導和控制、家庭醫(yī)療、無線通訊、網(wǎng)絡(luò)服務(wù)行業(yè)。這把物聯(lián)網(wǎng)這種虛擬的東西實際化,變成可為人們提高生活質(zhì)量的新技術(shù)?;谡瓗扞oT技術(shù)和嵌入式技術(shù)的迅速發(fā)展是物聯(lián)網(wǎng)遠程控制設(shè)備的前提。另一方面,隨著經(jīng)濟水平的提高,物質(zhì)基礎(chǔ)不斷充裕,人們對家庭生活的品味以及個人體的驗要求也逐漸多元化。行業(yè)管理部門,為了培育新的經(jīng)濟增長點,發(fā)展新的產(chǎn)業(yè),建立新的產(chǎn)能,出臺了一系列的產(chǎn)業(yè)扶植政策,結(jié)合國家總體發(fā)展規(guī)劃和布局,業(yè)界對智能家居的市場前景和市場是看好的。但也存在一些明顯的短板,其中最重要的一條就是核心技術(shù)自有程度低,芯片層面的產(chǎn)品、自有產(chǎn)權(quán)的軟件產(chǎn)品,國產(chǎn)率不足;能自己自主可控的產(chǎn)品處在產(chǎn)業(yè)的低端,低附加值部分。在產(chǎn)業(yè)領(lǐng)域內(nèi)的產(chǎn)品的集成度低,沒有形成核心的產(chǎn)業(yè)標準和技術(shù)規(guī)范,大多處在自由發(fā)揮階段;智能化產(chǎn)品智能能力不足,設(shè)備兼容性差,產(chǎn)品應(yīng)用場景有限;軟件和硬件標準安全性驗證能力不足。最后,智能化家居產(chǎn)品價格昂貴,使智能家居的、推廣和銷售比較困難。通過廣泛使用的智能手機通過物聯(lián)網(wǎng)服務(wù)器遙控終端設(shè)備,可以在智能家居行業(yè)、遠程控制、家庭健身、專用短信服務(wù)等多個領(lǐng)域得到應(yīng)用。物聯(lián)網(wǎng)從基本概念擴充到實體產(chǎn)業(yè),從論文走到到實際生活,把萬物聯(lián)系起來,使之成為可以觸摸、查看和使用的新技術(shù)。根據(jù)研究部門預(yù)測預(yù)測,不久將形成成熟,穩(wěn)定的市場。隨著政府政策的刺激和投資的驅(qū)動,使用物聯(lián)網(wǎng)技術(shù)的自動化家居產(chǎn)品會越來越多的出現(xiàn)在廠家的產(chǎn)品目錄中,創(chuàng)造巨大的產(chǎn)業(yè)價值。1.4本文主要內(nèi)容本文共分為七個部分第一部分主要闡述了本系統(tǒng)使用技術(shù)的背景、現(xiàn)狀和前景,說明了智能化產(chǎn)品的廣闊的市場。闡述了項目立項的原因、依據(jù)及需要解決的問題。闡明了系統(tǒng)開發(fā)的重點和具體目標。第二部分:主要是本畢業(yè)設(shè)計的總體結(jié)構(gòu)和技術(shù)說明。本文主要介紹了系統(tǒng)的設(shè)計原理和各模塊的功能,并依據(jù)本畢業(yè)設(shè)計開題報告的要求畫出可系統(tǒng)功能框圖,分別對各個部分使用的技術(shù)進行簡要的介紹。第三部分:介紹所涉及的主要功能模塊,并說明開發(fā)重點和開發(fā)目的;對使用方法和開過程過程予以明確。從STM32最小系統(tǒng)和相關(guān)電路設(shè)計入手,逐步完成本課題的硬件設(shè)計。第四部分:軟件部分的設(shè)計和編碼,在軟件實現(xiàn)整體流程上畫出路線圖。采用了軟件常用的開發(fā)流程來實現(xiàn)軟件的功能、即需求分析、總體設(shè)計、詳細設(shè)計、編碼和測試。首先對需求進行了梳理,解耦了對象的關(guān)系,明確了各個模塊的邊界,并根據(jù)開發(fā)難度對各個模塊進行了詳細描述。第五部分:完成了物聯(lián)網(wǎng)服務(wù)器前端和后端的開發(fā)功能,實現(xiàn)集中監(jiān)控和遠程控制.第六部分:測試驗證根據(jù)設(shè)計方案,采用多種試驗方法進行測試,遵循軟件的測試流程,編寫測試用例,驗證設(shè)計完成情況。第七部分:對完成此次畢業(yè)設(shè)計的總結(jié)與體會。
2整體方案設(shè)計2.1系統(tǒng)概述本畢業(yè)設(shè)計功能上分硬件實現(xiàn)和軟件實現(xiàn)兩部分,從信息處理的角度分為四個部分:核心處理部分即主程序、信息的產(chǎn)生、信息的加工處理、信息的應(yīng)用三個部分。系統(tǒng)功能框圖如下:圖2-1系統(tǒng)架構(gòu)說明圖從圖上可以看出,系統(tǒng)以STM32為核心處理芯片,通過溫度濕度監(jiān)測模塊,采集原始信息,以WIFI為通訊模塊,將信息傳輸至遠端物聯(lián)網(wǎng)服務(wù)器,并通過B/S模式將信息推送給用戶。2.2系統(tǒng)的設(shè)計原則本系統(tǒng)設(shè)計了一個以STM32為核心的硬件系統(tǒng),此系統(tǒng)完成對對環(huán)境狀態(tài)的實時監(jiān)控。以單片機為核心的嵌入式系統(tǒng)是軟件與硬件的結(jié)合,軟硬一體化專用的設(shè)備常常用在專業(yè)的場合。因此必須遵循可靠性,易維護性,可擴展性的設(shè)計原則才能滿足實用的需求。因此這里提出幾個要原則指導開發(fā)的進行。(1)以應(yīng)用為導向以系統(tǒng)集成為核心。任何嵌入式的開發(fā)必須以實用性為向?qū)?,樸素的思想就是帶著實際的應(yīng)用任務(wù)來開發(fā),嚴格遵守目標導向。系統(tǒng)的處理能力,開發(fā)成本,實用成本,設(shè)備功耗,體積,魯棒性都要考慮在內(nèi),以便開發(fā)者更好的使用相關(guān)資源完成系統(tǒng)的集成。(2)便于快速開發(fā)最大化的節(jié)省開發(fā)成本。優(yōu)先使用成熟技術(shù),借鑒成熟設(shè)計,最大化的減少對硬件的電路設(shè)計,軟件底層代碼的編寫。這樣會大大減少調(diào)試時間;成熟的產(chǎn)品,成熟的設(shè)計在應(yīng)用方面有眾多的資料可以使用,眾多廠家良好的支持,減少不必要的工作量。(3)軟件硬件開發(fā)相輔相成互相促進嵌入式系統(tǒng)對使用者來說是一體化的設(shè)備,從使用者的角度來說,硬件軟件是一體的,所以在開發(fā)階段需要軟件硬件聯(lián)調(diào)聯(lián)試,綜合分析從軟件的角度最大化發(fā)揮硬件的功能,從硬件的增強系統(tǒng)的可靠性和易維護性,提高執(zhí)行速度和增加可擴展性。最大可能的避免軟硬件獨立設(shè)計而帶來的盲區(qū)。2.3系統(tǒng)實現(xiàn)的功能(1)系統(tǒng)的自身的檢測功能因為本系統(tǒng)是遠端采集,集中監(jiān)控具有遠程控制的功能,所以系統(tǒng)上電后,需要對自身進行自動檢測,所有工作組件需要達到預(yù)定的工作狀態(tài)后,方能進入工作模式,自檢不通過需要對應(yīng)的人工干預(yù),保證采集系統(tǒng)和控制系統(tǒng)正常運行。(2)遠端設(shè)備采集功能和信息通訊功能當部署在站外遠端的具有溫濕度感應(yīng)的信息后,單片機接收到信息后通過ESP8266無線通訊模塊把信息傳輸至后物聯(lián)網(wǎng)服務(wù)器。(3)集中監(jiān)控和遠程控制功能當部署在互聯(lián)網(wǎng)的服務(wù)器在接收到遠端設(shè)備發(fā)來的溫濕度信息后,通過對應(yīng)的后臺服務(wù)寫入數(shù)據(jù)庫完成信息的歸集,供集中監(jiān)控來使用。在集中監(jiān)控客戶端發(fā)送特定的字符至采集端,經(jīng)過采集端解析確認后,驅(qū)動對應(yīng)的設(shè)備完成遠端控制功能。
3系統(tǒng)硬件的開發(fā)3.1STM32核心開發(fā)板的說明STM32的介紹:在本次畢業(yè)設(shè)計中,核心元器件的選型是STM32單片機。就目而言它是使用率最高的32位單片機,就其能耗比和空間效率上都能達到本次畢業(yè)設(shè)計對核心處理器的需求。STM32廣泛大量的使用,形成了諸多成熟設(shè)計方案。因此使用本芯片,設(shè)計路線,處理方法,都比較多,相關(guān)設(shè)計成本比較低。且是我們有專門的課程進行大量的實際操作,對其內(nèi)部功能,開發(fā)環(huán)境,設(shè)計模式都有比較清晰的認識。為了使項目推進更加順利,所以本次設(shè)計選用STM32。此次使用芯片的實際產(chǎn)品是stm32f103c8t6。該芯片是基于ARM內(nèi)核的嵌入式微處理器,CPU對應(yīng)的晶體頻率達到了168MHz。本畢業(yè)設(shè)計選取的芯片封裝格式為LQFP48,在其正常工作的狀態(tài)下功耗極低,電流在uA級別就能驅(qū)動stm32f103c8t6正常使用其主要參數(shù)如表1所示表1選用主控芯片簡介表參數(shù)類型數(shù)值1CPU主頻率72MHz2封裝LQFP483SRAM20K4FLASH64K5輸入/輸出線數(shù)326串口通訊數(shù)量3個7SPI通訊28CAN通訊19模擬信號讀取20個通道10工作電源電壓2-3.6V該最小系統(tǒng)通常必須包含STM32芯片、供電部分、時鐘部分、和復位電路,具備以上條件STM32便可以使用并執(zhí)行相關(guān)任務(wù)。1.系統(tǒng)一般是使用4.7v-5.2v的電源,但通常使用的是5V供電。在51系列片單機中,3V-5V的電源和2.7v-5.5v的電源正常工作,通常我們在電源設(shè)計中提供5V或3.3v,方便地與外部電路的電壓一致,滿足整個系統(tǒng)的供電需求。2.時鐘電路晶體振蕩器的特征在于高精度和穩(wěn)定性。晶體振蕩器也稱為諧振器,諧振元件的原料為自然界的石英晶體,在電壓的作用下產(chǎn)生電子芯片可到達的頻率,為芯片提供精準的時序。3.復位電路當前狀態(tài)返回到初始化狀態(tài)。復位電路的功能是將現(xiàn)在狀態(tài)恢復到已設(shè)定的初始狀態(tài),后續(xù)工作從這個初始狀態(tài)開始。在這是單片機電路必備且必須的輔助電路。在STM32系統(tǒng)中預(yù)留了專門的額復位管腳,只需在其外圍配置適當?shù)陌存I,給其簡單的觸發(fā)信號,就可以實現(xiàn)STM32核心處理單元內(nèi)部功能的重啟。其工作方式為復位管腳高電平,系統(tǒng)復位,芯片啟動boot,開始正常工作;低電平系統(tǒng)停止工作。系統(tǒng)設(shè)置復位電路功能主要是以實現(xiàn)系統(tǒng)的穩(wěn)定運行。圖3-1STM32最小系統(tǒng)原理圖3.2ESP8266模塊簡介ESP8266能提供良好控制的WiFi軟件。因為芯片本身就是32位的,所以本身能獨立運行,不依賴于其他設(shè)備的功能。作為WiFi功能模塊的微控制器可以與其他MCU結(jié)合作為連接網(wǎng)絡(luò)的解決方案,而ESP8266相當于連接到互聯(lián)網(wǎng)的網(wǎng)卡。這種連接方式很簡單,只與SPI/SDO或I2C/UART結(jié)合。ESP8266具有很強的視頻處理和存儲能力,使GPIO能夠?qū)鞲衅骱推渌囟☉?yīng)用設(shè)備集成到系統(tǒng)資源中,該芯片使用3.3V直流電源。芯片優(yōu)點很多,如體積小,低電,功能強,使用方便,傳輸透明。該ROM能支撐絕大部分的使用場景,切使用簡單,無論是硬件處理還是軟件編程上。廠家在產(chǎn)品方面提供了各種各樣的封裝形式和型號滿足不同使用場景的需要,廠家對其編號為ESP01-12,具體可以通過查閱芯片說明書選用自己需要的型號。以上12種型號只是在管腳形式和內(nèi)部存儲有略微差別,經(jīng)常使用的是郵票圓孔和插針方式,可以指直接焊接在主控板上。電路圖如下:圖3-2ESP8266模塊原理圖3.3溫濕度模塊DHT11數(shù)字溫度和濕度傳感器是同時具備溫度測定和濕度測定功能的環(huán)境感知元器件,它能將輸出的數(shù)字溫濕度信號進行校對,保證了產(chǎn)品的穩(wěn)定性和靈活性,這得益于它出色的采集和檢測技術(shù)。它由個濕度感知元件和一個NTC熱敏元件祖成,所有信息有一個內(nèi)部的8位處理器來處理。因此,該產(chǎn)品性能優(yōu)良,反應(yīng)迅速,魯棒性強,極具性價比。每個產(chǎn)品廠家要進行單獨的測試,并根據(jù)測試情況進行專門的校正,把調(diào)制參數(shù)寫進內(nèi)部的單片機中,保證輸出參數(shù)的精準正確。該模塊整體構(gòu)造為單線結(jié)構(gòu),單線信號傳輸可以達到20米左右。這對系統(tǒng)集成很方便,簡單而方便的使用,非常低的功耗和芯片適應(yīng)對各種惡劣的條件。普遍使用在各種熱電、廚房電器、汽車、醫(yī)療保健和工業(yè)系統(tǒng)。DHT11的DATA管腳與微控制器與的數(shù)據(jù)口相連,采用但總線結(jié)構(gòu)與MCU進行同步通信。一次數(shù)據(jù)輸出大約耗時4ms其數(shù)據(jù)格式如下:8bit(濕度整數(shù))+8bit(濕度小數(shù))+8bit(溫度整數(shù))+8bit(溫度小數(shù))+8bit校驗和;當單片機與DHT11相連接上電后,STM32發(fā)出一個RST指令,DHT11的核心處理器自動把自身的功耗模式調(diào)整到高即正常工作模式,此時DHT11完成復位操作;接著DHT11自身控制系統(tǒng),拉高控制口電壓至5V,經(jīng)過系統(tǒng)延時,發(fā)送出去收集信息。這個模塊更依賴于時序,因此當它在進行編程時,通常發(fā)送一個重新啟動命令來減少干擾,。最好的方法是讓系統(tǒng)的完全中斷,然后在其能接收到信號開啟。DHT11在開發(fā)過程中被默認為低能耗模式,因此如果不激活外部信號,它就不會自動接收數(shù)據(jù),所以第一條件就是向MCU發(fā)送復位信號。DHT11在設(shè)計的時候其運行狀態(tài)已經(jīng)默認為低功耗模式,所以在沒有外來信號激活的情況下不會自動采集數(shù)據(jù),所以MCU對其發(fā)送復位信號是其發(fā)送溫濕度信息的首要條件。其時序圖如下:圖3-3DHT11時序圖STM32在數(shù)據(jù)位上輸出低電平并最低保持18ms,然后輸出高電平20-40us以上,經(jīng)過拉低再拉高的過程,DHT11便開始工作。DHT11采集到RST命令后,開始激活內(nèi)部系統(tǒng)并開始采集環(huán)境參數(shù),同時系統(tǒng)內(nèi)MCU在數(shù)據(jù)管腳輸出80ms的高電平,給內(nèi)部采集系統(tǒng)足夠的時間來采集環(huán)境參數(shù),并對核心處理器表明自己可以輸出數(shù)據(jù)了。經(jīng)過核心處理器芯片發(fā)出RST信號,拉低再拉高,接收到采集模塊的80ms的低電平,STM32便可以接收信息了,實現(xiàn)一次采集操作。圖3-4DHT11模塊原理圖3.4電源模塊設(shè)計該系統(tǒng)的電源是使用芯片ME6211工作,以miniusb為電源接口,有非常高的精度和非常低的噪音控制,反應(yīng)迅速,由于其比較好的線性穩(wěn)壓特性,經(jīng)常用于手持設(shè)備,相機,藍牙設(shè)備。ME6211內(nèi)部設(shè)置了的電源參考,精心設(shè)計的誤差電路,高效的限制電路,相位補償電路等等。圖3-5系統(tǒng)電源模塊原理圖3.5LED燈電路LED燈電路設(shè)計比較簡單,有STM32單片機的直接PB12控制,控制邏輯位正邏輯控制,管腳輸出高電平亮,輸出低電平滅。此處LED的作為客戶端控制操作結(jié)果的展示,如圖3-6所示圖3-6LED燈的遠端控制自此本系統(tǒng)中使用的硬件以及使用的方法都進行了闡述,并通過設(shè)計電路圖完成各個元器件的連接。眾所周知系統(tǒng)硬件是軟件之母是一切應(yīng)用功能的載體,是整個系統(tǒng)穩(wěn)定運行的底線,所以任何一款有單片機系統(tǒng)的設(shè)計都需要對電路精心設(shè)計。本設(shè)計的系統(tǒng)架構(gòu)是在STM32核心板基礎(chǔ)之上不斷擴展相關(guān)功能電路來完成,在以后的設(shè)計與制作中需要不斷完善與創(chuàng)新,才能制作出更好,更適應(yīng)市場產(chǎn)品。
4采集部分的軟件實現(xiàn)4.1開發(fā)環(huán)境本次畢業(yè)設(shè)計,軟件編寫的的集成IDE是keil.它是keilsoft于2013年10月推出集成開發(fā)環(huán)境,由keilmdkv5以及相關(guān)軟件組成。它是ARM內(nèi)核單片機最便捷也是使用最多的開發(fā)工具。mdkv5與keilmdk-armuvision4具很強的兼容性,可以兼容以前所有的版本,mdkv5可以與以前任何的版本并行使用。mdkv5主要特點是特別強調(diào)了對32位ARM微控制器的支持,將原有的界面和開發(fā)模式升級成為mdkcore和SoftwarePacks。軟件開發(fā)包可以單獨進行升級以支持眾多的芯片,且無需開發(fā)集成環(huán)境的支持。無論是使用freertos還是keil自身的rtx,圖形包都可以獨立于集成環(huán)境而單獨運行,支持新的芯片和中間應(yīng)用庫的升級。即使使用相關(guān)的操作系統(tǒng)或是使用keil自身的圖形工具,經(jīng)過IDE集成的配置工具簡單配置,都可以簡單便捷的生成對應(yīng)芯片所需的編譯環(huán)境以和驅(qū)動文件,其過程有軟件自動生成,開發(fā)者只需關(guān)注自己應(yīng)用程序的開發(fā),無需對程序的基礎(chǔ)架構(gòu)進行操作。其運行界面如下:圖4-1KeiluVision54.2系統(tǒng)整體工作流程圖為了正常實施物聯(lián)網(wǎng)服務(wù)器的設(shè)計工作,需要對整個系統(tǒng)的工作程序有明確的認識。為了更好地體現(xiàn)自己的設(shè)計思維方式,按照設(shè)計說明書首先畫出了系統(tǒng)流程框圖。這個流程圖不僅可以讓每個階段的工作內(nèi)容更好地呈現(xiàn)給大家,還可以將每個模塊細分為多個小模塊,進而一個一個地進行完成,把每個模塊按照設(shè)計規(guī)則組合,將數(shù)據(jù)耦合,最后完成本次設(shè)計的軟件編碼工作。其工作流程如下圖所示:圖4-2軟件部分工作流程圖4.3DHT11溫濕度采集部分流程DHT11是一個多功能復合體傳感器,包含8位微型數(shù)據(jù)處理器,在模塊中執(zhí)行多次有效的數(shù)據(jù)處理,不僅有測量溫濕度,而且通過對應(yīng)的信號校準和溫度補償來工作。感應(yīng)端由濕度感知元件和一個NTC熱敏元件祖成,具有功能強,使用便捷,穩(wěn)定性強的優(yōu)點。在感應(yīng)端使用的電阻式感濕部件和NTC測溫原件,長期大量使用,工藝成熟,性能穩(wěn)定,早已大規(guī)模使用在社會生產(chǎn)生活中。其管腳說明如下圖:圖4-3DHT11管腳說明圖DHT11正常使用電壓是3-5.5V,系統(tǒng)接通電源后,需要設(shè)置1秒鐘的延時等待,當設(shè)備開始運行時,這一時期是設(shè)備的自我測試階段,不需要的外部命令支持。Dout是微處理器和DHT11聯(lián)合通信,一次花費時間大概為4ms,數(shù)據(jù)被劃分為十進制和整數(shù),當前的十進制被劃分為后來的擴展,目前讀取為零。操作過程:完整的數(shù)據(jù)傳輸?shù)?0bit,第一個是高位置。操作流程如下:一次完整的數(shù)據(jù)傳輸為40bit,高位先出。其軟件編寫數(shù)據(jù)流程圖如下:圖4-4DHT11數(shù)據(jù)流程圖4.4ESP8266的傳輸數(shù)據(jù)的實現(xiàn)ESP8266是樂鑫公司推出的性能和價格都很有市場競爭力里產(chǎn)品。在具體使用中常見的使用方法有固件開發(fā)的辦法和AT命令的辦法。從芯片介紹可知ESP8266本身就是基于STM32芯片開發(fā)的專用芯片,所以可以像開發(fā)STM32系統(tǒng)那樣,根據(jù)系統(tǒng)需要功能設(shè)計相關(guān)的程序滿足使用的需要。另外一種就是使用公司專門開發(fā)的滿足絕大部分使用的場景的通用固件。通過是嵌入到應(yīng)用系統(tǒng)中AT命令完成需要的功能。這種辦法操作簡單,開發(fā)便捷,所以在能完成同樣功能的情況下我們選用AT命令的開發(fā)辦法。完成此功能的數(shù)據(jù)流程圖如下:ESP8266三種工作模式如下:STA模式:路由器是互聯(lián)網(wǎng)連接的橋梁,連接成功后,通過手機或者電腦對設(shè)備進行遠程控制AP模式:熱點是互聯(lián)網(wǎng)連接的橋梁,通過直接用手機和電腦連接熱點后,完成局域網(wǎng)控制STA+AP模式:兩種模式共用,不僅可以通過互聯(lián)網(wǎng)控制,也可以通過局域網(wǎng)控制,穩(wěn)定性高。圖4-5ESP8266數(shù)據(jù)流程圖5物聯(lián)網(wǎng)服務(wù)器的實現(xiàn)5.1服務(wù)器相關(guān)技術(shù)的說明本物聯(lián)網(wǎng)服務(wù)器端服務(wù)程序是采用JAVA語言來實現(xiàn)的。本系統(tǒng)使用SSM框架,是Spring,SpringMVC,和mybatis集合。利用這個平臺各種代碼編寫者可以更便捷的完成CRUD,確定更多的事務(wù),維護更加快捷,消耗更小。1.Spring是一個非常典型的javabean容器,它可以以極低的軟硬件開銷完成對應(yīng)的管理,包括分離出來的DAO和Service。2.SpringMVC在Web控制層中起著框架的作用,它已經(jīng)完全取代了Struts2,在Action層面對數(shù)據(jù)進行處理,,使用注釋的技術(shù)手段來定義controller中的antion,在XML中對自動業(yè)務(wù)進行配置并掃描,就可以實現(xiàn)業(yè)務(wù)層的跳變。值得注意的是它是Spring產(chǎn)品線中的的一員,對Spring的兼容性不存在任何問題。3.mybatis是時下比較多見的持久層框架。跟hibernate做比較,它架構(gòu)更小,開銷更少。摒棄了傳統(tǒng)的對數(shù)據(jù)操作的方式,即使sql對數(shù)據(jù)庫實行硬編碼,sql代碼嵌入到類文件和代碼中,沒法擴展和更改。它使用xml的數(shù)據(jù)交換功能,用各種標簽在XML中配置sql語句,使用靈活,擴展和維護十分方便。SpringMVC的數(shù)據(jù)處理過程如下:圖5-1物聯(lián)網(wǎng)服務(wù)器端數(shù)據(jù)處理流程圖5.2集中監(jiān)控前端界面的實現(xiàn)客戶端使用Bootstrap框架,它有HTML、CSS、JavaScript等相關(guān)技術(shù)來完成的。它是一種界面簡單大方、性能強大,源碼開源的前端框架,使用框架技術(shù)開發(fā)前端頁面,能減少大量的底層代碼的編寫,縮短開發(fā)時間,減少工作量。從Bootstrap3框架推出,所有的設(shè)計宗旨就嚴格遵循了移動優(yōu)先的的原則。其框架使用的首要問題就是配置適應(yīng)的范圍和使用的對象,一般都是適應(yīng)所有的主流瀏覽器,主流的適用對象;其自身的響應(yīng)機制,使此框架能夠在臺式機,平板機,手機類小屏幕上完美應(yīng)用。在使用方法上,此框架推出了一攬子的解決方案,提供了各種各樣的組件,完成對應(yīng)的任務(wù),也可以自己編寫對應(yīng)的組件,滿足系統(tǒng)的需要。圖5-2系統(tǒng)界面5.3數(shù)據(jù)庫的設(shè)計在整個系統(tǒng)設(shè)計方案的基礎(chǔ)上確定了數(shù)據(jù)庫設(shè)計的基本原則。設(shè)計過程中主要考慮的是整個業(yè)務(wù)系統(tǒng)的支撐,應(yīng)該是一個基于層次清晰、布局合理、邏輯清晰、方便使用的原則和需求支持的數(shù)據(jù)庫。系統(tǒng)開發(fā)過程中不可或缺的就是數(shù)據(jù)庫,本著層次分明,布局合理,邏輯清晰,執(zhí)行便捷的原則,對個需求分析的各個數(shù)據(jù)表進行設(shè)計和實例化。為了建立一個良好的系統(tǒng)數(shù)據(jù)庫,需要從以下幾個層面進行結(jié)構(gòu)調(diào)整:數(shù)據(jù)庫的余量低,函數(shù)依賴是明確的。數(shù)據(jù)庫的表達可以準確地反映表格的內(nèi)容。表格中每個屬性的名稱和類型都表示此屬性的意義。創(chuàng)建索引;選擇正確的鍵;為每個字段設(shè)置約束規(guī)則。表的設(shè)計在考慮其冗余性的同時也要注意其使用的便利性。在物聯(lián)網(wǎng)服務(wù)器設(shè)計中綜合考慮本系統(tǒng)采用的數(shù)據(jù)庫為MYSQL,最明顯的優(yōu)點是可以將系統(tǒng)所需的數(shù)據(jù)存儲在不同的表格和不同的數(shù)據(jù)庫中。這樣就不需要把所有的表都存儲在大規(guī)模的數(shù)據(jù)倉庫中。數(shù)據(jù)的獨立存儲不僅方便了數(shù)據(jù)的存取,而且提高了數(shù)據(jù)的讀取效率,大大縮短了系統(tǒng)的響應(yīng)時間。因此,基于MYSQL數(shù)據(jù)庫的信息處理平臺能夠更迅速、更有效地處理數(shù)據(jù)。MYSQL存在的時間悠久、使用的用戶非常的活躍,一旦遇到解決不了的問題,它可以很快給予幫助,互聯(lián)網(wǎng)服務(wù)器設(shè)計系統(tǒng)規(guī)模不大,由于其性能卓越、服務(wù)穩(wěn)定的特點,MYSQL數(shù)據(jù)庫完全能滿足,系統(tǒng)通過它還能更好的處理數(shù)據(jù),具體優(yōu)勢如下:1、有多種線程,高效利用CPU資源;2、支持多種編程語言提供了可靠的API;3、SQL查詢語句得到優(yōu)化,其速度大大提升;4、在客戶端可以獨立的使用編寫的應(yīng)用程序,還可以拓展使用其他數(shù)據(jù)庫軟件,只要數(shù)據(jù)表能夠互相對應(yīng)。5.4集中監(jiān)控各個功能的說明基于JAVASpring的系統(tǒng)開發(fā),是典型的分層結(jié)構(gòu)。一般會分為,UI表現(xiàn)層,業(yè)務(wù)邏輯層,數(shù)據(jù)訪問層。這個程序的UI包是Bootstrap,提供系統(tǒng)界面的顯示,用戶的顯示和交互,數(shù)據(jù)交換。SRC包是系統(tǒng)的業(yè)務(wù)邏輯層實現(xiàn),在多層實現(xiàn)過程中,業(yè)務(wù)邏輯層不直接與數(shù)據(jù)庫交互。與數(shù)據(jù)庫數(shù)據(jù)的交互使用DAL。在使用不同的方法之前,問題是是否應(yīng)該使用業(yè)務(wù)本身的邏輯來確定業(yè)務(wù)是否符合邏輯。CRUD只在數(shù)據(jù)訪問層管理數(shù)據(jù)庫,操作后不使用于數(shù)據(jù)處理和邏輯實現(xiàn)過程。按照軟件工程的基本方法,我們經(jīng)過前面的需求分析可知,系統(tǒng)有7大功能模塊。下面我們對各個模塊的數(shù)據(jù)流程進行分析,得出其流程圖以便代碼實現(xiàn),功能圖如下。圖5-3系統(tǒng)功能圖(1)登錄功能的數(shù)據(jù)流程此功能比較常見,主要對用戶身份的驗證,其流程圖如下:圖5-4登錄功能的數(shù)據(jù)流程(2)報警配置功能的實現(xiàn)主要作用是對某些參數(shù)進行修改,保證設(shè)備在安全范圍內(nèi)運行,其操作過程主要使用updata語句對數(shù)據(jù)進行修改,在流程上主要是權(quán)限判斷和信息合法判斷和數(shù)據(jù)檢查,其數(shù)據(jù)流程圖如下:圖5-5報警配置參數(shù)的數(shù)據(jù)流程(3)濕度溫度顯示和數(shù)據(jù)總覽功能的實現(xiàn)溫濕度數(shù)據(jù)的展示功能在軟件流程設(shè)計上主要是數(shù)據(jù)庫信息的讀取和信息展示,主要使用select語句對數(shù)據(jù)庫進行操作其,其程序的數(shù)據(jù)流程圖如下:圖5-6溫濕度查詢的數(shù)據(jù)流程數(shù)據(jù)總覽功能和溫濕度顯示功能基本相同只是在展示的部分有細微的差別后面就不在單獨說明了。(4)溫濕度監(jiān)控功能在本功能模塊中實現(xiàn)了數(shù)據(jù)查詢功能,數(shù)據(jù)繪圖功能,報警判斷功能。分別對應(yīng)相關(guān)的函數(shù),具體代碼可以在附錄里查看,其數(shù)據(jù)流程圖如下:圖5-7溫濕度監(jiān)控的數(shù)據(jù)流程(5)遠程控制功能的實現(xiàn)通過ESP8266完成遠端控制的功能,分兩個部分來完成。在客戶端發(fā)送約定特征的字符到后臺服務(wù)器;在受控端ESP8266接收到數(shù)據(jù)傳輸至STM32串口,系統(tǒng)解析串口傳回的數(shù)據(jù)得到對應(yīng)的字符,驅(qū)動LED工作。其數(shù)據(jù)流程圖如下:圖5-8遠端控制LED數(shù)據(jù)流程圖從上圖可知在系統(tǒng)初始化后先配置ESP8266為透傳模式,保證ESP8266與物聯(lián)網(wǎng)后臺服務(wù)器的通訊通暢。其核心代碼詳見附錄。
6電路板的制作與系統(tǒng)調(diào)試6.1電路板制作本次畢業(yè)設(shè)計選用的電路模塊基本都是都是直插式結(jié)構(gòu),使用常規(guī)的焊接工具和技術(shù)就能完成硬件的焊接工作,焊接時間一般要小于8秒,溫度在320°C左右。焊接的順序依照先大后小,先核心后局部思想來完成。實際操作的時候第一步是焊接STM32最小系統(tǒng)。此電路板不僅是整個設(shè)計的核心器件,也是設(shè)計作品能夠正常穩(wěn)定運行的基礎(chǔ),在完成核心處理處理單元的焊接后,就能比較容易的的確定了其他的芯片和電子元器件的位置。完成核心處理芯片的焊接后,檢測是必不可少,如多核心處理單元不能正常工作,即使是其他部分焊接完美整個系統(tǒng)也不能工作,這時候也不能確定在那個部分出現(xiàn)問題,增加很多排查的困難,所以指導思想就是焊接一部分,檢測一部分,測試一部分。當核心控制板焊接完成后,第二部是焊接有直觀輸出的元器件例如顯示模塊,LED模塊,這樣就有了比較直觀的可以檢測焊接狀態(tài)和元器件狀態(tài)的方法和手段。也便于程序的下載和調(diào)試。對所有芯片和零件按要求焊接后,系統(tǒng)全部的功能測試是必不可少的,功能測試是發(fā)現(xiàn)焊接中的虛擬焊接和漏焊。完成焊接工作后,第一步是檢查電源及附屬電路有沒有短路,這一步是非常重要的因為短路能直接燒壞各種元器件甚至引發(fā)安全事故。其檢測方法是用萬用表的2支筆,1支連接在系統(tǒng)電源模塊的電源地,另一支連接在供電電源的正極。連通電路后看萬用表的電壓值。使用外接USB5V電源時,萬用表顯示的電壓值須略高于5V,不能高太多。接下來需要逐一測試每條電路,如果每條連線能夠正常發(fā)出通路的聲音,表示焊接正常沒有虛焊。如果沒有聲音無疑是有斷電,需要一步一步排查。工作雖然繁瑣,但這是一個電子產(chǎn)品能夠正常工作的基礎(chǔ)容不得半點馬虎。6.2單片機HEX文件的生成和燒入KeilC軟件有很多的程序調(diào)試工具:起止行、斷點等,但無需深入了解,只要知道它們怎么用。此畢設(shè)只需看懂代碼并修改相應(yīng)錯誤的地方即可。它由編輯器直接給出。單片機是依靠系統(tǒng)ROM中的程序文件來工作的,它使用的文件的格式是HEX,所以在集成編程環(huán)境將程序生成為HEX文件并寫入核心處理芯片內(nèi)是必不可少的工作。一般是使用串口來完成此項工作的。在最后一個error被移除后,程序不再運行報錯,緊接著生成HEX文件。在HEX文件在生成過程中,文件設(shè)置的晶體振動必須與設(shè)計電路的硬件系統(tǒng)相匹配。使用PC機的串口與設(shè)計系統(tǒng)的串口進行連接,使用芯片專用的燒錄軟件,并選擇具體使用的芯片型號,便可以完成燒錄工作。即可將HEX文件燒錄到單片機中,燒錄時注意選對對應(yīng)器件型號,其過程圖如下圖6-1HEX生成操作圖6-2HEX下載操作6.3系統(tǒng)的聯(lián)
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 長尾關(guān)鍵詞2025年環(huán)保政策對塑料制品行業(yè)市場環(huán)保政策應(yīng)對策略研究報告
- 2025年跨文化交流能力培養(yǎng)在國際化教育中的跨文化能力培養(yǎng)路徑
- 黑龍江省龍東聯(lián)盟2024-2025學年高一下學期期末考試化學試題(圖片版含答案)
- 全國安全員證考試題型及答案
- 三級安全教育試題及答案車間級
- 數(shù)據(jù)庫期末考試試題及答案
- 典當程序管理辦法
- 養(yǎng)老入住管理辦法
- 獸藥飼料管理辦法
- 內(nèi)江招生管理辦法
- 光纖熔接勞務(wù)合同協(xié)議書2024年
- 中考英語688高頻詞大綱詞頻表
- 政府、辦公樓物業(yè)管理服務(wù)投標方案(技術(shù)標)
- 《汽車構(gòu)造》教案
- 《抑郁焦慮識別》課件
- 《新活素心內(nèi)科》課件
- 物品賠償單范本
- 某某公司鋼渣處理項目可行性研究報告書
- 中建標準廠房鋼結(jié)構(gòu)安裝施工方案
- 噴涂產(chǎn)品檢驗標準
- ASME B16.5-16.47法蘭尺寸對照表
評論
0/150
提交評論