基于MATLAB GUI平臺(tái)的用于控制系統(tǒng)計(jì)算機(jī)輔助分析與設(shè)計(jì)的軟件的設(shè)計(jì)與實(shí)現(xiàn)計(jì)算機(jī)畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料
《基于MATLAB GUI平臺(tái)的用于控制系統(tǒng)計(jì)算機(jī)輔助分析與設(shè)計(jì)的軟件的設(shè)計(jì)與實(shí)現(xiàn)計(jì)算機(jī)畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料》由會(huì)員分享,可在線閱讀,更多相關(guān)《基于MATLAB GUI平臺(tái)的用于控制系統(tǒng)計(jì)算機(jī)輔助分析與設(shè)計(jì)的軟件的設(shè)計(jì)與實(shí)現(xiàn)計(jì)算機(jī)畢業(yè)設(shè)計(jì)學(xué)位論文范文模板參考資料(35頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、大慶石油學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 摘 要 MATLAB語(yǔ)言是一種十分有效的工具,能容易地解決在系統(tǒng)仿真及控制系統(tǒng)計(jì)算機(jī)輔助設(shè)計(jì)領(lǐng)域的教學(xué)與研究中遇到的問(wèn)題,它可以將使用者從繁瑣的底層編程中解放出來(lái),把有限的寶貴時(shí)間更多地花在解決科學(xué)問(wèn)題上。MATLAB GUI是MATLAB的人機(jī)交互界面。由于GUI本身提供了windows基本控件的支持,并且具有良好的事件驅(qū)動(dòng)機(jī)制,同時(shí)提供了MATLAB數(shù)學(xué)庫(kù)的接口,所以GUI對(duì)于控制系統(tǒng)仿真的平臺(tái)設(shè)計(jì)顯得十分合適。GUI對(duì)于每個(gè)用戶窗口生成.fig和.m文件。前者負(fù)責(zé)界面的設(shè)計(jì)信息,后者負(fù)責(zé)后臺(tái)代碼的設(shè)計(jì)。 本文所做的研究主要是基于MATLAB
2、GUI平臺(tái),結(jié)合控制系統(tǒng)基礎(chǔ)理論和MATLAB控制系統(tǒng)工具箱,實(shí)現(xiàn)了用于控制系統(tǒng)計(jì)算機(jī)輔助分析與設(shè)計(jì)的軟件。本軟件主要功能:實(shí)現(xiàn)傳遞函數(shù)模型輸入、狀態(tài)方程模型輸入、模型裝換、控制系統(tǒng)穩(wěn)定性分析、系統(tǒng)可觀性可控性判斷,繪制系統(tǒng)奈奎斯特圖、波特圖、根軌跡圖以及零極點(diǎn)分布圖。在繼續(xù)完善的基礎(chǔ)上能夠用于本科自動(dòng)控制原理教程的教學(xué)實(shí)驗(yàn)和一般的科學(xué)研究。 關(guān)鍵詞:控制系統(tǒng);MATLAB GUI;計(jì)算機(jī)輔助設(shè)計(jì) Abstract MATLAB language is a very effective tool,and can be easily resolved in
3、the system simulation and control system of teaching in the field of computer-aided design and research problems,it could be the bottom of the user from tedious programming liberate the limited spend more valuable time to solve scientific problems.The MATLAB GUI is the interactive interface.As the G
4、UI itself provides the basic control windows support,and has a good mechanism for event-driven,while providing the MATLAB Math Library interface,the GUI for control system simulation platform for the design of it is suitable. GUI window generated for each user. Fig and.M file. The former is responsi
5、ble for the design of the interface information,which is responsible for the design of the background code. Research done in this article is mainly based on MATLAB GUI platform,the basis of combination of control system theory and MATLAB Control System Toolbox,the realization of control systems for
6、 computer-aided analysis and design software. The main functions of the software: the realization of transfer function model input,the state equation model input,the model fitted for the control system stability analysis,system observability controllability judgments、rendering the system Nyquist dia
7、gram、Bode plots、root locus and Pole-zero distribution. While continuing to improve based on the principle of automatic control can be used for undergraduate teaching course experiments and scientific research in general. Key words:Control System;MATLAB GUI; Computer-assistant design 目
8、 錄 第1章 概述 1 1.1 論文選題背景和意義 1 1.2 計(jì)算機(jī)輔助分析與設(shè)計(jì)在控制系統(tǒng)仿真中的發(fā)展現(xiàn)狀 1 1.3 本文主要內(nèi)容 3 第2章 控制系統(tǒng)與MATLAB語(yǔ)言 4 2.1 控制系統(tǒng)理論基礎(chǔ) 4 2.2 MATLAB語(yǔ)言與控制系統(tǒng)工具箱 5 第3章 MATLAB GUI簡(jiǎn)介及應(yīng)用 9 3.1 MATLAB GUI 9 3.2 軟件設(shè)計(jì)步驟 10 第4章 仿真系統(tǒng)測(cè)試與演示 16 4.1 控制系統(tǒng)的模型輸入 16 4.2 控制系統(tǒng)的穩(wěn)定性分析 19 4.3 控制系統(tǒng)可控可觀性分析 20 4.4 控制系統(tǒng)頻率響應(yīng) 23 4.5 控制系統(tǒng)時(shí)域響應(yīng) 27
9、 4.6 控制系統(tǒng)根軌跡繪制 28 結(jié)論 31 參考文獻(xiàn) 32 致 謝 33 III 第1章 概述 1.1 論文選題背景和意義 自動(dòng)控制原理是自動(dòng)控制專業(yè)和自動(dòng)化專業(yè)的主要課程之一,是研究自動(dòng)控制技術(shù)的基礎(chǔ)理論課,是必修的專業(yè)基礎(chǔ)課程。自動(dòng)控制原理能使學(xué)生掌握自動(dòng)控制系統(tǒng)的基本理論、基本概念、分析和設(shè)計(jì)方法,為更深入地學(xué)習(xí)現(xiàn)代控制策略和研究各種自動(dòng)控制系統(tǒng)打下理論基礎(chǔ)[1]。 在自動(dòng)控制領(lǐng)域里的科學(xué)研究和工程應(yīng)用中有大量繁瑣的計(jì)算與仿真曲線繪制任務(wù),給控制系統(tǒng)的分析和設(shè)計(jì)帶來(lái)了巨大的工作量,為了解決海量計(jì)算的問(wèn)題,各種控制系統(tǒng)設(shè)計(jì)與仿真的軟件層出不
10、窮,技術(shù)人員憑借這些產(chǎn)品強(qiáng)大的計(jì)算和繪圖功能,使系統(tǒng)分析和設(shè)計(jì)的效率得以大大提高。然而在眾多控制系統(tǒng)設(shè)計(jì)與仿真軟件中,MATLAB以其強(qiáng)大的計(jì)算功能、豐富方便的圖形功能、模塊化的計(jì)算方法,以及動(dòng)態(tài)系統(tǒng)仿真工具Simulink;脫穎而出成為控制系統(tǒng)設(shè)計(jì)和仿真領(lǐng)域中的佼佼者,同時(shí)也成為了當(dāng)今最流行的科學(xué)工程語(yǔ)言。 然而MATLAB自身所存在的某些缺點(diǎn)限制了它的應(yīng)用范圍件。一、MATLAB以解釋方式執(zhí)行效率很低,這在處理圖像是特別明顯;二、MATLAB程序不能脫離其環(huán)境運(yùn)行,因此它不能被用于開發(fā)商用軟件;三、MATLAB的程序是后綴為m的腳本文件它對(duì)用戶完全透明,因此用戶可任意進(jìn)行修改,但有時(shí)為維
11、護(hù)代碼的完整性和安全性,并不希望用戶了解或更改核心程序;四、其界面編寫功能也過(guò)于簡(jiǎn)單,以致不能滿足用戶的高級(jí)需求。但是在本文軟件設(shè)計(jì)開發(fā)主要應(yīng)用于自動(dòng)控制原理教學(xué)實(shí)驗(yàn),并不需要復(fù)雜的圖像處理和對(duì)代碼完整性及安全性的苛刻保護(hù),所以運(yùn)用MATLAB GUI能較為簡(jiǎn)單得對(duì)軟件進(jìn)行設(shè)計(jì)開發(fā)[2]。 1.2 計(jì)算機(jī)輔助分析與設(shè)計(jì)在控制系統(tǒng)仿真中的發(fā)展現(xiàn)狀 控制理論是一門發(fā)展極為迅速的學(xué)科[3]。在近一個(gè)世紀(jì)的發(fā)展過(guò)程中,其“經(jīng)典控制理論”與“現(xiàn)代控制理論”的體系己基本完善,近三十年來(lái)的“先進(jìn)控制理論”,如“大系統(tǒng)理論”、各類“智能控制”等,亦取得了蓬勃的發(fā)展和可喜的進(jìn)展。今天的控制理論及其應(yīng)用技術(shù)己
12、不再僅是自動(dòng)化學(xué)科的重要基礎(chǔ),而已成為機(jī)電工程、航空航天等現(xiàn)代工程技術(shù)中不可缺少的一部分,并在經(jīng)濟(jì)學(xué)、生物學(xué)、醫(yī)學(xué)等領(lǐng)域中獲得越來(lái)越廣泛的應(yīng)用。伴隨著控制理論向深度和廣度發(fā)展的是大量控制方法和設(shè)計(jì)算法的產(chǎn)生,而現(xiàn)代計(jì)算機(jī)及計(jì)算技術(shù)的發(fā)展則使得這些設(shè)計(jì)過(guò)程可通過(guò)CAD程序來(lái)實(shí)現(xiàn)。這樣一種發(fā)展不僅使設(shè)計(jì)者解脫了繁瑣的甚至是人工無(wú)法實(shí)現(xiàn)的手工計(jì)算困境,而且使一般設(shè)計(jì)人員(特別使非控制類專業(yè)人員)不必精通某些細(xì)小定理的復(fù)雜數(shù)學(xué)證明,或?qū)σ恍?shí)際中不易發(fā)生的特殊情況進(jìn)行詳盡的考察而應(yīng)用各種控制理論進(jìn)行控制系統(tǒng)的設(shè)計(jì),從而極大地增加了控制理論的實(shí)用價(jià)值和實(shí)際應(yīng)用,同時(shí)也促進(jìn)了控制理論的發(fā)展。 早在197
13、3年,美國(guó)學(xué)者M(jìn)elsa教授和Jones博士出版了一本專著[4],書中給出了一套控制系統(tǒng)計(jì)算機(jī)輔助分析與設(shè)計(jì)的程序,包括求系統(tǒng)的根軌跡、頻域響應(yīng)、時(shí)間響應(yīng)、以及各種控制系統(tǒng)設(shè)計(jì)的子程序。這一時(shí)期出現(xiàn)的軟件還有瑞典Lund工學(xué)院CACSD軟件INTRAC、日本的古田勝久教授主持開發(fā)的DPACS-F軟件、英國(guó)Manchester理工大學(xué)的控制系統(tǒng)計(jì)算機(jī)輔助設(shè)計(jì)軟件包、英國(guó)劍橋大學(xué)推出的線性系統(tǒng)分析與設(shè)計(jì)軟件CLADP等等。此外,在控制系統(tǒng)的計(jì)算機(jī)輔助分析與設(shè)計(jì)研究進(jìn)展中還出現(xiàn)了一些專門的仿真語(yǔ)言,如比較流行的仿真語(yǔ)言有ACSL,CSMP,TSIM,ESL等。這種仿真語(yǔ)言要求用戶依照它所提供的語(yǔ)句和
14、大量的模型模塊編寫一個(gè)描述系統(tǒng)的程序,然后才可以對(duì)控制系統(tǒng)進(jìn)行仿真。 我國(guó)較有影響的控制系統(tǒng)仿真與CAD成果[5]是中科院系統(tǒng)科學(xué)研究所主持的國(guó)家自然科學(xué)基金重大科研項(xiàng)目開發(fā)的CADCSC軟件和清華大學(xué)孫增沂、袁曾任教授的著作和程序等。1988年中科院沈陽(yáng)自動(dòng)化所馬紀(jì)虎研究員主持開發(fā)的CSMP-C仿真語(yǔ)言,是國(guó)內(nèi)有代表意義的仿真語(yǔ)言。 近十年來(lái),隨著MATLAB語(yǔ)言和Simulink仿真環(huán)境在控制系統(tǒng)研究與教學(xué)中日益廣泛的應(yīng)用,在系統(tǒng)仿真、自動(dòng)控制等領(lǐng)域,國(guó)外很多高校在教學(xué)與研究中都將MATLAB/Simulink語(yǔ)言作為首選的計(jì)算機(jī)工具,我國(guó)的科學(xué)工作者和教育工作者也逐漸意識(shí)到MATLA
15、B語(yǔ)言的重要性,并且在很多搞笑的本科自動(dòng)控制原理實(shí)驗(yàn)教學(xué)中得到應(yīng)用[6]。 MATLAB 是MathWorks公司于1982年推出的一套高性能的數(shù)值計(jì)算和可視化軟件。它集數(shù)值分析、矩陣運(yùn)算、信號(hào)處理和圖形顯示于一體,構(gòu)成了一個(gè)方便、界面友好的用戶環(huán)境。它還包括了ToolBox(工具箱)[7]的各類問(wèn)題的求解工具,可用來(lái)求解特定學(xué)科的問(wèn)題。MATLAB所具備的強(qiáng)有力的計(jì)算功能和圖形表現(xiàn),以及各種工具箱提供的豐富的專用函數(shù),為設(shè)計(jì)研究人員避免重復(fù)繁瑣的計(jì)算和編程,更快、更好、更準(zhǔn)確地進(jìn)行控制系統(tǒng)分析和設(shè)計(jì)提供了極大的幫助。 Mathworks公司于2004年7月發(fā)布了MATLAB的最新版本MA
16、TLAB7。新版本針對(duì)編程環(huán)境、代碼效率、數(shù)據(jù)可視化、數(shù)學(xué)計(jì)算、文件等方面進(jìn)行了升級(jí),同時(shí)包含了功能強(qiáng)大的控制產(chǎn)品集以支持控制系統(tǒng)設(shè)計(jì)過(guò)程的每一個(gè)環(huán)節(jié),借助于使用MATLAB中與控制相關(guān)的工具箱能夠?qū)崿F(xiàn)許多前沿的控制設(shè)計(jì)方法;此外,與MATLAB7同時(shí)發(fā)布的Simulink6.0可以輔助技術(shù)人員更方便地建立控制系統(tǒng)模型,并通過(guò)仿真不斷優(yōu)化設(shè)計(jì)。 1.3 本文主要內(nèi)容 本文主要研究及工作是通過(guò)利用MATLAB GUI[8]界面,為本科自動(dòng)控制理論教學(xué)的課程實(shí)驗(yàn)提供一個(gè)控制系統(tǒng)分析與設(shè)計(jì)的仿真軟件。此軟件主要功能:實(shí)現(xiàn)傳遞函數(shù)模型輸入、狀態(tài)方程模型輸入、模型轉(zhuǎn)換、控制系統(tǒng)穩(wěn)定性分析、系統(tǒng)可觀性
17、可控性判斷,繪制系統(tǒng)奈奎斯特圖、波特圖、根軌跡圖。因此,首先本論文將根據(jù)自動(dòng)控制原理的本科教學(xué)要求對(duì)控制系統(tǒng)基礎(chǔ)理論和MATLAB軟件作以介紹;其次MATLAB GUI是這個(gè)仿真軟件開發(fā)的基礎(chǔ),本文將詳細(xì)介紹,最后將舉例介紹這個(gè)控制系統(tǒng)仿真軟件的設(shè)計(jì)與實(shí)現(xiàn)過(guò)程。 第2章 控制系統(tǒng)與MATLAB語(yǔ)言 2.1 控制系統(tǒng)理論基礎(chǔ) 控制系統(tǒng)理論的基礎(chǔ)知識(shí)—自動(dòng)控制原理,是自動(dòng)化學(xué)科的重要理論基礎(chǔ),是專門研究有關(guān)自動(dòng)控制系統(tǒng)中基本概念、基本原理和基本方法的一門課程,是高等學(xué)校自動(dòng)化類專業(yè)的一門核心基礎(chǔ)理論課程。學(xué)好自動(dòng)控制理論對(duì)掌握自動(dòng)化技術(shù)
18、有著重要的作用?!蹲詣?dòng)控制原理》[9]是自動(dòng)控制技術(shù)的基礎(chǔ)理論,主要分“古典控制理論”和“現(xiàn)代控制理論”兩大部分。古典控制理論以傳遞函數(shù)為基礎(chǔ)研究單輸入單輸出一類定??刂葡到y(tǒng)的分析與設(shè)計(jì)問(wèn)題,現(xiàn)代控制理論是六十年代在古典控制理論基礎(chǔ)上隨著科學(xué)技術(shù)發(fā)展和工程實(shí)踐需要而迅速發(fā)展起來(lái)的,它以狀態(tài)空間法為基礎(chǔ),研究多輸入多輸出、時(shí)變、非線性、高精度、高效能等控制系統(tǒng)的分析與設(shè)計(jì)問(wèn)題。 2.1.1 控制系統(tǒng)的古典理論與現(xiàn)代理論 20世紀(jì)50年代,經(jīng)典控制理論形成體系[10]。經(jīng)典控制理論的數(shù)學(xué)基礎(chǔ)是拉普拉斯變換,系統(tǒng)的基本數(shù)學(xué)模型是傳遞函數(shù),主要的分析和綜合方法有Bode圖法、根軌跡法、勞斯(Rou
19、th)判據(jù)、奈奎斯特(Nquist)穩(wěn)定判據(jù)、PID控制等。經(jīng)典控制系統(tǒng)理論雖然至今仍廣泛應(yīng)用在許多工程技術(shù)領(lǐng)域中,但也存在著明顯的局限性,主要表現(xiàn)在:主要用于單輸入單輸出線性時(shí)不變系統(tǒng)而難以有效地處理多輸入多輸出系統(tǒng);只采用外部描述方法討論控制系統(tǒng)的輸入輸出關(guān)系,而難以揭示系統(tǒng)內(nèi)部的特性;控制系統(tǒng)設(shè)計(jì)方法基本上是一種試湊法而不能提供最優(yōu)控制的方法和手段等等。 在20世紀(jì)50年代核反應(yīng)堆控制研究、尤其是航天控制研究的推動(dòng)下,控制 理論在1960年前后開始了從經(jīng)典階段到現(xiàn)代階段的過(guò)渡,其中的重要標(biāo)志是卡爾曼(R.E.Kalman)系統(tǒng)地把狀態(tài)空間法引入到系統(tǒng)與控制理論中?,F(xiàn)代控制理論以狀態(tài)空
20、間模型為基礎(chǔ),研究系統(tǒng)內(nèi)部的結(jié)構(gòu),提出可控性、可觀測(cè)性概念及分析方法,也提出了一系列設(shè)計(jì)方法,如LQR(Linear Quadratic Regulator)和LQG(Linear Quadratic Gaussian)最優(yōu)控制方法、Kalman濾波器方法、極點(diǎn)配置方法、基于狀態(tài)觀測(cè)器的反饋控制方法等?,F(xiàn)代控制理論克服了經(jīng)典控制的許多局限性,它能夠解決某些非線性和時(shí)變系統(tǒng)的控制問(wèn)題,適用于多輸入多輸出反饋控制系統(tǒng),可以實(shí)現(xiàn)最優(yōu)控制規(guī)律。此外,現(xiàn)代控制理論不僅能夠研究確定性的系統(tǒng),而且可以研究隨機(jī)的過(guò)程,即包含了隨機(jī)控制系統(tǒng)的分析和設(shè)計(jì)方法。 2.1.2 控制系統(tǒng)理論的基本內(nèi)容 研究控制
21、系統(tǒng)分析與設(shè)計(jì)的基礎(chǔ)知識(shí),包括控制系統(tǒng)的穩(wěn)定性、穩(wěn)態(tài)特性和動(dòng)態(tài)特性,以及控制系統(tǒng)的校正與計(jì)算機(jī)輔助分析。主要內(nèi)容:控制系統(tǒng)的數(shù)學(xué)模型、控制系統(tǒng)的時(shí)域分析、根軌跡分析、頻域分析、控制系統(tǒng)的校正、非線性系統(tǒng)的近似分析、現(xiàn)代控制理論基礎(chǔ)、采樣控制系統(tǒng)的分析與設(shè)計(jì)、控制系統(tǒng)的計(jì)算機(jī)輔助分析與設(shè)計(jì)等。 2.2 MATLAB語(yǔ)言與控制系統(tǒng)工具箱 MATLAB是由MathMorks公司于1984年推出的一套數(shù)值計(jì)算軟件自推出之后,該公司不斷接收和吸取各學(xué)科領(lǐng)域權(quán)威人士為之編寫的函數(shù)和程序,并將它們轉(zhuǎn)換為MATLAB的工具箱[11]。這樣,使MATLAB得到不斷的發(fā)展和擴(kuò)充,可以實(shí)現(xiàn)數(shù)值分析、優(yōu)化、統(tǒng)計(jì)、
22、偏微分方程數(shù)值解、自動(dòng)控制、信號(hào)處理、圖像處理等若干個(gè)領(lǐng)域的計(jì)算和圖形顯示功能。它將不同數(shù)學(xué)分支的算法以函數(shù)的形式分類成庫(kù),使用時(shí)直接調(diào)用這些函數(shù)并賦予實(shí)際參數(shù)就可以解決問(wèn)題,快速而且準(zhǔn)確。 2.2.1 MATLAB軟件介紹 MATLAB的名字由Matrix和Laboratory兩詞的前三個(gè)字母組合而成,始創(chuàng)者是時(shí)任美國(guó)新墨西哥大學(xué)計(jì)算機(jī)科學(xué)系主任的CleveMoler教授。于1984年由MathWokrs公司推出(DOS版)。1993年推出MATLAB4.0(windows版)。1997年MATLAB 5.0版問(wèn)世。1999年春已到了5.3版。今天MATLAB己成為國(guó)際上最優(yōu)秀的科技應(yīng)用
23、軟件之一,其強(qiáng)大的科學(xué)計(jì)算與可視化功能、簡(jiǎn)單易用的開放式可推展環(huán)境以及多達(dá)三十余個(gè)面向不同領(lǐng)域而擴(kuò)展的工具箱(Tool- Box)的支持,使得MATLAB在許多學(xué)科領(lǐng)域成為科學(xué)計(jì)算、計(jì)算機(jī)輔助設(shè)計(jì)與分析的基礎(chǔ)工具和首選平臺(tái)。 MATLAB主要由MATLAB主程序、Simulink動(dòng)態(tài)系統(tǒng)仿真和MATLAB工具箱三大部分組成[12]。其中MATLAB主程序包括MATLAB語(yǔ)言、工作環(huán)境、句柄圖形、數(shù)學(xué)函數(shù)庫(kù)和應(yīng)用程序接口五個(gè)部分;Simulink是用于動(dòng)態(tài)系統(tǒng)仿真的交互式系統(tǒng),允許用戶在屏幕上繪制框圖來(lái)模擬一個(gè)系統(tǒng),并能動(dòng)態(tài)地控制該系統(tǒng),目前的Simulink可以處理線性、非線性、連續(xù)、離散、
24、多變量及多系統(tǒng);工具箱實(shí)際就是用MATLAB的基本語(yǔ)句編寫的各種子程序集和函數(shù)庫(kù),用于解決某一方面的特定問(wèn)題或?qū)崿F(xiàn)某一類的新算法,它是開放性的,可以應(yīng)用也可以根據(jù)自己的需要進(jìn)行擴(kuò)展。MATLAB工具箱大體可分為功能性的工具箱和學(xué)科性的工具箱兩類。功能性的工具箱主要用于擴(kuò)展MATLAB的符號(hào)計(jì)算功能、圖形建模功能、文字處理功能和與硬件的實(shí)時(shí)交互過(guò)程,如符號(hào)計(jì)算工具箱等:學(xué)科性的工具箱則有較強(qiáng)的專業(yè)性,用于解決特定的問(wèn)題,如信號(hào)處理工具箱和通信工具箱。 MATLAB的主要特點(diǎn)[13]:(1)簡(jiǎn)單易學(xué):MATLAB是一門編程語(yǔ)言,其語(yǔ)法規(guī)則與一般的結(jié)構(gòu)化高級(jí)編程語(yǔ)言如C語(yǔ)言等大同小異,而且使用更方
25、便,具有一般語(yǔ)言基礎(chǔ)的用戶很快就可以掌握。(2)代碼短小高效:由于MATLAB已經(jīng)將數(shù)學(xué)問(wèn)題的具體算法編成了現(xiàn)成的函數(shù),用戶只要熟悉算法的特點(diǎn)、適用場(chǎng)合、函數(shù)的調(diào)用格式和參數(shù)意義等,通過(guò)調(diào)用函數(shù)很快就可以解決問(wèn)題,二不必花大量的時(shí)間糾纏于具體算法的實(shí)現(xiàn)。(3)計(jì)算功能非常強(qiáng)大:該軟件具有強(qiáng)大的矩陣計(jì)算功能,利用一般的符號(hào)和函數(shù)就可以對(duì)矩陣進(jìn)行加、減、乘、除運(yùn)算以及轉(zhuǎn)置和求逆等運(yùn)算,而且可以處理稀疏矩陣等特殊的矩陣,非常適合于有限元等大型數(shù)值運(yùn)算的編程。此外,該軟件現(xiàn)有的數(shù)十個(gè)工具箱,可以解決應(yīng)用中的很多數(shù)學(xué)問(wèn)題。(4)強(qiáng)大的圖形繪制和處理功能:該軟件可以繪制常見的二維三維圖形,如線形圖,條形圖
26、,餅圖,散點(diǎn)圖,直方圖,誤差條圖,玫瑰花圖,極坐標(biāo)圖等。利用有關(guān)函數(shù),可以對(duì)三維圖形進(jìn)行顏色光照材質(zhì)紋理和透明性設(shè)置并進(jìn)行交互處理??茖W(xué)計(jì)算要設(shè)計(jì)到大量數(shù)據(jù)的處理,利用圖形展示數(shù)據(jù)場(chǎng)的特征,能顯著提高數(shù)據(jù)處理的效率,提高對(duì)數(shù)據(jù)反饋信息的處理速度和能力。MATLAB提供了豐富的科學(xué)計(jì)算可視化功能,利用它可以繪制二維三維矢量圖、等值線圖、三維表面圖、曲面圖、二維三維流線圖、三維流錐、流沙圖、流帶圖、流管圖、卷曲圖和剖面圖等,還可以進(jìn)行動(dòng)畫制作?;贛ATLAB句柄圖形對(duì)象,結(jié)合繪圖工具函數(shù),可以根據(jù)需要用MATLAB繪制自己的圖形。(5)可擴(kuò)展性能:可擴(kuò)展性能視該軟件的一大優(yōu)點(diǎn),用戶可以自己編寫M
27、文件,組成自己的工具箱,方便的解決本領(lǐng)域內(nèi)常見的計(jì)算問(wèn)題。此外,利用MATLAB編譯器可以生成獨(dú)立的可執(zhí)行程序,從而可以隱藏算法并避免依賴MATLAB。MATLAB支持DDE、OLE、ActiveX自動(dòng)化和COM組建等機(jī)制,可以與同樣支持該技術(shù)的應(yīng)用程序接口。利用最近推出的COM生成器和Excel生成器,可以利用給定的M文件和MEX文件創(chuàng)建COM組建和Excel插件,從而能夠?qū)崿F(xiàn)與VB、VC等程序的無(wú)縫集成。利用Web服務(wù)器,可以實(shí)現(xiàn)MATLAB于網(wǎng)絡(luò)的接口。采用互操作技術(shù),可以實(shí)現(xiàn)MATLAB與.NET程序的接口。利用端口API函數(shù),可以實(shí)現(xiàn)MATLAB與硬件的接口。 MATLAB主程序是
28、一種以數(shù)組和矩陣為元素的工程計(jì)算語(yǔ)言,主要包括以下幾部分: 一、 MATLAB語(yǔ)言 MATLAB編程語(yǔ)言是一種面向科學(xué)與工程計(jì)算的高級(jí)語(yǔ)言允許按照數(shù)學(xué)習(xí)慣的方式編寫程序由于它符合人們思維方式的編寫模式使得該語(yǔ)言比Basci、Fortran、C、Pascal等高級(jí)語(yǔ)言更容易學(xué)習(xí)和應(yīng)用MATLAB語(yǔ)言以矢量和矩陣為基本的數(shù)據(jù)單元包含流程控制語(yǔ)句順序選擇循環(huán)條件轉(zhuǎn)移和暫停等大量的運(yùn)算符豐富的函數(shù)多種數(shù)據(jù)結(jié)構(gòu)輸入輸出以及面向?qū)ο缶幊踢@些既可以滿足簡(jiǎn)單問(wèn)題的求解也適合于開發(fā)復(fù)雜的大型程序MATLAB不僅僅是一套打好包的函數(shù)庫(kù)同時(shí)也是一種高級(jí)的面向?qū)ο蟮木幊陶Z(yǔ)言使用MATLAB能夠卓有成效地開發(fā)自己的
29、程序MATLAB自身的許多函數(shù)實(shí)際上也包括所有的工具箱函數(shù)都是用M文件實(shí)現(xiàn)的。 二、MATLAB7.0工作環(huán)境[14] MATLAB工作環(huán)境包括變量查看器、當(dāng)前路徑選擇菜單、命令歷史記錄窗口、當(dāng)前工作空間窗口、命令控制窗口、圖形處理窗口、程序編輯器、模型編輯器、GUI編輯器和MATLAB附帶的大量M文件。 三、MATLAB繪圖功能 MATLAB句柄圖形控制系統(tǒng)是MATLAB數(shù)據(jù)可視化的核心部分。它既包含對(duì)二維和三維數(shù)據(jù)的可視化、圖形處理、動(dòng)畫制作等高層次的繪圖命令,也包含可以修改圖形局部及編制完整圖形界面的低層次繪圖命令。這些功能可使用戶創(chuàng)建富有表現(xiàn)力的彩色圖形,可視化工具包括曲面宣染
30、、線框圖、偽彩圖、光源、三維等位線圖、圖像顯示、動(dòng)畫、體積可視化等同時(shí)MATLAB還提供了句柄圖形機(jī)制,使用該機(jī)制可對(duì)圖形進(jìn)行靈活的控制。使用GUIDE工具可以方便地使用句柄圖形創(chuàng)建自己的GUI界面。 四、 MATLAB數(shù)學(xué)函數(shù)庫(kù)[15] MATALB擁有500多種數(shù)學(xué)、統(tǒng)計(jì)及工程函數(shù),可使用戶立刻實(shí)現(xiàn)所需的強(qiáng)大的數(shù)學(xué)計(jì)算功能。這些函數(shù)是由各領(lǐng)域的專家學(xué)者開發(fā)的數(shù)值計(jì)算程序,使用了安全、成熟、可靠的算法,從而保證了最大的運(yùn)算速度和可靠的結(jié)果。MATLAB內(nèi)置的強(qiáng)大數(shù)學(xué)函數(shù)庫(kù)既包含了最基本的數(shù)學(xué)運(yùn)算函數(shù),如求和正弦、余弦等函數(shù),也包含了豐富的復(fù)雜函數(shù),如矩陣特征值矩陣求逆傅里葉變換等函數(shù)。
31、 五、MATLAB應(yīng)用程序接口 MATLAB應(yīng)用程序接口是通過(guò)MATLAB的API庫(kù)完成的,MATLAB通過(guò)對(duì)API庫(kù)函數(shù)的調(diào)用可以與其他應(yīng)用程序交換數(shù)據(jù)。同樣,用戶也可在其他語(yǔ)言中通過(guò)該接口函數(shù)庫(kù)調(diào)用MATLAB的程序。MATLAB應(yīng)用程序接口中的內(nèi)容包括實(shí)時(shí)動(dòng)態(tài)連接外部C或Fortran應(yīng)用函數(shù),獨(dú)立C或Fortran程序中調(diào)用MATLAB函數(shù)輸入輸出各種MATLAB及其他標(biāo)準(zhǔn)格式的數(shù)據(jù)文件,創(chuàng)建圖文并貌的技術(shù)文檔,包括MATLAB圖形、命令,并可通過(guò)word輸出。 2.2.2 控制系統(tǒng)工具箱介紹 面向控制工程應(yīng)用一直是MATLAB的主要功能之一,早期的版本就提供了控制系統(tǒng)設(shè)計(jì)工具箱
32、。20世紀(jì)90年代初的3.5版推出RobustToolBox,4.0版推出基于模塊圖的控制系統(tǒng)仿真軟件Simulink。到目前為止,MATLAB中包含的控制工程類工具箱己超過(guò)十個(gè)。MATLAB所具備的強(qiáng)有力的計(jì)算功能和圖形表現(xiàn),以及各種工具箱提供的豐富的專用函數(shù),為設(shè)計(jì)研究人員避免重復(fù)繁瑣的計(jì)算和編程,更快、更好;更準(zhǔn)確地進(jìn)行控制系統(tǒng)分析和設(shè)計(jì)提供了極大的幫助。 控制系統(tǒng)工具箱主要函數(shù)[16] 一、線性定常系統(tǒng)(LTI)數(shù)學(xué)模型生成函數(shù) tf( ):創(chuàng)建傳遞函數(shù)模型; ss( ):創(chuàng)建狀態(tài)方程模型; zpk ( ):創(chuàng)建零一極點(diǎn)模型; dss( ):創(chuàng)建離散狀態(tài)方程模型; get
33、( ):獲取模型參數(shù)信息; set( ):設(shè)置模型參數(shù)。 二、數(shù)學(xué)模型轉(zhuǎn)換函數(shù) c2d ( ):連續(xù)系統(tǒng)轉(zhuǎn)換成離散系統(tǒng); d2c ( ):離散系統(tǒng)轉(zhuǎn)換成連續(xù)系統(tǒng); d2d ( ):離散系統(tǒng)重新采樣。 三、時(shí)間響應(yīng)函數(shù) impulse ( ):計(jì)算并繪制沖擊響應(yīng); step ( ):計(jì)算并繪制階躍響應(yīng)。 四、頻率響應(yīng)函數(shù) bode ( ):計(jì)算并繪制波特響應(yīng); nichols ( ):計(jì)算奈克爾斯圖; nyquist ( ):計(jì)算奈奎斯特圖; pzmap ( ):繪制零極點(diǎn)圖。 五、控制系統(tǒng)分析與設(shè)計(jì)圖形用戶接口 ltiview:打開
34、定常線性系統(tǒng)(LTI)響應(yīng)分析窗口; sisotool:打開單輸入單輸出系統(tǒng)(SISO)設(shè)計(jì)圖形用戶接口。 六、模型轉(zhuǎn)換函數(shù) tf2zp( ):傳遞函數(shù)模型轉(zhuǎn)換為零極點(diǎn)模型; tf2ss( ):傳遞函數(shù)模型轉(zhuǎn)換為狀態(tài)方程模型; ss2tf( ):狀態(tài)方程模型轉(zhuǎn)換為傳遞函數(shù)模型; ss2zp( ):狀態(tài)方程模型轉(zhuǎn)換為零極點(diǎn)模型。 七、其他函數(shù) str2num( ):將輸入字符串轉(zhuǎn)換為數(shù)值; get(handles.edit,string):讀取MATLAB GUI控件參數(shù)。 第3章 MATLAB GUI簡(jiǎn)介及應(yīng)用 3.1 MATLAB GUI 用戶界面(或接口)[
35、17]是指:人與機(jī)器(或程序)之間交互作用的工具和方法。如鍵盤、鼠標(biāo)、跟蹤球、話筒都可成為與計(jì)算機(jī)交換信息的接口。 圖形用戶界面(Graphical User Interfaces ,GUI)則是由窗口、光標(biāo)、按鍵、菜單、文字說(shuō)明等對(duì)象(Objects)構(gòu)成的一個(gè)用戶界面。用戶通過(guò)一定的方法(如鼠標(biāo)或鍵盤)選擇、激活這些圖形對(duì)象,使計(jì)算機(jī)產(chǎn)生某種動(dòng)作或變化,比如實(shí)現(xiàn)計(jì)算、繪圖等。假如讀者所從事的數(shù)據(jù)分析、解方程、計(jì)算結(jié)果可視工作比較單一,那么一般不會(huì)考慮GUI 的制作。但是如果讀者想向別人提供應(yīng)用程序,想進(jìn)行某種技術(shù)、方法的演示,想制作一個(gè)供反復(fù)使用且操作簡(jiǎn)單的專用工具,那么圖形用戶界面也許
36、是最好的選擇之一。 MATLAB 為表現(xiàn)其基本功能而設(shè)計(jì)的演示程序demo 是使用圖形界面的最好范例。MATLAB的用戶,在指令窗中運(yùn)行demo 打開那圖形界面后,只要用鼠標(biāo)進(jìn)行選擇和點(diǎn)擊,就可瀏覽那豐富多彩的內(nèi)容。用戶圖形界面(GUI)是程序的圖形化界面。一個(gè)好的GUI 能夠使程序更加容易的使用。它提供用戶一個(gè)常見的界面,還提供一些控件,例如,按鈕,列表框,滑塊,菜單等。用戶圖形界面應(yīng)當(dāng)是易理解且操作是可以預(yù)告的,所以當(dāng)用戶進(jìn)行某一項(xiàng)操作,它知道如何去做。例如,當(dāng)鼠標(biāo)在一個(gè)按鈕上發(fā)生了單擊事件,用戶圖形界面初始化它的操作,并在按鈕的標(biāo)簽上對(duì)這個(gè)操作進(jìn)行描述。 創(chuàng)建MATLAB用戶圖形界面
37、必須由三個(gè)基本元素:組件在MATLAB GUI 中的每一個(gè)項(xiàng)目(按鈕,標(biāo)簽,編輯框等)都是一個(gè)圖形化組件。組件可分為三類:圖形化控件(按鈕,編輯框,列表,滾動(dòng)條等),靜態(tài)元素(窗口和文本字符串),菜單和坐標(biāo)系。圖形化控件和靜態(tài)元素由函數(shù)uicontrol 創(chuàng)建,菜單由函數(shù)uimenu 和uicontextmenu 創(chuàng)建,坐標(biāo)系經(jīng)常用于顯示圖形化數(shù)據(jù),由函數(shù)axes 創(chuàng)建.圖象窗口(Figure)。GUI 的每一個(gè)組件都必須安排圖象窗口中。以前,我們?cè)诋嫈?shù)據(jù)圖象時(shí),圖象窗口會(huì)被自動(dòng)創(chuàng)建。但我們還可以用函數(shù)figure 來(lái)創(chuàng)建空?qǐng)D象窗口,空?qǐng)D象窗口經(jīng)常用于放置各種類型的組件。最后,如果用戶用鼠標(biāo)單
38、擊或用鍵盤鍵入一些信息,那么程序就要有相應(yīng)的動(dòng)作。鼠標(biāo)單擊或鍵入信息是一個(gè)事件,如果MATLAB 程序運(yùn)行相應(yīng)的函數(shù),那么MATLAB函數(shù)肯定會(huì)有所反應(yīng)。例如,如果用戶單擊一按鈕,這個(gè)事件必然導(dǎo)致相應(yīng)的matlab語(yǔ)句執(zhí)行,這些相應(yīng)的語(yǔ)句被稱為回應(yīng),只要執(zhí)行GUI 的單個(gè)圖形組件,必須有一個(gè)回應(yīng)。 3.2 軟件設(shè)計(jì)步驟 運(yùn)行MATLAB7.0,在command window中輸入guide在彈出窗口中選擇blank gui點(diǎn)OK進(jìn)入MATLAB GUI 選擇界面左上方“OK”也就是push button按鈕,并命名為“傳遞函數(shù)模型輸入”,此控件乃仿真系統(tǒng)軟件設(shè)計(jì)的關(guān)鍵所在。如下圖所示:
39、 圖3-1 建立傳遞函數(shù)模型輸入控件 因本文最先設(shè)計(jì)的是傳遞函數(shù)模型輸入,所以以此為基礎(chǔ)來(lái)展示軟件的設(shè)計(jì)過(guò)程。右擊pushbutton控件選擇“view callbacks”中的“callback”進(jìn)入編程界面,如下文字所示: % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reser
40、ved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) 在handles下一行編輯所需程序,因傳遞函數(shù)模型需要兩個(gè)參數(shù)輸入分別為分子和分母所以在MATLAB GUI界面上需建立兩個(gè)控件做為參數(shù)輸入,并用TXT控件給edit控件做標(biāo)注,如下圖所示: 圖3-2 建立edit控件 傳遞函數(shù)模型輸入相關(guān)程序: num=str2num(get(handles.edit1,string)); den=str2num(
41、get(handles.edit2,string)); w=logspace(-2,2); H=freqs(num,den,w); x=real(H); y=imag(H); figure(1); plot(x,y); title(system Nyquist Graphics); xlabel(Real Part of G(s)); ylable(Image Part of G(s)); gird; 點(diǎn)運(yùn)行,出現(xiàn)參數(shù)輸入界面如下圖所示: 圖3-3 運(yùn)行push buton輸入edit參數(shù) 在edit text中輸入相關(guān)參數(shù),比如:分子下輸入1,在分母下輸入1
42、,5,20點(diǎn)“push button”按鈕可得輸入系統(tǒng)的頻率響應(yīng)以及奈奎斯特圖。 一個(gè)MATLAB GUI界面可以設(shè)置多個(gè)push button控件,以傳遞函數(shù)模型為例,添加一個(gè)push button,命名為“模型轉(zhuǎn)換”,實(shí)現(xiàn)傳遞函數(shù)模型向狀態(tài)方程和零極點(diǎn)轉(zhuǎn)換,如下圖所示: 圖3-4 增加模型轉(zhuǎn)換控件 在模型轉(zhuǎn)換控件下輸入以下程序: num=str2num(get(handles.edit1,string)); den=str2num(get(handles.edit2,string)); [z,p,k]=tf2zp(num,den); disp(system zero-
43、point is); z disp(system polar-point is); p disp(system gain is); k [A,B,C,D]=tf2ss(num,den); disp(system Controller Realization is:); A B C D 多個(gè)控件并不沖突,各自實(shí)現(xiàn)程序的回應(yīng)。 類似可以設(shè)計(jì)狀態(tài)方程描述的控制系統(tǒng),不過(guò)在此系統(tǒng)中需要四個(gè)參數(shù)輸入,所以相較傳遞函數(shù)模型多了兩個(gè)edit控件,同時(shí)也利用TXT空間對(duì)edit控件進(jìn)行標(biāo)注,如下圖所示: 圖3-5 建立矩陣參數(shù)edit 同理在“狀態(tài)方程模型”下
44、編寫程序,如下所示: A=str2num(get(handles.edit1,string)); B=str2num(get(handles.edit2,string)); C=str2num(get(handles.edit3,string)); D=str2num(get(handles.edit4,string)); [num,den]=ss2tf(A,B,C,D,1); [z,p,k]=ss2zp(A,B,C,D,1); disp(System Transfer Function of the first input is:); num den disp(Its z
45、ero-pole form is:); z p k 實(shí)現(xiàn)輸入一狀態(tài)方程模型控制系統(tǒng)并將之轉(zhuǎn)為傳遞函數(shù)和零極點(diǎn)模型。 控制系統(tǒng)仿真軟件設(shè)計(jì)中的其他設(shè)計(jì)如根軌跡、波特圖、奈奎斯特圖的繪制,系統(tǒng)穩(wěn)定性的判斷,可控性可觀性判斷都可以由上述方法實(shí)現(xiàn),這里不便一一舉例。 第4章 仿真系統(tǒng)測(cè)試與演示 4.1 控制系統(tǒng)的模型輸入 連續(xù)線性系統(tǒng)一般可以用傳遞函數(shù)表示,也可以用狀態(tài)方程表示,它們使用的場(chǎng)合不同,前者是經(jīng)典控制理論常用的模型,后者是“現(xiàn)代控制理論”的基礎(chǔ),但它們是描述同樣系統(tǒng)的
46、不同方式。除了這兩種描述方法之外,還常用零極點(diǎn)形式來(lái)表示連續(xù)線性系統(tǒng)模型。MATLAB控制系統(tǒng)工具箱支持的系統(tǒng)模型有狀態(tài)方程模型(State-space models)、傳遞函數(shù)模型(Transfer functions)、零極點(diǎn)模型(Zero-pole-gain)和頻率響應(yīng)模型(Frequency response dat)。本系統(tǒng)僅針對(duì)線性連續(xù)系統(tǒng)范圍進(jìn)行研究,主要采用前三種模型來(lái)討論。 4.1.1控制系統(tǒng)模型輸入 一、 系統(tǒng)傳遞函數(shù)模型的表示及MATLAB下的輸入方法 線性系統(tǒng)的傳遞函數(shù)模型一般用微分方程表示,為了化簡(jiǎn)微分方程的求解,經(jīng)過(guò)Laplace積分變換后傳遞函數(shù)表示為:
47、 (4-1) 在MATLAB中傳遞函數(shù)被看作兩個(gè)多項(xiàng)式的比值。依照MATLAB慣例,將多項(xiàng)式的系數(shù)按s的降冪次序排列后表示為一個(gè)數(shù)值向量,這樣用兩個(gè)向量可以表示傳遞函數(shù)的分子、分母多項(xiàng)式,再利用控制系統(tǒng)工具箱的tf()函數(shù)就可以得到系統(tǒng)的傳遞函數(shù)模型。 (4-2) 二、系統(tǒng)狀態(tài)方程模型的表示及MATLAB下的輸入方法 線性系統(tǒng)的狀態(tài)方程模型一般表示為: (4-3) 三、 軟件實(shí)現(xiàn)及舉例 首先打開所設(shè)計(jì)的軟件,出現(xiàn)圖4-1對(duì)話框。點(diǎn)“控制系統(tǒng)模型輸入”按鈕,進(jìn)入?yún)?shù)輸入界面。將會(huì)看到兩種輸入方式:傳遞函數(shù)模型和
48、狀態(tài)方程模型。如圖4-2所示 圖 4-1 控制系統(tǒng)模型輸入對(duì)話框 圖4-2 兩種輸入方式 在分母框輸入:1;分子框輸入:1 5 20;點(diǎn)擊“傳遞函數(shù)→狀態(tài)方程&零極點(diǎn)”按鈕可進(jìn)行模型轉(zhuǎn)換,轉(zhuǎn)換結(jié)果顯示如下: system zero-point is z = 0 0 1 0 system polar-point is p = 0 0 -1.6180 0.6180 system gain is k = 1 1 system Controller Re
49、alization is: A = - 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1 0 B = 1 0 0 0 C = 0 1 -1 0 0 1 0 0 D = 0 0 同理在另一欄輸入矩陣參數(shù),比如說(shuō)A=[-3 -8 -2 -4;1 0 0 0;0 1 0 0;0 0 1 0];B=[1;0;0;0];
50、C=[0 0 1 1];D=[0]。點(diǎn)擊“狀態(tài)方程→傳遞函數(shù)&零極點(diǎn)”按鈕進(jìn)行模型轉(zhuǎn)換,轉(zhuǎn)換結(jié)果如下: System Transfer Function of the first input is: num = 0 0 0.0000 1.0000 1.0000 den = 1.0000 3.0000 8.0000 2.0000 4.0000 Its zero-pole form is: z = -1 p = -1.4737 + 2.2638i -1.4737 - 2.2638i -0.0263 + 0
51、.7399i -0.0263 - 0.7399i k = 1 4.2 控制系統(tǒng)的穩(wěn)定性分析 4.2.1 控制系統(tǒng)的穩(wěn)定性 一、MATLAB下系統(tǒng)穩(wěn)定性的直接求解 在系統(tǒng)特性研究中,系統(tǒng)的穩(wěn)定性是最重要指標(biāo),如果系統(tǒng)穩(wěn)定,則可以進(jìn)一步分析系統(tǒng)的其他性能,如果系統(tǒng)不穩(wěn)定,系統(tǒng)則不能直接應(yīng)用。由控制理論可知,以狀態(tài)方程模型表示的系統(tǒng),它的狀態(tài)矩陣A的特征根和以傳遞函數(shù)模型表示的系統(tǒng)的極點(diǎn)是一致,只有他們的值都為負(fù)數(shù)時(shí)系統(tǒng)才會(huì)穩(wěn)定。因此,直接而簡(jiǎn)便的方法就是求出系統(tǒng)的極點(diǎn),則系統(tǒng)的穩(wěn)定性就可以立即得到。在MATLAB控制系統(tǒng)工具箱中,eig(G)函數(shù)可以求取一個(gè)連續(xù)線性定常系統(tǒng)極
52、點(diǎn),其中系統(tǒng)模型G可以為傳遞函數(shù)、狀態(tài)方程或零極點(diǎn)模型表示。另外,用圖形的方式繪制出系統(tǒng)所有特征根或極點(diǎn)在s復(fù)平面上的位置,所以判定連續(xù)系統(tǒng)是否穩(wěn)定只需看一下系統(tǒng)所有特征根或極點(diǎn)是否均位于虛軸左側(cè)即可。 二、軟件實(shí)現(xiàn)方法及舉例 同樣先打開設(shè)計(jì)的軟件,不過(guò)這次選擇“系統(tǒng)穩(wěn)定性分析”按鈕,進(jìn)入分析界面如圖4-3所示。 圖4-3 系統(tǒng)穩(wěn)定性分析界面 在彈出的參數(shù)輸入框中輸入4.1.1狀態(tài)方程參數(shù)矩陣,點(diǎn)擊“分析”按鈕,可在MATLAB中顯示出分析的結(jié)果,分析結(jié)果如下: System is stable System is minimal Phase 為了驗(yàn)證結(jié)果是否正確,添加“零
53、極點(diǎn)分布”控件來(lái)繪出控制系統(tǒng)零極點(diǎn)圖,用以對(duì)比。點(diǎn)擊“零極點(diǎn)分布”按鈕,可得圖4-4。 圖4-4 控制系統(tǒng)零極點(diǎn)分布圖 上圖顯示極點(diǎn)全在虛軸左側(cè),系統(tǒng)穩(wěn)定。 4.3 控制系統(tǒng)可控可觀性分析 4.3.1 控制系統(tǒng)的可控性分析 一、 線性系統(tǒng)的可控性 線性系統(tǒng)的可控性和可觀測(cè)性是基于狀態(tài)方程的控制理論基礎(chǔ),可控性和可觀測(cè)性的概念是Kalmna于1960年提出的,這些性質(zhì)為系統(tǒng)的狀態(tài)反饋設(shè)計(jì)、觀測(cè)器的設(shè)計(jì)等提供了依據(jù)。 假設(shè)系統(tǒng)由狀態(tài)方程(A,B,C,D)給出,可以構(gòu)造這個(gè)系統(tǒng)的可控性判定矩陣: (4-4) 若矩陣Tc是滿秩矩陣,則系統(tǒng)稱為完全可控的。如果
54、系統(tǒng)不是滿秩矩陣,則它的秩為系統(tǒng)的可控狀態(tài)的個(gè)數(shù)。在MATLAB下,如果已知系統(tǒng)的可控性判定矩陣Tc,用rxa(Tc)即可求出矩陣的秩。 而系統(tǒng)的可控性判定劇中Tc可以通過(guò)MATLAB的ctrb( )函數(shù)得到,即 (4-5) 二、軟件實(shí)現(xiàn)方法及舉例 打開所設(shè)計(jì)軟件,選擇“可控可觀性分析”進(jìn)入分析界面,如圖4-5所示: 圖4-5 控制系統(tǒng)可控可觀性分析界面 在彈出參數(shù)輸入框中按4.1.1輸入狀態(tài)方程參數(shù)矩陣,然后按“系統(tǒng)可控性分析”可得分析結(jié)果: System is Controllab
55、le System First Controllable Canonnical Form is: Ac1 = 0 0 0 -4 1 0 0 -2 0 1 0 -8 0 0 1 -3 Bc1 = 1 0 0 0 Cc1 = 0 0 1 -2 The Transformation Matrix is: Q = 1 -3 1 19
56、 0 1 -3 1 0 0 1 -3 0 0 0 1 4.3.2 控制系統(tǒng)的可觀性測(cè)試 一、線性系統(tǒng)的可觀測(cè)性 類似于系統(tǒng)的可控性,系統(tǒng)的可觀測(cè)性就是指系統(tǒng)內(nèi)部狀態(tài)是不是可以由系統(tǒng)輸出信號(hào)重建起來(lái)的性質(zhì)。 可觀測(cè)性判斷定矩陣To構(gòu)造形式: (4-6) 利用MATLAB的obsv(A,C)函數(shù)可以直接得到To,再通過(guò)rank(To)數(shù)學(xué)函數(shù)可以知曉To是否滿秩。 二、軟件實(shí)現(xiàn)方法及舉例 同理進(jìn)入4.2.2
57、分析界面在參數(shù)輸入框按4.1.1輸入狀態(tài)方程參數(shù)矩陣,然后點(diǎn)擊“系統(tǒng)可觀性分析”按鈕,在MATLAB上顯示結(jié)果如下: System is Observable. system First Observable Canonnical Form is: Ao1 = 0 1.0000 -0.0000 -0.0000 -0.0000 0 1.0000 -0.0000 0 0 -0.0000 1.0000 -4.0000 -2.0000 -8.0000 -3.000
58、0 Bo1 = 0 0 1 -2 Co1 = 1 0 0 0 The Transformation Matrix is: P = 0.5000 -0.2500 1.2500 0.1250 -0.5000 0.2500 -0.2500 -0.1250 0.5000 0.7500 0.2500 0.1250 0.5000 -0.7500 -0.2500 -0.1250 4.4 控制系統(tǒng)頻率響應(yīng) 4.4.1 控制系統(tǒng)波特圖
59、一、 波特圖 在研究控制系統(tǒng)的頻率響應(yīng)時(shí),由于信號(hào)的頻率范圍很寬(從幾赫到幾百兆赫以上),放大電路的放大倍數(shù)也很大(可達(dá)百萬(wàn)倍),為壓縮坐標(biāo),擴(kuò)大視野,在畫頻率特性曲線時(shí),頻率坐標(biāo)采用對(duì)數(shù)刻度,而幅值(以dB為單位)或相角采用線性刻度。在這種半對(duì)數(shù)坐標(biāo)中畫出的幅頻特性和相頻曲線稱為對(duì)數(shù)頻率特性或波特圖。在MATLAB中用bode( )函數(shù)來(lái)實(shí)現(xiàn)波特圖繪制。 二、 軟件實(shí)現(xiàn)及舉例 打開所設(shè)計(jì)軟件,選擇“控制系統(tǒng)頻率響應(yīng)”進(jìn)入頻率響應(yīng)界面如圖4-6所示: 圖4-6 控制系統(tǒng)頻率響應(yīng)界面 按4.1.1參數(shù)矩陣輸入,點(diǎn)擊“波特圖”按鈕可
60、得控制系統(tǒng)的波特圖如圖4-7所示: 圖 4-7 控制系統(tǒng)波特圖 4.4.2 控制系統(tǒng)開閉環(huán)奈奎斯特圖 一、奈奎斯特穩(wěn)定判據(jù) 奈奎斯特穩(wěn)定判據(jù)的基本形式表明,如果系統(tǒng)開環(huán)傳遞函數(shù)G(s)在 s復(fù)數(shù)平面的虛軸上既無(wú)極點(diǎn)又無(wú)零點(diǎn),那么閉環(huán)控制系統(tǒng)的特征方程在右半s平面上根的個(gè)數(shù)Z=P-2N。所謂特征方程是傳遞函數(shù)分母多項(xiàng)式為零的代數(shù)方程,P是開環(huán)傳遞函數(shù)在右半s平面上的極點(diǎn)數(shù),N是當(dāng)角頻率由0變化到∞時(shí) G(s)的軌跡沿逆時(shí)針?lè)较驀@實(shí)軸上點(diǎn)(-1,j0)的次數(shù)。奈奎斯特穩(wěn)定判據(jù)還指出:Z=0時(shí),閉環(huán)控制系統(tǒng)穩(wěn)定;Z≠0時(shí),閉環(huán)控制系統(tǒng)不穩(wěn)定。 奈奎斯特穩(wěn)定判據(jù)推廣形式:當(dāng)開環(huán)傳遞
61、函數(shù) G(s)在s復(fù)數(shù)平面的虛軸上存在極點(diǎn)或零點(diǎn)時(shí),必須采用判據(jù)的推廣形式才能對(duì)閉環(huán)系統(tǒng)穩(wěn)定性作出正確的判斷。在推廣形式判據(jù)中,開環(huán)頻率響應(yīng)G(s)的奈奎斯特圖不是按連續(xù)地由 0變到∞來(lái)得到的,變化路徑如圖所示,稱為推廣的奈奎斯特路徑。在這個(gè)路徑中,當(dāng)遇到位于虛軸上G(s)的極點(diǎn)(圖中用表示)時(shí),要用半徑很小的半圓從右側(cè)繞過(guò)。只要按這條路徑來(lái)作出G(s)從0變化到∞時(shí)的奈奎斯特圖,則Z=P-2N和關(guān)于穩(wěn)定性的結(jié)論仍然成立。MATLAB中用nyquist( )繪制系統(tǒng)閉環(huán)波特圖,用nichols( )繪制系統(tǒng)開環(huán)波特圖。 圖4-8 解釋說(shuō)明圖 二、軟件實(shí)現(xiàn)和舉例 同理進(jìn)入控制系統(tǒng)頻率響
62、應(yīng)界面,按照4.1.1輸入狀態(tài)方程參數(shù)劇中,點(diǎn)擊“閉環(huán)奈奎斯特圖”可得系統(tǒng)的閉環(huán)奈奎斯特圖如圖4-9所示: 圖4-9 控制系統(tǒng)閉環(huán)奈奎斯特圖 點(diǎn)擊“開環(huán)奈奎斯特圖”可得到控制系統(tǒng)開環(huán)奈奎斯特圖如圖4-10所示 圖4-10 控制系統(tǒng)開環(huán)乃奎斯特圖 4.5 控制系統(tǒng)時(shí)域響應(yīng) 一、控制系統(tǒng)階躍和脈沖響應(yīng) 當(dāng)激勵(lì)為單位階躍函數(shù)時(shí),電路的零狀態(tài)響應(yīng)稱為單位階躍響應(yīng),簡(jiǎn)稱階躍響應(yīng)。階躍響應(yīng)g(t)定義為:系統(tǒng)在單位階躍信號(hào)u(t)的激勵(lì)下產(chǎn)生的零狀態(tài)響應(yīng)。脈沖響應(yīng) impulse response在一個(gè)輸入上施加一個(gè)脈沖函數(shù)引起的時(shí)間響應(yīng)。
63、 二、軟件實(shí)現(xiàn)方法及舉例 打開所設(shè)計(jì)軟件,選擇“控制系統(tǒng)時(shí)域響應(yīng)”進(jìn)入時(shí)域響應(yīng)界面如圖4-11所示 圖4-11 控制系統(tǒng)時(shí)域分析界面 在輸入框中輸入分子:0 0 0 0 200;分母:1 20 140 400 384;接著分別點(diǎn)擊“階躍響應(yīng)”和“脈沖響應(yīng)”按鈕可得系統(tǒng)階躍響應(yīng)圖和脈沖響應(yīng)圖如圖4-12所示 圖4-12控制系統(tǒng)階躍與脈沖響應(yīng) 4.6 控制系統(tǒng)根軌跡繪制 一、根軌跡 根軌跡的繪制:在控制系統(tǒng)的分析和綜合中,往往只需要知道根軌跡的粗略形狀。由相角條件和幅值條件所導(dǎo)出的8條規(guī)則,為粗略地繪制出根軌跡圖提供方便的途徑。 根軌跡的分支數(shù)等于開環(huán)傳遞函數(shù)極點(diǎn)的個(gè)數(shù)。
64、根軌跡的始點(diǎn)(相應(yīng)于K=0)為開環(huán)傳遞函數(shù)的極點(diǎn),根軌跡的終點(diǎn)(相應(yīng)于K=∞)為開環(huán)傳遞函數(shù)的有窮零點(diǎn)或無(wú)窮遠(yuǎn)零點(diǎn)。根軌跡形狀對(duì)稱于坐標(biāo)系的橫軸(實(shí)軸)。實(shí)軸上的根軌跡按下述方法確定:將開環(huán)傳遞函數(shù)的位于實(shí)軸上的極點(diǎn)和零點(diǎn)由右至左順序編號(hào),由奇數(shù)點(diǎn)至偶數(shù)點(diǎn)間的線段為根軌跡。實(shí)軸上兩個(gè)開環(huán)極點(diǎn)或兩個(gè)開環(huán)零點(diǎn)間的根軌跡段上,至少存在一個(gè)分離點(diǎn)或會(huì)合點(diǎn),根軌跡將在這些點(diǎn)產(chǎn)生分岔。 在無(wú)窮遠(yuǎn)處根軌跡的走向可通過(guò)畫出其漸近線來(lái)決定。漸近線的條數(shù)等于開環(huán)傳遞函數(shù)的極點(diǎn)數(shù)與零點(diǎn)數(shù)之差。 根軌跡沿始點(diǎn)的走向由出射角決定,根軌跡到達(dá)終點(diǎn)的走向由入射角決定。 根軌跡與虛軸(縱軸)的交點(diǎn)對(duì)分析系統(tǒng)的穩(wěn)定性很重要,其
65、位置和相應(yīng)的K值可利用代數(shù)穩(wěn)定判據(jù)來(lái)決定。 根軌跡的應(yīng)用: (1) 用于分析開環(huán)增益(或其他參數(shù))值變化對(duì)系統(tǒng)行為的影響:在控制系統(tǒng)的極點(diǎn)中,離虛軸最近的一對(duì)孤立的共軛復(fù)數(shù)極點(diǎn)對(duì)系統(tǒng)的過(guò)渡過(guò)程行為具有主要影響,稱為主導(dǎo)極點(diǎn)對(duì)。在根軌跡上,很容易看出開環(huán)增益不同取值時(shí)主導(dǎo)極點(diǎn)位置的變化情況,由此可估計(jì)出對(duì)系統(tǒng)行為的影響。 (2) 用于分析附加環(huán)節(jié)對(duì)控制系統(tǒng)性能的影響:為了某種目的常需要在控制系統(tǒng)中引入附加環(huán)節(jié),這就相當(dāng)于引入新的開環(huán)極點(diǎn)和開環(huán)零點(diǎn)。通過(guò)根軌跡便可估計(jì)出引入的附加環(huán)節(jié)對(duì)系統(tǒng)性能的影響。 (3) 用于設(shè)計(jì)控制系統(tǒng)的校正裝置:校正裝置是為了改善控制系統(tǒng)性能而引入系統(tǒng)的附加環(huán)
66、節(jié),利用根軌跡可確定它的類型和參數(shù)設(shè)計(jì)。 二、軟件實(shí)現(xiàn)及舉例 打開所設(shè)計(jì)軟件,選擇“系統(tǒng)根軌跡圖”按鈕進(jìn)入系統(tǒng)根軌跡繪制界面如圖4-13所示 圖4-13 繪制控制系統(tǒng)根軌跡界面 在分子中輸入1;在分母中輸入1 5 20;點(diǎn)擊“演示”按鈕可得該系統(tǒng)的根軌跡圖如圖4-14所示 圖4-14控制系統(tǒng)根軌跡圖 結(jié)論 在控制系統(tǒng)的計(jì)算機(jī)輔助分析與設(shè)計(jì)領(lǐng)域中,MATLAB軟件的應(yīng)用已經(jīng)被廣泛接受。由于其系統(tǒng)的龐大與編程上的一定難度,對(duì)于初學(xué)者來(lái)說(shuō)要求具有一定的MATLAB基礎(chǔ)知識(shí)。而在本科自動(dòng)控制原理的實(shí)驗(yàn)教學(xué)中,本科學(xué)生對(duì)MATLAB了解一般較少。這就減弱了采用MATLAB軟件進(jìn)行實(shí)驗(yàn)教學(xué)的效果。 MATLAB GUI因其可視化操作界面對(duì)于控制系統(tǒng)仿真軟件的設(shè)計(jì)和開發(fā)是個(gè)很不錯(cuò)的選擇,簡(jiǎn)單、易懂、操作簡(jiǎn)單。特別適用于實(shí)驗(yàn)教學(xué)等對(duì)程序效率要求不苛刻的軟件設(shè)計(jì)。 此次設(shè)計(jì)的控制系統(tǒng)仿真軟件能基本實(shí)現(xiàn)所要求的功能,如:實(shí)現(xiàn)傳遞函數(shù)模型輸入、狀態(tài)方程模
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案