地基沉降遠程數(shù)據(jù)采集軟件的設(shè)計與實現(xiàn)
引言
地基沉降監(jiān)測系統(tǒng)主要用于路基、路塹、橋梁、建筑、地鐵、水利大壩、房屋等容易出現(xiàn)差異沉降的場所以及橋路過渡段的監(jiān)測測量。隨著現(xiàn)代通信、網(wǎng)絡(luò)、計算機技術(shù)的發(fā)展,數(shù)據(jù)監(jiān)測系統(tǒng)也逐漸由單機的簡單數(shù)據(jù)采集監(jiān)測系統(tǒng)向局域網(wǎng)或遠程網(wǎng)絡(luò)的分布式綜合遠程數(shù)據(jù)采集監(jiān)測系統(tǒng)方向發(fā)展。因此,如何充分利用現(xiàn)代信息和通信技術(shù),實現(xiàn)對路基、路塹、橋梁、建筑、地鐵等領(lǐng)域安全監(jiān)控和管理的信息化、網(wǎng)絡(luò)化是當(dāng)前的發(fā)展趨勢。
本文對地基沉降系統(tǒng)中服務(wù)器端軟件系統(tǒng)的設(shè)計與實現(xiàn)進行了系統(tǒng)的介紹,具體包括軟件系統(tǒng)的結(jié)構(gòu)、功能模塊的設(shè)計與實現(xiàn)以及系統(tǒng)改進設(shè)想。
1數(shù)據(jù)采集軟件系統(tǒng)結(jié)構(gòu)
數(shù)據(jù)采集軟件系統(tǒng)結(jié)構(gòu)圖如圖1所示。數(shù)據(jù)采集軟件系統(tǒng)包括數(shù)據(jù)接收存儲子系統(tǒng)和數(shù)據(jù)管理顯示子系統(tǒng)。數(shù)據(jù)接收存儲子系統(tǒng)負責(zé)數(shù)據(jù)接收、數(shù)據(jù)解碼、數(shù)據(jù)存儲、定時/實時發(fā)送指令;數(shù)據(jù)管理顯示子系統(tǒng)負責(zé)實時數(shù)據(jù)顯示、數(shù)據(jù)查詢、歷史數(shù)據(jù)曲線瀏覽、數(shù)據(jù)導(dǎo)出等。
2功能模塊設(shè)計與實現(xiàn)
數(shù)據(jù)接收存儲子系統(tǒng)包含三個線程,分別是數(shù)據(jù)接收線程、解碼和存儲線程、定時/實時發(fā)送指令線程。
2.1數(shù)據(jù)接收線程
本數(shù)據(jù)采集軟件部署在具有公網(wǎng)IP的服務(wù)器上,采集客戶端很容易通過GPRS網(wǎng)絡(luò)將數(shù)據(jù)傳輸至服務(wù)器器上。數(shù)據(jù)接收線程的作用就是用于接收異地各個客戶端發(fā)送過來的采集數(shù)據(jù)。具體實現(xiàn)方法:針對每個客戶端開辟一個接收線程,該接收線程是基于Socket技術(shù),由于本軟件系統(tǒng)采用Java語言來實現(xiàn),因此可使用MINA框架或JAVARMI來實現(xiàn)數(shù)據(jù)的接收。
2.2數(shù)據(jù)解碼/存儲線程
數(shù)據(jù)接收完成后,需要對數(shù)據(jù)進行解碼。本文每個客戶端傳送過來都是基于MODBUS協(xié)議的,可以同時傳送超過100個以上的傳感器節(jié)點數(shù)據(jù)。從解碼數(shù)據(jù)可以得到傳感器編號、頻率、標(biāo)定偏移量、實際偏移量數(shù)據(jù)。使用實際偏移量減去標(biāo)定偏移量即為實際的偏移量數(shù)據(jù),根據(jù)傳感器編號可獲知是哪個傳感器的數(shù)據(jù)。數(shù)據(jù)解碼完成后,需要將解碼出來的數(shù)據(jù)存儲到數(shù)據(jù)庫中。
2.3定時/實時發(fā)送指令線程
通過設(shè)置定時參數(shù),服務(wù)器將會定時發(fā)送指令(包括獲取數(shù)據(jù)指令及標(biāo)定指令),客戶端收到指令后立刻發(fā)送相應(yīng)的數(shù)據(jù)至服務(wù)器端。同時,該軟件還支持實時發(fā)送指令,在服務(wù)器端點擊實時發(fā)送按鈕后,客戶端就會立刻返回相應(yīng)的數(shù)據(jù)。其詳細流程如下:
首先是判斷定時周期變化否,如果未變,繼續(xù)執(zhí)行,否則修改定時周期變量值,重啟定時發(fā)送指令線程;
其次是判斷實時發(fā)送標(biāo)志置位否,如果置位,則立刻發(fā)送指令至客戶端,否則繼續(xù)執(zhí)行。
2.4實時數(shù)據(jù)顯示
利用該系統(tǒng)可通過設(shè)置時間周期,定時獲取數(shù)據(jù)庫數(shù)據(jù),并在網(wǎng)頁上顯示出來,其效果如圖2所示。此外,在界面上還可以看到歷史曲線及Excel數(shù)據(jù)導(dǎo)出。
圖2實時數(shù)據(jù)列表
2.5數(shù)據(jù)查詢
利用該系統(tǒng)也可根據(jù)傳感器編號和日期來查詢采集的數(shù)
其效果如圖3所示。
圖3數(shù)據(jù)查詢界面
2.6歷史曲線
點擊傳感器列表中的某一個傳感器,即可查看相應(yīng)的歷史數(shù)據(jù),效果如圖4所示,使得管理員人員對被監(jiān)測的傳感器狀態(tài)有著全面、直觀的了解。
圖4歷史曲線
3系統(tǒng)改進設(shè)想
目前,顯示數(shù)據(jù)的方法只有表格和歷史曲線兩種。在以后的版本中,應(yīng)該考慮使用SVG、GIS、虛擬顯示等技術(shù)對傳感器進行可視化管理,使軟件變得非常直觀、形象。在此基礎(chǔ)上,設(shè)置報警、短信提醒等人性化管理功能。
4結(jié)語
本軟件為地基沉降監(jiān)測系統(tǒng)的服務(wù)器軟件部分,用于對遠程數(shù)據(jù)的采集、存儲、管理以及顯示等。經(jīng)過長時間運行測試,軟件運行穩(wěn)定,實現(xiàn)了穩(wěn)定的、連續(xù)的、可靠的監(jiān)控數(shù)據(jù)測量。該系統(tǒng)適合多客戶端、長時間、短周期的地基沉降監(jiān)測任務(wù),為實時地基監(jiān)測增加了科學(xué)的決策依據(jù)。
20211112_618e5f8df20da__地基沉降遠程數(shù)據(jù)采集軟件的設(shè)計與實現(xiàn)