盧勇威,黃良永
(1.廣西職業技術學院,南寧530227;2.廣西科技師范學院,來賓546199;3.武漢理工大學,武漢410082)
無刷直流電動機[1](以下簡稱BLDCM)具有調速性能好、效率和可靠性高等優點,被廣泛應用在機器人領域。為了實現機器人的精確控制,電機驅動系統的性能尤為重要。在機器人的控制中通常采用閉環控制系統,其中,比例-積分-微分(以下簡稱PID)[2]控制技術最為常見。
本文以BLDCM驅動的單連桿機器人為研究目標,單連桿機器人只包含一個可平面360°轉動的機械臂。由于單連桿機器人在運動過程中受到的重力、向心力不同,致使其動力學模型具有非線性[3]。因此,傳統PID控制器不能滿足其非線性要求。機器人與人類不同,缺乏使用不準確信息解決問題的能力。為此,學者在 PID控制中融入了模糊理論[4],模糊控制器不需要了解系統的精確模型,使用語言規則來解決系統非線性問題[5]。因此,在存在參數變化和負載擾動下,模糊PID控制器仍然能夠較好地工作。
基于上述分析,采用了一種新型的參數自整定模糊PID控制器,將模糊推理和PID控制相結合,并融入了參數自整定技術,以此動態調整PID參數,從而精確控制單連桿旋轉機器人的位置。通過Simulink仿真和實際實驗,證明了控制系統具有較高的控制精度,并對機械臂重力具有較好的魯棒性。
單連桿旋轉機器人可以根據安裝方式的不同,在垂直面或水平面轉動。在水平面轉動過程中,由于作用在機械臂中心的重力是一個常數,所以有效負載沒有改變[6]。然而,在垂直面轉動過程中,有效負載與它的運動方向有關。圖1顯示了機械臂在垂直面的360°范圍內旋轉時,由于重力引起的負載轉矩的變化曲線。

圖1 單連桿機械臂在垂直面旋轉時的轉矩曲線
當機械臂以順時針方向旋轉時,重力會施加一個向下的力。為此,電機前半圈需要執行驅動,后半圈執行制動。其中電機驅動轉矩在90°處最大,制動轉矩在270°處最大。同理可知,當機械臂以逆時針方向旋轉時也會出現同樣的場景。然而,由于機械臂運動需要保持穩定,速度不能受負載轉矩變化的影響,以此來確保機械臂能夠準確到達目的位置。
電機的負載轉矩曲線在兩個方向上都類似于正弦波。因此,電機轉矩Tm可定義如下:
Tm=TLsinθ(1)
式中:TL為機械臂重力引起的最大有效負載轉矩;θ為機械臂的角度位置。
由于機械臂在垂直面旋轉時,負載轉矩在不斷變化,所以需要一種魯棒性好的控制系統。本文的位置控制系統框架如圖2所示。

圖2 機械臂位置控制系統框圖
機械臂直接與電機傳動軸相連接,并通過正交編碼器[7]來獲取機械臂的實際位置。通過比較機械臂的實際位置和設定位置獲得位置誤差,并反饋到位置控制器中。本文中,位置控制器采用了參數自整定模糊PID控制模型,輸出為參考直流電流值。接著,將電流絕對值與實際測量的電流值Idc進行比較,得到電流誤差反饋到電流控制器中。同樣,電流控制器采用了參數自整定模糊PID控制模型。電流控制器的輸出決定了電機驅動器的選通脈沖信號占空比。電機驅動器根據霍爾信號和電流控制器的輸出來產生PWM信號,用來控制電機逆變器選通,從而控制電機轉動。
在機械臂位置控制系統中,位置控制器和電流控制器是系統的核心,直接影響控制精度。這些閉環控制系統通常使用PID控制器,傳統PID結構簡單且容易操作,但是其性能較差,容易受到負載擾動和命令改變的影響。此外,控制增益的設計涉及復雜的數學建模。為此,本文采用了模糊PID控制器[8-9],它不需要復雜的數學建模,并且對工作環境的變化具有較好的魯棒性。
參數自整定模糊PID控制器是利用模糊推理系統,根據系統實時控制誤差參數來自適應地調節PID參數,使控制器能夠根據環境變化達到最優設置。參數自整定模糊PID控制器的基本結構如圖3所示。

