《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于體感遙控的全向移動(dòng)機(jī)器人的系統(tǒng)設(shè)計(jì)
基于體感遙控的全向移動(dòng)機(jī)器人的系統(tǒng)設(shè)計(jì)
2015年電子技術(shù)應(yīng)用第6期
孫 強(qiáng),,王文濤
中南民族大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,湖北 武漢430074
摘要: 設(shè)計(jì)一款利用人體骨骼移動(dòng)信息生成控制指令控制基于麥克納姆輪的具有全向移動(dòng)抓取功能的機(jī)器人及其控制系統(tǒng)。首先通過(guò)kinect獲取人體深度圖像數(shù)據(jù),,然后利用骨骼追蹤技術(shù)提取人體各個(gè)關(guān)節(jié)點(diǎn),并建立空間坐標(biāo)系,,最后通過(guò)空間向量計(jì)算法計(jì)算出人體關(guān)節(jié)轉(zhuǎn)動(dòng)角度,,從而識(shí)別出控制動(dòng)作并映射成相關(guān)控制命令。之后利用WiFi無(wú)線傳輸,,將控制命令傳輸?shù)綑C(jī)器人使其執(zhí)行相應(yīng)動(dòng)作,。對(duì)系統(tǒng)動(dòng)作識(shí)別效率和模擬場(chǎng)景任務(wù)執(zhí)行進(jìn)行測(cè)試,并給出測(cè)試結(jié)果。
中圖分類號(hào): TP391
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)06-0157-04
Design of omnidirectional robot system based on motion sensing remote control
Sun Qiang,,Wang Wentao
College of Computer Science and Technology,,South-Central University for Nationalities,Wuhan 430074,,China
Abstract: This paper designed a robot and its control system,by using the human skeleton movement information to generate command control, which was based on the Mecanum wheels and had the omnidirectional movement and grasping functions. First of all, the upper computer was used to obtain the depth image data of human body through kinect. Then, the skeleton tracking technology was used to extract various joints of human body and establish the space coordinate system. Finally, the joint rotation angle of human body was calculated through the space vector algorithm, and in this way, the control movement could be identified and mapped into related control demand. Next, the WiFi transmission was used to transmit the control command to the robot to execute corresponding movement.The identification efficiency of system movement and the execution of tasks in simulated scenarios were tested, and the test results were given.
Key words : robot,;kinect;skeleton data,;Mecanum wheel,;WiFi communication;robot arm

   0 引言

    在現(xiàn)代社會(huì)中,,人們往往不得不在一些特殊的環(huán)境下(如極限溫度氣壓,、輻射、化學(xué)污染等)執(zhí)行作業(yè),。而長(zhǎng)期工作在這些環(huán)境,,會(huì)對(duì)作業(yè)人員的身體健康帶來(lái)難以預(yù)料的威脅,。隨著機(jī)器人技術(shù)的進(jìn)步,各國(guó)政府正在進(jìn)行多種研究,,爭(zhēng)取將各類機(jī)器人應(yīng)用到對(duì)應(yīng)的特殊環(huán)境中,,從而改變?cè)摥h(huán)境下的人類的作業(yè)方式[1]。其中具備多自由度機(jī)械臂的移動(dòng)機(jī)器人由于其移動(dòng)性和作業(yè)能力,,吸引了眾多研究者的目光[2],,kinect是微軟公司于2011年推出的用于獲取目標(biāo)物體三維坐標(biāo)的機(jī)器視覺(jué)設(shè)備[3]。應(yīng)用kinect體感識(shí)別實(shí)現(xiàn)人機(jī)交互[4]是一種新穎自然的人機(jī)交互技術(shù),,人們通過(guò)它用簡(jiǎn)單的肢體語(yǔ)言便能快速靈活地操控機(jī)器人[5-7],。輪式移動(dòng)機(jī)構(gòu)的類型很多, 對(duì)于一般的輪式移動(dòng)機(jī)構(gòu), 都不可能進(jìn)行任意的定位和定向, 而全方位移動(dòng)機(jī)構(gòu)[8]則可以利用車輪所具有的定位和定向功能, 實(shí)現(xiàn)平面上的自由運(yùn)動(dòng)。麥克納姆輪[9-10]正是其中技術(shù)成熟穩(wěn)定性好的一種輪式結(jié)構(gòu),。據(jù)此,,本文設(shè)計(jì)了一種基于kinect體感操控并具有全向移動(dòng)機(jī)構(gòu)的WiFi視頻監(jiān)控抓取機(jī)器人。經(jīng)實(shí)驗(yàn)證明,,該機(jī)器人具備良好的可操控性和靈活性,。

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

    系統(tǒng)結(jié)構(gòu)如圖1所示,整個(gè)系統(tǒng)分為機(jī)器人主體和上位機(jī)控制端兩個(gè)部分構(gòu)成,。機(jī)器人本身是由Acorn計(jì)算機(jī)有限公司的一款RISC微處理器(Acorn RISC Machine,,ARM)控制板、全向移動(dòng)底盤(pán),、基于openwrt系統(tǒng)[11]WiFi通信模塊,、五自由度機(jī)械臂、二自由度視頻云臺(tái)等部分構(gòu)成,。上位機(jī)軟件在基于Windows系統(tǒng)的計(jì)算機(jī)上運(yùn)行,,接收機(jī)器人傳輸回來(lái)的實(shí)時(shí)視頻數(shù)據(jù)呈現(xiàn)給操縱者,操縱者根據(jù)視頻圖像面對(duì)kinect作出動(dòng)作,,上位機(jī)處理kinect采集的操縱者人體骨骼數(shù)據(jù),,分析判斷人體指令并傳輸給機(jī)器人執(zhí)行指令。

