劉 杰,歷飛雨
(1.山西工程科技職業(yè)大學,山西 晉中 030619;2.中北大學 儀器與電子學院,山西 太原 030051)
機器人技術是一項多學科融合的復雜技術,它涉及到機械工程、自動控制、傳感器技術、通訊技術等諸多領域[1,2]。按照用途來分,傳統(tǒng)機器人可以分為4類,即工業(yè)機器人、探索機器人、服務機器人和軍事機器人[3]。
近年來,智能人機交互型機器人受到了人們的重點關注[4]。人機交互機器人發(fā)展的核心問題在于,當機器人與人類進行協(xié)同工作時能夠保障人類的安全,及時防止可能發(fā)生的意外碰撞,減輕不可避免或有意的物理接觸[5]。
傳統(tǒng)的機器人的執(zhí)行機構是按照“越硬越好”的傳統(tǒng)原則設計的。由于具有高的力帶寬,剛性驅動器適用于孤立環(huán)境中的位置和速度控制,以及軌跡跟蹤任務。然而,在人機交互的場合中,這些剛性的執(zhí)行機構毫無疑問會對人類造成傷害。
目前,有多種方法可以避免出現(xiàn)上述這一危害,如通過使用力/扭矩傳感器、使用彈性關節(jié)、或使用碰撞檢測算法等方式。其中,通過使用彈性關節(jié)優(yōu)化機器人結構是最常見的方法之一,因為彈性關節(jié)具有柔順運動、吸收沖擊負載、儲能能力和力感知能力強等優(yōu)勢。
盡管彈性關節(jié)有上述許多優(yōu)點,但是由于彈性元件的振蕩,對彈性關節(jié)的位置和速度進行控制無疑具有一定的挑戰(zhàn)性。此外,外界的干擾也會使彈性關節(jié)偏離其初始位置。
在彈性關節(jié)控制算法的相關研究方面,JERRY P[6]在研究中首先提出了彈性關節(jié)的概念,并闡述了其優(yōu)點,提出了PID控制方案;但該方案還有很多不成熟的地方。AlESSANDRO D L[7]研究了在線重力補償?shù)谋壤龑?shù)(PD)控制器理論,但是該控制器的研究也有很大的理論限制,其適用性并不強[8]。李宏勝[9]提出了一種基于帶擾動觀測器(disturbance observer,DOB)的魯棒控制器方案,但該方案仍然停留在理論探討層面,未進行實物設計。TALOLE S E[10]提出了一種基于反饋線性化的軌跡跟蹤控制器。
另外,其他學者對位置控制的反饋線性化和魯棒性符號積分誤差(robust sign integral error,RISE)方法也展開了研究,這些研究整體而言雖不成熟,卻是目前相關領域的主流研究方向[11]。具體而言即是,首先對驅動器的動力學進行了反饋線性化,然后采用RISE方法使系統(tǒng)模型適應不確定性。
為了適應系統(tǒng)參數(shù)的不確定性,BERNHARD P[12]提出了采用模型參考自適應的控制方法,該研究的長處是利用李雅普諾夫理論對所做工作進行了論證推導。KAYA K等人[13]采用自適應狀態(tài)反饋調節(jié)器和常規(guī)PI控制器,對旋轉串聯(lián)彈性執(zhí)行器進行了控制,該研究通過自適應狀態(tài)反饋調節(jié)器定義了串聯(lián)彈性驅動器(series elastic actuator,SEA)的暫態(tài)行為,然后又通過PI控制器減小了跟蹤誤差。張勁恒[14,15]提出了一種具有迭代學習控制環(huán)和串級控制環(huán)的離合器并聯(lián)彈性執(zhí)行器(clutch parallel elastic actuator,CPEA),該研究是將串級控制回路用于控制無刷直流電動機的位置輸出,控制環(huán)用來控制執(zhí)行器的輸出軌跡。
綜上所述,自適應控制的目的是穩(wěn)定系統(tǒng),處理不確定性工況,以消除尚未被釋放的外部力/力矩的影響。
彈性元件在某些彈性關節(jié)中起著非常重要的作用。它們負責吸收意外碰撞,并儲存彈性能量[16]。彈性關節(jié)中的彈簧可以分為扭轉彈簧和拉伸/壓縮彈簧[17]。
此外,由于齒輪傳動系統(tǒng)可以放大電機的扭矩并降低轉速,一些特殊類型的齒輪也用于彈性關節(jié)。這些齒輪機構可以應用應變波傳動,也稱為諧波傳動。宋冠英[18]在研究中提出了一款諧波齒輪傳動機構,該機構由3個基本部件組成,即波發(fā)生器、彎曲花鍵和圓形花鍵。諧波齒輪傳動機構的優(yōu)點是沒有齒隙、結構緊湊、重量輕、體積小、傳動比高、輸入輸出軸同軸;但它也存在著齒輪易磨損、可靠性差等突出問題。
行星傳動機構也可用于彈性關節(jié)。行星傳動機構的優(yōu)點是結構緊湊、效率高、扭矩密度大(即扭矩質量比大)、輸入輸出軸同軸,在尺寸緊湊的情況下可以獲得較好的控制性能。李靖[19]在研究中介紹了一款雙向離合器并聯(lián)彈性執(zhí)行器,該機構包括一個行星差速器,一個扭轉彈簧和兩個制動器;但該結構的能耗大,且難以克服。
基于新型彈性關節(jié),筆者設計出一款可用于人機安全交互的二自由度機械臂系統(tǒng),并提出一種雙反饋回路位置控制算法;最后,利用MATLAB對上述系統(tǒng)及算法進行仿真驗證。
此處所涉及的新型彈性關節(jié)其內部實物圖如圖1所示。
圖1 彈性關節(jié)系統(tǒng)實物圖
整個系統(tǒng)將會受到來自電機噪聲dm和負載噪聲dl的干擾。這些參數(shù)代表外部噪聲和機電系統(tǒng)引起的噪聲。例如機械部件的振動、電子部件的電壓峰值等。
電機端的電機轉矩、彈簧轉矩和電機角位置之間的關系如下:
(1)
式中:θ—電動機角位置;τm—電機扭矩;τs—彈簧反力扭矩;Jm—轉子慣性;Dm—電機阻尼系數(shù)。
彈簧扭矩τs的求解如下:
(2)
式中:q—負載角位置;Ks—彈簧的剛度系數(shù);Ds—彈簧阻尼系數(shù)。
彈簧力矩、外力矩和負載角位置之間相互作用如下:
(3)
式中:Jl—負載慣性;τext—外部扭矩;Dl—負載阻尼系數(shù)。
筆者提出的雙環(huán)路控制目標是考慮了機械臂外部負載擾動和系統(tǒng)參數(shù)不確定性的情況下,控制器依舊能夠跟蹤期望負載角位置[20]。為了實現(xiàn)這一目標,筆者在電機端和負載端均分別使用了不同類型的控制器方案。
雙環(huán)路控制器原理圖如圖2所示。
圖2 雙環(huán)控制器原理圖
負載端采用的是模糊PI控制器(FPIC)方案,用來減少外部擾動對負載的影響。外部擾動是在未知環(huán)境中操作時,由不希望發(fā)生的碰撞所引起的力/力矩。FPIC的輸出被用作電機的期望角位置。對于電機端,筆者采用了模型參考自適應控制器(MRAC)方案,用來處理系統(tǒng)參數(shù)的不確定性問題。不確定的系統(tǒng)參數(shù)可以是負載的慣量,也可以是彈簧的剛度。將FPIC和MRAC相結合,其優(yōu)點是可以實現(xiàn)對不精確系統(tǒng)參數(shù)的獨立性。由于目標是對力的控制,電機的角位置優(yōu)先于負載位置。
1.2.1 模糊PI控制器
筆者在負載端引入彈性集成電路,以應對外部擾動對彈性關節(jié)系統(tǒng)的影響。
模糊控制器可用于解決不確定環(huán)境下的問題,具有高度的非線性化特性。模糊算法是一種基于模糊邏輯的控制方法,它采用“模糊推理規(guī)則”代替“方程”[21]。這些模糊推理規(guī)則可能來自用于控制特定對象、特定動作等的專家的經(jīng)驗。
模糊控制器可以與常規(guī)PID控制器相結合,得到模糊PI、模糊PD或模糊PID控制器等[22]。眾所周知,模糊PI型控制器比模糊PD型控制器更實用,因為模糊PD很難消除穩(wěn)態(tài)誤差[23]。
常規(guī)PI控制器(FPIC)的輸入輸出關系如下:
(4)
式中:Kp—縮放反饋誤差系數(shù);Ki—反饋誤差變化量。
在模糊控制中,需要利用操作者的經(jīng)驗建立模糊推理規(guī)則[24]。然而,誤差的積分比誤差的變化更難分析,因此,筆者對控制信號u進行微分。
FPIC控制器輸入和輸出的隸屬函數(shù)如圖3所示。
圖3 模糊隸屬度函數(shù)
圖3中,c1~c5為需要調整的參數(shù)。這些參數(shù)是在(0,1)范圍內通過試錯方式進行選擇的。隸屬函數(shù)越窄,響應越快,但會犧牲較大的振蕩和超調。誤差與誤差變化的隸屬函數(shù)相似,包括模糊模型的規(guī)則庫:負大(NB)、負小(NS)、零(ZE)、正小(PS)、正大(PB)。在給定NB,NS,ZE,PS和PB等特征與規(guī)則后,控制信號變化的隸屬函數(shù)在輸出上是單調變化的。
根據(jù)輸入和輸出隸屬度函數(shù),筆者建立了25條模糊推理規(guī)則,如表1所示。
表1 25條模糊推理規(guī)則
1.2.2 模型參考自適應控制器
對于系統(tǒng)參數(shù)的不確定性問題,盡管已有了各種各樣的控制算法,但在很多情況下,它會導致不穩(wěn)定狀況的產(chǎn)生。因此,筆者提出了一種模型參考自適應控制器(MRAC)。
MRAC控制器是一種重要的自適應控制器類型[25]。控制器的期望響應是通過參考模型得到的,然后其根據(jù)自適應律與實際系統(tǒng)輸出與參考模型輸出的期望響應的差值對系統(tǒng)參數(shù)進行修正。此外筆者還應用李雅普諾夫穩(wěn)定性理論設計了相應的自適應律(限于篇幅,此處不再贅述)。
接下來筆者介紹彈性關節(jié)和二自由度機械臂的機械設計部分。
彈性關節(jié)機械結構示意圖如圖4所示。
圖4 彈性關節(jié)機械結構示意圖1—負荷端軸;2—蓋子;3—8 mm法蘭軸;4—負載端接頭;5—電機端驅動接頭;6—蓋子;7—法蘭延伸件;8—8 mm法蘭軸;9—電機端軸
為了形成對稱的結構,此處彈性關節(jié)選擇了2個伸展/壓縮彈簧;此外,此處采用拉伸/壓縮式彈簧代替扭轉彈簧,可以使彈性關節(jié)更耐用,能承受更大的力。
基于新設計的彈性關節(jié),筆者設計了一款基于彈性關節(jié)的二自由度彈性機械臂。
該機械臂系統(tǒng)的實物圖如圖5所示。
圖5 基于彈性關節(jié)的二自由度機械臂實物圖
圖5中,機械臂的關節(jié)是彈性轉動關節(jié);電機和彈性關節(jié)由滑輪和皮帶連接;電機與執(zhí)行機構的傳動比為4 ∶1(電機皮帶輪有20個齒,執(zhí)行機構皮帶輪有80個齒)。
在二自由度機械臂中,機械臂使用了一臺12 V的GA25型直流電機,并配有一個4 mm軸和兩個通道的編碼器;變速箱傳動比選擇217 ∶1;
負載端使用CUIAMT20型編碼器。它是一款高精度絕對值模塊化編碼器,可通過串行外設接口(SPI)通信輸出12位的絕對位置信息,采用電容式平臺,不易受到灰塵、污垢和油脂等影響[26]。該元件通過SPI接口設置零位;其工作溫度范圍為-40 ℃~125 ℃。
GA25型直流電機與CUI AMT20型編碼器的實物圖如圖6所示。
圖6 二自由度機械臂的重要硬件組成
筆者對機械臂采用模塊化的控制,即機械臂的每個關節(jié)均由一個獨立的從控制器(STM32最小系統(tǒng)板)進行控制;從控制器直接通過主板上的USB端口與運行在上位機上的主控制器進行通信;每個從控制器的STM32最小系統(tǒng)板都配有定時器,用來捕獲編碼器信號,調制PWM輸出的脈沖寬度;通過H-橋控制電機電壓。控制器的更新頻率為100 Hz(10 ms)。
為了驗證筆者所提出的控制算法對彈性關節(jié)以及機械臂的適用性,筆者對二自由度機械臂系統(tǒng)進行計算仿真實驗。
筆者進行實驗使用的電腦類型為:Lenovo15isk型筆記本電腦,通過其上的MATLAB軟件中的Simulink工具箱建立彈性關節(jié)模型,并進行仿真與分析計算(實驗中使用的機械臂樣機詳見圖5)。
筆者通過Simulink工具箱完成對機械臂的仿真模型圖。其中對電機端的仿真模型圖如圖7所示。
圖7 電機端仿真模型圖
通過Simulink工具箱完成對負載端(彈性關節(jié))的仿真模型圖如圖8所示。
圖8 電機端仿真模型圖
由于MATLAB能夠快速地構建仿真模型,驗證控制方案,此處筆者選擇MATLAB軟件進行試驗。通過計算仿真,筆者給出了彈性關節(jié)在階躍波和正弦波輸入下的響應。
仿真中使用的系統(tǒng)參數(shù)信息如表2所示。
表2 系統(tǒng)參數(shù)信息
筆者給出了負載端在正常情況下的信號響應說明,如圖9所示。
圖9 FPIC-MRAC的負載端響應
圖9中,仿真開始時的不穩(wěn)定階段是MRAC的學習階段。圖9的結果表明,筆者所提出的控制器概念具有響應速度快、誤差小的優(yōu)點。
筆者給出了電機端在無外部轉矩時的信號響應,其階躍響應和正弦響應如圖10所示。
為減小參考模型與實際電機響應之間的誤差,可以根據(jù)自適應定律對系統(tǒng)參數(shù)進行修正。此外,采用李雅普諾夫方法設計自適應律時,可以使用任意大的學習速率系數(shù)γ值。
參考模型和MRAC參數(shù)如表3所示。
表3 參考模型和MRAC參數(shù)
當參考模型的阻尼系數(shù)ξ=1,系統(tǒng)處于振蕩或超調時,會在最小時間內回到平衡狀態(tài)。然而在參考模型圖中有一個小的超調,這是由于FPIC中的積分器中的參考模型造成的,可以通過適當調整Kp系數(shù)來降低超調。
接下來筆者分析外界擾動對彈性關節(jié)的影響,并對上述算法的有效性進行驗證。
假設影響負載端的干擾信號為振幅5 rad、周期0.5 s的正弦波信號,就相當于彈性關節(jié)的振幅為10 rad,則負載端系統(tǒng)和電機端的正弦響應如圖11所示。
圖11 在外界干擾下機械臂的FPIC-MRAC響應
圖11中,當外部轉矩出現(xiàn)時,電機的角位置發(fā)生變化,成功消除了外部轉矩的影響。
在采用雙閉環(huán)控制器后,負載端采用彈性模量集成電路(FPIC)以減小外部干擾的影響,電機端采用彈性模量集成電路(MRAC)處理不確定性。當存在外轉矩時,由柔性集成電路調整電機的期望角位置,使期望負載角位置與實際負載角位置之間的誤差趨于零。
為進一步證明筆者所提出的控制算法的有效性,接下來筆者采用標準PID控制器進行試驗,并將其結果與前者進行比較。
比較結果如圖12所示。
圖12 機械臂PID控制器的負載端響應
圖12中,在正常情況下,PID控制器和FPIC-MRAC控制器的響應相似;但在存在外部干擾時,FPIC-MRAC控制器的響應明顯優(yōu)于PID控制器。
接下來筆者進行人機交互對彈性關節(jié)的影響的實驗。
負載端響應和控制電壓變化曲線如圖13所示。
圖13 人機交互下的負載端響應和控制電壓
由圖13可以看出,關節(jié)1的模擬人機交互出現(xiàn)在20 s~30 s和40 s~45 s;關節(jié)2的模擬人機交互出現(xiàn)在10 s~20 s和30 s~40 s;分析所采集的數(shù)據(jù),結果表明,在受到干擾的情況下,控制器能夠保持機械臂系統(tǒng)的穩(wěn)定。
在實驗中,彈性關節(jié)是通過改變電壓直接控制的。彈性關節(jié)是由電機產(chǎn)生的扭矩控制的,扭矩與電橋輸入的電流成比例。這個電流依賴于施加的電壓,通過調節(jié)PWM脈沖的占空比來控制電壓。
此處以關節(jié)1為例,在正弦波形輸入下,正常狀態(tài)下的角度響應和控制電壓變化情況如圖14所示。
圖14 關節(jié)1在FPIC-MRAC控制器參與下的角度響應
圖14結果表明,電機角度的正峰絕對值大于負峰絕對值。這是由于執(zhí)行器的一個小的制造缺陷,即一側的彈簧比另一側的彈簧更硬。但盡管如此,控制器很明顯仍然跟蹤所需的負載角度,機械臂在控制算法參與下的工作狀態(tài)與預期一致。
根據(jù)提出的彈性關節(jié),筆者設計了一款基于彈性關節(jié)的二自由度機械臂系統(tǒng),并在此基礎上,提出了一種雙環(huán)位置控制算法,以此來控制手臂的各個關節(jié)(其中,內環(huán)使用MRAC來處理系統(tǒng)參數(shù)的不確定性,外環(huán)采用FPIC來減小外部擾動對負載的影響);最后通過實驗驗證了所提出的控制算法的有效性。
研究結果表明:
(1)筆者所提出的控制器概念具有響應速度快、誤差小的優(yōu)點;
(2)當外部轉矩出現(xiàn)時,電機的角位置會發(fā)生變化,由柔性集成電路調整電機的期望角位置,使期望負載角位置與實際負載角位置之間的誤差趨于零,成功消除了外部轉矩的影響;
(3)正常狀態(tài)下,PID控制器和FPIC-MRAC控制器的響應相似;存在外部干擾時,FPIC-MRAC控制器的響應明顯優(yōu)于PID控制器;
(4)在受到干擾的情況下,控制器能夠很好地保持機械臂系統(tǒng)的穩(wěn)定。
在后續(xù)的研究工作中,筆者會考慮用無刷直流電機取代目前的直流電動機,以及擴展機械臂自由度的數(shù)量,以期達到對機械臂進行更高難度的操作與控制的目的。