楊彬彬,單 梁,戚志東,呂 璐,錢建新
(南京理工大學 自動化學院,南京 210094)
PID控制是最早發展起來,也是迄今為止最通用的控制方法[1]。在工業控制過程中,95%以上的回路具有PID結構,而且許多高級控制都是以PID控制為基礎的。PID參數的調節和優化決定了控制系統最終能達到的控制性能,所以PID參數的整定過程是控制系統設計的核心。
實際工程中,PID控制器的參數調節往往依賴技術人員的調試經驗,這不僅需要熟練的技巧,往往還相當費時。隨著技術理論的發展,出現了區別于傳統整定方法的智能整定方法。文獻[2-3]分別將模糊自整定PID算法應用在駕駛機器人油門機械腿控制和直流鍋爐機組控制中,均說明了基于該方法的控制系統具有較強的魯棒性和良好的動態性能,但模糊控制規則的確定較為困難;文獻[4]在無刷直流電機控制系統中應用了基于專家整定的PID控制方法,該方法具有快速、準確的參數整定優勢,但專家知識庫的建立存在局限性;文獻[5]將基于遺傳算法的自適應PID控制應用在工業過程中,該整定方法具有全局性,但遺傳算法理論上還不完善;文獻[6]對基于粒子群算法的參數整定做了相應研究,指出了其并行全局搜索的特點,但其實際實現比較復雜。
基于智能算法的PID參數整定雖然能夠實現,但其計算量大、適用性窄、理論尚不完善、收斂性差等問題不可忽視。自1922年美國的Nicholas Minorsky提出PID控制器的設計方法以來,PID控制器的應用及其參數整定已經經過了幾十年的改進與發展,在這期間人們積累了大量的實用經驗,基于此本文結合二分查找法和插值查找法提出一種復合參數整定方法,并在實際伺服系統中進行了驗證。
自整定模糊PID控制是應用廣泛的一種智能PID控制方法,可以取得很好的控制效果,但其存在計算量大、過程復雜、不利于計算機控制實現等缺點。而且,一些慣量大的伺服系統,要求速度快、控制精度高,用常規PID算法不能滿足系統要求,為獲得更好的控制效果,本文將自整定模糊PID控制的思想與常規PID控制相結合,提出智能分區PID控制算法。
智能分區PID控制算法通過檢測系統誤差所處的區域,采取不同的控制策略或者控制參數,其示意圖如圖 1所示,θ1、θ2和 θ3是跟蹤誤差絕對值。

圖1 智能分區PID控制算法Fig.1 Intelligent partition PID control algorithm
當系統誤差處于Ⅳ區(急速區)時,采用Bang-Bang控制策略,使系統盡快向消除誤差的方向運動,提高系統的快速性。
當系統誤差處于Ⅲ區(減速區)時,選取Kp2較小、Kd2較大,兩者在此區為恒值。減速區的作用是使電機軸角速度迅速下降,防止系統從Bang-Bang區以最大速度直接進入Ⅰ區出現大振蕩,減小系統超調量,縮短調節時間。
當系統誤差處于Ⅰ區(精調區)時,選取的Kp1較大、Kd1和Ki較小,三者在此區為恒值,這樣的參數選擇主要考慮系統在跟蹤等速、正弦信號時均工作在Ⅰ區,本區控制的目標是保證系統的靜止誤差和穩態誤差的精度要求。精調區范圍的大小根據工程經驗取值,一般為最大跟蹤精度范圍的3~5倍,以保證此區間內控制量變化平穩。
系統從減速區到精調區,由于Kp和Kd的變化,控制量上的不連續會直接表現為系統運行的不平穩。為了減少不平穩運行對機械結構的損壞,控制方案在減速區和精調區之間設置了Ⅱ區(過渡區)。此區中,Kp和Kd的值是線性變化的,Kp由減速區的Kp2線性增大到精調區的Kp1,Kd由減速區的Kd2線性減小到精調區的Kd1。
對于Ⅰ型系統的伺服系統而言,如果PID控制器中不含積分環節,階躍響應是無靜差的,但對速度信號和正弦信號的響應都會存在穩態誤差。積分環節的作用有利于消除靜差,但會影響系統的穩定性,使系統過渡過程變長[7]。為了滿足系統對各種信號的高精度動態跟蹤要求,本文的分區PID控制選用PD控制,同時在此基礎上引入了前饋控制信號,即增加前饋通道以超前的控制來補償系統的動態滯后,且不影響原閉環系統的穩定性,共同構成復合控制。
分區PID復合控制原理如圖2所示。

