單片機模糊PID自整定控制算法的實現及仿真
由于液壓伺服系統(tǒng)的固有特性(如死區(qū)、泄漏、阻尼系數的時變性以及負載干擾的存在),系統(tǒng)往往會呈現典型的不確定性和非線性特性。這類系統(tǒng)一般很難精確描述控制對象的傳遞函數或狀態(tài)方程,而常規(guī)的PID控制又難以取得良好的控制效果。另外,單一的模糊控制雖不需要精確的數學模型,但是卻極易在平衡點附近產生小振幅振蕩,從而使整個控制系統(tǒng)不能擁有良好的動態(tài)品質。
本文針對這兩種控制的優(yōu)缺點并結合模糊控制技術,探討了液壓伺服系統(tǒng)的模糊自整定PID控制方法,同時利用MATLAB軟件提供的Simulink和Fuzzy工具箱對液壓伺服調節(jié)系統(tǒng)的模糊自整定PID控制系統(tǒng)進行仿真,并與常規(guī)PID控制進行 了比較。此外,本文還嘗試將控制系統(tǒng)通過單片機的數字化處理,并在電液伺服實驗臺上進行了測試,測試證明:該方法能使系統(tǒng)的結構簡單化,操作靈活化,并可增強可靠性和適應性,提高控制精度和魯棒性,特別容易實現非線性化控制。
1 模糊PID自整定控制器的設計
本控制系統(tǒng)主要完成數據采集、速度顯示和速度控制等功能。其中智能模糊控制由單片機完成,并采用規(guī)則自整定PID控制算法進行過程控制。整個系統(tǒng)的核心是模糊控制器,AT89C51單片機是控制器的主體模塊。電液伺服系統(tǒng)輸出的速度信號經傳感器和A/D轉換之后進入單片機,單片機則根據輸入的各種命令,并通過模糊控制算法計算控制量,然后將輸出信號通過D/A轉換送給液壓伺服系統(tǒng),從而控制系統(tǒng)的速度。該模糊控制器的硬件框圖如圖1所示。
模糊控制器的主程序包括初始化、鍵盤管理及控制模塊和顯示模塊的調用等。溫度信號的采集、標度變換、控制算法以及速度顯示等功能的實現可由各子程序完成。軟件的主要流程是:利用AT89C51單片機調A/D轉換、標度轉換模塊以得到速度的反饋信號,然后根據偏差和偏差的變化率計算輸入量,再由模糊PID自整定控制算法得出輸出控制量。啟動、停止可通過鍵盤并利用外部中斷產生,有按鍵輸入則調用中斷服務程序。該程序的流程圖如圖2所示。
2 模糊控制器算法研究
采用模糊PID自整定控制的目的是使控制器能夠根據實際情況調整比例系數Kp、積分系數Ki和微分系數Kd,以達到調節(jié)作用的實時最優(yōu)。該電液伺服系統(tǒng)的Fuzzy自整定PID控制系統(tǒng)結構如圖3所示。
為了簡化運算和滿足實時性要求,即該調節(jié)系統(tǒng)的基本控制仍為PID控制,但使PID調節(jié)參數由模糊自整定控制器根據偏差e和偏差變化率ec進行自動調整,同時把模糊自整定控制器的模糊部分按Kp、Ki和Kd分成3部分,分別由相應的子推理器來實現。
2.1 輸入值的模糊化
模糊自整定PID控制器是在fuzzy集的論域中進行討論和計算的,因而首先要將輸入變量變換到相應的論域,并將輸人數據轉換成合適的語言值,也就是要對輸入量進行模糊化。結合本液壓伺服系統(tǒng)的特性,這里選擇模糊變量的模糊集隸屬函數為正態(tài)分布,具體分布如圖4所示。根據該規(guī)則可把實際誤差e、誤差變化率ec(de/dt)對應的語言變量E、EC表示成模糊量。E、EC的基本論域為[-6,+6],將其離散成13個等級即[-6,-5,-4,-3,-2,-1,0,+1,+2,+3,+4,+5,+6]??紤]到控制的精度要求,本設計將[-6,+6]分為負大[NB]、負中[NM]、負小[NS]、零[ZO]、正小[PS]、正中[PM]、正大[PB]等7個語言變量,然后由e、ec隸屬函數根據最大值法得出相應的模糊變量。
2.2 模糊控制規(guī)則表的建立
(1) Kp控制規(guī)則設計
在PID控制器中,Kp值的選取決定于系統(tǒng)的響應速度。增大Kp能提高響應速度,減小穩(wěn)態(tài)誤差;但是,Kp值過大會產生較大的超調,甚至使系統(tǒng)不穩(wěn)定減小Kp可以減小超調,提高穩(wěn)定性,但Kp過小會減慢響應速度,延長調節(jié)時間。因此,調節(jié)初期應適當取較大的Kp值以提高響應速度,而在調節(jié)中期,Kp則取較小值,以使系統(tǒng)具有較小的超調并保證一定的響應速度;而在調節(jié)過程后期再將Kp值調到較大值來減小靜差,提高控制精度。Kp的控制規(guī)則如表1所列。
(2) Ki控制規(guī)則設計
在系統(tǒng)控制中,積分控制主要是用來消除系統(tǒng)的穩(wěn)態(tài)誤差。由于某些原因(如飽和非線性等),積分過程有可能在調節(jié)過程的初期產生積分飽和,從而引起調節(jié)過程的較大超調。因此,在調節(jié)過程的初期,為防止積分飽和,其積分作用應當弱一些,甚至可以取零;而在調節(jié)中期,為了避免影響穩(wěn)定性,其積分作用應該比較適中;最后在過程的后期,則應增強積分作用,以減小調節(jié)靜差。依據以上分析,制定的Ki控制規(guī)則表如表2所列。
(3) Kd控制規(guī)則設計
微分環(huán)節(jié)的調整主要是針對大慣性過程引入的,微分環(huán)節(jié)系數的作用在于改變系統(tǒng)的動態(tài)特性。系統(tǒng)的微分環(huán)節(jié)系數能反映信號變化的趨勢,并能在偏差信號變化太大之前,在系統(tǒng)中引入一個有效的早期修正信號,從而加快響應速度,減少調整時間,消除振蕩.最終改變系統(tǒng)的動態(tài)性能。因此,Kd值的選取對調節(jié)動態(tài)特性影響很大。Kd值過大,調節(jié)過程制動就會超前,致使調節(jié)時間過長;Kd值過小,調節(jié)過程制動就會落后,從而導致超調增加。根據實際過程經驗,在調節(jié)初期,應加大微分作用,這樣可得到較小甚至避免超調;而在中期,由于調節(jié)特性對Kd值的變化比較敏感,因此,Kd值應適當小一些并應保持固定不變;然后在調節(jié)后期,Kd值應減小,以減小被控過程的制動作用,進而補償在調節(jié)過程初期由于Kd值較大所造成的調節(jié)過程的時間延長。依據以上分析,制定的Kd控制規(guī)則表如表3所列。
2.3 逆模糊化處理及輸出量的計算
對經過模糊控制規(guī)則表求得的Kp、Ki、Kd采用重心法進行逆模糊化處理(重心法在此就不做詳細介紹)的公式如下:
式中,u(k)為k采樣周期時的輸出,e(k)為k采樣周期時的偏差,T為采樣周期,通過輸出u(k)乘以相應的比例因子Ku就可得出精確的輸出量u。其公式如下:
3 實驗結果分析
筆者將上述PID控制及模糊PID控制分別進行了仿真試驗,實驗分別在單獨模糊PID控制情況下和模糊PID控制兩種情況下進行。并在在線運行過程中通過邏輯規(guī)則的結果處理、查表和運算完成了對PID參數的在線自矯正。系統(tǒng)的偏差絕對值以及偏差的變化絕對值的取值范圍可根據實際經驗分別確定為[-0.1 cm/s,0.1 cm/s】和[-0.06 cm/s2,0.06 cm/s2],以而確定相對控制效果較好時Kp、Ki、Kd的取值范圍為Kp[-0.3,0.3]、Ki[-0.06,0.06]、Kd[-3,3]。
傳統(tǒng)PID和模糊PID實驗所得的曲線分別如圖5及圖6所示。從圖中可以發(fā)現,采用模糊控制策略整定PID參數相對于普通PID控制策略,其系統(tǒng)的穩(wěn)態(tài)性得到了較大的改善,響應時間大大減少,超調量也得到了一定的改善。
4 結束語
實驗證明:該單片機模糊PID自整定控制器對于電液伺服控制系統(tǒng)具有較好的效果。實踐中可以根據工程控制的具體情況及對超調量、穩(wěn)定性、響應速度的不同要求,來調整模糊PID控制器三個參數的取值范圍,從而得到不同的控制精度和控制效果。
總之,本文研究的模糊PID控制器具有以下一些特點:
(1) 算法簡單實用,本質上不依賴于系統(tǒng)的數字模型;
(2) 可充分利用單片機的軟件資源,可靠性高,開發(fā)速度快;
(3) 克服了傳統(tǒng)PID控制器操作的困難,提高了系統(tǒng)的智能化程度;
(4) 模糊PID控制器棒性好,具有專家控制器的特點,并可推廣應用于其它工作領域。
pid控制相關文章:pid控制原理
51單片機相關文章:51單片機教程
pid控制器相關文章:pid控制器原理
絕對值編碼器相關文章:絕對值編碼器原理
評論