MATLAB/Simulink建模-車輛巡航控制 (1)
物理設置
自動巡航控制是許多現代車輛中使用的反饋控制系統的一個很好的例子。 巡航控制系統的目的是在受到外部干擾(例如風或道路坡度的變化)的情況下保持恒定的車速。這是通過測量車輛速度,將其與所需或參考速度進行比較,并根據控制規律自動調節油門來實現的。
我們在這里考慮一個簡單的車輛動力學模型,如上面的自由體圖 (FBD) 所示。 質量為 m 的車輛受到控制力 u 的作用。 力 u 表示在道路/輪胎界面產生的力。 對于這個簡化的模型,我們假設我們可以直接控制這個力,而忽略產生力的動力系統、輪胎等的動力學。 由于滾動阻力和風阻,阻力 bv 被假定為隨車輛速度 v 線性變化,并且作用在與車輛運動相反的方向上。
系統方程
有了這些假設,我們就剩下一階質量阻尼器系統了。將 x 方向的力相加并應用牛頓第二定律,我們得出以下系統方程:
由于我們對控制車輛的速度感興趣,因此選擇輸出方程如下:
系統參數對于這個例子,我們假設系統的參數是:
(m) 車輛質量 1000 kg
(b) 阻尼系數 50 Ns/m
狀態空間模型
一階系統只有一種能量存儲模式,在這種情況下是汽車的動能,因此只需要一個狀態變量,即速度。 因此,狀態空間表示為:
我們使用以下命令將此狀態空間模型輸入到 MATLAB 中:
m = 1000;
b = 50;
A = -b/m;
B = 1/m;
C = 1;
D = 0;
cruise_ss = ss(A,B,C,D);
傳遞函數模型
對控制微分方程進行拉普拉斯變換并假設初始條件為零,我們發現巡航控制系統的傳遞函數為:
我們使用以下命令將傳遞函數模型輸入到 MATLAB 中:
s = tf('s');
P_cruise = 1/(m*s+b);
本例中使用的參數如下:
(m) 車輛質量 1000 kg
(b) 阻尼系數 50 N.s/m
(u) 標稱控制力 500 N
性能規格
下一步是提出補償系統應該達到的一些設計標準。 當發動機提供 500 牛頓的力時,汽車將達到 10 m/s (22 mph) 的最大速度,請參閱下面的開環階躍響應部分。 汽車應該能夠在不到 5 秒的時間內加速到這個速度。 在此應用中,速度的 10% 過沖和 2% 穩態誤差就足夠了。牢記以上幾點,我們針對這個問題提出了以下設計標準:
上升時間 < 5 秒
超調 < 10%
穩態誤差 < 2%
開環階躍
響應在沒有任何反饋控制的情況下,系統對 500 牛頓階躍輸入力的開環響應在 MATLAB 中模擬如下:
m = 1000;
b = 50;
u = 500;
s = tf('s');
P_cruise = 1/(m*s+b);
step(u*P_cruise)
我們看到開環系統沒有表現出超調或振蕩(一階系統的特征),并且確實達到了所需的 10 m/s 穩態速度; 然而,上升時間太慢了,大約 60 秒。 因此,我們需要設計一個反饋控制器,它可以顯著加快響應速度,而不會對其他動態性能指標產生負面影響。
開環極點/零點
巡航控制系統在 s = -b/m 處有一個單極點,我們可以看到使用以下 MATLAB 命令繪制在 s 平面上:
pzmap(P_cruise)
axis([-1 1 -1 1])
我們觀察到開環系統是穩定的并且不會振蕩,因為極點是實數和負數。 此外,響應速度由該極點的幅度 b/m 決定:幅度越大,系統越快接近穩態值。 由于我們通常無法改變系統參數來改變系統的動態響應,因此我們必須設計控制器來改變閉環系統的極點和零點以滿足所需的性能規格。
開環波特圖
我們還對使用以下 MATLAB 命令發現的系統的開環頻率響應感興趣:
bode(P_cruise)
我們看到波特圖展示了一階系統的明確特征,包括在 w = b/m = 0.05 rad/s 和 -20 dB/dec roll 的轉角頻率處的 -3 dB 幅度和 -45 度相位。 高頻時關閉。
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