圖3 參數自整定模糊PID的基本結構
將測量誤差E和誤差變化量EC作為PID控制器的輸入,可以用來防止由于直接觸發微分過程而產生參考信號的階躍變化[10]。同時,將這兩個參數也作為模糊推理系統的輸入。模糊推理系統中使用的隸屬度函數的范圍為±1,因此,在模糊推理之前和之后需要對信號進行歸一化和去歸一化操縱。另外,位置控制器的輸出為參考電流幅值±I*dc,電流控制器的輸出為選通脈沖占空比(0~1)。
模糊推理系統分為4個步驟:1)模糊化;2)基于If-Then規則的知識庫;3)模糊推理;4)去模糊化。模糊推理系統根據E和EC參數,通過模糊規則決策出最佳PID控制器參數Kp和Kd。
在本文中,輸入和輸出變量是通過隸屬度值為0.5的三角隸屬度函數進行映射[11]。其中,具有7個語言變量,即負大(NL),負中(NM),負小(NS),零(ZO),正小(PS),正中(PM)和正大(PL)。另外,推理機中采用Mamdani型推理機制[12],去模糊化過程采用重心法。圖4分別顯示了輸入和輸出的隸屬度函數。

圖4 隸屬度函數
推理機基于7×7=49個模糊規則進行推理,模糊規則矩陣如表1所示。其中,矩陣的最頂行和最左列分別表示變量“E”和“EC”的模糊集,矩陣的主體為變量“u”。

表1 模糊規則矩陣
推理過程分為兩個階段:1)根據輸入的E和EC參數,對所有規則進行查詢比較以確定適用于當前場景的規則;2)根據選擇的規則作出控制決策。
這里使用“AND”操作對各規則的決策進行融合,以此作出最終決策,表達式如下:
μ(z)=min{μ(x),μ(y)} (2)
接著,對模糊推理得到的控制決策μ(z)進行去模糊化操作,即將模糊決策轉換為實際值輸出。其中,本文采用重心法來去模糊化。λ(E,EC)權重系數的表達式如下:

最后,PID控制器的自整定參數計算如下:

式中:λ為權重系數;KpMax,KpMin,KdMax,KdMin分別為比例增益和差分增益的最大和最小限制值。
通過MATLAB/Simulink構建單連桿機器人位置控制器的仿真模型,其中,電機模型參數根據魔力公司的TETRA系列BLDCM設定,如表2所示。

表2 電機參數
為了驗證模糊PID控制系統的可行性,并將其與傳統PID控制器的性能進行比較。根據機械臂的運動方向,執行4個仿真實驗,即順時針從0°轉動到180°;順時針從 180°轉動到 360°;逆時針從 360°轉動到180°;逆時針從180°轉動到0°。同時對電機施加一個最大1 N·m的正弦型負載轉矩來模擬機械臂受重力的影響(見圖1)。

圖5 正向電動模式(0°~180°)動態曲線
圖5 給出了實驗1中機械臂位置和電機轉速的動態曲線。當機械臂從0°~180°順時針轉動時,驅動器執行正向電動模型,重力轉矩為正,且在90°處最大。可以看出,傳統PID控制機械臂轉動到指定位置需要0.35 s的建立時間,而模糊PID只需要0.25 s。
圖6給出了實驗2中機械臂位置和電機轉速的動態曲線。在機械臂從180°~360°順時針方向向下轉動時,驅動器執行正向制動模式,重力轉矩為負。可以看出,傳統PID的建立時間為0.2 s,比在正向電動模式中快。這是由于受到重力的影響,使機械臂向下轉動速度變快,說明其對重力的魯棒性較差。而模糊PID的建立時間為0.25 s,等于正向電動模式中的時間,具有較好的控制穩定性。另外可以看出,傳統PID的過沖現象比較嚴重,而模糊PID則很小。

圖6 正向制動模式(180°~360°)動態曲線
同樣,圖7和圖8分別給出了實驗3和實驗4中,機械臂沿逆時針(360°~0°)轉動時,機械臂位置和電機轉速的動態曲線。其結果與順時針轉動實驗類似,進一步證明了模糊PID控制器性能優越。

圖7 反向電動模式(360°~180°)動態曲線

