文档库 最新最全的文档下载
当前位置:文档库 › FX4850

FX4850

FX4850
FX4850

FX—4850P(带设计中桩高程)

F1 ZB(主程序)

Lbl 1:Y=0:E“ZX(1),ZF(2),ZA-F(3-8),GL(9-10)”:Prog“QZ”:Y= -1→Goto 1◣K=0:{E}:E“YDY(Y)”:E=Y→Goto D◣Z[7]= -1→Goto Q◣{O}:O“Z,Y(-1,1)”:P“PJ”:R“R”:L“LS1”:W“LS2”:D“ZH”;C“FWJ”:A“ZHN”:B“ZHE”:Lbl Q:U“Z.N”:M“Z.E”:{K}:K“Z.H”:Z[3]=K :V“F.N”:Z“F.E”Lbl X:{F}:F“YGZ(1)”:F=1→Prog“GZ”:Prog“SJG”◣{N}:N“K”:N≠ 0→Goto C◣{Q}:Q“KZD(Y)”:Q≠ Y→Goto E◣Lbl 9:{F}:F“KZH”:F=Int F :F≤0 →Prog“E”:Goto 9◣ F > Z[10] →Prog“E”:Goto 9◣Prog“K.D”:Goto F◣Lbl E:{XY}:X“X”:Y“Y”:Lbl F:{F}:F “FWJ(-1)”:F= -1 →Prog“FWJ”:Goto X ◣Prog“F”:Goto X:Lbl C:Z[7]= -1 →Prog“LC”◣Q = -1 →Prog“E”:Goto X◣

T=(R+W2/24/R)tan(P/2)+W/2-W3/240/R2+((L2-W2)/24/R)/sin P :

H=(R+W2/24/R)tan(P/2)+L/2-L3/240/R2-((L2-W2)/24/R)/tan P :

Lbl 9:K=PRπ/180-(L+W)/2:{G}:G“L Y(Z/Y(+,-))”:S=N-D:S<0 →X=S:Y= -G :Goto Y ◣S > L+W+K →S=S-L-W-K:X=H+(T+S)cos P +OG sin P:Y=O(T+S)sin P-G con P:Goto Y ◣S≤L →Q=90 S2/R/L/π:X=S-S5/(40R2L2)+OG sin Q:Y=O (S3/6/R/L-S7/336/R3/L3)-G cos Q:Goto Y ◣S≤L +K→Q=180(L/2/R+(S-L)/R)/π:X=R sin Q+L/2-L3/240/R2+OG sin Q:Y=Q(R(1- cos Q)+L2/24/R)-G cos Q:Goto Y ◣S=L+W+K+D-N:E=S3/6/R/W-S7/336/R3/J3:F=S-S5/40/R2/W2:Q=P-90S2/R/W/π:X=H+(T-F)cos P-E sin P+OG sin Q:Y=O(T-F)sin P+OE cos P-G cos Q:Lbl Y:Prog “X.Z”:{F}:F“YZB(Y),FWJ(-1)”:F= -1 →Prog“FWJ”:Goto X◣F≠ Y→Prog “F”:Goto X◣“X”:X◢“Y”:Y◢Goto X :Lbl D:Z[7] ≠ -1→Prog“ZH”◣Prog “ZH1”:Goto X

F2 ZD(转点计算)

Y=0:J=0:Lbl 1:{EUMVZ}:E“KZD(Y)”:E=Y→Goto 3◣U“Z.X”:M “Z.Y”:V“F.X”:Z“F.Y”:Lbl 2:{EQS}:E“FWJ(-1)”:Q“ZJ”:S“JL”:E= -1 →F= Q:Goto 4◣Pol(V-U,Z-M):Z-M < 0→J=360+J◣“FWJ1”:J◢F=Q+W:

F > 360→F=F-360◣“FWJ2”:F◢X=U+Res(S,F):Y=M+J:“X=”:X◢“Y=”:

Y◢Goto 1:Lbl 3:Prog“ZH1”:Goto 2

