控制测量学编程实验报告

时间:2024.4.9

控制测量学

实验报告

专    业:测绘工程

班级学号:

编 写 人:

指导老师:

日    期:

实验四

一、实验名称

三差改正与电测波测距归算

二、实验目的与要求

   为了强化对三差改正与电测波测距归算的学习,通过已经掌握的VB语言的知识,利用VB编写一个简单的程序,用于将地面观测的水平方向归算至椭球面(包括垂线偏差改正,标高差改正,截面差改正)和将地面观测的长度归算至椭球面(电磁波测距的归算)。

三、实验原理和过程

标高差改正:

垂线偏差改正公式为:

截面差改正:

电磁波测距的归算:

四、程序代码

Private Sub Command1_Click()

'计算垂线偏差改正

Text5.Enabled = True

  Text5.Text = (Text2.Text * Cos(Text3.Text) - Text1.Text * Sin(Text3.Text)) * Tan(Text4.Text)

End Sub

Private Sub Command2_Click()

'求标高差改正

Text11.Enabled = True

  Text11.Text = 0.5 * Text9.Text * Text9.Text * Text8.Text * 206265 / Text10.Text * Sin(2 * Text7.Text) * Cos(Text6.Text) * Cos(Text6.Text)

End Sub

Private Sub Command3_Click()

Text16.Enabled = True

  '计算截面差改正

  Text16.Text = Text12.Text * Text12.Text / 12 * 206265 * Text13.Text * Text13.Text / Text14.Text / Text14.Text * Cos(Text15.Text) * Cos(Text15.Text)

End Sub

Private Sub Command4_Click()

Text21.Enabled = True

Dim a#, b#, c#, d#

'电磁波测距的归算

a = Text17.Text: b = Text18.Text: c = Text19.Text: d = Text20.Text

Text21.Text = a * Sqr((1 - (c - b) * (c - b) / a / a) / (1 + b / e) / (1 + c / e)) + a * a * a / 24 / e / e

End Sub

Private Sub Form_Load()

'把所有的text清空

  Text1.Text = 0: Text2.Text = 0: Text3.Text = 0: Text4.Text = 0: Text5.Text = 0

  Text6.Text = 0: Text7.Text = 0: Text8.Text = 0: Text9.Text = 0: Text10.Text = 0

  Text11.Text = 0: Text12.Text = 0: Text13.Text = 0: Text14.Text = 0: Text15.Text = 0

  Text16.Text = 0: Text17.Text = 0: Text18.Text = 0: Text19.Text = 0: Text20.Text = 0

  Text21.Text = 0

  Text21.Enabled = False: Text11.Enabled = False: Text5.Enabled = False: Text16.Enabled = False:

End Sub

五、实验结果

 

六、实验体会

     通过本次实验,我们进一步的将vb程序设计与测量专业紧密的联系在了一起,让我们进一步学会怎样用编程的方法将测量变得简单化,力求将所有复杂的计算通过编程方法快速的计算出来。

控制测量学

实验报告

专    业:测绘工程

班级学号:

编 写 人:

指导老师:

日    期:

实验五

一、   实验名称

高斯坐标正算

二、   实验要求与目的

要求在VB环境中设计一个界面,在输入大地坐标的经度和纬度后能够计算出高斯平面内的x坐标和y坐标,并把计算结果输出显示在界面上。

三、   实验安排

实验设计界面如下:

四、   实验原理

五、   程序代码

    Private Sub Form_Load()

Text1.Text = "": Text2.Text = "": Text3.Text = ""

Text4.Text = "": Text5.Text = "": Text6.Text = ""

 Text7.Text = "": Text8.Text = ""

End Sub

  '高斯坐标正算

Private Sub DadiZs()

Dim t As Double, Itp As Double, X0 As Double, N As Double, L0 As Double

Dim v As Double, ll As Double, W As Double, M As Double

 Const Pi = 3.14159265358979, p = 206264.806

Lat = Radian(Lat)

Lon = Radian(Lon)

L0 = Radian(Lo)

    a = 6378140             '75椭球参数

    b = 6356755.28815753

    ep = 0.006694384999588

    ep1 = 0.006739501819473

    f = (a - b) / a

    c = a ^ 2 / b

    d = b ^ 2 / a

    X0 = 111133.0047 * (Lat * 180 / Pi) - (32009.8575 * Sin(Lat) + 133.9602 * (Sin(Lat)) ^ 3 + 0.6976 * (Sin(Lat)) ^ 5 + 0.0039 * (Sin(Lat)) ^ 7) * Cos(Lat)

End If

ll = Lon - L0

t = Tan(Lat)

Itp = ep1 * Cos(Lat) ^ 2

W = Sqr(1 - ep * Sin(Lat) ^ 2)

v = Sqr(1 + ep1 * Cos(Lat) ^ 2)

M = c / v ^ 3

N = a / W

