国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

GTS—720全站儀坐標(biāo)測(cè)量程序開(kāi)發(fā)

2015-05-04 07:48孫艷崇
科技創(chuàng)新與應(yīng)用 2015年13期
關(guān)鍵詞:程序開(kāi)發(fā)全站儀

摘 要:WinCE嵌入式操作系統(tǒng)的全站儀應(yīng)用越來(lái)越廣泛,這樣的全站儀具有可二次開(kāi)發(fā)的功能,利用嵌入式開(kāi)發(fā)工具可以開(kāi)發(fā)出滿(mǎn)足用戶(hù)特定要求的程序,文章以GTS-720托普康全站儀為例,介紹了坐標(biāo)測(cè)量程序開(kāi)發(fā)的要點(diǎn)。

關(guān)鍵詞:全站儀;坐標(biāo)測(cè)量;程序開(kāi)發(fā)

1 概述

GTS-720是拓普康公司開(kāi)發(fā)的智能全站儀,其軟件操作系統(tǒng)是內(nèi)嵌的WinCE,操作界面同臺(tái)式機(jī)的Windows系統(tǒng)界面類(lèi)似,使用戶(hù)對(duì)其二次開(kāi)發(fā)更容易。對(duì)智能全站儀開(kāi)發(fā)各種放樣系統(tǒng)時(shí),需要自動(dòng)獲得全站儀測(cè)定的角度、距離及坐標(biāo)數(shù)據(jù),所以用戶(hù)需要從底層開(kāi)發(fā)坐標(biāo)測(cè)量程序,然后再結(jié)合各種算法實(shí)現(xiàn)各種放樣系統(tǒng)。如果采用其自帶的坐標(biāo)測(cè)量程序,由于無(wú)法實(shí)現(xiàn)用戶(hù)同全站儀交互操作,就只能實(shí)現(xiàn)基本計(jì)算的功能。

對(duì)GTS-720全站儀從底層開(kāi)發(fā)坐標(biāo)測(cè)量程序,必須有GTS-720sdk,即此全站儀專(zhuān)用的操作指令,該指令常用的基本函數(shù)如下:

(1)fpTsSetStnCoord:輸入儀器測(cè)站點(diǎn)坐標(biāo);(2)fpTsSetInstHeight:輸入儀高和棱鏡高;(3)fpTsSetHangle:輸入全站儀定向邊方位角;(4)fpTsRequest:設(shè)置全站儀角度和距離測(cè)量模式;(5)fpTsStopMeas:設(shè)置全站儀是否停止距離測(cè)量;(6)fpTsReadMeas:讀取全站儀觀測(cè)返回的字符串。

2 坐標(biāo)測(cè)量程序開(kāi)發(fā)

2.1 程序開(kāi)發(fā)的整體思路

(1)程序開(kāi)發(fā)應(yīng)該首先創(chuàng)建一個(gè)空白的“TXT”文本文件,該文件的保存路徑和文件名都必須采用全局的程序變量,因?yàn)樽鴺?biāo)測(cè)量得到的數(shù)據(jù)是在其他類(lèi)中完成的,文件保存時(shí)需要調(diào)用該文件的全局變量名稱(chēng)。(2)全站儀進(jìn)行坐標(biāo)測(cè)量之前要輸入儀器點(diǎn)的坐標(biāo)和目標(biāo)點(diǎn)的坐標(biāo),其目的是需要獲得測(cè)站點(diǎn)的坐標(biāo)和一條已知邊的起算方位角;如果需要測(cè)量點(diǎn)的高程,就需要輸入儀器高和棱鏡高。由于棱鏡高度可能需要頻繁變換,所以棱鏡高和儀器高分別采用不同的對(duì)話(huà)框來(lái)分開(kāi)進(jìn)行設(shè)置,而且系統(tǒng)中應(yīng)自動(dòng)保留上一次測(cè)量時(shí)儀器的高度值,以免同一站儀器沒(méi)有變換,還需要重新輸入儀器的高度。(3)測(cè)量返回的字符串包含了角度和觀測(cè)距離的信息,需要對(duì)這些字符串進(jìn)行分割后,將測(cè)定的距離和方位角換算成坐標(biāo);坐標(biāo)測(cè)量完成后,系統(tǒng)自動(dòng)彈出一個(gè)話(huà)框來(lái)顯示測(cè)定出的坐標(biāo)值,用戶(hù)輸入坐標(biāo)點(diǎn)號(hào)后將坐標(biāo)值保存在文本文件中。

