侯保民 馮健翔 杜 芳 王俊鋒 郭小強(qiáng) 侯海英
摘 要:針對(duì)移動(dòng)機(jī)器人的遠(yuǎn)程操作問題,基于C++ Builder軟件環(huán)境,設(shè)計(jì)和實(shí)現(xiàn)了一種移動(dòng)機(jī)器人的遙操作接口系統(tǒng),可利用方向盤、鍵盤和鼠標(biāo)來操作機(jī)器人的移動(dòng)?;诖私涌谙到y(tǒng)建立了遙操作系統(tǒng)原型,并且進(jìn)行了室內(nèi)試驗(yàn)。室內(nèi)試驗(yàn)表明,此遙操作接口系統(tǒng)具有簡便、界面友好等特點(diǎn)。
關(guān)鍵詞:遙操作;人機(jī)接口;移動(dòng)機(jī)器人;軟件環(huán)境
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2009)10-034-02
Design and Implement of Teleoperation Interface System for Mobile Robot
HOU Baomin,FENG Jianxiang,DU Fang,WANG Junfeng,GUO Xiaoqiang,HOU Haiying
(Academy of Equipment Command & Technology,Beijing,101416,China)
Abstract:To resolve the teleoperation problem for a mobile robot,a kind of human-machine interface systembased on the C++ Builder software environment is designed.It can operate movement of the robot in three operation modes:steering wheels,keyboard and mouse.Based on it,a teleoperation system prototype is constructed and implemented.and it is tested in the laboratory.The experimentation in doors indicates that the teleoperation interface system is simple,convenient,friendly and so on.
Keywords:teleoperation;human-machine interface;mobile robot;software environment
0 引 言
遙操作就是遠(yuǎn)距離操作,是在遠(yuǎn)方人的行為動(dòng)作遠(yuǎn)距離作用下,使事物產(chǎn)生運(yùn)動(dòng)變化。遙操作是一種基礎(chǔ)技術(shù),應(yīng)用領(lǐng)域相當(dāng)廣泛,如機(jī)器人領(lǐng)域、航空航天領(lǐng)域、基礎(chǔ)科學(xué)試驗(yàn)、核工程、海底與遠(yuǎn)洋作業(yè)等。遙操作技術(shù)使移動(dòng)機(jī)器人到達(dá)艱險(xiǎn)的環(huán)境,通過機(jī)器人完成特定的任務(wù),從而可以使人遠(yuǎn)離艱險(xiǎn)的工作環(huán)境。因此,研究遙操作技術(shù)意義深遠(yuǎn)。
機(jī)器人在物理空間上,可以實(shí)現(xiàn)人類感知能力和行為能力的延伸;在信息層次上將遠(yuǎn)端的移動(dòng)機(jī)器人與操作人員無形連接在一個(gè)閉環(huán)回路里,實(shí)時(shí)地控制遠(yuǎn)端移動(dòng)機(jī)器人的運(yùn)動(dòng),以最大限度地利用遠(yuǎn)近端設(shè)備、資源和遙操作者的智力、經(jīng)驗(yàn),從而實(shí)現(xiàn)資源的最佳配置,完成特定的任務(wù)。人機(jī)接口系統(tǒng)就是通過什么樣的方式來發(fā)送控制指令和進(jìn)行狀態(tài)數(shù)據(jù)的反饋,是移動(dòng)機(jī)器人中一項(xiàng)重要的技術(shù)。
基于遙操作平臺(tái),設(shè)計(jì)了一種針對(duì)“喀嗎哆”機(jī)器人的人機(jī)接口系統(tǒng)。采用該人機(jī)接口系統(tǒng)進(jìn)行了機(jī)器人室內(nèi)行走實(shí)驗(yàn)。實(shí)驗(yàn)表明,該人機(jī)接口系統(tǒng)方便靈活、可靠、人機(jī)接口系統(tǒng)顯示豐富生動(dòng),提供多種操作模式,可實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和實(shí)時(shí)顯示。
1 機(jī)器人人機(jī)接口系統(tǒng)
一種柔性結(jié)構(gòu)的四輪式移動(dòng)機(jī)器人,其信息傳送示意圖如圖1所示。
基于遙操作平臺(tái)和通信系統(tǒng),遠(yuǎn)方操作員通過人機(jī)接口將指令序列發(fā)送到機(jī)器人,機(jī)器人接收并編譯指令,并且把編譯之后的指令發(fā)送到相應(yīng)的執(zhí)行機(jī)構(gòu),再由執(zhí)行裝置來控制機(jī)器人的移動(dòng)。同時(shí)機(jī)器人通過通信系統(tǒng)將其各種狀態(tài)和相關(guān)信息傳到遙操作平臺(tái)中,遠(yuǎn)方操作員可以通過人機(jī)接口看到與機(jī)器人相關(guān)的信息。該設(shè)計(jì)實(shí)現(xiàn)的是與遙操作平臺(tái)相嵌的人機(jī)接口系統(tǒng)部分,即圖1中橢圓表示的部分。
2 設(shè)計(jì)與實(shí)現(xiàn)
該系統(tǒng)用到相關(guān)硬件設(shè)備如下:計(jì)算機(jī)(P4 1.8 G、512 MB內(nèi)存、USB端口、Windows XP操作系統(tǒng)、DirectX 9.0版本)1臺(tái)、標(biāo)準(zhǔn)鍵盤1個(gè)、鼠標(biāo)1個(gè)、SG-USB006E型賽諾方向盤一個(gè)。軟件有Borland C++ Builder編譯環(huán)境。
人機(jī)接口系統(tǒng)操作過程見圖2。首先,開始之后系統(tǒng)初始化,檢測是否連接了方向盤。若檢測到方向盤,下面可有方向盤、鍵盤和鼠標(biāo)模式可供選擇;若沒有檢測到方向盤,只可選擇鍵盤和鼠標(biāo)模式。接著,判斷機(jī)器人狀態(tài)是否正常。若異常,則顯示異常警報(bào),返回到開始;若正常,根據(jù)是否檢測到方向盤,則可在可選的操作模式中選擇一種或幾種操作模式。接著,可以通過已選模式操作機(jī)器人,同時(shí)接口系統(tǒng)將相應(yīng)速度和角度等數(shù)據(jù)寫入緩沖區(qū),根據(jù)緩沖區(qū)的數(shù)據(jù),機(jī)器人最終可以完成各種相應(yīng)的動(dòng)作。同時(shí)接口系統(tǒng)還可以實(shí)現(xiàn)機(jī)器人相應(yīng)信息的屏幕顯示和速度角度等信息的保存等。
該遙操作平臺(tái)提供的人機(jī)接口系統(tǒng)界面如圖3所示。若檢測到方向盤,并且在界面的控制菜單下選擇方向盤操作,則可以通過方向盤來操作機(jī)器人的移動(dòng)。如果在界面的控制菜單下選用鼠標(biāo)控制,可以點(diǎn)擊圖3“鍵盤操作面板”中的加速、前進(jìn)、減速、左轉(zhuǎn)等按鈕來操作機(jī)器人。如果在界面的控制菜單下選用選擇鍵盤控制,則可以通過鍵盤上的快捷鍵來操作機(jī)器人。圖4中4個(gè)圓盤形控件相應(yīng)地顯示4個(gè)主動(dòng)輪轉(zhuǎn)動(dòng)的角度,圓盤形控件左邊的柱狀控件相應(yīng)地顯示了4個(gè)主動(dòng)輪的速度,并將指令通過通信系統(tǒng)傳給機(jī)器人。左上角的區(qū)域還可以顯示機(jī)器人的仿真影像等。右上角的“操作設(shè)備輸入數(shù)據(jù)顯示”面板中可直接輸入機(jī)器人的速度和角度信息,可以使機(jī)器人快速準(zhǔn)確地進(jìn)入到預(yù)定的速度和角度上。
實(shí)現(xiàn)此人機(jī)接口系統(tǒng)的全部程序代碼由一個(gè)總結(jié)構(gòu)和4個(gè)類組成,下面簡要地介紹一下它們的代碼和功能。
2.1 總結(jié)構(gòu)中的主要函數(shù)
(1) __fastcall TMainForm::TMainForm(TComponent* Owner):
此函數(shù)主要完成機(jī)器人部分初始化和狀態(tài)選擇。
(2) void __fastcall TMainForm::Event(TObject *Sender):
此函數(shù)主要響應(yīng)方向盤、鍵盤和鼠標(biāo)操作的事件,從而可實(shí)現(xiàn)對(duì)機(jī)器人移動(dòng)的操作。
(3) void __fastcall TMainForm::KeyCtrl(TObject *Sender,char &Key;):
此函數(shù)主要完成對(duì)鍵盤操作的初步響應(yīng)。
(4) void __fastcall TMainForm::Timer(TObject *Sender):
此函數(shù)主要完成對(duì)機(jī)器人實(shí)時(shí)狀態(tài)和方向盤、鍵盤和鼠標(biāo)的操作的實(shí)時(shí)刷新,其刷新頻率可以在一定的范圍內(nèi)進(jìn)行選擇。
2.2 四個(gè)類及其功能
(1) class CComPort。
此類主要完成對(duì)數(shù)據(jù)存儲(chǔ)緩沖區(qū)的初始化、釋放和對(duì)緩沖區(qū)的讀和寫等。
(2) class CJoyStick。
此類主要完成對(duì)方向盤數(shù)據(jù)的讀取,USB端口設(shè)備連接狀態(tài),方向盤初始化,設(shè)置數(shù)據(jù)格式,清除數(shù)據(jù),釋放空間等操作。
(3) class CKamado。
此類主要完成在鍵盤或鼠標(biāo)操作模式下,機(jī)器人自主完成一系列基本動(dòng)作(前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止、加速、減速等)和幾個(gè)自定義動(dòng)作(轉(zhuǎn)直角、原地自旋等)。
(4) class CWheel。
此類主要實(shí)現(xiàn)自主模式下輪子的旋轉(zhuǎn)動(dòng)作,包括每個(gè)輪的旋轉(zhuǎn)的具體速度和度數(shù)。
3 室內(nèi)行走實(shí)試驗(yàn)
基于上述遙操作接口系統(tǒng),進(jìn)行了多次機(jī)器人室內(nèi)行走試驗(yàn)。人機(jī)接口系統(tǒng)能夠?qū)崿F(xiàn)以下功能:用3種操
作模式操作機(jī)器人的移動(dòng),對(duì)機(jī)器人的速度角度進(jìn)行預(yù)置,對(duì)機(jī)器人進(jìn)行狀態(tài)顯示和數(shù)據(jù)存儲(chǔ)。機(jī)器人可以根據(jù)遙操作接口發(fā)送的指令,安全穩(wěn)定、可靠地實(shí)現(xiàn)前進(jìn)、后退、速度角度預(yù)置、原地旋轉(zhuǎn)、爬坡等運(yùn)動(dòng)。
4 結(jié) 語
在此設(shè)計(jì)與實(shí)現(xiàn)了一種機(jī)器人的遙操作接口系統(tǒng),操作員可以通過此接口系統(tǒng)成功地操作機(jī)器人。實(shí)驗(yàn)結(jié)果證明,此遙操作接口系統(tǒng)具有以下優(yōu)點(diǎn):操作簡便,界面友好,安全性和可靠性強(qiáng)等。但是仍存在不足,如操作的實(shí)時(shí)性較差,還有待改進(jìn)。
參考文獻(xiàn)
[1]Feng Jianxiang.Kamaduo:A Lunar Robot and Its Operations[A].3rd International RCL/VNIITRANSMASH Workshop on Planetary Rovers,Space Robotics and Earth-based robots-2005.St.Petersburg,Russia,2005.
[2]馮健翔.廣義人工智能基礎(chǔ)研究[M].北京:中國宇航出版社,1999.
[3]杜芳,馮健翔,陳俊.一種移動(dòng)機(jī)器人遙操作平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].科學(xué)技術(shù)與工程,2007,7(22):5 098-5 111.
[4]彭一準(zhǔn),原魁,王輝.具有友好界面遙操作移動(dòng)機(jī)器人的合作控制[J].計(jì)算機(jī)工程與應(yīng)用,2006(8):216-218,223.
[5]高龍琴,許志峰,黃惟一,等.交互式遙操作機(jī)器人實(shí)驗(yàn)平臺(tái)設(shè)計(jì)及其應(yīng)用[J].東南大學(xué)學(xué)報(bào):自然科學(xué)版,2004,34(6):64-68.
[6]王志峰,王占林,付永領(lǐng),等.基于虛擬現(xiàn)實(shí)Stewart平臺(tái)遙操作系統(tǒng)[J].北京航空航天大學(xué)學(xué)報(bào),2007,33(4):60-64.
[7]岳宏.基于虛擬現(xiàn)實(shí)觸覺感知接口技術(shù)的研究與進(jìn)展[J].機(jī)器人,2003,25(5):475-480.
[8]王曉亨,陸宇平.機(jī)器人無線遠(yuǎn)程控制系統(tǒng)的人機(jī)接口[J].信息技術(shù),2007(1):1-3.
[9]寧祎,韓莉莉.人與機(jī)器人實(shí)現(xiàn)動(dòng)態(tài)耦合的重要接口[J].中國機(jī)械工程,2000,11(3):50-52,55.
[10]任昊星,翁海華,楊楊,等.基于Web的機(jī)器人遙操作的研究與實(shí)現(xiàn).計(jì)算機(jī)工程,1999,25(5):64-65.