【技術領域】
本發明涉及機器人領域,具體涉及一種基于軟性手指的控制方法。
背景技術:
機械手是能模仿人手和臂的某些動作功能,用以按固定程序抓取、搬運物件或操作工具的自動操作裝置。為了能把物體抓住而由不因夾持力過大而對物體造成傷害,要解決兩個關鍵問題,一是能感知與測量壓覺和滑覺功能的機器人觸覺傳感器;二是應施加多大的夾持力。
在穩定抓取和靈活使用工具的過程中,人類手指的柔軟性扮演著很重要的作用。隨著新技術的快速發展,仿人機器人的應用也越來越廣泛。現有技術中的機械手的手指大多用剛性材料制作而成。剛性手指與被抓取物品之間的接觸面積小,所需的抓力也很大,不適合抓取用脆性、易碎材料制成的物品(如玻璃杯等)。另外,用剛性手指抓取目標物體最少需要三個手指才能實現穩定抓取。基于上述諸多問題,現在亟需一種新的基于軟性手指的控制方法,采用所述方法,能夠在最大程度上增加軟手指與被抓取物體之間的接觸面積、減小了抓取力、減少了沖擊力;同時引入軟手指模型,解決夾持力控制,能夠降低多個手指同時加持時帶來的計算復雜度,尤其能夠在實時的力的控制時計算出瞬間夾持力以進行手指控制。尤其解決了基于帶有多個軟性手指的仿人機械手的最小抓力算法問題。
技術實現要素:
為了解決現有技術中的上述問題,本發明采用的技術方案如下:一種基于軟性手指的控制方法,所述方法包括如下步驟:
步驟1:機器人確定需要抓取的目標物體;具體為:機器人基于任務指派,搜索需要抓取的待選目標物體;在找到待選目標物體后進行待選目標物體的核對,將經過核對的待選目標物體確定為目標物體;
機器人基于任務指派,搜索需要抓取的待選目標物體;具體為:機器人通過人機交互界面或者遠程終端接收任務指派,解析指派的任務,當任務為抓取任務時,確定需要抓取的目標物體及其基本屬性信息和深度屬性信息,基于基本屬性信息搜索工作空間中的待選目標物體;其中,基本屬性信息描述了目標物體最基本的屬性,所述基本屬性為容易獲取的屬性信息;
在找到待選目標物體后進行待選目標物體的核對,將經過核對的待選目標物體確定為目標物體;具體為:基于深度屬性信息進行目標物體的核對;其中,深度屬性信息描述了目標物體的除了基礎屬性之外的詳細屬性信息;所述深度屬性需要進行進一步計算或者啟動一個或者多個傳感器來獲取;
步驟2:獲取確定的目標物體的形狀;將所述形狀用于最小抓力的計算中;
步驟3:機器人確定目標物體的位置,并驅動軟性手指抓取目標物體;
步驟4:在抓取目標物體以及后續移動過程中,實時計算最小抓力,并基于最小抓力來進行軟性手指的夾持。
進一步的,步驟4具體為:通過目標物體的基本屬性和深度屬性信息,確定目標物體是否為脆性物體,如果是,實時計算最小抓力,并基于最小抓力來進行軟性手指的夾持;所述最小抓力為指尖與物體保持壓接觸且不發生相對滑動的最小的抓力;如果目標物體不是脆性物體,則不計算最小抓力,基于物體的質量查找預設抓力,并基于所述預設抓力進行目標物體的夾持。
進一步的,步驟4中的實時計算最小抓力,包括,步驟a1:建立軟性手指的線性接觸模型;步驟a2:建立機械手目標物體抓取模型;a3:基于步驟a1和a2建立的模型,通過拉格朗日乘子計算多個軟性手指對物體的最小抓力。
進一步的,所述步驟a1:建立軟性手指的線性接觸模型,具體為:設置每個軟性手指的接觸力f與手指形變量d之間的線性關系;
其中:公式(1)采用每個軟性手指頂面的中心點為原點的lt局部坐標系(n個手指有n個lt局部坐標系);f為軟性手指和目標物體之間的接觸力,n個軟性手指在n個接觸點的接觸力表示為f1~fn;e是預設值,所述預設值和手指的材料相關,可以根據經驗或者收斂算法來確定;d為軟性手指沿z方向的形變量最大值;
進一步的,所述步驟a2:建立機械手目標物體抓取模型,具體為:a21建立機械手抓取模型和a22軟性手指接觸模型。
進一步的,a21:建立機械手抓取模型,具體為:
建立目標物體的運動方程,目標物體的運動方程采用的是坐標系0;
其中;
其中:fi是第i個軟性手指在第i個接觸點的接觸力,也即第i個手指接觸目標物體所產生的fix,fiy,fiz三個力的合力,其中,fix,fiz分別是fi的切向分量,fiy是fi的法向分量;fc是用向量的形式表示的多個軟性手指對目標物體的接觸力,
進一步的,所述a22:建立軟性手指接觸模型,具體為:
fc=w#fr+ny公式(3)
多個軟性手指對物體的接觸力分為二個部分,w#fr稱為操作力,ny(即n×y)是抓握時產生的內力,內力不產生位移;
進一步的:
w#fr=[fo1tfo2t…font]t
n=[n1tn2t…nnt]t
其中:
在接觸點pi的內部單位法向量可以表示為:
其中;eni為第i個手指在法向上的內部單位法向量,grads(pi)為接觸點pi的梯度,s(x,y,z)=0為目標物體的形狀;
設置約束條件gi(y):gi(y)是應用于第i根手指的約束條件;
gi(y)≤0fori=1,...,2n公式(5)
具體的:
其中;eni-n和foi-n的下標i的取值范圍為i=n+1,…,2n,μi是庫侖摩擦系數,μsi是扭矩系數,e3是基于軟手指材料和手指結構的預設值,并且可以在機械手在抓取目標物體的過程中進行修正值;n是軟性手指的數量;b0和bi(b1~bn)為中間變量。
進一步的,軟性手指有有三個獨立關節,指尖為半球狀,指尖外面包覆一層硅酮橡膠。
進一步的,在機械手目標物體抓取模型中,建立以目標物體的質心為坐標系的原點的坐標系0為目標物體;p是接觸點,p1~pn為n個軟性手指的接觸點,建立以軟手指與目標物體的接觸點pi為原點的局部坐標系li。
進一步的,所述a3:基于步驟a1和a2建立的模型,通過拉格朗日乘子計算多個軟性手指對物體的最小抓力,具體為:
等效的將接觸力fc最小化的設置為:
設置h(y)=(w#fr+ny)t(w#fr+ny);
引入一個拉格朗日乘子λ進行約束優化,將約束條件函數g(y)與原函數h(y)聯系到一起,配成與變量數量相等的等式方程,從而求函數h(y)在g(y)=0的約束條件下的最小值;拉格朗日乘子λ表示為:
l(y;λ)=h(y)+λtg(y)公式(6)
其中;l(y;λ)為求解最小值的增廣拉格朗日函數;
產生h(y)的局部最小值的必要條件是:
從上述公式得出:
得出最小值h(y)時的yo的值之后,設置y=yo,計算最小的內力ny,進而由公式(3)獲取最小接觸力fc作為最小抓力。
采用本發明,能夠在最大程度上增加軟手指與被抓取物體之間的接觸面積、減小了抓取力、減少了沖擊力;同時引入軟手指模型,解決夾持力控制,能夠降低多個手指同時加持時帶來的計算復雜度,尤其能夠在實時的力的控制時計算出瞬間夾持力以進行手指控制。
【附圖說明】
此處所說明的附圖是用來提供對本發明的進一步理解,構成本申請的一部分,但并不構成對本發明的不當限定,在附圖中:
圖1是本發明的軟性手指形變模型的示意圖。
圖2是本發明的機械手抓取模型的示意圖。
圖3是本發明的軟性手指接觸模型的示意圖。
【具體實施方式】
下面將結合附圖以及具體實施例來詳細說明本發明,其中的示意性實施例以及說明僅用來解釋本發明,但并不作為對本發明的限定。
參見附圖1,是本發明所應用的一種基于軟性手指的控制方法,所述方法包括如下步驟:
步驟1:機器人確定需要抓取的目標物體;具體為:機器人基于任務指派,搜索需要抓取的待選目標物體;在找到待選目標物體后進行待選目標物體的核對,將經過核對的待選目標物體確定為目標物體;
機器人基于任務指派,搜索需要抓取的待選目標物體;具體為:機器人通過人機交互界面或者遠程終端接收任務指派,解析指派的任務,當任務為抓取任務時,確定需要抓取的目標物體及其基本屬性信息和深度屬性信息,基于基本屬性信息搜索工作空間中的待選目標物體;其中,基本屬性信息描述了目標物體最基本的屬性,所述基本屬性為容易獲取的屬性信息;
例如:抓取任務中指定需要抓取水杯,則所述任務為抓取任務,確定所述任務中需要抓取的目標物體為水杯,屬性信息為白色、玻璃、水杯;基于所述屬性信息,在工作空間中搜索屬性信息匹配的目標物體;
在找到待選目標物體后進行待選目標物體的核對,將經過核對的待選目標物體確定為目標物體;具體為:基于深度屬性信息進行目標物體的核對;其中,深度屬性信息描述了目標物體的除了基礎屬性之外的詳細屬性信息;優選的:深度屬性信息包括:尺寸、透光度、體積等信息,所述深度屬性需要進行進一步計算或者啟動一個或者多個傳感器來獲取;
例如:通過傳感器獲取待選目標物體的深度屬性信息,逐個的進行所有待選目標物體的核對;對于一個待選目標物體,進行其深度屬性的逐項對比,當所有深度屬性均匹配時,則確定所述一個待選目標為確定的目標物體;
步驟2:獲取確定的目標物體的形狀,將所述形狀用于最小抓力的計算中;
優選的:機器人通過圖像傳感或者紅外線反射等方式獲取目標物體的形狀,將形狀表示為s(x,y,z)=0;(x,y,z)為空間坐標;
步驟3:機器人確定目標物體的位置,并驅動軟性手指抓取目標物體;
優選的,抓取目標物體的手指數量為二個或者多個。
步驟4:在抓取目標物體以及后續移動過程中,實時計算最小抓力,并基于最小抓力來進行軟性手指的夾持;
優選的:通過目標物體的基本屬性信息和深度屬性信息,確定目標物體是否為脆性物體,如果是,實時計算最小抓力,并基于最小抓力來進行軟性手指的夾持;如果目標物體不是脆性物體,則不計算最小抓力,基于物體的質量查找預設抓力,并基于所述預設抓力進行目標物體的夾持;保存質量和預設抓力之間的對應關系;所述質量通過體積和密度計算得到;
所述最小抓力為指尖與物體保持壓接觸且不發生相對滑動的最小的抓力,無需計算出每個瞬間的夾持力;本方法解決了基于帶有多個軟性手指的仿人機械手的最小抓力算法問題;
優選的:將用于感知與測量壓覺和滑覺功能的機器人觸覺傳感器安裝在手指的凹槽中,以精確感知和測量手指和目標物體之間的距離和抓力的大小。
優選的:夾持所需的抓力的大小與機械手指的軟硬、夾持的位置、目標物體的重量、被抓取的目標物體在運動中產生的慣性力、振動及傳動效率等因素有關,在抓取和移動目標物體的過程中實時計算最小抓力;
步驟4中的實時計算最小抓力,具體為:
步驟a:建立二個模型,第一模型:軟性手指的線性接觸模型,第二模型:機械手目標物體抓取模型;
a1:建立軟性手指的線性接觸模型,具體為:設置每個軟性手指的接觸力f與手指形變量d之間的線性關系;
其中:公式(1)采用每個軟性手指頂面的中心點為原點的lt局部坐標系(n個手指有n個對應的lt局部坐標系);f為軟性手指和目標物體之間的接觸力,n個軟性手指在n個接觸點的接觸力表示為f1~fn;e是預設值,所述預設值和手指的材料相關,可以根據經驗或者收斂算法來確定;d為軟性手指沿z方向的形變量最大值;
附圖1是y=0的剖面圖,
a2:建立機械手目標物體抓取模型,具體為:建立機械手抓取模型和軟性手指接觸模型;
機械手目標物體抓取模型由處于三維空間的目標物體和多指機械手組成;機械手由n個軟性手指組成(n≥2),且由軟性手指的指尖接觸目標物體;對于軟性手指接觸,指尖對物體除施加接觸力外,還施加一個沿法向的扭矩;
優選的:軟性手指由硅酮橡膠制成;大大增加了機械手指與被抓取物體之間的接觸面積,減小了抓取力;優選的:軟性手指有有三個獨立關節,指尖為半球狀,指尖外面包覆一層硅酮橡膠;
在機械手抓取模型中,建立以目標物體的質心為坐標系的原點的坐標系0為目標物體,p是接觸點(p1~pn為n個軟性手指的接觸點);建立以軟手指與目標物體的接觸點pi為原點的局部坐標系li。
優選的:在物體抓取過程中建立力封閉模型,力封閉模型確保任何外力都能得到平衡;力封閉確保任何外力都能得到平衡,力封閉是穩定抓取的前提。基于此,在進行最小抓力的計算過程中需要滿足手指與目標物體相互接觸且無滑動,每個接觸點處的接觸力fi必須位于摩擦錐內,即接觸力的切向分量必須不大于其法向分量與摩擦系數的乘積;
為了保證多指手能夠完成穩定的抓取,在操作的過程中,多指手的抓取必須滿足力平衡的條件,即所有作用在目標物體上的力(包括手指的抓取力和外力)其矢量和必須為零,如果手指作用在接觸點的力可以抵消作用在物體上的任意力旋量,那么稱該抓取滿足力封閉條件。通常要求抓取物體的操作過程中滿足力封閉條件。如果抓取滿足力封閉條件,就可以根據作用在物體上的外力,求解各手指的抓取力。作用在剛體上的任何力系都可以合成為一個沿某直線的集中力和繞該直線的力矩,這一廣義力即為力旋量;
a21:建立機械手抓取模型,具體為:
建立目標物體的運動方程,目標物體的運動方程采用的是坐標系0;
其中;
其中:fi是第i個軟性手指在第i個接觸點的接觸力,也即第i個手指接觸目標物體所產生的fix,fiy,fiz三個力的合力,其中,fix,fiz分別是fi的切向分量,fiy是fi的法向分量;fc是用向量的形式表示的多個軟性手指對目標物體的接觸力,
a22:建立軟性手指接觸模型,具體為:
fc=w#fr+ny公式(3)
多個軟性手指對物體的接觸力分為二個部分,w#fr稱為操作力,ny(即n×y)是抓握時產生的內力,內力不產生位移;優選的:內力指其在抓握時,接觸點處作用于目標物體但并不引目標起物體總的受力及力矩變化的力,內力使手指與物體滿足靜摩擦約束,防止沿物體表面滑動;
進一步的:
w#fr=[fo1tfo2t…font]t
n=[n1tn2t…nnt]t
其中:
a的零空間矩陣是一組由ker(a)={x∈cn:ax=0}定義的n維向量,即線性方程組ax=0的所有解x的集合;其中a為一個m*n的矩陣。矩陣可以看做一組列向量c1,c2,...,cn,如果這組向量是線性無關的,那么ax=0的解空間只包含一個向量:零向量。反之,如果零空間包含非零向量,說明矩陣的列向量線性相關。
在接觸點pi的內部單位法向量可以表示為:
其中;eni為第i個手指在法向上的內部單位法向量,grads(pi)為接觸點pi的梯度,s(x,y,z)=0為目標物體的形狀;
設置約束條件gi(y):gi(y)是應用于第i根手指的約束條件;
gi(y)≤0fori=1,...,2n公式(5)
具體的:
其中;eni-n和foi-n的下標i的取值范圍為i=n+1,…,2n,μi是庫侖摩擦系數,μsi是扭矩系數,e3是基于軟手指材料和手指結構的預設值,并且可以在機械手在抓取目標物體的過程中進行修正值。n是軟性手指的數量;b0和bi(b1~bn)為中間變量。
a3:基于步驟a1和a2建立的模型,通過拉格朗日乘子計算多個軟性手指對物體的最小抓力;
等效的將接觸力fc最小化的設置為:
設置h(y)=(w#fr+ny)t(w#fr+ny);
引入一個拉格朗日乘子λ進行約束優化,將約束條件函數g(y)與原函數h(y)聯系到一起,配成與變量數量相等的等式方程,從而求函數h(y)在g(y)=0的約束條件下的最小值;拉格朗日乘子λ表示為:
l(y;λ)=h(y)+λtg(y)公式(6)
其中;l(y;λ)為求解最小值的增廣拉格朗日函數;
產生h(y)的局部最小值的必要條件是:
從上述公式得出:
其中;
得出最小值h(y)時的yo的值之后,設置y=yo,計算最小的內力ny,進而由公式(3)獲取最小接觸力fc作為最小抓力;
本發明的一種基于軟性手指的控制方法,能夠在最大程度上增加軟手指與被抓取物體之間的接觸面積、減小了抓取力、減少了沖擊力;同時引入軟手指模型,解決夾持力控制,能夠降低多個手指同時加持時帶來的計算復雜度,尤其能夠在實時的力的控制時計算出瞬間夾持力以進行手指控制。尤其是解決了基于帶有多個軟性手指的仿人機械手的最小抓力算法問題。
以上所述僅是本發明的較佳實施方式,故凡依本發明專利申請范圍所述的構造、特征及原理所做的等效變化或修飾,均包括于本發明專利申請范圍內。