《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于仿生機械臂的體態(tài)遙控與可視化系統(tǒng)設(shè)計
基于仿生機械臂的體態(tài)遙控與可視化系統(tǒng)設(shè)計
電子技術(shù)應(yīng)用2015年第12期
張雨薇,林雄民
武漢大學(xué) 電子信息學(xué)院,湖北 武漢430072
摘要: 基于以Intel Atom E645C處理器為核心的嵌入式系統(tǒng),采用多種虛擬現(xiàn)實和視覺傳感技術(shù),設(shè)計了災(zāi)難救援機器人系統(tǒng)。實現(xiàn)了遠程控制機械臂同步模擬人體手臂動作的功能,以期能替代危險環(huán)境下的人工作業(yè)。系統(tǒng)采用C/S模式,服務(wù)器平臺負責(zé)用戶手臂動作信息的采集,客戶端平臺負責(zé)現(xiàn)場視頻的采集傳輸以及仿生機械手臂的控制。該系統(tǒng)很好地實現(xiàn)了預(yù)期功能,實時性和魯棒性較好。
中圖分類號: TP241
文獻標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2015.12.004

中文引用格式: 張雨薇,林雄民. 基于仿生機械臂的體態(tài)遙控與可視化系統(tǒng)設(shè)計[J].電子技術(shù)應(yīng)用,2015,41(12):22-24.
英文引用格式: Zhang Yuwei,Lin Xiongmin. Design of motion sensing remote control and visualization system based on bionic robot arm[J].Application of Electronic Technique,2015,41(12):22-24.
Design of motion sensing remote control and visualization system based on bionic robot arm
Zhang Yuwei,Lin Xiongmin
School of Electronic Information,Wuhan University,Wuhan 430072,China
Abstract: The disaster rescue robot system based on the embedded system which uses Intel Atom E645C processor as the core is designed, it uses a variety of virtual reality and visual sensor technologies. In order to replace the manual work in hazardous environments, we realize the function of remote-controlling robot arm to synchronously simulate the human arm′s movements. The system uses C/S mode, and the server platform is responsible for the information collection of arm′s movements, while the client platform is in charge of the collection and transmission of live video, as well as the control of bionic robot arm. The System can achieve the expected function, and has a good performance on the feature of real timing and robustness.
Key words : bionic robot arm;remote body control;RTP wireless video communication;motion simulation

    

0 引言

    近年來,多發(fā)的自然災(zāi)害、各種突發(fā)事件以及由生化病毒、輻射性物質(zhì)等帶來的恐怖影響威脅著人類的安全。雖然人類對各種災(zāi)難的警覺和反應(yīng)能力有所提高, 但救援工作仍然面臨著環(huán)境的復(fù)雜性和危險性[1]。因此,救援人員在自身安全得不到保證的情況下很難進入現(xiàn)場開展救援工作,而救援機器人可以替代人類在危險的環(huán)境中完成偵察、作業(yè)等任務(wù)[2]。本文開發(fā)了一套可用于搜救的災(zāi)難救急機器人系統(tǒng),為現(xiàn)代社會突發(fā)事件的處置或惡劣環(huán)境的作業(yè)提供了一種新型可靠的解決方案,可以滿足輕量級任務(wù)的使用。

1 系統(tǒng)工作原理

1.1 系統(tǒng)概述

    以Intel Atom EPCM-505C開發(fā)平臺為核心,借助E645C處理器,F(xiàn)PGA以及Intel IPP、OpenMP、OpenNI、OpenCV等開發(fā)工具完成了該系統(tǒng)的搭建。本系統(tǒng)采用服務(wù)器—客戶端架構(gòu)模式??蛻舳似脚_裝于遙控小車上,負責(zé)采集、傳回現(xiàn)場視頻,并在客戶端的屏幕上顯示小車周遭場景。位于服務(wù)器端的用戶根據(jù)傳回的視頻控制小車躲避障礙物進入危險區(qū)域后,首先通過體態(tài)傳感器獲取人體手臂的運動姿態(tài)并實時傳輸給客戶端平臺,然后由平臺CPU通過PCIe接口將捕獲的數(shù)據(jù)傳至FPGA,進而控制仿生機械臂的運動。

1.2 系統(tǒng)框架

    系統(tǒng)結(jié)構(gòu)圖如圖1所示。其中,客戶端包括基于以Intel Atom E645C處理器為核心的嵌入式系統(tǒng)、裝載在遙控車上的機械臂以及電源系統(tǒng),并外擴了攝像頭。服務(wù)器端包括采集用戶信息的體態(tài)傳感器及視頻顯示終端。

