search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

【論文精選】日照數據採集系統設計與實現

張廣超1,馬尚昌1,劉鈞2

(1.成都信息工程大學 電子工程學院,四川 成都 610225; 2. 華雲升達(北京)氣象科技有限責任公司,北京 102200)

摘要:針對目前在氣象研究領域中日照採集系統作業質量效果和實時性差、系統智能化程度低以及科技含量低等問題,對日照採集系統的通信方式、傳輸平台、通信形式、位置定位及數據存儲等方面進行了研究,提出了一種基於 GPRS 的遠程無線採集日照數據系統。該系統以 GPRS 網路和Internet作為遠程信號的傳輸平台,採用了 STM32 處理器和 SIM900A 作為基本的硬體平台。日照感測器採用良好的感應元件和材料,其感應部件和數據採集處理單元集成在光筒內;計算機端軟體實現了對日照數據的定時接收處理和查詢歷史數據操作等功能。

關鍵詞:日照數據採集;網路傳輸;GPRS通信;數據處理

中圖分類號:TP399文獻標識碼:ADOI: 10.19358/j.issn.1674-7720.2017.10.024

引用格式:張廣超,馬尚昌,劉鈞.日照數據採集系統設計與實現[J].微型機與應用,2017,36(10):85-88.

0引言

*基金項目:國家重大科學儀器設備開發專項(2012YQ110205)

世界氣象組織對日照時數的定義是:在給定時段內直接太陽輻照度達到或超過120 W/m2的各分段時間的總和[12]。日照時長數據的測量是太陽輻射時間分佈測量的重要組成部分。日照時數資料的主要用途是表徵當地的氣候和描述過去的天氣狀況,可以認為日照時數較長的地區有強烈的太陽光,產生使人可以保持良好狀態的心理效應;另外,合理利用氣候資源,研究每日的日照時長數據的變化趨勢,在農業上也有很大用途。同時日照時長數據的採集有助於了解太陽、地球表面和大氣間的輻射過程、能量轉換規律以及各輻射量的時空分佈,研究大氣成分如懸浮微粒、水汽、臭氧等的分佈和變化,滿足醫學、農業、建築、工業和家庭等對太陽能技術和輻射資料的要求。此外,輻射的分光譜測量可用來取得氣溶膠的光學厚度和大氣渾濁度,在農業生物和醫療衛生方面有著廣泛的用途。

1系統總體設計

日照數據採集系統研究主要針對硬體平台的建立、通信系統的搭建、上位機的編寫三大部分來展開,其中硬體平台核心採用STM32處理器[3],通用分組無線服務技術 (General Packet Radio Service, GPRS)通信晶元採用客戶識別模塊(Subscriber Identification Module,SIM900A),SIM900A是緊湊型、高可靠性的無線模塊,採用表面貼裝技術(Surface Mount Technology,SMT)封裝的雙頻全球移動通信系統(Global System for Mobile Communication,GSM)/GPRS模塊,上位機框架採用WinForm[4]形式編寫,主要負責日照數據、全球定位系統(Global Positioning System,GPS)數據的遠程採集以及終端設備的定位,並且對數據進行分析處理。數據傳輸(含日照數據和GPS數據)的設計採用Socket通信方式完成數據通信,由於傳輸的數據量不是很大,但要求數據可靠,故採用傳輸控制協議(Transmission Control Protocol,TCP)進行數據傳輸,保證傳輸的可靠性。採集數據時,輸入的埠號與IP(Internet Protocol)配置正確時,上位機啟動,等待接收數據。資料庫採用SQL Server 2008設計。系統總體設計框圖如圖1所示。

2系統硬體設計

2.1GPRS模塊

