5800计算器程序5.docx

上传人:b****8 文档编号:29651702 上传时间:2023-07-25 格式:DOCX 页数:18 大小:24.56KB
下载 相关 举报
5800计算器程序5.docx_第1页
第1页 / 共18页
5800计算器程序5.docx_第2页
第2页 / 共18页
5800计算器程序5.docx_第3页
第3页 / 共18页
5800计算器程序5.docx_第4页
第4页 / 共18页
5800计算器程序5.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

5800计算器程序5.docx

《5800计算器程序5.docx》由会员分享,可在线阅读,更多相关《5800计算器程序5.docx(18页珍藏版)》请在冰豆网上搜索。

5800计算器程序5.docx

5800计算器程序5

FX5800计算器测量程序集2.0版

 一、程序功能

    主要功能:

计算多条线路坐标正反算,可算任意复杂线型及立交匝道,包括C型,S型、卵型、回头曲线等;极坐标放样,全线路基边坡开挖口及坡脚放样计算、路基任意点设计高程、横坡、设计半幅宽度.隧道欠超挖放样计算。

新版本特点:

1、优化原所有主程序,所有参变量(如导线点置仪点坐标、正反算选择、偏角、线路选择等),全部在程序头次显示一次,以后运行不需输入。

运行中也可以返回再次选择线路、可以直接以矩阵形式调出线路参数。

2、坐标计算考虑了线元法与交点法相结合,即是一条线路也可以一段用线元法,一段用交点法。

参数置放矩阵中,输入和可读性极好。

3、新增隧道断面欠超挖值放样计算

4、高程程序中考虑了初次输入线路选择、计算面与设计面高差,输出中加入显示本桩号路基标准宽度。

二、源程序

1.主程序1:

一般放样正反算程序(①正算坐标、放样点至置仪点方位角及距离;②反算桩号及距中距离)

程序名:

1ZD-XY

Lb1Q:

Norm2:

14→DimZ:

1→F:

Prog"DX":

Lb1X:

Prog"QX":

90→B:

"PJ"?

B:

B→Z[1]:

Lb10:

Norm2:

“KM”?

Z:

IfZ=-1:

ThenGotoX:

ElseIfZ=-2:

Then2→F:

Goto0:

ElseIfZ=-3:

ThenGoto9:

IfEnd:

Prog"KM":

IfF=1:

Then?

D:

Else“X0”?

X:

“Y0”?

Y:

IfEnd:

Prog"THB":

IfF=1:

ThenGoto1:

ElseGoto2:

Lb11:

Fix3:

"  X=":

Locate6,4,X◢

"  Y=":

Locate6,4,Y◢

Prog"6JS”:

Goto0:

Lb12:

Fix3:

" KM=":

Locate6,4,Z◢

"  D=":

Locate6,4,D◢

Goto0:

Lbl9:

MatF◢

GotoQ

2.主程序2:

高程、横坡、宽度程序(计算设计任意点高程、横坡及路基设计标准宽度)

程序名:

2GC

14→DimZ:

LbI0:

Norm2:

Prog"QX":

0→B:

”H-B:

”?

B:

B→Z[9]:

LbIH:

Norm2:

“KM”?

Z:

Z=-1=>Goto0:

?

D:

Prog”H”:

Fix3:

”  H=”:

Locate6,4,H◢

 “  I=”:

Locate6,4,I◢

Prog"GD":

“SJLG=”:

Locate6,4,L◢

 GotoH

3.主程序3:

涵洞放样程序(输入置仪点坐标。

选择线路、输入路线右夹角、前进方向偏角、由涵中心桩号计算出各涵角坐标、计算放样点至置仪点方位角及距离)

程序名:

3JH-XY

14→DimZ:

Prog"DX":

LbIX:

Norm2:

Prog"QX":

90→B:

"PJ1"?

B:

B→C:

"PJ2"?

C:

B→Z[1]:

C→Z[8]:

LbI0:

Norm2:

1→F:

“KM”?

Z:

IfZ=-1:

ThenGotoX:

?

D:

Prog”THB”:

0→L:

“L0”?

L:

Z[2]+Z[1]-Z[8]→E:

X+Lcos(E)→X:

Y+Lsin(E)→Y:

Fix3:

"  X=":

Locate6,4,X◢

"  Y=":

Locate6,4,Y◢

Prog"6JS”:

Goto0:

4.主程序4:

路基开挖边线及填方坡脚线放样程序(输入填方放宽值、大概桩号及测量坐标、地面标高计算出偏移距离、桩号、距中距离、填挖高度)

程序名:

4FBX

17→DimZ:

LbIB:

Norm2:

Prog"QX":

0.5→B:

“TH-GD”?

B:

B→Z[17]:

LbI0:

Norm2:

2→F:

90→Z[1]:

“KM”?

Z:

IfZ=-1:

ThenGotoB:

“X0”?

X:

“Y0”?

Y:

0→M:

“M0”?

M:

M→Z[4]:

Prog”THB”:

D→P:

Prog”GD”:

IfD<0:

Then0.75-L→D:

GotoH:

ElseL-0.75→D:

GotoH:

IfEnd

LbIH:

Prog“H”:

H-0.03-Z[4]→Z[4]:

Prog“W1”:

IfZ[4]<0:

Then–Z[4]→G:

GotoW:

ElseZ[4]→G:

GotoT:

LbIW:

Z[8]+Z[9]→A:

IfG>A:

ThenGoto1:

ElseIfG>Z[8]:

ThenGoto2:

ElseGoto3:

IfEnd:

LbI1:

L+Z[10]+Z[11]+Z[12]+(G-A)×Z[7]+Z[9]×Z[6]+Z[8]×Z[5]→S:

GotoZ:

LbI2:

L+Z[10]+Z[11]+(G-Z[8])×Z[6]+Z[8]×Z[5]→S:

GotoZ:

LbI3:

L+Z[10]+G×Z[5]→S:

GotoZ:

LbIT:

L+Z[17]→T:

IfG>Z[15]:

Then(T+Z[16]+(G-Z[15])×Z[14]+Z[15]×Z[13])→S:

GotoZ:

Else(T+G×Z[13])→S:

GotoZ:

LbIZ:

Fix2:

Abs(P)-S→K:

” L0=”:

Locate6,4,K◢

Fix3:

" KM=":

Locate6,4,Z◢

"  D=":

Locate6,4,P◢

Z[4]>0=>Z[4]+I(T-L)→Z[4]:

“   TW=”:

Locate6,4,Z[4]◢

Goto0

5.主程序5.隧道超欠挖值计算放样程序(输入隧道线路,大概桩号、输入测量三维坐标,计算准确桩号及位置、计算欠超挖值)

程序名:

5SD

15→DimZ:

LbIB:

Norm2:

Prog"QX":

LbI0:

Norm2:

2→F:

90→Z[1]:

“KM”?

Z:

IfZ=-1:

ThenGotoB:

Prog“XD1”:

”X0”?

X:

“Y0”?

Y:

0→M:

“M0”?

M:

M→Z[8]:

Prog“THB”:

D→Z[10]:

0→D:

Prog“H”:

Cos(Z[10])*Z[4]→E:

H+Z[5]→Z[5]:

H+Z[7]→Z[7]:

E+Z[5]→Z[10]:

IfZ[8]>Z[10]:

ThenGotoR:

ElseGotoS:

IfEnd:

LbIR:

√((D-Z[9])2+(Z[8]-Z[5])2)-Z[4]→L:

GotoL:

LbIS:

Z[4]-Z[6]→S:

√(S2-(Z[7]-Z[5])2)→T:

Abs(D-Z[9])-T→T:

√(T2+(Z[8]-Z[7])2)-Z[6]→L:

GotoL:

LbIL:

Fix2:

” L0=”:

Locate6,4,L◢

Fix3:

" KM=":

Locate6,4,Z◢

"  D=":

Locate6,4,D◢

 “   H0=”:

Locate6,4,Z[8]-H◢

Goto0

6:

极坐放样计算程序(计算放样点至置仪点方位角及距离)

程序名:

6JS

X:

Y:

Z[11]→K(置仪点X坐标)

Z[12]→L(置仪点Y坐标)

Pol(X-K,Y-L):

IFJ<0:

ThenJ+360→J:

Int(J)+0.01Int(60Frac(J))+0.006Frac(60Frac(J))→J:

(不习惯小数点后四位为角度显示的,也可以用命令J◢DMS◢来直接显示)Fix4:

”FWJ=”:

Locate6,4,J◢

Fix3:

”  S=”:

Locate6,4,I◢

 

7.路基宽度次程序6:

路基标准半幅宽度计算程序(对于设计有加宽渐变的有用,如路基宽度无变化,则把此程序直接输入半幅宽度值至L)

程序名:

GD

1→S:

IfZ[3]=1:

ThenProg“G1”:

Goto1:

ElseProg“G2”:

Goto1:

IfEnd

LbI1:

Z-C→E:

(B-A)*E/S+A→L:

8.坐标计算次程序(THB)

程序名:

THB

IfQ=2:

ThenGotoJ:

1÷P→C:

(P-R)÷(2HPR)→S:

180/Π→E:

IfF=1:

Then:

Abs(Z-0)→W:

Prog"A":

Goto2:

Else:

X→I:

Y→J:

Prog"B":

O+W→Z:

D→D:

Goto2:

IfEnd:

LbIJ:

IfF=1:

Then:

Prog"Z":

Goto1:

Else:

Prog"ZX":

Goto2:

IfEnd:

LbI1:

I+D*COS(Z[2]+Z[1])→X:

J+D*Sin(Z[2]+Z[1])→Y:

LbI2:

 9.线元法正算子程序(A)

程序名:

A

0.1184634425→A:

0.2393143352→B:

0.2844444444→N0.046910077→K:

0.2307653449→L:

0.5→M:

U+W(Acos(G+QEKW(C+KWS))+Bcos(G+QELW(C+LWS))+Ncos(G+QEMW(C+MWS))+Bcos(G+QE(1-L)W(C+(1-L)WS))+Acos(G+QE(1-K)W(C+(1-K)WS)))→X:

V+W(Asin(G+QEKW(C+KWS))+Bsin(G+QELW(C+LWS))+Nsin(G+QEMW(C+MWS))+Bsin(G+QE(1-L)W(C+(1-L)WS))+Asin(G+QE(1-K)W(C+(1-K)WS)))→Y:

G+QEW(C+WS)→Z[2]:

X+Dcos(Z[2]+Z[1])→X:

Y+Dsin(Z[2]+Z[1])→Y

10.线元法反算子程序(B)

程序名:

B

G-90→T:

Abs((Y-V)cos(T)-(X-U)sin(T))→W:

0→D:

Lbl0:

Prog"A":

T+QEW(C+WS)→L:

(J-Y)cos(L)-(I-X)sin(L)→D:

IFAbs(D)<0.01:

ThenGoto1:

ElseW+D→W:

Goto0:

IfEnd:

←┘

Lbl1:

0→D:

Prog"A":

(J-Y)÷sin(Z[2]+90)→D:

11.交点法正算子程序(Z)

程序名:

Z

H2/R/24-H∧(4)/2688/R∧(3)→A:

H/2-H∧(3)/240/R2→B:

(R+A)tan(Abs(P)/2)+B→T:

O-T→C:

C+H→L:

L+ΠR*Abs(P)/180→N:

N-H→E:

P/Abs(P)→W:

0→M:

IfZ

ThenZ-O→S:

G→Z[2]:

Goto2:

IfEnd:

IfZ≥N:

ThenZ-N+T→S:

G+P→Z[2]:

Goto2:

IfEnd:

IfZ≥E:

ThenN-Z→S:

Prog“HX”:

G+P→S:

S-WK→Z[2]:

U+(T-A)Cos(S)-WBSin(S)→I:

