1、 CASIO fx-5800p计算器编程在南水北调 渠坡测量放样中的应用 作者:王晓羽 (河南省水利第一工程局,河南 郑州 450000) 摘要:CASIOfx-5800p可编程计算器拥有强大的程序编辑功能,针对南水北调渠道主要为直线段和弧线段的特点,编写直线段和弧线段渠坡放样程序,配合全站仪和GPS处理测量数据,能大大的简化测量工作量,提高施工放样精度和速度。 关键词:渠道、测量、计算器、编程 1 工程概况 南水北调渠道轴线主要为直线段和圆弧段两种形式,渠道为梯形断面,根据开挖深度不同设置一级马道到多级马道。渠道一级马道以下过水断面深度和渠底宽度从上游到下游逐渐变
2、化,一级马道以上边坡每6米一级,马道宽2米。渠底宽度、坡比每段相同,不同底宽、坡比之间采用渐变段过渡。施工单位在测量放样中主要采用全站仪和GPS,坐标分为大地坐标和工程坐标,根据仪器读数X、Y、Z计算出距开口线的距离和下挖深度。用普通计算器计算速度慢,易出错。采用编程计算器直接将仪器读数X、Y、Z输入程序,可以自动计算出和距开口线的水平距和下挖深度,速度快、不易出错,可以大幅度提高测量放样效率。 郑州2-4标设计桩号为SH(3)197+408.1~SH(3)201+188.4,总长3.780km,包括2个直线段和2个圆弧段,渠道起点渠底高程为112.939米,终点渠底高程为112.757米,
3、渠道纵坡降1:23000,渠底宽度分为12m、13.5m、14.5m三种,坡比1:3.5~1:2.5,每级坡比从下到上按0.25递减,最大挖深34m,5级边坡,不同底宽、坡比之间采用渐变段连接,渐变段长15m。 郑州2-4标渠道轴线平面图如下图(左侧为下游、右侧为上游) 第一段为圆弧段,起点桩号为197+408.1,大地坐标为(3842167.417,462800.137);终切点桩号为197+657.962,大地坐标为(3842370.625,462656.499)。 第二段为直线段,桩号197+657.962~200+181.5348。 第三段为圆弧段,起切点桩号为200+18
4、1.5348,大地坐标为(3844632.8314,461538.0952);终切点桩号为200+571.1209,大地坐标为(3844948.1845,461312.2598); 第四段为直线段,渠道中线长m。桩号200+571.1209~201+188.4211。终点大地坐标为(3845385.377,460876.463)。 郑州2-4标工程很具有南水北调渠道工程的代表性,本文就以郑州2-4标渠道开挖测量放样为例,介绍CASIO fx-5800p计算器编程在南水北调渠坡测量放样中的应用。 2 施工坐标系的建立和坐标转换程序 大地坐标系数据长、不直观、计算速度慢。相对坐标系(又叫工
5、程坐标系)数据短、直观、计算速度快。因此测量中采用相对坐标系可以提高测量效率。建立相对坐标系时的坐标原点和轴线方向的选取非常重要,我们把相对坐标系的坐标原点设在第二段(直线段)渠道中心线起点,X轴指向直线段方向,Y轴垂直于直线段,高程仍采用绝对高程。设定后,在第二段中,相对坐标的X值加上197657.962(原点桩号)就是测量点的桩号,Y值就是测量点的偏中距。 为了方便施工现场进行大地坐标和相对坐标的转换,需要编写两个坐标系的转换程序,如图: 大地坐标转换为相对坐标程序: “X=”?X:“Y=”?Y:5"DimZ8 (输入大地坐标,定义5个额外变量) Pol(3842370.625-3
6、844632.8314,462656.499-461538.0952):I"Z[1]:J"Z[2] (计算渠道中心线极坐标) Pol((3842370.625-X),(462656.499-Y)):I"Z[3]:J"Z[4] (计算测点极坐标) Z[2]-Z[4] "A: (计算两方向线夹角) Z[3]*cosA"M:“M=”:M⊿ (计算施工坐标X,并显示) Z[3]*sinA"N:“N=”:N⊿ (计算施工坐标Y,并显示) 程序
7、结束。 相对坐标转换为大地坐标程序: “M=”?M:“N=”?N:tan-1N/M"A:5" DimZ8 Pol(3842370.625-3844632.8314,462656.499-461538.0952):I"Z[1]:J"Z[2] 8 Z[2]-A"B:(M2+N2)1/2"C:Rec(C,B) 8 (极坐标反算大地坐标) I"Z[3]: 3842370.625-Z[3] "X :“X=”:X⊿ J"Z[4]: 462656.499-Z[4] "Y:“Y=”:Y⊿ 程序结束。 3边坡开挖深度程序 渠道边坡开挖的下挖深度计算程序分为三类,弧线
8、段类、直线段类和渐变段类,其中渐变段类编程最难。弧线段类和直线段类不同段之间程序的变化不大,变化的只是中间的数据,增加或减少马道级数而已;渐变段需要根据不同的段编写不同的程序。 1 ) 直线段类 以第一段(直线段)中的198+388.1-199+478.9为例: 这一段在渠底宽、马道宽、坡比上无变化,为直线段类。程序如下: “X=”?X:“Y=”?Y:“H=”?H:433.8*10-5"K8 (K为坡降) X+197657.962"A:“A=”:A⊿ (显示桩号) 10"DimZ:112.939-(A-197408
9、1)*K"Z[1]:Z[1]+8.7"Z[2]:Z[2]+6"Z[3]: Z[3]+6"Z[4]:Z[4]+6"Z[5]:Z[5]+6"Z[6] 8 (渠底及一到五级马道高程) If Y≧0AndY≦6:Then H-Z[1]"B:“B=”:B⊿ (渠底面下挖深度) ElseIf Y﹤36.45:Then H-(Y-6)/3.5-Z[1]"B:“B=”:B⊿ (一级坡面下挖深度) ElseIf Y≦41.45:Then H-Z[2]"B:“B=”:B⊿ (一级马道面下挖深度) ElseIf Y﹤60.95:Then H-(Y-41.4
10、5)/3.25-Z[2]"B:“B=”:B⊿ (二级坡面下挖深度) ElseIf Y≦72.95:Then H-Z[3]"B:“B=”:B⊿ (二级马道面下挖深度) ElseIf Y﹤90.95:Then H-(Y-72.95)/3-Z[3]"B:“B=”:B⊿(三级坡面下挖深度) ElseIf Y≦92.95:Then H-Z[4]"B:“B=”:B⊿ (三级马道面下挖深度) ElseIf Y﹤109.45:Then H-(Y-92.95)/2.75-Z[4]"B:“B=”:B⊿ (四级坡面下挖深度) ElseIf Y≦111.45:Then
11、 H-Z[5]"B:“B=”:B⊿ (四级马道面下挖深度) ElseIf Y﹤124.95:ThenH-(Y-111.45)/2.25-Z[5]"B:“B=”:B⊿ (五级坡面下挖深度) ElseIf Y≦126.95:Then H-Z[6]"B:“B=”:B⊿ (五级马道面下挖深度) Else H-(Y-126.95)/2-Z[6]"B:“B=”:B⊿ (六级坡面下挖深度) IfEnd:IfEnd:……IfEnd 8 (IfEnd共11个) 程序结束。 如果想让程序循环
12、可在程序开头加Lb1,并在IfEnd结束后加Goto1,使其变成循环程序。 由程序可以看出这是一个最高有着五级马道六级坡的渠道段,如果是一个只有三级马道四级坡的渠道段的话,只需把偏心距和坡比数值变一下,并去掉四级坡后的部分直接到IfEnd就可以了。这也说明了直线段类具有的相似性,只要会一段的编辑,所有直线段类渠道段的编辑就都没有问题。 2 ) 圆弧段 以第一段(圆弧段)197+408.1-197+657.962段为例: 这一段在渠底宽、马道宽、坡比上无变化,为曲线段类。曲线段上的施工坐标不能如实的反映出相应的桩号和偏心距,所以在编辑和测量圆弧段时都是用的大地坐标,这样也就是我们要先把
13、大地坐标转化为桩号和偏心距后,再根据设计图进行计算编辑。 圆弧段圆心坐标(3842725.171,463373.644),起点桩号为197+488.1,大地坐标为(3842167.417,462800.137)终切点桩号为197+657.962,大地坐标为(3842370.625,462656.499),圆弧半径为800米。 圆弧段情况如图: 编程如下: Lb2:〝X=〞?X:〝Y=〞?Y8 (输入变量) Pol((X-3842725.171),(Y-463373.644)):I"Z[1]:J"Z[2]8 10"DimZ8
14、 Pol((3842370.625-3842725.171),(462656.499-463373.644)): I"Z[3]:J"Z[4]8 Z[1]"S: Z[4]- Z[2]"Z[5]8 If A≧0:Then 800*∏Z[5]/180"L:197657.962-L"A:〝A=〞:A⊿ (显示桩号) 800-S"D:〝D=〞:D⊿ (显示偏中距) Else〝ZX〞⊿
15、 (当A﹤0时表示在直线段上) Goto2:IfEnd8 (当在直线时反回到开头) 程序结束。 当圆弧段的桩号和偏心距确定以后,圆弧段下挖深度公式与直线段就没有什么区别了,接下来的部分完全可以按着直线段类的来编写。 3) 渐变段 变段往往变化量不只一个,并且变化段的长度不长,我们在实际的测量放线过程中,通常只把变化断面的变化点出,直接连接相邻的变化点得出渐变线从而得到变化位置,但是这样的弊端是:在变坡的坡面时,我们是无法确定下挖深度。这时编写一个渐变段的下挖深度计算程序就
16、变得尤为重要了。 下面以本标段中一典型变段为例编写渐变段的下挖深度计算程序。 首先了解一下变段的信息,渐变段平面图如下: 断面变化信息为: 198+337.1段与352.1段比较,渠底从13.5m变为12m,一,二级坡分别从1:3.25变为1:3.5和1:3变为1:3.25 198+352.1段与388.1段比较,二级马道从2m变为12m,三,四级坡分别从1:2.75变为1:3和1:2.5变为1:2.75 这个变段是在渠道第一直线段上的,可以直接用施工坐标编写程序。为了更清晰简洁的编程,可以把337.1-352.1编为一个子程序,把352.1-388.1编为另一个子程序,分
17、别命名为337352和352388。 1主程序编辑: Lb1:“X=”?X:“Y=”?Y:“H=”?H8 X+197657.962"A:“A=”:A⊿ (显示测量点的桩号) 20"DimZ8 (定义20个额外变量) 112.939-(A-197408.1)*4.338*10-5"Z[1]: Z[1]+8.7"Z[2]: Z[2]+6"Z[3]: Z[3]+6"Z[4] 8 (渠底与一二三级马道高程) If A≧198337.1AndA≦
18、198352.1:Then Prog “337352” 8(调用337352子程序) ElseIf A≦198388.1: Then Prog “352388” 8 (调用352388子程序) Else“CCFW” ⊿ (不在337到388之内显示超出范围) IfEnd: IfEnd:Goto18 2子程序337352: (13.5-12)/(352.1-337.1)"M: (渠底变化系数) A-198337.1"C:(13.5-C*M)/2"Z[5]:
19、 (渠底外边线偏心距) (3.5-3.25)/(352.1-337.1)"D: (坡变系数) Z[5]+8.7*(3.25+C*D)"Z[6]:Z[6]+5+6(3+C*D)"Z[7]:Z[7]+2+6*2.75"Z[8] 8 (一二三级马道内边线偏心距) If Y≧0AndY≦Z[5]:Then H-Z[1]"B:“B=”:B⊿ (渠底下挖深度) ElseIf Y﹤Z[6]:Then H-(Y-Z[5])/(3.25+C*D)-Z[1]"B:“B=”:B⊿(一级坡面) ElseI
20、f Y≦Z[6]+5:Then H-Z[2]"B:“B=”:B⊿ (一级马道面) “MD=”:Z[6] ⊿Z[6]+5⊿ (显示一级马道范围) ElseIf Y﹤Z[7]:Then H-(Y-Z[6]-5)/(3 +C*D)-Z[2]"B:“B=”:B⊿(二级坡面) ElseIf Y≦Z[7]+2:Then H-Z[3]"B:“B=”:B⊿ (二级马道面) “MD=”:Z[7] ⊿Z[7]+2⊿ (显示二级马道范围) E
21、lseIf Y﹤Z[8]:Then H-(Y-Z[7]-2)/2.75 -Z[3]"B:“B=”:B⊿ (三级坡面) ElseIf Y≦Z[8]+2:Then H-Z[4]"B:“B=”:B⊿ (三级马道面) “MD=”:Z[8] ⊿Z[8]+2⊿ (显示三级马道范围) Else H-(Y-Z[8]-2)/2.5 -Z[4]"B:“B=”:B⊿ (四级坡面) IfEnd:IfEnd:……IfEnd: (共7个IfEnd)
22、3子程序352388: (12-2)/(388.1-352.1)"E: (二级马道变化系数) A-198352.1"C:(3-2.75)/(388.1-352.1)"F: ( 坡变系数) 6+8.7*3.5"Z[10]:Z[10]+5+6*3.25"Z[11]: (一二级马道内边线) Z[11]+C*E+2"Z[12]: (二级马道外边线) Z[12]+6*(2.75+C*F)"Z[13]
23、 (三级马道外边线) If Y≧0AndY≦6:Then H-Z[1]"B:“B=”:B⊿ (渠底下挖深度) ElseIf Y﹤Z[10]:Then H-(Y-6)/3.5-Z[1]"B:“B=”:B⊿ (一级坡面) ElseIf Y≦Z[10]+5:Then H-Z[2]"B:“B=”:B⊿ (一级马道面) “MD=”:Z[10] ⊿Z[10]+5⊿ (显示一级马道范围) ElseIf Y﹤Z[11]:Then H-(Y-Z[10]-5)/3.25-Z[2]"B:“B=”:B⊿(
24、二级坡面) ElseIf Y≦Z[12]:Then H-Z[3]"B:“B=”:B⊿ (二级马道面) “MD=”:Z[11] ⊿Z[12]⊿ (显示二级马道范围) ElseIf Y﹤Z[13]:Then H-(Y-Z[12])/(2.75+C*F)-Z[3]"B:“B=”:B⊿ (三级坡面) ElseIf Y≦Z[13]+2:Then H-Z[4]"B:“B=”:B⊿ (三级马道面) “MD=”:Z[13] ⊿Z[13]+2⊿ (显示三
25、级马道范围) Else H-(Y-Z[13]-2)/(2.5+C*F)-Z[4]"B:“B=”:B⊿ (四级坡面) IfEnd:IfEnd:……IfEnd: (共7个IfEnd) 渐变段完成。 渐变段中在不同的桩号时马道的边界也会随之改变,所以把测点对应的马道边界显示出来,便于测量人员把握变化范围。只要把所有变量在整体中的相互关系搞清楚,渐变段编程就容易多了。 编写下挖深度程序不仅仅利用在修坡上,还可以用到很多的方面,比如在反算开口线时,只要找到下挖为零的位置就行了;保护层放样时,可以直接找到所想要的保护厚度等等。 4结束语 CASIOfx-5800p的功能不仅仅体现在土方开挖上,它的更多的功能还有待我们的发掘和使用。例如矩阵计算,序列计算,方程式计算,统计计算等等。这些功能大部分在土方开挖的过程中用不到,但是在我们南水北调的其他环节上还是能找到它们的身影,熟练的使用它们能为我们带来种种的便利,大大的简化工作中重复,繁琐的工作量。我们并不需要把计算器所有的功能都学会,但至少我们应该把我们所要用到的功能熟练掌握,让计算器真正的成为我们测量工作的助手,做到编程随心所欲。






