999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向局部定點區域的微型氣象監測系統設計與試驗研究

2021-12-02 11:24:54傅桂霞姜殿波宿寶臣
科學技術與工程 2021年33期
關鍵詞:風速系統設計

傅桂霞,萬 隆,宋 愷,姜殿波,宿寶臣

(1.山東理工大學電氣與電子工程學院,淄博 255049;2.南京郵電大學物聯網學院,南京 210023)

氣象數據作為人類日常生活的重要因素,與人類生產和生活的相關性越來越密切[1-2]。目前,氣象數據獲取的主渠道是氣象預報網或媒體周期性發布的監測信息,但國家氣象監測站點建設成本高、覆蓋范圍有限、數據采集靈活性差,且監測和預報具有區域性和滯后性。因此,作為大型氣象監測站點的有效補充,局部定點區域的智能化、小型化氣象監測系統研究越來越受到關注[3],成為氣象數據精細化監測和預報研究領域的熱點。

近年來,傳感器技術、信息處理技術和云計算的發展為局部定點區域的實時氣象監測系統開發提供了新思路。文獻[4]基于51單片機設計了一種小型綜合氣象系統,用于溫濕度、氣壓和風速檢測。文獻[5]設計了一套適用于多類監測站點的海洋信息自動監測數據采集系統,能兼容連接水文、氣象、浪流等檢測儀表,實現多類數據信息的集中存儲管理及系統狀態監控。文獻[6]基于ZigBee技術設計了一種無線組網的微型氣象站,實現溫濕度、降雨、風力、風向等環境參數監測。文獻[7]提出基于LoRa的遠程溫室大棚環境監測系統設計方案,可用于多個農業大棚環境監測數據的智能化和集約化管理。文獻[8]設計了基于云平臺的智慧農業大棚監控系統,實現大棚氣象參數和土壤狀態的檢測與控制。文獻[9]設計了針對架空輸電線路的環境氣象監測裝置,為電力生產運行管理和調度提供氣象信息支持。文獻[10]針對空氣質量監測網絡精細化水平較低的問題,設計了開放式空氣質量監測系統,并提出基于距離權重因子的空氣質量信息融合算法,實現空氣質量參數預報。

綜上分析,小型化智能氣象監測系統在海洋氣象監測、智慧農業、智慧電網等領域應用廣泛,但其功能相對單一,且不具備氣象大數據的綜合管理和圖形化顯示功能。因此,針對現有小型氣象監測系統的不足,現提出一種基于樹莓派的微型氣象監測系統設計方案。該系統由前端氣象信息采集系統和后端數據管理系統組成。前端采集系統是基于樹莓派搭建的平臺,主要實現溫度、濕度、氣壓、海拔、風速、風向、紫外線、降雨等多個參數的實時監測和無線傳輸。后端管理系統是基于Qt框架開發的運行于PC機上的圖形化界面顯示系統,主要實現氣象數據收集、存儲、管理和圖形化顯示。該系統將氣象數據采用圖形化方式顯示,提高氣象數據的可讀性和系統美觀度。另外,設計氣象大數據的存儲和管理模塊,為數據共享、聯合分析和未來氣象數據的預測提供基礎數據源。

1 系統整體架構設計

微型氣象監測系統設計包括前端采集系統和后端管理系統。前端采集系統是以樹莓派為核心的微型氣象站數據采集端,主要涉及前端硬件采集裝置設計,以及與硬件匹配的軟件功能開發,實現氣象數據的采集、處理、打包發送和簡要顯示。后端管理系統是實現氣象數據接收、存儲、管理和圖形化顯示的服務端。系統總體框架如圖1所示。

圖1 微型氣象監測系統總體框架Fig.1 The general framework of micro meteorological monitoring system

2 前端采集系統設計

前端數據采集系統選擇樹莓派Raspberry Pi 4B作為主控芯片,其他硬件包括氣象參數檢測傳感器、輔助芯片、供電電路和外殼輔助材料等,系統硬件電路關系如圖2所示。前端采集系統的軟件設計是基于Raspbian Linux操作系統,采用C語言開發的各功能程序。

