美章網(wǎng) 資料文庫 氣象站實(shí)時(shí)數(shù)據(jù)采集論文范文

氣象站實(shí)時(shí)數(shù)據(jù)采集論文范文

本站小編為你精心準(zhǔn)備了氣象站實(shí)時(shí)數(shù)據(jù)采集論文參考范文,愿這些范文能點(diǎn)燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。

氣象站實(shí)時(shí)數(shù)據(jù)采集論文

1VantagePro氣象站

VantagePro電子氣象站是美國戴維斯公司(DavisInstrumentsCorp.)面向氣象服務(wù)、面向移動(dòng)服務(wù)的小型氣象站[5]。體積小,重量輕,功耗小,集成度高,安裝簡單,長期工作穩(wěn)定可靠。氣象站由傳感器單元(ISS)、顯示控制器(CONSOLE)和記錄器軟件(WeatherLink)組成[6,7]。有線站傳感器(ISS)上的信號(hào)由有線傳送到顯示控制器上,電纜線長度30米;無線站傳感器(ISS)上的信號(hào)由無線傳送到顯示控制器上,距離大約200-300米。VantagePro也是目前國內(nèi)外天文領(lǐng)域應(yīng)用得較廣的全自動(dòng)氣象站之一,在遠(yuǎn)程自主觀測等方面應(yīng)用較廣。VantagePro可以測量空氣溫度、空氣相對(duì)濕度、風(fēng)向、風(fēng)速、雨量、氣壓、太陽輻射和紫外輻射,組成8要素電子氣象站。還可擴(kuò)展對(duì)土壤溫度、土壤濕度及葉面濕度等氣象要素進(jìn)行觀測。與一般的氣象站不同,VantagePro采用了所謂的一體化傳感器單元(ISS),通過ISS接口板接收數(shù)據(jù)并轉(zhuǎn)發(fā)至CONSOLE(顯示控制器)或連接的計(jì)算機(jī)中,其中溫濕度傳感器在白色百葉式防輻射罩內(nèi),翻斗式雨量計(jì)的翻斗在雨量筒內(nèi)。各傳感器信號(hào)線均接入到ISS接口板中。ISS通過其外部所帶太陽能板供電,盒內(nèi)裝有一塊3伏鋰電池,用于夜間及無日照時(shí)的供電[8]。CONSOLE顯示控制器,用來在未連接計(jì)算機(jī)單獨(dú)顯示氣象信息時(shí)的狀態(tài)。但由于當(dāng)前MUSER采用計(jì)算機(jī)實(shí)時(shí)采集,因此CONSOLE并不需要配置。

1.1通信協(xié)議VantagePro中數(shù)據(jù)傳輸和命令控制使用串行通信協(xié)議,即RS232C串口通訊協(xié)議標(biāo)準(zhǔn)。RS232C串口通信協(xié)議的包含,8個(gè)數(shù)據(jù)位,1個(gè)起始位,1個(gè)停止位,無奇偶校驗(yàn)位。通信協(xié)議中的波特率設(shè)置為4800比特。用RS232C串口通信協(xié)議中的DB9(9針D型串口)。VantagePro的串行端口的命令格式可以表示為下面的格式:<參數(shù)名稱—十進(jìn)制數(shù)字><參數(shù)名稱—十六進(jìn)制數(shù)字><參數(shù)名稱—二進(jìn)制數(shù)字>這三種格式。十進(jìn)制和十六進(jìn)制數(shù)字可以用ASCII替換。二進(jìn)制數(shù)字發(fā)送字符值。每個(gè)命令之后都要緊跟著一個(gè)換行符(\n)。

1.2數(shù)據(jù)格式VantagePro通過串口獲取氣象數(shù)據(jù),實(shí)際傳送的氣象數(shù)據(jù)為99個(gè)字節(jié)的數(shù)據(jù)包,如表1所示,從1-99對(duì)數(shù)據(jù)包編號(hào),提取的數(shù)據(jù)用括號(hào)給出了注釋,括號(hào)中逗號(hào)之前的內(nèi)容表示字段含義,逗號(hào)之后的內(nèi)容表示測量值的單位。數(shù)據(jù)包的具體格式如表1所示。

2實(shí)時(shí)氣象數(shù)據(jù)拆分與歸檔