2.2 坐標(biāo)方位角的計(jì)算

設(shè)站常用的方法為兩點(diǎn)定向,即輸入測(cè)站點(diǎn)和定向點(diǎn)的坐標(biāo)。而定向的方位角需要通過(guò)程序計(jì)算出來(lái),然后此變量需要通過(guò)函數(shù)設(shè)置為全站儀的水平角。兩點(diǎn)定向需用到四個(gè)坐標(biāo)數(shù)據(jù),其含義和變量如表1所示:

表1

在用atan( )函數(shù)的值域范圍是(-?仔/2,?仔/2),而方位角的取值方位是(-360°,+360°)。對(duì)x、y方向的坐標(biāo)增量的正負(fù)做判斷,其算法如下:

if ((aim_x-site_x)>0)

orient=atan((aim_y-site_y)/(aim_x-site_x))

else if((aim_x-site_x) <0)

orient=atan(y/x)+PI;

如果aim_x-site_x=0 ,則說(shuō)明方位角是90°或270°,這時(shí)就不能通過(guò)上述的函數(shù)進(jìn)行計(jì)算,因?yàn)榇肷鲜街谐龜?shù)為零,其判斷方法如下:

if((aim_x-site_x =0)&&(y>0))

orient=PI/2;

if((aim_x-site_x =0)&&(y<0))

orient=-PI/2;

PI的值等于?仔;當(dāng)度盤(pán)為負(fù)數(shù)時(shí),GTS-720的函數(shù)“fpTsSetHangle”會(huì)自動(dòng)加上2?仔設(shè)值度盤(pán);atan()返回值的單位是弧度,需要將其轉(zhuǎn)換成度、分、秒格式。

2.3 測(cè)量功能的實(shí)現(xiàn)

測(cè)量功能的實(shí)現(xiàn)主要用“fpTsRequest()”開(kāi)發(fā)函數(shù),其主要程序的主要流程如圖1:

圖1 使用fpTsRequest()實(shí)現(xiàn)測(cè)量功能流程圖

此部分程序幾點(diǎn)說(shuō)明:(1)開(kāi)發(fā)函數(shù)fpTsRequest()以硬件為操作對(duì)象。而硬件要完成距離測(cè)量工作需要運(yùn)行一段時(shí)間,一般情況下,運(yùn)行fpTsRequest()函數(shù)后,就立刻執(zhí)行下一般操作函數(shù),則fpTsRequest()函數(shù)無(wú)法完成測(cè)量功能,返回一群無(wú)用雜亂的字符串。(2)由于上述的原因,運(yùn)行fpTsRequest()函數(shù)后,程序應(yīng)該等待一段時(shí)間再執(zhí)行下一步操作。該函數(shù)需要測(cè)量的時(shí)間同觀測(cè)距離的遠(yuǎn)近相關(guān),所以設(shè)置成一個(gè)固定時(shí)間段是不合理的,所以需要設(shè)置一個(gè)循環(huán)來(lái)完成此功能。其方法如下:創(chuàng)建一個(gè)for循環(huán)語(yǔ)句,共循環(huán)五次;循環(huán)一次的時(shí)間是4秒種;每次循環(huán)后對(duì)返回的字符進(jìn)行校對(duì),如果結(jié)果正確就跳出循環(huán),進(jìn)入下一步程序;如果程序已循環(huán)5次后,得到正確的字符串仍不正確,則循環(huán)終止,程序結(jié)束;(3)數(shù)據(jù)校對(duì)就是利用fpTsRequest()函數(shù)進(jìn)行測(cè)驗(yàn),判斷獲得正確數(shù)據(jù)是否是有效的數(shù)據(jù)。

3 對(duì)GTS-720全站儀進(jìn)行開(kāi)發(fā)的幾點(diǎn)說(shuō)明