jsj7-t1.gif

2 機(jī)器人硬件設(shè)計(jì)

2.1 全向移動(dòng)底盤(pán)的設(shè)計(jì)及其控制原理

    全向移動(dòng)底盤(pán)由4個(gè)鋁60 mm 45°萬(wàn)向輪子,、4個(gè)空芯12 V Namiki直流電機(jī),、L293D 4路直流電機(jī)驅(qū)動(dòng)模塊、鋁板,、12 V鋰電池等部件構(gòu)成,。圖2(a)所示為麥克納姆輪的原理結(jié)構(gòu), 其外形象一個(gè)斜齒輪, 輪齒是能夠轉(zhuǎn)動(dòng)的鼓形滾子, 滾子的軸線與輪的軸線成α角度。滾子有兩個(gè)自由度, 在繞自身轉(zhuǎn)動(dòng)的同時(shí)又能繞車軸轉(zhuǎn)動(dòng),。這使得輪體本身也具備了兩個(gè)自由度:繞輪軸的轉(zhuǎn)動(dòng)和沿滾子軸線垂線方向的平動(dòng),。圖2(b)所示為底盤(pán)結(jié)構(gòu),以移動(dòng)平臺(tái)中心O點(diǎn)為原點(diǎn)建立全局坐標(biāo)系oxy,oxy相對(duì)地面靜止,。在平面上,,全方位移動(dòng)平臺(tái)具有3個(gè)自由度,其中心點(diǎn)O速度[V1,,V2,,ω]。ω1,、ω2,、ω3,、ω4分別為4個(gè)輪的轉(zhuǎn)動(dòng)速度,;R為車輪半徑;W,、L為圖示的結(jié)構(gòu)尺寸,。車體速度與4個(gè)輪子的速度關(guān)系為:

    jsj7-gs1.gif