系統選擇了SIMCOM公司的SIM900A作為GPRS數據傳輸的核心模塊,SIM900A模塊傳輸速度一般在20 kb/s左右,本系統採集數據的速率大概為2 kb/s,所以SIM900A可以很好地滿足需求。SIM900A出廠默認設置TCP/IP協議,用戶可以通過擴展的標準指令集輕鬆地使用該模塊進行基於TCP/IP協議的數據傳輸。同時,SIM900A模塊在低功耗和高度節能方面也非常出色,當模塊處於待機狀態時,系統電流僅為1 mA。SIM900A支持標準的8線制串列介面,同時也支持2線制串列介面,便於調試測試。SIM900A模塊支持外部SIM卡,直接與3.0 V SIM卡或1.8 V SIM卡連接。模塊自動檢測和適應SIM卡類型。SIM卡電路如圖2所示。

2.2GPS模塊

由於日照採集站點要布設多個,分佈廣且數量多,因此需要將採集站點位置信息發送給監控中心。同時日照數據分析時也需要採集站點經緯度信息。基於成本、開發難度及產品現狀的考慮,系統中採用美國GPS定位系統作為採集系統的定位模塊。其中,本系統採用UBLOX公司的NEO6M作為日照採集系統GPS模塊接收晶元,這款晶元能夠在偏遠或信號較弱的地區接收到衛星信號,定位精度最高可達2.5 m,能夠很好地滿足本系統的需要;能夠提供較高的時間脈衝,其提供的脈衝時間精度能夠達到15 ns,同時能夠接收GPS完整信號;具有接收50個衛星信號通道的功能,能夠接收不同系統的定位信號;介面通信協議簡單,易於集成。GPS與STM32模塊的通信[5]是通過串口實現的,本系統利用USART接收GPS模塊的經緯度信息。GPS模塊及其外圍電路如圖3所示。

2.3日照採集設計

2.3.1採集模塊設計

日照採集模塊是基於總輻射散射輻射測量原理實現日照的自動觀測。日照採集模塊要實現兩大功能:一是感應太陽輻射的變化;二是完成數據的採集運算處理[6]、存儲和傳輸,與STM32晶元進行通信。

數據採集核心控制電路板以TI公司的MSP430F1611低功耗微處理器為控制核心。MSP430F1611內部具有一個強大的16位RISC CPU、16位的寄存器以及常數發生器,能夠最大限度地提高代碼效率;系統在短時間內採集到一定量的數據需要緩存,而MSP430F1611的RAM達到10 KB,足夠提供緩存空間;MSP430F149內部帶有12位ADC模塊,可以用來實現對光電感信號的採集;MSP430F1611系列微控制器工作環境溫度範圍為-40℃~80℃,能夠適應氣象探測所需求的外界環境。綜上,其性能指標能夠很好地滿足系統需求。

2.3.2光電感測器原理

光電感應元件由濱松高性能光電二極體和特殊透光材料組成。光電二極體能夠將光信號轉化為電流信號,而且成一定比例關係。基於總輻射散射輻射測量原理測量日照,對三個光電感應器件排布有特殊要求。三個光電感應元件應安放於一個透明玻璃罩內,避免外界環境影響;其中一個光電感應器件用於測量總輻射,另外兩個光電感應器件分別用於測量上午和下午的散射輻射,其遮光罩採用特殊的全分天空方式,使二者不能同時暴露於陽光下。

3系統上位機設計

3.1軟體設計與流程

上位機數據接收軟體是在Visual Studio環境下開發的[78],用戶可在該環境下運用不同的程序語言進行開發。本設計選用了Visual C#2010,它是一種面向對象的編程語言,它編寫的應用程序可運行於.NET Framework上。本設計的上位機軟體希望能夠利用多線程去處理下位機發來的日照數據和GPS數據並且顯示到不同的接收窗口中,在GPS信息窗口通過將定位的坐標轉換后調用百度地圖API實現位置的顯示,同時將顯示在上位機界面的數據存放本地計算機,也可以上傳資料庫,本系統採用SQL Server建立資料庫及數據表[9]。整個軟體系統流程圖如圖4所示。

3.2上位機通信

