摘? 要: 針對光纖網(wǎng)絡(luò)在線監(jiān)測系統(tǒng)在使用過程中存在諸如創(chuàng)建光路等操作繁瑣、告警數(shù)據(jù)展現(xiàn)不實(shí)時(shí)、監(jiān)測設(shè)備可擴(kuò)展性差以及測試數(shù)據(jù)分析不夠準(zhǔn)確的問題,采用WebGIS、HTML5和WebSocket等技術(shù)對其進(jìn)行優(yōu)化改造。系統(tǒng)中增加了通信機(jī),并采用一種基于小波變換動(dòng)態(tài)降噪的方法進(jìn)行OTDR曲線數(shù)據(jù)分析,實(shí)現(xiàn)了操作可視化、告警數(shù)據(jù)實(shí)時(shí)展現(xiàn)、兼容不同協(xié)議的監(jiān)測設(shè)備,大幅提升OTDR曲線數(shù)據(jù)分析的快速性和準(zhǔn)確性。
關(guān)鍵詞: 網(wǎng)絡(luò)地理信息系統(tǒng); 小波變換; 通信機(jī); 可視化操作
中圖分類號:TP399? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ?文章編號:1006-8228(2021)12-31-05
Abstract: Aiming at the problems of cumbersome operation such as creating optical path, non real-time display of alarm data, poor scalability of monitoring equipment and inaccurate analysis of test data in the use of optical fiber network online monitoring system, the WebGIS, HTML5 and WebSocket technologies are used to optimize and update it. A communication machine is added to the system, and a method of dynamic noise reduction based on wavelet transform is used for OTDR curve data analysis, which realizes visualized operation, real-time display of alarm data and compatible with monitoring equipment of different protocols, and greatly improves the rapidity and accuracy of OTDR curve data analysis.
Key words: WebGIS; wavelet transform; communication machine; visualized operation
0 引言
目前的智能光纖網(wǎng)絡(luò)在線監(jiān)測管理系統(tǒng)WebGIS[1-2]是基于富客戶端技術(shù)flex開發(fā)。flex的特點(diǎn)及優(yōu)勢是作為瀏覽器插件,有跨平臺(tái),較炫的視覺效果而出名,缺陷是開發(fā)的swc包在瀏覽器端部署比較龐大,且沒有flashbuilder就無法有效調(diào)試。
隨著瀏覽器平臺(tái)的去插件化潮流,html5[3-4]技術(shù)興起并成熟,諸多本屬于flex的優(yōu)勢如動(dòng)畫等特效已經(jīng)可以基于純?yōu)g覽器端開發(fā),移動(dòng)端平臺(tái)日益重要且不再支持flex,原系統(tǒng)由flex升級到html5正是時(shí)候。原系統(tǒng)功能全部在Web服務(wù)端實(shí)現(xiàn),業(yè)務(wù)邏輯采用緊耦合方式,明顯的缺點(diǎn)是系統(tǒng)的擴(kuò)展性差,采用WebSocket[5]和分布式技術(shù),將Web服務(wù)端拆成若干邏輯內(nèi)聚性強(qiáng)的獨(dú)立服務(wù)。OTDR測試曲線數(shù)據(jù)分析是系統(tǒng)的核心算法,原來的算法因曲線數(shù)據(jù)中夾雜的環(huán)境噪聲數(shù)據(jù)而影響分析的準(zhǔn)確性問題比較大,因此采用一種基于小波變換動(dòng)態(tài)降噪的OTDR曲線數(shù)據(jù)分析方法[6],也是系統(tǒng)優(yōu)化的重點(diǎn)。
1 系統(tǒng)優(yōu)化技術(shù)研究
1.1 WebGIS改造
1.1.1 數(shù)據(jù)庫升級
地理數(shù)據(jù)庫原系統(tǒng)采用Oracle 10g(及其空間擴(kuò)展Oracle spatial),底圖為shp文件,存在的問題有:數(shù)據(jù)存放較凌亂,數(shù)據(jù)庫與文件shp共存,不在一個(gè)數(shù)據(jù)庫,之間不能做sql操作;Oracle 10對主流坐標(biāo)系的支持較弱,缺乏較好的空間數(shù)據(jù)庫管理工具,不是ogc標(biāo)準(zhǔn)的協(xié)議,高級的分析功能缺失,如做不到路徑分析。
采用postgresql+postgis取代oracle spatial部分,優(yōu)勢如下:pgadmin提供免費(fèi)的客戶端,直接鼠標(biāo)操作,即可實(shí)現(xiàn)shp數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫,數(shù)據(jù)庫圖層導(dǎo)出shp的操作;postgis的gis分析功能強(qiáng)大,是當(dāng)前主流技術(shù),成熟的開源gis數(shù)據(jù)庫;postgresql強(qiáng)大的支持,使用wrapper功能,使其能進(jìn)行跨庫的增刪改查,使得業(yè)務(wù)數(shù)據(jù)庫與gis數(shù)據(jù)庫物理分離與項(xiàng)目結(jié)合使用成為可能。
1.1.2 地圖客戶端升級
地圖客戶端將采用OpenLayers 3.5版本開發(fā),ol3是基于html5開發(fā)的web客戶端的開源庫,體現(xiàn)了當(dāng)前html5技術(shù)發(fā)展的最新成果,地圖顯示效果與操作都已超越了當(dāng)下任何一個(gè)地圖前端開源庫。ol3能非常好的綁定ui控件進(jìn)行操作,類似flex的[bindable]操作,體驗(yàn)很好。
1.2 軟件架構(gòu)改造
新系統(tǒng)軟件架構(gòu)優(yōu)化改造,將原系統(tǒng)服務(wù)按照邏輯功能拆分為三部分:Web服務(wù)、通信機(jī)和OTDR曲線數(shù)據(jù)分析服務(wù)。如圖1所示。
Web服務(wù)的主要功能:系統(tǒng)管理、資源管理、光路配置、監(jiān)測管理和劣化分析。
通信機(jī)與Web服務(wù)通信采用WebSocket方式,數(shù)據(jù)采用Json格式,通信機(jī)與監(jiān)測設(shè)備采用tcp方式,采用監(jiān)測設(shè)備廠商提供的通信協(xié)議。
OTDR數(shù)據(jù)分析是個(gè)比較耗時(shí)的過程,將其獨(dú)立出來可以部署成集群服務(wù)(如微服務(wù)架構(gòu)),極大提高系統(tǒng)的服務(wù)能力。
系統(tǒng)軟件架構(gòu)經(jīng)優(yōu)化改造后,明顯優(yōu)點(diǎn)是:業(yè)務(wù)邏輯實(shí)現(xiàn)解耦,便于實(shí)現(xiàn)系統(tǒng)擴(kuò)容,提高系統(tǒng)的服務(wù)能力、穩(wěn)定性。
1.3 資源配置管理改造
原系統(tǒng)中資源配置管理基本靠用戶輸入文字完成,用戶操作相當(dāng)繁瑣,而且容易產(chǎn)生錯(cuò)誤,體驗(yàn)極不友好。隨著Web圖形化技術(shù)的發(fā)展,特別是HTML5技術(shù)日臻成熟,對資源的圖形化配置管理和數(shù)據(jù)的可視化改造勢在必行。
與基于富頁面技術(shù)的Adobe Flash, Microsoft Silverlight, Java Applet等相比,使用HTML5中的Canvas、SVG和CSS3實(shí)現(xiàn)的數(shù)據(jù)可視化方法,具有更好的瀏覽器兼容性、不需要安裝插件、符合W3C國際標(biāo)準(zhǔn)。優(yōu)化方案使用Qunee for HTML5進(jìn)行資源的可視化改造。
1.4 OTDR曲線分析優(yōu)化
原系統(tǒng)OTDR曲線分析使用的是基于兩點(diǎn)法和最小二乘法,算法簡單易實(shí)現(xiàn),但對數(shù)據(jù)噪聲敏感,誤差較大。目前,OTDR數(shù)據(jù)分析常用的方法有:時(shí)域分析法、基于神經(jīng)網(wǎng)絡(luò)算法、小波變換算法等。小波變換首先對曲線數(shù)據(jù)進(jìn)行降噪,然后將信號分解為一系列小波函數(shù)疊加,具有良好的時(shí)域和頻域局部化的特征信號,分析準(zhǔn)確性高,但是計(jì)算量大,分析速度慢。
采用“一種基于小波變換動(dòng)態(tài)降噪的OTDR曲線數(shù)據(jù)分析方法”專利技術(shù),結(jié)合小波變換和最小二乘法能有效分析OTDR曲線數(shù)據(jù),極大提升了OTDR曲線數(shù)據(jù)分析的準(zhǔn)確性和速度。
2 系統(tǒng)關(guān)鍵部分優(yōu)化設(shè)計(jì)
2.1 WebGIS設(shè)計(jì)
2.1.1 數(shù)據(jù)庫postgis設(shè)計(jì)
采用PostgreSQL插件oracle_fdw實(shí)現(xiàn)postgis與Oracle的同步數(shù)據(jù),這里需對光纜、局站、地標(biāo)和光交接點(diǎn)基于WebGIS進(jìn)行可視化管理,對照Oracle中的四張業(yè)務(wù)信息表,在postgis中分別創(chuàng)建四張對應(yīng)的地理信息表(使用唯一關(guān)鍵字關(guān)聯(lián))和四張對應(yīng)的外表,并在外表上創(chuàng)建視圖,視圖上包含地理信息和業(yè)務(wù)信息。
創(chuàng)建局站、光纜、地標(biāo)和光交接點(diǎn)表的增/刪/改函數(shù)、告警定位函數(shù),新增函數(shù)傳入?yún)?shù):關(guān)聯(lián)業(yè)務(wù)表的唯一關(guān)鍵字(idcode)、表名和地理信息字符串,輸出基于地理信息字符串和地理坐標(biāo)系(3857)的幾何值;刪除函數(shù)傳入?yún)?shù):idcode和表名,輸出idcode;告警定位函數(shù)計(jì)算起始點(diǎn)和參考點(diǎn)的地理距離。
2.1.2 GeoServer配置
配置數(shù)據(jù)源postgis安裝的IP、端口、賬號口令,配置相關(guān)的圖層,分別為PG庫中創(chuàng)建的視圖和函數(shù)配置對應(yīng)的圖層,圖層名字與PG庫中的視圖和函數(shù)名字相同,為光纜、局站、地標(biāo)和光交接點(diǎn)創(chuàng)建樣式。
2.1.3 客戶端設(shè)計(jì)
Web客戶端使用openlayes調(diào)用geoserver的WFS服務(wù),重要JS代碼如下:
function getFeature(options) {
$.ajax(geoserverhost+'geoserver/wfs', {
type: 'GET', async:true,
data:{ service:'WFS',version:'1.1.0',request:'GetFeature',
typename:options.typename,srsname:options.srid,
viewparams:options.viewparams, bbox:
(options.extent===undefined)?undefined:options
.extent.join(',')+ ','+options.srid,
filter:options.filter },
dataType:'jsonp',jsonpCallback:'callback:'+options.callback,
jsonp:'format_options' }); }
通過函數(shù)getFeature完成數(shù)據(jù)的加載和資源數(shù)據(jù)的增刪改,參數(shù)typename使用geoserver配置的圖層名稱,調(diào)用完成后執(zhí)行的回調(diào)函數(shù)在參數(shù)jsonpCallback中給出?;卣{(diào)函數(shù)完成的任務(wù)有:在PG中完成資源的增刪改后,同步進(jìn)行業(yè)務(wù)數(shù)據(jù)庫資源的增刪改;資源數(shù)據(jù)改動(dòng)后重新加載地圖數(shù)據(jù),刷新地圖。
2.1.4 地圖圖形操作設(shè)計(jì)
⑴ 展示多個(gè)圖層,設(shè)定圖層的樣式。
⑵ 縮小放大,展示不同的圖層。
⑶ 添加不同類型的節(jié)點(diǎn)(如:局站、光交接點(diǎn)、地標(biāo)等),節(jié)點(diǎn)圖標(biāo)可選,圖標(biāo)提供點(diǎn)擊事件,如:點(diǎn)擊圖標(biāo)顯示具體信息。
⑷ 節(jié)點(diǎn)之間連接線,根據(jù)連線類型,能設(shè)置粗細(xì)、顏色,連接線可以標(biāo)注名稱,連接線可以拖動(dòng)后形成折線,拖動(dòng)到節(jié)點(diǎn)附近具有自動(dòng)??抗δ堋?/p>
⑸ 拖動(dòng)光纜的連線,自動(dòng)計(jì)算并更新光纜的地理長度;光纜重疊部分的連線自動(dòng)加粗重疊部分線條,點(diǎn)擊重疊部分光纜線條,通過彈出菜單列表選擇欲操作的光纜。
⑹ 監(jiān)控,如拖動(dòng)點(diǎn)線的監(jiān)控,根據(jù)鼠標(biāo)滑竿的位置,在地圖上綁定顯示當(dāng)前位置。
⑺ 基于地圖的告警展示,根據(jù)監(jiān)測的光纜、故障點(diǎn)距離光纜頭的地理長度,定位故障點(diǎn)的地理位置,并以閃爍紅色圖標(biāo)顯示,鼠標(biāo)移動(dòng)到故障圖標(biāo)上顯示告警詳情。
2.2 監(jiān)測光路圖形化配置設(shè)計(jì)
光路是由若干段光纜中的纖芯連接起來的,光路的配置需要用到的資源有:局站、監(jiān)測設(shè)備、光纜、纖芯、尾纖、跳纖、配線盤。優(yōu)化設(shè)計(jì)采用基于HTML5的圖形化組件:Qunee for HTML5。
2.2.1 光纜配線
光纜配線是指將光纜兩端(A端和Z端)的尾纖連接到配線盤的空端子上,圖形化操作如圖2所示,將局站A和B之間的光纜A<-->B上的纖芯號5、6進(jìn)行配線。
由圖2可見,配線盤各個(gè)端子的狀態(tài)一目了然,并且通過彈出提示框查看端子的具體信息。配線過程如圖虛線所示,連接光纜段的可用纖芯到配線盤的空端子即可。
2.2.2 光路建立
光路建立是采用跳纖將光纜中配線好的纖芯連接起來,光路建立過程設(shè)計(jì)為新建光路和續(xù)建光路。如圖3所示,通過在圖中繪制虛線(跳纖),將光纜A<-->B的纖芯1與光纜B<-->C的纖芯2連接后,并顯示光路圖。
2.2.3 光路設(shè)備連接
將建好的光路連接監(jiān)測設(shè)備的OTDR、OPM、OSW、OLP模塊端口,實(shí)現(xiàn)對光路的光功率測試、OTDR測試、OLP保護(hù)。其圖形化操作過程如圖4所示,通過繪制虛線(跳纖)對光纜A<-->B的纖芯1起始的光路進(jìn)行測試。
2.3 通信機(jī)設(shè)計(jì)
通信機(jī)對下采用TCP與各種監(jiān)測設(shè)備通信,對上采用WebSocket與監(jiān)測系統(tǒng)通信,將各種檢測設(shè)備通信協(xié)議統(tǒng)一轉(zhuǎn)換為上層業(yè)務(wù)協(xié)議,軟件結(jié)構(gòu)設(shè)計(jì)如圖5所示。
2.3.1 任務(wù)調(diào)度
任務(wù)調(diào)度對任務(wù)分優(yōu)先級調(diào)度,實(shí)時(shí)任務(wù)優(yōu)先級高,周期任務(wù)優(yōu)先級低。實(shí)時(shí)任務(wù)有:點(diǎn)名測試、下發(fā)設(shè)備配置參數(shù)等;周期任務(wù)有:定期采集光功率,定期查詢硬件配置等。
2.3.2 設(shè)備通信
包括設(shè)備通信連接、協(xié)議轉(zhuǎn)換、數(shù)據(jù)發(fā)送和接收。通信連接完成設(shè)備合法性驗(yàn)證、連接異常處理(如:超時(shí)等);協(xié)議轉(zhuǎn)換將上層系統(tǒng)業(yè)務(wù)協(xié)議(Json格式)與底層的各種測試設(shè)備廠家協(xié)議相互轉(zhuǎn)換;數(shù)據(jù)發(fā)送和接收采用流水號、數(shù)據(jù)優(yōu)先級、超時(shí)重發(fā)等機(jī)制,保證數(shù)據(jù)順序、可靠的傳送。
2.3.3 業(yè)務(wù)系統(tǒng)通信
與業(yè)務(wù)管理系統(tǒng)的通信采用WebSocket技術(shù),接收來自管理系統(tǒng)Web頁面的業(yè)務(wù)指令(Json格式),并將指令執(zhí)行結(jié)果返回管理系統(tǒng),將各種告警數(shù)據(jù)實(shí)時(shí)推送到管理系統(tǒng)Web頁面展現(xiàn)。
3 結(jié)束語
數(shù)據(jù)的可視化以及圖形化操作代表了當(dāng)前技術(shù)主流,本文詳細(xì)闡述了采用開源的PostGIS+GeoServer+OL3進(jìn)行WebGIS改造和基于HTML5技術(shù)的光路配置圖形化操作過程的設(shè)計(jì),將用戶從繁重的文字輸入和閱讀工作中解脫出來,通過鼠標(biāo)點(diǎn)擊、拖動(dòng)以及繪制圖形的方式直觀地完成復(fù)雜的配置工作。通信機(jī)是系統(tǒng)架構(gòu)優(yōu)化改造的重點(diǎn)部分,這將為系統(tǒng)以后的升級擴(kuò)容帶來便利。
參考文獻(xiàn)(References):
[1] 郭明強(qiáng),黃穎等.WebGIS之OpenLayers全面解析[M].電子工業(yè)出版社,2019.
[2] 張貴軍,陳銘.WebGIS工程項(xiàng)目開發(fā)實(shí)踐[M].清華大學(xué)出版社,2016.
[3] David Geary.HTML5 Canvas核心技術(shù)[M].機(jī)械工業(yè)出版社,2013.
[4] 陶國榮.HTML5實(shí)戰(zhàn)[M].機(jī)械工業(yè)出版社,2011.
[5] 張藝.基于WebSocket的及時(shí)通信系統(tǒng)研究與實(shí)現(xiàn)[J].軟件,2015.3.
[6] 朱云杰.一種基于小波變換動(dòng)態(tài)降噪的OTDR曲線數(shù)據(jù)分析方法[P].中國,專利號:ZL 2018 1 1539067.7