jsj7-t2.gif

    麥克納姆輪的輪子和滾子夾角為α=45°,vx,、vy,、ω為控制量。在控制過(guò)程中控制板接收控制量通過(guò)矩陣運(yùn)算計(jì)算出轉(zhuǎn)速,,由公式Cii/(mi·ωimax)(Ci是第i個(gè)電機(jī)的功率,,ωi是計(jì)算出的第i個(gè)電機(jī)的轉(zhuǎn)速,ωimax是i號(hào)電機(jī)在同一電壓下設(shè)定的最大輸出功率下的轉(zhuǎn)速,,mi是維護(hù)4個(gè)電機(jī)轉(zhuǎn)速在同一最大值的實(shí)測(cè)參數(shù))轉(zhuǎn)換為電機(jī)的輸出功率,,進(jìn)而通過(guò)調(diào)制脈沖寬度調(diào)制(Pulse Width Modulation,PWM)信號(hào)輸出到電機(jī)驅(qū)動(dòng)模塊產(chǎn)生對(duì)應(yīng)功率,,完成底盤(pán)的驅(qū)動(dòng),。本文設(shè)計(jì)將電機(jī)的調(diào)速范圍設(shè)定在0~100%。由視頻攝像頭傳輸回來(lái)的影像交由操控者視覺(jué)和感官進(jìn)行判斷形成閉環(huán)系統(tǒng),,進(jìn)行反饋調(diào)節(jié),,最終完成準(zhǔn)確的全向運(yùn)動(dòng)的控制。

    當(dāng)肢體語(yǔ)言與控制結(jié)合起來(lái)時(shí),,便需要用更加自然和易理解的方式讓控制變得更簡(jiǎn)單,。于是本文采用雙手協(xié)作的方式操控全向底盤(pán)的運(yùn)作。從數(shù)學(xué)模型上可以得出全向移動(dòng)底盤(pán)有任意軌跡運(yùn)動(dòng)能力,,但是由于運(yùn)動(dòng)軌跡的方向性多,,極易導(dǎo)致控制的不穩(wěn)定性,反而讓優(yōu)點(diǎn)變?yōu)槿秉c(diǎn),。由此精簡(jiǎn)了運(yùn)動(dòng)的方向性,,使其既滿足全向運(yùn)動(dòng)的豐富的能動(dòng)性的同時(shí)也能保證其穩(wěn)定性。本文設(shè)定了10種方向運(yùn)動(dòng),,分割了不同的自然手勢(shì)作為控制量,,并使用了左手方向右手動(dòng)能(即左手指示運(yùn)動(dòng)方向,,右手指示動(dòng)能)的原則,通過(guò)左右手的運(yùn)作使得整個(gè)全向底盤(pán)能夠靈活地進(jìn)行運(yùn)動(dòng),??刂屏坑晒絍n=an·v指示(an為左手動(dòng)作指示,v為右手速度控制,,n為x,、y或ω代表直行、橫行,、旋轉(zhuǎn)動(dòng)作,,an是方向指向,v是速度大小),。以前進(jìn)控制動(dòng)作為例,,左手抬起垂直胸前伸直成直線,右手前伸抬起肘腕段與肩肘段夾角0~90°為正向速度控制,,ax=1,,ay=0,aω=0,,v≥0,,即V具有正向前進(jìn)的速度。

2.2 機(jī)械臂,、視頻云臺(tái)設(shè)計(jì)及控制原理

    機(jī)械臂和視頻云臺(tái)運(yùn)動(dòng)機(jī)構(gòu)是由proMOTION CDS系列機(jī)器人數(shù)字舵機(jī)及一些高強(qiáng)度鋁合金材料構(gòu)建組成,,其可采用異步串行總線通信方式,通過(guò)通用異步收發(fā)傳輸器(Universal Asynchronous Receiver/Transmitter,,UART)統(tǒng)一控制,。每個(gè)舵機(jī)設(shè)定不同的節(jié)點(diǎn)地址,多個(gè)舵機(jī)可以統(tǒng)一運(yùn)動(dòng)也可以單個(gè)獨(dú)立控制,。機(jī)械臂具有空間運(yùn)動(dòng)和夾持上的5個(gè)自由度,,視頻云臺(tái)具有水平和豎直方向上的2個(gè)自由度。機(jī)械手臂的運(yùn)動(dòng)控制原理與云臺(tái)舵機(jī)的控制原理相當(dāng),??刂七^(guò)程中機(jī)械臂關(guān)節(jié)點(diǎn)運(yùn)動(dòng)分別映射著右手各關(guān)節(jié)和左手腕關(guān)節(jié)運(yùn)動(dòng)角度,由視頻攝像頭傳輸回來(lái)的景象交由操控者視覺(jué)和感官進(jìn)行判斷形成閉環(huán)系統(tǒng),,進(jìn)行反饋調(diào)節(jié)控制實(shí)現(xiàn)空間內(nèi)的定位運(yùn)動(dòng),。視頻云臺(tái)運(yùn)動(dòng)控制對(duì)應(yīng)著左右手肩關(guān)節(jié)和肘關(guān)節(jié)運(yùn)動(dòng),實(shí)現(xiàn)機(jī)器人前方左右0°~180°,、上下0°~150°范圍內(nèi)的視屏圖像采集,。上位機(jī)識(shí)別關(guān)節(jié)轉(zhuǎn)動(dòng)角度轉(zhuǎn)換成操作指令發(fā)送給機(jī)器人控制板,控制板通過(guò)串口通信使用數(shù)字信號(hào)控制舵機(jī)運(yùn)動(dòng)完成相應(yīng)動(dòng)作。運(yùn)行時(shí),,二者不同時(shí)進(jìn)行操作,,通過(guò)雙臂的指令進(jìn)行切換控制。