“KZD(Y)”:为是否调用变量存储器中的控制点,输入Y为,是转入“ZH1”,否则直接输入。U为置仪点X坐标,M为置仪点Y坐标,V为后视点X坐标,Z为后视点Y坐标。“FWJ(-1)”为显示是否为方位角。。。。。Q为待算点的左转角,S为待算点与置仪点的距离。“FWJ1”:J◢为显示方位角1,即置仪点对后视点得方位角。“FWJ2”:F◢为显示方位角2,即置仪点对待算点得方位角。X为待算点X坐标,Y为待算点Y坐标。F3 CSSR

Lbl 1:Y = -2 :{O}:O“JD,KD,LX,SQ(-1,1,0, -2)”:O = -1 →Goto 2 ◣O = -2 →Goto D ◣O = 1 →Goto 6 ◣O = 0 →Goto A ≠→Prog“E”:Goto 1◣Lbl 2:T = Z[9] :“JDS=”:T ◢{E}:E“JDH”:E ≤0 →Prog“E”:Goto 1 ◣ E > Z[9]→Goto 4 ◣Lbl 3:Prog“JD”:U = Z[10E +60+ 9]:M = Z[10E +60+ 10]:{ORLWDABUM}:O“Z,Y(-1,1)”:“PJ”:P→DMS◢{P}:

P“PJ”:R“R”:L“LS1”:W“LS2”:D“ZH”:“FWJ”:C→DMS◢{C}:C“FWJ”:A“ZHN”:B“ZHE”:U“DLZH”:M“LC”:{T}:T“SF(Y)”:T = Y →Goto 5 ◣Goto 1 :Lbl 5:O < 0 →Z[10E +60+ 1] = -P :≠→Z[10E +60+ 1]= P ◣Z[10E +60+ 2]= R:Z[10E +60+ 3]= L:Z[10E +60+ 4]= W:Z[10E +60+ 5]= D:Z[10E + 60+6]= C:Z[10E + 60+7]= A:Z[10E + 60+8]= B:Z[10E +60+ 9]= U:Z[10E + 60+10] = M:Goto 1:Lbl 4:E >Z[8]→Prog“E”:Goto 1 ◣ E = Z[9]+1→Z[9] = Z[9]+1:Goto 3 ◣Prog“E”:Goto 1:

Lbl 6:T = Z[10] :“KDS=”:T ◢{F}:F“KDH”:E =Z[8]:H =Z[11]:F ≤0 →Prog“E”:Goto 1 ◣ F >Z[10]→Goto 9 ◣Lbl 7:U =Z[10E+70+3H +3F - 2]:M =Z[10E+70+3H +3F - 1]:Z =Z[10E+70+3H +3F]:{UMZT}:U“K.N”:M“K.E”:Z“K.H”:T“SF(Y)”:T = Y →Goto 8 ◣Goto 1 :Lbl 8:Z[10E+70+3H +3F - 2] = U:Z[10E+70+3H +3F - 1] = M:Z[10E+70+3H +3F] = Z:Goto 1 :Lbl 9:F =Z[10]+1→Z[10] = Z[10]+1:Goto 7 ◣Prog“E”:Goto 1:

Lbl A:E“ZX(1),ZF(2),ZA-F(3-8),GL(9-10)”:E ≤ 0 →Prog“E”:Goto 1 ◣ E >

10 →Prog“E”:Goto 1◣E=Int E :A =Z[30+4E-3]:B =Z[30+4E-2]:U =Frac

(Z[30+4E-1]/100)*100:M =Iin(Z[30+4E-1]/100):Z =Frac(Z[30+4E]/100)*100:H =Iin(Z[30+4E]/100):{ABUMZHT}:A“LXQD”:B“LXZD”:U“JDS”:M“LXM”:Z“JDQD”:H“BPDQD”:U=Int U :M=Int M :Z=Int Z :H=Int H :T“SF(Y)”:T = Y →Z[30+4E-3]=A:Z[30+4E-2]=B:Z[30+4E-1]=U+M*100:Z[30+4E]=Z+H*100:◣Goto 1

