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