• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于VB的沉降觀(guān)測(cè)數(shù)據(jù)處理程序設(shè)計(jì)

      2016-08-23 03:01:32王海波于海乾
      地球 2016年7期
      關(guān)鍵詞:程序設(shè)計(jì)數(shù)據(jù)處理觀(guān)測(cè)

      ■王海波 于海乾

      (浙江有色測(cè)繪院浙江紹興312000)

      基于VB的沉降觀(guān)測(cè)數(shù)據(jù)處理程序設(shè)計(jì)

      ■王海波 于海乾

      (浙江有色測(cè)繪院浙江紹興312000)

      在測(cè)量工程的實(shí)踐和科學(xué)研究活動(dòng)中,沉降觀(guān)測(cè)占有重要的地位,工程建筑的興建,從施工開(kāi)始到竣工,以及建成后整個(gè)運(yùn)營(yíng)期間都要不斷的監(jiān)測(cè),以便掌握沉降的情況,及時(shí)發(fā)現(xiàn)問(wèn)題,保證工程建筑的安全。就準(zhǔn)確處理沉降數(shù)據(jù)環(huán)節(jié),下文敘述以VB(Visual Basic 6.0)為開(kāi)發(fā)平臺(tái),依靠Access和Excel等為輔助工具進(jìn)行開(kāi)發(fā),分析了各自操作系統(tǒng)的優(yōu)缺點(diǎn),實(shí)現(xiàn)了VB的可視化界面和Access強(qiáng)大的數(shù)據(jù)庫(kù)存儲(chǔ)、可視化表述的功能,完成后的系統(tǒng)具有界面友好、操作簡(jiǎn)單、易于掌握的特點(diǎn)。

      本文程序設(shè)計(jì)充分發(fā)揮VB的可移植性、面向?qū)ο缶幊毯虯ccess強(qiáng)大的數(shù)據(jù)庫(kù)管理功能,實(shí)現(xiàn)了沉降數(shù)據(jù)的錄入、粗差剔除、數(shù)據(jù)平差、沉降量計(jì)算、沉降圖形分析以及成果輸出等功能。

      數(shù)據(jù)處理 沉降分析 VB Access 數(shù)據(jù)庫(kù)

      1 沉降觀(guān)測(cè)數(shù)據(jù)處理程序設(shè)計(jì)的提出

      一般的沉降觀(guān)測(cè)流程是外業(yè)數(shù)據(jù)采集,內(nèi)業(yè)處理數(shù)據(jù)產(chǎn)生需要的報(bào)表和圖形。數(shù)據(jù)處理也就成為沉降觀(guān)測(cè)的核心工作。傳統(tǒng)的作業(yè)方式是手工記錄,然后再將數(shù)據(jù)轉(zhuǎn)入到相應(yīng)的軟件中處理,這種方式不僅工作量大而且還極容易出錯(cuò)。在計(jì)算機(jī)飛速發(fā)展的時(shí)代,如何能使沉降觀(guān)測(cè)數(shù)據(jù)處理工作變得更簡(jiǎn)單、更完善是一個(gè)亟待解決的問(wèn)題,為此本文提出了VB結(jié)合matlab以及access數(shù)據(jù)庫(kù)設(shè)計(jì)程序來(lái)解決以上問(wèn)題

      2 設(shè)計(jì)的主要的研究?jī)?nèi)容

      2.1數(shù)據(jù)的采集模型

      沉降觀(guān)測(cè)的原始處理數(shù)據(jù)一般是以Excel形式存儲(chǔ)的,為了方便快捷的采集導(dǎo)數(shù)據(jù),設(shè)計(jì)在VB的操作環(huán)境下,運(yùn)用ActiveX部件建立VB與Excel的鏈接,編寫(xiě)VB語(yǔ)句將Excel中的沉降觀(guān)測(cè)數(shù)據(jù)直接導(dǎo)入到VB的控件中進(jìn)行處理。

      2.2觀(guān)測(cè)量的平差模型

      首先根據(jù)觀(guān)測(cè)量的特征確定最佳的的平差模型與方法,根據(jù)模型的理論和方法建立相應(yīng)的函數(shù)模型,結(jié)合最小二乘原理采用條件平差模型對(duì)數(shù)據(jù)進(jìn)行平差。

      2.3沉降數(shù)據(jù)的分析模型及成果輸出

      對(duì)平差后的觀(guān)測(cè)數(shù)據(jù)進(jìn)行解算,計(jì)算出累計(jì)沉降量、本次沉降量等分析數(shù)據(jù),繪制各種沉降曲線(xiàn)圖,對(duì)未來(lái)若干天各點(diǎn)的沉降量進(jìn)行分析預(yù)測(cè),將處理的數(shù)據(jù)及分析圖形輸出到指定的文件夾中。

      2.4沉降觀(guān)測(cè)數(shù)據(jù)處理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)

      系統(tǒng)是針對(duì)數(shù)據(jù)處理內(nèi)業(yè)來(lái)設(shè)計(jì)的,根據(jù)沉降觀(guān)測(cè)的一般流程來(lái)完成工程作業(yè)。主要功能有:調(diào)用外部數(shù)據(jù),粗差剔除,數(shù)據(jù)平差,沉降分析及預(yù)測(cè),曲線(xiàn)繪制,成果輸出。

      3 程序開(kāi)發(fā)工具及技術(shù)

      該程序是采用面向?qū)ο蟮某绦蛘Z(yǔ)言Visual Basic及MATLAB和、Access、Excel等為輔助工具來(lái)開(kāi)發(fā)的。Visual Basic是一種可視化的、面向?qū)ο蠛筒捎檬录?qū)動(dòng)方式和結(jié)構(gòu)化高級(jí)程序設(shè)計(jì)語(yǔ)言,可用于開(kāi)發(fā)Windows環(huán)境下和各類(lèi)應(yīng)用程序。MATLAB是一套集數(shù)值分析、矩陣運(yùn)算、信號(hào)處理和圖形顯示于一體的高性能數(shù)學(xué)軟件,計(jì)算能力突出,提供方便快捷的計(jì)算和繪圖功能。由于沉降數(shù)據(jù)存儲(chǔ)于數(shù)據(jù)庫(kù)中,由Access數(shù)據(jù)庫(kù)下建立的數(shù)據(jù)別對(duì)沉降數(shù)據(jù)進(jìn)行存儲(chǔ)及管理功能,技能保證數(shù)據(jù)的批量處理,又可以使數(shù)據(jù)安全可靠,再數(shù)據(jù)格式轉(zhuǎn)換和數(shù)據(jù)輸出等方面則采用Excel。

      4 程序詳細(xì)設(shè)計(jì)

      4.1數(shù)據(jù)的錄入

      在VB中采用MSFlexGrid控件接收數(shù)據(jù),MSFlexGrid用來(lái)接收直接導(dǎo)入的Excel數(shù)據(jù)或是手工直接輸入的數(shù)據(jù),Excel中按一定格式存儲(chǔ)的數(shù)據(jù),數(shù)據(jù)為每個(gè)觀(guān)測(cè)點(diǎn)的高差。界面上方的文本框用來(lái)輸入已知點(diǎn)和觀(guān)測(cè)點(diǎn)之間的距離,必須由已知開(kāi)始按觀(guān)測(cè)路線(xiàn)的順時(shí)針?lè)较蜻M(jìn)行輸入,并將之依次添加進(jìn)ComboBox中去。

      實(shí)現(xiàn)導(dǎo)入的主要程序語(yǔ)句為:

      Dim ex As Excel.Application

      Dim exwbook As Excel.Workbook

      Dim exsheet As Excel.Worksheet

      Dim rows,cols,maxCols As Integer

      Text1.Visible=False'把Excel中數(shù)據(jù)導(dǎo)入導(dǎo)入到窗體上的控件中

      CommonDialog1.DialogTitle="excel數(shù)據(jù)表"

      CommonDialog1.InitDir=App.Path

      CommonDialog1.FileName=""

      CommonDialog1.Filter="Excel報(bào)表(*.xls)|*.xls"

      CommonDialog1.Action=1

      str_temp=CommonDialog1.FileName

      Set ex=CreateObject("excel.application")

      Set exwbook=ex.Workbooks.Open(str_temp)

      Set exsheet=exwbook.Worksheets("sheet1")

      rows=exsheet.UsedRange.rows.Count

      cols=exsheet.UsedRange.Columns.Count

      4.2數(shù)據(jù)平差的實(shí)現(xiàn)方法

      雖然VB的界面美觀(guān),操作方便、簡(jiǎn)單,但VB對(duì)矩陣的運(yùn)算非常的不方便。而MATLAB對(duì)矩陣的各種計(jì)算、圖像的繪制十分簡(jiǎn)單快捷。因此,在VB的操作平臺(tái)下調(diào)用MATLAB進(jìn)行沉降數(shù)據(jù)的平差計(jì)算是非常方便、實(shí)用的。

      (1)MATLAB從VB提取矩陣數(shù)據(jù):利用PutFull Matrix方法將要提取的數(shù)組bb()、q()、g1()傳送至MATLAB中的三個(gè)矩陣變量中。然后通過(guò)Execute(Command as String)方法調(diào)用MATLAB執(zhí)行一條Command字符串決定的MATLAB命令計(jì)算Naa、常數(shù)項(xiàng)K和改正數(shù)V。

      (2)MATLAB將計(jì)算結(jié)果還原到VB數(shù)組中:利用GetFull Matrix方法將上面計(jì)算所得數(shù)據(jù)Naa、改正數(shù)V傳送到VB程序的數(shù)組s1()、s3()中,計(jì)算未知點(diǎn)的改正高程。

      實(shí)現(xiàn)此過(guò)程的主要代碼為:

      Dim matlabobject As Object

      Set matlabobject=CreateObject("matlab.application")

      Call matlabobject.putfullmatrix("tt","base",bb,xb)'把數(shù)據(jù)導(dǎo)入MATLAB

      Call matlabobject.putfullmatrix("cc","base",q,xb)中去

      Call matlabobject.putfullmatrix("dd","base",g1,xb)

      matlabobject.Execute("tt1=tt'")'A轉(zhuǎn)置

      matlabobject.Execute("qq1=inv(cc)")'Q逆

      matlabobject.Execute("nbb=tt*qq1*tt1")'Naa在s1(1,1);中

      Call matlabobject.getfullmatrix("nbb","base",s1,xb)'把數(shù)據(jù)導(dǎo)出

      s2(1,1)=Format(1/s1(1,1),"##,##0.00000")MATLAB中去

      Call matlabobject.putfullmatrix("nbb1","base",s2,xb)

      matlabobject.Execute("kk1=nbb1*dd")'K

      matlabobject.Execute("xx1=qq1*tt1*kk1")'求v

      Call matlabobject.getfullmatrix("xx1","base",s3,xb) matlabobject.Execute("v1=xx1'")'v轉(zhuǎn)置

      matlabobject.Execute("vb1=v1*cc*xx1")'vpv

      本文中數(shù)據(jù)均采用統(tǒng)計(jì)學(xué)工具SPSS22.0軟件,計(jì)量資料為患者的生活質(zhì)量評(píng)分和患者的疼痛評(píng)分,差異比較結(jié)果P<0.05表示有統(tǒng)計(jì)學(xué)意義。

      Call matlabobject.getfullmatrix("vb1","base",s4,xb)

      xn=Format(Sqr(s4(1,1))*1000,"##0.0000")'單位權(quán)中誤差

      End Sub

      4.3沉降解算的實(shí)現(xiàn)方法

      該計(jì)算模塊的對(duì)建筑物的測(cè)量平差后數(shù)據(jù)進(jìn)行處理,沉降分為本次沉降和累計(jì)沉降兩項(xiàng),本次沉降是按觀(guān)測(cè)時(shí)間順序后一次觀(guān)測(cè)與前一次觀(guān)測(cè)之差。累計(jì)沉降量是所有觀(guān)測(cè)本次沉降量的代數(shù)和。

      實(shí)現(xiàn)此程序代碼:

      a1=Form3.msh1.rows-3

      Form4.msh1.rows=b1*a1+1

      'Form4.msh1.cols=Form3.msh1.cols

      For j=1 To b1

      r1=(j-1)*a1+1

      r2=(j-1)*a1

      Form4.msh1.TextMatrix(r1,4)=Str(0)

      Form4.msh1.TextMatrix(r1,5)=Str(0)

      For i=1 To a1

      Form4.msh1.TextMatrix(r2+i,1)=Form3.msh1.TextMatrix(1,j +1)

      Form4.msh1.TextMatrix(r2+i,2)=Form3.msh1.TextMatrix(i+ 1,1)

      Form4.msh1.TextMatrix(r2+i,3)=Form3.msh1.TextMatrix(i+ 1,j+1)

      Next i

      For i=2 To Form3.msh1.rows-3

      Form4.msh1.TextMatrix(r2+i,4)=Format(Val(Form4.msh1. TextMatrix(r2+i,3))-Val(Form4.msh1.TextMatrix(r2+i-1,3)),"##, ##0.0000")Form4.msh1.TextMatrix(r2+i,5)=Format(Val(Form4.msh1. TextMatrix(r2+i-1,5))+Val(Form4.msh1.TextMatrix(r2+i,4)),"##, ##0.0000")

      Next i

      Next j

      4.4數(shù)據(jù)庫(kù)設(shè)計(jì)

      由于沉降觀(guān)測(cè)所得數(shù)據(jù)與解算數(shù)據(jù)模型簡(jiǎn)單,該數(shù)據(jù)庫(kù)采用如下模型設(shè)計(jì)數(shù)據(jù)表:

      表1 數(shù)據(jù)表格式

      5 結(jié)論

      基于VB與Access數(shù)據(jù)庫(kù)程序設(shè)計(jì)的最主要目的在于數(shù)據(jù)處理高效準(zhǔn)確,數(shù)據(jù)模型清晰簡(jiǎn)單,VB窗體設(shè)計(jì)界面美觀(guān),處理操作人性化。設(shè)計(jì)程序的重點(diǎn)是數(shù)據(jù)處理過(guò)程中粗差探測(cè)、數(shù)據(jù)平差和沉降量圖形分析。通過(guò)對(duì)粗差探測(cè)和預(yù)測(cè)模型的研究,決定采用拉達(dá)準(zhǔn)則對(duì)原始數(shù)據(jù)進(jìn)行粗差探測(cè),并刪除包含粗大誤差的數(shù)據(jù);采用條件平差對(duì)數(shù)據(jù)進(jìn)行平差;計(jì)算和曲線(xiàn)圖的繪制。Access數(shù)據(jù)庫(kù)小巧實(shí)用,適合存儲(chǔ)沉降觀(guān)測(cè)的簡(jiǎn)單數(shù)據(jù)。本設(shè)計(jì)能夠在簡(jiǎn)單的數(shù)據(jù)處理方面做到代碼簡(jiǎn)單,功能全面。界面簡(jiǎn)潔,操作便利!

      [1]黃聲享.變形監(jiān)測(cè)數(shù)據(jù)處理 [M].武漢:武漢大學(xué)出版社,2003.

      [2]武漢測(cè)繪科技大學(xué)測(cè)量平差教研室.測(cè)量平差基礎(chǔ) [M].北京:測(cè)繪出版社,1996.

      [3]The Math-Works Inc.Matrix VB Guide[z].The Math-Works Inc,2000.

      TU196.2[文獻(xiàn)碼]B

      1000-405X(2016)-7-326-2

      猜你喜歡
      程序設(shè)計(jì)數(shù)據(jù)處理觀(guān)測(cè)
      觀(guān)測(cè)到恒星死亡瞬間
      軍事文摘(2023年18期)2023-11-03 09:45:42
      認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補(bǔ)與極大似然估計(jì)法*
      ILWT-EEMD數(shù)據(jù)處理的ELM滾動(dòng)軸承故障診斷
      基于Visual Studio Code的C語(yǔ)言程序設(shè)計(jì)實(shí)踐教學(xué)探索
      從細(xì)節(jié)入手,談PLC程序設(shè)計(jì)技巧
      電子制作(2019年9期)2019-05-30 09:42:04
      天測(cè)與測(cè)地VLBI 測(cè)地站周?chē)匦斡^(guān)測(cè)遮掩的討論
      高職高專(zhuān)院校C語(yǔ)言程序設(shè)計(jì)教學(xué)改革探索
      可觀(guān)測(cè)宇宙
      太空探索(2016年7期)2016-07-10 12:10:15
      基于希爾伯特- 黃變換的去噪法在外測(cè)數(shù)據(jù)處理中的應(yīng)用
      高分辨率對(duì)地觀(guān)測(cè)系統(tǒng)
      太空探索(2015年8期)2015-07-18 11:04:44
      通化市| 九寨沟县| 铅山县| 防城港市| 右玉县| 玛纳斯县| 香港 | 临城县| 泾阳县| 阿图什市| 枝江市| 伊川县| 建德市| 海安县| 长宁区| 无极县| 昌平区| 井陉县| 达尔| 新丰县| 资溪县| 鸡西市| 大名县| 安多县| 固始县| 博爱县| 寿阳县| 麻栗坡县| 安丘市| 土默特左旗| 南投县| 瑞昌市| 阿拉尔市| 濮阳县| 洛宁县| 轮台县| 兰西县| 纳雍县| 临漳县| 涿鹿县| 萍乡市|