武兆平, 李小寧
(南京理工大學 機械工程學院, 江蘇 南京 210094)
機械手是工業自動化生產線的重要組成部分,實現工件自動抓取操作。隨著生產力水平和勞動效率的提高,混流柔性生產等新的制造技術對機械手功能多樣性提出了更高的要求,尤其是對不同形狀、不同質量且易損傷物體的安全可靠抓取[1]。因此工業生產, 尤其是混流柔性生產需求一種靈活高效、通用性強、具有足夠夾持力的柔順機械手。近年來隨著新興學科軟體機器人的出現,為機械手的設計提供了新的靈感和思路[2-3]。軟體機械手作為軟體機器人的一個主要分支應運而生[4-6]。目前各類軟體機械手雖然具有柔順和適應不規則形狀的優點,但普遍存在抓持力不足的問題。大部分軟體手都是純軟體材料制作,其本身剛度小的性質決定了抓持力較小,且在氣壓驅動下會產生各種不需要的變形,如徑向膨脹與不規則變形等[7-9]。為解決這一問題,本研究設計了一種新型關節式內骨骼氣動軟體機械手。
對設計的軟體機械手進行實際抓取應用是一項關鍵需求。為了使軟體機械手能夠安全可靠地抓取,其控制策略與抓取規劃的研究則尤其重要。軟體機械手的柔順性與形狀適應性是其優于傳統剛性機械手的最主要特點。不同于剛性機械手抓取物體時的硬指接觸形式,軟體手貼合物體表面,接觸耦合面積很大,且不是一般的點接觸,大部分情況下不能采用傳統的抓取穩定性理論。目前針對軟體機械手的抓取策略研究較少,一般都是經驗抓持,或是參考傳統抓取理論,對其進行提取、改造和優化,針對具體的軟體手進行抓取策略討論與分析。ZELANGO N等[10]總結了軟體手無傷抓持時的幾種力作用模式,并歸納了其模擬人手兩種抓持方式的機理,即精確抓持和力度抓持,為抓取規劃提供了最基本的理論依據。ZHOU X[11]等研究了軟體手爪在抓取過程中的一些力學機制,精確表明了抓取如何實現和抓取性能如何被系統參數影響。HOMBERG等[12]通過對軟體手內部狀態實時監測實現了軟體手的魯棒性抓取和對抓取物體觸覺識別的功能。ZHONG G等[13]對研制的具有中心真空吸盤的新型軟體機械手進行了抓取模式的分析,和其他軟體手相比,該手爪具有更多的抓持模式和更大的操作空間,共有4種可轉換的抓取模式。王寧揚等[14]針對研制的蜂巢氣動網絡軟體手進行了抓取策略的研究,結合其運動特性和抓取特性,針對每個備選抓取點進行抓取過程模擬,以確定最終的抓取形態。
軟體機械手將傳統的剛性機械手的應用范圍從結構化環境中對剛性物體的抓取拓展到了對柔性的、表面形狀復雜的以及易碎物體的抓取中,這極大地豐富了機械手的應用范圍,但又對抓取策略提出了更高的要求。當軟體機械手實際抓取目標物體時,如何規劃抓取方式,保持抓持的安全可靠,是一個亟需解決的問題。
氣動純軟體手的優點是柔順性,缺點是剛度低抓持力小。其動作是通過氣壓作用使軟體材料的手指發生彎曲變形,即軟體材料是產生動作的“執行器”,具有柔順性的優點;另一方面,軟體手抓取過程中的所有力也是靠軟體材料來承擔和傳遞,而軟體材料在承力和力傳遞的剛性方面顯然不如機械結構,所以在承力和力的傳遞方面是個弱點。如果能夠在結構上仍然用軟體材料在氣壓作用下實現“動作柔順驅動”,而在承力和力的傳遞上采用剛性結構,那么就可以保持柔順性的優點,克服抓持力小的缺點。因此,考慮在結構上把驅動和承力的功能從1個部件承受分解開,由2個部件來分別承受,這是基本設計思路。
采用驅動和承力功能分解的設計方案時,應該確定承力部件的結構形式以及其與驅動部件的機械結合方式,即結構驅動方案。聯想到人手的結構,除大拇指外的其余手指各有3根骨指,由近及遠為近節指骨、中節指骨和遠節指骨,指骨間以活動關節形式連接,通過肌肉驅動完成動作。因此,如果參照人手結構,將承力部件嵌入柔性驅動部件,即手指肌肉內部,充當人手骨骼的功能,這樣就能如人手一般,由柔軟的肌肉驅動并接觸抓取物體,內部的剛體部件像骨骼一樣,傳遞和承受抓取時產生的力。相較于傳統的純軟體手爪驅動與承力都由軟體材料本身承擔,設計內骨骼的結構可以承受與傳遞大部分抓取過程中產生的力,提高手爪抓取能力。
綜合分析,提出了一種關節式內骨骼的結構。軟體手爪的外部采用硅橡膠等軟體材料充當手指的肌肉部分,作為驅動單元,通過氣壓實現軟體材料的變形柔順驅動;同時,在軟體材料內腔預先嵌入串聯的多節剛性鉸鏈,起到手指內骨骼的作用,鉸鏈骨骼能夠約束氣動肌肉的變形方向并顯著提高其抓取力。
軟體手指的三維結構如圖1所示。首先確定了手指的輪廓外形。軟體手指的外形仿照章魚等軟體生物的觸手形式,由指尖以一定角度向末端尺寸漸變增大,呈現順滑的錐形結構。內骨骼的也相應地遵循手指的外形輪廓,結構尺寸從指處出往后遞增,并限制了手指整體形狀。當軟體手抓取物體時,一般手指前端與目標物體的接觸較多,較小的截面尺寸使得軟體手指更易彎曲,動作更加靈活。
手指由多個指關節串聯鏈接而成,每個指關節相同的結構與工作原理。單個指關節由3部分構成:
(1) 由鉸鏈串聯鏈接的剛性內骨骼;