圖2 前端采集系統硬件結構關系圖Fig.2 Hardware structure diagram of front-end acquisition system

樹莓派Raspberry Pi 4B的規格信息如表1所示。其他檢測傳感器模塊包括DHT11溫濕度傳感器、BMP180氣壓傳感器、模擬量風速傳感器、自制風向傳感器、GY-ML8511紫外線傳感器、自制降雨傳感器模塊,以及PCF8591模數轉換器(analog-digital converter,ADC),前端簡易數據顯示采用SSD1306-I2C 有機發光二極管(organic light-emitting diode,OLED)顯示屏。Raspberry Pi 4B可通過I2C數字總線與各類數字傳感器進行通信;對于模擬傳感器的檢測數據,則需要通過ADC轉換后傳輸至樹莓派。樹莓派接收氣象數據后,經過進一步處理和打包,通過Wi-Fi網絡,采用用戶數據報協議(user datagram protocol,UDP)將數據實時發送至服務端。

表1 Raspberry Pi 4B規格信息Table 1 Specifications for the Raspberry Pi 4B

2.1 功能電路設計

(1)插線板設計。由于各傳感器工作時需共用Raspberry Pi 4B某些接口,如3.3 V接口、電線接地端(ground,GND)接口、I2C通信的串行數據線(serial data line,SDA)和串行時鐘線(serial clock line,SCL)接口等,僅用樹莓派自帶接口難以滿足共用需求。因此,在硬件設計過程中,焊接制作了一個包含多排排針的插線板,其中每排排針與樹莓派常用接口連接在一起。該設計不僅達到擴展共用接口的目的,也使系統后續維護和改進更加便捷。

(2)DHT11溫濕度傳感器電路設計。DHT11是一款數字式溫濕度復合傳感器,可同時實現溫度和濕度檢測。其測量精度如下:相對濕度±5%,溫度±2 ℃;量程范圍:相對濕度5%~95%,溫度-20~60 ℃,滿足氣象站設計需求。DHT11模塊包含3個端口,供電電壓(volt current condenser,VCC)、GND端口分別與插線板3.3 V和GND接口連接,串行半雙工數字通信接口SIG輸出已校準數字信號,連接至樹莓派的GPIO-0端口。

(3)BMP180氣壓傳感器電路設計。BMP180是一款多功能、超小體積高精度數字氣壓傳感器,可同時實現氣壓、海拔、溫度檢測,該模塊功耗低,轉換速度快,可通過I2C接口與樹莓派主控單元實現集成。BMP180輸出氣壓(海拔高度)的測量分辨率為0.03 hPa(0.25 m),在低功耗模式下的分辨率為0.06 hPa(0.5 m)。BMP180氣壓檢測電路原理如圖3所示,其中時鐘接口SCL、數據接口SDA通過I2C總線與樹莓派連接,BMP180的I2C地址在芯片內部固化為0x77(十六進制),無法通過外接電路改變。該模塊可通過外接3.3 V電源直接供電;也可外接5 V電源,采用模塊自帶穩壓電路產生3.3 V的穩壓直流電源,供BMP180工作。采用了直接接入3.3 V電源的統一供電方式。

圖3 BMP180大氣壓檢測傳感器模塊原理圖Fig.3 Schematic diagram of BMP180 air pressure detection sensor module

(4)PCF8591模數轉換器電路設計。PCF8591是8位CMOS模數/數模轉換器,具有4個模擬量輸入接口、一個模擬量輸出接口和一組串行I2C總線接口,電路原理如圖4所示。本設計使用了模數轉換器的4個模擬輸入接口AIN0~AIN3,分別連接風速傳感器、風向傳感器、紫外線輻射傳感器和降雨傳感器的模擬輸出端;3個地址引腳A0、A1和A2用于對I2C硬件地址進行編程,在本模塊電路板上已全部接地,使其I2C地址為0x48;模數轉換參考電壓VREF為3.3 V。供電接口VCC、GND和I2C總線接口SCL、SDA可接入插線板相應位置,與樹莓派相連。

圖4 PCF8591模數轉換器模塊原理圖Fig.4 Schematic diagram of PCF8591 analog-to-digital converter module

