GPS單點定位實驗報告(共9頁)_第1頁
GPS單點定位實驗報告(共9頁)_第2頁
GPS單點定位實驗報告(共9頁)_第3頁
GPS單點定位實驗報告(共9頁)_第4頁
GPS單點定位實驗報告(共9頁)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、GPS原理與應(yīng)用實驗題 目: GPS單點定位 專 業(yè): 測繪工程 班 級: 12-01 學(xué) 號: 2012212600 姓 名: 王威 指導(dǎo)教師: 陶庭葉 時間:2014.11目錄1、 實驗?zāi)康?32、 實驗原理.33、 實驗內(nèi)容.34、 實驗效果圖.95、 實驗總結(jié).9一 實驗?zāi)康?.深入了解單點定位的計算過程;2.加強單點定位基本公式和誤差方程式,法線方程式的記憶;3.通過上機(jī)調(diào)試程序加強動手能力的培養(yǎng)。二實驗原理 一個接收機(jī)接受三個火三個以上衛(wèi)星信號,得出衛(wèi)星坐標(biāo)和偽距,利用間接平差計算接收機(jī)的坐標(biāo)。 三實驗內(nèi)容1.程序流程圖輸入原始數(shù)據(jù) 打印輸出精度評定列出偽距觀測方程循環(huán)多次間接平差

2、得出新的接收機(jī)坐標(biāo)X,Y,Z組成誤差方程組AiX+Li=Vi得出各個坐標(biāo)的l,m,n偽距方程線性化 2、實驗數(shù)據(jù) 3、實驗程序代碼Private Sub Command1_Click()CommonDialog1.Filter = TXT files|*.txt|CommonDialog1.FilterIndex = 1CommonDialog1.ShowOpenOpen Me.CommonDialog1.FileName For Input As #1Do While Not EOF(1)Line Input #1, Texttextbuff = textbuff + Text + vbCr

3、LfLoopClose #1kk = MSFlexGrid1.Rows - 1Dim aReDim a(kk - 1)a = Split(textbuff, vbCrLf)For j = 1 To kk For i = 1 To 5 MSFlexGrid1.TextMatrix(j, i) = a(j - 1 + 5 * (i - 1)Next iNext jFor k = 1 To kkMSFlexGrid1.TextMatrix(k, 0) = 第 & k & 個點Next kMSFlexGrid1.TextMatrix(0, 1) = XMSFlexGrid1.TextMatrix(0,

