測量機器人遠程控制應用設計
2017-3-28 來源:合肥工業大學 作者:王盼 吳兆福 張懷亮
摘要: 利用 Leica 測量機器人的 Geo Com 接口,使用 C + + 二次開發可實現自動化觀測軟件,為重復、高頻次的變形觀測提供解決方案。輔以網絡通信模塊,實現對測量機器人的遠程控制,完成數據采集任務。通過對比分析利用軟件自動采集的坐標和人工直接采集的坐標,結果顯示數據結果穩定可靠。該系統可實現測量內外業作業的一體化,大大提高傳統測量的效率,在生產實踐中有著重要意義。
關鍵詞: Geo Com; 自動化觀測; 網絡通信; 數據庫
0 引言
測量機器人可實現數據獲取和處理的自動化,也可實現測量過程的自動化 ( 即無人觀測) 。測量過程控制及其行為的智能化主要是指通過程序實現對自動化觀測儀器的智能化控制、管理,模擬人腦的思維方式判斷和處理測量過程中遇到的各種問題[1 ~3]。利用測量機器人開發遠程控制程序可以提供高效便捷的自動化測量,大大降低勞動強度。同時可以滿足內、外業一體化、規范化的作業要求。
本軟件以 Leica TS30 全站儀為基礎,在 Microsoft VisualStudio. NET2010 平臺上利用 C ++ 和 C #語言編寫服務器和用戶端程序,輔以網絡通信實現遠程控制。
1.系統開發平臺的搭建
遠程控制軟件使用的操作系統是 Windows 7,開發平臺是 Microsoft Visual Studio. NET 2010,開發語言為 C ++ 和 C#。遠程控制軟件與測量機器人之間的通信是通過服務器端進行的,利用 Leica 提供的 Geo Com 串行通信接口、C ++ 調用 Class Ge GeoCom. dll 類庫和 Geo Com 封裝函數來控制儀器進行自動測量、轉盤、倒鏡等工作。C#是一種簡單、現代、面向對象、類型非常安全、派生于 C 和 C ++ 的編程語言,它是專門為與. NET Framework 一起使用而設計的,對 . NET 特性的支持不僅是完整的,而且提供了比其他語言更合適的語法,而 . NET 具有平臺無關性和數據的高效訪問等優點。所以利用 C#搭建控制中心平臺是較好的選擇,能夠滿足建立友好用戶界面和方便操作數據庫的要求。
2.系統設計
2. 1 系統總體設計
本系統使用的是 TS30 全自動全站儀,該儀器測角精度為 0. 5″,測距精度為 1mm + 1ppm × D ( D為所測距離) ,轉速為 180° /s,正倒鏡的轉換只需2. 9s,非常有利于進行自動化觀測測量[4]。機器人遠程控制系統由三部分組成: 測量機器人功能軟件、無線通訊模塊程序和控制中心軟件。本系統設計的基本結構如圖 1 所示。

圖 1 測量機器人遠程監控系統架構
(1) 測量機器人功能軟件
這一部分主要是服務器端程序,包括遵照國家三角測量作業規范編寫的 “多測回自動觀測” 程序,具有自動照準目標、自動測角、自動測距及超限或目標丟失等異常情況的自動處理功能[5,6]。此外,可以根據不同的工程任務進行設置,也可以對軟件程序進行修改,得到滿足不同工況的軟件,從而使得測量效率大大提高。
(2) 無線通訊模塊
主要負責建立通訊鏈路,用來轉發指令或數據。在客戶端和服務器端 PC 程序都有編寫接收和發送的通訊模塊。服務器端收到控制中心指令后,解析出指令內容,然后轉發給測量機器人; 客戶端收到測量機器人數據后,按照約定的數據格式保存到數據庫。
(3) 控制中心模塊
這一部分程序是在客戶端程序進行編寫,主要實現發送開關機、觀測等控制指令、接收觀測狀態以及傳輸測量數據。該控制中心軟件還包含有 SQLServer 數據庫管理模塊和數據后處理平差模塊。通過Internet 接收到的無線數據包經過 SQL Server 數據庫管理模塊直接自動輸入到 SQL Server 大型數據庫中。
2. 2 測量機器人功能軟件
Geo Com 按照功能可分為 12 個子系統功能函數,本系統主要利用其 COM、AUT 和 TMC 三個主要模塊進行功能軟件的開發[7,8]。調用 Geo Com 一般步驟為: 初始化→打開通訊端口→將望遠鏡照準指定方向→精密照準目標→執行測距動作→獲取角度和距離的測量數據→清空測距結果→關閉通訊端口→退出 Geo COM。
2. 3 無線通訊模塊
由于 TS30 全站儀自身提供的 RS232 電纜線可用距離非常短 ( 1. 5m) ,無法滿足操作人員遠程控制和數據遠程傳輸的要求[9,10]。采用 Socket 類來實現 C /S 模式下網絡程序的通信可以很好地解決遠程控制問題。根據連接啟動的方式以及本地套接字要連接的目標,套接字之間的連接過程可以分為三個步驟:
(1) 服務器監聽: 指服務器端套接字并不定位具體的客戶端套接字,而是處于等待連接的狀態,實時監控網絡狀態。
(2) 客戶端請求: 指由客戶端的套接字提出連接請求,要連接的目標是服務器端的套接字。為此,客戶端的套接字必須首先描述它要連接的服務器的套接字,指出服務器端套接字的地址和端口號,然后向服務器端套接字提出連接請求。
(3) 連接確認: 指當服務器端套接字監聽到或者接收到客戶端套接字的連接請求時,響應客戶端套接字的請求,建立一個新的線程,把服務器端套接字的描述發給客戶端,一旦客戶端確認了此描述,就建立好連接。而服務器端套接字繼續處于監聽狀態,繼續接收其他客戶端套接字的連接請求。
2. 4 控制中心模塊
2. 4. 1 數據庫的設計
開發本系統軟件總體任務之一就是建立監測數據的數據庫,本次建立的數據庫分為數據庫管理和數據庫查詢兩個模塊。在數據庫管理模塊中建立用戶和測量數據的管理,在數據查詢模塊中設計點號查詢和日期查詢兩種查詢方式。本數據系統的功能如圖 2 所示。

