李知菲 卓旭亞 鮑盛林



摘要:介紹人機交互課程的創(chuàng)新實驗項目——體感控制的機械臂設計開發(fā)的關(guān)鍵技術(shù)和方法,闡述創(chuàng)新實驗的具體設計過程,為體感控制技術(shù)更快從理論走向應用提供參考。
關(guān)鍵詞:人機交互;體感控制;機械臂;創(chuàng)新實驗
1.人機交互課程開設刨新實驗項目的背景和意義
人機交互(human computer interaction,HCI)是計算機及相關(guān)專業(yè)的核心課程。經(jīng)過多年的發(fā)展,當前的人機交互方式已經(jīng)從過去依賴鍵盤鼠標的時代,發(fā)展到以人為中心的自然用戶界面(natural user interface,NUI)的新階段。浙江師范大學數(shù)理與信息工程學院面向計算機、軟件工程等相關(guān)專業(yè)的研究生和計算機技術(shù)非師范專業(yè)的高年級本科生,開設人機交互課程。為了幫助學生更好地學習這門課程,了解主流的交互技術(shù)和產(chǎn)品,我院的課程除了重視人機交互理論教學外,近年來,陸續(xù)增設了人機交互課程設計、Arduino控制系統(tǒng)開發(fā)實訓等實驗實踐課程,形成了完善的課程體系。課程借助多媒體課件提高課堂效率,力爭以較少的課時講明白人機交互的基本原理、基本方法,加大實踐環(huán)節(jié)比重。通過精心設計的實驗和實踐項目,讓學生在完成整個課程的學習過程中,自主學習、主動學習,掌握課程知識點,提高教學績效,構(gòu)建項目化教學情境,轉(zhuǎn)變教師和學生的角色觀念,使學生在做中學、用中學,提高了學生獨立分析問題和解決問題的能力和創(chuàng)新素質(zhì)。
在課程的實驗教學中,除了必要的理論驗證性實驗外,為了調(diào)動學生的學習興趣,我們特意開設了32學時的創(chuàng)新實驗,在每學年的短學期,即實踐教學周開課。通過精心挑選和設計,選用了基于Kinect體感鏡頭和Arduino控制器的體感控制機械臂項目。這是因為該項目代表著智能機器人領(lǐng)域研究和應用的一個典型——機械臂。作為目前應用最為廣泛的機器人,機械臂不單基于計算機科學專業(yè),更與機械、控制、電子工程和生物學等學科相關(guān),是一種設計復雜但卻非常實用的機器人。以機械臂的體感控制為著眼點進行人機交互的實踐,不但能很好地鞏固人機交互的理論知識,更能使學生快速掌握社會需求的實踐技能。
驅(qū)動靈活、作業(yè)范圍廣和機械特性優(yōu)良的多關(guān)節(jié)機械臂是應用型機械臂中最為常見的,如美國Unimation公司推出的PUMA系列機械臂和日本山梨大學牧野洋發(fā)明的SCARA機械臂。多關(guān)節(jié)機械臂可以完成種類繁多的工業(yè)作業(yè)任務,如碼垛、搬運、裝配、焊接和打孔等,是提高工業(yè)生產(chǎn)自動化水平和生產(chǎn)效率的最佳選擇。同時,機械臂更能做出人體關(guān)節(jié)不能完成的動作,或者在一些不適合人類開展工作的高溫、高壓、輻射或缺氧等環(huán)境中代替人類進行作業(yè),近年來深海或太空的探索任務就是典型的應用。例如,在2012年,我國自主研發(fā)的蛟龍?zhí)柹顫撎綔y器在7000米深的海底進行科學探測,其中最主要的科研任務,如采樣等均由其自身攜帶的多關(guān)節(jié)機械臂完成,圖1為蛟龍?zhí)栍脵C械臂將五星紅旗插在海底。此外,在2012年8月6日,美國宇航局(NASA)的好奇號(Curiosity)火星探測器在火星成功登陸,它的主體結(jié)構(gòu)完全可以當成是一臺裝在汽車上的多關(guān)節(jié)機械臂,大多數(shù)火星探測任務也正是由它控制機械臂進行的,如圖2所示。
對于上述的智能機器人,特別是機械臂而言,若要順利地完成各種作業(yè)任務,對其有效的控制必不可少。通常智能機器人的控制都是基于計算機進行的,那么,操作者——人與智能機器人的控制交互,也就轉(zhuǎn)化成了人與計算機之間的交互。目前普遍采用的控制方式都是用計算機外接的鍵盤、鼠標或控制用觸摸屏為主,這些方式要求為交互提供額外的設備,不適于用在具有移動能力的機器人和便攜式的智能產(chǎn)品上面。同時,這些方式要求掌握一些計算機輸入設備操作方法,交互方式不夠直接,不適用于與缺乏學習能力的老人和兒童之間的交互。
因此,需要一種自然的人機交互方式來代替復雜繁瑣的程序操作,以便簡單方便地操縱機器人,向機器人發(fā)布命令,與機器人進行交互。
人體自身的肢體動作一般不需特意訓練就能自然準確地傳遞信息,舉手、揮動手臂、點頭搖頭或是踢踢腿等動作自然、直觀,無論是否專業(yè)人士,幾乎不用訓練即可掌握控制所需要的若干交互動作。同時,用人來直接當做智能機器人的交互輸入設備,人機之間的交互通訊將不再需要多余的媒體,可以擴展機器人的作業(yè)范圍,讓機器人的應用領(lǐng)域更加廣泛。這一切隨著計算機視覺和圖像處理技術(shù)的發(fā)展成為了可能,基于機器視覺的人體動作與計算機交互的方式(nature user interface,NUI),成為了新型人機交互方式的研究熱點。2010年11月,微軟公司推出的Kinect體感設備在人體跟蹤以及姿態(tài)估計方面有著出色的表現(xiàn)。作為新一代自然人機交互技術(shù)的典范,Kinect實現(xiàn)了用戶通過語音和手勢等行為,與計算機進行更自然的交互。為了發(fā)掘Kineet的更大潛力,微軟公司推出了Kinect for Windows SDK開發(fā)工具包。配合此工具包可以利用Kineet的體感技術(shù),獲取人體深度信息,通過識別人體動作和手勢,來理解操作者的意圖,從而利用計算機對機器人進行有效的操作。
我們對基于Kinect鏡頭的體感交互控制技術(shù)展開深入研究,并將其應用于機器人實時控制中,利用自然的人體姿態(tài)或動作控制機器人,可以簡化機器人控制的復雜度,提高人與機器人之間的交互性。
2.體感控制的機械臂刨新實驗設計
人機交互創(chuàng)新實驗主要是用Kinect鏡頭捕捉人體RGB-D數(shù)據(jù),處理后得到人體姿態(tài)或動作信息,再利用Arduino作為控制器,將上述信息映射為機械臂的相應動作驅(qū)動數(shù)據(jù),實時控制機械臂完成各種精細動作。
實驗構(gòu)建的體感控制機械臂包括基于Kinect鏡頭的人體姿態(tài)或動作捕捉和基于Arduino控制器的機械臂控制兩大模塊,其原理框圖如圖3所示。
通過Kinect捕獲人體RGB-D數(shù)據(jù),使用OpenNI/NITE程序庫從中識別人體關(guān)節(jié)及手勢動作,并提取空間坐標;通過藍牙模塊與上位機通訊,在Arduino控制器中通過空間向量運算,計算機械臂舵機轉(zhuǎn)角,查詢動作表,找到手臂相應動作,通過串口通訊發(fā)送給機械臂控制器。機械臂控制器采用32路伺服舵機控制器作為控制器,控制機械臂關(guān)節(jié)舵機,實時完成取物、拉伸等精確作業(yè),實現(xiàn)一種新的自然人機交互模式,
實驗使用的各重要組件如圖4所示。
實驗使用的機械臂設計圖如圖5所示。
最終,實驗項目設計的體感控制機械臂能實現(xiàn)的功能見表1。
基于體感識別的機械臂運行的主要流程為:人站在Kinect視距范圍內(nèi)做“投降姿勢”,由OpenNI/NITE程序庫驅(qū)動Kinect進行姿勢校正,校正完成后,運行在Arduino核心控制器上的識別程序,驅(qū)動Kinect進行數(shù)據(jù)采集,并實時繪制出人體骨骼框架。識別程序主要的功能是識別人體各關(guān)節(jié),并通過濾波、空間向量運算、腿部姿態(tài)檢測,計算出控制機械臂所需的信息。通過無線模塊進行控制命令傳輸,數(shù)據(jù)通信協(xié)議采用自行封裝的格式,并在機械臂控制器端提供簡單的完整性校驗。機械臂控制器根據(jù)接收到的數(shù)據(jù),采用復用PWM周期的方式,完成一個PWM周期對多路舵機的調(diào)速工作,保證了機械臂動作的連貫性。
3.結(jié)語
我們研究的相關(guān)技術(shù)是人機交互和機器人控制技術(shù)的研究熱點,將基于Kinect鏡頭的體感控制技術(shù)融入到機器人控制之中,利用人體姿態(tài)或手勢動作來控制機器人,簡化機器人控制的復雜度,提高人與機器人之間的交互性,實現(xiàn)了一種新的自然人機交互模式,應用價值較好。
實驗設計出的機械臂有以下優(yōu)點:
(1)利用Kinect體感設備獲取的人體的RGB-D數(shù)據(jù),并快速、準確、實時地識別人體姿態(tài)或動作。
(2)針對RGB-D原始數(shù)據(jù)噪聲較大的問題,研究滑動平均濾波算法,并提出帶限幅加權(quán)滑動平均濾波算法,該算法能夠有效地平滑原始數(shù)據(jù),并且時滯性比滑動平均濾波算法好,數(shù)據(jù)出現(xiàn)異常隋況下能濾除,有效地避免機械臂誤動作。
(3)實現(xiàn)了基于Arduino控制器的機械臂實時控制。
我們的創(chuàng)新實驗項目在實際教學中引起了學生的極大興趣,解決了以往人機交互課程實踐項目枯燥無趣、學生學習缺乏動力的難題。豐富的實驗內(nèi)容,有趣的操作方式和全面新穎的人機交互新技術(shù)應用,吸引學生主動地走人實驗室進行學習和研究,極大地提高了學習績效。在未來的工作中,我們將進一步挖掘自然人機交互的新技術(shù)和新方式,結(jié)合現(xiàn)在的“云平臺”和“物聯(lián)網(wǎng)”等新概念,設計出更好的創(chuàng)新實驗項目。