伴隨著科技發展、社會進步,人類對未知領域的探索不斷深入,能夠代替人類進行危險、惡劣環境作業的遙操作機器人技術越來越成為研究的熱點。19世紀40年代,美國阿爾貢國立實驗室ANL(Argonne National Laboratory)制造的用于核環境的Model-M1型機械式主從操作手可作為遙操作機器人的發端。20世紀60年代早期,美國與法國的海軍開始在潛水艇上安裝遙操作手和攝像機進行深水作業,將遙操作技術應用于海洋;70年代以后,研制出登陸火星的遙操作機器人;80年代末90年代初,以加拿大SPAR公司建造的20 m長的遙操作臂RMS(Remote Manipulator System)為代表出現了幾種非常著名的空間遙操作系統。21世紀以來信息網絡化的發展,促使研究者將網絡和遙操作機器人技術相結合,為遙操作機器人技術帶來了巨大變革[2-4]。當代數字圖像信息作為最重要的信息之一被越來越廣泛地使用,人們獲取信息的70%來自視覺系統,也就是說在所有多媒體數據中,圖像提供的信息量最多,將機器人惡劣環境的作業情況以圖像的形式實時反饋給控制室,控制者通過圖像獲得更多的現場信息,這種遙操作機器人中的視頻監控技術獲得廣泛的應用和研究[5-6]。采用進一步提高反饋視頻預測精度的H.263壓縮算法,目的就是以盡量少的bit數來表征圖像,同時保持復原圖像的質量,使圖像在網絡上傳輸延時在允許范圍內,避免操作者因延時產生的誤操作[7-9]。雖然選擇適當的壓縮算法,能夠滿足圖像傳輸要求,可以減輕圖像存儲和傳輸的負擔,但是在工業生產中需要機器人的精確作業(如焊接機器人焊接時焊縫必須精準無誤)[10-11]。因此,控制命令如何在網絡介質里實現快速傳輸、準確抵達、實時處理,檢測機器人的作業精確度使機器人能對誤操作及時做出調整的技術問題成為遙操作機器人領域新的挑戰。
1 系統總體結構
針對以上情況,本文提出采用建立標準坐標系使仿真機器人和反饋視頻在同一界面融合的方法,仿真模型預演作業任務而反饋視頻則跟蹤其軌跡進行作業,通過兩者對比及時發現機器人作業情況,一旦越界違規立刻停止。操作者也能根據兩者的比較了解現場環境,如出現障礙物或機器人傷人事件時,立刻做出下一步命令以避免危險發生。系統總體結構如圖1所示。具體工作流程:攝像頭采集真實機器人的視頻數據傳送到服務器端圖像采集卡的靜態內存中對其進行H.263壓縮,視頻數據壓縮后經網絡傳輸送到客戶機端。客戶機對數據進行解壓、還原、顯示、在仿真模型界面顯示視頻使兩者融合,同時客戶機實現操作界面程序編寫。操作界面包括視頻融合模塊、視頻處理模塊和控制模塊。視頻融合模塊對視頻進行相應的坐標變換后使其同仿真機器人在一個界面上重合顯示。視頻處理模塊包括視頻放大、視頻縮小、視頻保存、打開視頻、視頻截圖、存位圖、存JPEG圖、打開位圖、打開JPEG圖等功能。仿真三維立體模型采用3DSMAX建立,在OPENGL編程環境下對其進行相應的繪制及控制。反饋視頻數據經壓縮、傳輸、解壓、相應的坐標變換及比例縮放后在客戶端顯示。服務器完成視頻采集、壓縮、存儲、傳輸??蛻魴C完成仿真模型控制、解壓、顯示視頻,以及對視頻進行相應的放大、縮小、截圖、保存。由于網絡傳輸存在延時,而且這種延時除了傳輸指定距離所需的固定延時及指令執行延時外,還有一些隨機擾動延時,如果這種延時不能夠及時發現,操作者根據視頻反饋會做出錯誤判斷。根據這種情況在客戶端繪制接收數據字節曲線,可形象直觀地觀察到網絡狀況對視頻傳輸的影響,如圖2所示。
控制模塊如圖3所示,包括每個關節的啟動、停止按鈕、速度輸出及速度變量輸出顯示。
2 仿真模型建立及視頻融合實現
2.1 通信建立與視頻傳輸
網絡通信分為同步方式和異步方式。同步方式是發送方不等接收方響應,便接著發下一個數據包的通信方式;異步方式是發送方發出數據后,等收到接收方發回的響應,才發下一個數據包的通信方式。本系統開發的是客戶端/服務器(C/S)結構的軟件,該軟件是異步非阻塞模式。此模式的優點是既可以同步執行,也可以重疊執行。圖像在網絡中傳輸時,不可避免地要牽涉到傳輸協議的問題。TCP/IP是一組協議,其中底層的協議TCP和UDP對于圖像的傳輸起著至關重要的作用。TCP是面向連接的,即在端與端的通信中,TCP協議建立一條端與端之間的虛電路。UDP是一種面向無連接的,它取消了重傳校驗機制,能夠達到很高的通信效率,很適合于可靠性要求不高的數據傳輸。由于本機器人系統對視頻的丟幀情況要求不高,故采用客戶/服務器模式的UDP協議方式。視頻傳輸采用UDP傳輸,建立Socket類直接傳輸圖像數據,客戶端調用自寫show函數在OPENGL編程環境下繪制反饋視頻,實現視頻再現。系統中,使用MFC來開發通信程序及操作界面。這是因為MFC主要是基于窗口和文檔的應用軟件編程,它集成了大量的數據和方法,將許多煩瑣的任務,如應用程序初始化、文檔處理和磁盤I/O封裝起來,為使用者的編程帶來了巨大的方便。
2.2 仿真機器人模型繪制
采用3DSMAX建立MOTOMAN機器人三維仿真機器人模型后,采用Deep Explortation轉換軟件轉換成VC代碼,在VC的工程設置中加入OPENGL的鏈接庫,建立工程并調用轉化的仿真機器人代碼。在創建、裝入、相乘模型變換和投影變換矩陣時都用到堆棧操作,一般來說,矩陣堆棧常用于構造具有繼承性的模型,即由一些簡單目標構成的復雜模型。MOTOMAN機器人仿真模型中,復雜的機械手臂是由多個簡單的長方體依據繼承關系構成的,而這種繼承關系由矩陣堆棧順序決定。機械手臂、關節、底座均按照實際機器人的比例進行相應縮放。規定好了底座的坐標系后,其他關節、手臂則根據自身的立體尺寸就能計算出坐標位置進行繪制。本機器人模型由3層支撐底座、4個旋轉關節、1個橫梁、1個豎柱、手爪及其他一些零部件構成,仿真機器人模型如圖4(a)所示。它的繼承性表現在當末端執行器手爪運動時(如垂直上升),首先是關節3向上啟動,然后關節2向手爪方向轉動,接著是關節1微轉,整個機器人垂直平移,如此進行下去,整個機器人協調配合保持末端執行器(手爪)垂直上升。三維模型在OPENGL中的顯示流程是:世界坐標系中的三維物體經三維幾何變換后投影并進行三維裁剪及視口變換,最后在屏幕坐標系中顯示圖形。
2.3 視頻融合及控制實現
仿真機器人底座視點坐標系確定后,視頻機器人根據仿真機器人的大小進行縮放繪制,使底座同仿真機器人底座在一個坐標位置。視頻中機器人的其他部分同底座一樣進行相應的映射,因此,初始時刻視頻和仿真模型的關節、視角位置是基本重合的。視頻融合界面通過VC控件SLIDER調節視頻透明度,操作者根據實際情況選擇清晰度,也可以將反饋視頻設置成完全透明(此時只能看到模型而看不到視頻)。本仿真機器人在OpenGL三維編程中實現3DSMAX數據模型的程序控制。3DSMAX是一種簡便快捷的建模軟件,比同類軟件進一步完善了建模功能,更側重于復雜模型的建模,可以很容易地用C++和OpenGL結合實現圖形學算法,再把本算法作為插件嵌入3DSMAX環境中,而不用考慮物體模型的生成和處理的復雜代碼,利用3DSMAX的渲染計時器可以方便地檢驗所編算法的效率和效果[12]。在仿真機器人制作時應遵循一個原則:在能夠保證視覺效果的前提下,盡量采用比較簡單的模型,而且若能夠用參數化方法構建的對象盡量用參數化方法構建。同時,在模型創作過程中,對模型進行分割、獨立建模,以利于進行操作和考察。仿真機器人視頻融合前后對比如圖4所示。控制程序實現仿真模型控制,控制過程是:按下相應操作按鈕,2個線程同時運行,1個線程將控制指令傳送到仿真模型使虛擬機器人運動,另1個線程將控制命令通過網絡傳輸送到服務器控制真實MOTOMAN機器人完成一致作業。在仿真模型和視頻融合界面中,模型走過的軌跡在程序中用紅線標定(為方便觀察者,紅色軌跡線采用10個像素的粗實線繪制),反饋視頻隨后跟蹤此軌跡運行,操作者觀察視頻中機器人的運行情況并判斷運行是否達標及決策下一步。
該視頻融合方法應用于遙操作機器人系統中,能夠使控制者準確判斷機器人作業精準度,同時將傳統的遙操作機器人視頻監控及仿真預測相結合,提出將視頻融合應用于遙操作機器人技術中。實驗結果表明,這種方法對于精準度要求高的機器人系統非常實用,將來可以將該視頻融合方法拓展在搶險救災、災情調查、工程運行、水利監測、城市調查中,除了能對現場完成監測錄像、圖像傳輸等功能外,還可以比較預測與實際的差異。
責任編輯:gt
-
機器人
+關注
關注
211文章
28379瀏覽量
206914 -
仿真
+關注
關注
50文章
4070瀏覽量
133552
發布評論請先 登錄
相關推薦
評論