勞振鵬 東莞理工學(xué)院 機(jī)械工程學(xué)院 黃市生 黎梓恒 曾志彬 吳國(guó)洪 東莞市橫瀝模具科技產(chǎn)業(yè)發(fā)展有限公司 陳學(xué)忠 廣東石東實(shí)業(yè)(集團(tuán))公司
前言:當(dāng)前國(guó)內(nèi)外的六軸機(jī)械手控制技術(shù)發(fā)展得越來(lái)越成熟,無(wú)論是從控制精度,還是從應(yīng)用效果看,其發(fā)展都能得到充分的肯定。然而,隨著智能制造的熱潮,在研究過(guò)程中發(fā)現(xiàn),六軸機(jī)械手的傳統(tǒng)控制方式離不開(kāi)鍵盤(pán)、鼠標(biāo)或者示教盒,其操作過(guò)程復(fù)雜,而且其操作人員需要一定的專業(yè)技術(shù),不適合廣泛應(yīng)用于教學(xué)示范過(guò)程。此外,通過(guò)鍵盤(pán)或者示教盒控制該類(lèi)機(jī)械手,用于人機(jī)交互的控制面板發(fā)生故障時(shí),需要等待專業(yè)的維護(hù)人員檢查維修,極大影響機(jī)械手的工作效率。
針對(duì)以上現(xiàn)象,本文提出一種基于手勢(shì)識(shí)別并應(yīng)用于教學(xué)示范的六軸機(jī)械手的開(kāi)發(fā)方案,以解決傳統(tǒng)的機(jī)械手控制方式不適合廣泛應(yīng)用于教學(xué)示范過(guò)程的不足,改善人機(jī)交互方式,提高工作效率。
六軸機(jī)械手是多關(guān)節(jié)、多自由度的機(jī)器人,動(dòng)作多,變化靈活,是一種柔性技術(shù)較高的工業(yè)機(jī)器人,它的控制方式很大程度上影響著它的工作效率。為實(shí)現(xiàn)利用kinect傳感器手勢(shì)控制六軸機(jī)械手,本文的硬件結(jié)構(gòu)設(shè)計(jì)如圖1所示,圖中左側(cè)為鋁柜,右側(cè)為六軸機(jī)械手。鋁柜由鋁型材組裝而成,具有第一層平臺(tái)和第二層平臺(tái),由下往上為第一層平臺(tái)、第二層平臺(tái)。本文將機(jī)械手控制器設(shè)置在鋁柜的第一層平臺(tái),控制器里含有三個(gè)運(yùn)動(dòng)控制卡,運(yùn)動(dòng)控制卡一用來(lái)控制關(guān)節(jié)Ⅰ、關(guān)節(jié)Ⅱ、關(guān)節(jié)Ⅲ;運(yùn)動(dòng)控制卡二用來(lái)控制關(guān)節(jié)Ⅳ、關(guān)節(jié)V、關(guān)節(jié)Ⅵ,運(yùn)動(dòng)控制卡三用來(lái)控制加裝在六軸機(jī)械手末端的伺服電機(jī)。其中運(yùn)動(dòng)控制卡一控制的關(guān)節(jié)是空間位置關(guān)節(jié),運(yùn)動(dòng)控制卡二控制的關(guān)節(jié)是姿態(tài)關(guān)節(jié),其包括I/O模塊、驅(qū)動(dòng)器、伺服電機(jī)等。鋁架的第二層平臺(tái)放置計(jì)算機(jī),該計(jì)算機(jī)用于采集圖像和深度數(shù)據(jù),并進(jìn)行數(shù)據(jù)融合處理,向運(yùn)動(dòng)控制卡發(fā)送下一步的指令等。進(jìn)一步的,同樣在第二層平臺(tái),并且是在計(jì)算機(jī)的上方設(shè)置了kinect視覺(jué)體感器,用于采集手勢(shì)姿態(tài)信息,作為控制六軸機(jī)械手的直接指令。該六軸機(jī)械手通過(guò)底座的四個(gè)螺栓孔可固定在車(chē)間地面,它具有一個(gè)夾具和五個(gè)關(guān)節(jié),關(guān)節(jié)Ⅰ、關(guān)節(jié)Ⅱ、關(guān)節(jié)Ⅲ、關(guān)節(jié)Ⅳ、關(guān)節(jié)V、關(guān)節(jié)Ⅵ,夾具與每個(gè)關(guān)節(jié)都是由伺服電機(jī)驅(qū)動(dòng)。
本文所設(shè)計(jì)的硬件平臺(tái)的電性連接部分具體為,計(jì)算機(jī)通過(guò)USB數(shù)據(jù)線與kinect視覺(jué)體感器連接、通過(guò)PCI總線與機(jī)械手控制器連接。繼而,機(jī)械手控制器通過(guò)連接三塊轉(zhuǎn)接板進(jìn)而連接七個(gè)驅(qū)動(dòng)器、七個(gè)伺服電機(jī)。計(jì)算機(jī)作為圖像和深度數(shù)據(jù)的采集中心與數(shù)據(jù)轉(zhuǎn)換中心,它及時(shí)有效地將從kinect視覺(jué)體感器獲取的手勢(shì)指令轉(zhuǎn)換成機(jī)械手控制器可識(shí)別的模擬量指令。
圖1 硬件平臺(tái)示意圖
通過(guò)Kinect for Windows SDK 開(kāi)發(fā),使用有深度攝像機(jī)的kinect設(shè)備進(jìn)行動(dòng)靜態(tài)手勢(shì)識(shí)別,計(jì)算機(jī)獲取特定的手勢(shì)動(dòng)作指令,然后進(jìn)一步發(fā)送相對(duì)應(yīng)的命令給機(jī)械手控制器,進(jìn)而驅(qū)動(dòng)各個(gè)關(guān)節(jié)的電機(jī),完成六軸機(jī)械手抓取物體、行走和放下物體的全過(guò)程。通過(guò)計(jì)算機(jī)軟件編程和運(yùn)動(dòng)控制卡來(lái)控制機(jī)械手,能夠達(dá)到手勢(shì)控制機(jī)械手運(yùn)動(dòng)與搬運(yùn)的目的,實(shí)現(xiàn)自然的人機(jī)交互。其中,在以手指為主的手勢(shì)識(shí)別過(guò)程中,需要進(jìn)行的步驟為,首先,檢測(cè)鏡頭到手掌心的距離L;然后以手掌心為圓心,尺度為1mm繪制多個(gè)同心圓;接著在同一圓弧上按照順時(shí)針?lè)较驒z測(cè)所有的像素點(diǎn),并且對(duì)比從上一像素點(diǎn)到該像素點(diǎn)是否發(fā)生了數(shù)值變化,黑色像素點(diǎn)記為0,白色像素點(diǎn)記為1;最后統(tǒng)計(jì)黑色像素點(diǎn)與白色像素點(diǎn)在每個(gè)同心圓的對(duì)數(shù),結(jié)合全部同心圓,最大的對(duì)數(shù)即為該手勢(shì)對(duì)應(yīng)的手指的數(shù)量。
啟動(dòng)該六軸機(jī)械手控制系統(tǒng),在kinect視覺(jué)體感器的正前方執(zhí)行張開(kāi)右手掌的動(dòng)作,計(jì)算機(jī)獲取了五指張開(kāi)的手勢(shì)指令,進(jìn)而計(jì)算機(jī)發(fā)送相對(duì)應(yīng)的命令給機(jī)械手控制器,運(yùn)動(dòng)控制卡三工作,驅(qū)動(dòng)伺服電機(jī)帶動(dòng)螺栓反向轉(zhuǎn)動(dòng),彈簧伸長(zhǎng),夾具張開(kāi)。相對(duì)應(yīng)的,面向kinect視覺(jué)體感器執(zhí)行右手握拳的動(dòng)作,夾具夾緊。類(lèi)似的,執(zhí)行右手抬起與右手自然下垂的動(dòng)作,系統(tǒng)將驅(qū)動(dòng)關(guān)節(jié)Ⅱ的伺服電機(jī)發(fā)生正轉(zhuǎn)(順時(shí)針旋轉(zhuǎn))與反轉(zhuǎn)(逆時(shí)針旋轉(zhuǎn))??刂破渌P(guān)節(jié)的運(yùn)動(dòng)將通過(guò)識(shí)別其它特定的手勢(shì)動(dòng)作來(lái)完成。
本文所做的工作總結(jié)如下:第一,設(shè)計(jì)了一種基于手勢(shì)識(shí)別并應(yīng)用于教學(xué)示范的六軸機(jī)械手的硬件結(jié)構(gòu);第二,搭建了相關(guān)的手勢(shì)識(shí)別系統(tǒng)以及控制系統(tǒng)并做了較具體的分析。