Lbl D:T = Z[12] :“BPDS=”:T ◢{F}:F“BPDH”:E =Z[8]:F ≤0 →Prog“E”:Goto 1 ◣ F >Z[12]→Goto B ◣Lbl E:U =Z[10E+70+3F - 2]:M = Z[10E+70 +3F - 1]:Z =Z[10E+70 +3F]:{UMZT}:U“B.H”:M“B.G”:Z “B.R”:T“SF(Y)”:T = Y →Goto C ◣Goto 1 :Lbl C:Z[10E+70 +3F - 2] = U:Z[10E+70 +3F - 1] = M:Z[10E+70 +3F] = Z:Goto 1 :Lbl B:F = Z[12]+1→Z[12] = Z[12]+1:Goto E ◣Prog“E”:Goto 1:

F4 X.Z(子程序)

E=X:

X=A+X cos C-Y sin C

Y=B+Y cos C+E sin C

用于将主程序计算的小坐标转变为大坐标(测量坐标)

F5 F(子程序)

J=0:I=0:Pol(V-U,Z-M)

E=J

Pol(X-U,Y-M)

J<0→J=360+J◣

F=J-E:F<0→F=360+F◣

F>360→F=F-360◣

“PJ=”:F→DMS◢:“S=”:I◢

用于将主程序计算的直角坐标转变为极坐标(转角和距离)。

F6 FWJ(子程序)

J=0:I=0:Pol(X-U,Y-M):J<0→J=360+J ◣“FWJ=”:J→DMS◢:“S=”:I◢

用于将主程序计算的直角坐标转变为极坐标(方位角和距离)。

F7 E(子程序)

“ERROR”◢

用于显示输入错误。

F8 ZH(子程序)

Lbl 1:{E}:E“JDH”:Q= Z[9]:E=Int E :E ≤0 →Prog“E”:Goto 1 ◣ E >Q →Prog “E”:Goto 1 ◣Prog“JD”

只有在主程序手动计算,并且要调用交点时采用到,用于输入交点号,并判断输入是否正确,如正确转入交点输入,否则显示输入错误。

F9 JD(子程序)

Z[10E+60+1] <0→O= -1:≠→O= 1◣P=Abs(Z[10E+60+1]):R= Z[10E+60+2]:L= Z[10E+60+3]:W= Z[10E+60+4]:D= Z[10E+60+5]:C= Z[10E+60+6]:A= Z[10E+60+7]:B= Z[10E+60+8]:

供其它程序调用,用于调用变量存储器中的交点,以便输入交点参数。

F10 K.D(子程序)

Q= Z[8]:J= Z[11]:X= Z[70+10Q+3J +3F-2]:Y= Z[70+10Q+3J +3F-1]:K=

Z[70+10Q+3J +3F]:

供其它程序调用,用于调用变量存储器中的控制点,以便输入控制点参数。

F11 LC(子程序)

N< Z[4]→Goto 1 ◣N> Z[5]:Goto 1 ◣S = Frac (Z[6]/100)*100:S < 1→Goto 1 ◣S = 1→ Y= Int (Z[6]/100) :E= Frac(Z[30+4Y]/100)*100+1:Goto 3 ◣S > 1 →

S= S-1:Y= Int (Z[6]/100) :E= Frac(Z[30+4Y]/100)*100+1 ◣Lbl 2:N< Z[10E+60+5]:→Goto 3◣E= E +1:Dsz S:Goto 2:Lbl 3:E= E -1:Z[10E+60+9]=0 →Goto 4◣Z[10E+60+10] <0 →Goto 5:≠→Goto 6◣Lbl 4:Prog “JD”:Goto 8:Lbl 5:N≤ Z[10E+60+9]→Goto 4◣Lbl 7:N=N+ Z[10E+60+10]:Goto 4:Lbl 6:N- Z[10E+60+10] < Z[10E+60+9]→Goto 4◣N > Z[10E+60+9]→Goto 7◣{F} :F“DK-K(-1,1)”:F=1 →Goto 4 ≠→Goto 7 ◣Lbl 1:Q=-1 :Goto 9:Lbl 8:Q= 1 :Lbl 9

F12 ZH1

