5800导线近似平差程序及应用
- 格式:doc
- 大小:720.50 KB
- 文档页数:20
5800通用线路测量程序及编程原理关于坐标计算内核1、程序采用数据保存在扩充存储的方式,更换或补充数据不用修改程序。
2、线路采用线路号来区分,程序内部和使用时都用自然里程参加计算。
3、平曲线不用区分匝道和主线,所有平曲线都转化成交点资料,此交点可以缓和曲线不对称、不完整,主线通常由交点起算、匝道均由曲线起点起算。
每条平曲线交点格式为9个数据。
4、直线、圆曲线、缓和曲线分别用数学模型不同的计算子程序,保证了计算速度。
直线、圆曲线子程序为精确公式,缓和曲线计算子程序为原创的复化段数可调的复化高斯2节点公式,计算精度可自由控制。
(现暂改为固定4次复化)************************************************************************************** *************数据库编制规则基本规则:圆曲线半径右转为正,坡度上坡为正,角度单位为度,边桩转角右转为正,线路号为非负整数,数据库中的直圆里程应该在起点和缓圆各输入一个互差0.0001的里程。
圆直点同样处理。
一、目录部分:格式为:起点里程、终点里程、平曲线资料起始位置、竖曲线资料起始位置、坡度资料起始位置起点里程、终点里程、平曲线资料起始位置、竖曲线资料起始位置、坡度资料起始位置……各条线路依次连续排列。
二、平曲线部分:格式为:圆半径起点里程、缓圆里程、圆缓里程、终点里程、切线长、交点X、交点Y、切线方位角、圆半径起点里程、缓圆里程、圆缓里程、终点里程、切线长、交点X、交点Y、切线方位角、圆半径……终点里程、圆半径各交点依次连续排列。
主线按图纸设计数据整理,匝道的线元数据组合成交点组合时,每条曲线由直线、缓和曲线、圆曲线、缓和曲线、直线组成,对不完整缓曲要对数据进行简单处理,不完整缓曲可以划归任一侧,不完整缓曲所在的起(终)点里程改为负,交点坐标输入为起点坐标,切线长输入0即可。
卡西欧5800基本测量程序(完整版)卡西欧5800 程序(完整版)说明:本程序适用于公路、桥梁、隧道测量。
本程序简单、方便、快捷、拓展功能宽,使用时只需按曲线要素表输入一次就可以计算整条线路(包括高程、超高段横坡),能正、反算,在已知坐标下可以反算出该点桩号及相对宽度,拓展功能有,放边、仰坡、隧道断面测量、开挖轮廓线等。
主程序:MAIN"ZH(θ) F(1)"?M↓ (0为正算、1为反算)If M=θ:Then "ZHUANG HAO"?A:"KUAN DU"?W:Else"X="?H:"Y="?W:"Z="?Q:IfEnd↓(第一个交点参数)(交点桩号)…→P:(切线长度)…→T:(曲线总长)…→S:(圆半径)…→R=:(缓和曲线长)…→L:(第一方位角)…→U:(第二方位角)…→V:(交点X坐标)…→N:(交点Y坐标)…→E:(第一直线长、无为0)…→D:(第一坡度)…→Z〔8〕:(第二坡度)…→ Z〔9〕: (缓和曲线超高段长度)…→Z〔10〕:(曲线偏向,右偏为+1,左偏为-1)…→K ↓If M=θ:Then If A<P-T:Then goto 1 :IfEnd:IfEnd↓Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓………… (中间交点参数)Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓………… (最后一个交点参数)If M=θ:Then If A>P-T+S+D:Then Goto 1 :IfEnd:IfEnd↓Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓Lb1 1:"NO TASK"↓Lb1 2:If M=1:Then If A=1:Then "ZHUANG HAO":Z◢"SJ KUAN DU":B◢IfEnd:IfEnd↓"-------END-------"KUAN DU (拓展功能程序,用于反算)1→M:Prog"MAIN"↓Z→A:W→E:θ→W↓Prog"GAO CHENG"↓E→W↓Q-F→P↓If P≤……(从小至大):Then ……→D:Goto 1:IfEnd↓……(同上)Lb1 1↓"……":D◢(同上) ◢"----------END---------"YUANK(B÷(2R))→F↓2R Sin(K F r)→C ↓J+F r→J ↓Prog"XZBH"HHQXB-B^5÷(9θ(RL)2)→C ↓KB2÷(6RL)→F ↓J+ F r→J↓Prog"XZBH"PYJSIf O=θ:Then"YUAN":J+F r→J:IfEnd↓If O=1:Then"HHQX":J+2F r→J:IfEnd↓If O=2:Then"LINE":J+18θ→J:IfEnd↓W→C↓If A>P-T+S-L:Then J-9θ→J:Else J+9θ→J:IfEnd↓Prog"XZBH"↓"X=":X◢"Y=":Y◢QXCS(有改)Prog"QDZB"↓If A≤P-T+L:Then A-P+T→B:U→J:1→O: Prog"HHQX": Goto 1 :IfEnd↓If A≤P-T+S-L:Then A-P+T-L→B:θ→0:L-L^3÷(90R2)→C:KL÷(6R)→F:U+F r→J: Prog"XZBH":U+3F r→J: Prog"YUAN": Goto1:IfEnd↓If A≤P-T+S:Then P-T+S-A→B:1→O:-K→K:V+180→J: Prog"HHQX": Goto 1 :IfEnd↓If A≤P-T+S+D:Then 2→O:A-P+T-S→C: Prog"XZBH":IfEnd↓Lb1 1:↓Prog"PYJS"↓Prog"GA0 CHENG"QDZBN→X:E→Y:T→C↓If A>P-T+S-L:Then V→J: Else U+18θ→J:IfEnd↓Prog"XZBH"↓X→Z〔5〕:Y→Z〔6〕JDTZIf Z〔1〕< θ:Then Z〔1〕+ 36θ→Z[1]:IfEnd↓If Z〔1〕≥ 36θ:Then Z〔1〕- 36θ→Z[1]:IfEnd↓If Z〔2〕< θ:Then Z〔2〕+ 36θ→Z[2]:IfEnd↓If Z〔2〕≥ 36θ:Then Z〔2〕- 36θ→Z[2]:IfEnd↓FWJθ→I:θ→J↓Pol(H-G,W-Z) ↓J<θ⇒J+36θ→J↓J→FDOTLINEPol(H-X,W-Y):I→N↓Pol(G-H,Z-W):I→E ↓Pol(X-G,Y-Z):I→D↓(N+E+D)÷2→I↓√(I(I-N)(I-E)(I-D))→I ↓2I÷D→I ↓ZSPDIf A≤P-T+S+D:Then Prog"QXCS":θ→K:IfEnd ↓FSPDIf K=-1:Then If Z〔1〕< Z〔2〕:Then If F≤Z〔1〕:Then Goto 1 :IfEnd:If F≥Z〔2〕:Then Goto 1 :IfEnd:Else If F≤Z〔1〕:Then F≥Z〔2〕:Then Goto 1 :IfEnd:IfEnd:IfEnd:IfEnd↓If K=1:Then If Z〔1〕> Z〔2〕:Then If F≥Z〔1〕:Then Goto 1 :IfEnd :If F≤Z〔2〕:Then Goto 1 :IfEnd:Else If F≥Z〔1〕:Then If F≤Z[2]:Then Goto 1 :IfEnd:IfEnd:IfEnd:IfEnd↓θ→A: Goto 2↓Lb1 1↓If O=θ:Then Prog"FSYUAN":IfEnd↓If O=1:Then Prog"FSHHQX":IfEnd↓1→A↓Lb1 2FSTJU-90K→Z[1]↓V-90K→Z[2]↓Prog"JDTZ"↓P-T→A↓-1→O↓Prog"JDZB"↓Prog"FSPD"↓If A=θ:Then Goto 1 :IfEnd↓(有改)Z[1]→Z[1]: Z[1]+K(L÷(2R))r→Z[2]:1→O↓Prog"JDTZ"↓Prog"JDZB"↓Prog"FSPD"↓If A=1:Then θ→K: Goto 2 :IfEnd↓Z[5]→X:Z[6]→Y:(KL)÷(6R)→F:L-L^3÷(90R2)→C:U+F r→J↓Prog"XZBH"↓U+3F r+90K→J:R→C↓Prog"XZBH"↓X→G:Y→Z↓Prog"FWJ"↓Z[2]→Z[1]:Z[1]+K((S-2L)÷R)r→Z[2]:θ→0↓Prog"JDTZ"↓Prog"FSPD"↓If A=1:Then θ→K:Goto 2:IfEnd↓-K→K:V+9θK→Z[1]:Z[1]+K(L÷(2R))r→Z[2]:1→O↓Prog"JDTZ"↓P-T+S→A↓Prog"JDZB"↓Prog"FSPD"↓If A=1:Then θ→K:Goto 2:IfEnd↓Lb1 1↓If D>θ:Then P-T+S→A:Prog"FSLINE":If A=1:Then θ→K:IfEnd:IfEnd↓Lb1 2FSYUAN"YUAN"↓36θ+K(F-Z[1])→F ↓F≥36θ⇒F-36θ→F⊿↓P-T+L+πRF÷18θ→Z:If K=1:Then R-I→B: Else I-R→B:IfEnd↓FSHHQX"HHQX"↓Z[5]→X:Z[6]→Y ↓Z[1]+18θ→J:R→C↓Prog"XZBH"↓X→G:Y→Z↓Z[5]→X:Z[6]→Y ↓Prog"DOTLINE"↓If I<1:Then θ→B:Goto 3: Else I→B: Prog"FSHHQX1":I→Z[7]:B+I÷10→B: Prog"FSHHQX1":If I>Z[7] :Then Goto 1: Else:Goto 2:IfEnd:IfEnd↓Lb1 1↓B-I÷2→B: Prog"FSHHQX1"↓If I<1:Then -I→I:Goto 3: Else Goto 1:IfEnd↓Lb1 2↓B+I÷2→B: Prog"FSHHQX1"↓If I<1:Then Goto 3: Else Goto 2:IfEnd↓(有改)Lb1 3↓If A>P-T+L:Then P-T+S-B-I→Z: Else P-T+B+I→Z:IfEnd↓If K=1:Then If A<P-T+S-L:Then D-E→B: Else E-D→B:IfEnd:IfEnd ↓If K=-1:Then If A<P-T+S-L:Then E-D→B: Else D-E→B:IfEnd:IfEndFSHHQX1Z[5]→X:Z[6]→Y:Z[1]+9θK→J↓Prog"HHQX"↓X→Z[3]:Y→Z[4]↓R→C:J+2F r+9θK→J↓Prog"XZBH"↓X→G:Y→Z↓Z[3]→X:Z[4]→Y ↓Prog"DOTLINE"Prog"QDZB"↓Z[5]→Z[3]:Z[6]→Z[4] ↓If O=-1:Then P-T+S→A: Prog"QDZB":Z[3]→Z[5]:Z[4]→Z[6]: Else Z[1]+9θK+K(L÷(6R))r→J:L-L^3÷(9θR2)→C: Prog"XZBH":IfEnd ↓(Z[6]-Y+Xtan(Z[2])-Z[5]tan(Z[1]))÷(tan(Z[2])-tan(Z[1]))→G ↓tanZ[2](G-X)+Y→Z↓Prog"FWJ"ZFXZIf M=θ:Then Prog"ZSPD": Else Prog"FSTJ":IfEndFSLINEProg"QDZB"↓X→G:Y→Z:J→N↓Prog"FWJ"↓N→J:F-J→F↓Icos(F)→G↓If G≤D:Then If A>P-T+S-L:Then P-T+S+G→Z:Isin(F)→B:Else P-T-G→Z:-Isin(F)→B:IfEnd :1→A:2→O: Else θ→A:IfEndX+Ccos(J)→X↓Y+Csin(J)→YHENG POIf A≤P-T+L-Z[10] :Then Z[8]→V:Goto 1:IfEnd↓If A≤P-T+L:Then (Z[9]-Z[8])÷Z[10]→E:Z[8]+(A-P+T-L+Z[10])E→V: Goto 1:IfEnd↓If A≤P-T+S-L:Then Z[9]→V:Goto 1:IfEnd↓If A≤P-T+S-L+Z[10]:Then (Z[8]-Z[9])÷Z[10]→E:Z[9]+(A-P+T-S+L)E→V: Goto 1:IfEnd↓Z[8]→V ↓Lb1 1GAO CHENG……(交点桩号)→O:……(交点高程)→D:……(小桩号坡度)→N:……(切线长度)→G:……(圆曲线半径)→R ↓If A≤O-G:Then θ→K: Goto 1:IfEnd↓If A≤O+G:Then 1→K: Goto 1:IfEnd↓(K=0为直线、K=1为凸圆、K=-1为凹圆)……(同上)Lb1 1:Prog"HENG PO"↓K(A-O+G)2÷(2R)→P ↓D+N(A-O)-P+WV→F↓"DM":F◢FWJJS (测回法测坐标)A"XA": B"YA":C"XB": D"YB": K"CHANG DU": G"JIAO DU"↓I=0:J=0:Pol(C-A,D-B):J<0⇒J=J+360⊿↓E=J+G↓J"FWJ"◢X"X"=A+KcosE◢Y"Y"=B+KsinE◢"-------END-------"说明:"JIAO DU"顺时钟为正、逆时针为负,"XA"、"YA"为测站点坐标、"XB"、"YB"为后视点坐标,"X"、"Y"为前视即待测点坐标,"CHANG DU"为测站点到待测点距离。
目录前言第1章复数及基于统计串列存储数据的编程方法与程序1.1 复数的几何表示方法1.2 复数显示格式的应用1.3 共轭复数1.4 复数形式坐标反算程序(QH1-4)1.5 基于统计串列输入数据的极坐标法放样程序(QH1-5)1.6 复数形式高斯平面坐标线性变换参数计算及批量坐标变换程序(QH1-6)1.7 复数形式建筑坐标与测量坐标的相互变换程序(QH1-7)1.8 复数形式单一闭、附合与无定向导线近似平差原理与程序(QH1-8)1.9 复数形式支导线坐标计算程序(QH1-9)第2章公路与铁路路线平纵曲线正、反算原理与程序2.1 单交点基本型路线曲线坐标正算原理2.2 缓和曲线线元坐标正算原理2.3 缓和曲线线元坐标反算原理2.4 圆曲线与直线线元坐标正、反算原理2.5直线与缓和曲线线元斜交的交点坐标计算原理2.6直线与圆曲线及直线线元斜交的交点坐标计算原理2.7 单交点基本型曲线坐标正、反算程序(QH2-7)2.8 线元法任意路线与匝道曲线坐标正、反算程序(QH2-8)2.9 线元法任意路线与匝道曲线直线斜交程序(QH2-9)2.10 任意个变坡点的连续竖曲线高程计算程序(QH2-10)第3章公路与铁路路线施工测量综合程序3.1 圆曲线加宽值计算程序(QH3-1)3.2 缓和曲线加宽值计算程序(QH3-2)3.3 路线纵断面中平测量记录计算程序(QH3-3)3.4 路线填、挖方工程量计算程序(QH3-4)3.5 方格网法土方量计算程序(QH3-5)3.6 解析法带弓形多边形周长与面积计算程序(QH3-6)第4章公路与铁路路线施工控制测量程序4.1 1954北京坐标系与1980西安坐标系高斯投影正算、反算及换带程序(QH4-1)4.2 测角前方交会坐标计算程序(QH4-2)4.3 测角后方交会坐标计算程序(QH4-3)4.4 测边后方交会点坐标计算程序(QH4-4)4.5 施工水准测量记录计算程序(QH4-5)4.6 四等水准测量计算程序(QH4-6)4.7 单一闭附合图根水准路线近似平差程序(QH4-7)4.8 高斯平面坐标系正形变换程序(QH4-8)复数形式单一闭、附合与无定向导线近似平差程序(QH1-8)计算案例QH1-8程序位于图书第21~24页,单一闭合导线案例数据见第18页图1-13,单一附合导线案例数据见第18页图1-14,单一无定向导线案例数据见第19页图1-15。
导线平差5800全能程序程序说明:纯傻瓜式设计,输入数据直接出结果,可以计算闭合,附和,无定向导线和支导线,程序名称:SING TRA VE有任何问题请去测量空间为我评分,留言。
链接网址/user_putview.asp?action=article&userna me=%u84DD%u6CEA%u5E7D%u7075程序内容如下,计算内容,闭合附合,无定向导线。
“SING TRAVE ”◢Deg: Norm 1: Freq o n: n→N:If List Y[N]=0:Then N-1→DimZ:Goto 0:Else N→DimZ:Goto1:IfEnd:Lbl 0:“CLOSE OR CONNECT”◢“ANGL NUM=”:Locate 12,4,N:“SIDE NUM=”:Locate 12,4,N-1:“UNKW NUM=”:Locate 12,4,N-2◢“CLOSE(0),CONNECT(1)”?Z◢:Fix3:“XA,≦0=>aA→B(Deg)”?A: If A>0:Then“YA”?B: Else“aA→B(Deg)”?R: IfEnd:“XB”?C: “YB”?D:C+Di→U: U→V:If A>0:Then Pol(C-A,D-B):Cls:J<0=>J+360→J:J→R:“DIST A→B=”: Locate 10,1,I:“a=”:Locate 4,2,R°◢IfEnd:If Z≠0:Then“XC”?E: “YC”?F: E+Fi→V◢“XD,≦0 =>aC→D(Deg)”?G◢If G>O:Then“YD”?H:Pol (G-E,H-F):CLs:J<O=>J+360→J:J→S◢“DIST C→D=”:Locate 10,1,I:“a=”:Locate6,2,S°:Else“aC→D”?S:IfEnd:Else If R>180:Then R-180→S:Else R+180→S:IfEnd:IfEnd:∑y→M:For 1→I To N: If I=1:Then R+List X[I]→L:Else L+List X[I]→L:IfEnd:If L>180:Then L-180→L:Else L+180→L:IfEnd:Next:3600(L-S)→T:A<0=>“aE0R=”:Locate8,3,T:A>O =>“aEOR=”:Locate8,4,T:40√(N)→W:“S EOR=”:Locate 8,4,W◢Abs(T)>W=>“a ERROR OVER”:-T÷N÷3600→P:0→O:For 1→I To N: If I=1:Then R+List X[I]+P→L: Else L+List X[I]+P→L:IfEnd: If L>180:ThenL-180→L:Else L+180→L:IfEnd:If I<N:Then List Y[I]∠L→Z[I]:Z[I]+O→0:IfEnd:Next:3600(L-S)→T:“CK EOR=”:Locate10,4,T:U+0-v→0:a+bi:Int(M/Abs(0)) →K:“DEL X=”:Locate8,4,Rep(O):“DEL Y=”:Locate8,4,Imp(0):“REL EOR=1÷”:Locate 11,4,k◢K<4000=>“OVER”: For 1→I to N-1:Z[I]-OListY[I]/M→X:If I=1:Then u+x→Y:ElseY+X→Y:IfEnd:Norm1:“POINT n =”:Locate 9,4,I:Fix3:“xp=”:Locate4,4,Rep(Y):“YP=”:Locate 4,4, Imp(Y)◢ Next:Y-v→Q:“CEKX=”:Locate 6,4, Rep(Q):“CEKY=”:Locate 6,4, Imp(Q) ◢Goto E:LbL 1:“NO DRECT”◢“ANGE NUM=”:Locate 12,3,N-1:“SIDENUM=”:Locate12,4,N:“UNKW NUM=”:Locate12,4,N-1◢“XA”?A:“YA”?B:“XB”?C:“YB”?D:A+Bi→U:C+Di→V:0→H:U+List Y[1]∠H→Z[1]:For1→I To N-1:H+List x[I]→H:If H>180:Then H-180→H:ElseH+180→ H :IfEnd:Z[I]+List Y[I+1]∠H→Z[I+1]:Next:(V-U)/(Z[N]-U)→Z:Int(Abs((1-Abs(Z))-1 ))→K:“RE EOR=1÷”: Locate10,4,K:Z▽r∠θ: Fix3: For1→I To N: U+(Z[I]-U)Z→Z[I]:If I≠N: Then Norm 1:“POINT NUM=”:Locate 12,4, I: Fix3:“xp=”:Locate 6,4, Rep(Z[I]): “YP=”:Locate6,4,Imp(Z[I])◢IfEnd: Next: “DE XB=”:Locate8,4, Rep(Z[N]-V):“DE YB=”:Locate8,4,Imp(Z[N]-V)◢Lbl E:“GAME=>OVER”程序名称:“SNEEK TRA VE”程序内容如下,计算内容,支导线。
5800平曲线和竖曲线计算程序。
以验证过5800平曲线程序1.主程序Lbl 4:"1.SZ => XY":"2.XY => SZ":?N:?S:Prog“SUB0”↙1÷P→C: (P-R)÷(2HPR) →D:180÷∏→E:N=1 => Goto1:Goto2:↙Lbl 1:? Z:Abs(S-O) →W:Prog "SUB1":"XS=":X◢"YS=":Y◢F-90→F:“FS=”:F▲DMS◢D:X+DCos(F)→X: "X=":X◢Y+DSin(F)→Y: "Y=":Y◢Goto4↙Lbl 2:?X:?Y:X→I:Y→J:Prog“SUB2”:O+W→S:“S=”:S◢“Z=”:Z◢Goto4↙2. 正算子程序(SUB1)0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+B cos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD))) →X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QE MW(C+MW D))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y2. 反算子程序(SUB2)G-90→T:Abs((Y-V)cosT-(X-U)sinT) →W:0→Z:Lbl 0:Prog "SUB1":T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z:IF Abs (Z)<10-6:T hen Goto1:Else W+Z→W:Goto 0:IfEndLb1 1:0→Z:Prog "SUB1" :(J-Y)÷sin(F)→ZSUB0 数据库子程序Goto1↙同时保存多个曲线时的指针Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEnd↙Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEnd ……………..为了便于解读,每增加一个线元增加一行语句,每增加一条曲线增加一个Lbl,每增加个工程增加一个文件。
fx-5800p坐标正、反算;面积计算;土方量计算;单一水准路线近似平差计算;复数形式单一闭、附合与无定向导线近似平差计算程序。
一.ZBZS(坐标正算程序)LbI 0(零):〝X1(零)=〞?S:〝Y1(零)=〞?G:〝FWJ=〞?F:〝HD=〞?D↙〝X2=〞:S+Dcos(F)→X◢〝Y2=〞:G+Dsin(F)→X◢Goto 0(零)↙本程序中输入及显示说明输入部分:X1=? 输入第1点X坐标;Y1=? 输入第1点Y坐标;FWJ=? 输入第1点至第2点方位角(即水平角);HD=? 输入第1点至第2点水平距离。
显示部分:X2= 显示第2点X坐标;Y2= 显示第2点Y坐标。
二.ZBFS(坐标反算程序)LbI 0(零):〝X1=〞?Z:〝Y1=〞?W:〝X2=〞?X:〝Y2=〞?Y↙X-Z→A:Y-W→B↙√(A2+B2)→D:cos-1(A÷D)→J:If B≥0(零):Then J→J:EIse 360-J →J:IfEnd↙〝FWJ=〞:J◣DMS◢〝HD=〞:D◢Goto 0(零)↙本程序中输入及显示说明输入部分:X1=? 输入第1点的X坐标;Y1=? 输入第1点的Y坐标;X2=? 输入第2点的X坐标;Y2=? 输入第2点的Y坐标;显示部分:FWJ= 显示第1点至第2点的方位角(即水平角); HD= 显示第1点至第2点的水平距离。
三.MIAN JI(面积计算程序)LbI 0(零):〝DIAN SHU=〞?N:〝X=〞?A:〝Y=〞?B↙0(零)→K:N-1→N:A→C:B→D↙LbI 1:〝X=〞?X:〝Y=〞?Y↙(X-C)(Y+D)÷2→Q:K+Q→K:X→C:Y→D↙Dsz N: Goto 1↙〝MIAN JI=〞:Abs(K+(A-C)(B+D)÷2→M◢Goto 0(零) ↙本程序中输入及显示说明输入部分:DIAN SHU=? 输入总点数;X=? 输入第1点的X坐标;Y=? 输入第1点的Y坐标;连续输入第2、3、4、………、各点的X、Y坐标。
126云南水力发电YUNNAN WATER POWER第34卷第2期C A S I O f x-5800P可编程计算器在控制测量中的应用张逸仙(云南省红河州水利水电勘察设计研究院,云南蒙自661199)摘要:介绍CASIOfx-5800P可编程计算器在控制测量中附合导线的计算。
附合导线以CASIOfx-5800P计算附合导线的计算过程编成程序代码,可以简化其计算过程,提高工作效率。
通过实例操作证明该程序方法真正起到了快捷、高效、准确作用,即加快野外工作进度,又减少数据的误差。
关键词:附合导线;CASIOfx-5800P;近似平差;严密平差;程序代码中图分类号:TB22 文献标识码:B文章编号:1006_3951(2018)02_0126_03DOI:10.3969/j.issn.1006-3951.2018.02.032〇引言进入21世纪以来,我国水利工程建设进入了 前所未有的高潮时期。
在水利工程建设中必需大 量的水利工程测量,其中控制测量又是重点与难 点。
水利工程一般选址于深山沟壑之中,地形较 复杂且呈条带形状,故目前在水利工程测量中,导线测量是一种常见的控制测量方法[1]。
导线测 量由于只要求相邻导线点通视,布设灵活,特别适用于水利工程、铁路、公路之狭长形控制测;或补闭合导线及局部三角网之不足以及地形复杂的地区。
随着高精度全站仪的普及,导线测 量的应用将更为广泛。
卡西欧系列计算器的出现,使得导线测量的计算更加灵活、快捷和方 便。
将对卡西欧C A SIO fx-5800P可编程计算器快捷的计算方法进行分析与介绍[2],着重介绍 C ASIO fx-5800P可编程计算器在控制测量中附i8n+i图1附合导线图合导线的计算。
目前在水利工程测量中,附合导线被广泛采 用。
由1高级控制点(如已知三角点或高等级的 导线点)出发,经过若干导线点,连接到另一高 级控制点,这样的导线称为附合导线[3’4]。
见图1所示:为单一附合导线的标准形式,这在实际控 制测量中经常用到。
卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)一、直线计算程序0→I:0→J:”X0”?D:”Y0”?E:”X1”?B:”Y1”?C:Pol(B-D,C-E):J →A:If A<0:Then A+360→A:Else A→A:IfEnd:Lbl 0:?O:?S:If O≠0:Then Goto 1:IfEnd:D+Scos(A) →X:”X=”:X ◢E+Ssin(A) →Y:”Y=”:Y ◢Goto 0:Lbl 1:D+Scos(A)+Ocos(A+90) →X:”X=”:X ◢E+Ssin(A)+Osin(A+90) →Y:”Y=”:Y ◢Goto 0说明:输入程序时注意区别字母O 与数字0程序运行时符号说明X0? Y0? 分别输入直线起点的XY 坐标值X1? Y1? 分别输入直线终点的XY 坐标值O? 输入边桩与中桩的距离( 左边桩为负值, 右边桩为正值), 如计算中桩坐标输入0S? 输入所求点到直线起点的距离二、圆曲线计算程序0→I:0→J: ”X0”?C:”Y0”?D:”X1”?E:”Y1”?F:?R:”L:-1 R:1”?N:”ZY”?W:Lbl 0:”LN”?T:T-W→O:Pol(E-C,F-D):I→S:J→A: If A<0:Then A+360→A:Else A →A:IfEnd:sin-1(S÷(2R)) →K:2∏RK÷180→L:180O÷(2∏R) →G:(2R)sin(G) →H:C+Hcos(A-KN+GN) →X:”X=”:X ◢D+Hsin(A-KN+GN) →Y:”Y=”:Y ◢R-0.5√(4R2-H2) →Q:”Q=”:Q ◢“S=”?V:If V=0:Then Goto 0:IfEnd:”L:-90 R:90”?U:X+Vcos(A-KN+2GN+U) →X:”X=”:X ◢Y+Vsin(A-KN+2GN+U) →Y:”Y=”:Y ◢Goto 0说明:输入程序时注意区别字母O 与数字0程序运行时符号说明X0? Y0? 分别输入直线起点的XY 坐标值X1? Y1? 分别输入直线终点的XY 坐标值R? 输入圆曲线半径L:-1 R:1? 圆曲线向左转弯时输入-1, 向右转弯时输入1ZY? 输入起点桩号LN? 输入所求点桩号( 按下exe 键后显示中桩坐标)S? 输入所要求的边桩与中桩的距离L:-90 R:90 要求左边边桩输入-90, 右边边桩输入90( 按下exe 键后显示边桩坐标)三、大地转施工“QK=”?Z:“QX=”?A:“QY=”?B:“ZX=”?O :“ZY=”?Q ↙Pol( O -A,Q-B) ↙J<0=>J+360→J ↙J>360=>J-360→J ↙J→F:“JF=”:F ◆DMS ◢Lb1 0 ↙X:?Y ↙Pol (X-A,Y-B):I→D ↙J<0=>J+360→J ↙J>360=>J-360→J ↙J-F→T:T→G ↙T<0=>T+360→G ↙T>360=>T-360→G ↙Z+Dcos (G)→K:“K=”:K ◢Dsin (G)→C:“C=”:C ◢GoTo 0 ↙说明:QK-- 输入线路起始点里程QX-- 输入线路起始点中桩X 坐标QY-- 输入线路起始点中桩Y 坐标ZX-- 输入线路前进方向中桩X 坐标ZY-- 输入线路前进方向中桩Y 坐标JF=-- 显示线路测量坐标方位角X-- 输入线路附近任意点测量X 坐标Y-- 输入线路附近任意点测量Y 坐标K-- 显示计算结果:里程桩号,即工程X 坐标C-- 显示计算结果:左右偏距,即工程Y 坐标, 中桩=0 ,左偏= 负值,右偏= 正值。
卡西欧fx-5800p计算道路中、边线坐标放样程序(此程序计算速度快,可以查找桩号和偏中距离)(单园曲线超过半圈后有误差,半径5000米时,在半圈处的计算误差单方向8cm)SUB-10.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:U+W(Acos(G+180QKW(1÷P+KWD)÷π)+Bcos (G+180QLW(1÷P+LWD)÷π)+Bcos (G+180QW(1-L)(1÷P+WD(1-L))÷π)+Acos (G+180QW(1-K)(1÷P+WD(1-K))÷π))→X:V+W(ASIN(G+180QKW(1÷P+KWD)÷π)+Bsin(G+180QLW(1÷P+LWD)÷π)+Bsin (G+180QW(1-L)(1÷P+WD(1-L))÷π)+Asin (G+180QW(1-K)(1÷P+WD(1-K))÷π))→Y:G+180QW(1÷P+WD)÷π→FS—O(放线主程序)Deg:Fix3LbI7:“XC=”?C:“YC=”?E“H=”?TLbI1:“XL=1,2”?NIF N=0:T hen“X0=”?U:“Y0=”?V:“F0=”?G: “R1=” ?P: “R2=” ?R: “DK1=” ?О: “DK2=” ?H:“L(-1),R(+1),Z(0)” ?Q:Prog“SJ”: GOTO2:IfendLbI 0: “ZHUANG HAO=” ?S: IF T≠0:T hen Z=0:Goto 8:Ifend {Z} :Z”KUAN DU”LbI8IF N=0:T hen GOTO2:IfendIF N=1:T hen Prog“1”:GOTO2:IfendIF N=2:T hen Prog“2”:GOTO2:IfendIF N=3:T hen Prog“3”:GOTO2:Ifend ……………………………………………GOTO1LbI2: IF S<О-0.001: T hen GOTO1: IfendIF S>H+0.001:T hen GOTO1: Ifend(P-R)÷(2PR(H-О)) →D: Abs(S-О) → W:Prog“SUB-1”IF Z=1000: T hen GOTO 5: IfendIF Z≠0: T hen GOTO 3: IfendIF T≠0:T hen GOTO 9 △“ZX=”:X →X▲“ZY=” Y→Y▲IF F<0: T hen F+360 →F: Ifend“QX-FWJ=”:F→F▲LbI4: 0→I: 0→J:PoI(X-C,Y-E+0.00001)IF J<0: T hen J+360→J: Ifend“FWJ=”:J→J▲“HD=”:I→I▲GOTO 0IF T=0: T hen Goto 0: IfendLb1 9: Prog“BG”: ”SXG=” ?E”H△”:G-T+E→J▲Goto 0Lb13: “PJ=”? M: F+M→F: “BX=”: X+ZCosF→X▲“BY=”:Y+ZSinF →Y▲Goto4Lb1 5:Deg0→J: 0→I:PoI(X-C,Y-E+0.00001):IF J<0: T hen J=J+360: IfendIF Abs(Icos(J-F))<0.010: T hen Goto6: IfendS-Icos(J-F) →S:Goto8Lb16: 0→Z:”JISUANZH=” :S→S▲IF J-F=0 or J-F=180: T hen”ZX--PT”:I→I▲Goto7: IfendIF J-F>0 and J-F<180 or J-F<-180: T hen”L=m” :I→I▲Goto7: Else ”R=m” :I→I▲Goto7: Ifend竖曲线计算子程序 BGV=4:Y=Z[1]Lb1 0IF S<Z[1]:T hen Goto2:IfendIF V>4:ThenA=(Z[V-2]-Z[V-5])/(Z[V-3]-Z[V-6]): B=(Z[V+1]-Z[V-2])/(Z[V]-Z[V-3]):L=ABS(Z[V-1]*tan((tan-1 B- tan-1 A)/2))Y=Z[V-3]+L: IfendA=(Z[V+1]-Z[V-2])/(Z[V]-Z[V-3]): B=(Z[V+4]-Z[V+1])/(Z[V+3]-Z[V]):L=ABS(Z[V+2]* tan ((tan -1 B-tan -1 A)/2))X=Z[V]-L:U=z[v]+LIF A-B>0:T hen Q=-1:IfendIF A-B<0:T hen Q=1:IfendW=(S- X)/ Z[V+2]*180/piIF S≥Y and S≤X:T hen ZG=Z[V-2]+A(S-Z[V-3]): Goto 1:IfendIF S≥X and S≤U:T hen ZG= Z[V+1]-L*A +2* Z[V+2]*SIN(W/2)*SIN(SIN-1 A+Q*W/2): Goto 1:IfendIF S<Y:T hen V=V-3:Goto 0: IfendIF S>U and Z[V]≠Z[V-3]:T hen V=V+3:Goto 0: IfendIF S<Z[1]:T hen ZG=0: IfendLbI 2:”MEI YOU SHU JU” ? GLb1 1(标高数据输入程序)SJ1→I:LbI 0:”BIAN PO DIAN=”I▲”ZHUANG HAO=” ? E:Z[3I-2]=E:”BIAO GAO=” ? E:Z[3I-1]=E:”BAN JING=”? E:Z[3I]=E:IF I<3:T hen I+1→I:Goto 0:Ifend说明: I为变坡点号,本程序为3个(最少3个),如果增加变坡点,相应增加I<后的数字,并增加“s-o”程序的Defm后的数字为(I+1)*31 (1为线路名称,预装要素子程序)(线路名称预装要素子程序) 1o=线元起点里程:H=线元终点里程: U=线元起点X坐标:V=线元起点y坐标:G=线元起点方位角:P=线元起点半径(直缓点、缓直点半径为1045):R=线元终点半径(直缓点、缓直点半径为1045): Q=(左转为-1,右转为+1,直线为0)IF S≤o and S≥H T hen GOTO 3:Ifendo=线元起点里程:H=线元终点里程: U=线元起点X坐标:V=线元起点y坐标:G=线元起点方位角:P=线元起点半径(直缓点、缓直点半径为1045):R=线元终点半径(直缓点、缓直点半径为1045): Q=(左转为-1,右转为+1,直线为0)IF S≤o and S≥H T hen GOTO 3:Ifend 。
Fx-5800程序使用说明本程序为本人自编含正反算、高程、超高、加宽及水准测量一体;可进行路基填挖坡角、高程放样;还可以换算路面各种结构成进行放样。
特别是反算可以对任意点进行反算坐标、高程并计算得出坡角,在实际应用中(1人看全站仪,1人拿棱镜,1人打桩)速度达可以让拿棱镜和打桩人员跑起来工作)。
其实有了本程序,测量是一件很轻松的工作,如果你还在用传统的程序测量方法,还在为计算标高、换算坡角等天天晚上加班计算后第二天还要移桩,真应该认真看看本程序,它可以让你的测量速度快最少一至两倍以上。
一份好的程序必须结合设计施工图进行编程可以让测量达到最快速度,如果有谁想要代编程序请联系:QQ:9286330;以下为某二级公路放样程序使用说明:一、运行A—XY程序:1、 X1?………………….输入测站点X位标;2、 Y1?………………….输入测站点Y位标;3、 X2?………………….输入后视点X位标;4、 Y2?………………….输入后视点Y位标;5、 Z2?………………….(1)输入测站点Z位标;或(2)输入后视点Z位标6、A=…………………….显示全站仪对后视的方位角(此时可将全站仪转到5800上显示的方位角并固定好水平位置,按仪器锁定方位角,然后将仪器对准后视点(为了保证更好精度,对准棱镜杆与后视控制点交叉处也可),放开锁定方位角即可进行测量)7、S=…………………….显示全站仪与后视点水平距离;8、 HS?………………….输入高差:(1)、若Z2?时输入测站点Z,则输入数据0;(2)、若Z2?时输入后视点Z,则输入全站仪对后视的高差数据;9、 LJG?……………….. 输入仪器高或棱镜高:(1)、若Z2?时输入测站点Z,则输入仪器仪高;(2)、若Z2?时输入后视点Z,则输入棱镜高;注意:5、8、9三步的关联,否则实测高程计算不对10、 LM?…………………输入路线号(如有匝道等多条线路时选择数据,若只有一条路则按“EXE”进入下一步,即选默认路线)11、 K?…………………输入预测点大概桩号(如测站测K25+200~K25+800,则可输入其桩号之间的数,如K25+300即输入25300即可,此桩号仅用于当数据多时加快后面的计算器运行速度)二、运行A—FY程序(当运行A—XY程序时自动运行,若不换测站点时才能直接运行本程序,即不用输入第一步数据,但换站时必需运行A—XY程序)(一)、正算放样(即根据已知桩号和边桩距离放样)1、 KX1:AK2:XK3:XY4:SP5:Stop6?…..输入进行测量的方法(输入:1)2、Q?………………….输入测量边桩与路线夹角(默认为90度);3、K?………………….输入放样点桩号;4、B?………………….输入放样点(左、右边桩)距中线距离(左边桩为负数,右边桩为正数,中桩为“0”);5、A=…………………….显示全站仪与放样点的方位角(此时可将全站仪转到5800上显示的方位角进行对放样点方向);6、S=…………………….显示全站仪与放样点水平距离HD;7、CS?………………….输入放样点与测站点的高差VD;8、LJG?………...…….. 输入放样点的棱镜高;9、PQ B=…………… ...显示实测点根据高程计算后需向路内(或外)移动“水平”距离(注:向中线为负值,向路外侧为正值,若为原地面放样还应按此值估算因地面坡度增加的水平距离进行加减);若需移位大应按第13步重测放出真正的填(挖)坡角;10、显示:a、填方:T=(放样点至路床顶填土高度)、T0=(放样点至路面填土高度)、SC B=(按测点高程计算出的距中边距B,左边桩为负数,右边桩为正数);b、挖方:W=(放样点至路床顶挖土深度)、W0=(放样点至路面挖土深度)、SC B=(按测点高程计算出的距中理论边距B,即坡角边距);11、显示:实测点X、Y坐标;12、显示:H=(实测点高程)、H0=(设计高程)(中桩为中线高程,边桩为路肩设计高程)、JK=(设计加宽值)13、重复反回第1步进行重新放样;(若对同一桩号按第9步数据计算需移位较大时,必需对同一桩号按数据移位后重测复核至找到坡角为此,一般重测一次即可)(注:重测复核时,在输入B值时会显示出SC B=(按刚测完点移位后的理论宽度)方便输入预测点B值,若地面不平就用SC B值加(减)上地面坡度造成的水平距离增加)(二)、反算放样一:(即根据在任意点先测出方位角、距离、高差反算出:路线桩号及填、挖土边桩坡角进行放样)1、 KX1:AK2:XK3:XY4:SP5:Stop6?…..输入进行测量的方法(输入:2)2、Q?………………….输入测量边桩与路线夹角(默认为90度);3、A3?…………………输入全站仪与放样点的方位角(即全站仪上方位角读数);4、S3?………………….输入全站仪与放样点水平距离HD;5、CS?………………….输入放样点与测站点的高差VD;7、LJG?………...…….. 输入放样点的棱镜高;8、PQ B=…………… ...显示实测点根据高程计算后需向路内(或外)移动“水平”距离(注:向中线为负值,向路外侧为正值,若为原地面放样还应按此值估算因地面坡度增加的水平距离进行加减);若需移位大应按第3步重测放出真正的填(挖)坡角;9、显示:K=…………….显示放样点桩号;B=…………….显示放样点(左、右边桩)距中线距离(左边桩为负数,右边桩为正数,中桩为“0”);10、显示:a、填方:T=(放样点至路床顶填土高度)、T0=(放样点至路面填土高度)、SC B=(按测点高程计算出的距中边距B,左边桩为负数,右边桩为正数);b、挖方:W=(放样点至路床顶挖土深度)、W0=(放样点至路面挖土深度)、SC B=(按测点高程计算出的距中理论边距B,即坡角边距);11、显示:实测点X、Y坐标;12、显示:H=(实测点高程)、H0=(设计高程)(中桩为中线高程,边桩为路肩设计高程)、JK=(设计加宽值)13、重复反回第1步进行重新放样;(若对同一桩号按第8步数据计算需移位较大时,必需对同一桩号按数据移位后重测复核至找到坡角为此,一般重测一次即可)(注:重测复核时,在输入B值时会显示出SC B=(按刚测完点移位后的理论宽度)方便输入预测点B值,若地面不平就用SC B值加(减)上地面坡度造成的水平距离增加)(三)、反算放样二:(即根据在任意点先测出XY坐标、高差反算出:路线桩号及填、挖土边桩坡角进行放样)1、 KX1:AK2:XK3:XY4:SP5:Stop6?…..输入进行测量的方法(输入:3)2、Q?………………….输入测量边桩与路线夹角(默认为90度);3、X3?…………………输入全站仪上X坐标;;4、Y3?………………...输入全站仪上Y坐标;5~13步说明与(二)相同:(四)、已知设计坐标进行放样(如桥梁已知坐标放样等):1、KX1:AK2:XK3:XY4:SP5:Stop6?…..输入进行测量的方法(输入:4)2、使用说明与第(三)条只差在多显示方位角A、距离S进行放样,其它计算数据仅作参考对照用。
单一闭附合图根水准路线近似平差计算程序(PM3-6)(1) 计算原理单一闭附合图根水准路线近似平差的原理是,将高差闭合差反号、按测段路线长或测站数比例分配计算各水准测段的高差改正数,并据此计算出未知点的高程。
(2) 程序——PM3-6,占用内存544字节。
"CLOSED Or CONNECTING MAPPING LEVEL PM3-6"显示程序标题"LEVEL TYPE,PLATE(1)="?P输入水准路线类型数字,1代表平坦,其余数代表山地"START H(m)="?A输入起点已知高程"END H(m)="?B输入终点已知高程,闭合水准路线时为起点已知高程ClrStat:FreqOn基本设置"HEIGHT NUM="?N输入测段高差数N DimZ定义额外数组变量用于存储平差后点的高程0X:0Y累加高差,路线长变量清零For 1I To N"n=":I显示测段号"h(m)="?List X[I]输入测段高差"L(km) Or n="?List Y[I]输入测段路线长或测站数List X[I]+X X:List Y[I]+Y Y累加路线长与高差NextA+X-B F计算高差闭合差If P=1:Then 0.04(Y)W:Else 0.012(Y)W:IfEnd图根水准高差闭合差限差"H CLOSE ERROR(MM)=":1000F显示高差闭合差"Σ(L)km OrΣ(n)="Y显示总路线长或总测站数If Abs (F)>W:Then "CLOSE ERROR OVER.":IfEnd显示高差闭合差超限-F÷Y V计算每km或每站高差改正数For 1I To NList X[I]+VList Y[I]List Freq[I]计算改正后的测段高差If I=1:Then A+List Freq[I]Z[I]:Else Z[I-1]+List Freq[I]Z[I]:IfEnd"n=":I显示测段号"h ADJUST(m)=":List Freq[I]显示改正后的测段高差"Hn ADJUST(m)=":Z[I]显示改正后点的高程Next"CLOSE TEST(mm)=":1000(Z[I]-B)显示高程检核结果"PM3-6END"(3) 程序说明程序先提示用户输入水准路线类型,按键为平坦路线,要求其后输入以km为单位的水准测段路线长;按其余数字键与键为山地水准路线,要求其后输入水准测段测站数。
5800程序(线元法全线坐标正方算)本程序比较复杂.测量原理不是很明白的朋友慎用请大家经常关注程序B-H的更新2009,5,10日修改见超高子程序B-H黄色部分,另超高数据库增加在超高缓和段输入超高为公路外侧超高说明2009,5,8日正反算选择程序:ZS-FS 更改小错,详见紫色修改内容2009,4,30日更改如下:把原来的4个子程序分解成5个子程序,解决了一个大的竖曲线不能包含几个超高变化段,另外程序内也有两处改变请看红色区域.本程序经过综合考虑5800的设计缺陷,计算速度较慢故只使用高斯四节点法为计算内核.支持多条线路正反算,中桩,边桩高程计算,超高计算,超高缓和计算,加宽计算,加宽缓和计算,边坡开口线计算,挡土墙坡脚线计算,考虑了中间绿化带的影响,适用与国家高速公路至乡村四级公路计算和放样,路基路面工程可以直接得出中边桩的设计三维坐标,去掉加宽和超高影响的计算困难,边坡和坡脚线计算可直接在边坡上提取坐标带入程序,经过所有设计因素的综合,得出更改边距并显示修改偏差后的坐标.反算速度明显提高,只需要3秒.程序无错,可放心输入,另本程序可以增加隧道超欠挖计算子程序,非常方便,因为每个隧道的断面数据不一样,所以在此没有明确写出,有需要的可以联系我.本人QQ76805071,只为交友.计算器主程序:ZHU-CHENG-XULbi0:“1,ZS=FS,2ZS,3FS,4XY=>SG,5。
”?U:U=1=>Prog”ZS-FS”:进入公路三维程序U=2=>Porg”ZS”:进入坐标正算程序U=3=>Porg”FS”:进入坐标反算程序U=4=>Porg”XY =>SG”:进入大地坐标转施工坐标程序…………Goto0:说明:计算器总的主程序,进入选择各种分支计算程序。
1为公路三维计算,2为普通正算,3为普通反算,4为大地坐标转施工坐标。
选择错误重新选择。
此程序可以不用输入,只为给大家一个思路,可以把计算器所有程序集中到一个主程序内管理.公路三维部分正反算选择程序:ZS-FSDeg: //设置角度模式20→DimZ: //扩展变量“1LZ=>XY,2XY=>LZ,3BIANPO-FY”?U://正反算选择,正算选1,反算选2,坡口坡脚选3If U=1: ThenProg”ZS-XH”:IfEnd://进入正算循环主程序IfU=2:Then Prog”FS-XH”:IfEnd: //进入反算循环主程序IfU=3:ThenProg”BP-FY”:IfEnd://进入边坡开挖主程序正算循环主体程序ZS-XH“1PT-2SJ”?W://普通计算和设计边距计算选择“XL-XZ“?U://选择线路1~NIf W=1: Then //运行普通计算模式边踞自由输入Lbi0:”L=”?L:”Z=”?Z: //输入桩号和边距Porg”ZS-XH-1“:Goto0:IfEnd: //运行正算循环子程序If W=2:Then //运行设计计算模式边距按设计输入Lbi1:”L=”? L: //输入桩号Porg”0。
工程测量的相关计算及CASIO5800计算器的应用计算是工程测量工作中核心,是测量工作人员的灵魂。
经常涉及计算有坐标正反算,坐标系转换,点与线的关系计算,交会计算,道路线性设计的相关计算等。
由于计算机及手机相关的计算软件已普及,并满足测量工作中的复杂计算,如高斯正反算、导线近似平差计算、道路施工的相关计算及一些简单的计算。
大家工作中的计算过于依赖软件,导致有些测量基本原理还没弄清楚就能得到结果,无法验证数据结果的正确性,存在很大的数据隐患。
通过本文想让大家了解下测量计算的基本原理及理解计算过程的魅力,本文是根据近多年的工作经验总结所得。
例一、坐标正反算见图1计算实例,已给出相关计算结果,下面用计算器演示计算过程。
第一步:把点A、点B的坐标赋值给变量A、B第二步:坐标反算第三步:坐标正算有A计算B有B计算A上述计算过程相关解释:此过程采用的是复数计算的形式,在工程测量中计算以复数形式会让计算很快捷,同时得出数据XY坐标。
具体算法原理可参考《CASIO fx-5800P编程计算器公路与铁路施工测量程序(第一版)》,本文不在赘述。
通过此过程加强对坐标正反算原理的理解,避免再用软件计算,以及用5800编正反算的计算程序,灵活运用计算器并节约计算器的储存空间。
例二、直线相关计算1,直线方向A→B正算:距离、偏距坐标赋值于变量D计算C坐标反算:C坐标赋值变量C计算距离偏距坐标2,直线方向B→A正算:距离、偏距坐标赋值于变量E计算C坐标反算:计算距离偏距坐标例三:圆的计算弧半径、弧段长、点到弧的距离计算弧段点L1计算弧段点L2计算弧段点L3计算偏距点L4小节总结:例一至例三的计算难度逐渐增加,为什么上述计算式能得到正确的计算结果?。
单一闭附合图根导线近似平差计算程序(PM3-1)(2) 程序PM3-1,占用内存1848字节。
"CLOSED Or CONNECTING MAPPING TRAVERSE PM3-1"\ 显示程序标题 Norm 1"CLOSED(0) Or CONNECTING(1)="?Z 导线类型,0为闭合导线,1为附合导线 "UNKNOWN POINT n="?P 未知导线点数 Deg:Fix 3 设置十进制度为单位"XA(m),0 To BEAR A ¼B(Deg)="?A 输入已知点A 的x 坐标或输入≤0的数值 If A>0:Then "YA(m)="?B:Else "BEAR A ¼B(Deg)="?R:IfEndA>0时为输入A 点y 坐标,否则为输入A →B 的方位角"XB(m)="?C:"YB(m)="?D 输入已知点B 的坐标 If A>0:Then Pol(C-A,D-B):Cls 计算A →B 的方位角 J<0J+360¼J:J ¼R"DIST A ¼B(m)=":I \显示A →B 的水平距离 "BEAR A ¼B(DMS)=":R `DMS \ 显示A →B 的方位角 IfEndIf Z=1:Then "XC(m)="?E:"YC(m)="?F 附合导线,继续输入已知点C 的坐标 "XD(m),0 To BEAR C ¼D(Deg)="?G 输入已知点D 的x 坐标或输入≤0的数值 If G>0:Then "YD(m)="?H:Else "BEAR C ¼D(Deg)="?S:IfEndG>0时为输入D 点y 坐标,否则为输入C →D 的方位角If G>0:Then Pol(G-E,H-F):Cls 计算C →D 的方位角 J<0J+360¼J:J ¼S"DIST C ¼D(m)=":I \显示C →D 的水平距离 "BEAR C ¼D(DMS)=":S `DMS \ 显示C →D 的方位角 IfEndElse If R>180:Then R-180¼S:Else R+180¼S:IfEnd 闭合导线计算A →B 的反方位角"BEAR B ¼A(DMS)=":S `DMS \ 显示B →A 方向的方位角 IfEndClrStat:FreqOn清除统计串列List X,List Y ,List Freq ,打开频度串列0¼M 累加边长和变量清零 For 1¼I To P+1Norm 1:"POINT n=":I \显示当前输入的观测数据计数 "ANGLE(Deg)="?¼List X[I] 输入水平角观测值 "DIST(m)="?¼List Y[I] 输入水平距离观测值 List Y[I]+M ¼M 累加水平距离和If I=1:Then R+List X[I]¼L:Else List Freq[I-1]+List X[I]¼L:IfEnd 推算导线边方位角If L>180:Then L-180¼L:Else L+180¼L:IfEndL>360L-360¼L判断方位角是否大于360 L ¼List Freq[I] 存储导线边方位角 Next"LAST ANGLE(Deg)="?¼List X[P+2]输入最后一个水平角 List Freq[P+1]+List X[P+2]¼LIf L>180:Then L-180¼L:Else L+180¼L:IfEndL>360L-360¼L判断方位角是否大于360L ¼List Freq[P+2] 存储最后一个方位角 3600(L-S)¼U 以秒为单位的方位角闭合差Fix 1:"ANGLE CLOSE ERROR(S)=":U \ 显示方位角闭合差 60(P+2)¼W 以秒为单位的方位角闭合差限差If Abs (U)>W:Then "ANGLE CLOSE ERROR OVER.":IfEnd 显示角度闭合差超限-U ÷(P+2)¼V 计算角度改正数2¼DimZ:0¼Z[1]:0¼Z[2] 定义额外变量数组用于存储坐标增量累加和 For 1¼I To P+1 分配角度改正数并计算导线边的坐标增量List X[I]+V ÷3600¼List X[I] 计算并存储改正后的角度If I=1:Then R+List X[I]¼L:Else List Freq[I-1]+List X[I]¼L:IfEnd 推算导线边方位角If L>180:Then L-180¼L:Else L+180¼L:IfEndL>360L-360¼L判断方位角是否大于360L ¼List Freq[I] 存储角度改正后的导线边方位角 List Y[I]cos(L)¼X:List Y[I]sin(L)¼Y 计算导线边坐标增量 X+Z[1]¼Z[1]:Y+Z[2]¼Z[2] 累加导线边坐标增量 NextList Freq[P+1]+List X[P+2]+V ÷3600¼L 计算最后一条导线边的方位角If L>180:Then L-180¼L:Else L+180¼L:IfEndL>360L-360¼L判断方位角是否大于360 L ¼List Freq[P+2] 存储最后一条导线边的方位角 3600(L-S)¼U 以秒为单位的方位角闭合差检核计算"CHECK ANGLE CLOSE ERROR(S)=":U \ 显示方位角闭合差检核结果 If Z=0:Then Z[1]¼U:Z[2]¼V 计算闭合导线的坐标增量闭合差Else C+Z[1]-E ¼U:D+Z[2]-F ¼V:IfEnd 计算附合导线的坐标增量闭合差M ÷(U 2+V 2)¼K 计算导线全长相对闭合差Fix 3:"DELTA X(m)=":U \ 显示导线X 坐标增量闭合差 "DELTA Y(m)=":V \ 显示导线Y 坐标增量闭合差 Fix 0:"RELAT CLOSE ERROR=":K \ 显示导线全长相对闭合差 -U ÷M ¼U:-V ÷M ¼V 计算坐标增量闭合差每米改正数If K<2000:Then "RELAT CLOSE ERROR OVER.":IfEnd 显示全长相对闭合差超限2(P+1)¼DimZ 定义额外变量数组用于存储未知点的坐标For 1¼I To P+1 分配坐标闭合差并计算未知点的坐标List Y[I]cos(List Freq[I])¼X:List Y[I]sin(List Freq[I])¼Y 计算导线边坐标增量 X+UList Y[I]¼X:Y+VList Y[I]¼Y 计算改正后的导线边坐标增量 If I=1:Then C+X ¼Z[2I-1]:D+Y ¼Z[2I]Else Z[2(I-1)-1]+X ¼Z[2I-1]: Z[2(I-1)]+Y ¼Z[2I]:IfEndNorm 1:"POINT n=":I \显示未知点号 Fix 3:"XP(m)=":Z[2I-1]\ 显示未知点的X 坐标 "YP(m)=":Z[2I]\ 显示未知点的Y 坐标 NextIf Z=0:Then Z[2(P+1)-1]-C ¼X:Z[2(P+1)]-D ¼Y 计算闭合导线的坐标检核结果 Else Z[2(P+1)-1]-E ¼X:Z[2(P+1)]-F ¼Y:IfEnd 计算附合导线的坐标检核结果"CHECK X(m)=":X \ 显示X 坐标检核计算结果 "CHECK Y(m)=":Y \ 显示Y 坐标检核计算结果 ClrStat:FreqOff 清除统计串列List X,List Y ,List Freq ,关闭频度串列 For 1¼I To P 分配坐标闭合差并计算未知点的坐标 Z[2I-1]¼List X[I]:Z[2I]¼List Y[I] 将未知点的坐标存储到统计串列List X,List Y 中 Next"PM3-1END" (3) 程序说明程序先提示用户输入导线类型与未知点总数。
正算主程序[KB-MN]“1,2,3,4,5”?Z:“1,2,3”?R:Prog“DX-1”:?X:?YLbl 1:Fix 3:?K:?B:90→AZ=1=>Prog“PQ-1”Z=2=>Prog“PQ-2”Z=3=>Prog“PQ-3”Z=4=>Prog“PQ-4”Z=5=>Prog“PQ-5”Prog“PQXY”:M-X→I:N-Y→J:Prog“C”:Cls:Locate 1,1,“J=”:Locate 4,1, J°:Locate 1,2,“I=”:Locate 7,2,I:Locate 1,3,“M=”:Locate 6,3,M:Locate 1,4,“N=”:Locate 6,4,N◢Cls:Goto 1反算主程序[MN-KB]“1,2,3,4,5”?Z:?KLbl 0:Fix 3:?M:?N:M→D:N→ELbl 1:90→A:0→BZ=1=>Prog“PQ-1”Z=2=>Prog“PQ-2”Z=3=>Prog“PQ-3”Z=4=>Prog“PQ-4”Z=5=>Prog“PQ-5”Prog“PQXY”:Pol(D-M+×10-9,E-N+×10-9:Isin(O-J→A:Icos(O-J→BIf Abs(A)>0.001:Then K+A→K:Goto 1:Else D→M:E→N:Cls:Locate 1,1,“K=”:Locate 9,2, K:Locate 1,3,“B=”:Locate 10,4,B◢IfEnd:Goto 0子程序[PQXY]G÷Abs(G→L:F2÷(24R→P:F÷2-F^(3)÷(240R2→Q:If R≤100:Then P-F^(4)÷(2688R^(3))+F^(6)÷(506880R^(5))-F^(8)÷(154828800R^(7→P:Q+F^(5)÷(34560R^(4))-F^(7)÷(8386560R^(6))+F^(9)÷(3158507520R^(8→Q:IfEndQ+(R+P)Ltan(G÷2→T:πRGL÷180+F→I:If K≤H-T:Then K-H→J:Goto 1:IfEndIf K≤H-T+F:Then K-H+T→J:1→S:Goto 2:IfEndIf K≤H-T+I-F:Then K-H+T→J:L→S:Goto 3:IfEndIf K<H-T+I:Then H-T+I-K→J:C+G→C:-1→S:Goto 2:IfEndIf K≥H-T+I:Then K-H-I+2T→J:C+G→C:Goto 1:IfEndLbl 1:U+Jcos(C→M:V+Jsin(C→N:C→O:Goto 5Lbl 2:C+90J2SL÷(πRF→O:J-T-J^(5)÷(40R2F2→W:J^(3)÷(6RF)-J^(7)÷(336R^(3)F^(3→L:If R≤100:Then W+J^(9)÷(3456(RF)^(4))-J^(13)÷(599040(RF)^(6))+J^(17)÷(175472640(RF)^(8→W:L+J^(11)÷(42240(RF)^(5))-J^(15)÷(9676800(RF)^(7))+J^(19)÷(353009664(RF)^(9→L:IfEnd:SW→W:LG÷Abs(G→L:Goto 4Lbl 3:180(J-0.5F) ÷(πR→O:Q-T+Rsin(O→W:L(P+R(1-cos(O→L:C+OS→OLbl 4:U+Wcos(C)-Lsin(C→M:V+Wsin(C)+Lcos(C→NLbl 5: O+A→O:M+Bcos(O→M:N+Bsin(O→N真似されているQQ:79868685子程序[C]I+×10-9→I:J+×10-9→J:Pol(I,J:J<0=>J+360→J数据库子程序[PQ-1]If K≤第一条弯道终点桩号:Then曲线起点切线方位角→C:交点X坐标→U:交点Y坐标→V:缓和曲线长度→F:道路转角(右转时输入为正值,左转时输入负值)→G:交点桩号→H:半径→R:Return:IfEndIf K≤下一条弯道终点桩号:Then曲线起点切线方位角→C:交点X坐标→U:交点Y坐标→V:缓和曲线长度→F:道路转角(右转时输入为正值,左转时输入负值)→G:交点桩号→H:半径→R:Return:IfEnd导线数据库子程序[DX-1]If R=1:Then 导线点G1的X坐标→X:导线点G1的Y坐标→Y:IfEndIf R=2:Then 导线点G2的X坐标→X:导线点G2的Y坐标→Y:IfEndIf R=2.1:Then 导线点G2-1的X坐标→X:导线点G2-1的Y坐标→Y:IfEndIf R=2.2:Then 导线点G2-2的X坐标→X:导线点G2-2的Y坐标→Y:IfEndIf R=3:Then 导线点G3的X坐标→X:导线点G3的Y坐标→Y:IfEnd本程序适用CASIO fx-5800P正算主程序[KB-MN]输入:1,2,3,4,5---选择待正算的线路1,2,3,4---选择导线点X---测站X坐标Y---测站Y坐标K---桩号B---距中(左负右正中零)结果:J=测站到放样点的方位角I=测站到放样点的平距M=放样点X坐标N=放样点Y坐标备注:输程序时,例“I +×10-9→I”的小“×10”为计算器面板的白色键“×10X”若求斜交时边桩坐标,主程序[KB-MN]中90→A修改为斜交角度→A若果道路为直线,则数据库子程序[PQ-1]中直线起点往终点的方位角→C:起点或往后某一点的X坐标→U:起点或对应的某一点的Y坐标→V:0→F:×10-9→G:起点或对应的某一点桩号→H:×10-9→R反算主程序[MN-KB]输入:1,2,3,4,5---选择待反算的线路K---待反算点附近的大概桩号M---待反算点X坐标N---待反算点Y坐标结果:K=反算点的桩号B=反算点的距中(左负右正中零)真似されているQQ:79868685欢迎同行光临本工程测量小店:进去将联系掌柜领取程序大礼包一份….。
5800P附(闭)合导线坐标平差程序名:DX-XY-PC程序清单:32 → DimZ (额外变量寄存器定义 ( 本程序以 11 个导线边数定义 , 如超过应修改此定义和程序内额外变量寄存器的变量表达式 ) ) : Lb1 0: " DX-DS (导线点数(含终点)) = "? W: " YZ-ZD-X (已知终点 X 坐标) = "?A: " YZ-ZD-Y (已知终点 Y 坐标) = "? B: " SC-ZD-X (实测终点 X 坐标) = "? C: " SC-ZD-Y (实测终点 Y 坐标) = "? D:C-A → E:D-B → F: √ (E2+F2) → G: Cls:Fix 4: " X-BHC ( X 闭合差) = " :Locate 7,1,E: " Y-BHC ( Y 闭合差) = " :Locate 7,2,F: " BC-BHC (边长闭合差) = ":Locate 8,3,G ◢Cls: " YZ-QD-X (己知起点 X 坐标) = "? O :O→ Z[31]: " YZ-QD-Y (己知起点 Y 坐标) = "?P:P → Z[32]: 0 → H:0 → N: Lb1 1:N+1 → N: Cls: " N= ":Locate 4,1,N ◢" SCD-X (实测点 X 坐标) = "?X:X → Z[N]: " SCD-Y (实测点 Y 坐标) = "?Y:Y → Z[N+11]: Po1 ( X-O, Y-P ): I → Z[N+21]: H+I → H:X →O: Y → P: If N<W: Then Goto 1:IfEnd : If N=W: Then Goto 2:IfEnd ←」L b1 2:H ÷ G → K: Cls:Fix 5: " DX-QC (导线全长) = " :Locate 7,1,H: " DX-QC-XD-BHC-FM (导线全长相对闭合差的分母) = " :Locate 1,3,K ◢0 → N:0 → R:If 1 ÷ K <1 ÷ 10000 (导线全长相对闭合差允许值的分母) : Then Goto 3:E1se Goto 4: IfEnd ←」Lb1 3:N+1 → N: Cls: " N= ":Locate 4,1,N ◢Po1 ( Z[N]-Z[31] , Z[N+11]-Z[32] ):R+Z[N+21] → R:Z[N]-(ER) ÷ H → U:Z[N+11]-(FR) ÷ H → V: Cls:Fix 4: " N= " :Locate 4,1,N: " PCH-X (平差后的 X 值) = " :Locate 7,2,U: " PCH-Y (平差后的 Y 值)= ":Locate 7,3,V ◢0 → Z[31]:0 → Z[32]: Z[N] → Z[31]:Z[N+11] → Z[32]: If N<W: Then Goto 3:E1se Goto 5:IfEnd ←」Lb1 4: " BHC (闭合差) - CX (超限)⇒ CX (重新) -CL (测量)"◢Lb1 5: "FH → 1 ,TC → 0 "? Z:Z=1 ⇒ Goto 0: Z=0 ⇒ Return程序功能:本程序可以利用全站仪在闭(符)合导线点上实测的 X 、 Y 坐标值,计算出坐标闭合差、边长闭合差和导线全长闭合差以后,若闭合差小于允许闭合差,则将坐标闭合差反号后按各导线边长占导线全长的比例进行改正数计算,正确的计算出各导线点的平差后坐标值;若闭合差大于允许闭合差,则自动停止计算,显示 BHC (闭合差)→ CX (超限)⇒ CX (重新) -CL (测量)。
电气与信息工程河南科技Henan Science and Technology总第799期第5期2023年3月CASIO fx-5800P 在工程测量导线计算中的应用张蕾(兰州现代职业学院,甘肃兰州730300)摘要:【目的】本研究利用CASIO fx-5800P 可程序型电子计算器来解决闭合导线和附合导线两种导线形式的外业计算中存在的问题。
【方法】对导线计算、程序编写、程序运行和程序在工程中的具体应用进行研究。
【结果】在进行外业计算时,利用编制好的程序,不但能大大提高计算速度,还能保证计算结果的精度。
【结论】CASIO fx-5800P 可程序型电子计算器不仅具有强大的程序计算功能,且体积小、重量轻、便于随身携带,能进一步提高工作效率,从而在测量行业中被广泛使用。
关键词:计算器;程序;导线;平差中图分类号:TP311.1;P214文献标志码:A文章编号:1003-5168(2023)05-0015-05DOI :10.19968/ki.hnkj.1003-5168.2023.05.003Application of CASIO fx-5800P in Engineering Survey Wire CalculationZHANG Lei(Lanzhou Modern Vocational College,Lanzhou 730300,China)Abstract:[Purposes ]In this study,CASIO fx-5800P programmable electronic calculator was used tosolve the problems existing in the field calculation of closed wire and attached wire.[Methods ]The spe⁃cific application of wire calculation,programming,program operation and program in engineering was studied.[Findings ]In the field calculation,the use of the compiled program can not only greatly improvethe calculation speed,but also ensure the accuracy of the calculation results.[Conclusions ]CASIO fx-5800P programmable electronic calculator not only has powerful program calculation function,but also has other adventages,such as small size,light weight,and easy to carry.So it can further improve workefficiency,and it is widely used in the measurement industry.Keywords:calculator;procedure;wire;adjustment0引言CASIO 公司的fx 系列电子计算器是在二十世纪七十年代末期被引入我国的,是最早被引入我国的便携式程序型电子计算器。