x = X0 + N * t * (Cos(Lat)) ^ 2 * ll ^ 2 / 2 + N * t * (5 - t * t + 9 * Itp ^ 2 + 4 * Itp ^ 4) * (Cos(Lat)) ^ 4 * ll ^ 4 / 24 + N * t * (61 - 58 * t ^ 2 + t ^ 4 + 270 * Itp ^ 2 - 330 * t ^ 2 * Itp ^ 2) * (Cos(Lat)) ^ 6 * ll ^ 6 / 720 + N * t * (1385 - 3111 * t ^ 2 + 543 * t ^ 4 - t ^ 6) * Cos(Lat) ^ 8 * ll ^ 8 / 40320

y = N * Cos(Lat) * ll + N * (1 - t * t + Itp) * (Cos(Lat)) ^ 3 * ll ^ 3 / 6 + N * (5 - 18 * t * t + t ^ 4 + 14 * Itp - 58 * Itp * t * t) * (Cos(Lat)) ^ 5 * ll ^ 5 / 120 + N * (61 - 479 * t ^ 2 + 179 * t ^ 4 - t ^ 6) * Cos(Lat) ^ 7 * ll ^ 7 / 5040

r = Sin(Lat) * ll + Sin(Lat) * (Cos(Lat)) ^ 2 * ll ^ 3 * (1 + 3 * Itp + 2 * Itp ^ 2) / 3 + Sin(Lat) * (Cos(Lat)) ^ 4 * ll ^ 5 * (2 - t * t) / 15

r = Degree(r)

y = y + 500000# 

  Text7.Text = X: Text8.Text = Y

End Sub

六、   实验结果

以教材上的例题为例:输入数据            计算结果输出:

 

七、   实验体会

本次高斯坐标正算编程并不是一件简单的事,并不是因为计算复杂,而是公式分散得太散,但通过看书终于找到了一些相关的资料和例题,帮助我完成了本次实验任务,希望下次能做得更好。

实验六

一、   实验名称

     高斯坐标反算

二、   实验要求与目的

    要求在VB环境中设计一个界面,在输入高斯平面内的x坐标和y坐标后能够计算出大地坐标的经度和纬度,并把计算结果输出显示在界面上。

三、   实验原理

     

四、   程序代码

Private Sub DadiFs()

Dim t As Double, Itp As Double, X0 As Double, Bf As Double, N As Double

Dim v As Double, ll As Double, W As Double, M As Double, L0 As Double

Dim a, b, c, d, e, f As Double

X = Text1.Text: Y = Text2.Text

L0 = Radian(Lo)

X0 = X * 0.000001

Y = Y - 500000#

If Tq = 0 Then

    a = 6378245

    b = 6356863.01877305

    ep = 0.006693421622966

    ep1 = 0.006738525414683

    f = (a - b) / a

    c = a ^ 2 / b

    d = b ^ 2 / a

    If X0 < 3 Then

        Bf = 9.04353301294 * X0 - 0.00000049604 * X0 ^ 2 - 0.00075310733 * X0 ^ 3 - 0.00000084307 * X0 ^ 4 - 0.00000426055 * X0 ^ 5 - 0.00000010148 * X0 ^ 6

    ElseIf X0 < 6 Then

        Bf = 27.11115372595 + 9.02468257083 * (X0 - 3) - 0.00579740442 * (X0 - 3) ^ 2 - 0.00043532572 * (X0 - 3) ^ 3 + 0.00004857285 * (X0 - 3) ^ 4 + 0.00000215727 * (X0 - 3) ^ 5 - 0.00000019399 * (X0 - 3) ^ 6

    End If

Else

    a = 6378140             '75椭球参数

    b = 6356755.28815753

    ep = 0.006694384999588

    ep1 = 0.006739501819473

    f = (a - b) / a

    c = a ^ 2 / b

    d = b ^ 2 / a

    If X0 < 3 Then

        Bf = 9.04369066313 * X0 - 0.00000049618 * X0 ^ 2 - 0.00075325505 * X0 ^ 3 - 0.0000008433 * X0 ^ 4 - 0.00000426157 * X0 ^ 5 - 0.0000001015 * X0 ^ 6

    ElseIf X0 < 6 Then

        Bf = 27.11162289465 + 9.02483657729 * (X0 - 3) - 0.00579850656 * (X0 - 3) ^ 2 - 0.00043540029 * (X0 - 3) ^ 3 + 0.00004858357 * (X0 - 3) ^ 4 + 0.00000215769 * (X0 - 3) ^ 5 - 0.00000019404 * (X0 - 3) ^ 6

    End If

End If

Bf = Bf * Pi / 180#

t = Tan(Bf)

Itp = ep1 * Cos(Bf) ^ 2

W = Sqr(1 - ep * Sin(Bf) ^ 2)

v = Sqr(1 + ep1 * Cos(Bf) ^ 2)

M = c / v ^ 3

N = a / W

Lat = Bf - 0.5 * v ^ 2 * t * ((Y / N) ^ 2 - (5 + 3 * t * t + Itp - 9 * Itp * t * t) * (Y / N) ^ 4 / 12 + (61 + 90 * t * t + 45 * t ^ 4) * (Y / N) ^ 6 / 360)

ll = ((Y / N) - (1 + 2 * t * t + Itp) * (Y / N) ^ 3 / 6 + (5 + 28 * t * t + 24 * t ^ 4 + 6 * Itp + 8 * Itp * t * t) * (Y / N) ^ 5 / 120) / Cos(Bf)

