0. 引言
在運動控制系統設計中,PID控制以其結構簡單、使用方便、魯棒性較強等特點長期以來被廣泛應用于工業過程中,并取得了良好的控制效果。但是對于一些非線性時變系統,采用PID控制難以獲得滿意得控制效果[1]。而模糊控制是一種基于語言規則與模糊推理的智能控制,它不依賴被控對象精確的數學模型,是在總結經驗基礎上實現自動控制的一種手段。由于模糊控制對輸入變量的處理是離散的,且沒有積分環節,故控制精度不如PID控制。本文將模糊控制與PID控制相結合,利用模糊判斷的思想,對PID參數自動整定。使用貝加萊公司新推出的AR4MATLAB/Simulink中的B&R工具箱進行控制器設計并應用到空氣球實驗系統中。
1. 實驗硬件系統構成
本文采用的空氣球實驗裝置由貝加萊公司提供,該系統由控制器、風扇、玻璃管、空氣球組成,如圖1所示,具體如下:
1)控制器:采用貝加萊公司的X20CP1486標準型CPU,它是基于Intel Celeron的處理器,任務處理等級是μs級。配有64MB的大容量內存,方便模糊控制等復雜控制運算;
2)風扇:采用標準PC風扇,輸出功率可變,大小由輸入電壓控制,采用PWM技術進行控制;
3)玻璃管:兩端開口透明管,直徑比空氣球略大,以保證空氣球可以在其中自由運行,長度約為45cm;
4)空氣球:采用標準乒乓球,直徑40mm,重量2.7g。
圖1 空氣球實驗裝置硬件圖
2. 實驗軟件介紹
軟件使用的是貝加萊公司提供AR4MATLAB ,它增加了自動代碼轉化功能,即在AR4MATLAB/Simulink中搭建的模塊可以通過使用Real-Time Workshop® 和 Real-Time Workshop® Embedded Coder自動轉換成ANSI-C語言,并下裝到B&R 的PCC中,示意圖如圖2所示。
圖2 控制算法實現示意圖
這就使得基于AR4MATLAB/Simulink設計的復雜控制算法可以容易的下載到控制器中,使用者不需要調試大量的代碼和避免發生錯誤的風險就可以測試相關的控制方法。
AR4MATLAB/SIMULINK新增了一個B&R Toolbox,該工具箱里包含了4個不同的模塊,如圖3所示。
圖3 B&R工具箱
3. 空氣球實驗裝置模型的建立
3.1系統參數
空氣球實驗系統是一個典型的力學系統,其模型參數及空氣阻力參數見表1、表2:
表1 模型參數 表2 空氣阻力參數
3.2運動學分析
系統通過PWM(脈沖寬度調制)來控制加在風扇上的電壓,從而控制風扇吹力的大小。風扇電壓與吹力是非線性關系,可采用非線性處理模塊Lookup table將其分段線性化。
由于空氣球運動時的最高速度不超過0.1m/s2,根據計算,空氣阻力f相對于推力F、重力mg,相差5個數量級,所以可以忽略空氣阻力。
4. 模糊自適應PID控制器設計
PID控制只能利用一組固定參數進行控制,這些參數不能兼顧動態性能和靜態性能之間、設定值和抑制擾動之間的矛盾。為此,控制系統引入模糊推理,在PID初值基礎上通過增加修正參數進行整定,改善系統動態性能[2][3]。
4.1參數自整定原則
PID參數模糊自整定是找出PID的三個參數與 和 之間的模糊關系,在運行中通過不斷檢測 和 ,根據模糊控制規則來對三個參數進行在線修改,以滿足不同 和 時對控制參數的不同要求,而使被控對象具有良好的動靜態性能,模糊PID控制系統如圖6所示。
圖6模糊控制系統原理圖
模糊控制器以偏差 和偏差變化率 作為輸入,修正參數△kp,△ki,△kd為輸出,則PID控制器輸出的參數為kp, ki, kd為(3)所示,k′p,k′i,k′d為預整定值。
4.2模糊控制規則表
模糊控制器輸入輸出變量的模糊子集分別為E,EC,△kp,△ki,△kd,各變量語言值為:{負大,負中,負小,零,正小,正中,正大},記為{ NB,NM,NS,ZO,PS,PM,PB},隸屬函數均采用靈敏度強的三角函數,模糊蘊涵關系運算采用最小運算法(Mamdani),去模糊化采用重心法。E和EC的變化范圍為[-0.5,+0.5],模糊論域為{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}。△kp,△ki和△kd的基本論域為[-0.3,0.3],模糊論域為{-0.3,-0.25,-0.2,-0.15,-0.1,-0.05,0,0.05,0.1,0.15,0.2,0.25,0.3},比例因子Ke為12,量化因子Kec為 1。通過模糊推理及試驗修正,得出△kp,△ki,△kd的模糊控制規則如表3-5所示。
表3 △kp的模糊規則 表4 △ki的模糊規則
表5 △kd的模糊規則
5. 實驗結果
根據所建立的空氣球實驗裝置數學模型,在AR4MATLAB/ Simulink環境下,使用模糊PID控制算法進行仿真實驗,空氣球在玻璃管中的高度為被控參數,設定值為0.3m,模糊PID控制器初始參數kp=60, ki=0.5, kd=100。在Automation Studio中對控制器進行編譯,生成ANSI-C代碼并下載到貝加萊公司的PCC中,對空氣求進行控制。使用Trace評分功能對空氣球運動軌跡進行追蹤,如圖7所示。
6. 結束語
本文使用貝加萊公司新推出的B&R Toolbox ,在AR4MATLAB/Simulink環境下進行模糊自適應PID控制器設計,并下載到貝加萊公司的可編程計算機控制器(PCC)上,實現對空氣球的控制。實驗結果表明,該控制方案實現簡單,可方便實現模糊PID控制在空氣球實驗系統中的應用。