3 軟件設(shè)計(jì)

3.1 體感控制識(shí)別算法

    應(yīng)用骨骼追蹤技術(shù)kinect可以追蹤用戶全身20個(gè)骨骼點(diǎn),。利用用戶雙手共9個(gè)骨骼點(diǎn)的數(shù)據(jù),,并利用其他點(diǎn)坐標(biāo)作為輔助識(shí)別用戶動(dòng)作。

    本文以兩肩點(diǎn)連成的線段中心為坐標(biāo)原點(diǎn)O,、兩肩點(diǎn)直線為x軸,、人體脊柱關(guān)節(jié)點(diǎn)連成的直線為y軸建立空間坐標(biāo)系。識(shí)別人體控制動(dòng)作主要是以識(shí)別關(guān)節(jié)運(yùn)動(dòng)角度變化來(lái)實(shí)現(xiàn),。如圖3(a)所示,以左手臂為例,,取圖中a、b,、c,、d,、e分別對(duì)應(yīng)kinect識(shí)別的人體關(guān)節(jié)肩中點(diǎn),、肩關(guān)節(jié)點(diǎn)、肘關(guān)節(jié)點(diǎn),、腕關(guān)節(jié)點(diǎn),、手關(guān)節(jié)點(diǎn)。α1為線段bc(肩肘段)與坐標(biāo)系xoz平面的夾角,,α2為線段bc(肩肘段)與坐標(biāo)系x軸的夾角,,β為線段cd(肘腕段)與線段bc(肩肘段)的夾角,γ為線段cd段與線段de段的夾角,。已知兩個(gè)線段端點(diǎn)坐標(biāo)求夾角,,本文采用的計(jì)算方法為取向量進(jìn)行空間向量角進(jìn)行運(yùn)算。

    以計(jì)算角度α1和β為例,。

    如圖3(b)所示,,求角α1時(shí),取b點(diǎn)的坐標(biāo)為(x1,,y1,,z1),c點(diǎn)的坐標(biāo)為(x2,,y2,,z2),有:

jsj7-gs2-5.gifjsj7-gs2-5.gif

    由此類推可以推得需要利用的兩手各關(guān)節(jié)對(duì)應(yīng)的α,、β,、γ各角度的三角函數(shù)值,之后進(jìn)行反三角函數(shù)運(yùn)算可以獲得各關(guān)節(jié)轉(zhuǎn)動(dòng)角度,進(jìn)而將識(shí)別的角度轉(zhuǎn)換為控制命令或舵機(jī)運(yùn)動(dòng)角度并發(fā)送到機(jī)器人下位機(jī)完成控制,。

jsj7-t3.gif

3.2 下位機(jī)軟件

    機(jī)器人控制板采用基于STM32F407芯片的最小系統(tǒng)板,,通過(guò)串口接收通過(guò)WiFi模塊轉(zhuǎn)發(fā)過(guò)來(lái)的控制字并執(zhí)行相應(yīng)指令。能實(shí)現(xiàn)機(jī)器人全套動(dòng)作控制,、電源檢測(cè),、危險(xiǎn)路況檢測(cè)等功能。具體控制流程圖如圖4,。