Lbl 1:{F}:F“Z.D”:F=Int F :F ≤0 →Prog“E”:Goto 1 ◣F >Z[10] →Prog “E”:Goto 1 ◣Prog“K.D”:U=X:M=Y:Z[3]=K:Lbl 2:{F}:F “F.D”:F=Int F :F ≤0 →Prog“E”:Goto 2 ◣ F > Z[10] →Prog“E”:Goto 2 ◣Prog “K.D”:V = X:Z =Y:

F13 GZ

Z[3] ≠ 0 →Goto 1 ◣{K}:K “Z.H”:Z[3] = K :Lbl 1:F = Z[1]:E = Z[2]:{FEQ}:

F “YG”:E “JG”:Q “GC”:T = Z[3]+ F – E + Q :“BG=”:T ◢

Z[1] = F:Z[2] = E:

F14 QZ

E ≤ 0 →Prog“E”:Goto 1 ◣ E > 10 →Prog“E”:Goto 1◣E=Int E :Prog“QZH”:

Goto 2:Lbl 1:Y = -1:Lbl 2

F15 QZH

Z[4] = Z[30+4E - 3]:Z[5] = Z[30+4E - 2]:Z[6] = Z[30+4E - 1]

F16 SQX(竖曲线计算)

X= E-F :X>0 →Y = 1:≠→Y = -1:X= -X ◣T = Q X / 2 :N > S+T →I=K+F(N-S):Goto 1◣N < S-T →I=K+E(N-S) :Goto 1 ◣N < S →H = Y( T – S + N )2/2/Q :I=K+E(N-S) –H :Goto 1:≠→H = Y( T + S - N )2/2/Q :I=K+F(N-S) –H ◣Lbl 1 :X=I

I1为前坡段纵坡i1上坡为正,下坡为负。I2为后坡段纵坡i2上坡为正,下坡为负。Q 为竖曲线半径R,BPD为变坡点桩号,BPDG为变坡点高程,T为竖曲线切线长T,N 为要计算高程的桩号,H为桩号为N的改正值,I为桩号为N的高程。

F17 SJG

J = Z[8] :H = Z[11] -1 :Y= Int (Z[6]/100) :I= Int (Z[30+4Y]/100) +1 :Z[10J+70+3I] = 0 →Goto 1◣Lbl 2 :E = ( Z[10J +70+3I -1] - Z[10J +70+3(I-1)-1] ) / ( Z[10J +70+3I -2] - Z[10J +70+3(I-1)-2] ) :F = ( Z[10J +70+3(I+1)-1] - Z[10J +70+3I -1] ) / (Z[10J +70+3(I+1)-2] - Z[10J +70+3I -2] ) :X=Abs(E - F):Q = Z[10J+70+3I] :S = Z[10J+70+3I- 2] :K = Z[10J+70+3I- 1] :T=QX/2 :N< S+T→Goto 3 ◣I = I+ 1 :Dsz H:Goto 2:Lbl 3:Prog“SQX”:Goto 4:Lbl 1:E = ( Z[10J +70+3I -1] - Z[10J +70+3(I-1)-1] ) / ( Z[10J +70+3I -2] - Z[10J +70+3(I-1)-2] ) :S = Z[10J+70+3I- 2] :K = Z[10J+70+3I- 1] :X=K – E(S - N):Lbl 4:“SJG=”:X ◢

如何扩充变量存储器:

如下所示的连续键操作用于扩充变量存储器:SHIFT Defm <追加变量的个数> EXE 查看扩充变量存储器的数目,SHIFT Defm EXE

如追加变量的个数比原来的少,则原来多的扩充变量存储器内的数据将被清除。

扩充变量存储器总数计算:

扩充变量存储器总数=50+10x交点总数+3x控制点总数,如20个交点,50个控制点,总数=50+200+150=400。

如改变交点总数,则原来控制点内的数据将改变。

Prog“QZ”为调用QZ子程序

Goto 与Lbl配对用,用作转移,如…Goto x……Lbl x…

Int U:对U里的值取整。如U=3.24,执行后U=3

Frac U:对U里的值小数。如U=3.24,执行后U=0.24

