王鐵松,馮俊領(lǐng),王雪峰
(青島市公路管理局)
隨著經(jīng)濟(jì)的快速發(fā)展,對各種大型工程的安全性能的提出了更高的要求,特別對橋梁工程、滑坡體地質(zhì)災(zāi)害、地鐵軌道交通工程、地基處理工程、水利水電工程、堤防、河港及航運(yùn)樞紐工程、病險水庫除險加固等的安全監(jiān)測十分必要。眾所周知,這些大型工程結(jié)構(gòu)物在施工和運(yùn)營期間,由于受各種因素的影響,會產(chǎn)生變形,變形如果超出了規(guī)定的限度,就會影響工程的正常使用,嚴(yán)重時還會危及大型工程的安全,給社會和人民生活帶來巨大的損失。
繪制變形過程線是變形監(jiān)測中一個主要環(huán)節(jié),便于變形分析和變形預(yù)報。繪制變形過程線的方法有很多種,傳統(tǒng)的繪制方法大都使用AutoCAD和Excel來實現(xiàn)的,但這些方法存在以下缺點(diǎn):(1)數(shù)據(jù)的處理與圖形的生成相分離。建筑物監(jiān)測數(shù)據(jù)的處理一般都用如PB、VB、VC等開發(fā)語言編制的程序進(jìn)行處理;(2)對于每一個測點(diǎn)過程線的繪制都要在AutoCAD或者Excel中進(jìn)行調(diào)用,工作效率低;(3)生成后的圖形格式不易更改,而且要生成“.Script”文件,必須對AutoCAD的命令很熟悉。此外,變形監(jiān)測需要處理大量的數(shù)據(jù),因此選擇系統(tǒng)開發(fā)語言時,最好首先考慮選擇方便數(shù)據(jù)庫應(yīng)用程序開發(fā)的工具,然后才顧及界面設(shè)計方面。而MATLBA是數(shù)據(jù)庫應(yīng)用程序開發(fā)最有利的工具之一,在界面設(shè)計與圖形繪制的功能強(qiáng)大,另外通過對過程線圖的繪制,可以較好地反映出觀測資料的變化規(guī)律。
本文采用MATLAB軟件編輯程序來繪制變形過程線,主要研究時間與坐標(biāo)的關(guān)系和坐標(biāo)點(diǎn)之間的關(guān)系過程線,所繪制的過程線精度高,功能齊全容易分析和研究變形規(guī)律,方便快捷了解觀測值過程的規(guī)律性,使監(jiān)測系統(tǒng)的管理變得更為方便。
安全監(jiān)測是診斷工程安全性態(tài)的有效措施,是在工程重點(diǎn)監(jiān)測部位安裝監(jiān)測儀器設(shè)備,通過監(jiān)測儀器設(shè)備反饋的數(shù)據(jù)校核設(shè)計參數(shù)、檢驗施工質(zhì)量、反映工程安全狀況,為工程施工和運(yùn)行提供安全決策依據(jù)。變形監(jiān)測,就是利用測量與專用儀器和方法對變形體的變形現(xiàn)象進(jìn)行監(jiān)視觀測的工作。其任務(wù)是確定在各種荷載和外力作用下,變形體的形狀、大小及位置變化的空間狀態(tài)和時間特征。
變形過程線是指多次測量觀測點(diǎn)的坐標(biāo)在坐標(biāo)系中先后變化的連線。變形過程線反映的是變形有關(guān)因素與觀測點(diǎn)坐標(biāo)的關(guān)系,如:時間過程線、位移過程線等。觀測點(diǎn)變形過程線可明顯地反映出變形的趨勢、規(guī)律和幅度,對于初步判斷建筑物的工作情況是否正常是非常有用的。
坐標(biāo)隨時間變化過程線的設(shè)計要求:隨意給出一些點(diǎn)多次觀測的三維坐標(biāo),把這些點(diǎn)的坐標(biāo)數(shù)據(jù)帶入到程序中,就能繪制出這些點(diǎn)的X、Y、Z坐標(biāo)隨時間的變化過程線,即坐標(biāo)系中相鄰觀測次數(shù)用線段相連并標(biāo)記出數(shù)據(jù)點(diǎn)。
根據(jù)設(shè)計要求,結(jié)合MATLAB軟件的功能,該程序的設(shè)計思想和方法是:(1)雖然有很多點(diǎn)需要繪制變形過程線,但是一次是可以統(tǒng)計出來的,所以在以后的編寫里,點(diǎn)的個數(shù)都是個定值m,但觀測次數(shù)是未知的。(2)然后建立m個“.txt”文件,分別將這些觀測點(diǎn)的三維觀測坐標(biāo)分別寫到這m個“.txt”文件中。(3)打開MATLAB,輸入這些數(shù)據(jù);在不改變點(diǎn)結(jié)構(gòu)和同一方向差值的情況下對這些數(shù)據(jù)進(jìn)行簡化處理,即首先統(tǒng)計各點(diǎn)各方向觀測值的最小值,然后各方向分別減去各方向的最小值,這樣就得到多組新的數(shù)據(jù)。(4)確定坐標(biāo)軸范圍,首先要統(tǒng)計觀測次數(shù) n(即同一個點(diǎn)三維坐標(biāo)數(shù)目),接著統(tǒng)計這個方向最大值與最小值,在不小于最大值和不大于最小值的原則下就可以確定出縱橫坐標(biāo)軸的范圍。(5)因為一個坐標(biāo)系中只有一條過程線,所以就以一個點(diǎn)一個方向為例具體說明下,確定完坐標(biāo)軸范圍后,接著就一段的來寫t與x或y或z的函數(shù)關(guān)系式;(6)最后利用畫線和畫點(diǎn)命令執(zhí)行程序,就會輸出最后的變形過程線圖。
根據(jù)上面的設(shè)計要求和思想,采用MATLAB來處理某工程三個觀測點(diǎn)的不同時間觀測數(shù)據(jù),繪制出坐標(biāo)隨時間變化的過程線。具體的觀測數(shù)據(jù)見表 1。
表1 觀測數(shù)據(jù) 單位:mm
采用MATLAB來繪制出坐標(biāo)隨時間變化的過程線,編制的程序主要應(yīng)用了MATLAB以下幾種命令功能:(1)首先利用load命令,把數(shù)據(jù)帶入程序一數(shù)組內(nèi),但是數(shù)據(jù)必須要存放在“.txt”文件中,且在“work”文件夾下;(2)利用size命令,求數(shù)組的橫列數(shù),即求得一個點(diǎn)的觀測次數(shù);(3)利用min和max命令;求最大值與最小值;(4)利用subplot命令,平均劃分圖像窗口;(5)利用axis命令,限定坐標(biāo)軸范圍,前兩個數(shù)是橫坐標(biāo)軸范圍,后兩個是縱坐標(biāo)軸范圍;(6)利用holdon命令,使多個圖形命令在同一坐標(biāo)系內(nèi)執(zhí)行;(7)利用for命令,執(zhí)行循環(huán)語句;(8)利用line命令,畫線段;(9)利用scatter命令,畫點(diǎn);(10)利用title、xlabel和ylabel命令,標(biāo)注圖形,title命令標(biāo)注標(biāo)題,xlabel與ylabel命令標(biāo)注坐標(biāo)軸。
采用MATLAB編寫的程序,把表1觀測數(shù)據(jù)處理后,在同一窗口繪制出的坐標(biāo)隨時間變化的過程線圖如圖 1所示。由圖 1可以看出,如果同時在同一圖形窗口內(nèi)繪制三個點(diǎn)坐標(biāo)隨時間變化線,可對它們的變化進(jìn)行相互的比較。
還可對同一觀測點(diǎn)的坐標(biāo)隨時間變化過程線單獨(dú)繪制在一個窗口,如圖 2所示。圖 2所示坐標(biāo)隨時間變化過程線比圖 1清晰,同時也可以對第一點(diǎn)三方向上的變化做個比較。
圖1 坐標(biāo)隨時間變化過程線
圖2 第一點(diǎn)坐標(biāo)隨時間變化過程線
這個過程的要求是隨意給出一些點(diǎn)多次觀測的三維坐標(biāo),把這些點(diǎn)的坐標(biāo)數(shù)據(jù)帶入到程序中,最后在同一坐標(biāo)系內(nèi)分別繪制出這些點(diǎn)的位移矢量圖,即相同點(diǎn)多次觀測平面坐標(biāo)依次用線段相連并標(biāo)注每條過程線及其第一個觀測點(diǎn)。
根據(jù)設(shè)計要求,結(jié)合MATLAB的功能,本程序的設(shè)計思想是:和第 2節(jié)中一樣,首先觀測點(diǎn)數(shù)目是確定的,為定值m,如果很多,在同一坐標(biāo)系內(nèi)就要繪制出很多位移矢量過程線,很不清楚,一般四條左右就好,觀測次數(shù)仍然是未知的;然后建立m+1個“.txt”文件,分別把觀測點(diǎn)的平面坐標(biāo)寫入這m個“.txt”文件,最后一個“.txt”文件寫入所以觀測點(diǎn)觀測坐標(biāo);打開MATLBA軟件,首先也要找最小值,進(jìn)行數(shù)據(jù)壓縮,但這次是要找所以觀測點(diǎn)在同一方向上的最小值,這樣是為了保持這些點(diǎn)在平面上的機(jī)構(gòu)不發(fā)生變化,然后坐標(biāo)分別減去同一方向上的最小值;確定坐標(biāo)軸范圍,分別求取所有觀測點(diǎn)在 X和Y方向上的最大值和最小值,在不大于最小值和不小于最大值的原則下合理確定坐標(biāo)軸范圍;最后列出x、y的關(guān)系式,利用MATLAB的一些命令繪制位移矢量過程線。
根據(jù)上面的設(shè)計要求和思想,采用MATLAB來處理某工程三個觀測點(diǎn)的不同時間觀測數(shù)據(jù),繪制出其位移矢量過程線線。具體的觀測數(shù)據(jù)見表 2。
表2 三點(diǎn)平面坐標(biāo) 單位:mm
首先建立四個“.txt”文件,分別將三點(diǎn)的平面坐標(biāo)寫入前三個“.txt”文件文件,第四個“.txt”文件里寫入三點(diǎn)的平面坐標(biāo),然后編寫程序命令。
采用MATLAB編制程序,來繪制在同一坐標(biāo)系內(nèi)分別繪制出這些點(diǎn)的位移矢量圖,本程序使用的命令基本和繪制出坐標(biāo)隨時間變化的過程線圖的MATLAB程序基本一樣,但有兩處不同:①前兩個程序中橫坐標(biāo) t的取值隨i的增大也增大,所以 t在每一段的取值都是由小到大,但是本程序中橫坐標(biāo)x的取值不是這樣的,由于A(i,1)與A((i+1), 1)的大小關(guān)系是不確定的,不能直接寫成x=A(i,1):A((i +1),1),所以就用到 if命令,首先對他們進(jìn)行比較,然后確定x的取值順序。②text命令,文本標(biāo)注,由于位移矢量過程線很多,為了區(qū)分它們就需要對它們進(jìn)行標(biāo)注,選取在過程線中點(diǎn)出標(biāo)注。
在同一坐標(biāo)系內(nèi)分別繪制出這些點(diǎn)的位移矢量圖如 3所示,不但圖形清晰,而且方便快捷了解觀測值過程的規(guī)律性,使監(jiān)測系統(tǒng)的管理變得更為方便。
圖3 位移矢量圖
(1)采用MATLAB編制程序,對觀測數(shù)據(jù)繪制時間過程線、位移過程線圖,可以較好地反映出觀測資料的變化規(guī)律,快捷地了解測值過程的規(guī)律性,使監(jiān)測系統(tǒng)的管理變得更為方便。
(2)MATLAB繪制的變形過程線可直觀清楚地看出觀測點(diǎn)大致的變化規(guī)律,也可分析出它大致的變化曲線,這也為下一步的曲線擬合分析打下基礎(chǔ)。
[1] 黃聲享,尹暉,蔣征等.變形監(jiān)測數(shù)據(jù)處理[M].武漢:武漢大學(xué)出版社,2004.
[2] 王正林,劉明.精通MATLAB7[M].北京:電子工業(yè)出版社, 2006.
[3] 孫彩敏.工程建筑物的變形觀測教學(xué)分析與設(shè)想[M].地礦測繪,2003,19(1):43-44.
[4] 黃萬里,石辛喜,王天祥.用 PB繪制建筑物安全監(jiān)測過程線[M].北京測繪,2002,15(2):38-41.