jsj7-t4.gif

3.3 通信協(xié)議設(shè)計(jì)

    本文設(shè)計(jì)的通信控制協(xié)議如表1所示,。狀態(tài)號(hào)代表機(jī)器人的兩種狀態(tài)即運(yùn)動(dòng)和機(jī)械臂操作兩種狀態(tài),以0x00和0x01來(lái)表示,,其數(shù)據(jù)區(qū)發(fā)送的數(shù)據(jù)也根據(jù)兩種狀態(tài)來(lái)組織,。運(yùn)動(dòng)狀態(tài)時(shí)數(shù)據(jù)區(qū)由12 B構(gòu)成,前10 B表示控制方向命令,,后2個(gè)字節(jié)代表數(shù)據(jù)參數(shù),。舵機(jī)控制狀態(tài)時(shí)則分為5個(gè)手臂舵機(jī)和2個(gè)云臺(tái)舵機(jī)的舵機(jī)ID以及轉(zhuǎn)動(dòng)參數(shù)一共28 B。

jsj7-b1.gif

4 實(shí)驗(yàn)分析

    本文體感交互系統(tǒng)控制的本質(zhì)核心在于人體特定關(guān)節(jié)點(diǎn)轉(zhuǎn)動(dòng)角度的識(shí)別,,為了驗(yàn)證整個(gè)系統(tǒng)的有效性,,分別進(jìn)行了關(guān)節(jié)轉(zhuǎn)動(dòng)角度識(shí)別率測(cè)試和整體操控測(cè)試。具體實(shí)驗(yàn)過(guò)程如下,。

4.1 關(guān)節(jié)轉(zhuǎn)動(dòng)角度識(shí)別率測(cè)試

    本文系統(tǒng)應(yīng)用的關(guān)節(jié)點(diǎn)為左右肩關(guān)節(jié),、肘關(guān)節(jié)、腕關(guān)節(jié)一共6個(gè)關(guān)節(jié)點(diǎn),,在WIN8+VS2013+Kinect for Windows SDK環(huán)境下編寫(xiě)了測(cè)試軟件,。本文挑選體型身高均有差異的10個(gè)人分成2組針對(duì)關(guān)節(jié)轉(zhuǎn)動(dòng)的角度識(shí)別分別進(jìn)行測(cè)試,每一個(gè)關(guān)節(jié)的轉(zhuǎn)動(dòng)角度設(shè)為10°,、20°,、40°、60°,、80° 5種情況,,每種情況每人測(cè)試10次,即每個(gè)關(guān)節(jié)累積進(jìn)行500次實(shí)驗(yàn),,角度允許誤差±3°,。去除偶然反常結(jié)果,實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果如表2所示,。從表中可以有如下發(fā)現(xiàn):由左右肩關(guān)節(jié)到左右腕關(guān)節(jié)3個(gè)節(jié)點(diǎn)的識(shí)別率依次降低;轉(zhuǎn)動(dòng)角度越大,,識(shí)別的成功率越高。產(chǎn)生以上現(xiàn)象的原因是kinect識(shí)別人體關(guān)節(jié)角度跟人體姿勢(shì)變化幅度有關(guān),,而人體各關(guān)節(jié)點(diǎn)的人體姿勢(shì)幅度又取決于關(guān)節(jié)點(diǎn)為位置和關(guān)節(jié)點(diǎn)的轉(zhuǎn)動(dòng)角度,,故肩關(guān)節(jié)的識(shí)別準(zhǔn)確率最高,,同一個(gè)關(guān)節(jié)點(diǎn)轉(zhuǎn)動(dòng)角度越大,識(shí)別率越高,。盡管如此,,各關(guān)節(jié)在各轉(zhuǎn)動(dòng)角度的識(shí)別率都超過(guò)90%,具有較高的識(shí)別成功率,,符合控制要求,。

jsj7-b2.gif

