技術領域:
本發(fā)明屬于人機交互控制技術領域,具體是涉及一種基于模糊強化學習的機械臂柔順力控制方法。
背景技術:
:
在進行機器人輔助微創(chuàng)手術之前,醫(yī)護人員需要根據(jù)病人的個體特征制定相應的手術方案,選擇微創(chuàng)手術的切口位置并以此設定各機械臂的初始姿態(tài)。在執(zhí)行過程中,需要將各機械臂拖拽至微創(chuàng)切口位置并手動調整手術臂的關節(jié)角度,即操作者直接對機械臂施加外力,根據(jù)操作意圖對機械臂各連桿位姿進行相應調整。通常,機械臂以減速器作為機械臂關節(jié)動力的傳動環(huán)節(jié),大減速比及傳動摩擦會使主動關節(jié)的位姿調整變得困難。
目前常見的解決方法主要有兩種:一種是在減速器后安裝電磁制動器,通過控制電磁制動器的動作實現(xiàn)減速器與后端動力輸出部分的脫離與吸合,即所謂的被動順應控制方式。若機械臂在此種方式下進行拖拽,機械臂自身的重力全部由操作者承擔,工作強度增大且難以控制操作精度。此外,由于拖拽過程中各關節(jié)與其驅動電機脫離,為了能夠獲得機械臂調整后的關節(jié)轉動角度,還需要額外增加編碼器記錄關節(jié)的位置變化。電磁制動器和輔助編碼器的引入會增大機械臂的結構尺寸和自身重量,電磁制動器的頻繁吸合也會影響機器人的絕對位置精度。與之相對的另外一種實現(xiàn)方式是在關節(jié)電機處于受控狀態(tài)下,根據(jù)機械臂的受力情況估計操作者的控制意圖,并通過關節(jié)電機驅動機械臂輔助操作者完成預期的位姿調整,即所謂的主動順應控制方式。當前的主動順應控制方法采用在機械臂末端安裝力傳感器方式控制機械臂末端執(zhí)行器在笛卡爾空間內的位置移動,往往關注的是末端工具的位置軌跡而非姿態(tài)調整,加之固定的力交互作用位置也不便于機械臂連桿姿態(tài)的獨立調整,因此并不適用于微創(chuàng)外科手術機器人的主動擺位要求。此外,該類方式也存在一定的問題,若采用固定的控制參數(shù)模型則難以兼顧控制精度和操作感受,若采用可變的控制參數(shù)模型又難以保障人機交互操作的柔順和流暢。
技術實現(xiàn)要素:
:
為解決上述問題,本發(fā)明提出了一種基于模糊強化學習的機械臂柔順力控制方法。
為達到上述目的,本發(fā)明的技術方案如下:
一種基于模糊強化學習的機械臂柔順力控制方法,包括如下步驟:
s1:建立導納控制模型。
s2:獲取機械臂的運動狀態(tài)、操作者施加的外力矩以及環(huán)境回報值。
s3:為了獲得與當前環(huán)境相適應的導納模型參數(shù)調整策略,根據(jù)步驟s2中獲得的相關信息,通過模糊強化學習進行導納模型參數(shù)調整策略的在線訓練,直至算法收斂,以期望獲與當前環(huán)境相適應的變導納控制模型。
s4:將步驟s3中經訓練收斂后的導納參數(shù)調整策略應用于變導納控制模型之中,改變參數(shù)后的導納控制模型根據(jù)操作者施加的外力矩和機械臂關節(jié)的反饋速度計算關節(jié)當前速度值并發(fā)送至關節(jié)驅動電機。
作為上述技術方案的優(yōu)選,所述步驟s3中的模糊強化學習具體包括如下步驟:
s31:將機械臂的運動狀態(tài)以及操作者施加的外力矩作為狀態(tài)變量,在各狀態(tài)變量的論域范圍內劃分多個模糊集合,建立對應的模糊規(guī)則并給出離散動作集合。
s32:根據(jù)當前的狀態(tài)輸入計算各狀態(tài)變量的隸屬度,對狀態(tài)空間進行模糊劃分,計算已激活模糊規(guī)則所對應的權值。
s33:根據(jù)當前的導納模型參數(shù)調整策略選擇離散動作值。
s34:將步驟s3中經訓練收斂后的導納參數(shù)調整策略應用于變導納控制模型之中,根據(jù)操作者施加的外力矩和機械臂關節(jié)的反饋速度計算關節(jié)當前速度值并發(fā)送至關節(jié)驅動電機,從而實現(xiàn)微創(chuàng)外科手術機械臂的主動擺位功能。
s35:根據(jù)當前獲得的環(huán)境回報值更新當前的導納模型參數(shù)調整策略。
s36:重復上述s32-s35步驟,直至算法收斂。
作為上述技術方案的優(yōu)選,還包括如下步驟:
s0:在各機械臂關節(jié)中集成力矩傳感器,所述力矩傳感器用于檢測人機之間的接觸力矩。
作為上述技術方案的優(yōu)選,所述步驟s2中:
采用線性回歸的方式離線識別機械臂的重力補償模型,從而獲取操作者施加的外力矩。
作為上述技術方案的優(yōu)選,所述步驟s2中:
所述機械臂的運動狀態(tài)包括各機械臂關節(jié)的速度及加速度。
本發(fā)明的有益效果在于:
相對于被動順應方式,能夠顯著降低操作者的工作強度,改善定位精度,有助于減小結構尺寸和自重。
相對于固定參數(shù)模型的主動順應方式,具有良好的自適應能力,當接觸力矩增加時,力交互控制模型會主動降低環(huán)境的虛擬阻尼參數(shù),使機械臂的運動速度變化的更快,能夠快速跟隨人手臂的運動趨勢,給人的操作感受會更省力;反之,當接觸力(幅值)逐漸減小時,力交互控制模型會相應地增加虛擬阻尼參數(shù)值以提高人機交互的控制精度,輔助操作者定位,減少過沖量。
相對于時變參數(shù)模型的主動順應方式,人機力交互模型能夠很好地響應操作者的控制意圖,使人機力交互體驗更加流暢自然,更接近日常生活中對實際物體進行操作時的力交互感受。
附圖說明:
以下附圖僅旨在于對本發(fā)明做示意性說明和解釋,并不限定本發(fā)明的范圍。其中:
圖1為本發(fā)明一個實施例的一種基于模糊強化學習的機械臂柔順力控制方法的主動柔順控制流程圖;
圖2為本發(fā)明一個實施例的模糊強化學習流程圖。
具體實施方式:
如圖1所示,本發(fā)明的一種基于模糊強化學習的機械臂柔順力控制方法,包括如下步驟:
s1:建立導納控制模型。
s2:獲取機械臂的運動狀態(tài)、操作者施加的外力矩以及環(huán)境回報值。所述機械臂的運動狀態(tài)包括各機械臂主動旋轉關節(jié)的速度及加速度。
s3:為了獲得與當前環(huán)境相適應的導納模型參數(shù)調整策略,根據(jù)步驟s2中獲得的相關信息,通過模糊強化學習進行導納模型參數(shù)調整策略的在線訓練,直至算法收斂,以期望獲與當前環(huán)境相適應的變導納控制模型。所述步驟s3中的模糊強化學習具體包括如下步驟:
s31:將機械臂的運動狀態(tài)以及操作者施加的外力矩作為狀態(tài)變量(i),在各狀態(tài)變量的論域xi范圍內劃分多個模糊集合,建立對應的模糊規(guī)則并給出離散動作集合a={u1,u2,…,un},其中,μi為當前已激活的模糊規(guī)則(由當前的模糊劃分確定)所對應的離散分動作。
s32:根據(jù)當前的狀態(tài)輸入ii計算各狀態(tài)變量的隸屬度μi(ii),對狀態(tài)空間進行模糊劃分,計算已激活模糊規(guī)則fi所對應的權值wi,其中,fi表示第i個模糊規(guī)則,wi為相應的模糊規(guī)則激活度,即當前各模糊狀態(tài)分量對應的離散動作的權值。
s33:根據(jù)當前的導納模型參數(shù)調整策略選擇離散動作值ui。
s34:將步驟s33中的離散動作值整合成最終的動作輸出值u并將該值用于導納控制模型。
s35:根據(jù)當前獲得的環(huán)境回報值更新當前的導納模型參數(shù)調整策略。
s36:重復上述s32-s35步驟,直至算法收斂。
s4:將步驟s3中經訓練收斂后的導納參數(shù)調整策略應用于變導納控制模型之中,根據(jù)操作者施加的外力矩和機械臂關節(jié)的反饋速度計算關節(jié)當前速度值并發(fā)送至關節(jié)驅動電機,從而實現(xiàn)微創(chuàng)外科手術機械臂的主動擺位功能。
本實施例的控制方法需要在各機械臂關節(jié)中集成力矩傳感器,所述力矩傳感器用于檢測人機之間的接觸力矩。本實施例中采用線性回歸的方式離線識別機械臂的重力補償模型,從而獲取操作者施加的外力矩。不同于傳統(tǒng)工業(yè)機器人的示教方式,微創(chuàng)外科手術機器人的術前擺位過程需要調節(jié)的是機械臂各連桿的空間姿態(tài)而非末端執(zhí)行器在世界坐標系(笛卡爾坐標系)中的空間位置,而通常此類力交互實現(xiàn)方式采用在機械臂執(zhí)行末端安裝六維力傳感器的方式實現(xiàn)交互力信息采集,但這樣做會限制人與機器人進行力交互的作用位置,不利于手術機械臂各連桿位姿的獨立調整。為解決上述問題將力矩傳感器集成到各機械臂主動旋轉關節(jié)之中,通過此種方式可使機械臂與外界環(huán)境的力交互位置擴展至整條機械臂,力矩檢測和力交互控制也更直接可靠。
在關節(jié)空間內,結合實際應用提出了一種基于模糊理論與強化學習算法相結合的變導納控制模型架構。在人機交互過程中,由于人在整個力交互控制回路之中起到引導作用,因此人的操作特性會對力交互效果有較大影響。此外,機械臂動力學特性會隨著控制模型參數(shù)的變化而改變,也會對人機交互產生影響。為了能夠將交互過程中的人為因素和動力學變化考慮到主動順應控制模型之中,采用基于多步時間差分的強化學習方法通過在線學習的方式處理上述因素帶來的問題。同時,模糊理論的引入有助于解決強化學習狀態(tài)空間的泛問題,使柔順力控制算法能夠接收連續(xù)的狀態(tài)輸入并產生連續(xù)的控制參數(shù)輸出。此外為了提取操作者施加的外力矩,采用線性回歸的方式離線識別機械臂的重力補償模型。提出的人機力交互控制方法無需建立相應的任務及環(huán)境模型,具有更快的收斂速度和穩(wěn)定的實際效果。
主動柔順控制過程如圖1所示,模糊強化學習根據(jù)當前的運動狀態(tài)結合經訓練收斂后的離散動作選擇策略獲得當前導納控制模型參數(shù),導納控制模型根據(jù)操作者所施加的外力矩和當前關節(jié)速度控制電機主動順應操作者的控制意圖,以完成力交互任務。模糊強化學習的單步訓練過程如圖2所示,首先根據(jù)當前的狀態(tài)輸入計算各狀態(tài)變量的隸屬度并對狀態(tài)空間進行模糊劃分,根據(jù)當前觸發(fā)的模糊規(guī)則所對應的離散動作權值和探索策略選擇離散動作值并整合輸出最終的導納模型參數(shù)值。將改變參數(shù)的新導納模型用于當前的人機交互過程以獲得當前的環(huán)境反饋并根據(jù)反饋值修正動作權值,使人機交互過程中期望獲得的性能指標趨于最大,不斷迭代上述過程直至算法收斂。
本實施例以單關節(jié)力交互控制為例,對上述方法做進一步說明,如圖1所示,:
以機械臂旋轉關節(jié)當前測得的速度
本實施例所述的一種基于模糊強化學習的機械臂柔順力控制方法,采用模糊強化學習算法,通過在線學習的方式訓練導納參數(shù)的實時調整策略,收斂后的變導納控制策略根據(jù)操作者所施加的外力矩、當前關節(jié)速度和加速度控制電機主動順應操作者的控制意圖,以完成機械臂的主動跟隨任務,無需建立相應的任務及環(huán)境模型,具有更快的收斂速度和穩(wěn)定的實際效果。本方法能夠顯著降低操作者的工作強度,改善定位精度,有助于減小機械臂結構尺寸和自重,人機力交互模型能夠很好地響應操作者的控制意圖,具有良好的自適應能力,可使人機力交互體驗更加流暢自然,更接近日常生活中對實際物體進行操作時的力交互感受。
顯然,上述實施例僅僅是為清楚地說明所作的舉例,而并非對實施方式的限定。對于所屬領域的普通技術人員來說,在上述說明的基礎上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。而由此所引伸出的顯而易見的變化或變動仍處于本發(fā)明創(chuàng)造的保護范圍之中。