圖2 分區PID復合控制原理Fig.2 Block diagram of partition PID composite control
圖中,分區 PID 控制量 F1(s)為

式中:θ為架位差的絕對值;CtrlConst表示 Bang-Bang區控制量;Kp和Kd分別為

可以看出,分區PID復合控制算法需要確定的參數有 Kp1、Kp2、Kd1、Kd2、Kq和 Kqq,其中 Kp2和 Kd2可以直接計算得到,將在下文中介紹。
復合參數整定法根據二分查找法思想整定Kp1和Kd1,根據插值查找法思想整定Kq和Kqq,最終整定出一組滿足系統性能要求的控制參數。該整定法需要伺服系統的性能指標數據和實際運行的誤差進行分析計算,表1中列出了系統響應階躍、等速和正弦信號的性能指標參數和整定算法需要的誤差數據。

表1 性能指標參數和實際誤差數據表Tab.1 Table of performance index parametersand actual error data
所謂的二分查找法,是根據二進制檢索的思想,已知變量的最小值與最大值(從左往右變大),取中間值作為比較對象,若中間值對應的關鍵字與給定值相等,則查找成功;若給定值小于中間值的關鍵字,則在中間值左半區繼續查找;否則,在右半區查找。不斷重復,直到查找成功或者查找失敗為止。文獻[8]探討了二分查找法是一種簡單而有效的IP地址查找方法。文獻[9]采用了二分查找法來調節PWM的占空比,實驗結果表明,該方法具有調節次數少、電路穩定速度快的特點,是一種高效的調節方法。
伺服系統中使用的是16位D/A轉換芯片,即數字控制量范圍為-32768~32767,為保證系統運行的安全性,控制量限幅為-32600~32600。旋轉變壓器的信號經過編碼后為16位的數字量,即65536對應360°,換算得1°對應182.04。對應圖1中所示的分區PID算法,本文精調區上界θ1取0.5°,數字量為 90.6;過渡區上界 θ2取 3.0°,數字量為 543.6;減速區上界θ3取25.0°,數字量為4527.8。
為保證系統從Ⅳ區平穩過渡到Ⅲ區,Kp2的取值由θ3和Ⅳ區中最大控制量決定:

過渡區比例增益由減速區的Kp2線性增大到穩態跟蹤區的Kp1,比例控制量為

式中:變量Dif為跟蹤誤差的絕對值。為滿足系統穩定運行,隨著跟蹤誤差的減小,CtrlKp的值不應出現上下波動,而且應該是變小的趨勢。記x=Dif,y=CtrlKp,將式(6)寫為

式中:Kp2<Kp1,θ2>θ1, 根據一元二次函數的知識,該函數開口朝下,要使 y 在區間[θ1,θ2]上單調遞增,其對稱軸應在直線x=θ2右邊,計算得到Kp1≤13.20,最終 7.20<Kp1≤13.20。
基于本文的分區PID算法,減速區Kd較大,精調區Kd較小的原理,則取為

響應等速信號的過程可以整定一次前饋增益Kq的值,測試系統性能時選擇30°/s的等速信號,據此估算Kq的最大值:

響應正弦信號的過程可以整定出二次前饋增益Kqq的值,測試系統性能時選擇幅值60°,周期12.56 s的正弦信號,據此估算Kqq的最大值:

保證系統運行的安全性及參數最大可調性,Kp1、Kq和 Kqq的取值范圍分別為[7.2,13.2]、[0,60]和[0,450]。
二分查找法整定過程如圖3所示。

圖3 二分查找法整定Kp1和Kd1Fig.3 Tuning Kp11 and Kd1based on binary search algorithm
若用變量low和high分別表示Kp1取值區間的下界和上界,則 Kp1=(low+high)/2,首次設定比例系數Kp1時,由上文的計算結果取其上下界分別為low=7.2,high=13.2,系統根據初始參數跟蹤階躍指令,計算出此階躍響應的超調,若超調較小,可以通過增加Kd1抑制超調;若超調較大,須通過減小Kp1減小超調;若無超調,計算出階躍響應的調節時間。若調節時間少于3 s(針對90°階躍),則整定完成;若調節時間多于3 s,要判斷Kd1是否偏大,偏大則要減小Kp1和Kd1,因為Kd1能夠抑制超調,但是會增加調節時間;否則,要增大Kp1,加快響應速度。如此反復,其中Kp1的增大與減小都采用二分法計算。
從權重的角度看,二分查找算法是將low和high的權重固定設定為0.5(即二分),對mid值進行計算。因為固定權值的限制,使得二分查找算法存在很大的局限,也就是說任何數列(即使是有規律的等差數列)都會在查找最后一個元素時進行log2n+1次比較[10]。對于表長較大,關鍵字被排好序,而且呈現均勻分布特征的查找表來說,可以采用如下插值多項式對mid值進行計算:

該方法是對二分查找法的改進,稱為插值查找法。每次查找均由已知的 low、high、A[Low]和 A[high]得到對應的插值公式,再由需要查找的key值計算出mid值,這就是插值查找算法的核心思想。low、high、A[low]和 A[high]是動態變化的,所對應的插值公式也是動態變化的,系統具有很強的靈活性。
插值法查找適用于關鍵字分布比較均勻的查找表,表2和表3分別記錄了系統響應等速信號時不同Kq值對應的誤差和系統響應正弦信號時不同Kqq值對應的誤差。

表2 不同Kq值對應的平均誤差Tab.2 Average error of different Kq

表3 不同Kqq值對應的平均誤差Tab.3 Average error of different Kqq
分析表中數據可以發現:等速指令跟蹤時,不同Kq值對應的平均誤差分布均勻;正弦指令跟蹤時,不同Kqq對應的平均誤差分布均勻。因此,可以嘗試通過插值查找整定控制參數,基于插值查找法思想整定Kq的流程圖如圖4所示。
整定出Kp1和Kd1后,讓系統首先以Kq=0的值對等速信號響應,計算出相應誤差;然后Kq取其允許范圍內任意值進行第二次控制,計算出相應誤差;接著將2個不同Kq的值及其對應的誤差代入插值公式計算出新的Kq值進行下一次的跟蹤控制;如此反復,直到整定出滿足系統性能指標的參數。Kqq的整定過程與Kq類似,只需將系統對正弦信號響應的實際誤差與指標要求一起作為參數整定的依據。

圖4 插值查找法整定KqFig.4 Tuning Kqbased on interpolation search algorithm
本文的參數整定方法測試與研究基于實驗室搭建的伺服系統縮比臺。整個系統主要由上位機、伺服控制器、電機和位置編碼器等構成。伺服控制器接收上位機位置指令和編碼器反饋的位置信息計算控制量,經D/A模塊輸出,驅動電機運動到指定的位置。同時,上位機軟件可以繪出系統實時跟蹤曲線和誤差曲線,以便分析。

圖5 復合參數整定法在實際系統中的工作流程Fig.5 Work flow chart of composite parameter tuning in actual system
復合參數整定法在實際系統實現的流程如圖5所示,Adapt_Step()函數基于二分查找法,通過多次循環可以整定出 Kp1和 Kd1,Adapt_Speed()和Adapt_Sin()函數均基于插值查找法,通過多次循環即可整定出Kq和Kqq。
按照二分查找法對Kp1和Kd1進行整定,得到的整定過程數據如表4所示。

表4 Kp1和Kd1整定過程數據Tab.4 Process data of Kp1and Kd1Tuning
系統按照參數 Kp1=11.7,Kp2=7.2(式(5)計算得到),Kd1=4,Kd2=8(式(8)計算得到),跟蹤 90°的階躍信號,響應曲線如圖6所示,系統調節時間為2.95 s,超調為0°,穩態誤差為0.011°,滿足系統要求。

圖6 跟蹤90°階躍響應曲線Fig.6 Response curve of 90°step signal
插值查找法對Kq進行整定,得到的整定過程數據如表5所示。系統按照參數Kq=35.5跟蹤30°/s的等速信號,響應曲線如圖7所示,系統快速進入穩態,穩態均方差為0.03°,滿足系統要求。
插值查找法對Kqq進行整定,得到的整定過程數據如表6所示。
系統參數Kqq=247.9跟蹤幅值60°、周期12.56 s的正弦信號,響應曲線如圖8所示,系統快速進入穩態,穩態均方差為0.055°,滿足系統要求。

表5 Kq整定過程數據Tab.5 Process data of KqTuning

圖7 跟蹤30°/s等速信號響應曲線Fig.7 Response curve of tracking 30°/s constant signal