4.2 機(jī)器人動(dòng)作執(zhí)行測(cè)試

    機(jī)器人運(yùn)動(dòng)過(guò)程中分為底盤(pán)運(yùn)動(dòng)和機(jī)械臂云臺(tái)控制兩種狀態(tài),兩種控制狀態(tài)在人體自然站立等待2 s為周期進(jìn)行選擇切換,,在上位機(jī)控制軟件上有設(shè)有指示標(biāo)志,。首先對(duì)機(jī)器人所有動(dòng)作指令進(jìn)行測(cè)試,然后在4 m×4 m的空間中用膠帶粘出道路狹隘且具備多個(gè)直角轉(zhuǎn)角的地形圖,,并放置障礙物,、夾取目標(biāo)物體來(lái)測(cè)試機(jī)器人特定情境的任務(wù)執(zhí)行情況,最終任務(wù)順利完成,,表明機(jī)器人具備一定環(huán)境下的任務(wù)執(zhí)行能力,。 

5 結(jié)束語(yǔ)

    本文設(shè)計(jì)了一種基于kinect體感遙控萬(wàn)向移動(dòng)抓取機(jī)器人系統(tǒng)。系統(tǒng)將kinect體感控制,、萬(wàn)向移動(dòng)平臺(tái),、WiFi通信、五自由度機(jī)械臂,、二自由度視頻云臺(tái)結(jié)合起來(lái),,實(shí)現(xiàn)了能采用體感交互方式進(jìn)行操控的機(jī)器人。實(shí)驗(yàn)證明,,該機(jī)器人具有良好的操控性能,能在有限的空間區(qū)域執(zhí)行任務(wù),。在該機(jī)器人的基礎(chǔ)上加上空間定位,、空氣、聲,、光,、電等傳感器可以極大提升其應(yīng)用能力,在軍事,、商業(yè),、民用等領(lǐng)域具有廣闊應(yīng)用的前景。 

參考文獻(xiàn)

[1] 張明路,,彭平,,張小俊.特殊環(huán)境下服役機(jī)器人發(fā)展現(xiàn)狀及其關(guān)鍵技術(shù)研究[J].河北工業(yè)大學(xué)學(xué)報(bào),2013,,42(1):70-75.

[2] 康靜.移動(dòng)機(jī)械手建模及控制技術(shù)研究[D].天津:天津理工大學(xué),,2010.

[3] JONGWOOK K,,DONGJUN S,DONGSEOK J.A study on the control method of 3-dimensional space application using kinect system[J].International Journal of Computer Science and Network Security,,2011,,11(9):55-59.

[4] 黃璐.面向交互的手勢(shì)識(shí)別研究[D].武漢:華中師范大學(xué),2011.

[5] 倪晨,,邱鵬,,王鋒,等.Kinect體感技術(shù)在人機(jī)交互中的應(yīng)用研究[J].信息技術(shù)與信息化,,2013,,0(1):87-90.

[6] ZHOU J I,DASGUPTA D.V-detector:An efficient negative selection algorithm with“probably adequate”detector coverage[J].Infor-mation Sciences,,2009,,17(9):1390-1406.

[7] AYDIN I,KARAKSE M,,AKIN E.Chaotic-based hybrid negative selection algorithm and its applications in fault and anomaly detection[J].Expert Systems with Applications,,2010(37):5285-5294.

[8] GILLES M,CYRIL N,,G?魪RARD P,,et al.Omni-directional robot with spherical orthogonal wheels:concepts and analyses[J].IEEE International Conference on Robotics and Automation,2006,,15(5):3374-3379.

[9] GFRERRER A.Geometry and kinematics of the Mecanum wheel[J].Computer Aided Geometric Design,,2008,25(9):784-791.

[10] 劉洲,,吳洪濤.Mecanum四輪全方位移動(dòng)機(jī)構(gòu)運(yùn)動(dòng)分析與仿真[J].現(xiàn)代設(shè)計(jì)與先進(jìn)制造技術(shù),,2011,40(5):43-46.

[11] 張曉華,,張玉華.基于路由器的開(kāi)源嵌入式操作系統(tǒng)學(xué)習(xí)平臺(tái)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,,2013(2):13-16.

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