《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 日照數(shù)據(jù)采集系統(tǒng)設計與實現(xiàn)
日照數(shù)據(jù)采集系統(tǒng)設計與實現(xiàn)
2017年微型機與應用第10期
張廣超1,馬尚昌1,劉鈞2
1.成都信息工程大學 電子工程學院,四川 成都 610225; 2. 華云升達(北京)氣象科技有限責任公司,北京 102200
摘要: 針對目前在氣象研究領域中日照采集系統(tǒng)作業(yè)質(zhì)量效果和實時性差、系統(tǒng)智能化程度低以及科技含量低等問題,對日照采集系統(tǒng)的通信方式、傳輸平臺、通信形式、位置定位及數(shù)據(jù)存儲等方面進行了研究,提出了一種基于 GPRS 的遠程無線采集日照數(shù)據(jù)系統(tǒng)。該系統(tǒng)以 GPRS 網(wǎng)絡和Internet作為遠程信號的傳輸平臺,采用了 STM32 處理器和 SIM900A 作為基本的硬件平臺。日照傳感器采用良好的感應元件和材料,其感應部件和數(shù)據(jù)采集處理單元集成在光筒內(nèi);計算機端軟件實現(xiàn)了對日照數(shù)據(jù)的定時接收處理和查詢歷史數(shù)據(jù)操作等功能。
Abstract:
Key words :

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

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

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

  關鍵詞日照數(shù)據(jù)采集網(wǎng)絡傳輸;GPRS通信;數(shù)據(jù)處理

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

  引用格式:張廣超,馬尚昌,劉鈞.日照數(shù)據(jù)采集系統(tǒng)設計與實現(xiàn)[J].微型機與應用,2017,36(10):85-88.

0引言

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

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

1系統(tǒng)總體設計

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

Image 001.jpg

2系統(tǒng)硬件設計

  2.1GPRS模塊

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

Image 002.jpg

  2.2GPS模塊

  由于日照采集站點要布設多個,分布廣且數(shù)量多,因此需要將采集站點位置信息發(fā)送給監(jiān)控中心。同時日照數(shù)據(jù)分析時也需要采集站點經(jīng)緯度信息?;诔杀尽㈤_發(fā)難度及產(chǎn)品現(xiàn)狀的考慮,系統(tǒng)中采用美國GPS定位系統(tǒng)作為采集系統(tǒng)的定位模塊。其中,本系統(tǒng)采用UBLOX公司的NEO6M作為日照采集系統(tǒng)GPS模塊接收芯片,這款芯片能夠在偏遠或信號較弱的地區(qū)接收到衛(wèi)星信號,定位精度最高可達2.5 m,能夠很好地滿足本系統(tǒng)的需要;能夠提供較高的時間脈沖,其提供的脈沖時間精度能夠達到15 ns,同時能夠接收GPS完整信號;具有接收50個衛(wèi)星信號通道的功能,能夠接收不同系統(tǒng)的定位信號;接口通信協(xié)議簡單,易于集成。GPS與STM32模塊的通信[5]是通過串口實現(xiàn)的,本系統(tǒng)利用USART接收GPS模塊的經(jīng)緯度信息。GPS模塊及其外圍電路如圖3所示。

Image 003.jpg

  2.3日照采集設計

  2.3.1采集模塊設計

  日照采集模塊是基于總輻射散射輻射測量原理實現(xiàn)日照的自動觀測。日照采集模塊要實現(xiàn)兩大功能:一是感應太陽輻射的變化;二是完成數(shù)據(jù)的采集運算處理[6]、存儲和傳輸,與STM32芯片進行通信。

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

  2.3.2光電傳感器原理

  光電感應元件由濱松高性能光電二極管和特殊透光材料組成。光電二極管能夠?qū)⒐庑盘栟D化為電流信號,而且成一定比例關系。基于總輻射散射輻射測量原理測量日照,對三個光電感應器件排布有特殊要求。三個光電感應元件應安放于一個透明玻璃罩內(nèi),避免外界環(huán)境影響;其中一個光電感應器件用于測量總輻射,另外兩個光電感應器件分別用于測量上午和下午的散射輻射,其遮光罩采用特殊的全分天空方式,使二者不能同時暴露于陽光下。