V+(T-A)Sin(S)+WBcos(S)→J:

Goto3:

IfEnd:

IfZ>L:

Then180(Z-L+0.5H)/R/Π→S:

H/2-H∧(3)/240/R2+Rsin(S)→A:

H2/R/24-H∧(4)/2688/R∧(3)+R(1-Cos(S))→B:

R→M:

G+WS→Z[2]:

Goto4:

IfEnd:

Z-C→S:

Prog“HX”:

G+WK→Z[2]:

LbI4:

U+(A-T)cos(G)-WBsin(G)→I:

V+(A-T)Sin(G)+WBcos(G)→J:

Goto3:

LbI2:

U+Scos(Z[2])→I:

V+Ssin(Z[2])→J:

LbI3:

12.交点法缓和段转化子程序(HX)

程序名:

HX

S-S∧(5)/40/R2/H2+S∧(9)/3456/R∧(4)/H∧(4)→A:

S∧(3)/6/R/H-S∧(7)/336/R∧(3)/H∧(3)+S∧(11)/42240/R∧(5)/H∧(5)→B:

90S2/Π/R/H→K:

RH/S→M:

13.交点法反算子程序(ZX)

程序名:

ZX

Z:

0→D:

LbI0:

Prog“Z”:

Pol(X-I,Y-J):

J-Z[2]→J:

Isin(J)→S:

Icos(J)→I:

IfAbs(I)<0.1:

ThenZ+I→Z:

S→D:

Goto2:

ElseGoto1:

LbI1:

IfM=0:

ThenZ+I→Z:

Goto0:

ElesPol(M-WS,I):

(JMΠ)/180→I:

Z+I→Z:

Goto0:

IfEnd

LbI2:

14.高程计算子程序(H)

程序名:

H

Prog“S1”:

C-T→F:

Z-F→S:

C+T→E:

G-TI→Q:

IfT=O:

ThenQ+SI→H:

Goto0:

ElseIfZ

ThenQ+SI→H:

Goto0:

ElseIfZ≤E:

ThenQ+SI+S2÷2÷R→H:

Goto0:

LbI0:

H:

IfD=0:

ThenGotoI:

ElseProg“I”:

H+V→H:

LbII:

 15.高程超高计算程序(I)

程序名:

I

IfZ[3]=1:

ThenProg“I1”:

Goto1:

ElseProg“I2”:

Goto1:

IfEnd:

LbI1:

IfW=1:

Then:

GotoZ:

Else:

GotoX:

IfEnd

LbIZ:

IfS=0:

ThenAbs(D)×M→V:

Goto2:

ElseAbs(D)×((N-M)×(Z-C)÷S+M)→V:

Goto2:

IfEnd:

LbIX:

IfS=0:

ThenAbs(D)×M→V:

Goto2:

ElseAbs(D)×(((3((Z-C)÷S)2-2((Z-C)÷S)∧(3))×(N-M))+M)→V:

Goto2:

IfEnd:

LbI2:

Abs(D)→E:

V÷E→I:

I(E-K)→V:

16.导线点子程序(DX)

程序名:

DX

Z[11]→K:

Z[12]→L:

“XZ”?

K:

”YZ”?

L:

K→Z[11]:

L→Z[12]:

17.线路选择子程序(线路选择输入0时。

则手工输入曲线参数(QX)

程序名:

QX

1→A:

”QX:

?

=0,X1=1,X2=2”?

A:

A→Z[3]:

IfA=0:

ThenGoto1:

ElseGoto2:

IfEnd:

LbI1:

”ZO”?

O:

”XO”?

U:

”YO”?

V:

”FW”?

G:

”LS”?

H:

?

P:

?

R:

”J=2,X=(0,1,-1)”?

Q:

Goto2:

LbI2:

18.线路中线元段判别子程序(KM)

程序名:

KM

IfZ[3]=0:

ThenGoto0:

ElseIfZ[3]=1:

Then Prog“X1”:

Goto0:

ElseProg“X2”:

Goto0:

IfEnd:

LbI0:

19.坐标计算参数转化子程序(F)

程序名:

F

MatF[1,1]→O:

MatF[1,2]→U:

MatF[1,3]→V:

MatF[1,4]→G:

MatF[1,5]→H:

MatF[1,6]→P:

MatF[1,7]→R:

MatF[1,8]→Q:

20.数据子程序(附后示例)

①-1程序名:

X1(线路1坐标计算要素程序)

If Z≤26615.555:

Then[[25900,11587.421,1847.983,101。

09’23.1”,715.555,1×1045,1×1045,0]]→MatF:

Goto0:

IfEnd:

IfZ≤26915.555:

Then[[26615.555,11448.97,2550.016,101。

09’23.1”,300,1×1045,1800,1]]→MatF:

Goto0:

IfEnd:

……

LbI0:

Prog”F”:

①-2程序名:

X2(线路2坐标计算要素程序)

If Z≤616.951:

Then[[316.951,11230.669,3213.086,118。

42’28.42”,300,180045,1×1045,1]]→MatF:

Goto0:

IfEnd:

IfZ≤4050:

Then[[3089.766,9708.017,5530.185,123。

28’57.1”,300,-44。

39’38”,2200,2]]→MatF:

Goto0:

IfEnd:

……

LbI0:

Prog”F”:

程序字母说明:

O-线元起点桩号(交点桩号);U-起点X坐标(交点X);V-起点Y坐标(交点Y);G-线元起点桩号切线方位角(交点前一交点至现交点方位角);H-线元长度(缓和曲线长度),P-线元起点曲率半径(偏角为正负,左偏为负,右偏为正),R-线元终点曲率半径(圆半径),Q-线元判别(以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0)(交点法取值2)说明括内为交点法子母代表意思。

②-1程序名:

S1(线路1高程竖曲线要素子程序)

IfZ[3]=1:

ThenGoto1:

ElseProg“S2”:

Goto0:

IfEnd:

LbI1:

IfZ≤26157.8:

Then-200000→R:

157.8→T:

26000→C:

37.1→G:

0.01222→I:

Goto0:

IfEnd:

IfZ≤27421.915:

Then300000→R:

171.915→T:

27250→C:

32.65→G:

-0.00356→I:

Goto0:

IfEnd:

IfZ≤27889.029:

Then1000000→R:

134.029→T:

27755→C:

36.64→G:

0.0079→I:

Goto0:

IfEnd:

……

LbI0:

②-2程序名:

S2(线路2高程竖曲线要素子程序)

IfZ≤183.007:

Then1365→R:

20.475→T:

162.532→C:

46.1→G:

0.003→I:

Goto0:

IfEnd:

IfZ≤321.264:

Then-1200→R:

38.732→T:

282.532→C:

50.175→G:

0.033→I:

Goto0:

IfEnd:

LbI0:

程序字母说明:

C-竖曲线交点桩号;G-交点桩号高程(未竖曲线调整的);T-竖曲线切线长;R-竖曲线半径(分正负:

凹曲线为正,凸曲线为负);I-竖曲线前纵坡

③-1程序名:

I1(线路1高程超高参数子程序)

1.5→K:

2→W:

IfD<0:

ThenGotoL:

ElseGotoR:

IfEnd:

LbIL:

IfZ≤26615.555:

Then0→S:

-0.02→M:

Goto0:

IfEnd:

IfZ≤26735.555:

Then120→S:

26615.555→C:

-0.02→M:

0.02→N:

Goto0:

IfEnd:

IfZ≤26795.555:

Then60→S:

26735.555→C:

0.02→M:

0.04→N:

Goto0:

IfEnd

……

LbIR:

IfZ≤26735.555:

Then0→S:

-0.02→M:

Goto0:

IfEnd

IfZ≤26795.555:

Then60→S:

26735.555→C:

-0.02→M:

-0.04→N:

Goto0:

IfEnd

IfZ≤27436.951:

Then0→S:

-0.04→M:

Goto0:

IfEnd

……

LbI0

③-2程序名:

I2(线路2高程超高参数子程序)

0.5→K:

1→W:

IfD<0:

ThenGotoL:

ElseGotoR:

IfEnd:

LbIL:

IfZ≤100:

Then0→S:

-0.015→M:

Goto0:

IfEnd:

IfZ≤110:

Then10→S:

100→C:

-0.015→M:

-0.02→N:

Goto0:

IfEnd:

IfZ≤343.665:

Then0→S:

-0.02→M:

Goto0:

IfEnd

……

LbIR:

IfZ≤100:

Then0→S:

-0.015→M:

Goto0:

IfEnd

IfZ≤110:

Then10→S:

100→C:

-0.015→M:

-0.02→N:

Goto0:

IfEnd

IfZ≤375.665:

Then0→S:

-0.02→M:

Goto0:

IfEnd

……

LbI0

字程序中字母表示说明:

K-中央分隔带半幅宽(中桩标高至中桩中线距离,无分隔带则为0);W-超高方式参数(W=1为一般直线方式超高,W=2为三次抛物线方式超高);S-超高渐变段距离(不是渐变段则输入0);C-超高渐变段起点桩号(不是渐变段,无需输入);M-超高段起点横坡,N-超高渐变段终点横坡(不是渐变段,无需输入)。

④-1程序名:

G1(线路1路基标准半幅宽度参数子程序)

IfD<0:

ThenGotoL:

ElseGotoR:

IfEnd:

LbIL:

IfZ≤28110.727:

ThenZ→C:

17.25→A:

Goto0:

IfEnd:

IfZ≤28200.727:

Then28110.727→C:

17.25→A:

21.25→B:

90→S:

Goto0:

IfEnd

……

LbIR:

Z≤27927.478:

ThenZ→C:

17.25→A:

Goto0:

IfEnd

IfZ≤28172:

Then27927.478→C:

17.25→A:

27.031→B:

244.522→S:

Goto0:

IfEnd

……

LbI0

④-2程序名:

G2(线路2路基标准半幅宽度参数子程序)

IfD<0:

ThenGotoL:

ElseGotoR:

IfEnd:

LbIL:

IfZ≤69.998:

ThenZ→C:

28.25→A:

Goto0:

IfEnd:

IfZ≤82.402:

Then69.998→C:

28.25→A:

25.545→B:

12.404→S:

Goto0:

IfEnd

……

LbIR:

Z≤69.998:

ThenZ→C:

17.45→A:

Goto0:

IfEnd

IfZ≤80.367:

Then69.998→C:

17.45→A:

16.787→B:

10.369→S:

Goto0:

IfEnd

……

LbI0

字程序中字母表示说明:

C-宽度渐变段起点桩号(不是渐变段C=Z);A-宽度渐变段起点宽度;B-宽度渐变段终点宽度(不是渐变段,无需输入);S-宽度渐变段距离(不是渐变段,无需输入)。

 

⑤-1程序名:

XD1(线路1隧道参数子程序)

IfZ[3]=1:

ThenGoto1:

ElseProg“XD2”:

Goto0:

IfEnd:

LbI1:

8.75→Z[4]:

-1.1→Z[5]:

4.77→Z[6]:

1.47→Z[7]:

-0.25→Z[9]:

51。

28’57.1”→Z[10]:

LbI:

0

⑤-2程序名:

XD2(线路2隧道参数子程序)

8.5→Z[4]:

-1.15→Z[5]:

4.5→Z[6]:

1.52→Z[7]:

0.25→Z[9]:

55。

20’51.6”→Z[10]:

字程序中字母表示说明:

Z[4]-隧道上拱半径;Z[5]-隧道上拱圆心至设计面高度;Z[6]-隧道中腰部半径;Z[7]-中腰圆心至设计面高度;Z[9]-设计隧道中线与设计路基中线偏移值,左为负数,右为正数;Z[10]-上部拱跨隧道半幅角度;

 

⑥-1程序名:

W1(线路1路基填挖边坡参数子程序)

I

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1