5800編程教程
A. 卡西歐5800計算器如何編程
公路平/豎曲線放樣、坐標反算樁號GL.3-25PHF程序fx-5800p
F1 GL.3-25PHF (K+,XY ≠ 0?)輸入其他進入反算。輸入0時進入測站點、後視點坐標(X0,Y0,H0)、(X1,Y1)輸入及兩點距離(D0)、方位角(T0)輸出。H0=0時,不計算豎曲線。
L1 Z[1→Q:Lbl 8:「GL.3-25PHF=」?Q:Q→Z[1]:IF Q<3 Or Q>25:Then Goto 8:IfEnd:0→V:0→N:「K,X≠0」?V:V≠0=>Goto 0:「X0」?C:「Y0」?D:「H0」?H:「X1」?E:E-C→I:「Y1」?F:F-D→J:Prog「1」:「T0O=」:J▲DMS◢「D0=」:I◢ 放樣點樁號(Kp+)斜交角(ApO)距離(Sp)輸入 143
L2 Lbl 0:Z[1→Q:If V=0:Then 90→Z:「Kp+」?K:「ApO」?Z:「Sp」?B:Goto 4:IfEnd:If N≠-2:Then「Xp」?C:「Yp」?D:1T→P:1→G:IfEnd:Lbl 7:C-Z[4+G→I:D-Z[Q+4+G→J:Prog「1」:If N=-2:Then I→P:J→Z:G→B:Goto 4:IfEnd:If P-I>0:Then I→P:J→Z:G→B:IfEnd:If G<Q-2:Then G+1→G:Goto 7:IfEnd:Lbl 4:1→G:Z[3]→W:Lbl 5:Z[1→Q
L3 Q-2→N:Z[3→A:Z[4+G→X:Z[Q+4+G→Y:Z[2Q+3+G→R:R=0 =>1μ→R:Z[3Q+1+G→L:Z[3+G]-X→I:Z[Q+3+G]-Y→J:Prog「1」:J→O:Z[5+G]-X→I:Z[Q+5+G]-Y→J:Prog「1」:J→U:Prog「P」
L4 If V≠0:Then If G<B:Then G+1→G:W+I-2T+S→W:Goto 5:IfEnd:Prog「F」:Goto 0:IfEnd:N=0=> Goto 0:N=-1=>Goto 5:H=0=>Goto 0:1→G:Lbl 6:Z[1→Q
L3 Q-2→N:Z[4Q+1→A:Z[4Q+G→W:Z[5Q+G→U:Z[6Q-1+G→R:Z[5Q-1+G]-U→I:Z[4Q-1+G]-W→J:Prog「1」:J→O:Z[5Q+1+G]-U→I:Z[4Q+1+G]-W→J:Prog「1」:Prog「H」:N=-1=>Goto 6:Goto 0
F2 CS.3-25PHF (參數輸入完成時,可取消此子程序) I?輸入0時進入轉點號N?(N-P為平曲線、N-H為豎曲線,均輸入1至8、15、25的整數)及其參數的輸入(平曲線K?、X?、Y?、R?、L?)、(豎曲線K?、H?、R?)輸入樁號、坐標或高程、園半徑、緩和曲線長度。
L1 ?I:If I=0:Then 172→DimZ:1→N:IfEnd:Z[1→Q:Lbl 8:「GL.3-25PHF=」?Q:Q→Z[1]:IF Q<3 Or Q>25:Then Goto 8:IfEnd:While N≤Q:「N-P」?N:N>Q=>Goto 1:If N=2:Then ?K:K→Z[3]:IfEnd:?X:X→Z[3+N]:?Y:Y→Z[Q+3+N]:N=1 Or N=Q=>Goto 0:?R:R→Z[2Q+2+N]:?L:L→Z[3Q+N]:Lbl 0:WhileEnd:Lbl 1:1→N
L2 While N≤Q:「N-H」?N: N>Q=>Goto 8:?K: K→Z[4Q-1+N]:?H:H→Z[5Q-1+N]:N=1 Or N=Q=> Goto 2:?R:R→Z[6Q-2+N]:Lbl 2:WhileEnd
F3 P
L1 Prog「2」:If M=180:Then 0→T:Goto 1:IfEnd:L÷2-L^3÷240÷R2+(L2÷24÷R+R)tan(.5M→T:Lbl 1:RMπ÷180+L→S:V≠0=>Goto 0:If K<A-T:Then「K+!」:K◢0→N:Goto 0:IfEnd:If G≥N And K>W-T+S:Then「K+!」:K◢0→N:Goto 0:IfEnd:If K>W-T+S:Then G+1→G:W+I-2T+S→W:-1→N:Goto 0:IfEnd:Prog「5」 警告樁號(K+!)的輸入已超出范圍。 測站點、放樣點間的距離(Dp)、方位角(TpO)輸出。放樣點的坐標(Xp,Yp,Hp0)輸出。
L2 X+TA-MA+NJ→X:Y +TJ-MJ-NA→Y:X-C→I:Y-D→J:Prog「Z1」:「TpO=」:J▲DMS◢「Dp=」:I◢「Xp」:X◢「Yp」:Y◢1→N:Lbl 0
F4 1
L1 If I=0 And J=0:Then 180→J:Else Pol(I,J:J<0=>J+360→J:IfEnd
F5 2
L1 O-J→M:M<0=>M+360→M:If M<180:Then 180-M→M:1→Q:Else M-180→M:-1→Q:IfEnd
F6 3
L1 90(2I-L)÷π÷R→A:RsinA+L÷2-L∧(3)÷240÷R2→M:L2÷24÷R+R(1-cosA→N:A-J→A:M-QBcosA→M:QN-BsinA→N
F7 4 (緩和段計算:可適當選取2至6項,當無緩和曲線時,可僅選1項,以減少位元組。)
L1 RL→A:I-I∧(5)÷40÷A2+ I∧(9)÷3456÷A∧(4)-I∧(13)÷599040÷A∧(6)+I∧(17)÷175472640÷A∧(8)-I∧(21)÷78033715200÷A∧(10→M
L2 I∧(3)÷6÷A-I∧(7)÷336÷A∧(3)+I∧(11)÷42240÷A∧(5)-I∧(15)÷9676800÷A∧(7)+I∧(19)÷350096640÷A∧(9)-I∧(23)÷1880240947200÷A∧(11→N: 90I2÷π÷A-J→A:M-Qbcos(A→M:QN-Bsin(A→N
F8 5
L1 K-W+T→I:Z→J:If I<S-L:Then If I≤0:Then I+Bcos(Z→M:BsinZ→N:Goto 2:IfEnd:Q=1=>180-Z→J:If I≤L:Then Prog「4」:Else Prog「3」:IfEnd:Lbl 2:O→J:Goto 3:IfEnd:S-I→I
L2 If I≤0:Then I-Bcos(Z→M:-Bsin(Z→N:Else Q≠1=>180-Z→J:Prog「4」:-N→N:IfEnd:U→J:Lbl 3:cos(J→A:sin(J→J
F9 H (不需要計算中樁高程時,可取消此子程序) 警告樁號(K+!)的輸入已超出范圍
L1 Prog「2」:If M=180:Then 0→T:Goto 1:IfEnd:Rtan(.5M→T:Lbl 1:If K< Tsin(O+A:Then「K+!」:K◢Goto 0:IfEnd:If G≥N And K>W-Tsin(O:Then「K+!」:K◢Goto 0:IfEnd:If K>W-Tsin(O:Then G+1→G:-1→N:Goto 0:IfEnd
L2 U+Tcos(O+Rcos(O-90Q→M:W+Tsin(O+Rsin(O-90Q→N:K-W-Tsin(O→L:If L≤0:Then U+(T+L÷sin(O))cos(O→H:「Hp0=」:H◢Goto 0:IfEnd:M+Q√(R2-(K-N)2)→H:「Hp0=」:H◢Lbl 0 中樁高程輸出(Hp0=)
F10 F (不需要反算時,可取消此子程序) 轉點半徑為0時可能輸出的兩種樁號、偏離距離(K1+=、K2+=、Sp1=、Sp2=)情況
L1 Z-O→I:U-Z→J:IF Abs(I≤90:Then If T≤Pcos(I:Then W-Pcos(I→K:-Psin(I→B:If Abs(J≥90:Then Goto 9:Else「K1+=」:K◢「Sp1=」:B◢IfEnd:IfEnd:IfEnd:IF Abs(J≤90:Then If T≤Pcos(J:Then W-2T+S+ Pcos(J→K:-Psin(J→B:If Abs(I≥90:Then Goto 9: Else「K2+=」:K◢「Sp2=」:B◢Goto 0:IfEnd:IfEnd:IfEnd:If Pol(C-X-Tcos(O),D-Y-Tsin(O))<Pol(C-X-Tcos(U),D-Y-Tsin(U)):Then-1→H:Else 1→H:IfEnd:(R+L2÷24÷R)÷cos(.5M→N:O-Q(90-.5M→J:C-X-Ncos(J→I:D-Y-Nsin(J→J:Prog「1」
L2 cos-1((I2+N2-P2)÷2÷I÷N→N:If N≤.5M-90L÷π÷R:ThenW-T+.5S+HπNR÷180→K:Q(R-I→B:Goto9:IfEnd:If L=0:Then-2→N:G+H→G:Goto 0:IfEnd:「Z.H.Y-100!-Y.H.Z」◢0→B:0→Z警示准備進入緩和段的樁號反算,計算約需100秒。
L3 If H=-1:ThenW-T→E:E+L→G:ElseW-T+S→E:E-L→G:IfEnd:Lbl8:Z+1→Z:(E+G)÷2→F:Z=1=>E→K:Z=2=>F→K:Z=3=>G→K:Prog「5」
L4 C-X-TA+MA-NJ→I:D-Y-TJ+MJ+NA→J:C-I→M:D-J→N:Prog「1」
L5 If Z=1:Then I→P:Goto 8:IfEnd:If Z=2:Then I→V:Goto 8:IfEnd:If Abs(E-G>1μ:Then If P>V And P>I:then F→E:0→Z:Goto 8:IfEnd:If I>P And I>V:Then F→G:0→Z:Goto 8:IfEnd:IfEnd:F→K:I→B:J→V
L6 If H=-1:Then X+Tcos(O)-M→I:Y+Tsin(O)-N→J:Else X+Tcos(U)-M→I:Y+Tsin(U)-N→J:IfEnd:Prog「1」:J→O:V→J:Prog「2」:-HQB→B:Lbl 9:「K+=」:K◢「Sp=」:B◢N=0:Lbl 0 反算樁號、偏離距離輸出(K+=、Sp=)
全站儀後方交會(兩已知點,任意設站,觀測兩邊多餘一角可計算測站點坐標)
F D1�6�1D2–XY
L1 「X1」?C:「Y1」?D:「X2」?E:「Y2」?F:(E–C)2+(F–D)2→M:「D1」?S:T「D2」:「Ap°」?U
L2 cos -1((M+S 2–T 2)÷2÷S÷√(M→V:cos -1((M+T 2–S 2)÷2÷T÷√(M→W
L3 180–U–V–W→P:If Abs(P≥0°0°30°:Then「Μp°!」:P▲DMS◢IfEnd:1÷tan(V→V:1÷tan(W→ W
L4 (CW+EV+D–F)÷(V+W→X:(DW+FV+E–C)÷(V+W→Y:「Xp=」:X◢「Yp=」:Y
兩線交點、坐標變換
F L×L�6�1XY–AB
L1 「0–1–2=>L×L�6�1X–A�6�1A–X」?I:If I=0:Then Lbl 0:「XA-1」?C:「YA-1」?D:「XA-2」?E:「YA-2」?F:C–E→K:D–F→L:「XB-1」?O:「YB-1」?P:「XB-2」?Q:「YB-2」?R:O–Q→M:P–R→N
L2 (K(OR–QP)–M(CF–ED))÷(ML–KN→X:「Yp」:(LX+CF–ED)÷K→Y:「Xp」:X◢「Yp」:Y◢Goto 0:IfEnd
L6 If I=1:Then「X0」?C:「Y0」?D:「T°=」?J:Lbl 1:「Xp=」?E:「Yp=」?F:(E–C)cos(J)+(F–D)sin(J)→A:(F–D)cos(J)–(E–C)sin(J)→B:「Ap=」:A◢「Bp=」:B◢Goto 1:IfEnd
L7 If I=2:Then:「X0」?C:「Y0」?D:「T°=」?J:Lbl 2:E「Ap=」:F「Bp=」:C+Ecos(J)–Fsin(J→X:「Xp=」:X◢D+Esin(J)+Fcos(J→Y:「Yp=」:Y◢Goto 2:IfEnd
坡頂開挖線放樣程序
F P�6�1D�6�1×–– H0、H0×為任意點(下點)的設計、地面高程,S0×、H1δ為坡度方向到另外1點(上點)的距離、高程,i設計的坡度,上點平移⊿Sp距離後到達坡頂開挖線。
L1 「H0=」?H:「H0×=」?M:「S0×=」?P:「H1δ=」?N:「i=」?I:P((M–H)÷(M–N+P×I)–1→S:B=P+S:「◢Sp=」:S
地形圖等分線程序
F H1-0�6�15-H2
L1 Lbl 0:「H1」?A:「H2」?B:「S0」?S:(A–B)÷S→K
L2 10A–10 Int A→L:If L-5≥0:Then L–5→L:0.1L÷K→E:「S1=」:E◢0.5÷K→F:「Sn=」:F◢Int(KS÷0.5→G:「N=」:G◢Goto 0:IfEnd
方格網4點求格交點高程程序
F H1-H4�6�1�6�1S0-3
L1 「H1」?A:「H2」?B:「S01」?K:「SP1」?L: A+(B-A)L÷K→E:「H3」?C:「H4」?D:「S02」?M:「SP2」?N: C+(D-C)N÷M→F:「S03」?O:「SP3」?P:E+(F-E)P÷O→H:「H=」:H
方格網2點求格交點高程程序
F H1-H2�6�1�6�1S0-2
L1 「H1」?A:「H2」?B:「S0」?L:「S1」?M:A+(B-A)M÷L→H:「H=」:H
B. 如何學習5800計算器編程
1,熟悉卡西歐5800裡面所有牽扯到測量的功能。x0dx0a2,fx-5800裡面的編程語言basic的一些語法,並結合測量的例子來說明。這樣跟容易今後上手。x0dx0a3,對一些例子的分析,包括思路和語法講解。x0dx0a4,在實際工作中,用到最多的函數和程序的分享。x0dx0a最後聲明一點,一定要動手,就是看著文章,手裡面要拿個5800,要不然一切都是白扯。這系列fx-5800教程是默認為會用fx-5800輸入一些基本的字元的。這些都可以參考fx-5800的說明書。電子版fx-5800說明書下載。x0dx0a這里在灌輸一個編程思想。x0dx0a 編程要有個思路,x0dx0a 1、輸入部分。x0dx0a 2、計算部分。x0dx0a 3、輸出部分。x0dx0a比方說要正算方位角,首先知道A(x,y),b(m,n) 這是輸入部分。x0dx0a計算部分:pol(x-m,y-n)x0dx0a輸出部分:i,j (i=兩點的距離,j=兩點的方位角)x0dx0a這就是編程。測量上的編程,把它轉化為5800程序就是x0dx0a1 "x"?x:"y"?: "m"?m:"n"?n x0dx0a2 x0dx0a3 pol(x-m,y-n)x0dx0a4 x0dx0a5 i_:j_