EXCEL辅助计算公路中桩与边桩参数的应用

  来源:网络    时间:     
[关键词]交通运输  

    摘要:在现今的道路桥梁建设中, 全站仪以其高精度、高效率的特点,在测量放样中得到广泛的应用,它将传统的二维测量提升到了三维测量的高度。但大量的坐标计算加重了测量人员的工作强度,也影响了全站仪的使用效率。本人根据《公路工程施工测量》提供的FX-4500程序,利用EXCEL函数与逻辑循环语来计算公路中桩及边桩参数,大大提高了计算的可靠性和速度。
关键词:EXCEL 计算 公路中桩 公路边桩  一、前言在当前的高速公路施工中,全站仪以其高精度、使用简便的特点在施工测量放样中得到广泛的应用。它的使用还有一个意义,它将测量从传统的二维测量提升到三维测量的高度,使测量效率大为提高。全站仪使用时需计算大量的坐标,坐标的正确和精度直接关系到测量结果的准确度;另外,对于现场计算的坐标,能否迅速的得出结果也会影响全站仪的使用效率,所以准确、快速的坐标计算也是全站仪使用中的关键一环。坐标的计算涉及到大量的数据和公式,计算时极易出错。测量中使用最多、计算最为复杂的是公路中桩、边桩坐标和方位角,其他的施工测量都是以此作为参照,经过简单运算即可得结果。现测量员普遍采用可编程计算器帮助计算,使用前需根据不同的计算器特性输入程序,计算时根据不同的路段选择不同的程序输入参数,逐个得到坐标或方位角,还得反复校核。这对于大批量计算来说是一个不小的工程。现在,电脑在施工单位已得到使用普及,在工程量及数测量数据处理过程中,Office中EXCEL经常是测量技术人员利用的工具。本人根据本人从2002年至2005年的利用电脑处理测量资料的经验结合EXCEL的强大功能,总结出了用电脑计算公路中桩、左侧、右侧坐标的可行方法,并利用EXCEL的逻辑语句编制了一个小的应用程序。希望能把测量人员从重复性的劳动中解脱出来。二、工作原理1.应用程序的目标上文已讲到施工测量中使用最多、计算最为复杂的是公路中线逐点坐标和切线方位角,既中桩的X值、Y值。EXCEL的主要目标就是计算公路中线的中桩参数。2.源程序L1  F:N:G:R:U:Q:J:K起算要素L2  Defm  4 扩大内存L3  M=I/2-I^3/240/R^2  M为加设缓和曲线后使切线增长的距离L4  P=I^2/24/R-I^4/2688/R^3  P为加设缓和曲线,圆曲线相对于切线的内移量L5  E=(R+P)/cos(N/2)-R  E外矢距在EXCEL中角度默认为弧度。L6  L=πRN/180+I  L为曲线长含缓和段L7  T=M+(R+P)tan(N/2)切线长L8  A=Q-T:B=A+I:D=A+L:C=D-I  ZH:HY:HZ:YH里程桩号L9   Rec(T,F+180) ZH点坐标增量计算L10  Z[1]=V+J:Z[2]=W+K  ZH点坐标(V,W坐标增量,计算机内部运算)L11  Rec(T,F+GN) HZ点坐标增量计算L12  Z[3]=V+J:Z[4]=W+K  HZ点坐标LBI  θL14  {H,S,E}  待点要素L15  H<A=>GOTO  1 第一段直线上任一点坐标计算L16  ≠>H<B=>GOTO  2 第一段缓和曲线上任一点坐标计算L17  ≠>H<C=>GOTO  3 圆曲线上任一点坐标计算L18  ≠>H<D=>GOTO  4 第二段缓和曲线上任一点坐标计算L19  ≠>GOTO  5 第二段直线上任一点坐标计算L20  LBI  I  第一段直线坐标计算开始L21  Rec(Q-H,F+180)中桩坐标增量计算L22  X=V+J:Y=W+K  中桩坐标L23  X=X+V:“X”=◢L24  Y=Y+W:“Y”=◢第一段直线上任一点坐标计算结果L25  GOTO θL26  LbI  2第一段缓和曲线坐标计算开始L27  Z=H-A所求点到ZH距离L28  O=90Z^2/R/I/π所求点的方位角L29 X=Z-Z^5/40/R^2/I^2+Z^9/3456/R^4/I^4L30  Z=Z^6/6/R/I-Z^7/336/R^3/I^3+Z^11/42440/R^5/I^5 第一段缓和曲线上任一点切线支距法坐标计算L31  LBI  6  第一段缓和曲线、圆曲线坐标换算计算L32  Rec(X,F)L33  X=Z[1]+V:Y=Z[2]+WL34  Rec(X,F+90G)L35  X=X+V:Y=Y+WL36  LbI  3  圆曲线上任一点切线支距法计算开始L37  Z=H-A-I/2L38  O=180Z/R/π Z所对中心角L39  X=Z-Z^3/6/R^2+Z^5/120/R^4+ML40  Z=Z^2/2/R-Z^4/R^3/24+Z^6/720/R^5+PL41  GOTO 6L42  LbI  4  第二段缓和曲线计算开始L43  Z=D-H到HZ点长度L44  O=90Z^2/R/I/π Z所对中心角L45  X=Z-Z^5/40/R^2/I^2+Z^9/3456/R^4/I4L46  Z=Z^3/6/R/I-Z^7/336/R^3/I^3+Z^11/42240/R^5/I^5L47  Rec(X,F+GN+180)L48  X=Z[3]+V:Y=Z[4]+WL49  Rec(X,F+GN+180-90G)L50  X=X+V:Y=Y+WL51  X=X+V:“X”=◢L52  Y=Y+V:“Y”=◢L53  GOTO θ程序中符号说明F-第一直线段正方位角(即后视切线上任一点(如ZH)至交点的方位角;N—交点转向角(即偏角);右偏角为正,左偏角为负,输入转向角时不得输入“+、-”G—条件(左偏输入-1,右偏输入+1);R—半径;I—缓和曲线长度(m)(圆曲线I输入0);Q—交点里程桩号;J—交点X坐标值;K—交点Y坐标值;H—所求点里程桩号;X、Y—所求点X、Y坐标值。3.基本思路本文基本思路是在EXECEL表格中建立若干个工作表,利用EXECL的逻辑循环语句(IF,VLOOKUP)与函数计算公式把这些工作表链接一起。本文利用蒲石河对外永久公路(K1+200-K2+100段)中桩及边桩计算做出EXECL实例(路宽10米,路基8米,路肩2米),下面以此展开叙述:⑴、首先在电子表中建立9个工作表,分别命名为基本资料、JD7、JD8、JD9、JD10、JD11、JD12、JD13、成果。⑵、a首先在基本资料工作表中输入如下表相对的数据。在电子表格中,三角函数计算以弧度为单位,所以角度值必须在单元格中必须利用pi()/180在角度与弧度的转换。在转向角输入时,向左转时在G对应的单元格中输入-1,向右转时在G对应的单元格中输入1(如表1)。方位角所对应的数据可以直接从设计提供的参数表输入,另外可以用几个单元格链接在一起计算,在表2中利用9个单元格链接起来计算。例如利用JD7与JD6所对应的XY值相减,得出JD7所对行数据的△X△Y值,在JD7所对应行的反切值1数据中输入公式=IF(E4="","",IF(F4=0,"",ATAN(G4/F4))),在JD7所对应行的反切值2数据中输入公式=IF(E4="","",IF(G4=0,"",ATAN(F4/G4))),在JD7所对应行的数据1中输入公式=IF(AND(F4>0,G4=0),0,("")),在JD7所对应行的数据2中输入公式=IF(AND(G4>0,F4>0),H4,IF(AND(G4>0,F4=0),PI()/2,IF(AND(G4>0,F4<0),PI()/2-I4,("")))),在JD7所对应行的数据3中输入公式IF(AND(F4<0,G4=0),PI(),("")),在JD7所对应行的数据4输入公式=IF(AND(G4<0,F4<0),PI()+H4,IF(AND(F4=0,G4<0),1.5*PI(),IF(AND(G4<0,F4>0),1.5*PI()-I4,("")))),在JD7所对应行数据方位角弧度中输入公式=IF(AND(F4>0,G4=0),J4,IF(G4>0,K4,IF(AND(G4=0,F4<0),L4,IF((G4<0),M4,("")))))。
表1表2
b利用已输入的基本资料数据,计算出如下表表3对应的单元格的数据。现以JD7所对应行做公式叙述。在M所对应单元格输入公式IF((OR(AD4=0,AE4=0))," ",AE4/2-AE4^3/240/AD4^2),在P所对应单元格输入公式IF(AD4=0,"",AE4^2/24/AD4-AE4^4/2688/AD4^3),在E所对应单元格输入公式IF(OR(D4="",E4=""),"",(AD4+AH4)/COS(AC4/2)-AD4),在L所对应单元格输入公式IF(OR(D4="",E4=""),"",PI()*AD4*AC4/PI()+AE4),在T所对应单元格输入公式IF(OR(D4="",E4=""),"",IF(AG4="",0,AG4+(AD4+AH4)*TAN(AC4/2))),在ZH所对单元格输入公式IF(OR(D4="",E4=""),"",C4-AK4),在HY所对应单元格输入公式IF(OR(D4="",E4=""),"",AL4+AE4),在QZ所对应单元输入公式IF(OR(D4="",E4=""),"",AM4/2+AO4/2),在YH所对应单元格输入公式IF(OR(D4="",E4=""),"",AP4-AE4),在HZ所对应单元格输入公式IF(OR(D4="",E4=""),"",AL4+AJ4),在BC所对单元格输入步长。表3
c.以上基本资料工作表以JD7所对应行做例子,JD8至JD13所对应行输入公式采用电子表格中的编辑栏中的向下填充功能,向下填充公式。⑶.然后利用源程序开始在工作表JD7、JD8、JD9、JD10、JD11、JD12、JD13中进行编单元格。现在以JD7所对应的工作表进行实例叙述。工作表在计算过程中只能上一个交点的HZ点到本交点的HZ点间的数据进行计算。a、例如表4,在工作表的第一个单元格输入数字7(与JD7所对应的数字7一致),然后把JHZH、JDX、JDY、R、I、P、E、F、G、N、M、BC所对单元格参数与基本资料所对应的单元格参数链接起来,加宽值输入设计加宽值,常数输入为从路肩开始横向增加的宽度。
表4b、例如表5,桩号(ZH-HZ)所对应的单元格中分别输入公式VLOOKUP(A1,基本资料!$A$3:$AQ$32,38,)、VLOOKUP(A1,基本资料!$A$3:$AQ$32,39,)、VLOOKUP(A1,基本资料!$A$3:$AQ$32,40,)、VLOOKUP(A1,基本资料!$A$3:$AQ$32,41,)、VLOOKUP(A1,基本资料!$A$3:$AQ$32,42,)。在ZH所对应的参数单元格输入公式IF(AND(A8>=A$7,A8<=A$8),A$3-A8,IF(AND(A8>=A$8,A8<=A$9),A8-A$8,IF(AND(A8>=A$9,A8<=A$11),(A8-A$8-E$3/2),IF(AND(A8>=A$11,A8<=A$12),A$12-A8,"")))),利用编辑工具栏中向下填充公式。在ZH点与HZ点对应的X、Y单元格中分别输入公式B3+F3*COS(A5+PI())、C3+F3*SIN(A5+PI())、B3+F3*COS(A5+B5*C5)、C3+F3*SIN(A5+B5*C5),首先计算出ZH点与HZ点所对应的X、Y坐标。在ZH点所对应的切线方位角单元格IF(A8<=A$8,A$5,IF(AND(A8>=A$8,A8<=A$9),0.5*B8^2/D$3/E$3*B$5+A$5,IF(AND(A8>=A$9,A8<=A$11),B8/D$3*B$5+A$5,IF(AND(A8>=A$11,A8<=A$12),0.5*B8^2/D$3/E$3*(-B$5)+A$5+B$5*C$5,IF(A8>=A$12,A$5+B$5*C$5))))),然后利用向下填充功能把公式向下填充,计算相对应的桩号在切线方向的方位角。在HY点所对应的X、Y单元格中输入相应公式IF(AND(A9>=A$7,A9<=A$8),ROUND(B9*COS(A$5+PI())+B$3,3),IF(AND(A9>=A$8,A9<=A$9),ROUND(C$8+COS(A$5)*(B9-B9^5/40/D$3^2/E$3^2+B9^9/3469/D$3^4/E$3^4)+COS(A$5+PI()/2*B$5)*(B9^3/6/D$3/E$3-B9^7/336/D$3^3/E$3^3+B9^11/42240/D$3^5/E$3^5),3),IF(AND(A9>=A$9,A9<=A$11),ROUND(C$8+COS(A$5)*(B9-B9^3/6/D$3^2+B9^5/120/D$3^4+D$5)+COS(A$5+PI()/2*B$5)*(B9^2/2/D$3-B9^4/D$3^3/24+B9^6/720/D$3^5+I$3),3),IF(AND(A9>=A$11,A9<=A$12),ROUND(C$12+COS(A$5+B$5*C$5+PI())*(B9-B9^5/40/D$3^2/E$3^2+B9^9/3469/D$3^4/E$3^4)+COS(A$5+PI()+B$5*C$5-PI()/2*B$5)*(B9^3/6/D$3/E$3-B9^7/336/D$3^3/E$3^3+B9^11/42240/D$3^5/E$3^5),3)," "))))与IF(AND(A9>=A$7,A9<=A$8),ROUND(B9*SIN(A$5+PI())+C$3,3),IF(AND(A9>=A$8,A9<=A$9),ROUND(D$8+SIN(A$5)*(B9-B9^5/40/D$3^2/E$3^2+B9^9/3469/D$3^4/E$3^4)+SIN(A$5+PI()/2*B$5)*(B9^3/6/D$3/E$3-B9^7/336/D$3^3/E$3^3+B9^11/42240/D$3^5/E$3^5),3),IF(AND(A9>=A$9,A9<=A$11),ROUND(D$8+SIN(A$5)*(B9-B9^3/6/D$3^2+B9^5/120/D$3^4+D$5)+SIN(A$5+PI()/2*B$5)*(B9^2/2/D$3-B9^4/D$3^3/24+B9^6/720/D$3^5+I$3),3),IF(AND(A9>=A$11,A9<=A$12),ROUND(D$12+SIN(A$5+B$5*C$5+PI())*(B9-B9^5/40/D$3^2/E$3^2+B9^9/3469/D$3^4/E$3^4)+SIN(A$5+PI()+B$5*C$5-PI()/2*B$5)*(B9^3/6/D$3/E$3-B9^7/336/D$3^3/E$3^3+B9^11/42240/D$3^5/E$3^5),3)," "))))。在公路中桩HY、QZ、YH及ZH点以下所对应的X、Y单元格填充以上公式,利用以公式计算出中桩坐标。ZH点以下所对桩号内输入上一个交点处HZ点桩号,在与其相邻的递增桩号取5的倍数,例如在表5中桩号1100以下的桩号中输入公式A14+E$5,E$5所表示的步长为5。在左、右侧任意值分别输入宽度所对公式IF(B$5>0,5,IF(A8<=A$8,5,IF(AND(A8>=A$8,A8<A$9),(A8-A$8)/E$3*F$5+5,IF(AND(A8>=A$9,A8<A$11),5+F$5,IF(AND(A8>=A$11,A8<A$12),ABS(A8-A$12)/E$3*F$5+5,IF(A8>=A$12,5))))))+I$5、IF(B$5<0,5,IF(A8<=A$8,5,IF(AND(A8>=A$8,A8<A$9),(A8-A$8)/E$3*F$5+5,IF(AND(A8>=A$9,A8<A$11),5+F$5,IF(AND(A8>=A$11,A8<A$12),ABS(A8-A$12)/E$3*F$5+5,IF(A8>=A$12,5))))))+I$5,利用EXCEL的相下填充功能,向下填充公式,计算左、右侧的任意宽度。在ZH所对应左侧任侧任意值X、Y单元格内分别输入公式C8+I8*COS(F8-PI()/2)与公式D8+I8*SIN(F8-PI()/2),在ZH所对应右侧任意值X、Y单元格内分别输入公式C8+T8*COS(F8+PI()/2)与D8+T8*SIN(F8+PI()/2),同样利用向下填充功能复制单元格公式。
表5c.利用上述方式,在工作表JD8-JD13编辑公式。⑷工作表成果得出所有在K1+100-K2+100段的中桩及左右侧任意点坐标。参数栏所对应值为从路肩横向增加值(变换常数)。例如在桩号1100所对应行,左侧任意值X、Y单元格输入公式IF(AND(B4>=1100,B4<=1250),VLOOKUP(B4,JD7!A:V,10,FALSE),IF(AND(B4>=1255,B4<=1360),VLOOKUP(B4,JD8!A:V,10,FALSE),IF(AND(B4>=1365,B4<=1585),VLOOKUP(B4,JD9!A:V,10,FALSE),IF(AND(B4>=1590,B4<=1760),VLOOKUP(B4,JD10!A:V,10,FALSE),IF(AND(B4>=1765,B4<=1875),VLOOKUP(B4,JD11!A:V,10,FALSE),IF(AND(B4>=1880,B4<=2030),VLOOKUP(B4,JD12!A:V,10,FALSE),IF(AND(B4>=2035,B4<=2105),VLOOKUP(B4,JD13!A:V,10,FALSE),"")))))))与IF(AND(B4>=1100,B4<=1250),VLOOKUP(B4,JD7!A:V,11,FALSE),IF(AND(B4>=1255,B4<=1360),VLOOKUP(B4,JD8!A:V,11,FALSE),IF(AND(B4>=1365,B4<=1585),VLOOKUP(B4,JD9!A:V,11,FALSE),IF(AND(B4>=1590,B4<=1760),VLOOKUP(B4,JD10!A:V,11,FALSE),IF(AND(B4>=1765,B4<=1875),VLOOKUP(B4,JD11!A:V,11,FALSE),IF(AND(B4>=1880,B4<=2030),VLOOKUP(B4,JD12!A:V,11,FALSE),IF(AND(B4>=2035,B4<=2105),VLOOKUP(B4,JD13!A:V,11,FALSE),""))))))),在中桩坐标所对应的X、Y单元格输入公式IF(AND(B4>=1100,B4<=1250),VLOOKUP(B4,JD7!A:V,3,FALSE),IF(AND(B4>=1255,B4<=1360),VLOOKUP(B4,JD8!A:V,3,FALSE),IF(AND(B4>=1365,B4<=1585),VLOOKUP(B4,JD9!A:V,3,FALSE),IF(AND(B4>=1590,B4<=1760),VLOOKUP(B4,JD10!A:V,3,FALSE),IF(AND(B4>=1765,B4<=1875),VLOOKUP(B4,JD11!A:V,3,FALSE),IF(AND(B4>=1880,B4<=2030),VLOOKUP(B4,JD12!A:V,3,FALSE),IF(AND(B4>=2035,B4<=2105),VLOOKUP(B4,JD13!A:V,3,FALSE),"")))))))与IF(AND(B4>=1100,B4<=1250),VLOOKUP(B4,JD7!A:V,4,FALSE),IF(AND(B4>=1255,B4<=1360),VLOOKUP(B4,JD8!A:V,4,FALSE),IF(AND(B4>=1365,B4<=1585),VLOOKUP(B4,JD9!A:V,4,FALSE),IF(AND(B4>=1590,B4<=1760),VLOOKUP(B4,JD10!A:V,4,FALSE),IF(AND(B4>=1765,B4<=1875),VLOOKUP(B4,JD11!A:V,4,FALSE),IF(AND(B4>=1880,B4<=2030),VLOOKUP(B4,JD12!A:V,4,FALSE),IF(AND(B4>=2035,B4<=2105),VLOOKUP(B4,JD13!A:V,4,FALSE),""))))))),在右侧任意值所对应的X、Y单元格中输入公式IF(AND(B4>=1100,B4<=1250),VLOOKUP(B4,JD7!A:V,21,FALSE),IF(AND(B4>=1255,B4<=1360),VLOOKUP(B4,JD8!A:V,21,FALSE),IF(AND(B4>=1365,B4<=1585),VLOOKUP(B4,JD9!A:V,21,FALSE),IF(AND(B4>=1590,B4<=1760),VLOOKUP(B4,JD10!A:V,21,FALSE),IF(AND(B4>=1765,B4<=1875),VLOOKUP(B4,JD11!A:V,21,FALSE),IF(AND(B4>=1880,B4<=2030),VLOOKUP(B4,JD12!A:V,21,FALSE),IF(AND(B4>=2035,B4<=2105),VLOOKUP(B4,JD13!A:V,21,FALSE),"")))))))与IF(AND(B4>=1100,B4<=1250),VLOOKUP(B4,JD7!A:V,22,FALSE),IF(AND(B4>=1255,B4<=1360),VLOOKUP(B4,JD8!A:V,22,FALSE),IF(AND(B4>=1365,B4<=1585),VLOOKUP(B4,JD9!A:V,22,FALSE),IF(AND(B4>=1590,B4<=1760),VLOOKUP(B4,JD10!A:V,22,FALSE),IF(AND(B4>=1765,B4<=1875),VLOOKUP(B4,JD11!A:V,22,FALSE),IF(AND(B4>=1880,B4<=2030),VLOOKUP(B4,JD12!A:V,22,FALSE),IF(AND(B4>=2035,B4<=2105),VLOOKUP(B4,JD13!A:V,22,FALSE),""))))))),在切线方位角所对应的单元格中输入公式IF(AND(B4>=1100,B4<=1250),VLOOKUP(B4,JD7!A:V,8,FALSE),IF(AND(B4>=1255,B4<=1360),VLOOKUP(B4,JD8!A:V,8,FALSE),IF(AND(B4>=1365,B4<=1585),VLOOKUP(B4,JD9!A:V,8,FALSE),IF(AND(B4>=1590,B4<=1760),VLOOKUP(B4,JD10!A:V,8,FALSE),IF(AND(B4>=1765,B4<=1875),VLOOKUP(B4,JD11!A:V,8,FALSE),IF(AND(B4>=1880,B4<=2030),VLOOKUP(B4,JD12!A:V,8,FALSE),IF(AND(B4>=2035,B4<=2105),VLOOKUP(B4,JD13!A:V,8,FALSE),""))))))),利用向下填充功能就得出桩号5米递增的坐标与方位角。表6
三、总结本文的工作原理基于计算机常规软件EXCEL的应用,提高工程测量内业计算速度与准确度,充分发挥了现有办公设备的功能,极大地提高了工作效率。

文章搜索
本类热门
本站所列资源部分收集自网上,本站与内容的出处无关,内容版权皆属原作者所有,如果你认为侵犯了您的版权,请通知我们,我们立即删除.