(1)GTS-720全站儀采用嵌入式工具EVC4.0進(jìn)行二次開(kāi)發(fā),該開(kāi)發(fā)軟件可以從微軟網(wǎng)站上免費(fèi)下載。(2)GTS-720全站儀進(jìn)行開(kāi)發(fā)需要有針對(duì)該儀器的開(kāi)發(fā)包,該開(kāi)發(fā)包中含有專(zhuān)用于GTS-720全站儀測(cè)量程序開(kāi)發(fā)的接口命令,不過(guò)該開(kāi)發(fā)包不能直接在該儀器公司的官方網(wǎng)站上直接下載,而應(yīng)該與Topcon公司簽訂相關(guān)的保密協(xié)議后,才能從Topcon事務(wù)所得到該開(kāi)發(fā)包。(3)GTS-720全站儀的開(kāi)發(fā)中由于用到了全站儀的開(kāi)發(fā)函數(shù),該函數(shù)是同儀器的硬件相關(guān)的,所以在模擬器下無(wú)法進(jìn)行進(jìn)行調(diào)試,而必須全站儀與PC連接后才能進(jìn)行相關(guān)的調(diào)試。(4)全站儀測(cè)定的水平距離和高差需進(jìn)行地球曲率和大氣折光的改正。地球曲率對(duì)高差的影響較大,如果高差不進(jìn)行地球曲率改正,則兩點(diǎn)相距1km時(shí),測(cè)定的高差誤差能達(dá)到7cm左右。由于此系統(tǒng)函數(shù)fpTsRequest()的測(cè)量功能已經(jīng)自動(dòng)進(jìn)行了這些改正,而不再需要對(duì)此部分功能進(jìn)行二次開(kāi)發(fā)。

參考文獻(xiàn)

[1]萬(wàn)躍華Visual C++NET網(wǎng)絡(luò)編程[M].北京:科學(xué)出版社.

[2]張慧慧,孫艷崇.控制測(cè)量技術(shù)[M].東北大學(xué)出版社,2013

作者簡(jiǎn)介:孫艷崇(1978,3-),男,漢族,遼寧綏中,講師,注冊(cè)測(cè)繪師,碩士研究生,研究方向:數(shù)字化測(cè)圖技術(shù)。

猜你喜歡
程序開(kāi)發(fā)全站儀
淺析大學(xué)生在兼職小程序開(kāi)發(fā)中遇到的問(wèn)題
全站儀極坐標(biāo)法監(jiān)測(cè)點(diǎn)穩(wěn)定性分析方法研究
APP應(yīng)用程序開(kāi)發(fā)模式探究
基于快牙平臺(tái)實(shí)現(xiàn)全站儀與計(jì)算機(jī)的數(shù)據(jù)通信
基于TestStand的自動(dòng)檢測(cè)程序開(kāi)發(fā)
基于嵌入式系統(tǒng)Windows CE的應(yīng)用程序開(kāi)發(fā)
基于App inventor 2手機(jī)程序開(kāi)發(fā)過(guò)程的學(xué)習(xí)與實(shí)——以“喵喵定時(shí)器”APP開(kāi)發(fā)為例
基于全站儀二次開(kāi)發(fā)的覆冰厚度測(cè)量與實(shí)現(xiàn)
基于ANSYS的大體積混凝土溫度應(yīng)力計(jì)算程序開(kāi)發(fā)研究
試析GPS與全站儀在西藏礦山測(cè)量中的應(yīng)用
洪泽县| 杭锦旗| 财经| 嘉祥县| 松江区| 阜平县| 集安市| 广东省| 时尚| 德安县| 大英县| 麻阳| 扶余县| 建德市| 高密市| 灌阳县| 江口县| 绥江县| 呈贡县| 大埔县| 岳阳市| 淮阳县| 绍兴市| 东台市| 米林县| 庐江县| 延长县| 乐安县| 额敏县| 陆丰市| 内丘县| 栖霞市| 扎囊县| 廊坊市| 尤溪县| 宜宾市| 北辰区| 丰县| 广平县| 长阳| 保山市|