圖1 軟體手指整體結構圖
(2) 軟體硅膠驅動層;
(3) 均勻嵌入軟體硅膠驅動層中的纖維加強層。
指關節氣腔充氣后,氣壓力作用在內骨骼的剛性端面上,使關節產生沿軸向的伸展變形,由于關節底部鉸接的結構,使內骨骼在底部變形只能產生繞鉸接點的轉動;而關節上部沒有軸向剛性約束僅有硅膠的柔性約束,所以可以產生一定程度的軸向伸展,形成了關節的彎曲,而纖維加強層的作用是約束硅膠的徑向膨脹變形,使充氣量能高效地實現硅膠層的軸向伸展。
為了獲得更多的形狀控制可能性,完成更多的動作以抓取不同形狀、尺寸的目標物體,整個軟體手指分為相對獨立的3指段,每個指段由5個相互連通的指關節組成,指關節間相互以鉸鏈形式串聯鏈接,在外力作用下可以旋轉,根據設計的骨骼結構,其旋轉角度為-45°~180°。每個指段的彎曲變形為各個指關節的作用之和,軟體手指彎曲變形如圖2所示。

圖2 手指彎曲變形示意圖
本研究所設計的關節式內骨骼氣動軟體機械手具有位置傳感功能。在軟體手指中植入了柔性彎曲傳感器。傳感器采用了Flex Sensor。根據手指的結構尺寸,選擇了flex2.2″型號,如圖3所示。傳感器以一定的安裝方式嵌入手指底部的硅膠層中,可以隨手指一起彎曲動作。每個指段下方各集成了1片柔性彎曲傳感器,可以有效的完成對各指段彎曲角度的信號采集,

圖3 Flex Sensor柔性彎曲傳感器
為之后的軟體手控制打下基礎。
在完成了軟體機械手的核心部件,即軟體手指的結構方案后,應基于軟體手指進一步完成整個軟體手的結構設計。軟體手采用常用的三指結構,控制簡單靈活,可以對目標物體完成可靠的抓取。軟體機械手的整體結構如圖4所示,主要由3根軟體手指與中央連接手掌構成。手掌采用剛性材料,保持足夠剛度的同時較為輕便。手掌為3D打印一體成型,具有流線型的外表與完備的內部流道,方便手指氣管以及傳感器信號線的布置連接,隱藏式布線設計使得走線有序整潔,軟體手美觀、一體化。手掌根部設計有法蘭安裝孔,方便軟體手與操作臺或者操作機械臂連接使用。