在MUSER的應(yīng)用中,將各個(gè)ISS采集的氣象因子數(shù)據(jù)直接通過RS232C串口通信協(xié)議將采集的數(shù)據(jù)傳到操作系統(tǒng)為LINUX的計(jì)算機(jī),通過該接收機(jī)器上的數(shù)據(jù)請(qǐng)求與拆分程序?qū)S232C傳送的氣象因子數(shù)據(jù)包實(shí)時(shí)拆分出需要的氣象因子并歸檔到MySQL數(shù)據(jù)庫和Redis高速緩存中。同時(shí)數(shù)據(jù)合并程序自動(dòng)合并同價(jià)值的數(shù)據(jù),將最新的數(shù)據(jù)存到Redis中。系統(tǒng)整體結(jié)構(gòu)如圖1所示。

2.1初始化串口數(shù)據(jù)的接收和歸檔以駐留程序方式運(yùn)行在服務(wù)器上,圖2顯示了實(shí)時(shí)氣象數(shù)據(jù)拆分與處理的初始化流程。氣象因子的記錄器對(duì)象主要暫時(shí)存儲(chǔ)拆分處理后的氣象數(shù)據(jù),氣象因子讀取器對(duì)象負(fù)責(zé)讀取數(shù)據(jù)包中記錄的特定氣象因子的測量值。由于VantagePro氣象站測量的氣象因子的值與要?dú)w檔值的單位不一致,因此也需要?dú)庀笠蜃拥男拚鲗?duì)象來對(duì)測量的原始值進(jìn)行修正。

2.2數(shù)據(jù)的拆分與處理系統(tǒng)的初始化后,采集程序定時(shí)從串口接收數(shù)據(jù),首先獲得采集時(shí)間并轉(zhuǎn)換為1970年到現(xiàn)在的秒數(shù),并向VantagePro請(qǐng)求一個(gè)數(shù)據(jù)包,接著就是處理收到的氣象數(shù)據(jù)包。PC上實(shí)時(shí)氣象數(shù)據(jù)的拆分與處理的流程如圖3所示。圖3中的時(shí)間秒數(shù)的定義為從1970年1月1日0時(shí)0分0秒到此時(shí)的秒數(shù)。相鄰的兩個(gè)時(shí)間秒數(shù)之間相差60秒,即1分鐘。數(shù)據(jù)的采樣周期也是1分鐘。時(shí)間秒數(shù)用來唯一表示氣象因子的采集時(shí)間或采樣時(shí)間,同時(shí)也作為Redis存儲(chǔ)中可分類的集合中Score的值。

2.3氣象數(shù)據(jù)的存儲(chǔ)將采集的氣象數(shù)據(jù)保存到MySQL數(shù)據(jù)庫中,同時(shí)為了提高查詢速度,使用Redis作為高速緩存。MySQL數(shù)據(jù)庫中數(shù)據(jù)表的定義如表2所示。Redis是一個(gè)Key-Value存儲(chǔ)系統(tǒng)[10]。和Memcached類似,它支持存儲(chǔ)的value類型相對(duì)更多,包括string(字符串)、list(鏈表)、set(集合)和zset(有序集合)。Redis的功能可以理解為一個(gè)Key-Value的數(shù)據(jù)結(jié)構(gòu)操作,數(shù)據(jù)都保存在內(nèi)存中定期刷新到磁盤,以及提高的讀寫效率。Redis數(shù)據(jù)庫通過兩種方式可以實(shí)現(xiàn)數(shù)據(jù)持久化:使用快照的方式將內(nèi)存中的數(shù)據(jù)不斷寫入磁盤和將操作記錄記錄在磁盤文件中。因?yàn)樾枰赗edis執(zhí)行范圍查詢,我們使用有序集合SortedSets存儲(chǔ)氣象數(shù)據(jù),集合結(jié)構(gòu)中使用時(shí)間秒數(shù)作為score,氣象數(shù)據(jù)的實(shí)際值為其value值。而Key的值為氣象的統(tǒng)計(jì)因子,如溫度(temperature)、濕度(humidity)等。比如將2015年1月29日16時(shí)26分05秒采集的溫度的值17℃存儲(chǔ)到Redis的命令為:redis127.0.0.1:6379>zaddiss.temperature142252110017。