qrs2-t1.gif

2 系統(tǒng)硬件設(shè)計

2.1 仿生機械臂的控制

    仿生機械手臂有5個自由度,分別由5個舵機構(gòu)成。一號、二號、三號舵機分別負責(zé)機械臂左右、前后和上下的擺動,四號舵機負責(zé)手腕的運動,五號舵機負責(zé)手掌抓取動作的實現(xiàn)。

    舵機控制線的輸入是一個脈沖寬度調(diào)制(Pulse Width Modulation,PWM)信號,脈沖信號的周期為20 ms[3]。我們利用調(diào)制占空比來控制舵機的位置。輸出的轉(zhuǎn)動角度和脈沖寬度的關(guān)系式為[4]:α=90(t-0.5)。式中,α為舵機的輸出轉(zhuǎn)角;t為脈沖寬度,其定義域為0.5≤t≤2.5。因此,可通過編程在FPGA的輸出端口得到需要的脈沖信號。

2.2 光耦隔離放大電路

    在該系統(tǒng)的電路設(shè)計中,在機械臂驅(qū)動前增加了高速光電耦合模塊,并且在電源信號輸入光耦前加入了電流負反饋放大電路,如圖2所示。由于光電耦合器的輸入輸出之間互相隔離,其具有良好的電絕緣能力和抗干擾能力[5]。PWM信號經(jīng)過光耦隔離后,再輸入機械臂的控制線,能夠排除系統(tǒng)的潛在干擾。

qrs2-t2.gif

2.3 FPGA控制機械臂的流程圖

    系統(tǒng)通過FPGA產(chǎn)生信號來控制機械臂運動,其流程如圖3所示。

qrs2-t3.gif

3 系統(tǒng)軟件設(shè)計

3.1 體態(tài)數(shù)據(jù)采集核心算法

3.1.1 骨骼坐標(biāo)的采集與濾波

    用戶骨骼位置主要是通過捕獲右手手腕、右手肘關(guān)節(jié)及右肩關(guān)節(jié)的三維坐標(biāo)來獲取的。

    程序初始化完成之后,OpenNI開始檢測當(dāng)前可視區(qū)域是否存在用戶。區(qū)域內(nèi)出現(xiàn)用戶后,用戶會被體態(tài)傳感器一直跟蹤。隨后,OpenNI開始檢測用戶是否做出“校驗”姿勢。所謂的“校驗”姿勢,即用戶雙手舉過頭,作投降狀。當(dāng)用戶做出“校驗”動作并且被OpenNI成功檢測出來后,生產(chǎn)鏈路開始工作, OpenNI開始捕獲用戶的骨骼信息。

3.1.2 手臂移動角度的采集與濾波

    通過上述算法,得到了所需要的骨骼坐標(biāo)。用戶手臂擺動時,其骨骼坐標(biāo)也會隨之變化,將這些變化的坐標(biāo)轉(zhuǎn)化成各關(guān)節(jié)的角度變化。

    用戶擺動手臂的動作,可以分解為左右、前后、上下3個方向的運動。手臂的左右擺動由右手肩關(guān)節(jié)與腕關(guān)節(jié)的三維坐標(biāo)獲取得到,如圖4中(a)所示。胳膊的前后變動主要反映到肘關(guān)節(jié)坐標(biāo)的變動,如圖4中(b)所示。小臂的前后擺動主要反映到腕關(guān)節(jié)相對肘關(guān)節(jié)的坐標(biāo)的變化[6],如圖4中(c)所示。

qrs2-t4.gif

3.1.3 手掌張合檢測算法

    由于體態(tài)傳感器無法直接獲取手指的坐標(biāo),通過下面的算法來捕獲手掌的張合:

    (1)通過OpenNI得到用戶的深度資料圖,然后用平滑算法將深度圖二值化為灰度圖,并根據(jù)最小的Z值(即指尖的位置)得到手掌區(qū)域部分。

    (2)將手掌部分的灰度圖轉(zhuǎn)化成2D矩陣的點集合。通過算法篩選出位于指尖和掌心的點,并以此判斷手掌的張合情況。如圖5(a)所示,手掌張開時可檢測到指尖點和掌心點。而當(dāng)手掌握合的時候,只能捕獲到掌心點,如圖5(b)所示。

qrs2-t5.gif