3系統(tǒng)上位機設計

  3.1軟件設計與流程

  上位機數(shù)據(jù)接收軟件是在Visual Studio環(huán)境下開發(fā)的[78],用戶可在該環(huán)境下運用不同的程序語言進行開發(fā)。本設計選用了Visual C#2010,它是一種面向?qū)ο蟮木幊陶Z言,它編寫的應用程序可運行于.NET Framework上。本設計的上位機軟件希望能夠利用多線程去處理下位機發(fā)來的日照數(shù)據(jù)和GPS數(shù)據(jù)并且顯示到不同的接收窗口中,在GPS信息窗口通過將定位的坐標轉換后調(diào)用百度地圖API實現(xiàn)位置的顯示,同時將顯示在上位機界面的數(shù)據(jù)存放本地計算機,也可以上傳數(shù)據(jù)庫,本系統(tǒng)采用SQL Server建立數(shù)據(jù)庫及數(shù)據(jù)表[9]。整個軟件系統(tǒng)流程圖如圖4所示。

 

Image 004.jpg

  3.2上位機通信

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

 

Image 005.jpg

  Socket的通信模型有兩種[10]:TCP和UDP。TCP(面向連接方式)采用IP流的形式數(shù)據(jù)發(fā)送,數(shù)據(jù)的傳輸過程當中丟包少,傳輸可靠。UDP(無連接服務)采用數(shù)據(jù)報文的方式實現(xiàn)數(shù)據(jù)的收送,不保證數(shù)據(jù)的可靠性。由于本系統(tǒng)傳輸?shù)臄?shù)據(jù)量不是很大,但是要求數(shù)據(jù)可靠,因此為了確保傳輸?shù)目煽啃裕瑴p少丟包,本系統(tǒng)采用了TCP的形式進行數(shù)據(jù)的傳輸。

  3.3Socket編程

  由于本設計選用的GPRS模塊內(nèi)部包含TCP協(xié)議,只需要通過AT指令操作GPRS模塊以TCP客戶端的方式發(fā)送數(shù)據(jù),因此只需要完成上位機數(shù)據(jù)接收的應用程序編寫即可。由于本系統(tǒng)采用的是C#語言來編寫應用程序,里面包含許多網(wǎng)絡編程所需的類和方法,在編程的過程中可調(diào)用這些類和方法。首先要實例一個Socket對象[11],設置其傳輸?shù)母袷胶推鋫鬏攨f(xié)議,然后創(chuàng)建一個網(wǎng)絡節(jié)點對象要包含其IP地址和端口號,再把實例好的套接字綁定到對應的IP和端口號上,并開始監(jiān)聽來自下位機的連接,此處要設置一下監(jiān)聽隊列長度即同時處理請求連接的個數(shù),由于本次只實現(xiàn)了一個客戶端,但是上位機軟件監(jiān)聽的客戶端數(shù)量可以自由設置(為了以后組網(wǎng),方便擴展),最后調(diào)用Accept()函數(shù)處理客戶的連接,當有客戶向服務器發(fā)起連接的時候,就會分配一個新的套接字,通過Send()和Recv()函數(shù)實現(xiàn)與客戶端之間的通信,循環(huán)接收和送數(shù)據(jù),為了防止掉線,收到數(shù)據(jù)后自動回復內(nèi)容,相當于系統(tǒng)已經(jīng)做了心跳處理。

  3.4上位機數(shù)據(jù)存儲系統(tǒng)

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

  3.5地圖功能實現(xiàn)

  3.5.1GPS坐標解析

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

  3.5.2地圖顯示

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

4結論

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

參考文獻

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

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

  [3] 劉火良,楊森.STM32庫開發(fā)實戰(zhàn)指南[M].北京:機械工業(yè)出版社,2013.

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

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

 ?。?] 楊寧, 惠曉強. 微弱信號高精度數(shù)據(jù)采集技術研究[J]. 現(xiàn)代電子技術,2013,24 (9):71-73.

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

 ?。?] 金旭亮.NET4.0面向?qū)ο缶幊堂嬲剳闷跰].北京:電子工業(yè)出版社,2010.

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

 ?。?0] 劉蓓莉,劉大紅.基于Visual C#的網(wǎng)絡通信編程技術[J].電子科技,2013,26(11):151-153.

 ?。?1] 謝斌. MS.Net Visual C#在Socket網(wǎng)絡開發(fā)上的應用化計算機與網(wǎng)絡[J].計算機與網(wǎng)絡,2002,24(10):74-79

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

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


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。