表6 Kqq整定過程數據Tab.6 Process data of KqqTuning

圖8 跟蹤60°正弦信號響應曲線Fig.8 Response curve of tracking 60°sine signal
上文介紹了插值查找法整定Kq和Kqq的過程與結果,其實根據二分查找法也能夠對Kq和Kqq進行整定,具體過程數據如表7和表8所示。

表7 Kq整定過程數據Tab.4 Process data of KqTuning

表8 Kqq整定過程數據Tab.8 Process data of KqqTuning
由表7和表8可以看出,二分查找法整定得到的參數雖然能夠很好地滿足系統控制要求,但與插值法整定相比需要更多次循環調節,尤其是在參數范圍較大時,參數整定過程會較長。
在實際系統中測試時,首先用基于二分查找法的參數整定方法分別對Kp1、Kd1、Kq和Kqq進行整定,結果表明基于二分查找法的整定方法能夠快速整定出Kp1和Kd1,使得系統的任何階躍響應快速且穩定,但該方法整定前饋參數Kq和Kqq的過程會隨著參數范圍的增加線性增長。接著,采用復合參數整定法即基于二分查找對Kp1和Kd1整定,基于插值查找法對Kq和Kqq進行整定,結果表明基于插值查找法的前饋參數整定過程簡單快速,不受參數范圍大小的影響,整定結果也能很好地滿足系統動態跟蹤要求。
本文選用復合參數整定法在實際伺服系統中做了大量測試實驗,測試中將Kp1、Kd1、Kq和Kqq四個參數都整定完成作為一次成功的整定結果。由于Kp1和Kd1沒有初始值的任意性,測試中對Kq和Kqq選取不一樣的初始值進行約50次整定實驗,其中49次都能順利地整定出滿足系統要求的控制參數,成功率為98%。同時,整定成功的49次實驗,整定過程快速,循環均不超過4次。伺服系統又分別根據49組成功整定出的參數對其他信號(不同于90°的階躍、30°/s的等速和幅值60°、周期12.56 s的正弦信號)進行跟蹤響應,控制效果均滿足要求。
PID控制及其改進控制算法是最通用的控制方法,對其參數整定有著重要的實際意義。本文提出了針對分區PID加前饋控制器的復合參數整定法,該方法基于二分查找法和插值查找法思想,將系統各項指標性能作為控制器參數整定的依據,避免了傳統PID參數整定方法的盲目性。該復合整定方法主要通過3個函數實現,使得該方法的移植及維護完善相當方便?;趯嶋H系統的測試結果在表明該方法的有效性的同時,也體現了其實現簡單,易被工程人員理解和掌握的特點。
隨著各種智能控制算法的有機結合,各種自適應調節器參數整定方法的完善,參數的整定出最終達到全局最優,進一步提高控制系統的各項性能。
[1]王偉,張晶濤,柴天佑.PID參數先進整定方法綜述[J].自動化學報,2000,26(3):347-355.
[2]袁安富,伏俊杰.駕駛機器人油門機械腿模糊自整定PID控制方法[J].自動化與儀表,2013,28(3):5-9.
[3]王印松,岑煒,劉鴻達.直流鍋爐機組參數自適應模糊PID控制[J].自動化與儀表,2010,25(1):29-33.
[4]陳煒峰,陳喜楊,余莉.基于DSP的專家PID控制在無刷直流電機的應用[J].計算機測量與控制,2015,23(8):2834-2840.
[5]Zhang Ping,Yuan Mingzhe,et al.Self-tuning PID based on adaptive genetic algorithms with the application of activated sludge aeration process[C]//The Sixth World Congress on Intelligent Control and Automation,2006:9327-9330.
[6]晏亭太.智能自適應PID/PD控制器設計及仿真研究[D].哈爾濱:哈爾濱工業大學,2014.
[7]喬震.大慣量伺服系統智能PID算法研究[D].南京:南京理工大學,2008.
[8]Hyesook Lim,Nara Lee.Survey and proposal on binary search algorithms for longest prefix match[J].IEEE Communications Surveys&Tutorials,2012,14(4):681-697.
[9]李從宏,王飛.二分查找法在PWM技術中的應用[J].南京工業職業技術學院學報,2012,12(2):28-29.
[10]葉三星,高偉.基于插值預測的快速查找算法[J].軟件導刊,2011,10(11):63-65.