目前大部分的網路數據通信都是採用上位機端和客戶端的形式完成的。這種數據通信方式一般通過兩個不同的應用程序實現,它們運行於不同的機器上並且通過建立網路連接實現數據傳輸。通常客戶端與上位機的通信方式一般有兩種形式,一種是HTTP的形式,另一種是基於Socket的方式。HTTP通信方式是客戶端先向上位機發起連接請求,然後等待上位機對其做出應答,此時客戶端才能與上位機傳輸數據,一旦這次數據傳輸結束后就會自動釋放本次連接,下次傳輸數據時客戶端還需要重新與上位發起連接,再次等待上位機的應答。而Socket通信形式是客戶端發起與上位機建立連接的請求后,上位機處理請求並與之建立連接,一旦連接建立好了之後即可以進行數據的傳輸,免除了許多拆包、封包等複雜的網路數據傳輸過程,採用數據流的格式進行數據的發送,一旦建立連接后不需要每次向上位機建立連接請求,並且具有數據傳輸準確率高的優點,因此 Socket 這種通信模式被廣泛地運用於網路數據的傳輸。本系統就是採用基於Socket通信方式來完成數據通信。本系統伺服器與客戶端之間的通信模型如圖5所示。

Socket的通信模型有兩種[10]:TCP和UDP。TCP(面向連接方式)採用IP流的形式數據發送,數據的傳輸過程當中丟包少,傳輸可靠。UDP(無連接服務)採用數據報文的方式實現數據的收送,不保證數據的可靠性。由於本系統傳輸的數據量不是很大,但是要求數據可靠,因此為了確保傳輸的可靠性,減少丟包,本系統採用了TCP的形式進行數據的傳輸。

3.3Socket編程

由於本設計選用的GPRS模塊內部包含TCP協議,只需要通過AT指令操作GPRS模塊以TCP客戶端的方式發送數據,因此只需要完成上位機數據接收的應用程序編寫即可。由於本系統採用的是C#語言來編寫應用程序,裡面包含許多網路編程所需的類和方法,在編程的過程中可調用這些類和方法。首先要實例一個Socket對象[11],設置其傳輸的格式和其傳輸協議,然後創建一個網路節點對象要包含其IP地址和埠號,再把實例好的套接字綁定到對應的IP和埠號上,並開始監聽來自下位機的連接,此處要設置一下監聽隊列長度即同時處理請求連接的個數,由於本次只實現了一個客戶端,但是上位機軟體監聽的客戶端數量可以自由設置(為了以後組網,方便擴展),最後調用Accept函數處理客戶的連接,當有客戶向伺服器發起連接的時候,就會分配一個新的套接字,通過Send和Recv函數實現與客戶端之間的通信,循環接收和送數據,為了防止掉線,收到數據后自動回復內容,相當於系統已經做了心跳處理。

3.4上位機數據存儲系統

本系統不僅能夠把數據實時顯示到界面系統上,同時還能夠把顯示的數據實時存儲起來,因此需要設計一個資料庫來存放日照數據。本設計選用微軟公司SQL Server資料庫[12]來存放數據。本程序採用SQL Server 2008R2版本設計日照存儲資料庫Sundata。同時能將資料庫的數據同步到上位機軟體的DataGridView控制項中,能夠按照時間查詢歷史數據,並且實現了數據導出至Excel表格。導出表格並沒有採用官方提供的Excel專門類庫,在試驗中發現用此種方法與Office版本及其卸載殘留有很大關係,經常出錯,移植性不好,所以採用了第三方的NPOI.dll,這樣不會因計算機的Office的不同版本而出現問題,便於程序的移植和分析數據。

3.5地圖功能實現

3.5.1GPS坐標解析

GPS坐標解析輸出數據採用的是ASCII碼,內容包含了緯度、經度、高度、速度、日期、時間、航向以及衛星狀況等信息,常用語句有6 種,包括GGA、GLL、GSA、GSV、RMC 和 VTG。根據設計的需求來選擇不同的格式,這裡採用了常見的GPRMC格式的語句,$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11><CR><LF>各個字元依次代表著不同的信息,根據需要提取了重要的經度、緯度信息,由於上述經度、緯度數據格式採用的是:度度分分.分分分分(ddmm.mmmm)格式,在程序中通過編寫函數將其轉化為度的格式,為後面的坐標轉換提供方便。

