• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    錦州地區(qū)自動(dòng)站數(shù)據(jù)實(shí)時(shí)顯示報(bào)警平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)

    2019-05-24 14:13:16溫舟婁芳蕾史虹婷賈寧徐玉秀高銘
    電腦知識(shí)與技術(shù) 2019年11期
    關(guān)鍵詞:能見度數(shù)據(jù)處理降水

    溫舟 婁芳蕾 史虹婷 賈寧 徐玉秀 高銘

    摘要:根據(jù)錦州市現(xiàn)在氣象業(yè)務(wù)的實(shí)際情況,利用Visual Basic語(yǔ)言,在.net4.0框架及SQLServer2008數(shù)據(jù)庫(kù)的支持下,調(diào)用遼寧省CIMISS數(shù)據(jù)環(huán)境庫(kù)的數(shù)據(jù),開發(fā)了錦州市自動(dòng)站數(shù)據(jù)實(shí)時(shí)顯示報(bào)警平臺(tái)。該平臺(tái)可實(shí)現(xiàn)錦州地區(qū)自動(dòng)站數(shù)據(jù)當(dāng)前實(shí)況顯示,可選時(shí)段查詢,具體數(shù)據(jù)查詢,降水等值線圖以及達(dá)到預(yù)警閾值報(bào)警等功能。該平臺(tái)的開發(fā)有效地提高了錦州市氣象臺(tái)的工作效率,有效地提高了預(yù)報(bào)預(yù)警質(zhì)量與氣象服務(wù)能力。

    關(guān)鍵詞:自動(dòng)站;CIMISS;.net4.0編程;SQL數(shù)據(jù)庫(kù)系統(tǒng)

    中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A

    文章編號(hào):1009-3044(2019)11-0101-03

    1 背景

    自動(dòng)站實(shí)時(shí)數(shù)據(jù)的顯示與報(bào)警是提高預(yù)報(bào)準(zhǔn)確率及氣象服務(wù)效果的重要保障,此前我市因?yàn)樽詣?dòng)站廠家問題,具有兩個(gè)自動(dòng)站數(shù)據(jù)庫(kù),分別為長(zhǎng)春廠與華云廠,也因此有兩個(gè)查看自動(dòng)站數(shù)據(jù)的顯示平臺(tái)。根據(jù)遼寧省氣象局安排,目前我市自動(dòng)站中心站已遷移至遼寧省氣象局,我市原有的自動(dòng)站顯示平臺(tái)已經(jīng)無(wú)法運(yùn)轉(zhuǎn),為了滿足春播及汛期服務(wù)要求,特制作開發(fā)此平臺(tái)。

    此平臺(tái)數(shù)據(jù)利用氣象數(shù)據(jù)統(tǒng)一服務(wù)接口(MUSIC)獲取,氣象數(shù)據(jù)統(tǒng)一服務(wù)接口(MUSIC:Meteorological Unified Service Interface Community),基于國(guó)省統(tǒng)一的數(shù)據(jù)環(huán)境(CIMISS),面向氣象業(yè)務(wù)和科研,提供全國(guó)統(tǒng)一、標(biāo)準(zhǔn)、豐富的數(shù)據(jù)訪問服務(wù)和應(yīng)用編程接口(API),為國(guó)、省、地、縣各級(jí)應(yīng)用系統(tǒng)提供唯一權(quán)威的數(shù)據(jù)接入服務(wù)。

    2 平臺(tái)概述

    2.1 平臺(tái)功能

    平臺(tái)主要包括以下內(nèi)容:后臺(tái)數(shù)據(jù)處理,自動(dòng)站數(shù)據(jù)客戶端顯示,預(yù)警報(bào)警提醒及雨量圖制作等功能。

    2.2 平臺(tái)開發(fā)環(huán)境

    平臺(tái)開發(fā)語(yǔ)言使用Visual Basic與Matlab,開發(fā)環(huán)境為Visual Studio2010[1-3]、.net4.0、Matlab2008a,在網(wǎng)絡(luò)數(shù)據(jù)庫(kù)SQLServer2008[4]的支持下,由此開發(fā)的自動(dòng)站數(shù)據(jù)實(shí)時(shí)顯示報(bào)警平臺(tái)。

    2.3 平臺(tái)設(shè)計(jì)

    本平臺(tái)開發(fā)共包含兩部分。

    2.3.1 后臺(tái)數(shù)據(jù)處理

    后臺(tái)數(shù)據(jù)處理包含小時(shí)數(shù)據(jù)處理及分鐘數(shù)據(jù)處理兩部分。其中小時(shí)數(shù)據(jù)包括小時(shí)內(nèi)最高、最低氣溫及出現(xiàn)時(shí)間,最大風(fēng)、極大風(fēng)風(fēng)向風(fēng)速及出現(xiàn)時(shí)間,1小時(shí)累計(jì)降水,最小能見度及出現(xiàn)時(shí)間等要素;分鐘數(shù)據(jù)包括當(dāng)前溫度、風(fēng)向風(fēng)速、降水、能見度等要素。

    2.3.2 客戶端顯示

    客戶端數(shù)據(jù)顯示則分別為各要素(溫度、風(fēng)、降水、能見度)當(dāng)前實(shí)況顯示,可選時(shí)段查詢,具體數(shù)據(jù)查詢,降水等值線圖以及達(dá)到預(yù)警閾值報(bào)警等內(nèi)容。

    3 平臺(tái)具體實(shí)現(xiàn)

    3.1 后臺(tái)數(shù)據(jù)處理

    利用SQL Server2008數(shù)據(jù)庫(kù)建立小時(shí)數(shù)據(jù)要素表、分鐘數(shù)據(jù)要素表以及自動(dòng)站基本信息表。自動(dòng)站基本信息表包含Station_C、Station_N、經(jīng)緯度等5列,小時(shí)數(shù)據(jù)要素表包含Time、Station_C、Tem_MAX等15 列,分鐘數(shù)據(jù)要素表包含ime、Station_C、Tem 、PRE等7列。

    利用VB.Net語(yǔ)言建立兩個(gè)類,HourData及MinuteData,設(shè)置與數(shù)據(jù)庫(kù)表中相對(duì)應(yīng)的只讀屬性,包含1個(gè)Download方法,用來(lái)從CIMISS服務(wù)器中讀取數(shù)據(jù)。在數(shù)據(jù)取回出現(xiàn)錯(cuò)誤時(shí),設(shè)置屬性值為Nothing,添加至SQL Server2008數(shù)據(jù)庫(kù)中顯示為NULL。需要說(shuō)明的是,自動(dòng)站分鐘數(shù)據(jù)要素在CIMISS服務(wù)器不同的表中,需要分別進(jìn)行讀取。其中分鐘降水量為累積降水量,需自行運(yùn)算生成5分鐘非累積降水量。

    利用VB.Net語(yǔ)言將自動(dòng)站基本信息表中每一站號(hào)進(jìn)行讀取,放置1個(gè)Timer控件,每秒觸發(fā)一次Tick事件,每五分鐘及每小時(shí)利用ForEach循環(huán),將每一自動(dòng)站數(shù)據(jù)自CIMISS數(shù)據(jù)庫(kù)中讀取并寫入本地?cái)?shù)據(jù)庫(kù)表中。同時(shí)隱藏Form窗口,以達(dá)到后臺(tái)處理目的。部分程序代碼如下:

    For Each st As String In station

    Try

    If table = "MinuteData" Then

    data1 = New MinuteData(st, MiTime)

    ElseIf table = "HourData" Then

    data1 = New HourData(st)

    End If

    Dim t As Type

    Dim PIS() As System.Reflection.PropertyInfo

    Dim Column As New StringBuilder

    Dim Value As New StringBuilder

    t = data1.GetType

    PIS = t.GetProperties()

    For Each pi As System.Reflection.PropertyInfo In PIS

    If Not IsNothing(pi.GetValue(data1, Nothing)) Then

    Column.Append(pi.Name & ",")

    Value.Append(pi.GetValue(data1, Nothing).ToString & "','")

    End If

    Next

    Column.Remove(Column.Length - 1, 1)

    Value.Remove(Value.Length - 3, 3)

    _objDataAdapter.SelectCommand.CommandText = "INSERT INTO " & table & " (" & Column.ToString & ") " & "VALUES('" & Value.ToString & "')"

    _objDataAdapter.SelectCommand.ExecuteNonQuery()

    Catch ex As Exception

    Dim i As Integer = station2.Length

    station2(i - 1) = st

    ReDim Preserve station2(i + 1)

    Continue For

    End Try

    data1.close()

    data1.Dispose()

    Next

    3.2 客戶端顯示

    3.2.1 自動(dòng)站數(shù)據(jù)顯示及報(bào)警功能

    利用VB.net語(yǔ)言將每一自動(dòng)站基本信息表讀入自定義的StationInfo結(jié)構(gòu)中,并建立文本及圖形兩個(gè)數(shù)組與其相對(duì)應(yīng),以便于地圖上進(jìn)行顯示。

    為各要素(溫度、風(fēng)、降水、能見度)設(shè)置當(dāng)前實(shí)況顯示,可選時(shí)段查詢,具體數(shù)據(jù)查詢等按鈕,觸發(fā)相應(yīng)的Click事件后,于本地?cái)?shù)據(jù)庫(kù)中讀取相應(yīng)的數(shù)據(jù),并與文本數(shù)組中顯示。

    根據(jù)遼寧省氣象局文件相關(guān)要求,在小時(shí)降水量達(dá)到20mm;累計(jì)降水量達(dá)到40mm、80mm、100mm、150mm、200mm、250mm、300mm;溫度達(dá)到35℃以上;風(fēng)速達(dá)到所設(shè)置閾值;能見度達(dá)到所設(shè)置閾值時(shí),本平臺(tái)會(huì)出現(xiàn)報(bào)警提示音,并將其站名變?yōu)榧t色同時(shí)顯示在主界面右側(cè)空白處。部分代碼如下:

    Dim Belongs As String

    If County = "錦州" Then

    Belongs = ""

    Else

    Belongs = " and Station.county ='" & County & "'"

    End If

    Dim _objDataSet As New DataSet

    Dim sqlR As New SQL

    If tabels = "M" Then

    ReDim SelText(2)

    SelText(0) = "declare @LDT datetime set @LDT = (select max(time) from MinuteData) SELECT Station.Station_N , minutedata.Station_C ,@LDT,sum(MinuteData.pre) as '過去1小時(shí)降水' FROM MinuteData INNER JOIN Station on MinuteData.Station_C =Station.Station_C where Time between DATEADD (HH ,-1 ,@LDT) and @LDT group by MinuteData.Station_C , Station.Station_N , Station.County having sum(MinuteData.pre)>20 and sum(MinuteData.pre)<9999" & Belongs

    SelText(1) = "SELECT Station.Station_N , minutedata.Station_C ,MinuteData.Time ,MinuteData.Wind_V as '當(dāng)前風(fēng)速' FROM MinuteData INNER JOIN Station on MinuteData.Station_C =Station.Station_C where Time =(SELECT MAX(Time) FROM MinuteData) and Wind_V>" & TxtWind_S.Text & "and Wind_V<999" & Belongs

    SelText(2) = "SELECT Station.Station_N , minutedata.Station_C ,MinuteData.Time ,MinuteData.Vis as'當(dāng)前能見度' FROM MinuteData INNER JOIN Station on MinuteData.Station_C =Station.Station_C where Time =(SELECT MAX(Time) FROM MinuteData) and Vis<" & TxtVis.Text & Belongs

    ElseIf tabels = "H" Then

    ReDim SelText(9)

    SelText(0) = "declare @LDT datetime set @LDT = (select max(time) from hourData) SELECT Station.Station_N , hourdata.Station_C , @LDT ,sum(HourData.R_1h) as '過去24小時(shí)降水' FROM hourData INNER JOIN Station on hourData.Station_C =Station.Station_C where Time between DATEADD (HH ,-24 ,@LDT) and @LDT group by hourData.Station_C ,Station.Station_N , Station.County having sum(HourData.R_1h)>40 and sum(HourData.R_1h)<9999" & Belongs

    SelText(9) = "SELECT Station.Station_N , Hourdata.Station_C ,HourData.Time ,HourData.Vis_Min as '過去1小時(shí)最小能見度' FROM hourData INNER JOIN Station on hourData.Station_C =Station.Station_C where Time =(SELECT MAX(Time) FROM hourData)and Vis_Min<" & TxtVis.Text & Belongs

    End If

    3.2.2 雨情圖繪制

    雨情圖繪制部分采用VB.net語(yǔ)言與Matlab語(yǔ)言混合編程方式,主程序?yàn)閂B.net語(yǔ)言。這種方法實(shí)施起來(lái)顯得有些復(fù)雜,但是可以完全脫離MATLAB環(huán)境,實(shí)現(xiàn)軟件的快速開發(fā)。

    利用Matlab語(yǔ)言將等值線繪制方法寫成m文件,在MATLAB的命令窗口中輸入:>> deploytool,設(shè)置好項(xiàng)目名,并指定目標(biāo)組件的形式是.NET Assembly,然后確定,將其封裝在一個(gè)類塊(dll文件)中,以供主程序進(jìn)行調(diào)用。主程序在點(diǎn)擊雨情圖制作后,即可根據(jù)所選時(shí)間段進(jìn)行雨情圖繪制。

    4 平臺(tái)應(yīng)用

    本平臺(tái)自2017年5月開始在錦州市氣象臺(tái)進(jìn)行測(cè)試使用,6月在錦州地區(qū)各縣市氣象局正式投入使用。此平臺(tái)投入使用后,可以一目了然地看到錦州地區(qū)各鄉(xiāng)鎮(zhèn)自動(dòng)站實(shí)況溫度、風(fēng)、降水、能見度等數(shù)據(jù),能夠生成降水的等值線圖,并可在達(dá)到預(yù)警閾值時(shí)進(jìn)行報(bào)警。在2017年汛期期間,成功的對(duì)每次降水進(jìn)行監(jiān)控及報(bào)警,有效地提高了預(yù)報(bào)預(yù)警質(zhì)量與氣象服務(wù)能力。

    5 結(jié)束語(yǔ)及討論

    1)本平臺(tái)實(shí)現(xiàn)了錦州地區(qū)自動(dòng)站各要素(溫度、風(fēng)、降水、能見度)當(dāng)前實(shí)況顯示,可選時(shí)段查詢,具體數(shù)據(jù)查詢,降水等值線圖以及達(dá)到預(yù)警閾值報(bào)警等功能。

    2)本平臺(tái)目前正在錦州地區(qū)良好使用,有效地提高了預(yù)報(bào)預(yù)警質(zhì)量與氣象服務(wù)能力。

    3)本平臺(tái)后臺(tái)數(shù)據(jù)處理部分在遇到網(wǎng)絡(luò)問題時(shí),無(wú)法從CIMISS數(shù)據(jù)庫(kù)取回?cái)?shù)據(jù),且暫時(shí)無(wú)補(bǔ)傳手段,影響部分功能應(yīng)用。

    4)由于不是專業(yè)的編程人員,平臺(tái)的美化方面略顯不足,且仍舊存在著暫時(shí)未發(fā)現(xiàn)的bug,針對(duì)這些存在的問題,將繼續(xù)對(duì)本平臺(tái)隨時(shí)進(jìn)行更新和維護(hù)。

    參考文獻(xiàn):

    [1] 威利斯, 紐薩姆. Visual Basic2010入門經(jīng)典[M]. 6版. 北京: 清華大學(xué)出版社, 2011.

    [2] James Foxall. Visual Basic2010入門經(jīng)典[M]. 北京: 人民郵電出版社, 2011.

    [3] Bill Sheldon, Billy Hollis, Kent Sharkey, 等. Visual Basic 2010 NET4高級(jí)編程[M]. 6版. 北京: 清華大學(xué)出版社, 2011.

    [4] 郭鄭州, 陳軍紅. SQL Server2008完全學(xué)習(xí)手冊(cè)[M]. 北京: 清華大學(xué)出版社, 2011.

    【通聯(lián)編輯:謝媛媛】

    猜你喜歡
    能見度數(shù)據(jù)處理降水
    認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補(bǔ)與極大似然估計(jì)法*
    黑龍江省玉米生長(zhǎng)季自然降水與有效降水對(duì)比分析
    黑龍江氣象(2021年2期)2021-11-05 07:07:00
    ILWT-EEMD數(shù)據(jù)處理的ELM滾動(dòng)軸承故障診斷
    能見度三百米
    為什么南極降水很少卻有很厚的冰層?
    家教世界(2018年16期)2018-06-20 02:22:00
    低能見度下高速公路主動(dòng)誘導(dǎo)技術(shù)的應(yīng)用
    降水現(xiàn)象儀模擬軟件設(shè)計(jì)與實(shí)現(xiàn)
    前向散射能見度儀的常見異常現(xiàn)象處理及日常維護(hù)
    前向散射能見度儀故障實(shí)例分析
    基于希爾伯特- 黃變換的去噪法在外測(cè)數(shù)據(jù)處理中的應(yīng)用
    基隆市| 射阳县| 新巴尔虎左旗| 高青县| 饶河县| 铜陵市| 海晏县| 攀枝花市| 东光县| 普洱| 包头市| 靖远县| 永昌县| 大港区| 东阳市| 巧家县| 珲春市| 琼结县| 沁阳市| 始兴县| 施甸县| 横峰县| 民权县| 安新县| 玛纳斯县| 杭锦旗| 平安县| 牡丹江市| 吴川市| 长子县| 盐边县| 翼城县| 噶尔县| 临桂县| 禹州市| 繁峙县| 阿拉尔市| 海口市| 宾川县| 黔西| 武冈市|