(5)風速傳感器電路設計。采用小型直流有刷電機與三杯式旋轉風杯自制了一款風速傳感器。當環境有水平流動風時,旋轉風杯產生旋轉,帶動小型電機產生輸出電壓,該電壓與旋轉速度成正比。利用此信號電壓,可實現對環境風速的測量。風速傳感器的啟動風速:<0.7 m/s;測量范圍:0~56 m/s,對應0~16級風,對應輸出信號電壓為0~2 V,在ADC的測量范圍0~3.3 V。風速傳感器的正極連接ADC模塊模擬輸入接口AIN1、負極連接插線板GND接口。

(6)風向傳感器電路設計。使用的風向傳感器由旋轉電位器與自制風向標組合而成。旋轉電位器可測量旋轉角的范圍為0°~333°,對應電壓輸出范圍為0~3.3 V。自制風向標與旋轉電位器相連,風向標旋轉帶動電位器轉動,輸出相應的電壓值,實現對水平流動風的風向指示。電路連接關系:電位器的電壓輸出端Vout接入ADC模塊的模擬輸入接口AIN2,供電接口GND、VCC連接插線板GND和3.3V。

(7)ML8511紫外線傳感器電路設計。ML8511是一種適用于室內和室外的紫外線密度檢測傳感器。ML8511的內部放大器可根據紫外線強度將光電流轉換為電壓。ML8511的接口OUT輸出模擬電壓值,該接口與ADC模塊的模擬輸入接口AIN3連接,供電接口接入插線板3.3 V和GND接口。另外,ML8511具有高電平使能端口EN,該端口與樹莓派GPIO-2端口相連,用于控制模塊使能與失能。

(8)降雨傳感器電路設計。自制的降雨傳感器由雨滴檢測板和電壓比較模塊組合而成,電路原理如圖5所示。該模塊的P2端子連接雨滴檢測板。電壓比較器模塊中LM393的1IN-接口連接電位器R3,通過調節R3改變1IN-接口的電壓比較參考電壓,實現降雨檢測閾值設置。初始狀態下,模擬輸出接口AO(即LM393的1IN+口)是雨滴檢測板的高電平一端,電壓值初始為3.3 V。當有降雨時,雨滴檢測板連通性增強,1IN+端口的電位從3.3 V不斷下降,當下降到小于等于參考電壓后,電壓比較的DO接口輸出低電平。數字輸出接口DO與樹莓派的GPIO-1端口相連,有高電平“1”和低電平“0”兩個狀態,用于指示是否降雨。模擬輸出端口AO的電壓值變化范圍為0~3.3 V,與ADC模塊的模擬輸入接口AIN0相連,用于指示降雨參考值。

圖5 降雨傳感器模塊原理圖Fig.5 Schematic diagram of rainfall sensor module

(9)OLED顯示屏電路設計。有機發光二極管(organic light-emitting diode,OLED)顯示屏為0.96英寸、分辨率為128×64,驅動芯片為單芯片CMOS OLED/PLED驅動器SSD1306,通過I2C總線與樹莓派通信,具有固定I2C硬件地址0x3C。本設計中,OLED用于簡要顯示氣象信息。

(10)供電電源部分設計。前端數據采集系統使用了自制內置電源供電。供電電源的電池組由六塊18650 3.7 V 1 500 mA·h充電鋰電池組成,每兩塊電池并聯為一個額定電壓3.7 V(最高電壓4.2 V)的小單元,3個小單元通過保護板串聯在一起組成額定電壓11.1 V(最高電圧12.6 V)的電池組。在保護板的電池組接口P+、P-處焊接導線,經過雙刀雙擲開關與DC-DC降壓模塊相連。降壓模塊實現了直流6~24 V到直流5.1~5.2 V的降壓轉換,輸出電流最高可達3 A,滿足采集系統對大電流的需求。DC-DC降壓模塊的輸出端為USB接口,通過USB數據線連接樹莓派,為樹莓派提供穩定供電。

2.2 前端采集系統軟件設計