r = Y * t / N - Y ^ 3 * t * (1 + t * t - Itp) / (3 * N ^ 3) + Y ^ 5 * t * (2 + 5 * t * t + 3 * t ^ 4) / (15 * N ^ 5)

Lat = Degree(Lat)

Lon = Degree(L0 + ll)

a = Lat * 180 / Pi: Text3.Text = Int(a)

b = a - Int(a): b = b * 60: Text5.Text = Int(b)

c = b - Int(b): Text7.Text = c * 60

d = Lat * 180 / Pi: Text4.Text = Int(d)

e = d - Int(d): e = e * 60: Text6.Text = Int(e)

f = e - Int(e): Text8.Text = f * 60

End Sub

Private Sub Form_Load()

Text1.Text = "": Text2.Text = "": Text3.Text = ""

Text4.Text = "": Text5.Text = "": Text6.Text = ""

Text7.Text = "": Text8.Text = ""

End Sub

五、   实验结果

数据输入: 

  数据输出:

六、   实验体会

    本次高斯坐标反算编程跟上次正算一样,所以这次比较顺利地完成了此次实验任务,经过多次程序编程,切实的感受到VB程序设计给测量工作内业计算带来的方便,公式简单化,只需要输入数据,那些复杂的计算就能由计算机来完成,节约时间,方便快捷,在今后的学习工作中将会有更广的应用空间。

更多相关推荐:
控制测量实验报告

控制测量实习报告姓名邸凯院系资源工程学院专业测绘工程一班学号20xx092549实习地点厦门海沧区指导教师高鹏20xx年12月控制测量实习报告20xx09254911资源测绘1班邸凯一实习单位福建省地质测绘院厦...

控制测量学课间实验报告-学生版

测绘工程专业控制测量学课间实验报告课程名称控制测量学专业班级任课教师学年学期实习小组成员实习报告整理土木建筑学院测绘与国土信息工程系20xx年6月23日实验一自动安平水准仪的认识及读数练习一实习目的及要求1熟悉...

控制测量实验报告

实验报告课程名称系部名称专业班级学生姓名彭博学号指导教师黑龙江工程学院教务处制注1此报告为参考格式各栏项目可根据实际情况进行调整2实验成绩以优90100良8089中7079及格6069不及格60以下五个等级评定

控制测量实验报告

控制测量实验报告实验一精密光学经纬仪及方向法水平角观测10学时一目的学会J2经纬仪按方向法进行观测并掌握此法的操作程序和计算方法并了解测站上各项限差要求二要求1预习好方向观测法的观测程序2弄清方向观测法记录表格...

控制测量实习报告 (2)

学院市政与测绘工程学院专业测绘工程姓名陈良明班级1002602学号20方案名称控制测量实习指导老师鄢志辉1概述11实习目的1巩固课堂教学知识加深对控制测量学的基本理论的理解能够用有关理论指导作业实践做到理论与实...

控制测量实验报告1

控制测量实验报告实验项目J2光学经纬仪认识及读数练习系班小学姓实验成一实验目的了解J2光学经纬仪的基本结构及各螺旋的作用学会读数的方法二实验要求1将J2光学经纬仪与书本上的相应的图进行对照了解仪器的各部分名称及...

控制测量学实习报告

控制测量学实习报告姓名班级学号指导老师实习日期吴勤伟06351214赵宝贵20xx年6月一序言1实习名称控制测量实习2实习目的1巩固课堂教学知识加深对控制测量学基本理论的理解能够用有关理论指导作业实践做到理论与...

预测控制实验报告

动态矩阵控制算法实验报告院系电子信息学院姓名谈敏佳学号1420xx053专业导航制导与控制导师杨奕飞MATLAB环境下动态矩阵控制实验一实验目的通过对动态矩阵控制的MATLAB仿真发现其对直接处理带有纯滞后大惯...

控制测量实习报告

控制测量实习报告学生姓名黄伟学号20xx092513专业测绘工程班级12测绘工程实习日期20xx820xx12实习地点漳州市云霄县各乡镇指导老师张高兴一实习概况1实习时间20xx820xx122实习地点漳州市云...

控制测量实习报告

控制测量实习报告级测绘一班学号1072143138姓名房新明指导老师张会战郭义组数第四组班级10一实习目的本次实习在内容安排上充分考虑了教学实习的要求同学们有机会对控制测量整个工作程序进行一次全面系统的实践通过...

图根控制测量实习报告吴泽成

图根控制测量实习报告班级12地理1班学号1236126姓名吴泽成组号第七组指导老师杜向峰孙颖实习概况一实习目的图根控制测量实习是在完成测量技术基础课程理论教学后进行为期2周的综合实训旨在为后续的专业课程学习夯实...

控制测量实习报告

课程编号20xx1024102课程性质必修数字测图实习数字测图实习报告学院测绘学院专业测绘工程地点校内实习基地班级班组号组姓名学号教师苏新洲申丽丽20xx年10月6日至20xx年10月26日目录一实习目的和意义...

控制测量实验报告(29篇)