2.4拆分存儲(chǔ)實(shí)例在如下的氣象數(shù)據(jù)拆分與歸檔的例子中,以測量室外溫度的傳感器iss.temperature為例。其它氣象因子數(shù)據(jù)的拆分與歸檔和氣象因子(室外溫度)的處理情況類似。步驟如下:1)開始采樣時(shí)間為2015年1月29日16時(shí)26分05秒,將該時(shí)間轉(zhuǎn)換成1970年以來的時(shí)間秒數(shù),為1422521100。2)向VantagePro發(fā)送命令‖LOOP1‖命令,請(qǐng)求一個(gè)99字節(jié)的數(shù)據(jù)包。接收端到氣象站響應(yīng)的數(shù)據(jù)包,數(shù)據(jù)包的內(nèi)容如圖5所示。3)傳感器iss.temperature的讀取器從數(shù)據(jù)包中偏移量為12的位置讀取2個(gè)字節(jié),其十六進(jìn)制值為001d。讀取器對(duì)象將001d轉(zhuǎn)換成十進(jìn)制的29。4)傳感器iss.temperature的修正器將傳感器的29F修正為2.900000F,然后再將2.900000F轉(zhuǎn)換成-16.166667℃。(溫度傳感器記錄的測量值是實(shí)際測量值的10倍,其它值的倍數(shù)詳見表1)5)傳感器iss.temperature的記錄器將-16.166667℃更新到記錄器對(duì)象中。6)將傳感器的值歸檔到MySQL和Redis中。7)更新下一次采用時(shí)間,循環(huán)步驟1-7。

3氣象數(shù)據(jù)合并與快速檢索

3.1氣象數(shù)據(jù)的合并一般情況下將采集到的氣象數(shù)據(jù)處理成特定格式后直接追加到數(shù)據(jù)庫中,然而隨著時(shí)間的積累,數(shù)據(jù)庫中的記錄數(shù)會(huì)急劇增加。相應(yīng)地檢索某一個(gè)時(shí)間段的天氣狀態(tài)所需的時(shí)間也會(huì)增加,不能滿足MUSER的高效數(shù)據(jù)處理的要求。由于連續(xù)時(shí)間段的天氣狀態(tài)可能相同。例如在2014-6-610:00:00到2014-6-610:00:59這一分鐘采集到的天氣狀態(tài)為晴天,而在接下來的59分鐘的時(shí)間內(nèi)采集到的天氣狀態(tài)都為晴天。通常情況下是將這60條記錄全部存儲(chǔ)到數(shù)據(jù)庫中,然而改進(jìn)的歸檔方法是合并這60條記錄為一條記錄。當(dāng)檢索落在這一合并后的時(shí)間段天氣狀態(tài)時(shí),仍然可以檢索到要檢索時(shí)間段的天氣狀態(tài)為晴天,這樣做和從60條記錄中檢索到的天氣狀態(tài)一樣都是晴天,保證了合并后的數(shù)據(jù)仍然是有效的。如果一天要?dú)w檔的所有采集到的天氣狀態(tài)都一樣,那么采用合并方法,數(shù)據(jù)庫中存儲(chǔ)一條記錄就可以記錄這一天的天氣狀態(tài)。但是如果采用傳統(tǒng)的數(shù)據(jù)歸檔方式,記錄一天的天氣狀態(tài)就需要24*60條記錄,這樣不僅浪費(fèi)了存儲(chǔ)空間,同時(shí)影響到檢索效率。

