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