鄭維馨,曹鳳才
(中北大學 電氣與控制工程學院,太原 030051)
小型仿人機器人體積小、能耗低、靈活性高,已經(jīng)在教育、娛樂和科研方面開始應用和推廣[1]。仿人型機器人具有人類的構造結(jié)構和步行運動功能,在人類的生活和工作環(huán)境中具有更大的適應性和靈活性,因此成為最理想的遙操作機器人之一[2]。仿人機器人在當今社會應用領域的逐步擴大,如何對仿人機器人進行控制成為該領域的一個重要課題[3]。
機器人是人類科技文明發(fā)展到一定階段的杰出成果,隨著機器人研究的深入和機器人領域的拓展,機器人運行的環(huán)境也越來越復雜和危險,由于機器人技術水平的限制,僅靠機器人本身不能獨立完成這些復雜任務,需要人類對遠端的機器人進行控制,因此出現(xiàn)了機器人遙操作系統(tǒng)[4]。機器人遙操作系統(tǒng)是一個典型的人機共存的自動化系統(tǒng)[5]。
但已有的遙操作對象是以有線和無線局域網(wǎng)的方式接入,只能在相對固定的區(qū)域活動,因而控制范圍有限[6];且現(xiàn)有的遙操作控制器大多采用工控或PC機來設計,系統(tǒng)存在體積大、耗電量大、不易移動等缺點[7],大大限制了遙操作者的活動范圍[8]。以上缺點都限制了基于Internet的遙操作技術在仿人機器人領域的實際應用和推廣[9]。
本文利用3G網(wǎng)絡的高覆蓋率,來克服上述缺點[10]。并采用基于Android系統(tǒng)的手機、平板電腦等移動平臺作為遙操作平臺,設計一種功能強大、耗電低、遙控范圍廣泛的遙操作仿人機器人系統(tǒng)[11]。這種遙操作控制系統(tǒng)能夠充分利用3G網(wǎng)絡高覆蓋率的優(yōu)勢,提供隨時隨地的基于視頻的遙操作功能[12]。整個系統(tǒng)小巧靈活、使用方便、遙操作距離遠。
機器人遙操作系統(tǒng)由近端操作人員與最終遠端工作現(xiàn)場機器人構成。具體地,在近端操作人員根據(jù)作業(yè)任務通過遠程操作平臺的人機交互界面,借助遠端工作現(xiàn)場的環(huán)境反饋信息,進行綜合分析與判斷,經(jīng)人機交互接口的輸入設備,向機器人發(fā)布任務或控制指令,控制機器人完成作業(yè)任務。系統(tǒng)結(jié)構如圖1所示。
圖1 機器人遙操作系統(tǒng)結(jié)構示意Fig.1 Robot remote operating system structure diagram
參照人體行為模式、控制模式和復雜系統(tǒng)設計原則,本文提出了一個具有四級遞階結(jié)構的機器人遙操作系統(tǒng)體系結(jié)構,分層結(jié)構如圖2所示。
圖2 機器人遙操作系統(tǒng)的分層結(jié)構Fig.2 Hierarchical structure of robot remote operating system
組織管理級是整個系統(tǒng)的中心和主導,具有最高的智能水平,由操作人員來擔任。
協(xié)調(diào)控制級是機器人遙操作系統(tǒng)的人機交互接口,由遙操作平臺擔任。操作人員通過Android手機操作平臺與遙操作控制器,將自己的控制思想、意圖、策略等傳遞給運動控制層。協(xié)調(diào)控制層將操作人員的指令信息傳達給遠端的機器人運動控制層,并最終形成具體的作業(yè)任務,并對機器人現(xiàn)場的視覺信息進行采集并反饋給操作人員,提供給操作者臨場感。
運動控制級由機器人的運動控制器擔任,根據(jù)來自協(xié)調(diào)層的作業(yè)任務指示,進行運動規(guī)劃,形成動作序列,同時接收來自底層傳感器系統(tǒng)的信息反饋,并向協(xié)調(diào)層反饋。執(zhí)行級是系統(tǒng)的最低層,由分布在機器人各關節(jié)上的驅(qū)動控制器擔任,將來自規(guī)劃控制層的動作序列,轉(zhuǎn)換成各關節(jié)電機轉(zhuǎn)動的協(xié)調(diào)動作,并行驅(qū)動各電機的運動。它具有最高的控制精度,并由常規(guī)的控制理論來進行控制。四級遞階結(jié)構的機器人遙操作系統(tǒng),從最高層的人,到最低層的數(shù)字舵機的運動,其智能水平逐層遞減,而運動作業(yè)精度逐層增強,是人的智慧和機器人的作業(yè)能力完美結(jié)合。
仿人機器人是整個系統(tǒng)中非常重要的一部分,仿人機器人結(jié)構構成如圖3所示。機器人由遙操作控制器、運動控制器、攝像頭、3G模塊、陀螺儀、加速度計、力傳感器、數(shù)字伺服舵機、RS232總線以及485總線構成。
圖3 仿人機器人平臺Fig.3 Humanoid robot platform
小型仿人機器人身高約55 cm,體重約3.9 kg。具有23個自由度。機器人各關節(jié)的驅(qū)動部件選用Robotis公司的Dynamixed系列數(shù)字伺服舵機。為適應小型仿人機器人結(jié)構緊湊和快速行走的特點。我們選用RX-64和RX-28舵機,因其輸出轉(zhuǎn)矩較大,集控制模塊,驅(qū)動模塊,通信模塊和減速齒輪于一體。
攝像頭采用OV7620 CMOS攝像頭,它的分辨率可達640×480,傳輸速率可達每秒30幀,視頻格式是RGB24。將OV7620通過USB接口與遙操作控制器通訊。
小型仿人機器人遙操作控制器由基于ARM11的32位微處理器S3C6410處理器作為核心處理器,硬件原理如圖4所示。處理器主頻533 MHz,最高667 MHz。S3C6440內(nèi)含一個集成的多格式編解碼器支持MPEG4/H.263/H.264編碼、譯碼以及VC1的解碼。能夠滿足實時視頻數(shù)據(jù)的壓縮處理,另外具有豐富的外設接口能夠?qū)崿F(xiàn)視頻圖像的采集,模塊間通訊等功能。
圖4 操作控制器硬件原理Fig.4 Remote operation controller hardware schematic
遙操作控制器負責將機器人端的視覺信息通過3G網(wǎng)絡發(fā)送給遠端的遙操作平臺,同時接收遙操作平臺通過3G網(wǎng)絡發(fā)送給機器人的命令信息,并命令進行分析處理,形成小型仿人機器人可識別的具體作業(yè)任務。遙操作控制器與原控制系統(tǒng)構成主從式控制結(jié)構。網(wǎng)絡模塊與遙操作控制器實物如圖5所示。
圖5 網(wǎng)絡模塊與遙操作控制器Fig.5 Network module and remote operation controller
小型仿人機器人運動控制器由基于ARM9的32位微處理器S3C2440處理器作為核心處理器。三星S3C2440處理器的主頻為400 MHz,最高頻率達到533 MHz;其運算速度能夠滿足在線運動規(guī)劃及穩(wěn)定性控制的運算速度要求,另外S3C2440具有豐富的外設接口能夠?qū)崿F(xiàn)多傳感器數(shù)據(jù)采集處理、穩(wěn)定控制和模塊間通訊等功能。運動控制器實物圖和硬件原理框圖分別如圖6和圖7所示。
圖6 小型仿人機器人運動控制器Fig.6 Small humanoid robot motion controller
圖7 運動控制器硬件原理Fig.7 Motion controller hardware block diagram
運動控制器通過485總線與多路關節(jié)數(shù)字伺服舵機相連;運動控制周期為5 ms,通信波特率達到1 Mbps,能夠?qū)崿F(xiàn)多舵機精確位置控制,從而實現(xiàn)小型仿人機器人的快速步行規(guī)劃與控制。同時,運動控制器通過A/D和485總線對陀螺儀、加速度計以及力傳感器信息進行采集和處理,為小型仿人機器人的穩(wěn)定運動控制和調(diào)節(jié)提供依據(jù)。
仿人機器人運動控制程序主要由軌跡規(guī)劃模塊和反饋控制模塊組成。軌跡規(guī)劃模塊負責根據(jù)行為規(guī)劃層制定的運動參數(shù)以及仿人機器人運動模式,產(chǎn)生或選擇一組短期內(nèi)的運動軌跡序列。運動模式包括仿人機器人步行的固有參數(shù)如步長,步行周期等以及仿人機器人的運動學分析。反饋控制模塊負責根據(jù)傳感器的運動狀態(tài)數(shù)據(jù)對軌跡規(guī)劃模塊輸出的軌跡序列進行調(diào)整,生成最終的關節(jié)控制數(shù)據(jù)驅(qū)動執(zhí)行機構執(zhí)行。例如仿人機器人在行走或做復雜運動的過程中會因為速度過快或地面不平坦等因素而產(chǎn)生不穩(wěn)定擺動,我們需要用陀螺儀來檢測仿人機器人在運動過程中的身體轉(zhuǎn)動角速度,據(jù)此來補償機器人的關節(jié)角以提高穩(wěn)定性。小型仿人機器人運動控制器的軟件流程如圖8所示。
圖8 小型仿人機器人運動控制器軟件流程Fig.8 Small humanoid robot motion controller software flow chart
傳統(tǒng)的遙操作系統(tǒng)的控制中心一般要配置一個專用的PC機,除了體積較大攜帶不方便外還需有專線接入互聯(lián)網(wǎng),這大大降低了小型仿人機器人的遙操作體驗,使很多應用受到了限制。隨著手機硬件和手機操作系統(tǒng)近幾年的快速發(fā)展,同時為了充分發(fā)揮3G網(wǎng)可以隨時隨地通訊的優(yōu)勢,使用手機作為遙操作系統(tǒng)的獨立控制平臺是完全可行的。
手機作為基于視覺反饋的協(xié)調(diào)控制層中操作者端的操作平臺,負責接收機器人端發(fā)送的流媒體包,進行解碼顯示播放,操作者根據(jù)視覺信息通過按鍵發(fā)送機器人控制命令,主要包括H.264視頻解碼,流媒體處理,通訊幾個模塊,控制系統(tǒng)示意如圖9所示。
圖9 手機遙操作平臺示意Fig.9 Mobile phone remote operation platform
硬件方面,由于手機平臺需要做視頻解碼運算,因此手機的CPU運算能力是我們最關心的,目前智能手機的處理器大部分采用ARM架構,市場上的主流智能手機處理器的CPU主頻現(xiàn)已達到了很高的水準,2011年以后出產(chǎn)的大部分智能機其主頻都達到了1 GHz以上,因此絕大多數(shù)的智能機能夠滿足我們的要求。
軟件方面,采用Android平臺作為遙操作的開發(fā)平臺,因其具有操作簡單,比其他軟件更好的兼容性與開放的源碼等優(yōu)點。
界面設計問題涉及到用戶與計算機的交互技術問題和界面本身的直觀、方便易用等問題。在傳統(tǒng)遙操作中,一般只有受過培訓的專業(yè)操作人員才能獲得操作機器人的控制權,對界面的設計沒有特別的要求。將遙操作控制平臺構建在Android上后,面對的操作者大多是網(wǎng)絡普通用戶,要求控制界面更圖形化和易于操作。根據(jù)小型仿人機器人的運動及作業(yè)需求,設計了如表1所示的三組按鍵。
表1 控制界面的按鍵Tab.1 Control interface buttons
在Eclipse開發(fā)環(huán)境下的Android模擬器中對程序進行測試,在 WVGA800(800×400)分辨率的模擬屏幕下運行結(jié)果如圖10所示。
圖10 Android手機端控制界面設計Fig.10 Android mobile terminal control interface design
系統(tǒng)上電后加載完Linux內(nèi)核與模塊驅(qū)動后會自動啟動兩個守護進程:一個進程等待手機遙操作平臺的視頻連接的請求,在接收到連接請求的同時會獲得手機平臺的IP地址,并開始循環(huán)采集視頻數(shù)據(jù),進行H.264硬件壓縮,將壓縮后的碼流進行RTP打包后通過3G網(wǎng)絡發(fā)送給手機遙操作平臺,同時負責定期發(fā)送RTCP數(shù)據(jù)包;一個進程負責接受來自手機遙操作平臺的控制命令與編碼器參數(shù)配置命令,如果是控制命令將通過串口傳送給仿人機器人運動控制器,如果是編碼器參數(shù)配置命令,將重啟編碼器進行參數(shù)配置。
控制命令分為兩類:一類是仿人機器人運動控制命令,主要由機器人雙足步行控制,表演和攝像頭角度調(diào)整三部分組成;一類是視頻傳輸控制命令。遙操作控制器通過3G網(wǎng)接收到來自遙操作平臺的命令后,會對命令格式進行判斷,如果為機器人運動控制命令,則通過RS232總線發(fā)送給運動控制層。如果為視頻傳輸控制命令,則會根據(jù)命令參數(shù),重新設置視頻編碼參數(shù)和攝像頭幀率。
為了檢測遙操作控制性能,進行了遙操作命令控制實驗,Android手機端顯示如圖11所示。通過觸摸屏對應按鍵實現(xiàn)對仿人機器人雙足步行、表演和頭部攝像頭姿態(tài)的控制,各個功能運行正常。機器人對控制指令響應延時小于2 s,整個系統(tǒng)能夠有效、平穩(wěn)運行。圖12為仿人機器人運動控制實驗。通過對比可以看出仿人機器人可以完成向前直行、右移和左轉(zhuǎn)等動作。
圖11 Android手機端顯示Fig.11 Android phone display
圖12 仿人機器人的移動Fig.12 Humanoid robot movement
機器人是20世紀最偉大的發(fā)明之一,開發(fā)適應于人類生活環(huán)境的仿人型機器人是機器人技術發(fā)展的一個長遠方向。同時,為使機器人更好的為人類服務,我們對機器人遙操作系統(tǒng)提出了更高的要求?;谝苿油ㄓ嵕W(wǎng)絡的手機遙操作平臺在我國還處于起步階段,隨著移動通訊技術的發(fā)展和仿人機器人硬件設備的提升,以及手機,平板電腦等移動通訊設備性能的不斷提高,基于移動設備的遙操作系統(tǒng)將取得更大的突破,遙操作技術的不斷發(fā)展將為小型仿人機器人走進家庭及產(chǎn)業(yè)化起到積極的促進作用。本文設計的基于3G網(wǎng)絡的小型仿人機器人遙操作系統(tǒng),還存在一些不完善之處。考慮到實際應用的要求,整個系統(tǒng)存在以下幾個方面工作,還需要做進一步的研究與改進。進一步開展仿人形機器人操作策略和控制方式研究,使操作人員的操作更具人性化。目前小型仿人機器人端只是采集了視覺信息,可在后續(xù)研究中,考慮聽覺,觸覺或者力覺的數(shù)據(jù)采集及傳輸設計。在Android端連接機器人時增加用戶身份驗證功能,以提高遙操作系統(tǒng)的網(wǎng)絡安全性。
[1] 謝濤,徐建峰,張永學,等.仿人機器人的研究歷史、現(xiàn)狀及展望[J].機器人,2002,24(4):367-374.
[2] 竺長安.兩足機器人系統(tǒng)分析、設計及運動控制[D].長沙:中國國防科學技術大學,1989.
[3] 湯卿.仿人機器人設計及步行控制方法[D].杭州:浙江大學,2009.
[4] 徐旭明,葉榛,陶品,等.基于視覺臨場感的仿人機器人遙操作系統(tǒng)[J].高技術通訊,2000,10(3):57-61.
[5] 陳俊杰.空間機器人遙操作克服時延影響的研究進展[J].測控技術,2007,26(2):1-2.
[6] Lumina R.Using NASREM for real-timesensory interactive robot control[J].Robotiea,1994,12(2):127-135.
[7] Hirzinger G,Landzettel K,F(xiàn)agerer C.Teleroboties with large time delays the ROTEX expe-rience[C]//Process of IEEE/RSJ/GI International Conference on Intelligent Robots and Systems,Germany,1994,571-578.
[8] Bai J,Ester P,Jain Y,et al.Comparison of task performance of robotic camera homers endo assistand aesop[J].International Congress Series,2001:1100-1103.
[9] 胡金星.基于移動通信網(wǎng)的移動機器人遙操作系統(tǒng)[D].北京:北京郵電大學,2010.
[10] 金亮.基于物聯(lián)網(wǎng)的視頻傳輸技術的研究與仿真[D].北京:華北電力大學,2007.
[11] 楊佳鵬.基于視覺臨場感的仿人機器人遙操作系統(tǒng)實現(xiàn)[D].北京:北京理工大學,2007.
[12] 李瑩瑩,劉云輝,樊瑋虹,等.基于移動通信網(wǎng)絡的機器人遙操作[J].通信學報,2006,27(5):52-60. ■