《自動控制原理實驗用Matlab軟件編制勞斯判據(jù)程序并解題(《學(xué)習(xí)輔導(dǎo)》例4.3.5)》由會員分享,可在線閱讀,更多相關(guān)《自動控制原理實驗用Matlab軟件編制勞斯判據(jù)程序并解題(《學(xué)習(xí)輔導(dǎo)》例4.3.5)(8頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、word
上 海 電 力 學(xué) 院
實 驗 報 告
自 動 控 制 原 理 實 驗 課 程
題目:用Matlab軟件編制勞斯判據(jù)程序并解題(《學(xué)習(xí)輔導(dǎo)》例4.3.5)
班級:
某某:
學(xué)號:
時間:2012年11月4日
自動化工程學(xué)院自動化〔電站自動化〕專業(yè)
實 驗 報 告 目 錄
一、問題描述………………………………………………3
二、理論方法分析…………………………………………3
三、實驗設(shè)計與實現(xiàn)………………………………………3
四、實驗結(jié)果與分析………………………………………5
五、結(jié)論與討論…
2、…………………………………………6
六、 實驗心得體會…………………………………………6
七、 參考文獻(xiàn)………………………………………………7
八 附錄……………………………………………………7
一、問題描述
用MATLAB編制勞斯判據(jù)列出其勞斯矩陣并判斷相對應(yīng)系統(tǒng)的穩(wěn)定性
二、理論方法分析
采用M文件實現(xiàn)Matlab編程。
1)M文件的建立與調(diào)用
? ?從Matlab操作桌面的“File〞菜單中選擇“New〞菜單項,再選擇 “M-file〞命令,屏幕將出現(xiàn)Matlab文本編輯器的窗口。
? ?在Matlab命令窗口的“File〞
3、菜單中選擇“Open〞命令,如此屏幕出現(xiàn)“Open〞對話框,在文件名對話框中選中所需打開的M文件名。
2)M文件的調(diào)試
在文件編輯器窗口菜單欄和工具欄的下面有三個區(qū)域,右側(cè)的大區(qū)域是程序窗口,用于編寫程序;最左面區(qū)域顯示的是行號,每行都有數(shù)字,包括空行,行號是自動出現(xiàn)的,隨著命令行的增加而增加;在行號和程序窗口之間的區(qū)域上有一些小橫線,這些橫線只有在可執(zhí)行行上才有,而空行、注釋行、函數(shù)定義行等非執(zhí)行行的前面都沒有。在進(jìn)展程序調(diào)試時,可以直接在這些程序上點(diǎn)擊鼠標(biāo)以設(shè)置或去掉斷點(diǎn)。
三、實驗設(shè)計與實現(xiàn)
〔1〕程序
%RouthMatrix**勞斯矩陣(帶參數(shù)的特征多項式)并判斷對應(yīng)系
4、統(tǒng)穩(wěn)定性**
clear;
syms k z q %定義變量k z q
p=input('請輸入特征多項式的參數(shù) ='); %提示輸入?yún)?shù)
n=length(p); %得到p的長度
for i=0:ceil(n/2)-1 %將多項式進(jìn)展勞斯矩陣排序
a(1,i+1)=p(2*i+1);
if 2*(i+1)>n
a(2,i+1)=0;
break
end
a(2
5、,i+1)=p(2*(i+1));
end
for k=3:n %計算從第三行開始勞斯矩陣內(nèi)容
for j=1:ceil((n-k+1)/2)
if a(k-1,1)==0 %判斷是否有共軛虛根
disp('系統(tǒng)有共軛虛根')
breaksign=1;
break
end
a(k,j)=(a(k-1,1)*a(k-2,j+1)-a(k-1,j+1)*a(k-2,1))/a(k-1,
6、1);
end
end
disp('勞斯矩陣') %輸出對應(yīng)的勞斯矩陣
disp(double(a))
for i=3:k %用勞斯判據(jù)判斷系統(tǒng)的穩(wěn)定性
if a(i-1,1)<=0 %判斷第一列元素是否不大于0
q=1;
break
end
end
if q==1
disp('系統(tǒng)不穩(wěn)定')
else
disp('系統(tǒng)穩(wěn)定') %輸出系統(tǒng)穩(wěn)定性判定結(jié)果
end
〔2〕設(shè)
7、計
勞斯表的內(nèi)容根據(jù)書上的原理進(jìn)展設(shè)計,將多項式進(jìn)展勞斯矩陣排序,可得其前兩行的內(nèi)容,余下幾行如此要根據(jù)書上原理寫出。判斷其是否穩(wěn)定根據(jù)第一列元素是否有符號上的變化進(jìn)展,從第二行第一列的元素開始,假如其大于零,如此endfor循環(huán),i加1,判斷第三行第一列元素,以此類推,直到有一行第一列的元素小于或者等于0為止,給q賦值1,跳出循環(huán),輸出‘系統(tǒng)不穩(wěn)定’,假如判斷到最后一行的元素也沒有小于或者等于零的數(shù)值出現(xiàn),如此輸出‘系統(tǒng)穩(wěn)定’。
四、實驗結(jié)果與分析
如下列圖M文件代碼:
編寫好M文件之后,保存并運(yùn)行,即可在MATLAB界面中進(jìn)展調(diào)試。
隨意選取特征方程式的系數(shù),運(yùn)行后結(jié)果:
8、
五、結(jié)論與討論
由上述實驗過程可以看出,勞斯判據(jù)前兩行是根據(jù)特征方程式的參數(shù)寫出的,而后面幾行如此是根據(jù)前兩行計算得出,運(yùn)用勞斯判據(jù)我們可以判斷其穩(wěn)定性,假如有全零行,有共軛虛根,假如第一列元素符號有變化,系統(tǒng)一定不穩(wěn)定。假如有未知參數(shù),亦可判斷其取值X圍。
六、實驗心得體會
實踐是檢驗真理的唯一標(biāo)準(zhǔn),死板的書本交給我們的是一板一眼的計算方法,而實踐不僅是理論的踐行者,而且反應(yīng)著理論學(xué)習(xí)的真實面目。不是第一次聽說MATLAB,在自控原理課上教師也不止一次用它演示了一些程序,那時MATLAB就給我留下了一個功能十分強(qiáng)大,操作極為簡便的好印象。之后的實驗課自己動手操作,更
9、覺其神奇,那只是按照教師所講的步驟一步一步的操作。坦白說,看到這個題目的瞬間有些茫然,好在有題目可以參考,解讀了書上給出的程序后自己慢慢摸索演練,終于用MATLAB做了一道完整的題目,真的感受到了這個軟件的實用,自己這次實驗接觸到只是其功能模塊的冰山一角,只是學(xué)到了一點(diǎn)點(diǎn)根本操作,僅僅是對這款軟件有了初步了解,但是對于其更高深的東西還不熟悉,雖然在報告里用到的編程并不是全部所學(xué),但我已經(jīng)身臨其境的感受到MATLAB的魅力。我不得不感嘆,一個好的程序軟件對學(xué)習(xí)自動控制原理幫助的巨大。良好的開始是成功的一半,在以后的學(xué)習(xí)中,把理論和實踐相結(jié)合,讓MATLAB更好的為學(xué)習(xí)自控原理服務(wù)。
七、參
10、考文獻(xiàn)
《自動控制原理學(xué)習(xí)輔導(dǎo)》楊平、翁思義、王志萍編著。
——中國電力
《自動控制原理實驗與實踐》楊平、余潔、馮照坤、翁思義編著。
——中國電力
八、附錄
%RouthMatrix**勞斯矩陣(帶參數(shù)的特征多項式)并判斷對應(yīng)系統(tǒng)穩(wěn)定性**
clear;
syms k z q %定義變量k z q
p=input('請輸入特征多項式的參數(shù) ='); %提示輸入?yún)?shù)
n=length(p); %得到p的長度
for i=0:ceil(n/2)-1
11、 %將多項式進(jìn)展勞斯矩陣排序
a(1,i+1)=p(2*i+1);
if 2*(i+1)>n
a(2,i+1)=0;
break
end
a(2,i+1)=p(2*(i+1));
end
for k=3:n %計算從第三行開始勞斯矩陣內(nèi)容
for j=1:ceil((n-k+1)/2)
if a(k-1,1)==0 %判斷是否有共軛虛根
disp('系統(tǒng)有共軛虛根')
12、 breaksign=1;
break
end
a(k,j)=(a(k-1,1)*a(k-2,j+1)-a(k-1,j+1)*a(k-2,1))/a(k-1,1);
end
end
disp('勞斯矩陣') %輸出對應(yīng)的勞斯矩陣
disp(double(a))
for i=3:k %用勞斯判據(jù)判斷系統(tǒng)的穩(wěn)定性
if a(i-1,1)<=0 %判斷第一列元素是否不大于0
q=1;
break
end
end
if q==1
disp('系統(tǒng)不穩(wěn)定')
else
disp('系統(tǒng)穩(wěn)定') %輸出系統(tǒng)穩(wěn)定性判定結(jié)果
end