3.2 視頻的采集與傳輸算法

    本系統(tǒng)的視頻傳輸采用的是實時傳輸協(xié)議(Real-time Transport Protocol,RTP),利用該協(xié)議能有效解決TCP傳輸速度慢和UDP數(shù)據(jù)丟失的問題[7]。

    通過OpenCV獲取攝像頭的視頻流,為了給體態(tài)信息提取騰出更多CPU空間,我們沒有對視頻進行壓縮,而是通過直接截取視頻流里的一幀圖片來進行傳輸。由于系統(tǒng)對視頻清晰度要求不高,我們將行位置和行包含的像素點一起打包,采用隔行傳輸?shù)乃惴?,先傳奇?shù)像素行,再傳偶數(shù)像素行,循環(huán)交替。RTP的傳輸速率很高,隔行傳輸可以明顯提高效率且不影響視頻的實時顯示。

3.3 系統(tǒng)軟件流程

    系統(tǒng)軟件流程可以分為以下兩個部分:仿生機械手臂控制流程和視頻采集傳輸流程,如圖6示。

qrs2-t6.gif

4 測試結(jié)果

    按照系統(tǒng)工作流程,對系統(tǒng)進行測試。測試過程分為以下3個部分:

    (1)遠程視頻傳輸與接收測試

    程序開始,軟件界面下面的提示欄出現(xiàn)“Waiting For Connection”的消息,幾秒鐘后又出現(xiàn)“Connection Success”。接著,遠程服務(wù)器軟件界面的視頻顯示窗口出現(xiàn)遙控小車上的攝像頭拍攝到的畫面。如圖7所示,說明本次測試成功。

qrs2-t7.gif

    (2)體態(tài)傳感器用戶識別測試

    當(dāng)視頻傳輸開始的時候,軟件界面下方的信息提示欄出現(xiàn)了如下的信息:“Please Hand Up Both Your Hands And Wait For Detection”。隨后,測試者舉雙手過頭,信息欄馬上提示“Identification Success, The Program is Capturing data”。同時,軟件界面上開始顯示5路舵機角度變化的數(shù)據(jù),說明體態(tài)傳感器用戶識別測試成功。

    (3)用戶控制機械手臂的動作測試

    測試(2)成功后,我們分析了用戶控制機械臂運動的工作情況。采用體型各異的5個人對機械臂各關(guān)節(jié)的運動進行測試,轉(zhuǎn)動角度分別設(shè)為-80°、-50°、30°和90°。每人對每個關(guān)節(jié)的每個角度測試6組數(shù)據(jù),即每個舵機測試120次,如表1所示。分析下表可知,運動角度變化越大,識別的成功率越高。手掌張合檢測在小角度時成功率略低,而其他各關(guān)節(jié)的識別率都高于90%,具有較高的成功率,符合控制要求。

qrs2-b1.gif

5 結(jié)論

    本文引入體態(tài)控制技術(shù)及遠程視頻監(jiān)控技術(shù),設(shè)計了仿生機械臂遠程實時控制系統(tǒng)。該系統(tǒng)可以模擬完成大多數(shù)人體手臂的基本動作,并且無線視頻傳輸與接收的實時性良好。因此,人體手臂無需穿戴任何傳感器即可直接進行遠程控制。該系統(tǒng)為人機交互在抗災(zāi)搶險領(lǐng)域的運用提供了新思路。

    測試結(jié)果表明,本系統(tǒng)運行穩(wěn)定,實時性較好,且具有良好的操控性能,能夠很好地完成輕量級的任務(wù)。為現(xiàn)代社會突發(fā)事件的處置或惡劣環(huán)境下的作業(yè)提供了一種新型可靠的解決方案,在國防和民用中都有廣泛的用途,應(yīng)用前景良好。

參考文獻

[1] 盧小輝.RoboCup救援仿真系統(tǒng)中的移動智能體行為決策研究[D].廣州:廣東工業(yè)大學(xué),2012.

[2] 劉金國,王越超,李斌,等.災(zāi)難救援機器人研究現(xiàn)狀、關(guān)鍵性能及展望[J].機械工程學(xué)報,2006,42(12):1-12.

[3] 韓慶瑤,洪草根,朱曉光,等.基于AVR單片機的多舵機控制系統(tǒng)設(shè)計及仿真[J].計算機測量與控制,2011,19(2):332-334.

[4] 蔡睿妍.基于Arduino的舵機控制系統(tǒng)設(shè)計[J].電腦知識與技術(shù),2012,08(15).

[5] 程全.基于電話線的單片機遠程控制系統(tǒng)[D].鄭州:鄭州大學(xué), 2009.

[6] 王艷淑.基于人機工程學(xué)評價與仿真的人體模型建模[D].哈爾濱:哈爾濱工程大學(xué),2013.

[7] 劉濤.基于RTP的視頻流可靠傳輸[D].鄭州:鄭州大學(xué),2004.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。