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

錦州地區自動站數據實時顯示報警平臺設計與實現

2019-05-24 14:13:16溫舟婁芳蕾史虹婷賈寧徐玉秀高銘
電腦知識與技術 2019年11期
關鍵詞:數據處理數據庫

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

摘要:根據錦州市現在氣象業務的實際情況,利用Visual Basic語言,在.net4.0框架及SQLServer2008數據庫的支持下,調用遼寧省CIMISS數據環境庫的數據,開發了錦州市自動站數據實時顯示報警平臺。該平臺可實現錦州地區自動站數據當前實況顯示,可選時段查詢,具體數據查詢,降水等值線圖以及達到預警閾值報警等功能。該平臺的開發有效地提高了錦州市氣象臺的工作效率,有效地提高了預報預警質量與氣象服務能力。

關鍵詞:自動站;CIMISS;.net4.0編程;SQL數據庫系統

中圖分類號:TP311 文獻標識碼:A

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

1 背景

自動站實時數據的顯示與報警是提高預報準確率及氣象服務效果的重要保障,此前我市因為自動站廠家問題,具有兩個自動站數據庫,分別為長春廠與華云廠,也因此有兩個查看自動站數據的顯示平臺。根據遼寧省氣象局安排,目前我市自動站中心站已遷移至遼寧省氣象局,我市原有的自動站顯示平臺已經無法運轉,為了滿足春播及汛期服務要求,特制作開發此平臺。

此平臺數據利用氣象數據統一服務接口(MUSIC)獲取,氣象數據統一服務接口(MUSIC:Meteorological Unified Service Interface Community),基于國省統一的數據環境(CIMISS),面向氣象業務和科研,提供全國統一、標準、豐富的數據訪問服務和應用編程接口(API),為國、省、地、縣各級應用系統提供唯一權威的數據接入服務。

2 平臺概述

2.1 平臺功能

平臺主要包括以下內容:后臺數據處理,自動站數據客戶端顯示,預警報警提醒及雨量圖制作等功能。

2.2 平臺開發環境

平臺開發語言使用Visual Basic與Matlab,開發環境為Visual Studio2010[1-3]、.net4.0、Matlab2008a,在網絡數據庫SQLServer2008[4]的支持下,由此開發的自動站數據實時顯示報警平臺。

2.3 平臺設計

本平臺開發共包含兩部分。

2.3.1 后臺數據處理

后臺數據處理包含小時數據處理及分鐘數據處理兩部分。其中小時數據包括小時內最高、最低氣溫及出現時間,最大風、極大風風向風速及出現時間,1小時累計降水,最小能見度及出現時間等要素;分鐘數據包括當前溫度、風向風速、降水、能見度等要素。

2.3.2 客戶端顯示

客戶端數據顯示則分別為各要素(溫度、風、降水、能見度)當前實況顯示,可選時段查詢,具體數據查詢,降水等值線圖以及達到預警閾值報警等內容。

3 平臺具體實現

3.1 后臺數據處理

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

利用VB.Net語言建立兩個類,HourData及MinuteData,設置與數據庫表中相對應的只讀屬性,包含1個Download方法,用來從CIMISS服務器中讀取數據。在數據取回出現錯誤時,設置屬性值為Nothing,添加至SQL Server2008數據庫中顯示為NULL。需要說明的是,自動站分鐘數據要素在CIMISS服務器不同的表中,需要分別進行讀取。其中分鐘降水量為累積降水量,需自行運算生成5分鐘非累積降水量。

利用VB.Net語言將自動站基本信息表中每一站號進行讀取,放置1個Timer控件,每秒觸發一次Tick事件,每五分鐘及每小時利用ForEach循環,將每一自動站數據自CIMISS數據庫中讀取并寫入本地數據庫表中。同時隱藏Form窗口,以達到后臺處理目的。部分程序代碼如下:

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 自動站數據顯示及報警功能

利用VB.net語言將每一自動站基本信息表讀入自定義的StationInfo結構中,并建立文本及圖形兩個數組與其相對應,以便于地圖上進行顯示。

為各要素(溫度、風、降水、能見度)設置當前實況顯示,可選時段查詢,具體數據查詢等按鈕,觸發相應的Click事件后,于本地數據庫中讀取相應的數據,并與文本數組中顯示。

根據遼寧省氣象局文件相關要求,在小時降水量達到20mm;累計降水量達到40mm、80mm、100mm、150mm、200mm、250mm、300mm;溫度達到35℃以上;風速達到所設置閾值;能見度達到所設置閾值時,本平臺會出現報警提示音,并將其站名變為紅色同時顯示在主界面右側空白處。部分代碼如下:

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小時降水' 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 '當前風速' 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'當前能見度' 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小時降水' 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小時最小能見度' 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語言與Matlab語言混合編程方式,主程序為VB.net語言。這種方法實施起來顯得有些復雜,但是可以完全脫離MATLAB環境,實現軟件的快速開發。

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

