本系列教程來源于出版書籍《基于MATLAB編程基礎(chǔ)與典型應(yīng)用書籍》,如涉及版權(quán)問題,請(qǐng)聯(lián)系:156204968@qq.com。 出版社:人民郵電出版社, 頁數(shù):525。
本系列教程目前基于MATLABR2006a,可能對(duì)于更高級(jí)版本的功能和函數(shù)有差異,教程中如有問題,請(qǐng)聯(lián)系:156204968@qq.com
15.3 Simulink建模與基本操作
上一節(jié)15.2節(jié)簡(jiǎn)單介紹了Simulink的啟動(dòng)和文件的建立,并通過一個(gè)簡(jiǎn)單的示例演示了Simulink仿真模型的建立過程,介紹了示波器的使用,數(shù)據(jù)處理以及仿真參數(shù)設(shè)置等基本知識(shí)。在這一節(jié)中,將繼續(xù)通過一個(gè)實(shí)例,更加深入地介紹Simulink各模塊的基本操作,包括模塊移動(dòng),復(fù)制,連線,輸出數(shù)據(jù)處理,示波器的使用,模型屬性設(shè)置,顏色設(shè)置和仿真參數(shù)設(shè)置等,通過這一部分的學(xué)習(xí),讀者能夠更加深入地體會(huì)到Simulink模型的建立仿真過程。
15.3.1 演示實(shí)例
考察下面一個(gè)二階RLC串聯(lián)電路電路開關(guān)閉合后狀態(tài)變量的變化情況。電路如圖15.15所示。

給定電路結(jié)構(gòu)的參數(shù)為:電源為直流電源,
,
,
。電路開關(guān)閉合前為零狀態(tài),當(dāng)開關(guān)
在
時(shí)刻閉合后,求電路狀態(tài)變量電感電流
和電容電壓
的變化情況。
對(duì)于如圖15.15所示的仿真系統(tǒng)中,可以用系統(tǒng)的狀態(tài)空間模型來描述電路系統(tǒng)。即可以表示為:
其中 是系統(tǒng)的狀態(tài)變量,
是系統(tǒng)的輸入,
是系統(tǒng)的輸出。在Simulink仿真平臺(tái)下,可以直接輸入變換矩陣
對(duì)控制系統(tǒng)進(jìn)行仿真,在后面章節(jié)介紹完S-function后,可以使用s-function對(duì)這種以狀態(tài)空間模型描述的系統(tǒng)進(jìn)行仿真。那么,首先對(duì)圖15.15所示電路進(jìn)行分析。
以電感電流和電容電壓u_C為狀態(tài)變量,利用電流回路定律,可以列出電路的KCL方程:
加上電容電壓的方程:
于是可以寫出系統(tǒng)的狀態(tài)空間方程:
令,
,
,
,于是可以得到原系統(tǒng)的狀態(tài)方程可以表示為:
于是狀態(tài)方程中系數(shù)矩陣則分別為:
得到系統(tǒng)的狀態(tài)空間方程后,那么就可以進(jìn)行系統(tǒng)的模型仿真。在這里,首先使用Matlab的M語言對(duì)圖15.15所示電路進(jìn)行仿真。然后利用Simulink仿真工具箱對(duì)系統(tǒng)進(jìn)行仿真,比較二者的差異。同時(shí)通過Simulink仿真模型,介紹基本的Simulink操作。
(1)仿真方法一:M文件仿真
程序代碼如下,M文件仿真結(jié)果如圖15.16所示。
%Model parameters input
R1=4;
L1=0.2;
C1=1e-6;
V=5;
%state-space equation coefficient description
R=[R1 1;-1 0];
D=[-1;0];
L=[L1 0;0 C1];
%standard state-space equation model
%dx=A*x+B*u
A=-inv(L)*R;
B=-inv(L)*D;
C=eye(2);
D=zeros(2,1);
sys=ss(A,B,C,D);
s1=tf(sys);
[y,t]=step(s1);
y_amplitude=V*y;
%disp the result in diagram
subplot(211)
plot(t,y_amplitude(:,1))
grid on
ylabel('iL(A)');
subplot(212)
plot(t,y_amplitude(:,2))
grid on
ylabel('uc(V)');

(2)仿真方法二:基于Simulink模型仿真
按照上一節(jié)中Simulink文件建立的基本步驟建立圖15.17所示的仿真模型。完成模型以后,按快捷鍵CTRL+S或者Simulink模型窗口菜單欄【File】下的【Save】選項(xiàng)。保存文件名為chapter3_1mdl。要建立圖15.17所示的模型,需要以下的系統(tǒng)模塊:
· Signal Routing模塊庫中的Demux模塊:它的作用實(shí)現(xiàn)輸入向量信號(hào)的分解,在此模型中,將輸出的狀態(tài)變量電感電流和電容電壓
分開;
· 系統(tǒng)輸出庫Sink中的Scope模塊:它的作用觀測(cè)輸出變量的圖形,在此模型中,用來觀測(cè)電路狀態(tài)變量,
的變化情況;
· 系統(tǒng)輸出庫Sink中的out模塊:它的作用作為信號(hào)的輸出端口,通常與輸入端口In相配合使用;
系統(tǒng)輸出庫Sink中的To Workspace模塊和To File模塊:它們的作用分別是把信號(hào)輸出到工作窗口中和輸出到數(shù)據(jù)文件.mat文件中。

選擇了模塊以后,需要將模塊拖放到新建立的仿真模型中,這里有兩種方法:
①鼠標(biāo)單擊選中的模塊不放,將其拖到新建空白仿真模型中,然后松開鼠標(biāo)左鍵;
②鼠標(biāo)選中模塊,然后單擊右鍵,單擊彈出菜單中的第一個(gè)選項(xiàng)Add to ‘chapter3_1_mdl’,模塊就出現(xiàn)在空白仿真模型中。如圖15.18所示。

將所有需要的模塊按上面兩種方法拖放到空白仿真模型后,擺好相應(yīng)的位置,連接各個(gè)模塊,設(shè)置完模塊的參數(shù)和系統(tǒng)仿真參數(shù),進(jìn)行仿真,得到圖15.19所示的結(jié)果。

作者:德特?cái)?shù)據(jù)
聯(lián)系方式:156204968@qq.com