Z[1]、Z[2]、Z[3]:在高程计算中作中间变量存储,Z[1] 存储仪器高,Z[2] 存储棱镜高,Z[3] 存储测站高程。

Z[4]:自动计算模式时用,存储起点里程桩号。

Z[5]:自动计算模式时用,存储止点里程桩号。

Z[6]:自动计算模式时用,存储自动计算路线内的交点数(即Z[6]为主线交点个数、副线交点个数或匝道A、B…F交点个数)和主线或匝道,Z[6]为四位数的数值,个位和十位为交点个数,百位和千位为路线,即百位和千位为01为主线,百位和千位为02为副线,百位和千位为03为匝道A,百位和千位为04~08为匝道B~F,百位和千位为09为改路1,百位和千位为10为改路2,如Z[6]=0305则为匝道A,有5个交点。

Z[7]:存储计算模式(-1为自动计算,不用判断要计算的里程是那个交点,输入相应的曲线要数。不为-1是手动计算,必需判断要计算的里程是那个交点,输入相应的曲线要数。

Z[8]:存储总交点数,本计算器能算的交点数。如果修改后,其存储的控制点内容会跟着改变,必需从新输控制点和变坡点内容。

Z[9]:存储目前输入的交点数,不能修改,由程序自己修改。

Z[10]:存储目前输入的控制点数,不能修改,由程序自己修改。

Z[11]:存储总变坡点数, 本计算器能算的变坡点数。如果修改后,其存储的控制点内容会跟着改变,必需从新输控制点内容。

Z[12]:存储目前输入的变坡点数,不能修改,由程序自己修改。

Z[13] ~ Z[30] :为空,目前没有用。

Z[31] ~ Z[70] :Z[30+4k-3] :存储为k个起点里程桩号, Z[30+4k-2] :存储为k个止点里程桩号, Z[30+4k-1] :存储为k个路线内的交点数, Z[30+4k-1]为四位数的数值,个位和十位为交点个数,百位和千位为路线,即百位和千位为01为主线,百位和千位为02为副线,百位和千位为03为匝道A,百位和千位为04~08为匝道B~F,百位和千位为09为改路1,百位和千位为10为改路2,如Z[6]=0305则为匝道A,有5个交点。Z[30+4k] :存储为k 个路线内的交点起点编号。K=1为主线,Z[30+4k]=1,K=2为副线(左幅或右幅),Z[30+4k]=9,K=3为匝道A,Z[30+4k]=11….。

[71]~ 10*Z[8] +70 :即Z[8]=20时10*Z[8] +70=270存储曲线要素及控制点坐标。Z[e×10+60+1]~ Z[e×10+60+9] :为第e个交点曲线要素,Z[e×10+60+1]为曲线转角P,显示为“PJ”,左转曲线为负值,右转曲线为正值。Z[e×10+60+2]为曲线半径R,显示为“R”,Z[e×10+60+3]为第一缓和曲线长L,显示为“LS1”,Z[e×10+60+4] 为第二缓和曲线长W,显示为“LS2”,Z[e×10+60+5]为直缓点里程桩号D,显示为“ZH”,Z[e×10+60+6]为交点方位角C,显示为“FWJ”,Z[e×10+60+7]为直缓点N坐标A,显示为“ZHN”,Z[e×10+60+8]为直缓点E坐标B,显示为“ZHE”,Z[e×10+60+9]为断链桩号,显示为“DLZH”,Z[e×10+60+10] 为断链链长,显示为“LC”,短链为负值,长链为正值D。

Z[271]~ 3*Z[11] +270 :即Z[11]=50时3*Z[11] + 270=420。

Z[e×10+70+3h+3f-2]~ Z[n] :为f个控制点坐标, 其中这里的e为总交点数,Z[e×10+70+3f-2]为控制点N坐标,Z[e×10+70+3h +3f-1]为控制点E坐标,Z[e×10+70+3h +3f]为控制点H高程。

Z[7]、Z[8] 、Z[11]内容要手动修改,但修改Z[8]、Z[11]内容扩充变量存储器数据将改变。

相关文档