前端采集系統的軟件開發環境是Code::Blocks 17.12 Linux版,編程語言為C語言,編譯器為gcc,并集成了第三方開源庫。程序設計采用多線程技術,按照功能模塊分為DHT11采集數據、BMP180采集數據、ADC模塊采集數據、OLED顯示、UDP網絡傳輸數據共5個線程,程序整體架構如圖6所示。

圖6 前端采集系統軟件整體架構Fig.6 Software architecture of front-end acquisition system

多線程設計使不同線程在宏觀上并行運行,避免了線程間互相等待和干擾。通過設定不同延時,使各線程可同時處理自身與外部傳感器的通信,提升了CPU的使用效率。在主函數中,首先調用樹莓派初始化函數,實現GPIO初始化驅動,然后逐個創建并啟動所有線程。最后運行阻塞函數使主函數進入阻塞狀態,等待各線程運行。所有線程均處于循環運行狀態,可實現微型氣象站前端系統的數據采集、處理、傳輸任務的不間斷執行。

為便于前端數據采集、數據包傳輸及服務端數據管理程序設計,定義了統一的數據結構存儲氣象信息,該數據結構的定義如表2所示。

表2 氣象信息數據存儲結構Table 2 Weather information data storage structure

(1)濕度數據采集線程設計。濕度數據采集是基于DHT11獲取濕度數據的一個單獨線程。DHT11傳感器既能獲取溫度,也能獲取濕度數據,但BMP180氣壓傳感器附帶采集溫度功能,且效率更高,所以本設計中的溫度采集通過BMP180實現,DHT11僅用于獲取濕度數據。DHT11傳輸數據的格式如表3所示。一個完整數據傳輸包含40個bit位,前32個bit分別對應濕度和溫度數據,最后8個bit是校驗位,該校驗和等于前4個8 bit數據相加所得結果的末8位。

表3 DHT11傳輸數據的格式Table 3 The format of the data transmitted by DHT11

在DHT11驅動函數中實現獲取濕度數據,此線程中,數據采集每延時2 s執行一次,為DHT11做好下次采集數據和通信留出充分的恢復時間,避免產生較多無效數據。

(2)氣壓、海拔、溫度數據采集線程設計。BMP180氣壓傳感器使用開源庫“BMP180”和“smbus”實現驅動。該線程中,首先調用BMP180的校準函數進行初始化校準操作,然后進入循環,循環體中分別調用BMP180驅動庫中采集氣壓、海拔高度和溫度數據的函數獲取相應數據。由于溫度、氣壓、海拔高度等數據隨時間流逝變化不大,因此,兩次數據采集可適當延時,程序中循環體設定每延時500 ms運行一次。

(3)風速、風向、紫外線和降雨采集線程設計。風速、風向、紫外線和降雨數據獲取需要用到ADC,因此ADC的相關配置與獲取風速、風向、紫外線和降雨數據的功能實現被設置在同一線程中。模數轉換器PCF8591的I2C硬件地址為0x48,ADC基地址為120,即ADC的模擬輸入口AIN0~3對應地址為120~123。線程執行過程中,首先設定ADC芯片的I2C硬件地址和基地址,然后運行傳感器所需的初始化配置,延時18 ms以等待ADC完成初始化,之后進入循環體。每次循環時,獲取風速、風向、紫外線和降雨數據的各功能程序順序執行,兩次數據采集延時間隔設置為0.2 s。

(4)OLED顯示線程設計。OLED驅動使用“Linux_IIC_OLED_SSD1306”開源庫以及相應字碼頭文件。在線程開始,調用OLED初始化函數實現初始化,進入無限循環體后實現屏幕上信息的循環顯示。信息顯示采用分屏模式,第一屏顯示漢字“微型氣象站”,以及“溫度”“相對濕度”和“海拔高度”等中文提示以及相應數據;第二屏顯示“氣壓”“風速”“風向角”和“UVI”的中英文提示以及相應數據。因屏幕尺寸限制,紫外線強度、降雨等氣象數據未通過OLED顯示。

