控制基礎(chǔ)試驗(yàn)指導(dǎo)書_第1頁(yè)
控制基礎(chǔ)試驗(yàn)指導(dǎo)書_第2頁(yè)
控制基礎(chǔ)試驗(yàn)指導(dǎo)書_第3頁(yè)
控制基礎(chǔ)試驗(yàn)指導(dǎo)書_第4頁(yè)
控制基礎(chǔ)試驗(yàn)指導(dǎo)書_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——控制基礎(chǔ)試驗(yàn)指導(dǎo)書第一章MATLAB的簡(jiǎn)介

1.1概述

MATLAB是MathWorks公司于1982年推出的一套高性能的數(shù)值計(jì)算和可視化軟件,MATLAB的圖形、打印、聯(lián)機(jī)幫助等功能齊全。它集數(shù)值分析、矩陣運(yùn)算、信號(hào)處理和圖形顯示于一體,構(gòu)成了一個(gè)便利的、界面友好的用戶環(huán)境。MATLAB的推出得到了各個(gè)領(lǐng)域?qū)<覍W(xué)者的廣泛關(guān)注,其強(qiáng)大的擴(kuò)展功能為各個(gè)領(lǐng)域的應(yīng)用提供了基礎(chǔ)?,F(xiàn)在比較新的版本是7.0版。

MATLAB是一個(gè)計(jì)算核心,圍圍著這個(gè)計(jì)算核心,有大量針對(duì)不同應(yīng)用所開發(fā)的應(yīng)用程序,稱為工具箱(Toolboxes)。工具箱的總數(shù)已有上百個(gè),其中主要有:信號(hào)處理(SignalProcessing)、控制系統(tǒng)(ControlSystem)、神經(jīng)網(wǎng)絡(luò)(NeuralNetwork)、通信(Communication)、圖像處理(ImageProcessing)、魯棒控制(RobustControl)、非線性控制系統(tǒng)設(shè)計(jì)(NonlinearControlSystemDesign)、系統(tǒng)辨識(shí)(SystemIdentification)、最優(yōu)化(Optimization)、μ分析與綜合(μAnalysisandSynthesis)、模糊系統(tǒng)(FuzzySystem)、小波(Wavelet)分析和樣條(Spline)等工具箱。這些工具箱給各個(gè)領(lǐng)域的研究和工程應(yīng)用提供了有利的幫助,各個(gè)層次的研究人員可直觀、便利地進(jìn)行分析、計(jì)算及設(shè)計(jì)工作,大大地節(jié)省了編程時(shí)間。

除MATLAB之外,MathWorks公司還有兩項(xiàng)主要相關(guān)產(chǎn)品,即Simulink及Stateflow。Simulink專用于連續(xù)或離散時(shí)間的動(dòng)態(tài)系統(tǒng)仿真;Stateflow則用于仿真有限狀態(tài)機(jī)(FiniteStateMachines)或事件驅(qū)動(dòng)系統(tǒng)(Event-drivenSystems)。

《控制基礎(chǔ)》課程安排試驗(yàn)的目的就是讓非電專業(yè)的學(xué)生初步把握MATLAB語(yǔ)言,學(xué)會(huì)用簡(jiǎn)單的MATLAB函數(shù)分析線性控制系統(tǒng)的基本性能,從而為今后的學(xué)習(xí)和工作打下基礎(chǔ)。

MATLAB下提供了兩種文件格式,其中一種是普通的ASCII碼構(gòu)成的文件,在這樣的文件中只能由MATLAB語(yǔ)言所支持的語(yǔ)句,類似于DOS下的批處理文件,這種文件稱為M文件,它的執(zhí)行方式很簡(jiǎn)單,用戶只需在“file〞下新建一個(gè)“M-file〞,在“M-file〞窗口下逐條輸入語(yǔ)句,存盤在“work〞文件夾下,然后單擊“debug〞下的“run〞,這樣在“ConmandWindow〞窗口下即可看到執(zhí)行的結(jié)果。它采用文本方式,編程效率高,可讀性很強(qiáng)。

MATLAB的另一種,也是最常用的特別M文件稱為MATLAB函數(shù),這樣的函數(shù)是由function語(yǔ)句引導(dǎo)的,其基本格式如下

Function返回變量列表=函數(shù)名(輸入變量列表)解釋說明語(yǔ)句段函數(shù)體語(yǔ)句

1

使用時(shí)用戶也是在“M-file〞窗口下逐條輸入語(yǔ)句,存盤在“work〞文件夾下,調(diào)用時(shí)在MATLAB的提醒符下鍵入函數(shù)名,并包括輸入變量。類似于C語(yǔ)言的子程序調(diào)用。如

functionplot_sin(xmin,xmax)

x=xmin:min(0.01,(xmax-xmin)/100):xmax;plot(x,sin(x));%Thisisademo

MATLAB的函數(shù)名定義幾乎與數(shù)學(xué)描述一樣,接近書寫計(jì)算公式的思維方式,如min(),max()。它的基本命令包括:數(shù)學(xué)函數(shù)、矩陣、數(shù)值方法、繪圖、字符串、文件I/O等數(shù)百條。

1.2使用變量與基本計(jì)算

MATLAB能識(shí)別一般常用的加(+)、減(-)、乘(*)、除(/)、冪次(^)等數(shù)學(xué)運(yùn)算符號(hào),因此在MATLAB下進(jìn)行基本運(yùn)算,最快速簡(jiǎn)單的方法是在MATLAB命令窗口(CommandWindow)內(nèi)的提醒符號(hào)(>>)之后輸入表達(dá)式,并按下Enter鍵即可。例如

