引言
地基沉降監(jiān)測系統(tǒng)主要用于路基、路塹、橋梁、建筑、地鐵、水利大壩、房屋等容易出現差異沉降的場所以及橋路過渡段的監(jiān)測測量。隨著現代通信、網絡、計算機技術的發(fā)展,數據監(jiān)測系統(tǒng)也逐漸由單機的簡單數據采集監(jiān)測系統(tǒng)向局域網或遠程網絡的分布式綜合遠程數據采集監(jiān)測系統(tǒng)方向發(fā)展。因此,如何充分利用現代信息和通信技術,實現對路基、路塹、橋梁、建筑、地鐵等領域安全監(jiān)控和管理的信息化、網絡化是當前的發(fā)展趨勢。
本文對地基沉降系統(tǒng)中服務器端軟件系統(tǒng)的設計與實現進行了系統(tǒng)的介紹,具體包括軟件系統(tǒng)的結構、功能模塊的設計與實現以及系統(tǒng)改進設想。
1數據采集軟件系統(tǒng)結構
數據采集軟件系統(tǒng)結構圖如圖1所示。數據采集軟件系統(tǒng)包括數據接收存儲子系統(tǒng)和數據管理顯示子系統(tǒng)。數據接收存儲子系統(tǒng)負責數據接收、數據解碼、數據存儲、定時/實時發(fā)送指令;數據管理顯示子系統(tǒng)負責實時數據顯示、數據查詢、歷史數據曲線瀏覽、數據導出等。
2功能模塊設計與實現
數據接收存儲子系統(tǒng)包含三個線程,分別是數據接收線程、解碼和存儲線程、定時/實時發(fā)送指令線程。
2.1數據接收線程
本數據采集軟件部署在具有公網IP的服務器上,采集客戶端很容易通過GPRS網絡將數據傳輸至服務器器上。數據接收線程的作用就是用于接收異地各個客戶端發(fā)送過來的采集數據。具體實現方法:針對每個客戶端開辟一個接收線程,該接收線程是基于Socket技術,由于本軟件系統(tǒng)采用Java語言來實現,因此可使用MINA框架或JAVARMI來實現數據的接收。
2.2數據解碼/存儲線程
數據接收完成后,需要對數據進行解碼。本文每個客戶端傳送過來都是基于MODBUS協(xié)議的,可以同時傳送超過100個以上的傳感器節(jié)點數據。從解碼數據可以得到傳感器編號、頻率、標定偏移量、實際偏移量數據。使用實際偏移量減去標定偏移量即為實際的偏移量數據,根據傳感器編號可獲知是哪個傳感器的數據。數據解碼完成后,需要將解碼出來的數據存儲到數據庫中。
2.3定時/實時發(fā)送指令線程
通過設置定時參數,服務器將會定時發(fā)送指令(包括獲取數據指令及標定指令),客戶端收到指令后立刻發(fā)送相應的數據至服務器端。同時,該軟件還支持實時發(fā)送指令,在服務器端點擊實時發(fā)送按鈕后,客戶端就會立刻返回相應的數據。其詳細流程如下:
首先是判斷定時周期變化否,如果未變,繼續(xù)執(zhí)行,否則修改定時周期變量值,重啟定時發(fā)送指令線程;
其次是判斷實時發(fā)送標志置位否,如果置位,則立刻發(fā)送指令至客戶端,否則繼續(xù)執(zhí)行。
2.4實時數據顯示
利用該系統(tǒng)可通過設置時間周期,定時獲取數據庫數據,并在網頁上顯示出來,其效果如圖2所示。此外,在界面上還可以看到歷史曲線及Excel數據導出。
圖2實時數據列表
2.5數據查詢
利用該系統(tǒng)也可根據傳感器編號和日期來查詢采集的數
其效果如圖3所示。
圖3數據查詢界面
2.6歷史曲線
點擊傳感器列表中的某一個傳感器,即可查看相應的歷史數據,效果如圖4所示,使得管理員人員對被監(jiān)測的傳感器狀態(tài)有著全面、直觀的了解。
圖4歷史曲線
3系統(tǒng)改進設想
目前,顯示數據的方法只有表格和歷史曲線兩種。在以后的版本中,應該考慮使用SVG、GIS、虛擬顯示等技術對傳感器進行可視化管理,使軟件變得非常直觀、形象。在此基礎上,設置報警、短信提醒等人性化管理功能。
4結語
本軟件為地基沉降監(jiān)測系統(tǒng)的服務器軟件部分,用于對遠程數據的采集、存儲、管理以及顯示等。經過長時間運行測試,軟件運行穩(wěn)定,實現了穩(wěn)定的、連續(xù)的、可靠的監(jiān)控數據測量。該系統(tǒng)適合多客戶端、長時間、短周期的地基沉降監(jiān)測任務,為實時地基監(jiān)測增加了科學的決策依據。
20211112_618e5f8df20da__地基沉降遠程數據采集軟件的設計與實現
(全球TMT2021年12月16日訊)摩爾線程與浪潮在京簽署元腦戰(zhàn)略合作協(xié)議。摩爾線程與浪潮將發(fā)揮各自在技術、生態(tài)和產業(yè)等方面的領先優(yōu)勢,基于創(chuàng)新算力芯片和元腦生態(tài)平臺展開多維和深度合作,聯手開發(fā)領先的人工智能行業(yè)解決...
關鍵字: 線程1.介紹本以為暫停線程是一條語句的事,結果發(fā)現事情并沒有那么簡單,而且我相信很多人都用錯了,就是因為踩了這么一個坑,所以準備發(fā)這么一個帖子,讓后面的人少踩坑。2.應用場景有三個線程,分別為A、B和C,把A線程比作是大腦,...
關鍵字: 線程關注、星標公眾號,直達精彩內容來源:整理與網絡素材1.線程概述線程是輕量級的進程(LWP:lightweightprocess),在Linux環(huán)境下線程的本質仍是進程。在計算機上運行的程序是一組指令及指令參數的組合,指令...
關鍵字: 線程