基于遠程機器人系統的自動控制平臺的研究與設計
一個seg對應于從圖像中截取的一個關鍵部分,其中,width、height表示該部分的寬度、高度,topx、topy則是該部分左下角在該圖像中的坐標,以適應圖像的數據從左下角開始存儲的規則。segdata指向該部分具體的圖像數據。
圖2是各個結構在圖像上的具體關系。

上述數據結構的優點是其具有充分的多方面的靈活性。因為對應于不同的運動過程的腳本文件可能需要不同數目的標準圖像,而對應于機器人處于不同狀態的圖像,為了反映機器人的運動狀態,也可能需要截取不同數目的關鍵部分。由于上述數據結構的靈活性,對于標準圖像的數據data和圖像中的關鍵部分seg,都采用鏈表結構來組織,所以可以適應各種不同情況。
同時,對于scformat、data、seg這些數據結構,分別提供了各種函數以及過程,使得在進行圖像的截取、腳本文件的存儲、腳本文件的讀取和顯示時都相當方便。
3。3流程要點
具體的流程分為以下兩個方面:
其一是控制腳本的獲得,由人工進行手動控制實現。基于上面的這種數據結構,此過程可以準確完成。在此過程中,首先創建一個scformat結構。由于其中的數據是按照鏈表結構組織,所以可以隨時加入標準圖像及相應的命令。同時對于某一幅特定圖像,可以選取圖像中的若干關鍵部分。此過程結束后,可以調用scformat的writescfile,將得到的腳本文件存放到硬盤文件中。
其二是自動控制過程。在進行自動控制時,首先從硬盤上讀入文件,調用readscfile將文件中的數據加入到一個scformat結構中。然后按照這個scformat腳本文件中的數據進行自動控制。由于系統中采用壓縮技術,所以在控制站點取得壓縮包之后,進行解壓,得到實時圖像,然后將實時圖像與運行腳本中的圖像逐個進行比較。如果比較相符,則停止比較,同時將相應的命令傳送給遠端機器人;如果獲得相符的結果,則說明機器人當前不處于任何特定的狀態,所以繼續循環檢測和比較。
4平臺運行環境
本系統在實驗室中進行了充分的測試和修改,硬件和軟件的環境如下。
硬件環境:
IntelPentium4處理器
nVidiaTNT2M64圖像顯示卡
IntelProSharePersonalConferencing攝像頭,LeadtekWinFastTV2000視頻采集卡
10M/100M自適應網卡,100M以太網
軟件環境:
MicrosoftWindows2000AdvancedServer
BorlandDelphi6。0(WithUpdatepack2)
MicrosoftVisualC++6。0(ServicePack5)
5實際測試
本系統在實驗室中進行了充分的測試。在通常的情況下,對于反映某一運動狀態的圖像,系統默認可以抽取0~5個關鍵部分來反映該狀態的特征。而對于一個運行腳本而言,如果是有序化的簡單腳本(也就是說腳本中的圖像按照要進行的操作順序排列,系統只需將得到的實時圖像與目前應該處于的那一幅圖像進行比較即可),腳本中可以包含任意多幅(在存儲大小滿足的條件下)反映關鍵狀態的圖像;如果是無序的腳本,也就是說系統需將所獲取的圖像與腳本中的所有圖像進行比較以得到當前需要執行的指令。在測試中,腳本包含十幅圖像時,仍能很快得出比較的結果。從測試來看,本系統的關鍵設計思想均是可用的。
評論