4、 2) = YMSFlexGrid1.TextMatrix(0, 3) = ZMSFlexGrid1.TextMatrix(0, 4) = 偽距MSFlexGrid1.TextMatrix(0, 5) = 鐘差End SubPrivate Sub Command2_Click()kk = MSFlexGrid1.Rows - 1X0 = 0: Y0 = 0: Z0 = 0c = 299792458Dim a()ReDim a(kk - 1, 3)Dim ll()ReDim ll(kk - 1, 0)For ii = 1 To 100For i = 1 To kk l = (MSFlexGrid

5、1.TextMatrix(i, 1) - X0) / Sqr(MSFlexGrid1.TextMatrix(i, 1) - X0) 2 + (MSFlexGrid1.TextMatrix(i, 2) - Y0) 2 + (MSFlexGrid1.TextMatrix(i, 3) - Z0) 2) m = (MSFlexGrid1.TextMatrix(i, 2) - Y0) / Sqr(MSFlexGrid1.TextMatrix(i, 1) - X0) 2 + (MSFlexGrid1.TextMatrix(i, 2) - Y0) 2 + (MSFlexGrid1.TextMatrix(i,

6、 3) - Z0) 2) n = (MSFlexGrid1.TextMatrix(i, 3) - Z0) / Sqr(MSFlexGrid1.TextMatrix(i, 1) - X0) 2 + (MSFlexGrid1.TextMatrix(i, 2) - Y0) 2 + (MSFlexGrid1.TextMatrix(i, 3) - Z0) 2) a(i - 1, 0) = l a(i - 1, 1) = m a(i - 1, 2) = n a(i - 1, 3) = -1lk = MSFlexGrid1.TextMatrix(i, 4) - Sqr(MSFlexGrid1.TextMat

7、rix(i, 1) - X0) 2 + (MSFlexGrid1.TextMatrix(i, 2) - Y0) 2 + (MSFlexGrid1.TextMatrix(i, 3) - Z0) 2) + c * MSFlexGrid1.TextMatrix(i, 5)ll(i - 1, 0) = lkNext igzs = xc(qiuni(xc(zz(a), a), xc(zz(a), ll)X0 = X0 - gzs(0, 0)Y0 = Y0 - gzs(1, 0)Z0 = Z0 - gzs(2, 0)j = j + 1Next iiText2.Text = X= & X0 & vbCrLf

8、 & vbCrLf & Y= & Y0 & vbCrLf & vbCrLf & Z= & Z0V = jian(ll, xc(a, gzs)zjl = xc(zz(V), V)0 = Sqr(zjl(0, 0) / (kk - 3)Qx = qiuni(xc(zz(a), a)Text3.Text = X= & 0 * Sqr(Qx(0, 0) & vbCrLf & vbCrLf & Y= & 0 * Sqr(Qx(1, 1) & vbCrLf & vbCrLf & Z= & 0 * Sqr(Qx(2, 2)End SubPrivate Sub Form_Load()MSFlexGrid1.C

9、olWidth(1) = 1300MSFlexGrid1.ColWidth(2) = 1300MSFlexGrid1.ColWidth(3) = 1300MSFlexGrid1.ColWidth(4) = 1300Text2.Text = Text3.Text = End Sub矩陣相減Public Function jian(m, n)Dim i, j As IntegerIf UBound(m, 1) UBound(n, 1) Or UBound(m, 2) UBound(n, 2) ThenMsgBox (請確認(rèn)輸入數(shù)組是否可以相減!)ElseDim c()ReDim c(UBound(

10、m, 1), UBound(n, 2)For i = 0 To UBound(c, 1)For j = 0 To UBound(c, 2)c(i, j) = m(i, j) - n(i, j)Next jNext ijian = cEnd IfEnd Function矩陣的轉(zhuǎn)置Public Function zz(a)Dim i As Integer, j As Integer, t As Integer, b()If UBound(a, 1) = UBound(a, 2) ThenFor i = 0 To UBound(a, 1)For j = 0 To UBound(a, 2)If i j

11、 Thent = a(i, j)a(i, j) = a(j, i)a(j, i) = tEnd IfNext jNext izz = aElseReDim b(UBound(a, 2), UBound(a, 1)For i = 0 To UBound(a, 2)For j = 0 To UBound(a, 1)b(i, j) = a(j, i)Next jNext izz = bEnd IfEnd Function兩矩陣相乘Public Function xc(a, b)Dim i As Integer, j As Integer, k As IntegerIf UBound(a, 2) UB

12、ound(b, 1) ThenMsgBox (這兩個矩陣不能夠相乘)Exit FunctionEnd IfReDim sd(UBound(a, 1), UBound(b, 2)For i = 0 To UBound(a, 1)For j = 0 To UBound(b, 2)For k = 0 To UBound(b, 1)sd(i, j) = sd(i, j) + a(i, k) * b(k, j)Next kNext jNext ixc = sdEnd FunctionPublic Function qiuni(a)Dim c, m%, n%, p#, l%, i%, j%, ab#m =

13、 UBound(a, 1)n = UBound(a, 2)If m n ThenMsgBox (該矩陣不可逆!)Exit FunctionEnd IfReDim c(m, 2 * n + 1)For i = 0 To m For j = 0 To n c(i, j) = a(i, j) Next jNext iFor i = 0 To m For j = m + 1 To 2 * m + 1 c(i, j) = 0 Next jNext ii = 0For j = m + 1 To 2 * m + 1 c(i, j) = 1 i = i + 1 Next jFor k = 0 To n If

14、c(k, k) = 0 Then For i = k + 1 To n If c(i, k) 0 Then GoTo this End If Next i If i = n + 1 Then MsgBox (該矩陣不可逆!) Exit Function End Ifthis: For j = 0 To 2 * m + 1 p = c(k, j) c(k, j) = c(i, j) c(i, j) = p Next j End Ifab = 1# / c(k, k)For j = 0 To 2 * m + 1 c(k, j) = c(k, j) * abNext jFor i = 0 To n If i k Then For j = 0 To 2 * m + 1 If j k Then c(i, j) = c(i, j) - c(i, k) * c(k, j) End If Next j c(i, k) = 0 End IfNext i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論