劉忠超,范靈燕,翟天嵩,趙志遠(yuǎn)
(南陽理工學(xué)院智能制造學(xué)院,河南南陽,473004)
隨著信息化、自動(dòng)化技術(shù)的不斷發(fā)展,機(jī)械臂作為一種高效可靠的自動(dòng)化裝置[1],成為機(jī)器人和人體工程學(xué)領(lǐng)域的研究熱點(diǎn)和方向,并得到了快速的發(fā)展。采摘機(jī)器人作為農(nóng)業(yè)機(jī)器人的重要類型,它采用機(jī)械手方式替代傳統(tǒng)的人工作業(yè)方式,大大的減輕了勞動(dòng)強(qiáng)度,節(jié)省成本,提高了生產(chǎn)效率。
傳統(tǒng)農(nóng)業(yè)采摘機(jī)器人的機(jī)械臂大都采用現(xiàn)有的工業(yè)機(jī)械手,體積大、成本高,并且靈活性較差。近年來人體姿態(tài)感知技術(shù)在電子游戲、醫(yī)療康復(fù)、智能家居[2]等領(lǐng)域得到了廣泛的應(yīng)用[3]。Baeten等[4]設(shè)計(jì)的蘋果采摘機(jī)器人通過采用仿上肢機(jī)器人的6自由度機(jī)械臂,實(shí)現(xiàn)了果實(shí)的靈活采摘,日本Kondo等[5]采用一個(gè)7自由度的仿上肢關(guān)節(jié)型機(jī)械臂和四輪的移動(dòng)平臺(tái),設(shè)計(jì)了西紅柿采摘機(jī)器人,利用仿上肢機(jī)械臂各關(guān)節(jié)的相互協(xié)作實(shí)現(xiàn)果實(shí)的采摘。特別在一些比較惡劣、高危、高精度的工作環(huán)境,傳統(tǒng)機(jī)器臂的靈活性及邏輯判斷能力遠(yuǎn)不及人類的靈活和自由[6],同樣對(duì)于農(nóng)業(yè)生產(chǎn)中的一些危險(xiǎn)作業(yè),比如農(nóng)民爬到高大的果樹上進(jìn)行水果的采摘,不僅效率低下、費(fèi)時(shí)費(fèi)力,還存在攀爬跌落的危險(xiǎn)[7]。
針對(duì)傳統(tǒng)機(jī)械臂的缺點(diǎn),本文基于仿生學(xué)原理,提出并設(shè)計(jì)了一種多功能體感交互式仿上肢采摘機(jī)械臂系統(tǒng)。系統(tǒng)基于加速度傳感器采集人體手臂姿態(tài),開發(fā)了機(jī)械臂的硬件控制系統(tǒng)及軟件系統(tǒng),搭建了6軸仿生機(jī)械臂結(jié)構(gòu),并通過試驗(yàn)驗(yàn)證了仿上肢采摘機(jī)械臂設(shè)計(jì)的正確性和可行性。
根據(jù)體感交互式機(jī)械臂的功能需求,機(jī)械臂控制系統(tǒng)主要包括手臂姿態(tài)采集端和機(jī)械臂控制端。系統(tǒng)采用3組MPU6050協(xié)同獲取人體手臂姿態(tài)信息,采集端控制系統(tǒng)采用STM32F407芯片作為處理器,用以實(shí)現(xiàn)對(duì)人體手臂姿態(tài)的數(shù)據(jù)采集、處理和發(fā)送。機(jī)械臂控制端利用無線模塊SI4432以及STM32F407處理器來接收、分析采集端發(fā)送的手臂姿態(tài)數(shù)據(jù),輸出控制信號(hào)使機(jī)械臂能按照人體手臂姿態(tài)的運(yùn)動(dòng)軌跡,來完成動(dòng)作的跟隨模仿[8]。體感交互式仿上肢采摘機(jī)械臂系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 仿上肢采摘機(jī)械臂系統(tǒng)結(jié)構(gòu)圖
由于體感交互式仿上肢機(jī)械臂采集對(duì)象為人體上肢,而人體上肢手臂自由運(yùn)動(dòng)需要由腕關(guān)節(jié)、肘關(guān)節(jié)和肩關(guān)節(jié)三部分組合運(yùn)動(dòng)完成。人體手臂一共包含有6個(gè)自由度運(yùn)動(dòng),分別為腕關(guān)節(jié)屈/伸運(yùn)動(dòng)、腕關(guān)節(jié)外展/內(nèi)斂動(dòng)作、肘關(guān)節(jié)屈/伸運(yùn)動(dòng)、肘關(guān)節(jié)的外旋/內(nèi)旋運(yùn)動(dòng)、肩關(guān)節(jié)的屈/伸運(yùn)動(dòng)以及與肩關(guān)節(jié)的外展/內(nèi)斂動(dòng)作[9]。體感交互式仿上肢機(jī)械臂的6個(gè)舵機(jī)運(yùn)動(dòng)的角度和手臂關(guān)節(jié)運(yùn)動(dòng)方向范圍如表1所示。
表1 手臂關(guān)節(jié)活動(dòng)表Tab. 1 Movement table of arm joint
根據(jù)人體手臂運(yùn)動(dòng)狀態(tài)的運(yùn)動(dòng)范圍和自由度,仿上肢采摘機(jī)械臂可以分為肩關(guān)節(jié)機(jī)構(gòu)、肘關(guān)節(jié)機(jī)構(gòu)、腕關(guān)節(jié)機(jī)構(gòu)三個(gè)部分,每個(gè)機(jī)構(gòu)包含兩個(gè)舵機(jī),仿上肢采摘機(jī)械臂的模型結(jié)構(gòu)以及舵機(jī)分布如圖2所示。
圖2 仿上肢采摘機(jī)械臂模型結(jié)構(gòu)圖
體感交互式仿上肢機(jī)械臂的D-H空間坐標(biāo)系如圖3所示。
圖3 仿上肢采摘機(jī)械臂D-H空間坐標(biāo)系
仿生機(jī)械臂主要由機(jī)械臂、舵機(jī)、機(jī)械爪等幾個(gè)主要部分組成,其可以看作數(shù)個(gè)轉(zhuǎn)動(dòng)或移動(dòng)的關(guān)節(jié)串聯(lián)而成的。體感交互式仿上肢機(jī)械臂在機(jī)構(gòu)學(xué)上,可以將其看成為連桿與關(guān)節(jié)組成,以連桿建立坐標(biāo)系,設(shè)計(jì)的機(jī)械臂擁有6個(gè)自由度的變換,根據(jù)Denavit-Hartenberg (D-H)表示法建立的數(shù)學(xué)模型,并借助于數(shù)學(xué)模型中的連桿與關(guān)節(jié)表示,可以建立出機(jī)械臂各個(gè)舵機(jī)的運(yùn)動(dòng)坐標(biāo)系,腕關(guān)節(jié)包含1號(hào)和2號(hào)舵機(jī),1號(hào)舵機(jī)的軸線和2號(hào)舵機(jī)的軸線垂直相交于1號(hào)坐標(biāo)系;肘關(guān)節(jié)包含3號(hào)和4號(hào)舵機(jī),3號(hào)舵機(jī)和4號(hào)舵機(jī)軸線垂直相交于2號(hào)坐標(biāo)系;腕關(guān)節(jié)包含5號(hào)和6號(hào)舵機(jī),5號(hào)舵機(jī)和6號(hào)舵機(jī)軸線垂直相交于3號(hào)坐標(biāo)系[10]。建立連桿坐標(biāo)后,根據(jù)相鄰關(guān)節(jié)坐標(biāo)間的關(guān)系可以確定關(guān)節(jié)和連桿的D-H參數(shù),從而在三維空間為仿生機(jī)械臂的每一個(gè)連桿建立一個(gè)坐標(biāo)系或相對(duì)于機(jī)械臂底座的相對(duì)坐標(biāo)系,進(jìn)而確定每一個(gè)桿件的位置和方向。
系統(tǒng)控制芯片均選用STM32F407ZGT6單片機(jī),采集端使用3組MPU6050來采集和解析人體手臂動(dòng)作指令,MPU6050使用I2C通訊方式與STM32F407ZGT6控制芯片進(jìn)行通訊,將手臂姿態(tài)數(shù)據(jù)傳輸至采集端控制芯片,采集端控制器將將MPU6050數(shù)據(jù)轉(zhuǎn)換成角度值,并將數(shù)據(jù)進(jìn)行封裝,通過SI4432無線通訊模塊將上肢手臂姿態(tài)數(shù)據(jù)發(fā)送出去。
機(jī)械臂運(yùn)動(dòng)控制端通過SI4432通訊模塊,將采集端的手臂姿態(tài)角度值數(shù)據(jù)包接收后進(jìn)行處理,轉(zhuǎn)換為6組PWM脈沖信號(hào)值,通過接收協(xié)調(diào)端的控制芯片將6組PWM脈沖信號(hào)值傳輸至舵機(jī)控制電路,分別控制機(jī)械臂上6個(gè)舵機(jī)轉(zhuǎn)動(dòng),從而控制機(jī)械臂完成人體上肢手臂的動(dòng)作模仿。
上肢姿態(tài)采集端和機(jī)械臂控制端均選用STM32F407ZGT6單片機(jī)為控制核心。STM32F407ZGT6芯片是內(nèi)核為Cortex-M4的意法半導(dǎo)體(ST)產(chǎn)品,I/O 接口多達(dá)112個(gè),相對(duì)STM32F1/F2等Cortex-M3產(chǎn)品,STM32F4最大的優(yōu)勢(shì)就是新增了硬件FPU單元以及DSP指令,芯片內(nèi)部集成了多種功能,如I2C、ADC、SPI、PWM等[11],其主要特點(diǎn)為功耗低、穩(wěn)定性高、抗干擾能力強(qiáng),豐富的接口以及內(nèi)部資源能夠滿足仿上肢機(jī)械臂控制系統(tǒng)功能的需求。
采集端需要實(shí)時(shí)采集人體手臂的運(yùn)動(dòng)姿態(tài),系統(tǒng)采用3組MPU6050六軸加速度計(jì)作為采集端的姿態(tài)傳感器。MPU6050具有準(zhǔn)確度高、質(zhì)量輕、空間占有率小、功耗低等優(yōu)點(diǎn),在姿態(tài)測量和加速度測量等方面具有較好的優(yōu)勢(shì)[12]。
MPU6050與控制器STM32F407ZGT6之間的接線比較簡單,通過I2C進(jìn)行主從式通信,只需要兩根數(shù)據(jù)線,外圍電路比較簡單,具體連接電路如圖4所示,其中23腳SCL和24腳SDA是連接控制芯片的I2C接口,控制芯片通過I2C接口來與MPU6050進(jìn)行通訊,采集出MPU6050數(shù)據(jù),MPU6050始終為從屬設(shè)備。3組MPU6050可以時(shí)刻采集手臂上所有關(guān)節(jié)的運(yùn)動(dòng)角度,通過角度的變化率來推算出人體手臂的運(yùn)動(dòng)軌跡。
圖4 MPU6050控制電路原理圖
系統(tǒng)選用SI4432無線收發(fā)芯片作為姿態(tài)采集端與機(jī)械臂控制端的通信,它包含了所有的ISM頻段應(yīng)用所需的發(fā)射和接收功能。與NRF905、NRF24L01、CC1101等無線模塊相比,最大發(fā)射功率為+20 dBm,發(fā)射功率大,接收靈敏度極高,具有很高的性價(jià)比[13]。
SI4432與STM32F407ZGT6控制器之間采用SPI通訊方式,SPI為全雙工通訊,數(shù)據(jù)傳輸速度快。SI4432模塊接線圖如圖5所示,其中SPI_MOSI為STM32控制器到SI4432的串行數(shù)據(jù)傳輸;SPI_MISO為SI4432到STM32控制器的串行數(shù)據(jù)傳輸;SPI_SCLK為時(shí)鐘信號(hào),由控制芯片產(chǎn)生;SPI_NSS為使能信號(hào),由控制芯片控制[14]。
圖5 SI4432模塊接線圖
舵機(jī)是實(shí)現(xiàn)機(jī)械臂動(dòng)作的主要執(zhí)行機(jī)構(gòu),考慮到系統(tǒng)的承載力、扭矩、控制等因素,選用6個(gè)高精度雙軸LDX-218數(shù)字舵機(jī)組成機(jī)械臂運(yùn)動(dòng)執(zhí)行部件[15],舵機(jī)實(shí)物如圖6(a)所示。舵機(jī)輸出軸的角度可以根據(jù)時(shí)基脈沖來控制,在0.5~2.5 ms的脈沖控制下,機(jī)械臂上舵機(jī)轉(zhuǎn)動(dòng)的角度范圍為0°~180°,且輸入信號(hào)和輸出角度基本呈線性關(guān)系。6個(gè)舵機(jī)控制采用如圖6(b)所示的接口與STM32控制器相應(yīng)的I/O口進(jìn)行連接,通過軟件控制微控制器產(chǎn)生PWM信號(hào),來控制6個(gè)舵機(jī)的運(yùn)行角度,使機(jī)械臂完成仿上肢的動(dòng)作功能。
(a) 舵機(jī)實(shí)物 (b) 舵機(jī)接線
體感交互式仿上肢機(jī)械臂控制系統(tǒng)軟件包括采集端手臂姿態(tài)采集、數(shù)據(jù)無線傳輸、機(jī)械臂控制端數(shù)據(jù)分析處理三大部分。接收端采用三組MPU6050對(duì)人體手臂的運(yùn)動(dòng)姿態(tài)進(jìn)行采集。通過SI4432無線通訊和機(jī)械臂姿態(tài)接收端之間進(jìn)行通訊。機(jī)械臂接收端負(fù)責(zé)姿態(tài)無線數(shù)據(jù)接收、指令解析和動(dòng)作執(zhí)行等功能,從而控制仿上肢機(jī)械臂完成人體手臂動(dòng)作的模仿。仿上肢機(jī)械臂軟件系統(tǒng)結(jié)構(gòu)如圖7所示。
圖7 軟件系統(tǒng)結(jié)構(gòu)框圖
軟件設(shè)計(jì)中對(duì)3組MPU6050傳感器分別初始化以及工作模式的配置,在操作系統(tǒng)初始化完成之后,開始手臂姿態(tài)測量采集任務(wù),配置1號(hào)MPU6050測量數(shù)據(jù)為任務(wù)1,2號(hào)MPU6050測量數(shù)據(jù)為任務(wù)2,3號(hào)MPU6050測量數(shù)據(jù)為任務(wù)3,然后對(duì)各個(gè)任務(wù)進(jìn)行數(shù)據(jù)查詢采集,當(dāng)某個(gè)任務(wù)點(diǎn)被觸發(fā),立即對(duì)該任務(wù)點(diǎn)姿態(tài)進(jìn)行采集分析處理,最后將三組MPU6050數(shù)據(jù)封裝,通過SI4432無線發(fā)送給機(jī)械臂控制端。采集端程序流程圖如圖8(a)所示。
機(jī)械臂控制端進(jìn)行系統(tǒng)初始化之后,實(shí)時(shí)接收人體手臂姿態(tài)采集端的無線數(shù)據(jù),將接收到的數(shù)據(jù)進(jìn)行解包并轉(zhuǎn)換為PWM信號(hào),從而控制體感交互式仿上肢機(jī)械臂完成相應(yīng)動(dòng)作。機(jī)械臂控制端程序流程圖如圖8(b)所示。
(a) 姿態(tài)采集端流程圖
將姿態(tài)采集端和接收控制端聯(lián)合進(jìn)行機(jī)械臂仿生試驗(yàn),試驗(yàn)環(huán)境為模擬蘋果的摘取動(dòng)作。通過完成系統(tǒng)軟件與硬件的基礎(chǔ)配置,可以進(jìn)行系統(tǒng)測試。設(shè)置上肢手臂佩戴的采集端為發(fā)送模式,并通過扎帶與手臂相連,在機(jī)械臂執(zhí)行端的控制器選擇為接收模式。采集端對(duì)人體手臂姿態(tài)進(jìn)行采集、處理,從而控制機(jī)械臂完成人體手臂跟蹤動(dòng)作。
試驗(yàn)分別找了5位測試者,對(duì)機(jī)械臂自由度中的腕關(guān)節(jié)屈/伸、腕關(guān)節(jié)外展/內(nèi)斂、肘關(guān)節(jié)屈/伸、肘關(guān)節(jié)的外旋/內(nèi)旋、肩關(guān)節(jié)的屈/伸、肩關(guān)節(jié)的外展/內(nèi)斂運(yùn)動(dòng)分別做10°、20°、30°、40°的仿生試驗(yàn),每個(gè)動(dòng)作測試4次,共計(jì)480次試驗(yàn),試驗(yàn)結(jié)果如表2所示。
表2 動(dòng)作仿生識(shí)別結(jié)果Tab. 2 Results of action bionic recognition
由表2實(shí)際測試結(jié)果可知,系統(tǒng)接收?qǐng)?zhí)行端對(duì)仿人體機(jī)械臂動(dòng)作的平均識(shí)別率為96%以上,執(zhí)行端動(dòng)作跟隨的平均響應(yīng)時(shí)間為2~3 s,能夠按照人體上肢手臂的姿態(tài)做出相應(yīng)的動(dòng)作,可以較好地模仿人手腕、小臂與肘關(guān)節(jié)、大臂與肩關(guān)節(jié)動(dòng)作,精確度和穩(wěn)定性滿足設(shè)計(jì)的要求。如圖9所示人體胳膊直立狀態(tài)的實(shí)際測試效果。
(a) 人體手臂姿態(tài)圖 (b) 機(jī)械臂運(yùn)動(dòng)姿態(tài)圖
1) 設(shè)計(jì)并實(shí)現(xiàn)了一種多功能體感交互式仿上肢采摘機(jī)械臂系統(tǒng),可通過人體手勢(shì)控制機(jī)械臂做出相應(yīng)的動(dòng)作,實(shí)現(xiàn)機(jī)械臂同步模仿做出人類的采摘?jiǎng)幼?。利用D-H理論建立了體感交互式仿上肢機(jī)械臂的數(shù)學(xué)模型,以人體手臂運(yùn)動(dòng)軌跡為基礎(chǔ)設(shè)計(jì)了仿生機(jī)械臂,并基于STM32實(shí)現(xiàn)了體感交互式仿上肢機(jī)械臂的控制功能。
2) 對(duì)機(jī)械臂進(jìn)行了試驗(yàn)分析,可知仿生機(jī)械臂對(duì)人體機(jī)械臂的動(dòng)作跟隨響應(yīng)時(shí)間為2~3 s,動(dòng)作的平均識(shí)別率為96%以上,證明了機(jī)械臂設(shè)計(jì)的合理性和可行性。
3) 本文的研究成果為實(shí)現(xiàn)仿生六自由度機(jī)械臂模型提供參考,可實(shí)現(xiàn)人體遠(yuǎn)程操控機(jī)械臂,更好更高效地完成相應(yīng)的工作,為拓展農(nóng)業(yè)采摘機(jī)器人在農(nóng)業(yè)生產(chǎn)中的應(yīng)用提供技術(shù)支持,具有較大的研究和使用價(jià)值。