圖4 3指軟體機械手整體結構圖
3根軟體手指沿中央連接手掌周向均布,其具體安裝尺寸如圖5所示。手指間周向間隔為120°。手指的軸線與手掌軸心線的夾角設為35°,為軟體手的初始張開角度。連接手掌整體呈圓柱狀,其頂部截面直徑為120 mm。
機械手的抓取主要分為指尖抓取與包絡抓取。其中指尖抓取是指軟體機械手手指指尖接觸被抓取物體表面,把物體夾住,物體依靠手指指端實現對物體的穩定抓持,為點接觸形式。指尖抓取方式靈活度較大,有較好的抓取精度,涉及位置和力兩個方面的規劃問題,能夠實現對物體靈活可靠的操作,但抓取力較小,且控制較難,運算復雜。當軟體機械手執行包絡抓取時,所有手指和手掌均可參與對物體的抓取。此種抓取具有較好的穩定性和魯棒性,缺點是靈活性較小,但是具有較好的抓持穩定性,并且能夠提供較大的抓取力。由于軟體手具有優異的柔順性,與目標物體耦合面積大,適應物體形狀的特性,因而適合采用包絡抓取理論來分析。

圖5 手指與手掌安裝尺寸圖(mm)
包絡抓取控制策略的目的是使手指能夠以較快的速度接近物體,且以合適的力來抓取物體,如果用力太大,會使易碎物品損壞,太小則會夾不住物體或者物體在抓取過程中滑落。要實現這樣的目標,只有從一個較小的力開始,逐漸增大,直到物體與手指間沒有相對滑動為止,這時應該是最小的抓取力。
軟體手由于本身的高柔順性,因自身或是外力作用而產生彈性變形,與目標物體的接觸形式為軟接觸,耦合面形式復雜多樣。由于接觸類型一般為面接觸,無法如指尖抓持一樣確定接觸點位置而進行精確建模。因此,包絡抓取時,本研究不考慮力的規劃,從手指實時位置的角度進行探討,并進行了如下假設條件。
(1) 軟體手位于被抓取目標物體正上方,即距離目標物體幾何中心距離,已經處于最佳抓取姿態;
(2) 為了較少控制量,軟體手采用三手指對稱抓取方式,即軟體手3根不同手指相同位置處的指段保持相同輸入壓力,即接入同一氣路;
(3) 信號處理的速度足夠快,能夠滿足控制算法判定需求。
包絡抓取模式下,軟體機械手需要對具體參數未知的目標物體進行自主抓取,進行力封閉規劃是不可行的。因而需要一種簡單、快捷、可靠的抓取方案來進行抓取操作,本研究考慮從間接檢測的角度來進行控制,并通過相關規則來判定抓取的可靠性。
假設在一次抓取試驗中,軟體機械手從初始狀態開始動作,運動至接觸目標物體,并繼續加壓抓緊物體到達穩定狀態,然后在三自由度直角工作臺中由初始工位搬運被抓取物體至目標工位。在整個抓取試驗過程中,手指各指段的彎曲角度從初始值開始變化至完成抓取操作到達穩定狀態,如果抓取過程發生擾動,或者抓取失敗,則手指也會脫離穩定狀態,發生偏移,相應的各指段彎曲角度值也會發生改變。因此,考慮從機械手開始動作起,實時監測手指各指段位置,即實時采集彎曲角度信號,通過控制算法判定機械手的當前狀態,并根據需要對手指指段腔室內的氣壓力進行補償,完成軟體手整個“運動—抓取—搬運”操作流程。基于實時位置檢測的壓力補償包絡抓取算法流程如下所述。
Step1:軟體手處于最佳抓取位置,手指各指段開始輸入氣壓,3根手指相同位置的指段由同一路流道供氣,軟體手三手指對稱抓取;
Step2:以采樣頻率f實時采集手指各指段彎曲傳感器信號,選定1個判定時長tc,則在1個判定時長控制器共采集tc*f個數據點。從剛輸入氣壓,手指開始運動的0時刻起,對每個采集數據點進行判定。判定規則為計算第i個數據點所對應的角度值與第(i+tc*f)個數據點所對應的角度值之差θm,并與設定角度差值θd1以及θd2比較,其中θd1>θd2。
若θm滿足:
θm>θd1且θm>θd2
(1)
則這個過程為手指彎曲動作過程,角度變換速率大于設定值,且手指處于正角速度狀態,即彎曲角度增大。系統判定手指處于前期運動接近目標物體階段。θd1與θd2的值由大量試驗設定,θd1由手指一般運動角速度確定,θd2由彎曲傳感器測量精度確定;
Step3:保持手指各指段充氣狀態,繼續計算θm,并與θd1以及θd2比較。
若θm滿足:
θm<θd1且θm>θd2
(2)
則判定手指剛開始與目標物體發生接觸,是軟體手的抓取接觸過程;
Step4:繼續充氣,同時計算θm與|θm|。
若|θm|滿足:
|θm|<θd2
(3)
則判定手指已經完全接觸了目標物體。定義此時手指腔室內氣壓為pf,繼續向手指輸入設定好的初始預加載氣壓力pd,通過氣壓傳感器反饋控制。初始預加載氣壓值需要預先估算,主要由目標物體的重量決定。完成預加載氣壓輸入后,手指腔室內氣壓為:
p=pf+pd
(4)
Step5:關閉高速開關閥,暫停氣壓輸入,控制三自由度直角工作臺豎直方向動作,通過調節控制工作臺氣缸輸入流量,給軟體手一個極小的向上運行趨勢;
Step6:在td時長內,繼續計算θm與|θm|,td為抓取穩定判定時間,預設為2 s。共有3種狀況進行分析。
(1) 若 |θm|始終小于θd2,則判定抓取穩定,提高軟體手向上運動速度,搬運目標物體。期間繼續保持位置實時監測,判定抓取是否穩定或者受到干擾;
(2) 若檢測到|θm|大于θd2,且θm小于0,則判定手指有了脫離目標物體回復運動的趨勢,立即恢復充氣,由氣壓傳感器反饋控制輸入一個迭代氣壓值pm進行補償,pm的值預設為5 kPa。此時手指腔室內的氣壓:
p=pf+pd+pm
(5)
并跳轉至Step6繼續進行判定,若|θm|還是大于θd2,繼續輸入一個迭代氣壓值pm,循環此步驟。則抓取穩定時手指腔室氣壓為:
p=pf+pd+n×pm
(6)
其中,n為氣壓的迭代補償次數。
(3) 若檢測到θm有一個巨大的變化值,則判定手指完全脫離了目標物體,該次抓取失敗,則跳轉Step1進行重抓取,重抓取過程中預加載氣壓值設定為初始預加載氣壓值pd加上(n+2)個迭代氣壓值,即:
pd2=pd+(n+2)×pm
(7)
以上就是軟體手基于實時位置檢測的壓力補償包絡抓取算法流程,其中的各項設定值可以根據實際情況進行修改,以獲得更好的抓取效果。
在軟體手基于位置檢測的壓力補償包絡抓取算法中,初始預加載氣壓值是一個很重要的設定參數,是手指剛接觸到目標物體后,對物體施加的預抓取力,在此基礎上通過算法判定決定是否進行壓力補償。如果預加載氣壓值設定過小,抓取較重物體則會增加迭代次數,增加運算量與運算時間,且可能導致進行多次重抓取。如果預加載氣壓值設定過大,則有可能會損壞易碎易損目標物體,且不是最小抓取力。因此,為了簡化控制過程,減少計算時間,提高抓取效率與抓取成功率,需要對目標物體參數進行一定的評估。
根據一般的抓取經驗,對一個任意形狀物體的特征屬性進行模糊評判,將物體本身的特征用3個屬性來描述:形狀、體積和重量。物體的形狀可以分為細長、中等和扁平。物體體積則是與軟體手操作空間相比較,分為三類:較大、中等和較小。同樣將物體的重量和軟體手的最大抓取重量相比較,得到重量的5個分類:很重、較大、中等、較小和很小。
這里主要需要考慮的是目標物體的重量。根據物體材質和大概尺寸,估算物體大概重量。將估算質量代入物體重量的5個分類中。每個重量分類對應一個初始預加載氣壓值。根據大量的試驗結果,設定了手指各指段的預初始預加載氣壓值,如表1所示。