圖 2 數據系統功能示意圖
為了保證高質量、高效、便捷地完成測量任務,且測量成果滿足國家測量規范,本系統數據庫的測量數據庫管理模塊設計有盤左測量數據存儲表dbo. LANGLE 和盤右測量數據存儲表 dbo. RANGLE。其中表 RANGLE 結構如表 1 所示。從表 1 中可以看出,該表的設計有利于測量數據的實時存儲。
表 1 RANGLE 表結構

2. 4. 2 C#開發模擬測量狀態動畫
為了使用戶更加方便地操控儀器,本軟件設計四個快捷鍵 “W”、“A”、 “S”、 “D”來控制儀器向上、左、下、右勻速轉動,進行目標照準范圍的選取。 當鍵盤上相應的字符被按下,則觸發Keydown 事件,客戶端向服務器發出打開激光和全站儀轉動指令。當按鍵被松開,則觸發 Keyup 事件,發出關閉激光和全站儀停止轉動指令。圖 3 為方向控制鍵代碼。

圖 3 方向控制鍵部分代碼
模擬測量狀態的動畫界面是利用 C#雙緩存技術開發的。通過學習測量將所有的監測點按實際的方位模擬顯示在軟件上。在多測回測角狀態,軟件會根據現場照準點的情況,模擬測量動畫。在鼠標點擊相應圖標時,程序會計算出焦點與圖標的距離關系,判斷選中的目標點號并觸發測量事件,即實現 “任意測量”的功能。 “任意測量”功能的關鍵代碼見圖 ,功能測量界面見圖 5,視圖模擬測量如圖 6 所示。

圖 4 任意測量功能代碼

圖 5 功能測量界面

圖 6 視圖模擬測量
3.系統應用
在完成測量機器人遠程控制系統后,為了驗證該系統的實用性和穩定性,對軟件進行了實際應用。在合肥市地鐵 2 號線某基坑變形監測的現場辦公室安裝上客戶端軟件,并通過 WIFI 連接上互聯網,在 WIFI 所能覆蓋的現場強制對中測墩 A 上安置 TS30 全站儀,并與服務器端 PC 連接,服務器端PC 也連接互聯網。在離測站 A50-150m 距離范圍內布置 6 個 Leica 圓棱鏡作為監測目標。首次連接時,在客戶端先設置服務器的 IP 和端口號,連接成功后,控制儀器轉動,自由設站后進行學習測量。之后進入多測回測角設置,設置觀測測回數為 2,觀測周期為 8,點擊記憶測量進行多測回角觀測。從觀測結果來看,Leica TS30 自動目標識別的情況良好,測量精度較高。
將數據庫的觀測數據導出后,利用平差軟件對數據進行平差解算,并以第一周期數據為基礎進行變形分析,得出各個點的變形情況,其中監測點 1的后 7 個周期人工觀測與用軟件進行自動觀測的變形量對比如圖 7 所示。由圖 7 可以看出,人工觀測和自動觀測有一定的誤差,但變形量都為正數,說明反映的變形趨勢一致,且這種誤差是由觀測的隨機誤差造成的,誤差最大處僅為 0. 2mm,說明變化量也相當,自動觀測可以達到替代人工觀測的精度要求。

圖 7 人工觀測變化量與自動觀測變化量對比圖
4.結束語
本軟件通過網絡通信實現了遠程控制測量,體現出了測量內外業的一體化和數據獲取及處理的自動化。利用遠程控制系統進行變形監測可大大降低勞動強度,提高作業效率。特別適合小型基坑的長期監測。在此基礎上,可研究用安卓系統的手機等微型終端連接儀器作為服務器,使得測量更加智能化。
投稿箱:
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com
更多相關信息