張紹強(qiáng),劉子亭,程 宇
(1.中國灌溉排水發(fā)展中心,北京 100054;2.北京潤華信通科技有限公司,北京 100054;3.哈爾濱鴻德亦泰數(shù)碼科技有限責(zé)任公司,哈爾濱 150001)
根據(jù)2011年全國水利普查結(jié)果,設(shè)計(jì)灌溉面積2 萬hm2以上的灌區(qū)456處,灌溉面積1 866.7 萬hm2;設(shè)計(jì)灌溉面積666.7~20 000 hm2的灌區(qū)7 316處,灌溉面積1 486.7 萬hm2。全國總用水量6 107.2 億m3,其中農(nóng)業(yè)用水3 743.5 億m3,占總用水量的61.39%。因此,提高灌區(qū)的輸配水管理水平,是建設(shè)現(xiàn)代化灌區(qū)和節(jié)水型社會(huì)的重要內(nèi)容。
灌區(qū)業(yè)務(wù)劃分為4大主體業(yè)務(wù):用水管理、工程管理、組織管理、經(jīng)營管理。2大衍生服務(wù):水文化、水生態(tài)。最核心的業(yè)務(wù)是兩個(gè)方面:“用水管理”、“工程管理”。
灌溉的業(yè)務(wù)目標(biāo)可以概化為“以最少的水量損失,把適量的水,以最短的時(shí)間,用最少的人力,安全的輸送到最需要的地點(diǎn)?!币獙?shí)現(xiàn)這個(gè)業(yè)務(wù)目標(biāo),僅靠原始的人工管理方法很難實(shí)現(xiàn),因此,需要借助灌區(qū)信息化的先進(jìn)工具提高灌區(qū)的用水管理和工程管理水平,才能保證灌區(qū)主要業(yè)務(wù)目標(biāo)的達(dá)到。
大型灌區(qū)信息化建設(shè)總體分為三個(gè)階段:第一階段為2000年以前灌區(qū)自發(fā)開展的灌區(qū)信息化建設(shè);第二階段為2001-2010年期間,水利部先后啟動(dòng)了兩期灌區(qū)信息化建設(shè)試點(diǎn),并給予資金政策扶持,在全國50處灌區(qū)開展了信息化試點(diǎn)建設(shè);第三階段為2011年后,各灌區(qū)則根據(jù)灌區(qū)管理需求及資金可能安排信息化建設(shè)資金。通過對前期灌區(qū)信息化建設(shè)的總結(jié)和研究,灌區(qū)在用水管理和工程管理中地理信息技術(shù)的應(yīng)用還有廣闊的提升空間。
下面結(jié)合中國灌溉排水發(fā)展中心課題項(xiàng)目“現(xiàn)代灌區(qū)信息管理技術(shù)(e-ids)開發(fā)完善與示范推廣”在試點(diǎn)推廣灌區(qū)的應(yīng)用,分別論述地理信息技術(shù)在灌區(qū)用水管理和工程管理的應(yīng)用。
地理信息技術(shù)主要采用ESRI公司的ArcGIS 10.5系列產(chǎn)品中的ArcGIS Enterprise,ArcGIS Enterprise是一個(gè)功能全面的制圖和分析平臺。該平臺包括功能強(qiáng)大的 GIS web服務(wù)器,加上專用的 Web GIS 基礎(chǔ)架構(gòu),可用于組織和共享作業(yè)以便可隨時(shí)隨地將地圖、地理信息和分析用于任何設(shè)備。ArcGIS Enterprise 具有靈活的部署方式,可以本地部署,亦可以云平臺部署,也支持兩種方式相結(jié)合。包含三個(gè)主要的組件,即 Portal for ArcGIS、ArcGIS Server 和 ArcGIS Data Store,三者共同組成了 Web GIS,提供基礎(chǔ)制圖和分析功能以及安全共享、應(yīng)用程序基礎(chǔ)架構(gòu)和信息管理功能?;诖藦?qiáng)大的WEB GIS服務(wù)器運(yùn)行架構(gòu),采用4.X系列的ArcGIS API for JavaScript進(jìn)行應(yīng)用程序開發(fā)。ArcGIS API for JavaScript 4.X是ESRI公司的新一代JavaScript API,集成了2D和3D的功能,易于使用,功能強(qiáng)大的API。4.X版本可以實(shí)現(xiàn)建立功能完善的Web 3D應(yīng)用場景,展示豐富的地理信息,如地形、影像、要素和3D對象等。
目前采用最新版本的ArcGIS API for JavaScript 4.5,為了實(shí)現(xiàn)2D和3D的地圖加載,提出了新的地圖服務(wù)加載方式,即View對象,該對象分為MapView(2D視圖)和SceneView(3D視圖)。View對象相當(dāng)于一個(gè)容器,在容器中初始化Map對象,在Map對象中添加許多圖層進(jìn)行展示和處理。
Map對象作為ArcGIS API中的一個(gè)功能類,通過Map對象類中包含的相關(guān)方法和屬性,實(shí)現(xiàn)對二維地圖服務(wù)的加載和處理,支持加載基礎(chǔ)地圖,實(shí)現(xiàn)對地圖圖層的新增、維護(hù),以及圖層集合的獲取。Map對象包含的具體方法和屬性請參見表1。
表1 Map對象說明
為了便于用戶操作地圖要素?cái)?shù)據(jù),API中提供三種查詢方法,IdentifyTask、FindTask、QueryTask,其中IdentifyTask適用于基于地圖范圍進(jìn)行的要素查詢,例如查詢某位置的地圖要素或與某圖形范圍內(nèi)的所有要素等需求。FindTask適用于基于要素屬性的查詢,可以設(shè)置查詢條件,查詢所有圖層中滿足條件的地圖要素。QueryTask適用于只查詢某圖層的要素信息。
3個(gè)地圖要素查詢對象中,IdentifyTask的使用最為簡便,處理基本依托于Arcgis Server來實(shí)現(xiàn),其中包含的屬性、方法和返回結(jié)果的功能說明請參見表2。
表2 IdentifyTask對象說明
一切基于地圖的處理均是對圖層的處理,可以實(shí)現(xiàn)對圖層要素的符號渲染顯示,用到API中提供的分類渲染ClassBreaksRenderer、唯一值渲染UniqueValueRenderer、點(diǎn)云渲染PointCloudRenderer等多種渲染方式,提供多種類型的圖標(biāo)可供選擇,支持普通的點(diǎn)、線、面的圖標(biāo)樣式,亦支持3D效果的點(diǎn)、線、面的圖標(biāo)樣式,還提供一些圖片、文本等多種圖標(biāo)樣式,為實(shí)現(xiàn)豐富的應(yīng)用提供實(shí)現(xiàn)方式。
ClassBreaksRenderer渲染方式應(yīng)用范圍廣,展示效果好,加載速度快。并且提供多種實(shí)現(xiàn)方法,方便開發(fā)人員進(jìn)行擴(kuò)展應(yīng)用,具體屬性名稱和功能說明請參見表3。
表3 ClassBreaksRenderer對象說明
ArcGIS API for JavaScript 4.5為了用戶更加簡單實(shí)現(xiàn)常用的空間分析功能,提供了一些即拿即用的空間分析服務(wù),其中有打印服務(wù)、GP服務(wù)調(diào)用服務(wù)、路徑分析服務(wù)、定位服務(wù)等,提供了簡單的調(diào)用方法,實(shí)現(xiàn)相關(guān)應(yīng)用的開發(fā)更加快速容易,無須應(yīng)用開發(fā)者去制作復(fù)雜的GP流程。但若是需要實(shí)現(xiàn)與業(yè)務(wù)需求相關(guān)的空間分析,則依然需要開發(fā)者根據(jù)業(yè)務(wù)所需算法制作GP工具,并利用ArcGIS Server部署為GP Service供應(yīng)用程序調(diào)用。
GP Service又被叫做GP工具,是在Web應(yīng)用中實(shí)現(xiàn)空間數(shù)據(jù)分析的基礎(chǔ)。利用GP工具既可以實(shí)現(xiàn)復(fù)雜的空間分析,也支持用戶根據(jù)特定的業(yè)務(wù)需求進(jìn)行定制開發(fā),是實(shí)現(xiàn)復(fù)雜GIS 應(yīng)用的重要方法類,其中包含的具體屬性和方法請參見表4。
表4 GP Service對象說明
用水管理業(yè)務(wù)模塊實(shí)現(xiàn)農(nóng)業(yè)灌溉和用水控制的流程化管理和分析,并結(jié)合當(dāng)前互聯(lián)網(wǎng)最新設(shè)計(jì)思想和展示形式,實(shí)現(xiàn)水雨情實(shí)時(shí)監(jiān)測、配水情況及水費(fèi)收繳情況分析、預(yù)警預(yù)測等多種應(yīng)用方式。實(shí)時(shí)監(jiān)控水源蓄水信息、輸水渠道配水信息、用水單位的水量應(yīng)用情況以及水費(fèi)收繳情況等。根據(jù)實(shí)時(shí)監(jiān)控的最新數(shù)據(jù)以及收集的歷史數(shù)據(jù),對達(dá)到警戒狀態(tài)的供水情況進(jìn)行預(yù)警,預(yù)警形式包括顏色預(yù)警、位置預(yù)警、語音預(yù)警等多種警戒方式,例:當(dāng)配水口水位超過警戒線時(shí),進(jìn)行語音播報(bào),同時(shí)在地圖上高亮顯示該測點(diǎn)位置,以提醒工作人員及時(shí)處理。
為了幫助灌區(qū)在用水管理過程中,嚴(yán)格執(zhí)行“三條紅線”管理政策,實(shí)現(xiàn)節(jié)水灌溉的目的,通過該模塊實(shí)時(shí)監(jiān)控各用水單位的年總供水量,當(dāng)發(fā)現(xiàn)有用水單位用水量超過控制指標(biāo)或即將超標(biāo)時(shí),在地圖上高亮顯示該單位位置并語音播報(bào)警戒信息,以提醒工作人員。在控制用水單位的用水量的同時(shí),也支持計(jì)算用水單位的應(yīng)收水費(fèi)與實(shí)收水費(fèi),若發(fā)現(xiàn)用水單位未交水費(fèi)或欠費(fèi)時(shí),可在分析圖表中顯示,管理人員可依據(jù)管理辦法采取相應(yīng)措施。
實(shí)現(xiàn)實(shí)時(shí)掌握用水灌溉信息,水流從供水水源開始,逐步流動(dòng)至各輸水渠系中,根據(jù)各引配水口的水位和流量數(shù)據(jù),在地圖上渲染顯示各級渠道的過水情況,通過此種方式可以清晰看到哪些渠道正在輸配水,哪些渠道已停止供水。對于管理供水渠道過長的灌區(qū),通過該功能,可在供水初期,顯示水流已到達(dá)位置、分析預(yù)計(jì)到達(dá)時(shí)間,使各管理站(所)的調(diào)度人員更加精準(zhǔn)的配水,為灌區(qū)的調(diào)配水工作提供更加豐富的分析方式,為調(diào)度工作提供指導(dǎo)。效果顯示如圖1。
圖1 供水渠道分析效果圖
顯示已超標(biāo)或即將超過的用水單位個(gè)數(shù),并在地圖上渲染顯示用水單位位置,若是即將超標(biāo),則將該用水單位渲染成黃色,并顯示該用水單位剩余可用水量。若是已經(jīng)超標(biāo),則將該用水單位渲染紅色,并顯示該用水單位已超標(biāo)水量值。同時(shí)語音播報(bào)警戒信息,例:XXX鄉(xiāng)鎮(zhèn)用水總量已超標(biāo)XX萬方,總量指標(biāo)為XXX萬方。效果顯示如圖2。
圖2 水資源總量指標(biāo)控制效果圖
利用柱狀圖、曲線圖等多種圖表形式,對比顯示各用水單位的地表水實(shí)供水量、地下水實(shí)供水量以及總量控制指標(biāo),若用水單位實(shí)供水量超標(biāo)時(shí),用特殊顏色標(biāo)識,使各用水單位的實(shí)際用水情況清晰明了。
同時(shí)在地圖根據(jù)各用水單位的供水總量的大小,用漸變色渲染顯示用水單位管理范圍,通過顏色的深淺可以判斷用水單位的用水量多少。效果顯示如圖3、圖4。
通過圖表形式,顯示各用水單位的定額內(nèi)應(yīng)收水費(fèi)、超定額應(yīng)收水費(fèi)、應(yīng)收兩費(fèi)以及實(shí)收水費(fèi)、實(shí)收兩費(fèi)等收費(fèi)信息。效果顯示如圖4。
工程管理業(yè)務(wù)模塊實(shí)現(xiàn)對灌區(qū)水利工程的信息化管理,包括工程臺賬歸檔、日常巡檢管理等灌區(qū)日常工作中水利工程相關(guān)的管理工作。利用地圖實(shí)現(xiàn)任意查看各類水利工程的臺賬信息、照片、實(shí)時(shí)視頻等多媒體材料??梢噪S時(shí)查看當(dāng)前正在巡檢工作人員的巡查位置、現(xiàn)場視頻以及進(jìn)行語音對講,同時(shí)支持語音智能識別,實(shí)現(xiàn)與現(xiàn)場工作人員進(jìn)行實(shí)時(shí)溝通,及時(shí)處理各種突發(fā)狀況。支持查詢歷史巡檢記錄,查看巡檢視頻、巡檢錄音和照片等各類巡檢過程數(shù)據(jù),若巡檢過程有發(fā)現(xiàn)問題還可以自動(dòng)定位至發(fā)現(xiàn)異常的位置,為灌區(qū)執(zhí)法巡查和工程維修養(yǎng)護(hù)提供有力的數(shù)據(jù)支撐。
圖3 供水總量效果圖
圖4 實(shí)供水量分析效果圖
在地圖點(diǎn)擊任意一個(gè)水利工程建筑物,查看該建筑物基礎(chǔ)臺賬信息、多媒體資料以及相關(guān)的管理數(shù)據(jù)。例:當(dāng)點(diǎn)擊水庫時(shí),可查看水庫的工程屬性信息、照片、實(shí)時(shí)視頻、文字簡介、最新水位、庫容、入庫流量、出庫流量以及大壩安全監(jiān)測數(shù)據(jù)等。當(dāng)點(diǎn)擊渠道時(shí),可查看渠道的工程屬性信息、照片、維修養(yǎng)護(hù)信息、改造信息以及該條渠道上的所有監(jiān)測站點(diǎn)的最新水位、流量數(shù)據(jù)等。效果顯示如圖5-7。
圖5 水庫信息效果圖
圖6 渠道信息效果圖
圖7 渠首信息效果圖
在地圖上自動(dòng)顯示當(dāng)前正在巡檢人員的工作軌跡以及所在位置,并實(shí)時(shí)更新。當(dāng)在地圖上點(diǎn)擊人員標(biāo)識時(shí),可以查看當(dāng)前正在巡檢工作人員的巡檢記錄、上傳的照片以及現(xiàn)場視頻和錄音文件,錄音文件可以通過智能分析技術(shù)轉(zhuǎn)換成文字。同時(shí)可以發(fā)起語音對講,與現(xiàn)場人員進(jìn)行通話。效果顯示如圖8、圖9。
圖8 渠道實(shí)時(shí)巡檢效果圖
圖9 實(shí)時(shí)巡檢信息效果圖
支持查看歷史巡檢記錄,通過點(diǎn)擊歷史巡檢記錄,實(shí)現(xiàn)查看該次巡檢的視頻文件、錄音文件以及圖片等現(xiàn)場信息,同時(shí)定位顯示此次巡檢過程中發(fā)現(xiàn)問題的位置。效果顯示如圖10、圖11。
圖10 巡檢記錄效果圖
圖11 巡檢詳細(xì)信息效果圖
渠道巡檢軌跡渲染程序?qū)崿F(xiàn)的實(shí)例代碼如下所示:
//巡檢段
xunjianduanXR = function getPersonCanalResults(ID) {
resultsLyr.removeAll();
var qTask=new QueryTask();
qTask.url = "http:∥www.xjsth.cn:8399/arcgis/rest/services/slgk_pm_Map/MapServer/17";
var query=new Query();
query.outFields=["*"];
query.returnGeometry=true;
query.where="FID = "+ID+"";
qTask.execute(query).then(function (results) {
var graphicS = arrayUtils.map(results.features,function (feature) {
feature.symbol = new SimpleLineSymbol({
color:[253, 97, 0],∥[ 21, 197, 234],
width:4
});
return feature;
});
resultsLyr.addMany(graphicS);
view.goTo(graphicS);
}),function (error) {
alert(error);
};
}
渠道輸配水情況渲染程序?qū)崿F(xiàn)的實(shí)例代碼如下所示:
//動(dòng)態(tài)水流渲染
renderByPictureMarkMethod = function RenderByPictureMarkMethod(url, where,linename) {
resultsLyr.removeAll();
var qTaskArea=new QueryTask();
qTaskArea.url = "http:∥www.xjsth.cn:8399/arcgis/rest/services/szy_ds_Map/MapServer/";
var queryArea=new Query();
queryArea.outFields=["*"];
queryArea.returnGeometry=true;
var qWhereArea = where != "" && where != undefined ? where : "1 = 1";
queryArea. where=qWhereArea ;
qTaskArea.execute(queryArea).then(function (results) {
arrayUtils.map(results.features,function (feature) {
if(feature.geometry.paths[0] && feature.geometry.paths[1]) {...}
});
});
}
水量分析渲染程序?qū)崿F(xiàn)代碼如下所示:
∥水量超標(biāo)處理
getUnit = function getUnit(where1,where2) {
resultsLyr.removeAll();
var url = "http:∥www.xjsth.cn:8399/arcgis/rest/services/szy_ds_Map/MapServer/25";
var senderInfo = {"Type":"POLYGON","Color":[255,0,0,
0.8],"Style":"solid","OutlineColor":[139,54,38],"OutlineWidth":1};
renderGeometryMethod(url,where1,senderInfo);
var senderInfo = {"Type":"POLYGON","Color":[255,255,0,
0.8],"Style":"solid","OutlineColor":[139,54,38],"OutlineWidth":1};
renderGeometryMethod(url,where2,senderInfo);
}
//超標(biāo)信息顯示
renderTextMethod = function RenderTextMethod(url, where,text){
//resultsLyr.removeAll();
var qTask=new QueryTask();
qTask.url = url;
var query=new Query();
query.outFields=["*"];
query.returnGeometry=true;
var qWhere = where != "" && where != undefined ? where : "1 = 1";
query.where=qWhere;
qTask.execute(query).then(function (results) {
var graphicS = arrayUtils.map(results.features,function (feature) {...});
resultsLyr.addMany(graphicS);
if (zoom != undefined){
view.goTo({target: graphicS, zoom: zoom});
}
}),function (error) {
alert(error);
};
}
通過以上在各個(gè)試點(diǎn)灌區(qū)用水管理和工程管理中地理信息技術(shù)的應(yīng)用示例,使灌區(qū)用水管理和工程管理更加直觀和形象,提高了灌區(qū)輸配水的時(shí)效性和科學(xué)性,提高了工程管理的現(xiàn)場感和實(shí)時(shí)性,因此,地理信息技術(shù)在灌區(qū)業(yè)務(wù)管理中還有很大的應(yīng)用空間。
□
[1] 中國灌溉排水發(fā)展中心. 大型灌區(qū)信息化建設(shè)技術(shù)指南[M]. 北京:中國水利水電出版社,2012.
[2] 王順久. 水資源優(yōu)化配置原理及方法[M]. 北京:中國水利水電出版社,2007.
[3] Eelco van Beek. 宋心同 譯. 水資源綜合管理 方法-模型-應(yīng)用[M]. 鄭州:黃河水利出版社,2008.
[4] 湯國安,楊 昕. ArcGIS地理信息系統(tǒng)空間分析實(shí)驗(yàn)教程[M]. 北京:科學(xué)出版社,2006.
[5] 池 建. 精通ArcGIS地理信息系統(tǒng)[M]. 北京:清華大學(xué)出版社,2010.
[6] 安迪·米切爾. 張 旸 譯. GIS空間分析指南[M]. 北京:測繪出版社,2011.
[7] 王遠(yuǎn)飛. 空間數(shù)據(jù)分析方法[M]. 北京:科學(xué)出版社,2007.