表1 手指各指段初始預加載氣壓值 kPa
對于估算好大概重量的目標物體,根據設定好的手指各指段初始預加載壓力值,進行包絡抓取試驗。
對內骨骼軟體手進行抓取試驗,驗證抓取算法的可行性以及抓取性能。通過硬件平臺、軟件平臺及控制算法的協調配合,即可實現對目標物體的抓取操作。搭建了軟體機械手抓取氣動回路、硬件回路以及軟件控制平臺,如圖6所示,并采用設計的算法完成了軟體機械手的抓取控制。

圖6 軟體手抓取控制平臺原理圖
氣控回路中空氣壓縮機輸出的壓縮空氣經過油霧分離器及減壓閥處理后進入電磁閥組。二位三通電磁閥組控制手指腔室的充放氣狀態,高速開關閥組通過控制氣體輸出流量驅動手各指段。工控機作為控制系統的主機,通過PCI總線數據采集控制板卡控制光耦隔離電路輸出,進而控制電磁換向閥組的方向切換以及高速開關閥組的PWM波占空比,從而控制軟體手運動。手指指段彎曲角度通過嵌入的柔性彎曲傳感器進行實時檢測反饋;手指各指段腔室內氣壓由壓力傳感器采集。軟體手的所有傳感信息經過數據采集控制板卡輸送進工控主機控制系統,完成閉環控制。
軟體手抓取控制系統在Simulink/RTW環境下搭建。抓取時,首先根據目標物體的大致重量以及尺寸估算,給定手指接觸目標位置后的初始輸出壓力迭加值,進行抓取并實時檢測手指位置狀態,并根據采集數據實時調整手指各指段壓力值,進行包絡抓取。
對研制的軟體機械手進行了包絡抓取試驗。選取了9種日常生活中常見的物品作為抓取對象,其尺寸、質量、材質等參數如表2所示,并依次標注了序號。