3.2快速檢索數(shù)據(jù)合并一定程度上可以加快檢索速度,但對(duì)于具體值的氣象采集因子,如需要在每個(gè)UVFITS文件中存儲(chǔ)的溫度,濕度值,是無法采用數(shù)據(jù)合并的,數(shù)據(jù)量仍非常大。為了進(jìn)一步提高查詢速度,使用Redis作為高速緩存。數(shù)據(jù)查詢時(shí)首先訪問Redis,只有當(dāng)Redis訪問失敗時(shí)或者在Redis中找不到數(shù)據(jù)時(shí)才訪問MySQL,并將從MySQL獲得的數(shù)據(jù)更新到Redis中。MUSER中最常用的氣象數(shù)據(jù)查詢模式是根據(jù)觀察時(shí)間查詢氣象數(shù)據(jù),因此使用有序集合SortedSet,SortedSet是Set的一個(gè)升級(jí)版本,它在Set的基礎(chǔ)上增加了一個(gè)順序?qū)傩裕@一屬性在添加修改元素的時(shí)候可以指定,每次指定后,zset會(huì)自動(dòng)重新按新的值調(diào)整順序。可以理解為有兩列的MySQL表,一列存儲(chǔ)具體的值,一列存順序,也就是氣象數(shù)據(jù)的時(shí)間。操作中key理解為zset的名字。查詢時(shí)根據(jù)觀察時(shí)間和氣象因子可以獲得該時(shí)刻的具體氣象數(shù)據(jù)。比如查詢時(shí)間2015年1月29日16時(shí)26分05秒的溫度的值,首先將該時(shí)間轉(zhuǎn)換成1970年以來的時(shí)間秒數(shù),為1422521100,在Redis上執(zhí)行如下查詢命令:redis127.0.0.1:6379>zrangebyscoretemperature1422521100+infLIMIT01這條命令的意思是在鍵值為temperature的SortedSets中查找大于時(shí)間點(diǎn)1422521100的第一個(gè)值。+inf在Redis中表示正無窮大。

4結(jié)論

本文首先介紹了MUSER項(xiàng)目的基本情況,并對(duì)MUSER項(xiàng)目中氣象條件的可能應(yīng)用場景和氣象條件對(duì)觀測數(shù)據(jù)有效性可能造成的影響進(jìn)行了論述;簡要地介紹了VantagePro氣象站的基本工作原理,數(shù)據(jù)交換格式以及串行通信協(xié)議。設(shè)計(jì)并實(shí)現(xiàn)了氣象數(shù)據(jù)的實(shí)時(shí)采集數(shù)據(jù)歸檔,合并和快速索引方法。本文介紹的VantagePro氣象站的氣象數(shù)據(jù)采集,存儲(chǔ)及快速查詢的優(yōu)化方法對(duì)MUSER觀測數(shù)據(jù)的處理有重要的支撐作用,同時(shí)也可應(yīng)用于望遠(yuǎn)鏡選址中的氣象條件的自動(dòng)監(jiān)測。本文雖然提到了氣象數(shù)據(jù)的合并方法,但是具體的氣象條件狀態(tài)值的確定是需要統(tǒng)計(jì)分析氣象數(shù)據(jù)對(duì)MUSER觀測數(shù)據(jù)的影響后得出。因此未來我們將進(jìn)行大量統(tǒng)計(jì)分析以評(píng)估氣象數(shù)據(jù)對(duì)MUSER觀測數(shù)據(jù)的可能影響,并完善歸并方法。

作者:衛(wèi)守林 石聰明高姣姣王鋒鄧輝季凱帆單位:中國科學(xué)院云南天文臺(tái)昆明理工大學(xué)云南省計(jì)算機(jī)技術(shù)應(yīng)用重點(diǎn)實(shí)驗(yàn)室

主站蜘蛛池模板: 精品乱码一区二区三区四区| 99精品视频在线观看re| 欧美亚洲综合网| 伊人影院在线视频| 羞羞视频网站免费入口| 国产成a人亚洲精v品无码| 337p人体欧洲人体亚| 女人18岁毛片| 中国高清xvideossex| 日韩丝袜在线观看| 亚洲人成77777在线播放网站 | 美女污污视频在线观看| 国产成人精品久久一区二区小说 | 7777精品久久久大香线蕉 | 亚洲精品国产精品国自产观看| 精品无码av一区二区三区| 国产亚洲精品美女久久久久久下载| 亚洲五月综合网色九月色| 国产美女久久精品香蕉69| a在线观看欧美在线观看| 性高湖久久久久久久久aaaaa | 97色伦图片97综合影院| 好爽好紧好大的免费视频国产| 中文字幕一区二区日产乱码| 日本爽爽爽爽爽爽在线观看免| 亚欧人成精品免费观看| 欧美在线第一二三四区| 亚洲第九十九页| 狂野黑人性猛交xxxxxx| 免费很黄很色裸乳在线观看| 约会只c不y什么意思| 国产一区视频在线免费观看| 风间由美一区二区播放合集| 国产成社区在线视频观看| 手机在线看片国产日韩生活片| 国产美女被爆羞羞视频| 99re在线播放视频| 天使a中文在线观看| www..com黄| 好爽好深胸好大好多水视频| 一级午夜免费视频|