羅亞楠,李 剛,聶 祥,吳 姍,吳蔚然
(1.貴州省七星關(guān)區(qū)氣象局,貴州 七星關(guān) 551799;2.貴州省氣象臺,貴州 貴陽 550002;3.貴州省畢節(jié)市氣象局,貴州 畢節(jié) 551700)
畢節(jié)市位于貴州省西北部,地處云貴高原東麓烏蒙山腹地,地形復(fù)雜,海拔差異顯著,地方性氣候特征明顯,暴雨、冰雹、凝凍等多種災(zāi)害性天氣頻繁出現(xiàn),且局地性較強(qiáng),給氣象預(yù)報預(yù)測及服務(wù)工作帶來較大挑戰(zhàn),特別在云貴準(zhǔn)靜止鋒影響期間,使得這一地區(qū)天氣更加復(fù)雜多變。由于畢節(jié)市地形的特殊性和高海拔等因素,除暴雨、冰雹等災(zāi)害性天氣影響外,大霧和大風(fēng)也較為頻發(fā)和典型,且時空分布極度不均勻,對當(dāng)?shù)剞r(nóng)業(yè)設(shè)施、林業(yè)及交通等均存在著不同程度的破壞與影響。大風(fēng)天氣多發(fā)于赫章和威寧的春秋季節(jié),夏季常常伴隨著強(qiáng)對流天氣發(fā)生,對基礎(chǔ)設(shè)施、農(nóng)業(yè)設(shè)施、林業(yè)等影響巨大,給當(dāng)?shù)貛砭薮髶p失[1]。大霧常年均有發(fā)生,尤以大方、威寧和金沙等縣較為突出,具有顯著的局地性特點(diǎn)。特別是高速公路大霧,嚴(yán)重影響交通安全[2],給國民經(jīng)濟(jì)和人民生命財產(chǎn)帶來重大損失。因此,做好當(dāng)?shù)卮箫L(fēng)、大霧的監(jiān)測預(yù)警服務(wù)工作,有助于政府決策與調(diào)度,最大限度減小因氣象因素造成的經(jīng)濟(jì)損失,研發(fā)一套適合本地的大風(fēng)大霧監(jiān)測預(yù)警系統(tǒng)[3]尤為重要。
目前,畢節(jié)市大霧和大風(fēng)的監(jiān)測、預(yù)警及服務(wù)工作,主要依靠人工每天關(guān)注短臨一體化等平臺的觀測數(shù)據(jù),根據(jù)數(shù)據(jù)變化進(jìn)一步主觀判斷是否進(jìn)行預(yù)警服務(wù),存在較大的滯后性。此外,因預(yù)報服務(wù)工作中業(yè)務(wù)人員需要關(guān)注的數(shù)據(jù)種類較多,工作量大且人工不能完全24 h無間隙地對數(shù)據(jù)進(jìn)行實(shí)時監(jiān)視,因此,靠人工監(jiān)測來開展大霧與大風(fēng)預(yù)警工作不但難度大且極易發(fā)生錯漏與滯后,易錯過最佳決策調(diào)度時段。雖然現(xiàn)階段應(yīng)用的一體化平臺兼有自動檢測大霧與大風(fēng)的功能,但目前僅限于國家氣象觀測站,針對本地常規(guī)站點(diǎn)實(shí)時監(jiān)測預(yù)警功能并未納入其中,而當(dāng)?shù)仄茐牧^大的風(fēng)及能見度較低的大霧又常常發(fā)生于鄉(xiāng)鎮(zhèn),因此其監(jiān)測預(yù)警服務(wù)難以滿足當(dāng)前的業(yè)務(wù)需求;另外,當(dāng)前一體化業(yè)務(wù)平臺主要停留在文字提醒,尚不足以起到及時警示的作用。
本系統(tǒng)的建設(shè)不僅包括國家氣象觀測站,還包括鄉(xiāng)鎮(zhèn)常規(guī)站數(shù)據(jù)的實(shí)時監(jiān)測與跟蹤研判,更能夠適應(yīng)當(dāng)?shù)胤?wù)需求;在預(yù)警形式上,采取聲音警報與文字彈窗分級組合共同完成,更好地適應(yīng)當(dāng)前實(shí)際需求[4]。系統(tǒng)的建設(shè)完成,將大量減小人工實(shí)時對數(shù)據(jù)的監(jiān)視工作,可以幫助業(yè)務(wù)人員提前判斷是否發(fā)布相應(yīng)的預(yù)警信號并開展相關(guān)服務(wù),從而提升預(yù)警信號發(fā)布的及時性和準(zhǔn)確率,改善服務(wù)效果。本系統(tǒng)旨在從天擎系統(tǒng)實(shí)時調(diào)取數(shù)據(jù)并加以監(jiān)測,然后對其進(jìn)行統(tǒng)計、分析和顯示,還可以通過監(jiān)測數(shù)據(jù)建立預(yù)測模型,對未來可能出現(xiàn)大風(fēng)或大霧天氣進(jìn)行演變趨勢分析,便于業(yè)務(wù)人員及時開展預(yù)警服務(wù)工作。
基于Windows環(huán)境,采用Python3.7語言,Pycharm2019專業(yè)版IDE,通過經(jīng)典的B/S架構(gòu)進(jìn)行搭建,Web端本次采用Python + flask框架設(shè)計,此架構(gòu)易用性強(qiáng),免安裝,部署在畢節(jié)地區(qū)本地的服務(wù)器上,業(yè)務(wù)人員在局域網(wǎng)中可由瀏覽器登陸使用,后臺程序在服務(wù)器中運(yùn)行,也可實(shí)時查看運(yùn)行情況,保障功能通暢。此外,開發(fā)過程中還合理應(yīng)用Python接口獲取、SQLite數(shù)據(jù)庫管理、ECharts數(shù)據(jù)可視化等技術(shù)。
系統(tǒng)數(shù)據(jù)主要來源于天擎系統(tǒng)。氣象大數(shù)據(jù)云平臺(天擎系統(tǒng))是在中國氣象局預(yù)報司的組織下,由省氣象信息中心牽頭開發(fā)的“數(shù)算一體”的氣象大數(shù)據(jù)云平臺,于2020年12月15日上線正式開始運(yùn)行,具備海量數(shù)據(jù)存儲、全業(yè)務(wù)貫通、數(shù)據(jù)應(yīng)用高效的能力,足夠開放,可直接支撐天氣、氣候、探測、公服、人影等各類氣象應(yīng)用的云化融入,初步形成“云+端”的應(yīng)用生態(tài),是目前氣象數(shù)據(jù)的集中共享平臺,相較于之前使用的CIMISS環(huán)境更加穩(wěn)定,開放,功能更加完善[5]。
系統(tǒng)的建設(shè)與應(yīng)用主要致力于標(biāo)準(zhǔn)化提取數(shù)據(jù),實(shí)時顯示關(guān)鍵指標(biāo)變化趨勢,并根據(jù)趨勢和臨界值判斷與警示,提醒業(yè)務(wù)人員是否需要發(fā)布預(yù)警。天擎數(shù)據(jù)讀取中,服務(wù)節(jié)點(diǎn)使用NMIC_MUSIC_CMADAAS,序列化格式為JSON,數(shù)據(jù)名稱為SURF_WEA_CHN_MUL_MIN(中國地面分鐘全要素資料),服務(wù)接口為:getSurfEleInRegionByTime(按時間、地區(qū)檢索地面數(shù)據(jù)要素)??傮w結(jié)構(gòu)圖見圖1。分為前臺和后臺2個部分,其中后臺部分包含了取數(shù)據(jù),數(shù)據(jù)庫管理,計算和處理數(shù)據(jù)以及報警功能4個模塊;前臺主要為顯示功能模塊。
圖1 核心功能結(jié)構(gòu)
系統(tǒng)功能模塊主要有:觀測數(shù)據(jù)實(shí)時顯示模塊、數(shù)據(jù)處理模塊、監(jiān)測預(yù)警模塊、業(yè)務(wù)人員信息管理模塊等。在觀測數(shù)據(jù)實(shí)時顯示模塊中,使用百度地圖API實(shí)時根據(jù)經(jīng)緯度顯示站點(diǎn)位置,后續(xù)可選擇加入其他要素數(shù)據(jù)顯示;觀測數(shù)據(jù)實(shí)時顯示模塊,使用ECharts實(shí)時以折線圖形式顯示在網(wǎng)頁上,利用ajax技術(shù)逐分鐘局部刷新;業(yè)務(wù)人員信息管理包括管理業(yè)務(wù)人員登錄信息和預(yù)警提醒記錄2部分;監(jiān)測預(yù)警模塊在核心功能計算后依據(jù)預(yù)警標(biāo)準(zhǔn)觸發(fā)提醒功能[6],數(shù)據(jù)處理模塊根據(jù)畢節(jié)市預(yù)警業(yè)務(wù)實(shí)際需要,對直接讀出的數(shù)據(jù)進(jìn)行本地化處理,針對性調(diào)取核心要素,滿足功能的前體下提升系統(tǒng)性能。
大風(fēng)預(yù)警規(guī)則是:平均風(fēng)速6級以上,或者陣風(fēng)7級以上。在系統(tǒng)數(shù)據(jù)中表現(xiàn)為:即平均風(fēng)速≥10.8 m·s-1,或瞬時風(fēng)速≥13.9 m·s-1,其中瞬時風(fēng)速是觀測值極大風(fēng)速。
大霧預(yù)警規(guī)則是能見度≤500 m[7], 在系統(tǒng)數(shù)據(jù)中表現(xiàn)為 1 min平均能見度≤500 m。當(dāng)實(shí)時觀測數(shù)據(jù)或者系統(tǒng)預(yù)測數(shù)據(jù)達(dá)到以上標(biāo)準(zhǔn)時即分級觸發(fā)報警程序,提醒業(yè)務(wù)人員考慮發(fā)布大風(fēng)、大霧預(yù)警信息[8]。
當(dāng)前業(yè)務(wù)應(yīng)用系統(tǒng)一體化平臺是對觀測數(shù)據(jù)全要素全域數(shù)據(jù)調(diào)取,對實(shí)際使用并不友好,一方面會出現(xiàn)信息過多,使用者上手難度大,操作過程復(fù)雜,降低處理速度,另一方面海量數(shù)據(jù),對系統(tǒng)運(yùn)行硬件要求提高,維護(hù)成本提升。因此,本系統(tǒng)數(shù)據(jù)從天擎系統(tǒng)接口調(diào)取觀測數(shù)據(jù)后,按要素、市域、區(qū)縣進(jìn)行拆分,進(jìn)行結(jié)構(gòu)化重組后存儲進(jìn)數(shù)據(jù)庫,大幅度減小數(shù)據(jù)存儲量及實(shí)時流量。后續(xù)調(diào)取時使用分級策略,協(xié)助用戶更方便快捷獲取想要的數(shù)據(jù)及決策建議,對市級,縣區(qū)級的數(shù)據(jù)處理區(qū)分單獨(dú)處理,最大限度提升使用感和系統(tǒng)運(yùn)行效率。
在使用端,系統(tǒng)根據(jù)不同用戶的需求提供不同的服務(wù)。如業(yè)務(wù)人員以預(yù)警目的查看信息時,顯示結(jié)果為簡潔易讀的折線圖方式;依據(jù)不同查詢條件查詢數(shù)據(jù)時,顯示為表格形式;需統(tǒng)計數(shù)據(jù)時提供統(tǒng)計分析圖表,顯示結(jié)果可選餅圖、柱狀圖、堆疊圖等實(shí)用類型[9]。
為及時有效地進(jìn)行工作服務(wù),除數(shù)據(jù)的實(shí)時監(jiān)測顯示外,還對數(shù)據(jù)進(jìn)行存儲與管理。數(shù)據(jù)包含了國家氣象觀測站和常規(guī)站的分鐘級數(shù)據(jù),數(shù)據(jù)量較大,為更有效地進(jìn)行數(shù)據(jù)應(yīng)用,進(jìn)行了SQLite數(shù)據(jù)庫設(shè)計?,F(xiàn)行一體化系統(tǒng)無本地服務(wù)器,使用時常出現(xiàn)卡頓,處理速度慢等狀況,為提升系統(tǒng)運(yùn)行性能,進(jìn)行數(shù)據(jù)的本地存儲與處理。
系統(tǒng)數(shù)據(jù)表格設(shè)計:業(yè)務(wù)人員信息表、大霧觀測逐分鐘實(shí)時數(shù)據(jù)表、大風(fēng)觀測逐分鐘數(shù)據(jù)表、大霧大風(fēng)逐小時觀測數(shù)據(jù)表、大霧大風(fēng)逐日最值數(shù)據(jù)表、預(yù)警提醒記錄表。其中大霧觀測逐分鐘實(shí)時數(shù)據(jù)表和大風(fēng)觀測逐分鐘數(shù)據(jù)表信息每日自動清理。
目前本地化使用的系統(tǒng)多為個人設(shè)計實(shí)施,對數(shù)據(jù)的定義、采用的開發(fā)語言、設(shè)計的數(shù)據(jù)存儲結(jié)構(gòu)、使用的架構(gòu)等多依據(jù)個人習(xí)慣采用,并未形成統(tǒng)一規(guī)范的形式,對多系統(tǒng)融合和后續(xù)擴(kuò)展開發(fā)造成較大麻煩。而且同一個實(shí)例采用不同軟件會有不同結(jié)果,對服務(wù)工作造成不便。本次系統(tǒng)的設(shè)計嚴(yán)格采用國家及省局業(yè)務(wù)規(guī)范與指標(biāo),對數(shù)據(jù)進(jìn)行規(guī)范性編譯與處理,形成統(tǒng)一規(guī)范的數(shù)據(jù)出口,規(guī)范了業(yè)務(wù)服務(wù)工作。
針對本系統(tǒng)中的大霧大風(fēng)監(jiān)測預(yù)警,一方面監(jiān)測實(shí)時數(shù)據(jù),達(dá)到標(biāo)準(zhǔn)報警,提醒發(fā)布;另一方面通過前期實(shí)時數(shù)據(jù)進(jìn)行趨勢擬合,對未來數(shù)據(jù)進(jìn)行預(yù)判,根據(jù)結(jié)果報警。在數(shù)據(jù)的趨勢擬合預(yù)判中,主要根據(jù)30組數(shù)值利用二次三項(xiàng)式擬合找出回歸方程來完成,如出現(xiàn)缺省則向前取數(shù)補(bǔ)充,并預(yù)判后續(xù)5 min內(nèi)的數(shù)值,根據(jù)預(yù)判做出擬合圖效果,如達(dá)到標(biāo)準(zhǔn)則觸發(fā)警報[10-13]。
監(jiān)測預(yù)警模塊是本系統(tǒng)的核心功能之一,需根據(jù)不同緊急情況采取不同方式警報,具體如表1所示:
表1 警報模式表
監(jiān)測預(yù)警模塊為了保證實(shí)時效果好,設(shè)定每分鐘執(zhí)行1次報警檢測程序,確保新的分鐘數(shù)據(jù)進(jìn)入數(shù)據(jù)庫之后第一時間進(jìn)行預(yù)警監(jiān)測。
系統(tǒng)數(shù)據(jù)展示模塊依據(jù)實(shí)際用戶需求做分類處理,地圖部分適應(yīng)地市和區(qū)縣兩級需求,根據(jù)用戶權(quán)限默認(rèn)首頁顯示地圖區(qū)域大小,各級用戶均可根據(jù)需要選擇顯示的區(qū)域級別。數(shù)據(jù)顯示,默認(rèn)顯示大霧,大風(fēng)逐分鐘實(shí)時數(shù)據(jù)依據(jù)時間變化折線圖,可根據(jù)需要選擇時間、空間、站點(diǎn)、要素及圖標(biāo)類型等,按需求顯示。例如:可顯示1個站點(diǎn)過去1 h逐分鐘的能見度變化情況,可顯示本行政區(qū)域所有站點(diǎn)此刻的2 min平均風(fēng)速值等等,圖2為畢節(jié)地區(qū)過去10 min內(nèi)所有國家氣象觀測站的2 min平均風(fēng)速的變化折線圖,圖3為畢節(jié)本級顯示區(qū)域內(nèi)所有國家氣象觀測站點(diǎn)的效果圖,已做到最大程度的定制化顯示。
圖2 大風(fēng)預(yù)警數(shù)據(jù)展示界面
圖3 畢節(jié)地區(qū)國家站分布效果圖
測試的具體案例數(shù)據(jù)參照大霧和大風(fēng)測試數(shù)據(jù)表(表2),測試過程中采用手工傳入數(shù)據(jù)庫,系統(tǒng)自動生成圖片,并自動根據(jù)規(guī)則觸發(fā)報警行為。表中大霧、大風(fēng)測試數(shù)據(jù)各5組,其中3組是歷史實(shí)際數(shù)據(jù),2組是人工測試數(shù)據(jù)。
表2 大方站大霧測試數(shù)據(jù)表
大霧數(shù)據(jù)測試:實(shí)例1傳入系統(tǒng)后,引發(fā)第3級警報,成功響起語音報警,點(diǎn)擊關(guān)閉彈窗,后續(xù)無其他報警觸發(fā);實(shí)例2傳入系統(tǒng)中,成功觸發(fā)語音報警,不做處理,2 min后觸發(fā)彈窗+語音報警;實(shí)例3傳入系統(tǒng)前,輸入前置程序,引發(fā)預(yù)測5 min后出現(xiàn)大霧趨勢,1.2 s后成功觸發(fā)彈窗報警,點(diǎn)擊關(guān)閉彈窗,后續(xù)無其他報警觸發(fā);實(shí)例4傳入系統(tǒng)中,輸入前置程序,引發(fā)預(yù)測5 min后出現(xiàn)大霧趨勢,1.4 s后成功觸發(fā)彈窗報警,不做處理,3 min后觸發(fā)警報聲音+語音;實(shí)例5作為儲備實(shí)例,分別按前4中情形重新傳入,得到結(jié)果均符合預(yù)設(shè)。
大風(fēng)數(shù)據(jù)測試:實(shí)例1傳入系統(tǒng)后,引發(fā)第3級警報,成功響起語音報警,點(diǎn)擊關(guān)閉彈窗,后續(xù)無其他報警觸發(fā);實(shí)例2傳入系統(tǒng)中,成功觸發(fā)語音報警,不做處理,2 min后觸發(fā)彈窗+語音報警;實(shí)例3傳入系統(tǒng)前,輸入前置程序,引發(fā)預(yù)測5 min后出現(xiàn)大風(fēng)趨勢,1.2 s后成功觸發(fā)彈窗報警,點(diǎn)擊關(guān)閉彈窗,后續(xù)無其他報警觸發(fā);實(shí)例4傳入系統(tǒng)中,輸入前置程序,引發(fā)預(yù)測5 min后出現(xiàn)大風(fēng)趨勢,1.4 s后成功觸發(fā)彈窗報警,不做處理,3 min后觸發(fā)警報聲音+語音;實(shí)例5作為儲備實(shí)例,分別按前4種情形重新傳入,得到結(jié)果均符合預(yù)設(shè)。
表3 畢節(jié)市大風(fēng)測試數(shù)據(jù)表(單位:m·s-1)
在七星關(guān)區(qū)氣象局部署程序測試,經(jīng)過2021年6月的試運(yùn)行,畢節(jié)市七星關(guān)區(qū)發(fā)生大風(fēng)成功預(yù)測2次大風(fēng)預(yù)警,6月未發(fā)生大霧情況。其中,6月3日的大風(fēng)預(yù)警為2 min平均風(fēng)速在10時10分率先達(dá)到預(yù)警值,系統(tǒng)10時10分準(zhǔn)時正確發(fā)出語音報警,經(jīng)預(yù)報員研判10時14分發(fā)出大風(fēng)預(yù)警信號;6月16日20時51分出現(xiàn)2 min平均風(fēng)速達(dá)到預(yù)警值,20時51分彈出語音報警后3 min內(nèi)未處理,20時54分系統(tǒng)正確觸發(fā)了語音報警和警報聲音報警,預(yù)報員經(jīng)綜合考慮21時發(fā)出預(yù)警信息。
在充分吸取以往服務(wù)平臺優(yōu)勢基礎(chǔ)上,結(jié)合現(xiàn)行業(yè)務(wù)運(yùn)行流程規(guī)范,從當(dāng)前業(yè)務(wù)需要出發(fā),對畢節(jié)市大風(fēng)、大霧實(shí)時監(jiān)測預(yù)警業(yè)務(wù)系統(tǒng)中數(shù)據(jù)環(huán)境、系統(tǒng)架構(gòu)設(shè)計、核心功能模型及關(guān)鍵技術(shù)進(jìn)行了詳細(xì)論述。目前該系統(tǒng)已投放業(yè)務(wù)試運(yùn)行,各方面表現(xiàn)出較好的業(yè)務(wù)應(yīng)用價值。
①當(dāng)前業(yè)務(wù)系統(tǒng)開發(fā)主要立足于省級氣象局,本地化針對性不夠,不能完全滿足本地市縣級預(yù)報使用需求,本系統(tǒng)的設(shè)計與實(shí)施基于本地預(yù)報員使用習(xí)慣,更能滿足業(yè)務(wù)需求。
②針對本地實(shí)際需求集合關(guān)鍵要素數(shù)據(jù)分級存儲并處理,提升系統(tǒng)運(yùn)行效率,方便業(yè)務(wù)人員及時查詢與處理,提升工作準(zhǔn)確性和效率。
③大霧大風(fēng)監(jiān)測預(yù)警系統(tǒng)建設(shè),結(jié)合預(yù)報員對大霧大風(fēng)預(yù)警的經(jīng)驗(yàn),極大提升了對大霧大風(fēng)天氣預(yù)警的時效性。
綜上所述,畢節(jié)大霧大風(fēng)監(jiān)測預(yù)警系統(tǒng)開發(fā)對預(yù)警信息化工作的本地化做出探索,更有效地提升服務(wù)和效率,為未來信息化建設(shè)添磚加瓦。