(5)數據傳輸線程設計。使用UDP協議與服務端程序進行通信,實現氣象數據傳輸。網絡傳輸模塊使用了Linux系統自帶的“sys/socket.h”“netinet/in.h”和“arpa/inet.h”庫。該模塊為單獨線程,保證了網絡通信和數據傳輸的功能獨立運行。在線程中,本程序首先作為UDP server(服務端)獲取后端軟件“Qt服務端”的地址信息;然后,在接收到Qt服務端發來的命令信息,并獲得地址信息后,本程序作為UDP client(客戶端)向Qt服務端發送氣象數據。UDP發送數據的無限循環每延遲0.2 s執行一次,Qt服務端可不斷地接收到前端采集數據。

3 服務端系統設計

后端服務端軟件主要實現氣象數據接收、數據庫存儲和圖形化顯示等功能,整體架構如圖7所示。

圖7 服務端系統整體功能架構Fig.7 The overall functional architecture of the server system

服務端軟件開發基于Qt 5.13.1框架,編譯器采用MinGW 7.3.0 32-bit for C++。系統設計中使用了多個Qt自帶類庫,如QGroupBox、QUdpSocket、QSqlDatabase、QMessageBox等,用于實現界面、自帶窗體控件、網絡通信、數據庫、對話框等功能。

服務端軟件主界面設計中,自定義了3個窗體類如下。

(1)myMainWindow類。主頁面窗體,即圖形化顯示窗體,使用各種圖表控件圖形化顯示接收到的氣象數據,使用按鈕調起其他窗體。

(2)dbManage類。數據庫管理窗體,用于管理氣象數據庫,包括增加、刪除、查詢等。

(3)chartWidget類。走勢圖窗體,用于顯示各個氣象數據隨時間變化的走勢圖。另外,結合第三方開源控件軟件開發工具包(SDK)實現了溫度計、風速刻度盤、風向儀、進度控件等氣象數據圖形化顯示功能開發;使用QCustomPlot開源類庫實現各種氣象數據曲線圖繪制,大大提升了系統軟件的開發效率和美觀度。

4 系統性能測試

4.1 前端軟硬件的運行測試

前端采集系統運行測試。開啟前端設備電源,等待設備開機并進入系統,約15 s后系統前端程序正常啟動運行,OLED屏上將實時顯示氣象監測數據。與此同時,可在Linux系統終端輸出調試信息。調試信息中包含各傳感器和功能模塊的輸出氣象參數。經試驗測試,自制的電源供電穩定,正常工作輸出電流保持在700 mA左右,表明樹莓派及傳感器整體功耗較低,供電功率充足。另外,風速、風向和降雨等多個自制采集模塊工作性能良好,實現了氣象數據的可靠采集。

4.2 服務端軟件的運行測試

服務端軟件運行測試。運行服務端程序,進入主窗體;然后點擊“設定樹莓派地址”按鈕,輸入前端樹莓派端的地址并確定后,建立前后端通信。前端采集系統不斷地向服務端發送數據,主窗體界面會實時顯示最新的數據,如圖8所示。當前端采集數據發生變化時,后端軟件主窗體的圖表顯示也將實時更新。

圖8 服務端軟件運行測試Fig.8 Testing of the server software

數據庫管理功能實現了對前端采集氣象數據的收集、存儲和管理,如圖9所示。在數據庫管理窗體中使用了“模型-視圖”(model-view)結構,模型(model)負責與數據源通信,并為其他部件提供接口;視圖(view)負責從模型中獲取數據,作為一個控件顯示出來。

走勢圖功能用于實時氣象數據的可視化展示,如圖10所示。走勢圖窗體由“溫濕度”“氣壓與海拔高度”“風速風向”“紫外線”和“降雨”5個選項卡組成,該窗體可實時獲取數據庫中的最新數據,通過繪制曲線圖的方式顯示氣象數據隨著時間的變化趨勢。

4.3 系統性能驗證實驗

為了驗證系統性能的可靠性,進行了多次試驗。首先,實測并記錄了淄博市城區某一局部定點區域24 h的氣象參數,與天氣預報網公布的24 h氣象數據進行比較。試驗發現,微型氣象監測系統實測的溫濕度、氣壓、風向和降雨信息與天氣預報網公布數據相近,誤差可忽略不計,證明所設計的微型氣象監測系統的性能是可靠的。但是,紫外線強度和風速信息與天氣預報網公布數據相差較大,特別是風速誤差最大時超過10%。分析發現,產生測量誤差的主要因素是受到局部定點區域位置和周圍環境的影響。這表明,天氣預報網發布的氣象數據是某個地區較大范圍內的平均數據,存在一定的滯后性,而所設計的微型氣象監測系統能實時準確地測量局部定點的氣象信息,彌補前者的不足。

