版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 天津職業(yè)技術(shù)師范大學(xué)</p><p> Tianjin University of Technology and Education</p><p><b> 畢 業(yè) 設(shè) 計(jì)</b></p><p> 專 業(yè): </p><p> 班級(jí)學(xué)號(hào):
2、 </p><p> 學(xué)生姓名: </p><p> 指導(dǎo)教師: </p><p><b> 二〇一 年 月</b></p><p> 天津職業(yè)技術(shù)師范大學(xué)本科生畢業(yè)設(shè)計(jì)</p><p> 多傳感器數(shù)
3、據(jù)采集與傳輸電路設(shè)計(jì)</p><p> Design of A Circuit for Multiple Sensors Data Acquisiton and Transmission</p><p><b> 專業(yè)班級(jí): </b></p><p><b> 學(xué)生姓名: </b></p><
4、p><b> 指導(dǎo)教師: </b></p><p> 學(xué) 院: 自動(dòng)化與電氣工程學(xué)院</p><p> 201 年 0 月</p><p><b> 摘 要</b></p><p> 在工業(yè)、農(nóng)業(yè)和生活中,對(duì)溫度和濕度數(shù)據(jù)的監(jiān)測(cè)具有非常重要的實(shí)際應(yīng)用。人們生活水平的
5、改善和科技的不斷進(jìn)步,無(wú)論是農(nóng)業(yè)還是工業(yè)或日常生活中對(duì)溫度和濕度數(shù)據(jù)監(jiān)測(cè)都有越來(lái)越高的要求。本課題的設(shè)計(jì)基礎(chǔ)是基于nRF24L01通信模塊的無(wú)線多路溫濕度數(shù)據(jù)采集與傳輸電路系統(tǒng)的設(shè)計(jì),主要應(yīng)用于特殊環(huán)境或工農(nóng)業(yè)現(xiàn)場(chǎng)的溫濕度采集與監(jiān)測(cè)。系統(tǒng)采用無(wú)線通信技術(shù)和無(wú)線溫濕度傳感器采集技術(shù),利用無(wú)線數(shù)據(jù)的通信技術(shù)能夠在很大程度上降低空間布線所帶來(lái)的施工難度和施工成本。本系統(tǒng)選用STM32單片機(jī)作為主控芯片,系統(tǒng)包括無(wú)線數(shù)據(jù)通信模塊,DHT11溫濕
6、度傳感器,LCD液晶顯示模塊,蜂鳴語(yǔ)音報(bào)警模塊,以及模擬繼電器LED指示等外圍電路。</p><p> 系統(tǒng)由主機(jī)-從機(jī)-從機(jī)的結(jié)構(gòu)體系組成,主機(jī)系統(tǒng)可同時(shí)對(duì)多個(gè)傳感采樣節(jié)點(diǎn)進(jìn)行數(shù)據(jù)的匯集。傳感器節(jié)點(diǎn)通過(guò)從機(jī)將實(shí)時(shí)溫濕度數(shù)據(jù)采集到單片機(jī),經(jīng)過(guò)數(shù)據(jù)運(yùn)算再通過(guò)nRF24L01模塊發(fā)送給主機(jī),主機(jī)接收到從機(jī)的數(shù)據(jù)之后需要對(duì)數(shù)據(jù)進(jìn)行測(cè)量和處理,與程序設(shè)定的上限值進(jìn)行比對(duì),判斷監(jiān)測(cè)傳感節(jié)點(diǎn)的參數(shù)是否達(dá)到預(yù)警值,并對(duì)報(bào)警電
7、路和模擬繼電器模組進(jìn)行相應(yīng)的控制。最后經(jīng)過(guò)實(shí)際的軟硬件測(cè)試之后,本作品實(shí)現(xiàn)了STM32單片機(jī)采集多節(jié)點(diǎn)溫濕度傳感器數(shù)據(jù),通過(guò)nRF24L01模塊及特殊通訊協(xié)議進(jìn)行一定距離的傳輸,最后在主機(jī)的LCD12864液晶上顯示出來(lái)的模型。</p><p> 關(guān)鍵詞:?jiǎn)纹瑱C(jī);nRF24L01;傳感器;主機(jī);LCD液晶屏</p><p><b> ABSTRACT</b><
8、;/p><p> In the industry, agriculture and life, the monitoring of the temperature and humidity has a very important practical application.. The improvement of people's living standards and the continu
9、ous improvement of technology, whether it is the agricultural or industrial or daily life of the temperature and humidity data monitoring are increasingly high requirements. The basis for the design of the subject i
10、s based on nRF24L01 communication module of multi-channel wireless temperature and humidity da</p><p> The system consists of a host computer architecture, and the host system can collect data from multiple
11、 sensing nodes simultaneously.. Sensor nodes through from the machine will be real-time temperature and humidity data acquisition to the microcontroller, after data processing by nRF24L01 module to send to the host
12、host receives the need to deal with the data measured from the data on the machine, and procedures set upper limit value for comparison, judgment parameters monitoring sensor node wh</p><p> Key Words:CPU;n
13、RF24L01;Sensor;Host;LCD screen</p><p><b> 目 錄</b></p><p><b> 第1章 緒論1</b></p><p><b> 1.1 引言1</b></p><p> 1.2 課題的研究背景及意義1<
14、;/p><p> 1.3 國(guó)內(nèi)外研究狀況及發(fā)展趨勢(shì)2</p><p> 第2章 系統(tǒng)總體設(shè)計(jì)3</p><p> 2.1 系統(tǒng)總體方案設(shè)計(jì)3</p><p> 2.1.1 系統(tǒng)功能3</p><p> 2.1.2 系統(tǒng)方案3</p><p> 2.2 系統(tǒng)各模塊設(shè)計(jì)與選擇4&
15、lt;/p><p> 2.2.1 溫濕度傳感器模塊設(shè)計(jì)與選擇4</p><p> 2.2.2 無(wú)線數(shù)據(jù)傳輸模塊的設(shè)計(jì)與選擇5</p><p> 2.2.3 電源的設(shè)計(jì)與選擇5</p><p> 2.2.4 單片機(jī)最小系統(tǒng)設(shè)計(jì)與選擇6</p><p> 2.2.5 顯示電路設(shè)計(jì)與選擇6</p>
16、<p> 第3章 硬件電路設(shè)計(jì)7</p><p> 3.1 系統(tǒng)硬件組成7</p><p> 3.2 CPU主控模塊7</p><p> 3.3 溫濕度傳感檢測(cè)模塊8</p><p> 3.4 無(wú)線數(shù)據(jù)收發(fā)通訊模塊9</p><p> 3.5 LCD液晶顯示模塊11</p
17、><p> 3.6 蜂鳴語(yǔ)音報(bào)警模塊及模擬繼電器LED指示模塊11</p><p> 3.7 電源驅(qū)動(dòng)模塊12</p><p> 第4章 系統(tǒng)軟件設(shè)計(jì)14</p><p> 4.1 軟件的總體設(shè)計(jì)14</p><p> 4.1.1 發(fā)送部分14</p><p> 4.1.2 接
18、收部分14</p><p> 4.2 部分軟件設(shè)計(jì)15</p><p> 4.2.1 傳感節(jié)點(diǎn)溫濕度檢測(cè)的軟件設(shè)計(jì)15</p><p> 4.2.2 無(wú)線發(fā)射模塊軟件設(shè)計(jì)15</p><p> 4.2.3 無(wú)線接收模塊軟件設(shè)計(jì)16</p><p> 4.2.4 LCD12864顯示模塊軟件設(shè)計(jì)1
19、6</p><p> 第5章 系統(tǒng)的調(diào)試及實(shí)驗(yàn)結(jié)果18</p><p> 5.1 調(diào)試步驟18</p><p> 5.2 測(cè)試數(shù)據(jù)分析18</p><p><b> 結(jié) 論20</b></p><p><b> 參考文獻(xiàn)21</b></p>
20、;<p> 附錄A:作品實(shí)物圖22</p><p> 附錄 B:STM32F103C8T6最小系統(tǒng)原理圖23</p><p> 附錄 C:無(wú)線收發(fā)模塊電路圖及LCD12864電路圖24</p><p> 附錄 D:主函數(shù)及無(wú)線收發(fā)部分程序25</p><p><b> 致 謝34</b&
21、gt;</p><p><b> 第1章 緒論</b></p><p><b> 1.1 引言</b></p><p> 在現(xiàn)代測(cè)量控制系統(tǒng)中,均需要采集被測(cè)點(diǎn)傳感器的數(shù)據(jù),而且在數(shù)據(jù)的采集與處理過(guò)程中,往往都需要上位機(jī)對(duì)采集到的數(shù)據(jù)進(jìn)行處理或加以統(tǒng)計(jì)。在檢測(cè)點(diǎn)相對(duì)集中的地方,可以采用有線連接的通信方式進(jìn)行數(shù)據(jù)的檢測(cè)
22、與收集。但是在一些特殊的環(huán)境下有線連接卻不能滿足實(shí)際需求。在測(cè)量點(diǎn)相對(duì)分散且分布不均勻的情況下,如果采用個(gè)有線數(shù)據(jù)采集的方式往往需要高昂的工程。例如具有腐蝕性的環(huán)境、無(wú)法在現(xiàn)場(chǎng)實(shí)施明線安裝或者為了避免危險(xiǎn)等許多特殊條件下,通過(guò)有線傳輸方式進(jìn)行數(shù)據(jù)的采集,如通過(guò) CAN 總線、MAX485等方式等已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足數(shù)據(jù)采集和傳輸?shù)囊?,如果采用無(wú)線數(shù)據(jù)通信的方式就體現(xiàn)出巨大的優(yōu)勢(shì),因?yàn)闊o(wú)線數(shù)據(jù)傳輸不會(huì)受到地理環(huán)境、時(shí)間、季節(jié)、氣候等外部條件
23、的限制,具有相當(dāng)廣闊的應(yīng)用和發(fā)展前景。</p><p> 1.2 課題的研究背景及意義</p><p> 由于社會(huì)的不斷進(jìn)步和工業(yè)生產(chǎn)的需求,采用無(wú)線數(shù)據(jù)通訊的方式進(jìn)行傳感監(jiān)測(cè)節(jié)點(diǎn)數(shù)據(jù)的采集與傳輸已經(jīng)廣泛應(yīng)用到我們的生活的各個(gè)方面。</p><p> 在一些工業(yè)現(xiàn)場(chǎng)的生產(chǎn)環(huán)境非常惡劣,工作人員無(wú)法長(zhǎng)時(shí)間在現(xiàn)場(chǎng)觀察生產(chǎn)設(shè)備的運(yùn)行是否正常,此時(shí)就需要通過(guò)采集現(xiàn)場(chǎng)的
24、某些運(yùn)行數(shù)據(jù)并傳輸?shù)揭粋€(gè)相對(duì)較好的操控室,那么就會(huì)出現(xiàn)數(shù)據(jù)傳輸方式的問(wèn)題。由于車間大、設(shè)備分布不均勻、需要傳輸數(shù)據(jù)較多,若使用有線數(shù)據(jù)傳輸?shù)姆绞叫枰佋O(shè)大量的通訊線,不僅浪費(fèi)資源,占用空間,而且可操作性差,若出現(xiàn)問(wèn)題或設(shè)備位置變動(dòng),就會(huì)需要重新布線,操作非常繁瑣,不僅費(fèi)時(shí)費(fèi)力,更加大了生產(chǎn)成本。而且,如果數(shù)據(jù)采集點(diǎn)是處于運(yùn)動(dòng)狀態(tài)、所處的環(huán)境比較特殊不允許或根本無(wú)法鋪設(shè)電纜時(shí),甚至數(shù)據(jù)無(wú)法傳輸,此時(shí)就需要通過(guò)無(wú)線傳輸技術(shù)進(jìn)行數(shù)據(jù)采集與傳輸
25、。</p><p> 在農(nóng)業(yè)生產(chǎn)上,無(wú)論是對(duì)溫室大棚內(nèi)不同位置點(diǎn)的溫濕度監(jiān)測(cè),還是糧倉(cāng)的大范圍監(jiān)測(cè)管理,傳統(tǒng)方法都是通過(guò)人工進(jìn)行分區(qū)取樣的方法,不僅工作量非常大,可靠性差,而且溫室大棚或糧倉(cāng)的占地面積大,檢測(cè)位置比較分散,檢測(cè)點(diǎn)較多,使用傳統(tǒng)的方法已經(jīng)無(wú)法滿足當(dāng)前農(nóng)業(yè)發(fā)展的需要。在當(dāng)前的先進(jìn)科技水平下,無(wú)線通訊技術(shù)的快速發(fā)展,使得遠(yuǎn)程無(wú)線溫濕度采集測(cè)量的方法,不僅測(cè)量精確,而且簡(jiǎn)便易行。</p>
26、<p> 在日常生活中,隨著社會(huì)的進(jìn)步和人們生活水平的逐步提高,居住環(huán)境也逐漸變得更加智能化?,F(xiàn)在很多的家庭都已經(jīng)安裝了室內(nèi)溫濕度采集控制系統(tǒng),其主要原理就是通過(guò)無(wú)線通信技術(shù)采集室內(nèi)環(huán)境的溫濕度數(shù)據(jù),并根據(jù)室內(nèi)溫濕度的情況進(jìn)行遙控通風(fēng)等安全操作,不僅可以自動(dòng)調(diào)節(jié)室內(nèi)溫濕度,而且能夠更好地改善人們的居住環(huán)境。</p><p> 以上簡(jiǎn)單列舉了幾個(gè)在實(shí)際應(yīng)用場(chǎng)合的例子,在我們的日常生活中,無(wú)線溫濕度采集
27、與傳輸系統(tǒng)已經(jīng)被逐漸應(yīng)用于工農(nóng)業(yè)的環(huán)境監(jiān)測(cè)、軍事國(guó)防和機(jī)器人控制等許多領(lǐng)域。目前在一些布線繁瑣或不允許有明線的特殊場(chǎng)合都能夠通過(guò)無(wú)線通信技術(shù)方案解決。因此,就需要設(shè)計(jì)相應(yīng)的通信接口系統(tǒng),來(lái)控制無(wú)線射頻模塊的工作,一邊完成可靠并且穩(wěn)定的無(wú)線數(shù)據(jù)通信系統(tǒng)。</p><p> 1.3 國(guó)內(nèi)外研究狀況及發(fā)展趨勢(shì)</p><p> 近年來(lái),伴隨著計(jì)算機(jī)技術(shù)的發(fā)展,無(wú)線射頻通信技術(shù)在近幾年也得到了
28、迅猛的發(fā)展,目前國(guó)內(nèi)的無(wú)線射頻技術(shù)也逐漸成熟,很多公司開(kāi)研發(fā)出種類齊全的射頻無(wú)線數(shù)據(jù)傳輸模塊和芯片。并且這些無(wú)線射頻芯片不僅傳輸速率很快而且靈敏度也很高。如今此類的射頻芯片正向著集成化和微型化的方向發(fā)展,很大程度降低了使用成本,因此無(wú)線射頻芯片在嵌入式產(chǎn)品的研發(fā)中具有非常大的應(yīng)用前景。目前,國(guó)內(nèi)外很多知名廠商都很重視無(wú)線射頻芯片技術(shù)研究,以及更好的應(yīng)用到射頻芯片的嵌入式系統(tǒng)中。</p><p> 隨著射頻技術(shù)的
29、快速發(fā)展,無(wú)線傳輸芯片的體積和尺寸也越來(lái)越微型化,功能也越來(lái)越豐富,加上輔助電路在性能上更加的優(yōu)越,傳輸距離也越來(lái)越遠(yuǎn),信號(hào)更加的穩(wěn)定性,擁有更快點(diǎn)的傳輸速率和更強(qiáng)的抗干擾能力,特別適用于復(fù)雜的工業(yè)控制場(chǎng)合。目前Nordic公司已經(jīng)成功推出一款nRF24L01芯片,同時(shí)國(guó)內(nèi)很多公司也相繼推出基于nRF24L01的無(wú)線傳輸模塊。nRF24L01無(wú)線通信模塊是目前市場(chǎng)上應(yīng)用較為普遍的無(wú)線收發(fā)器件,其工作頻段在2.4 GHz至2.5 GHz
30、之間。nRF24L01無(wú)線通信模塊可以通過(guò)軟件程序?qū)νㄓ嵉耐ǖ兰拜敵龉β蔬M(jìn)行配置,不僅內(nèi)部融合了ShockBurst技術(shù),而且內(nèi)部繼承了多種功能模塊,包括頻率合成電路、功率放大器及振蕩器和解調(diào)器等。nRF24L01模塊功率損耗特別低,在以-6dBm的功率發(fā)射時(shí),模塊的測(cè)試工作電流在9mA左右;模塊工作在接收模式時(shí),也只有12.3mA的工作電流,該模塊的掉電模式和空閑模式等多種低功率工作模式使節(jié)能設(shè)計(jì)更加方便。目前這種基于此頻段的通信方式
31、已日漸趨向成熟。</p><p> 目前無(wú)線射頻通信技術(shù)已經(jīng)在很多工業(yè)和農(nóng)業(yè)系統(tǒng)中得到了廣泛的推廣和實(shí)際應(yīng)用,對(duì)施工成本和系統(tǒng)穩(wěn)定性都的到了很大的提高:例如無(wú)線數(shù)據(jù)遠(yuǎn)程監(jiān)測(cè)系統(tǒng),糧倉(cāng)溫濕度檢測(cè)系統(tǒng),遠(yuǎn)程抄表系統(tǒng),工業(yè)現(xiàn)場(chǎng)的無(wú)線數(shù)據(jù)檢測(cè)系統(tǒng),機(jī)器人控制等多種應(yīng)用場(chǎng)合。這些先進(jìn)技術(shù)的進(jìn)步與發(fā)展以及實(shí)際應(yīng)用給我們的日常生活帶來(lái)了很大的便利。</p><p> 第2章 系統(tǒng)總體設(shè)計(jì)</p
32、><p> 2.1 系統(tǒng)總體方案設(shè)計(jì)</p><p> 2.1.1 系統(tǒng)功能</p><p> 溫濕度的檢測(cè)技術(shù)在日常生活和工程現(xiàn)場(chǎng)都會(huì)經(jīng)常用到,由于科技的不斷進(jìn)步和生活水平的提高,對(duì)溫濕度檢測(cè)系統(tǒng)的檢測(cè)精度有了越來(lái)越高的要求,傳統(tǒng)的溫濕度測(cè)量裝置已經(jīng)很難滿足檢測(cè)精度的要求,本設(shè)計(jì)采用DHT11作為溫濕度傳感器,使用低功耗STM32單片機(jī)。而且本課題采用nRF24
33、L01無(wú)線模塊對(duì)單片機(jī)采集到的溫濕度數(shù)據(jù)進(jìn)行近距離的無(wú)線傳輸,避免了傳統(tǒng)的通訊線傳輸所帶來(lái)的布線困難,成本高等問(wèn)題。本設(shè)計(jì)采用STM32F103C8T6單片機(jī)作為主控CPU,外加DHT11溫濕度采集模塊、nRF24L01無(wú)線收發(fā)模塊和數(shù)碼顯示模塊組成整個(gè)系統(tǒng),系統(tǒng)結(jié)構(gòu)示意圖如圖2-1所示。</p><p> 圖2-1 系統(tǒng)結(jié)構(gòu)示意圖</p><p> 2.1.2 系統(tǒng)方案</p&
34、gt;<p> 本系統(tǒng)包括:一個(gè)主機(jī)、兩個(gè)從機(jī)、無(wú)線通訊模塊、溫度采集、濕度采集、繼電器模組、報(bào)警電路、定時(shí)中斷等子程序。開(kāi)機(jī)時(shí)系統(tǒng)顯示系統(tǒng)時(shí)間并復(fù)位,從機(jī)采集一組環(huán)境的實(shí)時(shí)溫濕度數(shù)據(jù),通過(guò)無(wú)線通訊模塊將傳感檢測(cè)節(jié)點(diǎn)周圍的溫濕度數(shù)據(jù)發(fā)送給主機(jī)并在液晶上顯示出來(lái),主機(jī)通過(guò)程序判斷是否達(dá)到預(yù)警值,并控制報(bào)警電路等相關(guān)模組工作的程序流程。</p><p> 本設(shè)計(jì)是以STM32F103C8T6單片機(jī)為
35、CPU,以nRF24L01無(wú)線數(shù)據(jù)模塊為通信方式的一套多傳感器數(shù)據(jù)采集與傳輸系統(tǒng),其中涉及到單片機(jī)與nRF24L01無(wú)線數(shù)據(jù)模塊、溫度與濕度檢測(cè)、蜂鳴器語(yǔ)音報(bào)警、模擬繼電器驅(qū)動(dòng)LED指示、LCD顯示等部分電路的設(shè)計(jì)。整個(gè)系統(tǒng)的結(jié)構(gòu)框圖如圖2-2所示。</p><p> 圖2-2 系統(tǒng)結(jié)構(gòu)框圖</p><p> 2.2 系統(tǒng)中功能模塊的選型</p><p> 2
36、.2.1 溫濕度檢測(cè)模塊的選型</p><p> 方案一:數(shù)字式溫度傳感器的選擇在目前很多工農(nóng)業(yè)場(chǎng)合很多采用DS18B20作為系統(tǒng)的測(cè)溫元器件,由于該測(cè)溫元件的輸出信號(hào)為數(shù)字信號(hào),能很好的與微控制器進(jìn)行命令和數(shù)據(jù)的傳輸,并且該測(cè)溫元件的外圍電路要求簡(jiǎn)單,穩(wěn)定性也相對(duì)不錯(cuò),能夠很大程度上簡(jiǎn)化硬件電路的設(shè)計(jì),但其檢測(cè)范圍僅限于溫度測(cè)量,檢測(cè)功能單一,需要搭配濕度檢測(cè)器件才能滿足本設(shè)計(jì)要求,因此,該器件不適用于本系統(tǒng)
37、的設(shè)計(jì)。</p><p> 方案二:DHT11傳感器是一款能夠輸出溫度和濕度的數(shù)字式溫濕度一體傳感器,并且該傳感器的輸出信號(hào)已經(jīng)經(jīng)過(guò)校準(zhǔn)后輸出給控制器。為了確保該傳感器的可靠性和穩(wěn)定性,傳感器內(nèi)部采用了專用的溫濕度傳感技術(shù)和數(shù)字模塊采集技術(shù)。該傳感器采用單總線的數(shù)據(jù)傳輸方式,并且其體積小,功耗低,傳輸距離能達(dá)到20米以上,能夠很好的與單片機(jī)進(jìn)行連接并嵌入到系統(tǒng)中。</p><p> D
38、S18B20與DHT11相比,在功能和檢測(cè)精度上都低于DHT11溫濕度傳感器,因此本設(shè)計(jì)選用方案二作為環(huán)境數(shù)據(jù)的檢測(cè)器件。</p><p> 2.2.2 無(wú)線數(shù)據(jù)傳輸模塊的選型</p><p> 方案一:NRF24L01的工作頻率在2.4~2.5GHz范圍,是目前通用的一種基于ISM頻段的無(wú)線數(shù)據(jù)收發(fā)器芯片。nRF24L01無(wú)線通信模塊可以通過(guò)軟件程序?qū)νㄓ嵉耐ǖ兰拜敵龉β蔬M(jìn)行配置,不
39、僅內(nèi)部融合了ShockBurst技術(shù),而且內(nèi)部繼承了多種功能模塊,包括頻率合成電路、功率放大器及振蕩器和解調(diào)器等。并且可以通過(guò)SPI通訊協(xié)議進(jìn)行模塊的驅(qū)動(dòng),編程方法簡(jiǎn)單,穩(wěn)定性高。</p><p> 方案二:藍(lán)牙模塊是一種目前近距離數(shù)據(jù)傳輸比較常用的一種方式,藍(lán)牙模塊的數(shù)據(jù)傳輸距離在10cm~10m左右,如果外加相關(guān)功率放大電路或某些外設(shè),藍(lán)牙的傳輸距離可以達(dá)到幾十米。目前藍(lán)牙技術(shù)雖然被描述的前景非常廣闊,但是
40、藍(lán)牙技術(shù)現(xiàn)在還不是非常的成熟,其穩(wěn)定性能不是很好,并且抗干擾能力也比較差,因此該技術(shù)還需要實(shí)際應(yīng)用的嚴(yán)格考驗(yàn)。雖然藍(lán)牙的通訊速率不是很高,但是在這個(gè)發(fā)展迅速的信息化和智能化時(shí)代,也有可能會(huì)對(duì)它的發(fā)展有一定的影響。</p><p> 經(jīng)過(guò)對(duì)比nRF24L01無(wú)線收發(fā)模塊有較強(qiáng)的抗干擾能力,并且其穩(wěn)定性和可靠性都優(yōu)于藍(lán)牙模塊。為了實(shí)現(xiàn)系統(tǒng)的功能要求,本設(shè)計(jì)的無(wú)線傳輸模塊最終選用nRF24L01芯片。</p&g
41、t;<p> 2.2.3 系統(tǒng)供電電源的選型</p><p> 方案一:通過(guò)單相變壓器將AC220V的交流電降壓到AC12V之后,再經(jīng)過(guò)由單向不可控二極管搭建的橋式整流電路對(duì)其進(jìn)行進(jìn)一步的電壓整流處理,然后再將整流后的電壓通過(guò)三端穩(wěn)壓電源芯片和相關(guān)濾波電路對(duì)其電壓進(jìn)行進(jìn)一步的處理。例如可以LM7805穩(wěn)壓芯片實(shí)現(xiàn)穩(wěn)壓功能,該芯片的3腳可以將整流后的12V電壓通過(guò)穩(wěn)壓芯片內(nèi)部的穩(wěn)壓整流電路轉(zhuǎn)換為D
42、C5V的電壓傳輸給系統(tǒng)供電,這個(gè)穩(wěn)壓電路的搭建相對(duì)簡(jiǎn)單,但是其穩(wěn)定性和轉(zhuǎn)換精度不高。</p><p> 方案二:采用電源適配器,電源適配器能夠很好的輸出較為平穩(wěn)的直流電壓,其輸出電流也相對(duì)穩(wěn)定,并且電源適配器有塑料外殼能夠起到電源芯片的防塵和防爆作用,其內(nèi)部電路的功耗較低,穩(wěn)定性也相對(duì)比較好,攜帶也比較方便。電源適配器一般都具有多種自我保護(hù)功能,使用更加安全可靠。</p><p> 經(jīng)
43、過(guò)對(duì)以上兩種方案的對(duì)比,最終選擇方案二作為本系統(tǒng)的供電方式,因?yàn)榉桨敢辉谡麄€(gè)電路搭建過(guò)程比較復(fù)雜,成本較高,而且穩(wěn)定性和安全性都低于電源適配器。</p><p> 2.2.4 單片機(jī)系統(tǒng)的選型</p><p> 方案一: STM32F103C8T6單片機(jī),工作電壓為3.3V,且含有32位的高速處理芯片。其運(yùn)算和運(yùn)行速度都非???,編程環(huán)境是Keil uVision4,編程界面較為簡(jiǎn)單并且
44、改控制器的強(qiáng)大之處在于其代碼的移植非常方便,能夠很好的進(jìn)行編程。Cortex-M3系列的單片機(jī)的內(nèi)部資源和接口非常強(qiáng)大,擁有多路串口、A/D接口、SPI接口及外部中斷,能夠很好的應(yīng)用到系統(tǒng)中,并且該單片機(jī)的價(jià)格便宜,工作也穩(wěn)定。</p><p> 方案二: AT89C51單片機(jī),該單片機(jī)的外部IO資源和內(nèi)部寄存器的資源相對(duì)較少,是目前市場(chǎng)上功能較為落后的一款控制芯片,但是該芯片是上市比較早的一款高性能的8位微處
45、理器芯片,并且該芯片的市場(chǎng)價(jià)位相對(duì)較低,比較適合用于對(duì)系統(tǒng)穩(wěn)定性和精度要求不是很苛刻的場(chǎng)合,而且該芯片的編程方法比較簡(jiǎn)單,非常適合剛開(kāi)始接觸微控制器的初學(xué)者。該該芯片的運(yùn)算速度相對(duì)于STM32單片機(jī)來(lái)說(shuō)有一定的差距,而且其外部IO資源和寄存器較少,與STM32單片機(jī)相比較顯得有些不足。</p><p> 經(jīng)過(guò)對(duì)本系統(tǒng)的功能分析,因?yàn)楸鞠到y(tǒng)在整個(gè)工作過(guò)程中需要不斷地對(duì)數(shù)據(jù)通過(guò)SPI接口發(fā)送和接收,對(duì)系統(tǒng)的運(yùn)算速度
46、有很高的要求,并且還用到了很多內(nèi)部定時(shí)器及中斷資源,因此選用STM32F103C8T6單片機(jī)作為系統(tǒng)的控制器芯片。</p><p> 2.2.5 人機(jī)顯示模塊的選型</p><p> 方案一:人機(jī)交互界面在每個(gè)系統(tǒng)中都有很重要的作用,LCD12864液晶顯示就是一種常見(jiàn)的人機(jī)界面顯示方式,LCD12864的顯示功能比較強(qiáng)大,不僅僅能顯示中文和英文,而且一些較為復(fù)雜的圖形符號(hào)都可以通過(guò)編
47、程的方式在液晶屏上顯示出來(lái),LCD12864液晶屏與單片機(jī)的連接方式有串行連接和并行連接,可以根據(jù)不同場(chǎng)合和顯示數(shù)據(jù)量的大小進(jìn)行選擇。并行連接的數(shù)據(jù)顯示和傳輸速度快,適合對(duì)顯示速度要求高的場(chǎng)合,但是IO資源占用的較多;串行連接的數(shù)據(jù)顯示和傳輸速度相對(duì)較慢,但是其IO資源占用較少,對(duì)顯示速度要求不高的場(chǎng)合可以選用串行方式連接。并且LCD12864液晶屏的顯示程序比較簡(jiǎn)單,與外部控制器的電路設(shè)計(jì)連接非常方便,能夠很好的嵌入到系統(tǒng)中。<
48、/p><p> 方案二:選用數(shù)碼管對(duì)數(shù)據(jù)顯示。數(shù)碼管一般都是七段數(shù)碼管,分為共陰極數(shù)碼管和共陽(yáng)極數(shù)碼管,其編程方式采用循環(huán)掃描將不同的數(shù)據(jù)和變量在數(shù)碼管上顯示出來(lái),數(shù)碼管的市場(chǎng)價(jià)格相對(duì)便宜,而且編程簡(jiǎn)單,但是該模塊只能顯示簡(jiǎn)單的英文字母和阿拉伯?dāng)?shù)字,其顯示效果相對(duì)較差,并且外圍電路的搭建較為復(fù)雜,需要配合595等類型的鎖存器使用,較為復(fù)雜。但是數(shù)碼管的顯示對(duì)單片機(jī)的初學(xué)者能起到很好的編程思路學(xué)習(xí),但是本系統(tǒng)設(shè)計(jì)要求
49、較高,不適應(yīng)用數(shù)碼管進(jìn)行顯示。</p><p> 經(jīng)過(guò)對(duì)系統(tǒng)分析,最終選擇方案一作為本系統(tǒng)的人機(jī)交互顯示方式的模塊。</p><p> 第3章 系統(tǒng)硬件電路設(shè)計(jì)</p><p> 3.1 硬件系統(tǒng)的組成</p><p> 本課題的硬件系統(tǒng)由一個(gè)主機(jī)和兩個(gè)從機(jī)硬件電路組成,主機(jī)系統(tǒng)的電路由七部分組成,分別包括:CPU主控模塊、DHT11
50、溫濕度一體傳感器、nRF24L01通訊模塊、LCD12864液晶顯示模塊、蜂鳴語(yǔ)音報(bào)警模塊、模擬繼電器LED指示模塊以及電源驅(qū)動(dòng)模塊。兩個(gè)從機(jī)電路與主機(jī)電路有一定的差異,從機(jī)電路設(shè)計(jì)由五個(gè)電路模塊組成,分別包括:?jiǎn)纹瑱C(jī)主控模塊、溫濕度傳感檢測(cè)模塊、無(wú)線數(shù)據(jù)收發(fā)通訊模塊、模擬繼電器LED指示模塊以及電源驅(qū)動(dòng)模塊。主機(jī)與從機(jī)的主要區(qū)別在于主機(jī)系統(tǒng)有人機(jī)顯示界面,能夠通過(guò)主機(jī)上的LCD12864液晶模塊監(jiān)控從機(jī)一和從機(jī)二所檢測(cè)的傳感節(jié)點(diǎn)位置的
51、當(dāng)前環(huán)境參數(shù),起到整個(gè)系統(tǒng)的監(jiān)控作用。</p><p> 3.2 CPU主控模塊</p><p> 此次設(shè)計(jì)的芯片采用的是STM32F103C8T6單片機(jī),由于STM32系列基于ARM Cortex-M3內(nèi)核的高性能單片機(jī),其工作頻率高達(dá)72MHz,芯片內(nèi)部集成有高速存儲(chǔ)器,豐富的I/O接口。內(nèi)部包括多路ADC接口、串口、中斷定時(shí)器、硬件SPI、CAN通信以及外部中斷等多種
52、資源接口。STM32F103C8T6單片機(jī)的溫度工作范圍很寬,能夠在零下40攝氏度到零上105攝氏度的范圍里面正常工作。并且該單片機(jī)的工作電壓一般在3.3V左右就能正常工作,其功耗非常低,因此能夠很好的嵌入到大部分系統(tǒng)中。STM32單片機(jī)的系統(tǒng)原理圖如圖3-1所示。</p><p> 在單片機(jī)系統(tǒng)的設(shè)計(jì)過(guò)程中,設(shè)計(jì)者都非常注重復(fù)位電路的設(shè)計(jì),因?yàn)閺?fù)位系統(tǒng)是保證單片機(jī)系統(tǒng)在啟動(dòng)之后能否正常工作的一個(gè)重要過(guò)程,如果
53、復(fù)位電路設(shè)計(jì)的不合理,甚至不正確,那么系統(tǒng)就無(wú)法正常啟動(dòng),更無(wú)法運(yùn)行后續(xù)的程序設(shè)計(jì),導(dǎo)致整個(gè)系統(tǒng)程序停止,因此在系統(tǒng)復(fù)位電路的設(shè)計(jì)非常重要的一部分。復(fù)位電路設(shè)計(jì)如圖3-1右下圖所示。</p><p> STM32單片機(jī)晶振電路是CPU工作的心臟,所以在設(shè)計(jì)系統(tǒng)的晶振電路時(shí)一定要對(duì)單片機(jī)的內(nèi)部機(jī)構(gòu)性能有非常詳細(xì)的了解,才能保證單片機(jī)能夠正常的在系統(tǒng)中起到核心控制的作用,STM32單片機(jī)有兩個(gè)晶振時(shí)鐘源,一個(gè)是系統(tǒng)
54、時(shí)鐘源工作電路,該電路采用8M頻率的晶振作為起振電路,外接兩個(gè)22pF的電容輔助晶振電路的正常工作;另一個(gè)時(shí)鐘源是STM32單片機(jī)特有的RTC時(shí)鐘源,該單片機(jī)內(nèi)部集成有RTC時(shí)鐘電路,能夠較容易的使用程序驅(qū)動(dòng)內(nèi)部RTC時(shí)鐘的工作,使系統(tǒng)在對(duì)實(shí)時(shí)時(shí)間的程序編寫(xiě)及硬件電路的設(shè)計(jì)簡(jiǎn)化了很多問(wèn)題。</p><p> 圖3-1 STM32F103C8T6最小系統(tǒng)原理圖</p><p> 3.3
55、 溫濕度傳感檢測(cè)模塊</p><p> DHT11傳感器是一款能夠輸出溫度和濕度的數(shù)字式溫濕度一體傳感器,并且該傳感器的輸出信號(hào)已經(jīng)經(jīng)過(guò)校準(zhǔn)后輸出給控制器。為了確保該傳感器的可靠性和穩(wěn)定性,器內(nèi)部采用了專用的溫濕度傳感技術(shù)和數(shù)字模塊采集技術(shù)。該傳感器采用單總線的數(shù)據(jù)傳輸方式,并且其體積小,功耗低,傳輸距離能達(dá)到20米以上,能夠很好的與單片機(jī)進(jìn)行連接嵌入到系統(tǒng)中。DHT11溫濕度傳感器的濕度檢測(cè)范圍是20%~90
56、%RH;±5%RH的測(cè)量精度;溫度檢測(cè)的范圍是0~50℃,±2℃的測(cè)量精度,其額定供電電壓在3.0至5.5V均可,供電范圍較寬,響應(yīng)時(shí)間短,最長(zhǎng)不超過(guò)5秒,DHT11溫度傳感器有4個(gè)外接引腳,給傳感器上電后,需要經(jīng)過(guò)一秒鐘左右的預(yù)熱時(shí)間,因?yàn)閯偵想姇?huì)有一個(gè)不穩(wěn)定過(guò)程,所以在這段時(shí)間內(nèi)控制器不需要發(fā)送任何指令個(gè)傳感器。 DHT11實(shí)物如圖3-2所示。</p><p> 圖3-2的三個(gè)引腳中有兩
57、個(gè)是電源引腳,有一個(gè)是輸出數(shù)據(jù)的引腳,只需要給模塊供上正常的電壓,然后就可以通過(guò)單片機(jī)的某個(gè)IO口從DHT11的輸出引腳采集到所需要的溫濕度數(shù)據(jù)。DHT11是數(shù)字式的溫濕度傳感器,所以其DATA端可直接以數(shù)字方式傳輸所采集的當(dāng)前環(huán)境溫濕度數(shù)據(jù),由于DHT11是通過(guò)單總線的通信方式進(jìn)行檢測(cè)數(shù)據(jù)的輸出,所以僅需將MCU的一個(gè)IO接口與DHT11的DATA端連接在一起就能夠進(jìn)行實(shí)時(shí)溫濕度數(shù)據(jù)的采集了,為了保證接收數(shù)據(jù)的穩(wěn)定性和正確性一般都會(huì)在
58、DHT11的輸出端與單片機(jī)的連接處焊接一個(gè)5K的上拉電阻,該電路的設(shè)計(jì)相對(duì)于其他電路來(lái)說(shuō)比較簡(jiǎn)單。DHT11傳感器典型應(yīng)用電路如圖3-3所示:</p><p> 圖3-2 DHT11實(shí)物圖 圖3-3 DHT11傳感器典型應(yīng)用電路</p><p> 3.4 無(wú)線數(shù)據(jù)收發(fā)通訊模塊</p><p> 該模塊由Nordic公司
59、生產(chǎn)的nRF24L01單片收發(fā)芯片及相關(guān)外圍電路搭建而成。nRF24L01無(wú)線通信模塊是目前市場(chǎng)上應(yīng)用較為普遍的無(wú)線收發(fā)器件,其工作頻段在2.4 GHz至2.5 GHz 之間。nRF24L01無(wú)線通信模塊可以通過(guò)軟件程序?qū)νㄓ嵉耐ǖ兰拜敵龉β蔬M(jìn)行配置,不僅內(nèi)部融合了ShockBurst技術(shù),而且內(nèi)部繼承了多種功能模塊,包括頻率合成電路、功率放大器及振蕩器和解調(diào)器等。nRF24L01芯片的功耗低,當(dāng)該模塊的發(fā)射功率在-6dBm時(shí),實(shí)際的測(cè)
60、試的模塊電流僅在9mA左右;模塊工作在接收模式時(shí),也只有12.3mA的工作電流,該模塊的掉電模式和空閑模式等多種低功率工作模式使節(jié)能設(shè)計(jì)更加方便。</p><p> 圖3-4 nRF24L01無(wú)線通訊模塊結(jié)構(gòu)圖及實(shí)物</p><p> ?。?)nRF24L01芯片的引腳排列及各引腳功能描述如下圖所示。</p><p> 圖3-5 nRF24L01芯片引腳&l
61、t;/p><p><b> 引腳功能說(shuō)明</b></p><p> ?。?)nRF24L01模塊有四種工作模式,包括發(fā)射模式、接收模式、空閑模式及掉電模式,這四種工作模式可以通過(guò)配置其內(nèi)部寄存器進(jìn)行設(shè)置,配置原則如表3.1所示。</p><p> 從表3.1可以看出,當(dāng)nRF24L01模塊工作在待機(jī)模式1狀態(tài)時(shí),沒(méi)有任何數(shù)據(jù)的傳輸,因此其工作的
62、電流損耗將會(huì)在最低狀態(tài);如果使模塊處于待機(jī)模式2狀態(tài)時(shí),需要CE=1且寄存器FIFO內(nèi)部為空;當(dāng)模塊在掉電模式時(shí),模塊將會(huì)進(jìn)入待機(jī)模式,雖然此時(shí)模塊在待機(jī)模式,但是仍然會(huì)保留寄存器所有的配置的數(shù)據(jù),此時(shí)模塊的電流損耗最小。</p><p> 表3.1 nRF24L01模塊的工作模式</p><p> 3.5 LCD液晶顯示模塊</p><p> 在本系統(tǒng)中L
63、CD12864液晶顯示用于顯示當(dāng)前的日期時(shí)間、主機(jī)周圍的溫濕度數(shù)據(jù)以及從機(jī)一和從機(jī)二周圍的溫濕度數(shù)據(jù)。LCD12864的顯示功能比較強(qiáng)大,不僅僅能顯示中文和英文,而且一些較為復(fù)雜的圖形符號(hào)都可以通過(guò)編程的方式在液晶屏上顯示出來(lái),LCD12864液晶屏與單片機(jī)的連接方式有串行連接和并行連接,可以根據(jù)不同場(chǎng)合和顯示數(shù)據(jù)量的大小進(jìn)行選擇。并行連接的數(shù)據(jù)顯示和傳輸速度快,適合對(duì)顯示速度要求高的場(chǎng)合,但是IO資源占用的較多;串行連接的數(shù)據(jù)顯示和傳
64、輸速度相對(duì)較慢,但是其IO資源占用較少,對(duì)顯示速度要求不高的場(chǎng)合可以選用串行方式連接。并且LCD12864液晶屏的顯示程序比較簡(jiǎn)單,與外部控制器的電路設(shè)計(jì)連接非常方便,能夠很好的嵌入到系統(tǒng)中。雖然本系統(tǒng)中單片機(jī)接口資源豐富,但是考慮減輕電路焊接的工作量,所以采用串行傳輸?shù)姆绞脚cLCD12864液晶顯示屏連接通訊。LCD12864液晶顯示屏實(shí)物如圖3-6所示。</p><p> 3.6 蜂鳴語(yǔ)音報(bào)警模塊及模擬繼電
65、器LED指示模塊</p><p> 由于蜂鳴器是直流電壓驅(qū)動(dòng)期間,只需給蜂鳴器供上額定的電壓就能驅(qū)動(dòng)蜂鳴器發(fā)出響聲。單片機(jī)驅(qū)動(dòng)蜂鳴器有兩種方式:一種是通過(guò)單片機(jī)輸出PWM直接對(duì)蜂鳴器進(jìn)行驅(qū)動(dòng),另一種是通過(guò)單片機(jī)的IO電平翻轉(zhuǎn)產(chǎn)生不同的驅(qū)動(dòng)波形對(duì)蜂鳴器進(jìn)行驅(qū)動(dòng)。因?yàn)榉澍Q器的工作電流比較大,所以無(wú)法直接通過(guò)單片機(jī)的IO口進(jìn)行驅(qū)動(dòng),一般需要通過(guò)放大電路才能驅(qū)動(dòng)蜂鳴器發(fā)出聲響。驅(qū)動(dòng)電路如圖3-7所示。</p>
66、;<p> 圖3-6 LCD12864液晶顯示屏</p><p> 圖3-7 報(bào)警驅(qū)動(dòng)電路</p><p> 3.7 電源驅(qū)動(dòng)模塊</p><p> 電源適配器能夠很好的輸出較為平穩(wěn)的直流電壓,其輸出電流也相對(duì)穩(wěn)定,并且電源適配器有塑料外殼能夠起到電源芯片的防塵和防爆作用,其內(nèi)部電路的功耗較低,穩(wěn)定性也相對(duì)比較好,攜帶也比較方便。電源適配器
67、一般都具有多種自我保護(hù)功能,使用更加安全可靠。此處我們選用5V-1A的直流輸出型電源適配器作為電源驅(qū)動(dòng)模塊。這種電源驅(qū)動(dòng)模塊安全可靠、運(yùn)行穩(wěn)定、工作效率高,并且適配器內(nèi)部還設(shè)計(jì)了過(guò)流保護(hù),這樣就使得整個(gè)系統(tǒng)更加穩(wěn)定。在該系統(tǒng)中還需要提供3.3V的電壓作為單片機(jī)系統(tǒng)的供電電壓,因此還需要設(shè)計(jì)5V轉(zhuǎn)3.3V的穩(wěn)壓整流電路,系統(tǒng)選擇AMS1117-3.3V穩(wěn)壓芯片,通過(guò)該穩(wěn)壓芯片的內(nèi)部整流和穩(wěn)壓電路對(duì)輸出電壓進(jìn)行精確的降壓,保證控制系統(tǒng)電壓的
68、穩(wěn)定性。5V轉(zhuǎn)3.3V的穩(wěn)壓電路圖如圖3-8所示。</p><p> 圖3-8 電源5V轉(zhuǎn)3.3V驅(qū)動(dòng)電路</p><p> 第4章 系統(tǒng)軟件設(shè)計(jì)</p><p> 4.1 軟件的總體設(shè)計(jì)</p><p> 4.1.1 發(fā)送部分</p><p> 對(duì)于發(fā)送部分的總體循環(huán)思路,首先對(duì)DHT11溫濕度傳感器進(jìn)行
69、初始化操作,然后從DHT11讀出溫度和濕度數(shù)據(jù),將得到的溫濕度數(shù)據(jù)的轉(zhuǎn)化成十進(jìn)制,分別取溫濕度數(shù)據(jù)的高兩位(即整數(shù)部分)寫(xiě)入TX_buffer發(fā)送數(shù)據(jù)數(shù)組,然后初始化nRF24L01,將數(shù)據(jù)通過(guò)無(wú)線發(fā)送出去,其工作流程圖如圖4-5所示。</p><p> 4.1.2 接收部分</p><p> 對(duì)于接收部分總體思路的設(shè)計(jì),首先對(duì)nRF24L01模塊進(jìn)行初始化操作,然后程序進(jìn)入while
70、(1)大循環(huán)函數(shù)進(jìn)行掃描是否有接收中斷信號(hào)的到來(lái)。如果檢測(cè)到中斷信號(hào)的到來(lái)就從RX_buffer讀取數(shù)據(jù),并將讀取到的數(shù)據(jù)進(jìn)行數(shù)據(jù)計(jì)算和處理后在LCD12864液晶顯示屏上面顯示出來(lái),其工作流程圖如圖4-6所示。</p><p> 圖4-5 發(fā)射部分總體流程圖 圖4-6 接收部分總體流程圖</p><p> 4.2 部分軟件設(shè)計(jì)</p>
71、<p> 4.2.1 傳感節(jié)點(diǎn)溫濕度檢測(cè)的軟件設(shè)計(jì)</p><p> 為了確保通信數(shù)據(jù)接收的穩(wěn)定性和準(zhǔn)確性,對(duì)于DHT11溫濕度檢測(cè)傳感器軟件設(shè)計(jì)的測(cè)溫原理必須遵循標(biāo)準(zhǔn)的單總線通信協(xié)議,單片機(jī)通過(guò)標(biāo)準(zhǔn)的時(shí)序?qū)懭牒妥x出DHT11寄存器中的數(shù)據(jù),包括初始化命令、等待應(yīng)答脈沖、發(fā)送指令及數(shù)據(jù)合并計(jì)算等操作。傳感器復(fù)位完成后,需要等待接收應(yīng)答信號(hào),然后發(fā)送掃描命令并啟動(dòng)溫度轉(zhuǎn)換,最后等待溫度轉(zhuǎn)換完畢后,保
72、存數(shù)據(jù)。如此反復(fù),完成所有操作,其流程圖如圖4-1所示。</p><p> 圖4-1 DHT11 數(shù)據(jù)采集程序流程圖</p><p> 4.2.2 無(wú)線發(fā)射模塊軟件設(shè)計(jì)</p><p> 首先需要對(duì)nRF24L01進(jìn)行初始化,為了保證nRF24L01模塊的正常通信,需要從兩個(gè)部分進(jìn)行初始化的操作,一部分是對(duì)單片機(jī)的IO的設(shè)置,另一部分是對(duì)單片機(jī)硬件SPI內(nèi)部
73、寄存器的初始化配置。從機(jī)的nRF24L01模塊需要通過(guò)配置SPI的總線將使其進(jìn)入準(zhǔn)確的發(fā)送工作模式。在系統(tǒng)進(jìn)入數(shù)據(jù)發(fā)送階段時(shí),還需要將數(shù)據(jù)的目標(biāo)地址及本機(jī)地址寫(xiě)入模塊的緩沖區(qū),待延時(shí)一段時(shí)間后,將數(shù)據(jù)發(fā)送出去。其軟件的工作流程圖如圖4-2所示。</p><p> 圖4-2 無(wú)線發(fā)射軟件流程圖</p><p> 4.2.3 無(wú)線接收模塊軟件設(shè)計(jì)</p><p>
74、 主機(jī)在接收數(shù)據(jù)時(shí),需要將nRF24L01模塊配置為接收狀態(tài)的工作模式。然后等待從機(jī)所發(fā)送數(shù)據(jù)的到來(lái)。當(dāng)主機(jī)檢測(cè)到有數(shù)據(jù)發(fā)來(lái)時(shí),主機(jī)需要檢測(cè)發(fā)送端的地址是否為有效地址,若通過(guò)有效地址和CRC校驗(yàn)時(shí),模塊會(huì)將發(fā)送端的數(shù)據(jù)存放到接收堆棧中,然后寄存器發(fā)送信號(hào)通知單片機(jī)進(jìn)行數(shù)據(jù)的接收,單片機(jī)進(jìn)入接收中斷,對(duì)數(shù)據(jù)進(jìn)行完整的數(shù)據(jù)讀取。其工作流程圖如圖4-3所示。</p><p> 4.2.4 LCD12864顯示模塊
75、軟件設(shè)計(jì)</p><p> LCD12864顯示電路采用串行接口連接方式,串行接口的電路連接方式能夠有效節(jié)省單片機(jī)的IO資源,數(shù)據(jù)顯示采用定時(shí)中斷循環(huán)掃描的方式。PB7、PB8、PB9分別為L(zhǎng)CD12864液晶顯示的CS、SID、CLK,通過(guò)串行時(shí)鐘與數(shù)據(jù)指令發(fā)送相應(yīng)函數(shù),依次在LCD上顯示當(dāng)前時(shí)間、主機(jī)房間的實(shí)時(shí)溫濕度、從機(jī)一及從機(jī)二的實(shí)時(shí)溫濕度,其流程圖如圖4-4所示。</p><p&g
76、t; 圖4-3 無(wú)線接收軟件流程圖</p><p> 圖4-4 LCD12864顯示部分軟件流程圖</p><p> 第5章 系統(tǒng)的調(diào)試及實(shí)驗(yàn)結(jié)果</p><p><b> 5.1 調(diào)試步驟</b></p><p> 第一步: 設(shè)計(jì)硬件電路原理圖,并完成系統(tǒng)硬件電路的焊接。</p><p
77、> 第二步: 將主機(jī)系統(tǒng)與LCD12864液晶屏連接顯示,確保液晶顯示與STM32單片機(jī)能夠正常進(jìn)行數(shù)據(jù)顯示。</p><p> 第三步: 將主機(jī)STM32單片機(jī)與溫濕度傳感器DHT11相連,燒寫(xiě)讀取DHT11溫濕度的C程序,并在LCD12864液晶顯示屏上顯示出來(lái),保證溫濕度檢測(cè)的硬件及軟件部分的正確。</p><p> 第四步: 將nRF24L01模塊與STM32單片機(jī)相連
78、,給單片機(jī)寫(xiě)入一個(gè)發(fā)送任意數(shù)據(jù)的檢測(cè)程序,保證主從機(jī)能夠正常的進(jìn)行數(shù)據(jù)傳輸。</p><p> 第五步: 將LCD12864液晶顯示程序、nRF24L01無(wú)線收發(fā)程序、DHT11檢測(cè)程序等所有功能程序合并,調(diào)整函數(shù)調(diào)用順序,觀察從機(jī)數(shù)據(jù)能否正常發(fā)送給主機(jī)并在液晶上顯示出來(lái)。</p><p> 第六步: 人為的改變傳感節(jié)點(diǎn)端的環(huán)境參數(shù),將環(huán)境參數(shù)達(dá)到設(shè)定的預(yù)警值,測(cè)試報(bào)警系統(tǒng)是否能正常啟
79、動(dòng)。</p><p> 第七步: 將兩個(gè)從機(jī)和主機(jī)的程序全部燒寫(xiě)到對(duì)應(yīng)的單片機(jī)中,進(jìn)行整套系統(tǒng)的數(shù)據(jù)采集及發(fā)送接收的聯(lián)調(diào),并將從機(jī)一和從機(jī)二的數(shù)據(jù)在主機(jī)接收端的LCD12864液晶上顯示出來(lái)。</p><p> 5.2 測(cè)試數(shù)據(jù)分析</p><p> 根據(jù)系統(tǒng)設(shè)計(jì)的要求及目的,在系統(tǒng)設(shè)計(jì)完成后通過(guò)一些簡(jiǎn)單的測(cè)量?jī)x器,對(duì)一些動(dòng)態(tài)值進(jìn)行測(cè)量,得到的結(jié)果如表5.1所
80、示:</p><p> 表5.1 動(dòng)態(tài)數(shù)據(jù)表</p><p> 通過(guò)實(shí)際系統(tǒng)的測(cè)試及測(cè)試結(jié)果表明,本系統(tǒng)的設(shè)計(jì)能夠達(dá)到低功耗的工作,另外主從機(jī)的收發(fā)距離也達(dá)到了設(shè)計(jì)的初衷。</p><p> 如圖5-1就是本系統(tǒng)的主機(jī)接收和顯示端成品。</p><p> 圖5-1 主機(jī)接收部分成品</p><p> 如圖5-
81、2就是從機(jī)溫濕度數(shù)據(jù)采集和發(fā)送端成品(從機(jī)一和從機(jī)二),兩個(gè)從機(jī)實(shí)時(shí)的讀取傳感節(jié)點(diǎn)的溫濕度數(shù)據(jù),并通過(guò)nRF24L01模塊把檢測(cè)的溫濕度數(shù)據(jù)發(fā)送給主機(jī)。</p><p> 圖5-2 從機(jī)發(fā)射部分成品</p><p><b> 結(jié) 論</b></p><p> 本論文介紹的是通過(guò)nRF24L01無(wú)線收發(fā)模塊的方式實(shí)現(xiàn)多傳感節(jié)點(diǎn)的遠(yuǎn)程溫
82、濕度數(shù)據(jù)采集系統(tǒng),它可以用于多種遠(yuǎn)程監(jiān)測(cè)系統(tǒng),能夠?qū)崿F(xiàn)遠(yuǎn)程環(huán)境、資源信息等數(shù)據(jù)的收集。</p><p> STM32單片機(jī)以其高可靠性、高性價(jià)比,在工業(yè)和農(nóng)業(yè)等諸多領(lǐng)域得到廣泛的應(yīng)用。本論文主要旨在說(shuō)明本設(shè)計(jì)系統(tǒng)中所用到的無(wú)線傳感檢測(cè)技術(shù)及無(wú)線射頻通訊技術(shù),特別是在進(jìn)行單片機(jī)與nRF24L01無(wú)線模塊進(jìn)行配置與數(shù)據(jù)命令的收發(fā)這一部分是本課題設(shè)計(jì)的關(guān)健之處。并且在對(duì)本課題作品進(jìn)行設(shè)計(jì)與芯片選型時(shí),就遇到了很多麻煩
83、,最終才選定使用STM32單片機(jī)與nRF24L01無(wú)線模塊進(jìn)行組合,實(shí)現(xiàn)無(wú)線收發(fā)系統(tǒng)的雛形,經(jīng)過(guò)附加一些外圍電路的輔助,很好的達(dá)到了自己預(yù)期的效果。并且在本設(shè)計(jì)中選用DHT11數(shù)字溫濕度傳感器能夠很好的與單片機(jī)進(jìn)行溫濕度數(shù)據(jù)的直接采集與存儲(chǔ),利用無(wú)線收發(fā)模塊進(jìn)行無(wú)線數(shù)據(jù)的傳輸,并在主機(jī)的LCD12864液晶顯示屏上顯示。</p><p> 當(dāng)然在整個(gè)系統(tǒng)的設(shè)計(jì)和制作過(guò)程中,遇到過(guò)很多很多的技術(shù)性難題,特別是在通
84、過(guò)單片機(jī)控制nRF24L01模塊進(jìn)行數(shù)據(jù)發(fā)送和接收的過(guò)程及程序編寫(xiě)都非常的復(fù)雜,并且這方面的資料相對(duì)理解起來(lái)較難,但是在對(duì)大量的文獻(xiàn)和資料的學(xué)習(xí)以及指導(dǎo)老師的耐心指導(dǎo)下。最終熟悉并掌握了各個(gè)元器件的性能原理,及設(shè)計(jì)的總體方案,得以完成整個(gè)系統(tǒng)的設(shè)計(jì)。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 李朝青.單片機(jī)原理與接口技術(shù)[M].北京航空
85、航天大學(xué)出版社.2010</p><p> [2] 黃智偉.無(wú)線發(fā)射與接收電路設(shè)計(jì)[M]. 人民郵電出版社.2008</p><p> [3] 趙亮.液晶顯示模塊LCD應(yīng)用[J].電子制作.2011</p><p> [4] 李敏,夏繼軍.傳感器應(yīng)用技術(shù)[M]. 西安電子科技大學(xué)出版社.2011</p><p> [5] 常鐵原,王欣
86、.多路數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)[J].電子技術(shù)應(yīng)用.2008</p><p> [6] Ghenadii Korotcenkov ,Chemical Sensors: Comprehensive SensorTechnologies[M],</p><p> Volume 5, El. Momentum Press 2011</p><p> [7] David
87、K.S. Tse,Fundamentals of Wireless Communication[M] .2009</p><p> [8] 葉紅海,李麗敏.基于單片機(jī)的多路數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].2008</p><p> [9] 胡學(xué)海.單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京電子工業(yè)出版社.2010</p><p> [10] 趙繼文.傳感器與應(yīng)用電路
88、設(shè)計(jì)[M].北京科學(xué)出版社.2012</p><p> [11] 李群芳,張士軍.單片微型計(jì)算機(jī)與接口技術(shù)[M].電子工業(yè)出版社.2008</p><p> [12] 林土勝.單片機(jī)技術(shù)及工程實(shí)踐[M].北京機(jī)械工業(yè)出版社.2010</p><p> [13] 姚福安.電子電路設(shè)計(jì)與實(shí)踐[M].山東科學(xué)技術(shù)出版社.2002.</p><p&
89、gt; [14] 李平等.單片機(jī)入門與開(kāi)發(fā)[M].機(jī)械工業(yè)出版社.2008. </p><p> [15] 張為民.溫濕度測(cè)控系統(tǒng)中的智能控制器研制[J].西北民族大學(xué)學(xué)報(bào).2014</p><p> [16] 潘小青.傳感器及其發(fā)展[J]. 東華理工學(xué)院學(xué)報(bào)(自然科學(xué)版).2010</p><p> [17] 王東峰.單片機(jī)C語(yǔ)言應(yīng)用100例[M].電子工
90、業(yè)出版社.2010</p><p> [18] 盧勝利,郝立果.單片機(jī)原理與應(yīng)用技術(shù)實(shí)踐[M].機(jī)械工業(yè)出版社,2009</p><p> [19] 北京教育科學(xué)研究院.無(wú)線電技術(shù)基礎(chǔ)[M].人民郵電出版社.2005</p><p> [20] 李文忠,段朝玉.短距離無(wú)線數(shù)據(jù)通信[M].北京航空航天大學(xué)出版社.2006</p><p>
91、 [21] Simon Haykin,Machael Moher,鄭寶玉.現(xiàn)代無(wú)線通信[M]. 電子工業(yè)出版社,2006.</p><p> [22] 南建輝等編著. 《MCS-51單片機(jī)原理及其應(yīng)用實(shí)例》.清華大學(xué)出版社,2004.03. </p><p><b> 附錄A:作品實(shí)物圖</b></p&
92、gt;<p> 附錄 B:STM32F103C8T6系統(tǒng)電路原理圖</p><p> 附錄 C:nRF24L01模塊及LCD12864串行電路設(shè)計(jì)原理圖</p><p> 附錄 D:?jiǎn)纹瑱C(jī)部分程序設(shè)計(jì)</p><p> #include"stm32f10x_lib.h"//包含所有的頭文件</p><
93、p> #include"SYSTIC.h"</p><p> #include"AM2301.h"</p><p> #include"LCD_12864.h"</p><p> #include"2401.h"</p><p> #include
94、 "RTC.h"</p><p> #include "time.h"</p><p> #include "spi.h"</p><p> #include<stdio.h></p><p><b> u8 sta;</b></p&g
95、t;<p> u8 RH_H,RH_L,Tem_H,Tem_L;</p><p> extern u8 T1,T2,R1,R2;</p><p><b> u8 TEMP;</b></p><p> /*以下變量為NRF24L01所用*/</p><p> U8 sta=0,Flag=0,irq_
96、flag=1;//狀態(tài)標(biāo)志</p><p> void Delay(u32 t);</p><p> u8 rx_buf[13]={0};//接收通道0</p><p> u8 rx1_buf[13]={0};//接收通道1</p><p> u8 rx_room_one[7]={0,2,5,3,3,2,4};//房間一接收的數(shù)據(jù)
97、</p><p> u8 rx_room_two[7]={0,2,5,3,3,2,4};//房間二接收的數(shù)據(jù)</p><p> //----------------函數(shù)聲明--------------------</p><p> void Delay_MS(u16 dly);</p><p> void RCC_Configura
98、tion(void);</p><p> void GPIO_Configuration(void);</p><p> void TIM_Configuration(void);</p><p> void NVIC_Configuration(void);</p><p> void USART_Configuration(voi
99、d);</p><p> void Warning_device(void);</p><p> u16 Smokescope_Value,Rainfall_Value;</p><p> int fputc(int ch,FILE *f)</p><p><b> {</b></p><p&
100、gt; USART_SendData(USART1, ch);//ch送給USART1</p><p> while(USART_GetFlagStatus(USART1, USART_FLAG_TC)==RESET);</p><p><b> //等待發(fā)送完畢</b></p><p> return(ch);//返回ch</p
101、><p><b> }</b></p><p> void delay_us(u32 dly)</p><p><b> {</b></p><p><b> u32 temp;</b></p><p> if(dly>0xFFFFFF)&l
102、t;/p><p> dly=0xFFFFFF;</p><p> SysTick->VAL=0x00; //清空計(jì)數(shù)值</p><p> SysTick->LOAD=9000*dly;</p><p> SysTick->CTRL=0x01; //打開(kāi)定時(shí)器,時(shí)鐘為AHB/8</p><p>
103、;<b> do </b></p><p><b> {</b></p><p> temp=SysTick->CTRL;</p><p><b> } </b></p><p> while(!(temp&(1<<16)));</p&
104、gt;<p> SysTick->CTRL=0x0; //關(guān)閉定時(shí)器</p><p> SysTick->VAL=0x00; //清空計(jì)數(shù)值</p><p><b> }</b></p><p> void IWDG_Configuration(void) </p>&
105、lt;p><b> {</b></p><p> IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); </p><p> IWDG_SetPrescaler(IWDG_Prescaler_64); </p><p> IWDG_SetReload(5000)
106、; </p><p> IWDG_Enable(); </p><p><b> }</b></p><p> int main(void)</p><p><b> {</b></p><p> #ifdef DEBUG</p&g
107、t;<p><b> debug();</b></p><p><b> #endif</b></p><p><b> u8 i; </b></p><p> RCC_Configuration();</p><p> GPIO_Configura
108、tion();</p><p> TIM_Configuration();</p><p> NVIC_Configuration();</p><p> USART_Configuration();</p><p> RTC_Configuration();</p><p> LCD_12864_Init(
109、);</p><p> NRF24L01_Init();</p><p> IWDG_Configuration();//看門狗定時(shí)器初始化</p><p> while(RCC_GetFlagStatus(RCC_FLAG_IWDGRST) == 0); // 上電復(fù)位一次</p><p> /*以下函數(shù)為NRF24L01所用
110、*/</p><p> RX_Mode(0);//接收模式</p><p> LCD_12864_room1_Temp();</p><p> LCD_12864_room2_Temp(); </p><p><b> while(1)</b></p><p><b>
111、 {</b></p><p> NRF24L01_RxPacket(rx_buf);</p><p> //以下判斷上限值 </p><p> if(rx_buf[1]>=4)</p><p><b> {</b></p><p> GPIO_SetBits(GP
112、IOB, GPIO_Pin_12); </p><p><b> }</b></p><p> if(rx_buf[4]>=5)</p><p><b> {</b></p><p> GPIO_SetBits(GPIOB, GPIO_Pin_12); </p>&l
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 多傳感器數(shù)據(jù)采集與傳輸電路設(shè)計(jì)畢業(yè)論文
- 多傳感器數(shù)據(jù)采集與傳輸電路設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)—傳感器電路設(shè)計(jì)
- sd卡存儲(chǔ)采集數(shù)據(jù)電路設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)—溶氧傳感器電路設(shè)計(jì)
- 位移傳感器數(shù)據(jù)的采集、處理與傳輸.pdf
- 4~20ma傳感器電流信號(hào)并行數(shù)據(jù)傳送電路設(shè)計(jì)-畢業(yè)論文
- 電感位移傳感器接口電路設(shè)計(jì)
- 基于FPGA的高速視頻采集和傳輸電路設(shè)計(jì)與實(shí)現(xiàn).pdf
- FBAR傳感器讀出電路設(shè)計(jì).pdf
- 海洋勘探拖纜多傳感器數(shù)據(jù)采集傳輸控制技術(shù)及實(shí)現(xiàn).pdf
- 多傳感器實(shí)時(shí)傳輸系統(tǒng)中高速數(shù)據(jù)采集和發(fā)射開(kāi)關(guān)控制設(shè)計(jì).pdf
- 傳感器課程設(shè)計(jì)--稱重傳感器應(yīng)用電路設(shè)計(jì)
- 傳感器課程設(shè)計(jì)---稱重傳感器應(yīng)用電路設(shè)計(jì)
- 三軸磁傳感器采集存儲(chǔ)電路設(shè)計(jì)任務(wù)書(shū)
- 基于wince的無(wú)線傳感器數(shù)據(jù)采集軟件的實(shí)現(xiàn)【畢業(yè)論文】
- 一種多傳感器數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)
- 傳感器課程設(shè)計(jì)---稱重傳感器應(yīng)用電路設(shè)計(jì)
- 聲表面波氣體傳感器陣列信號(hào)采集電路設(shè)計(jì).pdf
- 畢業(yè)論文外文翻譯-多傳感器數(shù)據(jù)融合的多分類器系統(tǒng)
評(píng)論
0/150
提交評(píng)論