基于Leap M otion遠(yuǎn)程控制仿生人手運(yùn)動(dòng)研究
張起浩,王建亮,蔣少國(guó)(南開大學(xué)?濱海學(xué)院,天津?300270)
本文引用地址:http://cafeforensic.com/article/201908/404223.htm摘?要:針對(duì)仿生人手的遠(yuǎn)程控制的研究,設(shè)計(jì)了體感設(shè)備Leap Motion和基于STM32微控制器而設(shè)計(jì)的仿生人手相結(jié)合的人機(jī)交互系統(tǒng)。通過對(duì)三維變換矩陣的求解,驗(yàn)證了Leap Motion對(duì)空間中物體運(yùn)動(dòng)數(shù)據(jù)的捕捉原理。利用Leap Motion采集人體姿態(tài),經(jīng)過最新藍(lán)牙5.0協(xié)議,將標(biāo)識(shí)數(shù)據(jù)遠(yuǎn)程發(fā)送給STM32微控制器,再經(jīng)過三極管的放大控制舵機(jī)轉(zhuǎn)動(dòng)指定角度,進(jìn)而驅(qū)動(dòng)仿生人手指運(yùn)動(dòng),實(shí)現(xiàn)對(duì)物體的遠(yuǎn)程控制。最后設(shè)計(jì)實(shí)驗(yàn),驗(yàn)證不同距離對(duì)仿生人手指的靈敏度和穩(wěn)定性的影響。在距離5 m、10 m的閾值力、手指屈伸和響應(yīng)時(shí)間都一樣,但隨著距離增加,靈敏度和穩(wěn)定性越來越差,直至30 m時(shí)藍(lán)牙接收不到PC端傳來的數(shù)據(jù)流。
關(guān)鍵詞:Leap Motion;三維變換矩陣;藍(lán)牙5.0
0 引言
隨著人工智能(artificial intelligence)的爆炸性發(fā)展,圖像識(shí)別變得越來越智能化,并且出現(xiàn)了許多基于機(jī)器視覺原理的體感設(shè)備。本項(xiàng)目主要研究leapmotion采集人手姿態(tài)動(dòng)作,通過本地計(jì)算機(jī)對(duì)數(shù)據(jù)進(jìn)行處理并識(shí)別出多種手勢(shì)后,遠(yuǎn)程與STM32板載藍(lán)牙(Bluetooth 5.0)通訊 [1] ,STM32作為控制單元,根據(jù)不同指令控制仿生人手各關(guān)節(jié)的旋轉(zhuǎn)角度,從而實(shí)現(xiàn)對(duì)物體的抓取等控制 [2] 。
1 Leap Motion體感控制器
1.1 Leap M otion的工作原理
Leap Motion是一種采用立體視覺原理,內(nèi)部配備雙攝像頭如同人眼從不同角度捕捉畫面,重建出來手掌在真實(shí)三維空間的運(yùn)動(dòng)信息并對(duì)空間物體進(jìn)行坐標(biāo)定位見圖1。它能夠識(shí)別的范圍大概在傳感器上方的25 mm~600 mm,工作精度可達(dá)到0.01 mm,可實(shí)現(xiàn)高操作性。
1.2 Leap M otion數(shù)據(jù)捕捉
為了捕捉人手指關(guān)節(jié)在三維空間的位置和方向 [3] ,建立了右笛卡爾坐標(biāo)系的3種運(yùn)動(dòng)數(shù)據(jù):位移、旋轉(zhuǎn)、縮放,需要通過人手運(yùn)動(dòng)模型或者投影法將笛卡兒三維空間數(shù)據(jù)映射出來才能得到人手關(guān)節(jié)角度信息 [5] ,并分別把X、Y、Z作為旋轉(zhuǎn)軸(實(shí)際上僅在垂直坐標(biāo)軸的平面上進(jìn)行二維旋轉(zhuǎn)),P在XY平面、XZ平面、YZ平面的投影分別為點(diǎn)M、點(diǎn)P、點(diǎn)N,三維旋轉(zhuǎn)變換矩陣公式直接由二維旋轉(zhuǎn)公式變化得來 [6] ,如圖2。
1)繞Z軸旋轉(zhuǎn),相當(dāng)于將 OP,在XY平面的投影OM圍繞原點(diǎn)旋轉(zhuǎn), 如圖3所示 , OM旋轉(zhuǎn)θ角到OM′ 。
設(shè)旋轉(zhuǎn)前的坐標(biāo)為(x,y,z) 旋轉(zhuǎn)后的坐標(biāo)為( x',y',z′,)T, 則 的 坐 標(biāo) 為 ( x,y)T,N′的 坐 標(biāo) 為( x',y')T,由此可得:
對(duì)于x′和y′進(jìn)行三角展開:
且有 z'=z;可得繞軸旋轉(zhuǎn) θ 角的旋轉(zhuǎn)矩陣為:
2)繞軸旋轉(zhuǎn),相當(dāng)于將 OP在平面的投影繞原點(diǎn)旋轉(zhuǎn),如圖4,旋轉(zhuǎn) θ 角到ON′。
設(shè)旋轉(zhuǎn)前的坐標(biāo)為 (x,y,z) ,旋轉(zhuǎn)后的坐標(biāo)為( x',y',z′,)T, 則 的 坐 標(biāo) 為 (z,y)T,N′的 坐 標(biāo) 為( x',y′)T,由此可得:
對(duì)于z′和y′進(jìn)行三角展開:
且有 x'=x;可得繞軸旋轉(zhuǎn) θ 角的旋轉(zhuǎn)矩陣為:
3)繞軸旋轉(zhuǎn),相當(dāng)于將 OP????在平面的投影繞原點(diǎn)旋轉(zhuǎn),如圖5所示,旋轉(zhuǎn) θ 角到OO′。
設(shè)旋轉(zhuǎn)前的坐標(biāo)為 ( x,y,z) ,旋轉(zhuǎn)后的坐標(biāo)為( x',y',z′)T, 則 的 坐 標(biāo) 為 ( x,z)T,Q′的 坐 標(biāo) 為( x',z′)T,由此可得:
對(duì)于x′和z′進(jìn)行三角展開:
且有y'=y;可得繞Y軸旋轉(zhuǎn) θ 的旋轉(zhuǎn)矩陣為:
4)繞X、Y、Z軸旋轉(zhuǎn)的旋轉(zhuǎn)矩陣分別為:
2 硬件電路設(shè)計(jì)
2.1 系統(tǒng)框圖
該系統(tǒng)利用Leap Motion高識(shí)別度與以Cortex-M3為內(nèi)核的STM32等其他器件作為整體系統(tǒng),見圖6。該系統(tǒng)由Leap Motion、PC、STM32F103C8T6、信號(hào)放大電路等組成。工作流程是Leap Motion傳感器將采集到人體手勢(shì)數(shù)據(jù)發(fā)送給PC端,PC端接收數(shù)據(jù)流,并通過藍(lán)牙5.0的協(xié)議透?jìng)鹘o主STM32標(biāo)識(shí)數(shù)據(jù)格式,STM32數(shù)據(jù)發(fā)送相應(yīng)的控制指令,進(jìn)而控制舵機(jī)的轉(zhuǎn)動(dòng)角度。
2.2 ST M 32F103C 8T 6電路設(shè)計(jì)
STM32F103一款帶有Cortex-M3內(nèi)核的中低端32位Arm微控制器。最高CPU速度可達(dá)到72 MHz,1.25DMIPS/MHz,單周期乘法和硬件除法,本次實(shí)驗(yàn)選擇STM32F103C8T6芯片作為主控器,加入復(fù)位電路,增加電路運(yùn)行的穩(wěn)定性。
2.2.1 電源電路
該系統(tǒng)采用LMZ12003作為總電源管理芯片(如圖7),12 V輸入,5 V輸出的模式,5 V輸出主要為舵機(jī)供電。它是一種穩(wěn)固、安全、可靠的設(shè)計(jì),具有輸入欠壓鎖定、輸出電壓保護(hù)、短路保護(hù)、輸出電流限制和使能偏置電壓輸出的功能。
2.2.2 信號(hào)放大電路
STM32微控制器的I/O口是弱電信號(hào),不能直接驅(qū)動(dòng)舵機(jī)的運(yùn)動(dòng),因此有必要設(shè)計(jì)一個(gè)信號(hào)放大電路進(jìn)行放大,故采用三極管2N3904。如圖8所示。
2.3.3 藍(lán)牙H C -42模塊
該系統(tǒng)使用HC-42無線通訊模塊進(jìn)行仿生手的遠(yuǎn)程控制,藍(lán)牙5.0的理論最大傳輸速度為24 Mbit/s(是之前藍(lán)牙4.2版本的2倍)。傳輸達(dá)到無損耗水平,理論有效工作距離可達(dá)300 m,是藍(lán)牙4.2版本的4倍。模塊原理圖如圖9所示。
2.3.4 舵機(jī)
顧名思義,舵機(jī)是控制舵面的電動(dòng)機(jī),驅(qū)動(dòng)位置伺服的驅(qū)動(dòng)器。它可以接收特定的控制信號(hào),輸出恒定的角度,適用于角度不斷變化且需要保持的控制系統(tǒng)。本系統(tǒng)選用MG995舵機(jī),它由舵盤、減速齒輪組、位置反饋電位計(jì)5 kΩ、直流電機(jī)、控制電路板等組成。
MG995舵機(jī)控制圖如圖10所示。有3條線,分別是:電源線V CC 、地線GND、控制線。舵機(jī)的控制關(guān)系,如圖11所示,如果PWM的幅度為5 V,則其輸出軸將保持相應(yīng)的角度。無論外部扭矩如何變化,只有在提供下一個(gè)寬度脈沖信號(hào)時(shí),輸出角度才會(huì)更改為新的相應(yīng)值。
3 遠(yuǎn)程控制距離實(shí)驗(yàn)
Leap Motion API在獲取到人體手勢(shì)數(shù)據(jù)后遠(yuǎn)程控制仿生人手指的運(yùn)動(dòng)。為了更好地測(cè)試藍(lán)牙5.0的無線傳輸穩(wěn)定性,故在空曠處設(shè)置10組不同的距離,驗(yàn)證不同距離對(duì)仿生人手指的靈敏度和穩(wěn)定性的影響。如表1所示,在距離5 m、10 m的閾值力、手指屈伸和響應(yīng)時(shí)間都一樣,但隨著距離增加,3個(gè)測(cè)量的量越來越小,直至30 m時(shí),藍(lán)牙接收不到PC端傳來的數(shù)據(jù)流。
4 結(jié)論
本文通過對(duì)國(guó)內(nèi)外手勢(shì)交互技術(shù)的研究以及LeapMotion技術(shù)的基礎(chǔ)上,研究了Leap Motion在智能仿生手中的應(yīng)用,該電路配有藍(lán)牙模塊,可遠(yuǎn)程控制仿生人手的移動(dòng)。現(xiàn)在仿生人手的控制模式相對(duì)單調(diào),大多采用傳統(tǒng)控制方式,但是傳統(tǒng)的控制方式通常依賴鍵盤等其他的輸入工具,所以操作過程復(fù)雜,如果可以連接到人機(jī)交互的Leap Motion傳感器界面里,使控制仿生人手更方便,這是一種新型的機(jī)器人控制模式,讓人們直接用自己的雙手指揮機(jī)器人做出想要的動(dòng)作并協(xié)助人們完成任務(wù),但系統(tǒng)的遠(yuǎn)程控制距離還待提高,選擇藍(lán)牙5.0作為遠(yuǎn)程通訊模塊距離達(dá)到30 m就無法接收到數(shù)據(jù)流,且響應(yīng)速度不夠理想。
參考文獻(xiàn)
[1] 王紅全,淮永建.基于Leap Motion手勢(shì)識(shí)別方法在樹木交互的應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2018,35(10):153-158.
[2] 李松林,徐大杰,張文.基于Leap Motion的六自由度機(jī)械臂控制系統(tǒng)[J].電子世界,2017(15):158.
[3] 王豫.基于Kinect的手臂關(guān)節(jié)三維運(yùn)動(dòng)捕獲[D].杭州:浙江大學(xué),2015.
[4] 況鷹.基于Kinect運(yùn)動(dòng)捕獲的三維虛擬試衣[D].廣州:華南理工大學(xué),2012.
[5] 劉源.人手抓取運(yùn)動(dòng)解析及姿勢(shì)協(xié)同仿人手研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2018.
[6] 劉浩.從三階魔方談空間圖形旋轉(zhuǎn)變換矩陣[J].課程教育研究,2018(27):145-146.
作者簡(jiǎn)介:
指導(dǎo)教師:
王建亮(1982—),男,高級(jí)工程師,碩士,主要研究方向:智能儀表。
張起浩(1995—),男,本科,主要研究方向:智能硬件設(shè)計(jì)。
蔣少國(guó)(1998—),男,本科,主要研究方向:智能硬件設(shè)計(jì)。
指導(dǎo)教師評(píng)語(yǔ):論文選題有意義,在吸收學(xué)術(shù)界研究成果的基礎(chǔ)上,有自己的心得體會(huì),提出自己的看法,言之有理。論述觀點(diǎn)正確,材料比較充實(shí),敘述層次分明。
本文來源于科技期刊《電子產(chǎn)品世界》2019年第9期第39頁(yè),歡迎您寫論文時(shí)引用,并注明出處。
評(píng)論