5 結論

設計實現了一套微型氣象監測系統的開發與測試。前端采集系統由樹莓派和各類傳感器組成,后端服務端是基于Qt開發的圖形顯示界面軟件。該微型氣象站前端采集系統工作穩定,氣象數據采集、處理、顯示和傳輸實時性高、可靠性強;服務端軟件實現了大規模氣象數據的接收、存儲、管理和可視化顯示。該系統彌補了大型氣象站成本高、監測覆蓋范圍小和信息發布滯后等不足,為優化和科學調控人們的生產生活提供了參考依據。在后續研究中,將在簡易系統基礎上,進一步增強系統可靠性和實用性,并與物聯網云平臺結合,實現多個微型氣象站的聯合數據采集、管理和共享,為智慧化生產提供更加完善的氣象數據支持。

猜你喜歡
風速系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
基于Kmeans-VMD-LSTM的短期風速預測
基于最優TS評分和頻率匹配的江蘇近海風速訂正
海洋通報(2020年5期)2021-01-14 09:26:54
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于GARCH的短時風速預測方法
主站蜘蛛池模板: 亚洲av片在线免费观看| 九九久久99精品| 色综合中文字幕| 免费无码又爽又黄又刺激网站 | 日韩高清一区 | 成人午夜免费观看| 米奇精品一区二区三区| 中文字幕乱码中文乱码51精品| 久久午夜夜伦鲁鲁片不卡| 国产精品永久在线| 国产91丝袜在线播放动漫| 色婷婷色丁香| 亚洲精品片911| 亚洲综合中文字幕国产精品欧美| 手机看片1024久久精品你懂的| 欧美无遮挡国产欧美另类| 久久久久国产精品熟女影院| 亚洲精品卡2卡3卡4卡5卡区| 国产精品国产三级国产专业不| 久久精品aⅴ无码中文字幕| 激情综合五月网| 日韩欧美国产另类| 亚洲色精品国产一区二区三区| 婷婷午夜天| 国产毛片不卡| 国产一区成人| 国产理论一区| 日韩高清无码免费| 亚洲欧洲日本在线| 波多野结衣亚洲一区| 精品视频在线观看你懂的一区| 精品福利一区二区免费视频| 久久国产成人精品国产成人亚洲| 99这里只有精品在线| 永久免费精品视频| 国产成人av一区二区三区| 国产福利一区在线| 91日本在线观看亚洲精品| 国产精品免费露脸视频| 91久久偷偷做嫩草影院电| 午夜精品福利影院| 国产在线视频导航| 在线免费看片a| 免费无码网站| 免费视频在线2021入口| 免费在线一区| 永久成人无码激情视频免费| 久久视精品| 亚洲日本www| 精品人妻系列无码专区久久| 国产亚洲欧美日韩在线一区二区三区 | 久久精品免费国产大片| 国产黄色爱视频| 伊人久综合| 国产第一色| 免费观看无遮挡www的小视频| 欧美国产成人在线| 欧美特级AAAAAA视频免费观看| 精品视频在线一区| 91麻豆精品国产高清在线| 国产精品自在拍首页视频8| 九月婷婷亚洲综合在线| 免费女人18毛片a级毛片视频| 久久人午夜亚洲精品无码区| 日本一区二区三区精品国产| 欧美一区福利| 亚洲精品波多野结衣| 亚洲最新网址| 免费一级成人毛片| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产丝袜无码精品| 久久特级毛片| 亚洲性影院| 日韩东京热无码人妻| 超级碰免费视频91| 一本大道无码高清| 男女男精品视频| 国产又粗又猛又爽视频| 色丁丁毛片在线观看| 欧美午夜小视频| 亚洲无线视频| 国产精品美女自慰喷水|