表2 抓取試驗物體參數
采用設計的控制算法對這9種目標物體進行了自主抓取,抓取試驗結果如圖7所示。

圖7 軟體手包絡抓取試驗結果
待抓取成功且穩定后, 記錄了手指各指段腔室內

表3 包絡抓取不同目標物體指段內氣壓值 kPa
的氣壓值,如表3所示。
同時,對這9中物品進行了多次重復性抓取試驗,測試本研究設計的自主抓取算法的成功率。每樣物品進行了30次抓取試驗,結果如表4所示。分析可以發現,對于具有一定弧度的物品,手爪的抓取成功率很高,接近100%。手爪可以較好地適應物體的表面形狀,有助于抓取成功。而對于柱形或方形物品,手爪的接觸位置如果沒有選取好,則會降低一定的成功率,容易產生滑移,導致抓取失敗。另外對于較重的物品,其抓取成功率較較小質量的物品略低。從整體看,手爪自主包絡抓取成功率在90%以上。

表4 軟體手自主包絡抓取成功率
試驗結果表明:內骨骼軟體手能夠在較大范圍內可靠夾持各種不同形狀、不同重量的物體,且能適應金屬、塑料等不同材質的目標物體,能安全可靠夾持水果等食品以及玻璃等易碎物品,保護物體表面、避免劃痕和損傷。抓取整體成功率在90%以上,因此,研制的關節式內骨骼氣動軟體手可應用于混流柔性生產中。
為了體現新型內骨骼軟體手在承力方面的性能優劣,與純軟體手進行了對比試驗。為此設計了一款相同規格的純軟體手。其具有相同的結構尺寸,包括手指長度、周向尺寸等。該軟體手指只有1個腔室,由氣壓整體驅動。對其氣壓驅動下的承力進行了測量。這里定義手爪承力即為可以抓取的最大物品重量,并與本研究提出的內骨骼軟體手進行了對比分析,試驗結果如表5所示。

表5 手爪驅動與承力對比
從表中可以看出,在最大驅動氣壓150 kPa時,純軟體手的最大承力約為10 N,而內骨骼軟體手最大承力為35 N。這主要是由于新型軟體手的內骨骼結構,手指與被抓取物間的接觸力通過內骨骼傳遞到末端手掌基座,而不是直接由軟體手指本身來承擔,因此內骨骼軟體手的承力功能較純軟體手顯著增大了。
(1) 根據混流柔性生產對機械手提出的性能要求,提出了一種新型的驅動與承力功能分解的關節式內骨骼氣動軟體機械手。軟體手指外部采用周向均勻纏繞纖維的軟體硅橡膠作為手指肌肉,通過氣壓驅動產生軸向拉伸而實現柔順的彎曲變形動作;手指內部植入通過鉸鏈鏈接的剛性單元充當手指的內骨骼結構。這種新結構剛柔并濟,避免了軟體肌肉既承擔驅動功能又承擔承力功能的固有缺陷,在保持軟體手柔順性的同時顯著提高了抓持能力。
(2) 為了對軟體手進行有效的控制,研究了軟體機械手的抓取策略。分析了兩種抓取方式,其中對于包絡抓取模式,提出了一種基于實時位置檢測的壓力補償算法,并通過估算手指各指段的初始預加載氣壓值,提高了抓取成功率與抓取效率。并對軟體手進行了實物抓取試驗,試驗結果表明,軟體手可以對柔軟、不規則、易損易碎物體進行安全可靠抓取,驗證了抓取控制算法的有效性。此外,進行了手爪的驅動力與承力測試,結果顯示內骨骼軟體手的承力較純軟體手有了顯著提高,驗證了內骨骼結構設計的有效性。
研究結果表明,本研究提出的新型關節式內骨骼氣動軟體機械手的設計與自主抓取策略是成功的,可應用于混流柔性生產中,具有工程應用價值。