>>(5*2+3.5)/5ans=2.7000

MATLAB會(huì)將計(jì)算結(jié)果直接存入默認(rèn)變量ans中(即MATLAB語(yǔ)句的返回值),代表MATLAB運(yùn)算后的答案(Answer),并在屏幕上顯示其運(yùn)算結(jié)果的數(shù)值(在上例中,即為2.7000)。

若不想讓MATLAB每次都顯示運(yùn)算結(jié)果,只需在表達(dá)式最終加上分號(hào)(;)即可,例如:

>>(5*2+3.5)/5;

在上例中,由于表達(dá)式后面參與了分號(hào),因此MATLAB只會(huì)將運(yùn)算結(jié)果儲(chǔ)存在默認(rèn)變量ans內(nèi),不會(huì)顯示于屏幕上;在需要時(shí)取用或顯示此運(yùn)算結(jié)果,可直接輸入變量ans,例如(接上例)

>>ansans=2.7000

使用者也可將運(yùn)算結(jié)果儲(chǔ)存于使用者自己設(shè)定的變量x(或其他變量,如y、x0、x1等)內(nèi),例如

>>x=(5*2+3.5)/5

2

x=2.7000

MATLAB會(huì)將所有在百分比符號(hào)(%)之后的文字視為程序的注解(Comments),例如

>>y=(5*2+3.5)/5;%將運(yùn)算結(jié)果儲(chǔ)存于變量y內(nèi),但不顯示于屏幕>>z=y^2%將運(yùn)算結(jié)果儲(chǔ)存于變量z內(nèi),并顯示于屏幕z=7.2900

在上例中,百分比符號(hào)之后的文字會(huì)被MATLAB忽略不執(zhí)行,但它的使用可提高M(jìn)ATLAB程序的可讀性。

MATLAB可同時(shí)執(zhí)行以逗號(hào)(,)或分號(hào)(;)隔開的數(shù)個(gè)表達(dá)式,例如>>x=sin(pi/3);y=x^2;z=y*10z=7.5000

若一個(gè)數(shù)學(xué)表達(dá)式太長(zhǎng),可用三個(gè)句點(diǎn)(...)將其延伸到下一行,例如>>z=10*sin(pi/3)*...sin(pi/3)z=7.5000

提醒:變量命名規(guī)則與使用——(1)第一個(gè)字母必需是英文字母;(2)字母間不可留空格;

(3)最多只能有31個(gè)字母,MATLAB會(huì)忽略多余字母;

(4)MATLAB在使用變量時(shí),不需預(yù)先經(jīng)過變量聲明的程序,而且所有數(shù)值變量均以默認(rèn)的double數(shù)據(jù)類型儲(chǔ)存。

1.3向量與矩陣的處理

在上述的各例中,MATLAB的變量用來儲(chǔ)存標(biāo)量(Scalars),其實(shí)MATLAB中的變量還可用來儲(chǔ)存向量(Vectors)及矩陣(Martrix),MATLAB以復(fù)數(shù)矩陣為最基本的運(yùn)算單元,既可以對(duì)它整體地進(jìn)行處理,也可以對(duì)它的某個(gè)或某些元素進(jìn)行單獨(dú)的處理,例如

>>s=[1352];%注意[]的使用及各數(shù)字間的空白間隔>>t=2*s+1t=

3

37115

在上例中,MATLAB使用中括號(hào)([]),來建立一個(gè)行向量[1352](或是1×4大小的矩陣[1352]),將其儲(chǔ)存于變量s中,再對(duì)其進(jìn)行運(yùn)算產(chǎn)生另一新的行向量[37115],并將其結(jié)果儲(chǔ)存在變量t中。

提醒:s=[1352]與s=[1,3,5,2]的效果是一樣的。

MATLAB也可取出向量中的一個(gè)元素或一部分來做運(yùn)算,例如(接上例)>>t(3)=2%將向量t的第三個(gè)元素改為2t=

3725

>>t(6)=10%在向量t中參與第六個(gè)元素,其值為10t=

3725010

>>t(4)=[]%將向量t的第四個(gè)元素刪除t=

372010

>>s(2)*3+t(4)%取出向量s的其次個(gè)元素和向量t的第四個(gè)元素做運(yùn)算ans=9

>>t(2:4)-1%取出向量t的其次至第四個(gè)元素做運(yùn)算ans=

61-1

用類似上述建立向量的方法,使用者可以建立m×n大小的矩陣(m代表矩陣的行數(shù),n代表矩陣的列數(shù)),但必需在每一行結(jié)尾加上分號(hào)(;),例如

>>A=[1234;5678;9101112];%建立3×4的矩陣A>>A%顯示矩陣A內(nèi)容A=

123456789101112

同樣,我們可以對(duì)矩陣進(jìn)行各種處理,例如(接上例)

>>A(2,3)=5%將矩陣A其次行、第三列的元素值改為5A=

1234

4

56589101112

>>B=A(2,1:3)%取出矩陣A其次行、第一列至第三列的元素值,%儲(chǔ)存成一新矩陣BB=565

>>A=[ABˊ]%將矩陣B轉(zhuǎn)置后,再以列向量并入矩陣AA=

123455658691011125

>>A(:,2)=[]%刪除矩陣A其次列(:代表所有行,[]代表空矩陣)

A=

13455586911125

>>A=[A;4321]%在原矩陣A中,參與第四行A=

134555869111254321

>>A([14],:)=[]%刪除第一、第四行(:代表所有列

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論