基于STM32的農(nóng)業(yè)災(zāi)害監(jiān)測系統(tǒng)研究通信工程專業(yè)
《基于STM32的農(nóng)業(yè)災(zāi)害監(jiān)測系統(tǒng)研究通信工程專業(yè)》由會員分享,可在線閱讀,更多相關(guān)《基于STM32的農(nóng)業(yè)災(zāi)害監(jiān)測系統(tǒng)研究通信工程專業(yè)(37頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 第一章 緒論 1.1課題來源及研究目的和意義 農(nóng)業(yè)的智慧,是農(nóng)業(yè)生產(chǎn)的發(fā)展的潮流.中國是一個農(nóng)業(yè)大國,在傳統(tǒng)意義上,每年耕地蓋率正在下降,年輕一代渴望在農(nóng)村耕種。對于自動化和機械化智慧,農(nóng)業(yè)可以被認為是非常緊迫的。更有效地利用有限的耕地和更少的資源不僅是可持續(xù)發(fā)展的必要條件,也是我們社會現(xiàn)代化的具體體現(xiàn)。 智慧農(nóng)業(yè)是源于物聯(lián)網(wǎng)技術(shù)興起浪潮或世界物聯(lián)網(wǎng)具體表現(xiàn)的眾多“智慧”產(chǎn)品之一。農(nóng)業(yè)生產(chǎn)。它主要利用物聯(lián)網(wǎng)技術(shù),即農(nóng)業(yè)溫室中的環(huán)境信息由相應(yīng)的傳感器模塊測量,然后將信息收集在控制中心。通過有線網(wǎng)絡(luò)在現(xiàn)場建立數(shù)據(jù)網(wǎng)絡(luò)或手動測量數(shù)據(jù)是傳統(tǒng)智能農(nóng)業(yè)檢測系統(tǒng)在大多數(shù)情況下獲得環(huán)境參數(shù)的一種方式
2、。 智能農(nóng)業(yè)利用物聯(lián)網(wǎng)技術(shù)建立一個網(wǎng)絡(luò),利用各種傳感器和無線傳輸設(shè)備,可以及時呈現(xiàn)各種環(huán)境參數(shù)。真實和自動的方式,以及無縫連接用戶和產(chǎn)品。如果繼續(xù)采用標(biāo)簽技術(shù),它還將能夠建立現(xiàn)代農(nóng)業(yè)農(nóng)產(chǎn)品的可追溯平臺,實現(xiàn)對食品安全和產(chǎn)品可追溯系統(tǒng)的有效控制農(nóng)場。 1.1.1.提高農(nóng)業(yè)生產(chǎn)效率 物聯(lián)網(wǎng)技術(shù)在農(nóng)業(yè)中的使用顯著提高了農(nóng)業(yè)部門的管理水平,提高了農(nóng)業(yè)生產(chǎn)效率。在農(nóng)業(yè)生產(chǎn)過程中,利用各種遠程數(shù)據(jù)傳輸,構(gòu)成了監(jiān)管的科學(xué)依據(jù)。自動化農(nóng)業(yè)生產(chǎn)環(huán)境。持續(xù)優(yōu)化作物生長環(huán)境為作物提供了最佳的生長環(huán)境,提高了質(zhì)量和產(chǎn)量,從而提高了農(nóng)業(yè)生產(chǎn)的效率。 1.1.2.保障食品安全性 在現(xiàn)代農(nóng)產(chǎn)品安全體系中,有一個農(nóng)
3、產(chǎn)品和食品的可追溯系統(tǒng),集成了電子標(biāo)簽,條形碼,物聯(lián)網(wǎng),GPRS和計算機的應(yīng)用。 ,允許監(jiān)測農(nóng)產(chǎn)品的質(zhì)量,可追溯性和可視化,并允許農(nóng)產(chǎn)品從農(nóng)田轉(zhuǎn)移到餐桌。為了確保整個加工過程的有效監(jiān)控,可以可靠地管理農(nóng)產(chǎn)品并顯著提高食品安全的可靠性。 1.2 國內(nèi)外在該方向的研究現(xiàn)狀及分析 1.2.1 國外農(nóng)業(yè)發(fā)展形勢 隨著全球氣候惡化,各種環(huán)境問題得不到解決,可持續(xù)經(jīng)濟已成為現(xiàn)代農(nóng)業(yè)發(fā)展的主要趨勢。近年來,世界發(fā)達農(nóng)業(yè)國家在可持續(xù)農(nóng)業(yè)經(jīng)濟方面做了大量嘗試:生態(tài)農(nóng)業(yè),能源農(nóng)業(yè)和智能農(nóng)業(yè)已成為經(jīng)濟發(fā)展的新趨勢??沙掷m(xù)農(nóng)業(yè)。目前,農(nóng)業(yè)的基本國情分為三類:第一土地少的人缺乏資源,第二是缺乏勞動力和人力資源缺
4、乏,第三是土地和勞動力。現(xiàn)代農(nóng)業(yè)表現(xiàn)在以下幾個方面: 1.2.1.1農(nóng)業(yè)生產(chǎn)智能化 GPS技術(shù)使得開發(fā)高智能拖拉機成為可能,不僅可以精確定位和區(qū)分行進方向,還可以將GPS數(shù)據(jù)傳輸?shù)睫r(nóng)場信息采集中心,誤差小于2.5厘米。因此,坐標(biāo)的溫度和濕度,土壤的化學(xué)成分和排水溝的位置形成了最佳的農(nóng)業(yè)計劃,包括種子,肥料和農(nóng)藥的使用量。這種智能拖拉機可以通過在屏幕前執(zhí)行簡單操作輕松執(zhí)行一系列任務(wù),這不僅加快了工作速度,還減少了種子,農(nóng)藥和化肥的浪費。生產(chǎn)不僅可以增加20%,而且可以節(jié)省50%的投資。在美國,Valmont和ARS聯(lián)合開發(fā)了一種用于智能作物灌溉的紅外水分儀。如果該裝置安裝在灌溉機上,則每6秒
5、鐘測量一次植物的溫度值。該值小于設(shè)定值。此時,信息中心提供啟動灌溉系統(tǒng)的說明。收獲作物時,準(zhǔn)確的生產(chǎn)統(tǒng)計數(shù)據(jù)是一項龐大而復(fù)雜的任務(wù)。美國研究所已開發(fā)出一種可在收割機收割過程中準(zhǔn)確收集的生產(chǎn)計數(shù)器。根據(jù)生產(chǎn)數(shù)據(jù)和這些數(shù)據(jù),建立每個地區(qū)的生產(chǎn)統(tǒng)計數(shù)據(jù),工作人員可以使用這些生產(chǎn)表制定下一年的生產(chǎn)計劃。 1.2.1.2農(nóng)業(yè)生產(chǎn)機械化 根據(jù)作物的生長規(guī)律, 機械化耕作的農(nóng)業(yè)生長是在人工調(diào)節(jié)的生態(tài)環(huán)境中進行的, 如光強、溫度和土壤濕度、空氣濕度和土壤的溫度和養(yǎng)分組成, 是高新技術(shù)的完全應(yīng)用, 完全或部分不具備現(xiàn)代農(nóng)業(yè)的地形、季節(jié)和其他自然條件。具有機械化、智能化、高進、規(guī)模化、高產(chǎn)、高質(zhì)量、高產(chǎn)等特點
6、。現(xiàn)代智能農(nóng)業(yè)在荷蘭、德國、日本、法國、美國等其他發(fā)達農(nóng)業(yè)國家得到了大規(guī)模發(fā)展。隨著各種技術(shù)的不斷進步, 現(xiàn)代智能農(nóng)業(yè)的特殊優(yōu)勢與成為廣大市民農(nóng)業(yè)生產(chǎn)的未來有關(guān)。。 1.2.1.3農(nóng)業(yè)經(jīng)營產(chǎn)業(yè)化 傳統(tǒng)農(nóng)業(yè)將從原有僅僅是產(chǎn)銷、農(nóng)貿(mào)變成產(chǎn)供銷、農(nóng)工貿(mào)、農(nóng)科教有機結(jié)合和相輔相成的經(jīng)營機制?,F(xiàn)代的農(nóng)產(chǎn)品市場對食品安全越來越嚴(yán)格,要求農(nóng)產(chǎn)品在耕種、生產(chǎn)、加工、包裝、儲運、銷售等環(huán)節(jié)技術(shù)水平提高、經(jīng)營透明化、運作效率高,所以農(nóng)業(yè)產(chǎn)業(yè)化是新時代農(nóng)業(yè)的必經(jīng)之路。 1.2.1.4.農(nóng)業(yè)生產(chǎn)方式和經(jīng)營目標(biāo)更為廣泛 現(xiàn)代農(nóng)業(yè)生產(chǎn)將結(jié)合更多的元素。拓展農(nóng)業(yè)的生產(chǎn)方式以及經(jīng)營目標(biāo),例如:以環(huán)保與可循環(huán)經(jīng)濟為目標(biāo)
7、的生態(tài)農(nóng)業(yè)、以觀光旅游為副業(yè)或主業(yè)的觀光農(nóng)業(yè)、以供市區(qū)市民娛樂性勞作或者一家人進行農(nóng)家樂的悠閑郊區(qū)農(nóng)業(yè)等新的農(nóng)業(yè)新模式將不斷開發(fā)、推廣。 1.2.2 國內(nèi)農(nóng)業(yè)發(fā)展形勢 中國正出于轉(zhuǎn)型期,轉(zhuǎn)向現(xiàn)代農(nóng)業(yè)進軍的重要時期。在這一時段里,隨著人均GDP突破1萬美元的小康階段,人們對與物質(zhì)生活的追求也隨之提高了。發(fā)展智慧農(nóng)業(yè)的目標(biāo)是實現(xiàn)增收增產(chǎn)、節(jié)省資源、統(tǒng)一耕種、保證食品安全。智慧農(nóng)業(yè)還可以調(diào)整農(nóng)村的收入結(jié)構(gòu),實現(xiàn)科技改變農(nóng)業(yè),并在改善水土平衡、保持氣候良好、調(diào)節(jié)地理環(huán)境、改進生態(tài)平衡等方面做出重要貢獻,具有重大的生態(tài)效益和社會效益。 第二章 系統(tǒng)整體設(shè)計方案 2.1系
8、統(tǒng)功能 該系統(tǒng)有兩個主要任務(wù), 測試任務(wù)和傳輸任務(wù), 分別由不同的設(shè)備負責(zé)相應(yīng)的功能。本文的智能農(nóng)業(yè)設(shè)計以嵌入式系統(tǒng)為基礎(chǔ), 實現(xiàn)了棚內(nèi)的遮陽板和灑水控制, 以及對溫度和濕度的實時監(jiān)測,土壤水分、照明強度和降水。同時, 通過無線收發(fā)器模塊, 收集遙控器末端的數(shù)據(jù)傳輸和相應(yīng)的控制操作。在本設(shè)計中, 棚內(nèi)的溫度和濕度、發(fā)光強度、土壤濕度、發(fā)光強度等環(huán)境數(shù)據(jù)都設(shè)置了閾值, 再次設(shè)定了閾值, 將自動做出相應(yīng)的報警或澆水操作。 2.2工作原理 上述大棚中所有的相關(guān)數(shù)據(jù)信息主要是通過多個傳感器來對相應(yīng)的。光照傳感器、溫濕度傳感器、土壤濕度傳感器、雨滴傳感器等進行數(shù)據(jù)采集得到的,并將采集到的數(shù)據(jù)通過E
9、SP8266無線傳感網(wǎng)絡(luò)傳輸?shù)絊TM32F407VET6上,以此實現(xiàn)對各數(shù)據(jù)信息的遠距離傳輸. 而后ESP8266模塊將各數(shù)據(jù)信息從STM32F407VET6控制系統(tǒng)通過網(wǎng)絡(luò)上傳到上位機,實現(xiàn)實時檢測功能,調(diào)控指令通過 ESP8266 模塊傳輸至STM32F407VET6,再通過STM32F407VET6傳輸至對應(yīng)模塊來實現(xiàn)相關(guān)設(shè)備的調(diào)控功能。 本設(shè)計農(nóng)植物生長環(huán)境全參數(shù)的采集,并設(shè)定了預(yù)定值,當(dāng)某個環(huán)境參數(shù)超過它對應(yīng)的設(shè)定值,系統(tǒng)將響起警報信號并發(fā)送對應(yīng)的警報信號給人機交互界面。整個系統(tǒng)設(shè)計為三層:感知層、傳輸層、人機交互層。第一層:感知層,也就是各種傳感器,負責(zé)收集農(nóng)植物大棚各種環(huán)境參數(shù)
10、;第二層:傳輸層,把傳感器收集到的數(shù)據(jù)匯集到單片機內(nèi)部進行處理,然后通過傳輸層顯示在人機界面;第三層:人機交互層,良好的人機交互層能把上傳數(shù)據(jù)呈現(xiàn)在用戶面前,并根據(jù)用戶的操作發(fā)送指令給單片機,讓單片機做出反應(yīng)。 圖2-1 系統(tǒng)框架圖 如圖2-1所示,本次論文設(shè)計的系統(tǒng)采用的處理內(nèi)核是ARM32位的Cortex-M4 CPU的STM32最小系統(tǒng)板STM32F407VET6。根據(jù)DHT11的主要參數(shù),包括:(1)濕度的測量范圍為20%-95%,測量誤差為+-5%;(2)溫度測量范圍為0攝氏度到50攝氏度,測量誤差為+-2度(3)濕度測量精度為1%,溫度測量精度為1攝氏度。用于測量光照強度的B
11、H1750FVI模塊,光照強度測量范圍為1lx-65535lx,精度為1lx,最小誤差變動在+-20%;用于測量雨水的模塊,有TTL數(shù)字輸出和AO輸出兩種模式,第一種是檢測是否有雨滴,第二種模式是檢測雨滴的大小;土壤濕度模塊同是有AO輸出與DO輸出,當(dāng)濕度值低于設(shè)定值時,DO輸出高電平,高于設(shè)定值時,DO輸出低電平。這四個傳感器收集到的數(shù)據(jù)匯集到STM32單片機進行分析處理,然后把分析后的結(jié)果通過ESP8266模塊發(fā)送給指定的連接上位機。由上位機操控水泵灑水等操作。 第三章 系統(tǒng)硬件設(shè)計 本設(shè)計將系統(tǒng)分為硬件和主控兩部分,其中的硬件部分包括空氣溫濕度傳感器、土壤濕度傳感器、光
12、照傳感器、無線傳輸模塊。主控部分采用的是ST公司的STM32F407VET6。 3.1 STM32 簡介 就是指ST公司開發(fā)的32位微控制器。在如今的32位控制器當(dāng)中,STM32是為是領(lǐng)跑者,擁有出眾的性能、靈活且豐富的內(nèi)設(shè)。優(yōu)點是高性價比和低能耗,大受工程師和市場的青睞。STM32的多系列,可以滿足市場的各種需求,從內(nèi)核上分有 Cortex-M0、M3、M4 和 M7,內(nèi)核又可以分為主流、高性能和低功耗。F4 代表了高性能,基于 Cortex-M4 內(nèi)核,主頻 180M。特點為高性能、低成本、低功耗。本文使用STM32F407VET6,主要參數(shù)如下: 圖3-1 STM32F407
13、VET6主要參數(shù) 3.1.1 STM32F407VET6 命名解釋 家族STM32表示32bit的MCU產(chǎn)品類型 F表示基礎(chǔ)型 407表示具體特性:高性能 V表示引腳數(shù)目:V表示100pin,其他的 C表示48,R表示64,Z表示144。Z表示144,B表示208,N表示216 E表示FLASH大小:E表示512KB, C表示 256,E表示 512,I表示2048。 T表示封裝:T表示QFP封裝,這個是最常用的封裝。 6表示溫度:6表示溫度等級為A :-40~85°,7代表-40——105℃。 3.1.2 開發(fā)板介紹 圖3-2 STM32F407VET6 開發(fā)板原理圖
14、 此開發(fā)板選擇了STM32F407VET6作為MCU,這個芯片配置非常強大,他擁有資源:集成了ARM32位Cortex-M4 CPU與FPU,自適應(yīng)實時加速器,允許零等待狀態(tài)從閃存到執(zhí)行區(qū)域,頻率高達168M HZ,擁有儲存器保護單元,集成FPU和DPS指令。擁有的資源如下:具有192+4KB SRAM、512KB FLASH、3個SPI、3個串口、1個標(biāo)準(zhǔn)2.0 USB(帶DMA)、1個用于外接HS ULPI USB、1個10/100M以太網(wǎng)MAC控制器、一個8至12位并行攝像機接口、3個AD(12bit、1us、分時24道)、2個12bit的DA、2個全雙工I2S、3個IIC、1個SD
15、IO接口、2個CAN、140個IO口。詳細見下圖3-3。 圖3-3 STM32F407VET6資源 ST(意法半導(dǎo)體)推出了以基于ARM® Cortex?-M4為內(nèi)核的STM32F4系列高性能微控制器。他采用了90 納米的NVM 工藝與ART(自適應(yīng)實時存儲器加速器,Adaptive Real-Time MemoryAccelerator?)。 ART技術(shù)使得程序零等待執(zhí)行。提升程序執(zhí)行的效率。將Cortext-M4的性能發(fā)揮到了極致,使得STM32 F4系列可達到210DMIPS@168MHz。 在 CPU 運行時, 作用自適應(yīng)實時加速器可以
16、完全釋放 cortex-m4 內(nèi)核的性能允許的頻率 (≤168Mhz)。。在閃存中運行的程序,能達到相當(dāng)于零等待周期的性能。 STM32F4系列微控制器集成了單周期DSP指令和FPU(floating point unit,浮點單元),提升了計算能力,可以進行一些復(fù)雜的計算和控制。 圖 3-4 STM32F407VET6 正面引腳圖 使用的STM32 芯片是封裝好的成品,由內(nèi)核和片上外設(shè)組成。與將他電腦 類比,內(nèi)核與外設(shè)就如同電腦上的 CPU 與主板、顯卡、內(nèi)存、硬盤的關(guān)系,內(nèi)核即為CPU。由 ARM 公司設(shè)計。芯片不由ARM 公司生產(chǎn),ARM 公司出售其芯片技術(shù)授權(quán)。;片生產(chǎn)廠商
17、們?nèi)?ST、TI、Freescale,主要負責(zé) 在內(nèi)核之外設(shè)計部件并生產(chǎn)整個芯片.內(nèi)核之外的部件被稱為片上外設(shè)。 如 GPIO、USART(串口)、I2C、SPI 等都叫做片上外設(shè)。具體見圖 6-3。 圖 3-5 STM32 芯片架構(gòu)簡圖 ※集成了新的DSP和FPU指令,擁有168MHz的高速性能可以使數(shù)字信號控制器應(yīng)用和產(chǎn)品開發(fā)達到了新的水平。從而提升控制算法的代碼效率、執(zhí)行速度。 ※先進技術(shù)和工藝 -?存儲器加速器:自適應(yīng)實時加速器(ART Accelerator? ) - 多重AHB總線矩陣和多通道DMA:可實現(xiàn)程序執(zhí)行和數(shù)據(jù)傳輸?shù)牟⑿刑幚怼?shù)據(jù)傳輸速率很快 - 90nm
18、工藝 ※高性能 - 210DMIPS@168MHz - 因為采用了ST的ART加速器,程序從FLASH運行基本等于0等待更多的存儲器 - 多達1MB FLASH (將來ST計劃推出2MB FLASH的STM32F4) - 192KB SRAM:128KB 在總線矩陣上,64KB在專為CPU使用的數(shù)據(jù)總線上高級外設(shè)能與STM32F2兼容 - USB OTG高速 480Mbit/s - IEEE1588,?以太網(wǎng)?MAC 10/100 - PWM高速定時器:168MHz最大頻率 - 加密/哈希硬件處理器:32位隨機數(shù)發(fā)生器(RNG) - 帶有日歷功能的32位RTC:<1 μA的
19、實時時鐘,1秒精度 ※更多的提升 - 低電壓:1.8V到3.6V VDD,在某些封裝上,可降低至1.7V - 全雙工I2S - 12位 ADC:0.41us轉(zhuǎn)換/2.4Msps(7.2Msps在交替模式) - 高速USART,可達10.5Mbits/s - 高速SPI,可達37.5Mbits/s - Camera接口,可達54M字節(jié)/s 3.1.3本設(shè)計涉及到的接口與硬件資源 GPIO口:General Purpose Input Output (通用輸入/輸出)簡寫為GPIO,或者是總線擴展器,人們利用I2C、SMBus或SPI接口簡化了I/O口的擴展。當(dāng)微控制器或芯片組沒
20、有足夠的I/O端口時,系統(tǒng)有需要采用遠端串行通信或控制時,GPIO產(chǎn)品可以提供另外的控制和監(jiān)視功能。 UART:Universal Asynchronous Receiver/Transmitter,通用異步接收/發(fā)送裝置串行接口簡稱串口 串行通信接口采用串行通信方式。串行接口 (Serial Interface)的特點是通信線路比較簡單,缺點是傳送速度較慢。用一對傳輸線就能夠?qū)崿F(xiàn)雙向通信,成本低。尤其適用于遠距離通信。 I2C(Inter-Integrated Circuit)總線是兩線式串行總線,用途是連接微控制器和他的外圍設(shè)備。是一種總線標(biāo)準(zhǔn)多領(lǐng)域被使用。它是同步通信的一種特殊形式
21、,優(yōu)點是接口線少,器件封裝小,控制方式簡單,通信效率較高。 SPI:高速同步串行口。是一種四線同步雙向串行總線。Serial Peripheral interface(SPI),是串行外圍設(shè)備接口。是Motorola首先在其MC68HCXX系列處理器上定義的。SPI接口是在 EEPROM,F(xiàn)LASH,實時時鐘,AD轉(zhuǎn)換器,還有數(shù)字信號處理器和數(shù)字信號解碼器之間實現(xiàn)應(yīng)用。SPI,在芯片的管腳上只占用四根線。是一種高速的,全雙工,同步的通信總線,節(jié)約了芯片的管腳,同時PCB的布局上節(jié)省空間,因比較簡潔好用,所以許多的芯片集成了這種通信協(xié)議。 3.2傳感器及wifi模塊介
22、紹 3.2.1空氣溫濕度采集模塊 為了適應(yīng)蔬菜溫棚的特殊環(huán)境,本設(shè)計選用了DHT11溫濕度傳感器,該傳感器可以進行較精確溫度 和濕度的測量并進行數(shù)字輸出。DHT11溫濕度傳感器擁有先進采集模塊和測量技術(shù),穩(wěn)定性以及可信度高,其供電電壓為3~5.5 V,濕度為20%~90%,精度為±5%,溫度為 0~50 °C,精度為±2 °C。本設(shè)計中選用PG10端口來進行DHT11的單總線數(shù)據(jù)的傳輸。 4-1 DHT11的管腳圖和接線說明 如圖4-1所示,DHT11第一個接VDD第四個引腳接VEE,而第二個引腳DATA接MCU的IO腳,連接線的長度低于20M時,接上拉電阻 DHT11的數(shù)據(jù)結(jié)構(gòu)
23、 DHT11使用的是單線串行通信模式,數(shù)據(jù)通過一條線來傳輸,因此需要制定一定的通信協(xié)議。詳細的通信過程如下: 4-2 DHT11通信過程 總線的空閑狀態(tài)為高電平,開始信號為發(fā)送一個大于18ms的低電平,然后拉高延時20-40us后,IO口切換輸入模式,等待DHT11發(fā)送80us的低電平,這是DHT11收到開始信號的響應(yīng)信號,低電平結(jié)束后DHT11將會發(fā)送一個80us的高電平,然后開始了傳輸數(shù)據(jù)。DHT11數(shù)據(jù)的傳輸以一個50us的低電平為開始,然后發(fā)送第一位數(shù)據(jù),低電平結(jié)束后DHT11拉高總線,若高電平持續(xù)了26us-28us,則這一bit數(shù)據(jù)為0;若高電平持續(xù)了70us則這一bit的數(shù)
24、據(jù)為1,高位先出。 每次DHT11輸出的數(shù)據(jù)為40bit,即5個字節(jié),第一個byte為濕度的整數(shù)部分、第二個byte為濕度的小數(shù)部分、第三個byte為溫度的整數(shù)部分、第四個byte為溫度的小數(shù)部分、而第五個byte為檢驗和。正確的檢驗和為是前四個字節(jié)相加的低8位。 3.2.2 土壤濕度采集模塊 棚內(nèi)作物吸收土壤中所包含的水分來進行生命活動,土壤中水分過少作物會枯萎,過多植物根部將會漚爛.因而對土壤濕度的把控也尤為重要,一般控制在55%~85% 最佳。本設(shè)計為了能時刻監(jiān)測濕度的變化,選用了risym土壤濕度傳感器。利用電位器可以控制閾值,檢測值低于或高于閾值時,傳感器的DO引腳輸出高電平
25、,risym土壤濕度傳感器采用了LM393比較器芯片。其工作電壓為3~35 V。為了提高測量的精度,本設(shè)計采用AD轉(zhuǎn) 換來采集risym土壤濕度傳感器測量到的土壤濕度數(shù)據(jù)。主控芯片STM32F407VET6自帶的AD轉(zhuǎn)換通 道使得模數(shù)轉(zhuǎn)換更加方便。 3.2.3土壤濕度傳感器的性能指標(biāo) (1)可以通過調(diào)節(jié)模塊中的藍色電位器來設(shè)定閥值;(2)工作電壓3.3v-5v; (3)比較器采用LM393芯片,工作穩(wěn)定; 圖4-3 土壤濕度傳感器 圖4-5 土壤濕度傳感器 接線說明 3.2.4 YL-83 雨滴模塊 雨量的多少直接影響到土壤濕度,選擇了Y
26、L-83 雨滴模塊來監(jiān)測雨量的多少。 3.2.4.1 YL-83性能指標(biāo)和特性 (1)供電電壓:3V-5V;(2)平均工作電流超過15mA;(3)采用AO/DO輸出(4)可以通過電位器調(diào)節(jié)靈敏度(5)大面積雨滴檢測板5.4cm*4.0cm,控制板板子3*1.6cm;(6)雨滴板和控制板分開。 3.2.4.2 YL-83的管腳圖和接線說明 圖4-6雨滴傳感器 雨滴板. 圖4-7 雨滴傳感器控制板。 使用方法:VCC接5V電源,電源燈亮起。感應(yīng)板上面無水時,DO輸出為高電平,開關(guān)指示燈滅。滴水,DO輸出低電平,開關(guān)指示燈亮起,而當(dāng)擦掉上面
27、的水滴,又輸出高電平。 3.2.4.3 YL-83數(shù)據(jù)結(jié)構(gòu) 輸出形式:數(shù)字開關(guān)量輸出(0和1)與模擬量AO電壓輸出: TTL電平輸出,TLL輸出的有效信號為低電平驅(qū)動能力100mA左右。 AO模擬輸出,可以連接單片機的具有AD功能的IO腳,能夠輸出雨滴量的大小。 3.2.5光敏電阻傳感器 作物的生長需要光照,該模塊實時檢測適宜棚內(nèi)作物生長的光照強度閾值范圍。 3.2.5.1 光敏電阻的性能指標(biāo) (1)可通過調(diào)節(jié)模塊上的電位器來改變閥值;(2)低功耗3.3V(3V-5V供電兼容); (3)電平轉(zhuǎn)換(3v-5v系統(tǒng)通信兼容);(4) 芯片BH1750FVI;
28、 圖4-8. 光敏電阻傳感器實物圖 圖4-9. 光敏電阻傳感器接線圖 3.2.5.2 光敏電阻的運用簡介 (1)光敏電阻對環(huán)境中光線強度的變化比較敏感,經(jīng)常使用它來測量環(huán)境的光線強度。 (2)光敏電阻傳感器將外界光線強度的變化轉(zhuǎn)化為電信號。當(dāng)光線強度低于給定值時,DO端輸出低電平;當(dāng)光線強度高于給定值時,DO端輸出高電平。 (3)傳感器的數(shù)字輸出端可以與單片機的I/O口相連,或者與繼電器的控制端相連構(gòu)成光控開關(guān)。 3.2.5.3 光敏電阻在本設(shè)計中的運用 本次設(shè)計將光敏電阻傳感器模塊的數(shù)字輸出端接繼電器控制端構(gòu)成光控開關(guān),繼電器常開觸點端接LED
29、燈。如圖2-7所示,當(dāng)系統(tǒng)內(nèi)的光線強度低于給定值時,數(shù)字端輸出低電平,觸發(fā)繼電器閉合,LED燈亮。當(dāng)農(nóng)業(yè)大棚內(nèi)的光線強度大于給定值時,數(shù)字端輸出高電平,蜂鳴器發(fā)出警告,發(fā)送警告信號上位機。 3.2.6 ESP8266WIFI模塊 3.2.6.1 模塊基本參數(shù) 所述ESP8266是超低功率UART-無線對講模塊。他的大小和超低功率技術(shù),用于移動設(shè)備和應(yīng)用程序的IoT的有競爭力的封裝,連接所述多個物理裝置的用戶于Wi- Fi。在無線網(wǎng)絡(luò)上,為網(wǎng)絡(luò)功能建立Internet或LAN通信。 ESP8266有多種封裝方式:天線可支持集成PCB天線,IPEX接口和打孔接口,ESP8266可應(yīng)用于智能電
30、網(wǎng),交通,家具,手持設(shè)備,工業(yè)控制等。 所述ESP8266支持無線802.11b / g / n的,支持STA / AP / STA + AP,集成TCP / IP協(xié)議棧的三種模式,并支持多個TCP客戶端連接。支持豐富的Socket AT控制,UART / GPIO數(shù)據(jù)通信接口支持,Smart Link智能電網(wǎng)支持,遠程固件升級支持,內(nèi)置32位MCU,可用作應(yīng)用處理器,功耗極低,適用于電池供電的應(yīng)用單電源。詳細參數(shù)請參考下表: 表格 4-10 模塊技術(shù)規(guī)格 硬件參數(shù) 硬件接口 UART,IIC,PWM,GPIO,ADC 工作電壓 3.3V GPIO驅(qū)動能力 Max:15
31、ma 工作電流 持續(xù)發(fā)送下=> 平均值:~70mA,峰值: 200mA 正常模式下=> 平均: ~12mA,峰值: 200mA 待機:<200uA, 工作溫度 -40℃~125℃ 存儲環(huán)境 溫度:<40℃,相對濕度:<90%R.H. 尺寸 板載PCB天線:14.3mm*24.8mm*1mm; 串口透傳 傳輸速率 110-921600bps TCP Client 5個 軟件參數(shù) 無線網(wǎng)絡(luò)類型 STA/AP/STA+AP 安全機制 WEP/WPA-PSK/WPA2-PSK 加密類型 WEP64/WEP128/TKIP/AES
32、 網(wǎng)絡(luò)協(xié)議 IPv4, TCP/UDP/FTP/HTTP 3.2.6.2 ESP8266 硬件介紹 圖4-11 ESP8266PCB原理圖 VCC接3.3V電源,GND接地,CH_PD拉高,即可正常工作。UTXD接單片機的RX腳,URXD接單片機的TX腳,其他的引腳可以不用理會。詳情參考表格2。 表格4-12 Pin腳定義 PIN Function Description 1 URXD 1) UART_RXD,接收; 2) General Purpose Input/Output:GPIO3; 2 UTXD 1) UART_TXD
33、,發(fā)送; 2)General Purpose Input/Output:GPIO1; 3)開機時禁止下拉; 5 RESET(GPIO 16) 外部Reset信號,低電平復(fù)位,高電平工作(默認高); 6 GND GND 8 VCC 3.3V,模塊供電; 14 CH_PD 1) 高電平工作; 2) 低電平模塊供電關(guān)掉; 3.2.6.3 EPS8266的應(yīng)用簡介 ESP8266模塊支持STA/AP/STA+AP 三種工作模式。 (1)STA模式:ESP8266模塊經(jīng)由路由器連接到Internet,移動電話或計算機通過Internet對設(shè)備進行遠程控制。 (2)
34、AP模式:ESP8266模塊作為接入點,允許移動電話或計算機直接與模塊通信,實現(xiàn)無線局域網(wǎng)控制。 (3)STA + AP模式:兩種模式共存的模式,即可以通過互聯(lián)網(wǎng)控制實現(xiàn)連續(xù)控制,操作實用。 圖 4-13 串口調(diào)試界面 圖4-14 TCP調(diào)試界面客戶端和服務(wù)器必須安裝在同一網(wǎng)絡(luò)上(在路由器上或同時在模塊上)。該設(shè)計是使計算機作為安裝在模塊上(該PC連接到WiFi模塊,例如Esp8266)的客戶端,并且該模塊作為服務(wù)器,AT命令設(shè)定服務(wù)器模式和輔助模塊之間debugging tcp連接模塊。 3.3 硬件設(shè)計 3.2.7.1JTAG設(shè)計 JTAG(
35、Joint Test Action Group;聯(lián)合測試行動小組)是一種國際標(biāo)準(zhǔn)測試協(xié)議(IEEE 1149.1兼容),主要用于芯片內(nèi)部測試。標(biāo)準(zhǔn)的JTAG接口是4線:TMS、TCK、TDI、TDO,分別為模式選擇、時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。 圖3.2 JTAG原理圖 3.2.7.2溫濕度傳感器模塊 為了測量的準(zhǔn)確性和多通道數(shù)據(jù)采集,這里選擇3片dht11連接到stm32芯片上,由芯片上的IO引腳作為3片dht11的器件數(shù)據(jù)及時鐘選擇端口。 電路圖設(shè)計如圖4-5所示: 第四章 系統(tǒng)軟件設(shè)計 4.1 程序流程圖及開發(fā)環(huán)境搭建
36、 5-1 程序運行流程圖 4.2開發(fā)環(huán)境 4.2.1 KEIL5 的介紹 本系統(tǒng)編程用的是C語言,編程軟件用的是KEIL5,在單片機編程中,較為主流的編程軟件,它擁有流暢的用戶界面和強大的仿真功能。因為使用的傳感器以及其他模塊眾多,因此把各個模塊的功能與初始化都封裝成了函數(shù)并分別存在了不同文檔之中,這樣不僅使得代碼雅觀整潔,而且調(diào)用的時候也十分方便。子程序中包括DHT11溫濕度模塊、雨滴傳感器、土壤濕度模塊、光照強度模塊和ESP8266WIFI模塊等。 與之前的版本不同,KEIL 5分成MDK CORE和Soft和Software Packs兩
37、個部分。MDK Core主要包括KEIL5 IDE集成開發(fā)環(huán)境和ARM Compiler5。Software Packs則可以在不更換MDK Core的情況下,單獨管理設(shè)備支持包和中間件更新包(即Device、CMSIS和Middleware)。 4.2.2 J-LINK 的連接與設(shè)置 J-Link-OB是SEGGER開發(fā)的自主調(diào)試調(diào)試器下載器。它通常是在大公司的評估板(“集成”)上設(shè)計的。這就是為什么后綴是“OB”。名為“J-Link-OB”的模擬下載調(diào)試器具有USB通信功能,能與PC通信。另一端通過SWD / JTAG模式與兼容設(shè)備通信,以執(zhí)行調(diào)試任務(wù)。 ,下載和調(diào)試。所有內(nèi)置微控
38、制器系列如ARM7 \ 9 \ 11,Cortex-M0 \ M1 \ M2 \ M3 \ M4 \ A5 \ A8 \ A9與SWD接口均支持J-LINK。 關(guān)于J-LINK的使用,需要用杜邦線把J_Link 和開發(fā)板的 JTAG/SWD 連接起來。如下圖所示: 圖5-3 STM32F407VET6開發(fā)板相關(guān)引腳原理圖 圖5-4 J-LINK相關(guān)引腳原理圖 PA13 、PA14的復(fù)用功能是和 J_Link里面的SWDIO和SWCLK 引腳是一樣的。然后PA13 PA14 接到 JTAG/SWD 的7 9 引腳。也就是說。J_Link里面的SWDIO和SWCLK 用串口線和開發(fā)板的
39、JTAG/SWD 的7 9 引腳直接相連。高電平和接地可看JTAG原理圖。 4.2.3 CH340G USB轉(zhuǎn)串口 自行開發(fā)系統(tǒng)USB-TTL / STC-ISP采用USB接口,解決了缺乏串口的問題,允許筆記本給單片機STC系列節(jié)目的用戶的問題。關(guān)于CH340G的使用,首先需要安裝它的相關(guān)驅(qū)動:CH341SER.exe, 圖5-5 CH340G驅(qū)動安裝 驅(qū)動安裝完成后,按照下面的接線圖接好線即好: 圖5-6 接線圖 4.3 主要模塊程序設(shè)計 軟件設(shè)計部分,包括兩大部分:初始化和功能性設(shè)計。 4.3.1 系統(tǒng)初始化 (1) 時鐘的初始化 時鐘是MCU的命令源和STM32
40、具有三個不同的時鐘源來驅(qū)動系統(tǒng)時鐘:時鐘振蕩器HSI,時鐘HSE振蕩器和PLL時鐘。外部晶體HSE /諧振器:所述HSI時鐘信號由一個8 MHz的內(nèi)部振蕩器可以由2被用作分割后的PLL輸入由兩個時鐘源產(chǎn)生的高速的外部時鐘信號生成HSE陶瓷,外部用戶時鐘HSE。我選擇了PLL時鐘。主PLL乘以HSI時鐘除以2或HSE乘以可配置分頻器的PLL2時鐘。 PLL2和PLL3通過可配置的分頻器由HSE同步。所述PLL(時鐘源,分頻器,乘法器等的選擇)的配置必須在每個PLL的激活之前完成,并且一旦其輸入時鐘是穩(wěn)定的。啟用PLL后,這些設(shè)置將不會更改。更改輸入PLL時鐘源時,必須在選擇新時鐘源后禁用原始時鐘
41、源(通過時鐘配置寄存器的PLLSRC位) (RCC_CFGR))。當(dāng)PLL準(zhǔn)備就緒時,中斷時鐘寄存器(RCC_CIR)可以產(chǎn)生中斷。 (2)初始化I / O. 每個GPI端口/ O具有兩個32位的配置寄存器(GPIOx_CRL,GPIOx_CRH),2個32位數(shù)據(jù)寄存器(GPIOx_IDR和GPIOx_ODR),寄存器32個比特/復(fù)位(GPIOx_BSRR)和一個16位的復(fù)位寄存器(GPIOx_BRR)。還有一個32位鎖定寄存器(GPIOx_LCKR)。 浮動輸入,輸入/輸出,輸入/輸出,模擬輸入,漏極開路輸出,推挽輸出,推挽復(fù)用,開漏多路復(fù)用功能:每個GPIO端口位可單獨在幾種模式由軟
42、件進行設(shè)置。每個端口位I / O可以自由編程,但端口的寄存器作為32位字(半字訪問或字節(jié)不允許I / O應(yīng)該可用)。該GPIOx_BSRR和GPIOx_BRR寄存器允許讀/編輯所有GPIO寄存器獨立訪問,有沒有危險產(chǎn)生的讀訪問和修改之間的IRQ。下圖顯示了I / O端口位的基本結(jié)構(gòu)。 (3) 串口初始化 在這種設(shè)計中,收發(fā)器通過串口傳輸?shù)絊TM32,其最基本的參數(shù)是波特率。 STM32串口必須打開串口時鐘,設(shè)置相應(yīng)的IO端口模式,并配置波特率,數(shù)據(jù)位長,奇偶校驗等信息。具體步驟如下。 串行時鐘被激活。串行端口用作STM32的器件,其時鐘由器件時鐘使
43、能寄存器控制,串行端口1為APB2ENR寄存器的第14位。除了激活A(yù)PB2ENR中的串行端口1時鐘外,其他串行端口的時鐘使能位位于APB1ENR寄存器中。 串口復(fù)位。當(dāng)器件發(fā)生異常時,可以使用復(fù)位寄存器中的相應(yīng)位設(shè)置復(fù)位器件,然后重新配置器件進行返工。通常,當(dāng)初始配置設(shè)備時,首先執(zhí)行設(shè)備重置操作。通過配置APB2RSTR寄存器的第14位來實現(xiàn)復(fù)位串行端口1。 設(shè)置串口波特率。每個串行端口都有自己獨立的波特率寄存器USART_BRR,它提供不同的波特率。 串口控制。每個系列STM32端口的具有?3.許多串行端口配置由這三個寄存器中定義的三個USART_CR1控制寄存器。 圖4.3 USA
44、RT_CR寄存器各位描述 不使用該寄存器的高18位,低14位用于配置串行端口功能。 UE是串行端口使能位,通過它來啟用串行端口。 M是用于選擇字長的位。如果該位為0,則串行端口設(shè)置為8個字加n個停止位。停止位數(shù)(n)根據(jù)參數(shù)確定。 USART_CR2的位[13:12]。默認值為0. PCE是檢查的啟用位。如果值為0,則禁用驗證,否則啟用驗證。 PS是校驗位的選擇。如果設(shè)置為0,則為偶校驗,否則為奇校驗。 TXIE是發(fā)送緩沖區(qū)的空白中斷使能位。將此位設(shè)置為1.當(dāng)USART_SR的TXE位為1時,將產(chǎn)生串行端口中斷。 TCIE是傳輸完成終止的激活位。將此位設(shè)置為1.當(dāng)USART_SR的TC位為1
45、時,將產(chǎn)生串行端口中斷。 RXNEIE是接收緩沖區(qū)中非空中斷的激活。將此位設(shè)置為1.當(dāng)USART_SR中的ORE或RXNE位為1時,將生成串行端口中斷。 TE是發(fā)送使能位,如果沒有1,則使能串口發(fā)送功能。 RE是接收使能位,用法與TE相同。 數(shù)據(jù)的傳輸和接收。 STM32通過USART_DR數(shù)據(jù)寄存器發(fā)送和接收,USART_DR數(shù)據(jù)寄存器是一個包含TDR和RDR的雙寄存器。將數(shù)據(jù)寫入該寄存器時,串行端口會自動發(fā)送,收到收據(jù)時,也會出現(xiàn)在該寄存器中。該寄存器的每個位的描述如下所示: 圖4.4 USART_DR寄存器各位描述 串口狀態(tài)。串口的狀態(tài)可以通過狀態(tài)寄存器USART_SR讀取。US
46、ART_SR的各位描述如下圖所示: 圖4.5 USART_SR寄存器各位描述 4.3.2功能性設(shè)計 4.3.2.1 土壤濕度傳感器,雨量傳感器程序設(shè)計 土壤濕度和雨量傳感器都是用的模擬量采集,我們使用STM32F407VET6的ADC采集口采集土壤濕度和雨量數(shù)據(jù) AD采集的程序設(shè)計: STM32F4XX系列的ADC都是12位的逐次趨近型模數(shù)轉(zhuǎn)換器。ADC(模數(shù)轉(zhuǎn)換器)的位數(shù)決定了它的精度,ADC的位數(shù)分為8位、12位、16位,也就說它們精度范圍是分別是0~256、0~4096、0~65536。而它的轉(zhuǎn)換范圍是0~3.6V,當(dāng)你需要把你采集的數(shù)據(jù)用電壓來表示的話,假設(shè)你采集
47、的數(shù)據(jù)為X(0~4096),那么此時你輸出的電壓為(X/4096)*3.6。同時每個ADC有19個復(fù)用通道,可以測量16個外部源、兩個內(nèi)部源和一個VBAT通道的信號,可以在4個不同的模式下進行轉(zhuǎn)換。ADC的轉(zhuǎn)換結(jié)果放在一個左對齊或者右對齊的16位的數(shù)據(jù)寄存器(注入數(shù)據(jù)寄存器和規(guī)則數(shù)據(jù)寄存器)中。值得一提的是,ADC具有看門狗的功能,可以通過檢測輸入電壓來判斷是否超過設(shè)定的上下限值。 因為在大多數(shù)情況下,都是直接調(diào)用STM32F4XX芯片的庫函數(shù),因此這里重點介紹ADC采集的4個模式:單次轉(zhuǎn)換模式、連續(xù)轉(zhuǎn)換模式、掃描模式和不連續(xù)采樣模式。 單次轉(zhuǎn)換模式: 在此模式下,ADC僅初始化轉(zhuǎn)換。要
48、啟動它,將ADC_CR2寄存器的ADON位置1(僅適用于普通通道)或?qū)ONT設(shè)置為0以使用外部觸發(fā)啟動。完成此選定頻道的轉(zhuǎn)換后,有兩種情況:該通道首先是一個普通通道,然后轉(zhuǎn)換后的數(shù)據(jù)存儲在16位ADC_DR寄存器中,轉(zhuǎn)換完成后,ADC_SR狀態(tài)寄存器的EOC位被激活。在此過程中,如果啟用EOCIE,將生成中斷。 第二,如果信道是一個噴射通道,轉(zhuǎn)換后的數(shù)據(jù)被存儲在ADC_DRJ1 16位寄存器,并且一旦轉(zhuǎn)換完成的寄存器位JEOC ADC_SR條件將被激活。如果設(shè)置了JEOCIE位,它將完成。將產(chǎn)生中斷。 (1)連續(xù)轉(zhuǎn)換模式 在此模式下,ADC將在完成轉(zhuǎn)換后立即啟動下一個新轉(zhuǎn)換。當(dāng)ADC_
49、CR2控制寄存器的CONT位被激活時,外部觸發(fā)可以啟動該模式;當(dāng)ADC_CR2控制寄存器的SWSTRT位被激活時,該模式可以直接啟動,但它適用于普通通道。每個轉(zhuǎn)換后,如果正常信道組被轉(zhuǎn)換時,最后的轉(zhuǎn)換后的數(shù)據(jù)被存儲在寄存器16個ADC_DR比特和EOC是每次轉(zhuǎn)換后設(shè)置為1,并且當(dāng)EOCIE位被置位,產(chǎn)生一個中斷。 (2)掃描模式 該模式用于掃描一組模擬通道,并通過激活A(yù)DC_CR1寄存器中的SCAN位將其激活。當(dāng)使能掃描模式時,ADC會將所有選定的通道轉(zhuǎn)換為ADC_SQRx(正常通道)或ADC_JSQR(注入通道)寄存器,并在每次轉(zhuǎn)換后自動轉(zhuǎn)換下一個通道。如果設(shè)置了CONT,則當(dāng)正常通道轉(zhuǎn)
50、換為最后一個通道時,轉(zhuǎn)換將從第一個轉(zhuǎn)換恢復(fù)。一旦ADC_CR2狀態(tài)寄存器的DMA位置1,ADC在每次轉(zhuǎn)換后通過DMA DMA將數(shù)據(jù)從正常通道組傳輸?shù)絊RAM,并將它們存儲在ADC_DR寄存器。當(dāng)EOCS ADC_SR參數(shù)被設(shè)置為零時,注入通道的數(shù)據(jù)在當(dāng)EOCS設(shè)定轉(zhuǎn)換的每個正常序列的末端總是存儲在寄存器ADC_JDRx,注入通道的數(shù)據(jù)總是每個正常頻道轉(zhuǎn)換結(jié)束。存儲在ADC_JDRx注冊表中。 (3)批量采樣模式 該模式通過將ADC_CR1寄存器中的DISCEN位置1來激活該模式,這需要單獨討論規(guī)則數(shù)據(jù)和注入的輸入。 規(guī)則組:該模式將包含作為所選轉(zhuǎn)換序列一部分的n個轉(zhuǎn)換的短序列轉(zhuǎn)換為ADC
51、_SQRx寄存器。通過覆蓋ADC_CR1寄存器中的DISCNUM位可以覆蓋n的值。發(fā)生外部觸發(fā)時,ADC_SQRx寄存器中選擇的n個跳變將被觸發(fā),直到轉(zhuǎn)換結(jié)束。 注入組:當(dāng)發(fā)生外部觸發(fā)事件時,ADC_JSQR寄存器中選擇的序列將逐個轉(zhuǎn)換,直到最后一個轉(zhuǎn)換為止。 以下是AD采集程序的描述: 4.3.2.2溫濕度傳感器采集程序設(shè)計 DHT11使用的是單總線接口進行數(shù)據(jù)傳輸 顧名思義,單個總線接口只有一條數(shù)據(jù)線,它補充了系統(tǒng)中數(shù)據(jù)的交換和控制。器件(主器件或從器件)通過漏極開路或三態(tài)端口連接到數(shù)據(jù)線,以允許器件在沒有數(shù)據(jù)發(fā)送時釋放總線,其他器件使用總線(見下圖)。 。單總線通常需要一個大約
52、4.7kΩ的外部電阻電阻,因此當(dāng)總線空閑時其狀態(tài)為高電平。主設(shè)備和從設(shè)備之間的通信可以分三步完成:1線設(shè)備的初始化,1線設(shè)備的識別和數(shù)據(jù)交換。由于這些是主從結(jié)構(gòu),因此從機只能在主機調(diào)用從機時響應(yīng)。因此,主機對1線設(shè)備的訪問必須嚴(yán)格遵守單總線命令的順序,即初始化,ROM,命令,控制功能。如果序列混亂,1線設(shè)備將不響應(yīng)主機(搜索ROM命令,警報搜索命令除外)。 4.3.2.3 TCP的程序設(shè)計 1.TCP的簡單分析 本設(shè)計使用的是ESP8266WIFI模塊來構(gòu)建局域網(wǎng),在這里就涉及到TCP與UDP。典型的TCP/IP模型分為4層:應(yīng)用層、傳輸層、網(wǎng)絡(luò)互聯(lián)層和主機到網(wǎng)絡(luò)層: (1)主機
53、 - 網(wǎng)絡(luò)層:包括設(shè)備和主機 - 網(wǎng)絡(luò)層。該層的目的是為上層提供訪問接口,該接口可以通過該接口傳輸IP數(shù)據(jù)包,以不同的網(wǎng)絡(luò)協(xié)議實現(xiàn)。方法不同。 (2)網(wǎng)絡(luò)互連層:該層構(gòu)成整個TCP / IP協(xié)議模型的核心。它負責(zé)調(diào)整要在數(shù)據(jù)包中發(fā)送的數(shù)據(jù)并將其發(fā)送到目標(biāo)地址。要獲得高速傳輸,必須對數(shù)據(jù)包進行分組。可能需要通過不同的路徑轉(zhuǎn)發(fā)來自每個組的數(shù)據(jù)包,這意味著不同組之間發(fā)送目標(biāo)地址的順序不是發(fā)送順序,因此有必要對不同的順序進行排序現(xiàn)在的群體。網(wǎng)絡(luò)互連層(也稱為IP層)定義數(shù)據(jù)包的格式和IP協(xié)議。 (3)傳輸層:傳輸層主要用作源地址的對等層和TCP / IP模型中的目的地址之間的會話橋。該層有兩種協(xié)議
54、,一種是傳輸控制協(xié)議,另一種是用戶數(shù)據(jù)報協(xié)議(TCP和UDP)。兩者都是常用的數(shù)據(jù)傳輸協(xié)議,區(qū)別在于TCP是雙向,可靠,面向連接的協(xié)議,而UDP是單向,不穩(wěn)定,無連接的協(xié)議。它主要用于數(shù)據(jù)不丟失的場景以及不需要對其進行排序和控制的場景,例如視頻流。 (4)應(yīng)用層:在理想的TCP / IP模型中,理想OSI模型的會話層表示層的功能被合并到該層中?;赥CP和UDP,應(yīng)用層有許多協(xié)議,如基于TCP的文件傳輸協(xié)議,Telnet協(xié)議,超文本傳輸??協(xié)議等?;赨DP的協(xié)議包括FTP,SNMP,DNS,NFS,SAMBA等的簡化版本和TCP??梢允褂肬DP實現(xiàn)的協(xié)議,例如P2P協(xié)議。。 圖5-6
55、TCP/IP參考模型的層次結(jié)構(gòu) 在了解TCP / UDP之后,我們介紹了ESP8266的三種模式:STA / AP / STA + AP,基于TCP網(wǎng)絡(luò)傳輸。因此,我們將詳細介紹TCP。 TCP提供八位位組流服務(wù),面向連接的服務(wù),可靠的傳輸服務(wù),緩沖區(qū)傳輸,全雙工傳輸和流量控制。 TCP數(shù)據(jù)傳輸基于IP結(jié)束數(shù)據(jù)格式分為兩部分:頭部和數(shù)據(jù)。 圖5-7 TCP數(shù)據(jù)在IP協(xié)議中的格式 主機A和主機B要用TCP進行數(shù)據(jù)傳輸?shù)脑?,首先要進行“握手”,也就是常說的三次握手。 圖5-8 三次握手過程 主機A先傳輸SYN到主機B,而這里SYN包含了A想要連接的主機端口以及ISN(初始的序列,
56、下面的ISN同義)。 主機B響應(yīng),這里SYN數(shù)據(jù)段為主機B的ISN,ACK(應(yīng)答)段為主機A發(fā)送的ISN+1. 主機A把主機B發(fā)送的SYN數(shù)據(jù)段+1后作為ACK返回給了主機B。 在三次握手之后,主機A和主機B建立TCP連接,并且可以在兩者之間發(fā)送和接收數(shù)據(jù)。 主機A和主機B必須建立建立TCP連接的鏈路,并且必須斷開連接(見下文)。 圖5-9 解除TCP連接的四次連接 主機A通過TCP協(xié)議棧發(fā)送FIN字段。請求釋放連接。 主機B在確認了主機A的FIN后,在主機A發(fā)送的FIN+1,然后發(fā)送回去作為ACK信號。 主機B發(fā)送FIN字段。 主機A確認請求。 2.IP地址說明
57、 要連接到Internet,設(shè)備或者主機必須配置好IP地址。Internet的IP地址在全世界是唯一的,因此這個IP地址就相當(dāng)于設(shè)備的標(biāo)識符,在同一個局域網(wǎng)里面,每個設(shè)備的標(biāo)識符都要是獨一無二的,所以無論是ESP8266還是上位機,都需要設(shè)置好IP地址。 一般IP地址格式為;類別+網(wǎng)絡(luò)標(biāo)識+主機標(biāo)識。 類別:用來區(qū)分IP地址的類型;網(wǎng)絡(luò)標(biāo)識:表示主機所在的網(wǎng)絡(luò);主機標(biāo)識:表示主機在網(wǎng)絡(luò)中的標(biāo)識。 ESP8266WIFI模塊是使用串口與STM32F407VET6進行通訊,通過串口想ESP8266WIFI模塊發(fā)送AT指令,來實現(xiàn)數(shù)據(jù)的傳輸。 4.3.2.4水泵驅(qū)動模塊程序設(shè)計 L298
58、N是屬于H橋IC的專用驅(qū)動器IC。與L293D的不同之處在于其輸出電流增加且功率增加。它的輸出電流為2A,最大電流為4A,最大工作電壓為50V。它可以驅(qū)動感性負載,如大功率直流電機,電機不到不是,電磁閥等由單片機控制。驅(qū)動直流電機時,可以直接控制步進電機,電機可以前后旋轉(zhuǎn),只需要改變端子的邏輯電平即可。條目。 該L298N芯片可以控制兩個二相電機或三相電動機,輸出電壓可以達到50V,輸出電壓可直接經(jīng)由飲食調(diào)整,該信號可以直接由所述單芯片微型計算機的IO端口設(shè)置和電路簡單易用。 L298N接受標(biāo)準(zhǔn)TTL邏輯VSS信號,可連接4.5至7V。 4針VS連接到電源電壓,HIV HIV電壓范圍介于+
59、2.5和46V之間。輸出電流高達2A,可能會產(chǎn)生感性負載。 1英尺和15英尺管的發(fā)射器分開以接近電流采樣電阻器以形成電流檢測信號。 L298可以驅(qū)動2個電機,OUT1,OUT2和OUT3,OUT4可以單獨連接到電機。我們選擇在這個實驗單元中驅(qū)動電機。 5,7,10,12引腳連接到輸入控制電平,以控制電機的正向和反向旋轉(zhuǎn)。 EnA,EnB連接到控制設(shè)備以控制電機的失速。 5-10 L298N邏輯功能表 In3,In4的邏輯圖與表1相同。由表1可知EnA為低電平時,輸入電平對電機控制起作用,當(dāng)EnA為高電平,輸入電平為一高一低,電機正或反轉(zhuǎn)。同為低電平電機停止,同為高電平電機剎停 4.3
60、.2.4有源蜂鳴器 有源環(huán)的聲音是固定的,工作電壓是恒定的,并且關(guān)閉時間被改變以獲得不同持續(xù)時間的聲音,例如連續(xù)聲音,短聲和短聲,慢慢聲(類似于摩爾斯電報)報警信息。 簡單來說,有源蜂鳴器只發(fā)出一種聲音,因為它的頻率是固定的。它只能通過聲音間隔的長度來區(qū)分。 例如,鬧鐘如下:滴滴~滴滴~滴滴~ 第5章 系統(tǒng)測試 5.1 系統(tǒng)的調(diào)試 5.1.1 接線說明 圖4- 系統(tǒng)接線圖 整體接線圖如4- 所示,在接線時需要注意各模塊的電源電壓值以及引腳編號,接下來對各個模塊的引腳接線進行說明。 以STM32F407ZET6板為中心,其中PA8腳連接DHT11
61、模塊的DATA數(shù)據(jù)腳;PA4、PA5分別接雨滴傳感器的DO、AO腳;PA9、PA10分別接ESP8266的RX、TX腳;PA6、PA7分別接光敏傳感器BH1750的SCL、SDA腳;PC0、PC1分別接AO、DO腳;PA12接蜂鳴器的I/0腳。需要說明的是DHT11需要接5V的電源,不然內(nèi)部電壓不足將無法讀取數(shù)據(jù)。 5.1.2 調(diào)試的步驟 硬件接線完畢通電后,把程序下載到STM32板子上,進入調(diào)試模式,調(diào)試之前先確定引腳是否接對,打開手機的TCP助手,連接上ESP8266的服務(wù)器,發(fā)送相關(guān)的指令,檢查是否會得到回應(yīng)。發(fā)送MODE1,調(diào)成模式1,再輸入想要查詢的相關(guān)數(shù)據(jù),如:“TEMP”,查詢溫度。發(fā)送MODE2,調(diào)成模式2,手機TCP助手將每5秒收到相關(guān)的傳感器參數(shù),通過串口3返回的數(shù)據(jù)檢查是否一致。 37
- 溫馨提示:
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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 110中國人民警察節(jié)(筑牢忠誠警魂感受別樣警彩)
- 2025正字當(dāng)頭廉字入心爭當(dāng)公安隊伍鐵軍
- XX國企干部警示教育片觀后感筑牢信仰之基堅守廉潔底線
- 2025做擔(dān)當(dāng)時代大任的中國青年P(guān)PT青年思想教育微黨課
- 2025新年工作部署會圍繞六個干字提要求
- XX地區(qū)中小學(xué)期末考試經(jīng)驗總結(jié)(認真復(fù)習(xí)輕松應(yīng)考)
- 支部書記上黨課筑牢清廉信念為高質(zhì)量發(fā)展?fàn)I造風(fēng)清氣正的環(huán)境
- 冬季消防安全知識培訓(xùn)冬季用電防火安全
- 2025加強政治引領(lǐng)(政治引領(lǐng)是現(xiàn)代政黨的重要功能)
- 主播直播培訓(xùn)直播技巧與方法
- 2025六廉六進持續(xù)涵養(yǎng)良好政治生態(tài)
- 員工職業(yè)生涯規(guī)劃方案制定個人職業(yè)生涯規(guī)劃
- 2024年XX地區(qū)黨建引領(lǐng)鄉(xiāng)村振興工作總結(jié)
- XX中小學(xué)期末考試經(jīng)驗總結(jié)(認真復(fù)習(xí)輕松應(yīng)考)
- 幼兒園期末家長會長長的路慢慢地走