4 平臺應用

本平臺自2017年5月開始在錦州市氣象臺進行測試使用,6月在錦州地區各縣市氣象局正式投入使用。此平臺投入使用后,可以一目了然地看到錦州地區各鄉鎮自動站實況溫度、風、降水、能見度等數據,能夠生成降水的等值線圖,并可在達到預警閾值時進行報警。在2017年汛期期間,成功的對每次降水進行監控及報警,有效地提高了預報預警質量與氣象服務能力。

5 結束語及討論

1)本平臺實現了錦州地區自動站各要素(溫度、風、降水、能見度)當前實況顯示,可選時段查詢,具體數據查詢,降水等值線圖以及達到預警閾值報警等功能。

2)本平臺目前正在錦州地區良好使用,有效地提高了預報預警質量與氣象服務能力。

3)本平臺后臺數據處理部分在遇到網絡問題時,無法從CIMISS數據庫取回數據,且暫時無補傳手段,影響部分功能應用。

4)由于不是專業的編程人員,平臺的美化方面略顯不足,且仍舊存在著暫時未發現的bug,針對這些存在的問題,將繼續對本平臺隨時進行更新和維護。

參考文獻:

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

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

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

[4] 郭鄭州, 陳軍紅. SQL Server2008完全學習手冊[M]. 北京: 清華大學出版社, 2011.

【通聯編輯:謝媛媛】

猜你喜歡
數據處理數據庫
認知診斷缺失數據處理方法的比較:零替換、多重插補與極大似然估計法*
心理學報(2022年4期)2022-04-12 07:38:02
ILWT-EEMD數據處理的ELM滾動軸承故障診斷
水泵技術(2021年3期)2021-08-14 02:09:20
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
MATLAB在化學工程與工藝實驗數據處理中的應用
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
Matlab在密立根油滴實驗數據處理中的應用
基于POS AV610與PPP的車輛導航數據處理
主站蜘蛛池模板: 91视频区| 噜噜噜久久| AV熟女乱| 激情综合网址| 9啪在线视频| 国产日韩丝袜一二三区| 国产亚洲精品无码专| 国产鲁鲁视频在线观看| 青青草国产在线视频| 久久综合婷婷| 中文纯内无码H| 超碰色了色| 国产精品内射视频| 国产理论最新国产精品视频| 91国内视频在线观看| 青草视频免费在线观看| 亚洲人成网站18禁动漫无码| 免费人成网站在线观看欧美| 在线无码九区| 无码国产伊人| 久久国产精品娇妻素人| 国产91在线|日本| 一本色道久久88综合日韩精品| 国产在线观看91精品亚瑟| 欧美三级不卡在线观看视频| 成人午夜久久| 香蕉伊思人视频| 在线观看国产精美视频| 国产肉感大码AV无码| 毛片免费在线视频| 蜜芽一区二区国产精品| 欧美激情成人网| 亚洲成肉网| 免费不卡视频| 在线观看国产网址你懂的| 久久久国产精品无码专区| 国产毛片高清一级国语| 一级做a爰片久久毛片毛片| 无码一区中文字幕| 亚洲AV无码不卡无码| 波多野结衣亚洲一区| 亚洲国产天堂久久综合226114| 欧美人与动牲交a欧美精品| 久久人体视频| 华人在线亚洲欧美精品| 亚洲不卡影院| 人人澡人人爽欧美一区| 国产在线无码av完整版在线观看| 亚洲AV无码久久精品色欲| 视频一本大道香蕉久在线播放| 中文字幕在线日韩91| 999在线免费视频| 中文字幕66页| 亚洲国产成人久久77| 国产精品一区二区在线播放| 成人免费黄色小视频| 亚洲中文在线看视频一区| 免费看a毛片| 国产在线自乱拍播放| 欧美性天天| 青青久视频| 伊人久久综在合线亚洲91| 久久亚洲黄色视频| 午夜性刺激在线观看免费| 国产精品亚洲一区二区在线观看| 国产一区在线视频观看| 最新亚洲人成无码网站欣赏网| 91丨九色丨首页在线播放| 日本在线视频免费| 久久永久免费人妻精品| 久久永久精品免费视频| 国产在线观看人成激情视频| 亚洲清纯自偷自拍另类专区| 青青操国产视频| 99热这里只有精品国产99| 国产欧美性爱网| 国产在线一区视频| 欧美天堂在线| 国产视频自拍一区| 欧美第二区| 一级毛片不卡片免费观看| 久久一级电影|