圖8 反向制動模式(180°~0°)動態曲線
為了更加直觀地比較傳統PID和模糊PID的性能,表3列出了建立時間、最大過沖百分比和穩態誤差百分比的比較結果。可以看出,模糊PID控制器要比傳統PID控制器性能更優越。

表3 仿真結果比較
構建了實際實驗平臺,通過DSP編程實現模糊PID控制器,單桿機械臂與電機軸傳動機構連接,機械臂長度約為35cm,質量約為2 kg,經過傳動機構后,由重力產生的電機負載扭矩最大約為1 N·m。電機參數如仿真分析中的表2所示。另外,利用三相智能功率模塊來驅動電機。
圖9分別給出了機械臂沿順時針方向從0°轉動到180°時,在具備傳統PID和模糊PID的控制器中,機械臂位置曲線和電機轉速曲線。可以觀察到,傳統PID控制器的位置建立時間約為0.37 s,而模糊PID需要約0.26 s,實驗結果和仿真結果相似。說明了模糊PID控制器能夠快速且穩定地控制機械臂轉動到設定位置。

圖9 正向電動模式(0°~180°)的響應
圖10 分別給出了機械臂沿順時針方向從180°轉動到360°時,傳統PID和模糊PID控制器的機械臂位置和電機轉速曲線。

圖10 正向電動模式(180°~360°)的響應
從圖10可以看出,由于重力作用,傳統PID控制器的建立時間約為0.21 s,而模糊PID約0.25 s,與0°~180°轉動時基本相同。這個對比結果說明了模糊PID控制器對重力具有較好的魯棒性。另外,從圖10(b)中可以看出模糊PID控制器沒有明顯的過沖現象,穩定性較好。
本文采用了一種基于模糊PID的BLDC轉速控制系統,用于垂直旋轉單連桿機器人的位置控制。在機器人控制系統中的位置控制和電流控制模塊中采用了模糊PID技術,以此通過調節電機轉速實現對機械臂位置的精確控制,并對由機械臂重力引起的轉矩變化具有魯棒性。仿真和實驗結果都證明了該系統的可行性和有效性,具有較高的實用價值。
[1]周里津.清洗機器人無刷直流電機驅動系統的設計[D].武漢:武漢理工大學,2012:12-13.
[2]張釗,郭亮.層疊繞組式磁懸浮永磁直流平面電機PID控制系統研究[J].浙江理工大學學報,2014,31(9):525-531.
[3]SUVILATH S,KHONGSOMBOUN K,BENJANARASUTH T,et al.IMC-based PID controllers design for a two-links SCARA robot[J].2011,58(11):1030-1034.
[4]徐敬召,李聲晉,盧剛,等.基于模糊PID算法的雙閉環電機伺服系統設計[J].微特電機,2013,41(10):40-43.
[5]梁娟,趙開新,陳偉.自適應神經模糊推理結合PID控制的并聯機器人控制方法[J].計算機應用研究,2016,33(12):3586-3590.
[6]ALASSAR A Z,ABUHADROUS IM,ELAYDIH A.Comparison between FLC and PID Controller for5DOF robotarm[C]//International Conference on Advanced Computer Control.2010:277-281.
[7]張濤,楊振強,王曉旭.應用eQEP及編碼器測量電機位置與速度的方法[J].電氣傳動,2011,41(4):48-51.
[8]張琪琪,儲春華.基于神經網絡模糊PID的步進電動機控制系統[J].微特電機,2015,43(8):90-94.
[9]PRIYA K,KUMAR C S.A comparative analysis of PI and fuzzy logic speed control in BLDC motor[J].International Journal of Applied Engineering Research,2015,10(20):15885-15889.
[10]BEGUM A Y,MARUTHEESWAR G V,SWAMY K A.tuning of pid controller for superheated steam temperature system using modified zeigler-nichols tuning algorithm[J].International Journal of Engineering&Advanced Technology,2013,24(5):541-543.
[11]焦軍武,盧剛,李聲晉,等.模糊PID算法在電動執行器控制系統中的應用[J].微特電機,2014,42(6):55-57.
[12]王萬良,石浩,李燕君.基于Mamdani型模糊推理的加權質心定位算法[J].計算機科學,2015,42(10):101-105.