3.5.2地圖顯示

上位機地圖是是利用百度地圖API來實現的[13],由於GPS模塊傳來的GPS信息中的經度、緯度信息是真實的坐標,利用地圖服務商提供的地圖顯示偏差會很大,因為受到國家一些法律法規限制,所有的電子地圖服務提供商都需要給地圖數據加上偏移和加密。所謂的地圖數據加密偏移,其實就是用一個偏移演算法對地圖的經緯度做一個加減偏移量,從而達到與實際地圖不一致。偏移演算法本身是沒有什麼規律可言的,每家地圖服務商都有一套自己的加密偏移演算法,國內地圖應用顯示的都不是真實的GPS坐標,所以百度對外提供的坐標系是百度自己的坐標系,而GPS獲得的是原始坐標,兩者不在一個坐標繫上,所以有很大的誤差,誤差在千米之外,這顯然不能滿足需要。所以必須進行坐標轉換,把兩者換成統一坐標系。換成原始GPS坐標在國內原則上是違法的,所以只能統一成各個地圖運營商自己的坐標系,本文選擇百度坐標系。

4結論

針對目前日照採集作業通信方式單一、作業場景有缺陷的問題,本文以嵌入式系統為平台,提出了一種基於 GPRS 的遠程無線採集日照數據系統,對當地經緯度、直接輻射輻照度、日照分鐘累計、小時累計、日累計等信息採集獲取技術進行了研究,建立了一套現代化的、適合多場合的數據採集和處理系統。整個作業數據採集系統由ARM中央處理器、採集作業數據的相關感測器、供電管理電路及GPS模塊、GPRS通信模塊組成。採集的日照數據通過GPRS通信傳送至計算機,用計算機當作數據中心對獲取的數據信息整合處理。用計算機不僅可以實時獲取所需要的信息,而且提供了對已有歷史數據查詢的功能。

參考文獻

[1] CARTER E A, CHRISTENSEN D L, 李麗. 全球太陽輻射測量的概況[J]. 氣象科技, 1982,6(5):73-75.

[2] 謝偉. 太陽輻射計技術分析[J]. 紅外, 2003,12(3):9-15.

[3] 劉火良,楊森.STM32庫開發實戰指南[M].北京:機械工業出版社,2013.

[4] SOLIS D M.C#4.0圖解教程[M].蘇林,朱曄,等,譯.北京:人民郵電出版社,2011.

[5] 鄭傑,趙敬鳳,王海江,等.基於 STM32 的多功能抄表機[J].微型機與應用,2016,35(8):79-81, 85.

[6] 楊寧, 惠曉強. 微弱信號高精度數據採集技術研究[J]. 現代電子技術,2013,24 (9):71-73.

[7] MACDONALD M, FREEMAN A, SZPUSZTA M. Pro ASP.NET 4.0 in C#2010[M]. New York: Apress, 2012.

[8] 金旭亮.NET4.0面向對象編程面談應用篇[M].北京:電子工業出版社,2010.

[9] 秦婧.SQL Server 2012王者歸來[M].北京:清華大學出版社,2014.

[10] 劉蓓莉,劉大紅.基於Visual C#的網路通信編程技術[J].電子科技,2013,26(11):151-153.

[11] 謝斌. MS.Net Visual C#在Socket網路開發上的應用化計算機與網路[J].計算機與網路,2002,24(10):74-79

[12] 劉俊強.SQL Server 2008入門與提高[M].北京:清華大學出版社,2014.

[13] GPS坐標換算為百度坐標[EB/OL].(2014-11-17)[2016-11-17]http://www.cnblogs.com/soundcode/p/4104281.html.



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