MATLAB语言与控制系统仿真
华中科技大学电气与电子工程学院应用电子工程系
康勇 李勋
二 00一年十一月
通过本课程的学习,使学生初步掌握当前流行
的演算式 MATLAB语言的基本知识,结合所学
课程, 自动控制原理,,学会运用 MATLAB语
言进行控制系统仿真和辅助设计的基本技能,
为今后从事科学研究打下较好的基础。
课程任务
学时安排与考试形式
总学时,32(其中上机学时 12)
考试方式:上机操作
第一章 计算机仿真和辅助设计概述( 1)
第二章 MATLAB语言基础( 5)
第三章 控制系统的数学描述与建模( 4)
第四章 控制系统的分析方法( 4)
第五章 SIMULINK仿真基础( 6)
教学内容
参考书目
?, MATLAB语言与自动控制系统设计, 机械工业出版社,1997年,魏克
新
?, 控制系统数字仿真与 CAD,机械工业大学出版社,1999年,张晓华
?, 反馈控制系统设计与分析 —— MATLAB语言应用, 清华大学出版社,
2000年,薛定宇
?, 基于 MATLAB的系统分析与设计 —— 控制系统,,西安电子科技大学
出版社,1999年,楼顺天
?, MATLAB5,X应用与技巧,,科学出版社,1999年,蒙以正
?, MATLAB5.X入门与应用,,科学出版社,1999年,柳承茂
?, MATLAB电子仿真与应用,,国防工业出版社,2001年,韩竹利
CH1、计算机仿真和辅助设计概述
第一节 计算机仿真和辅助设计的基本
概念
一、初识控制系统计算机仿真和辅助设计
例 exp1_1.m 例 exp1_2.m/exp1_3.m/exm1_2.mdl
二、计算机辅助设计与仿真的概念
1、计算机辅助设计的概念
? 计算机辅助设计( CAD)技术是利用计算机高速
而精确的计算能力、大容量存储和处理数据的能
力,结合设计者的综合分析、逻辑判断及创造性
思维,用以加快设计进程、缩短设计周期、提高
设计质量的技术。
? 说明:计算机辅助设计从广义上来讲它包含了计算
机仿真的内容,从狭义上说它的主要工作是利用计
算机的运算能力来处理设计者手工处理所遇到的不
便与繁琐。
2、计算机仿真的概念
仿真的定义
? 仿真的基本思想是利用物理的或数学的模型来类比
模仿现实过程,以寻求对真实过程的认识。它所遵
循的基本原则是相似性原理。
计算机仿真的定义
? 计算机仿真是基于所建立的系统仿真模型,利用计
算机对系统进行分析与研究的方法。
1、模型的定义
? 模型是对现实系统有关结构信息和行为的某种形式
的描述,是对系统的特征与变化规律的一种定量抽
象,是人们认识事物的一种手段或工具。
2、模型的分类
( 1)物理模型
? 指不以人的意志为转移的客观存在的实体,如:飞
行器研制中的飞行模型;船舶制造中的船舶模型等。
( 2)数学模型
? 是从一定的功能或结构上进行相似,用数学的方法
来再现原型的功能或结构特征。
三、计算机仿真模型
( 3)仿真模型
? 指根据系统的数学模型,用仿真语言转化为计算机
可以实施的模型。
四、计算机仿真的三要素及基本步骤(内容)
1、三要素
( 1)系统:研究的对象
( 2)模型:系统的抽象
( 3)计算机:工具与手段
?μ í3
?£ Dí ?? ?? ?ú
?¨á¢ ·? ?? ?£ Dí
?¨á¢ êy ?§?£ Dí ·? ?? êμ ?? ?á 1? ·? ??
í? 1, 1 ?? ?? ?ú ·? ?? èy òa ?× 1× ?μ í?
2、基本步骤
? 包括三个基本的内容:建模 仿真实验 结
果分析
?ê ìa μ? 2? ê?
éa ?? ?? ±?
?¨á¢ ?£ Dí
·? ?? êμ ?? éa ??
±à 3ì Dò
?? ?¤?y è·ó? ·?
è·è?
?? D ·? ??
ê? 3? ?á 1?
ê?
ê?
·?
·?
í? 1, 2 ?? ?? ?ú ·? ?? 3ì Dò á÷3ì
第二节 仿真的分类
一、按模型分类
1、物理仿真:采用物理模型,有实物介入!
? 具有效果逼真,精度高等优点,但造价高或耗时长,
大多在一些特殊场合下采用(如导弹、卫星一类飞
行器的动态仿真,发电站综合调度仿真与培训系统
等),具有实时性、在线的特点。
2、数学仿真:采用数学模型
? 在计算机上进行,具有非实时性、离线的特点,经
济、快速、实用。
二、按计算机类型分类
1、模拟仿真:采用数学模型,在模拟计算机上进行
的实验研究。 50年代
? 描述连续物理系统的动态过程比较自然、逼真,
具有仿真速度快、失真小、结果可靠的优点,但
受元器件性能影响,仿真精度较低,对计算机控
制系统的仿真较困难,自动化程度低。
? 模拟计算机的核心是运算部分,它由我们熟知的
“模拟运算放大器”为主要部件所构成。
2、数字仿真:采用数学模型,在数字计算机上借助
于数值计算方法所进行的仿真实验。 60年代
? 计算与仿真的精度较高。理论上计算机的字长可
以根据精度要求来“随意”设计,因此其仿真精
度可以是无限,但是由于受到误差积累、仿真时
间等因素影响,其精度也不易定得太高。
? 对计算机控制系统的仿真比较方便。仿真实验的
自动化程度较高,可方便地实现显示、打印等功
能。
? 计算速度比较低,在一定程度上影响到仿真结果
的可信度。但随着计算机技术的发展,“速度问
题”会在不同程度上有所改进与提高。
? 数字仿真没有专用的仿真软件支持,需要设计人
员用高级程序语言编写求解系统模型及结果输出
的程序。
3、混合仿真:结合了模拟仿真与数字仿真。
4、现代计算机仿真:采用先进的微型计算机,基于
专用的仿真软件、仿真语言来实现,其数值计算
功能强大,使用方便,易学。 80年代以来
第三节 仿真技术的应用与发展
一、仿真技术在工程中的应用
1、航空与航天工业
? 飞行器设计中的三级仿真体系:纯数学模拟(软
件)、半实物模拟、实物模拟或模拟飞行实验。
? 飞行员及宇航员训练用飞行仿真模拟器。
2、电力工业
? 电力系统动态模型实验:电力系统负荷分配、瞬态
稳定性以及最优潮流控制等。
? 电站操作人员培训模拟系统。
3、原子能工业
? 模拟核反应堆
? 核电站仿真器用来训练操作人员以及研究异常故
障的排除处理。
4、石油、化工及冶金工业
5、非工程领域
? 医学
? 社会学
? 宏观经济与商业策略的研究
二、应用仿真技术的意义
1、经济
? 大型、复杂系统直接实验是十分昂贵的,如:空
间飞行器的一次飞行实验的成本约在 1亿美元左右,
而采用仿真实验仅需其成本的 1/10~1/5,而且设备
可以重复使用。
2、安全
? 某些系统(如载人飞行器、核电装置等),直接
实验往往会有很大的危险,甚至是不允许的,而
采用仿真实验可以有效降低危险程度,对系统的
研究起到保障作用。
3、快捷
? 提高设计效率:比如电路设计,服装设计等等。
4、具有优化设计和预测的特殊功能
? 对一些真实系统进行结构和参数的优化设计是非
常困难的,这时仿真可以发挥它特殊的优化设计
功能。
? 在非工程系统中(如社会、管理、经济等系统),
由于其规模及复杂程度巨大,直接实验几乎不可
能,这时通过仿真技术的应用可以获得对系统的
某种超前认识。
三、仿真技术的发展趋势
1、硬件方面:基于多 CPU并行处理技术的全数字仿
真将有效提高仿真系统的速度,大大增强数字仿
真的实时性。
2、应用软件方面:直接面向用户的数字仿真软件不
断推陈出新,各种专家系统与智能化技术将更深
入地应用于仿真软件开发之中,使得在人机界面、
结果输出、综合评判等方面达到更理想的境界。
3、分布式数字仿真:充分利用网络技术,协调合作,
投资少,效果好。
4、虚拟现实技术:综合了计算机图形技术、多媒体
技术、传感器技术、显示技术以及仿真技术等多
学科,使人置身于真实环境之中。
第四节 计算机仿真软件
一、仿真软件的发展
1、程序编程阶段
? 所有问题(如:微分方程求解、矩阵运算、绘图等)
都是用高级算法语言(如 C,FORTRAN等)来编
写。
2、程序软件包阶段
? 出现了“应用子程序库”。
3、交互式语言阶段(仿真语言)
? 仿真语言可用一条指令实现某种功能,如“系统特
征值的求解”,使用人员不必考虑什么算法,以及
如何实现等低级问题。
4、模型化图形组态阶段
? 符合设计人员对基于模型图形化的描述。
二、几种仿真软件
1,PSPICE,ORCAD:通用的电子电路仿真软件,
适合于元件级仿真。
2,SYSTEM VIEW:系统级的电路动态仿真软件
3,MATLAB:具有强大的数值计算能力,包含各
种工具箱,其程序不能脱离 MATLAB环境而运行,
所以严格讲,MATLAB不是一种计算机语言,而
是一种高级的科学分析与计算软件。
4,SIMULINK:是 MATLAB附带的基于模型化图形
组态的动态仿真环境。
本章小结
? 仿真是对系统进行研究的一种实验方法,它的基本
原则是相似性原理。
? 数字仿真具有经济、安全、快捷的特点。
? 仿真是在模型上进行的,建立系统的模型是仿真的
关键内容。
? 系统模型可以分为物理模型、数学模型及仿真模型,
据此可将仿真分为物理仿真和数学仿真两大类。
? 系统、模型、计算机是数字仿真的三个基本要素,
建模、仿真实验及结果分析是三项基本内容。
? MATLAB与 SIMULINK是当今广泛为人们采用的控
制系统数字仿真与 CAD应用软件。
华中科技大学电气与电子工程学院应用电子工程系
康勇 李勋
二 00一年十一月
通过本课程的学习,使学生初步掌握当前流行
的演算式 MATLAB语言的基本知识,结合所学
课程, 自动控制原理,,学会运用 MATLAB语
言进行控制系统仿真和辅助设计的基本技能,
为今后从事科学研究打下较好的基础。
课程任务
学时安排与考试形式
总学时,32(其中上机学时 12)
考试方式:上机操作
第一章 计算机仿真和辅助设计概述( 1)
第二章 MATLAB语言基础( 5)
第三章 控制系统的数学描述与建模( 4)
第四章 控制系统的分析方法( 4)
第五章 SIMULINK仿真基础( 6)
教学内容
参考书目
?, MATLAB语言与自动控制系统设计, 机械工业出版社,1997年,魏克
新
?, 控制系统数字仿真与 CAD,机械工业大学出版社,1999年,张晓华
?, 反馈控制系统设计与分析 —— MATLAB语言应用, 清华大学出版社,
2000年,薛定宇
?, 基于 MATLAB的系统分析与设计 —— 控制系统,,西安电子科技大学
出版社,1999年,楼顺天
?, MATLAB5,X应用与技巧,,科学出版社,1999年,蒙以正
?, MATLAB5.X入门与应用,,科学出版社,1999年,柳承茂
?, MATLAB电子仿真与应用,,国防工业出版社,2001年,韩竹利
CH1、计算机仿真和辅助设计概述
第一节 计算机仿真和辅助设计的基本
概念
一、初识控制系统计算机仿真和辅助设计
例 exp1_1.m 例 exp1_2.m/exp1_3.m/exm1_2.mdl
二、计算机辅助设计与仿真的概念
1、计算机辅助设计的概念
? 计算机辅助设计( CAD)技术是利用计算机高速
而精确的计算能力、大容量存储和处理数据的能
力,结合设计者的综合分析、逻辑判断及创造性
思维,用以加快设计进程、缩短设计周期、提高
设计质量的技术。
? 说明:计算机辅助设计从广义上来讲它包含了计算
机仿真的内容,从狭义上说它的主要工作是利用计
算机的运算能力来处理设计者手工处理所遇到的不
便与繁琐。
2、计算机仿真的概念
仿真的定义
? 仿真的基本思想是利用物理的或数学的模型来类比
模仿现实过程,以寻求对真实过程的认识。它所遵
循的基本原则是相似性原理。
计算机仿真的定义
? 计算机仿真是基于所建立的系统仿真模型,利用计
算机对系统进行分析与研究的方法。
1、模型的定义
? 模型是对现实系统有关结构信息和行为的某种形式
的描述,是对系统的特征与变化规律的一种定量抽
象,是人们认识事物的一种手段或工具。
2、模型的分类
( 1)物理模型
? 指不以人的意志为转移的客观存在的实体,如:飞
行器研制中的飞行模型;船舶制造中的船舶模型等。
( 2)数学模型
? 是从一定的功能或结构上进行相似,用数学的方法
来再现原型的功能或结构特征。
三、计算机仿真模型
( 3)仿真模型
? 指根据系统的数学模型,用仿真语言转化为计算机
可以实施的模型。
四、计算机仿真的三要素及基本步骤(内容)
1、三要素
( 1)系统:研究的对象
( 2)模型:系统的抽象
( 3)计算机:工具与手段
?μ í3
?£ Dí ?? ?? ?ú
?¨á¢ ·? ?? ?£ Dí
?¨á¢ êy ?§?£ Dí ·? ?? êμ ?? ?á 1? ·? ??
í? 1, 1 ?? ?? ?ú ·? ?? èy òa ?× 1× ?μ í?
2、基本步骤
? 包括三个基本的内容:建模 仿真实验 结
果分析
?ê ìa μ? 2? ê?
éa ?? ?? ±?
?¨á¢ ?£ Dí
·? ?? êμ ?? éa ??
±à 3ì Dò
?? ?¤?y è·ó? ·?
è·è?
?? D ·? ??
ê? 3? ?á 1?
ê?
ê?
·?
·?
í? 1, 2 ?? ?? ?ú ·? ?? 3ì Dò á÷3ì
第二节 仿真的分类
一、按模型分类
1、物理仿真:采用物理模型,有实物介入!
? 具有效果逼真,精度高等优点,但造价高或耗时长,
大多在一些特殊场合下采用(如导弹、卫星一类飞
行器的动态仿真,发电站综合调度仿真与培训系统
等),具有实时性、在线的特点。
2、数学仿真:采用数学模型
? 在计算机上进行,具有非实时性、离线的特点,经
济、快速、实用。
二、按计算机类型分类
1、模拟仿真:采用数学模型,在模拟计算机上进行
的实验研究。 50年代
? 描述连续物理系统的动态过程比较自然、逼真,
具有仿真速度快、失真小、结果可靠的优点,但
受元器件性能影响,仿真精度较低,对计算机控
制系统的仿真较困难,自动化程度低。
? 模拟计算机的核心是运算部分,它由我们熟知的
“模拟运算放大器”为主要部件所构成。
2、数字仿真:采用数学模型,在数字计算机上借助
于数值计算方法所进行的仿真实验。 60年代
? 计算与仿真的精度较高。理论上计算机的字长可
以根据精度要求来“随意”设计,因此其仿真精
度可以是无限,但是由于受到误差积累、仿真时
间等因素影响,其精度也不易定得太高。
? 对计算机控制系统的仿真比较方便。仿真实验的
自动化程度较高,可方便地实现显示、打印等功
能。
? 计算速度比较低,在一定程度上影响到仿真结果
的可信度。但随着计算机技术的发展,“速度问
题”会在不同程度上有所改进与提高。
? 数字仿真没有专用的仿真软件支持,需要设计人
员用高级程序语言编写求解系统模型及结果输出
的程序。
3、混合仿真:结合了模拟仿真与数字仿真。
4、现代计算机仿真:采用先进的微型计算机,基于
专用的仿真软件、仿真语言来实现,其数值计算
功能强大,使用方便,易学。 80年代以来
第三节 仿真技术的应用与发展
一、仿真技术在工程中的应用
1、航空与航天工业
? 飞行器设计中的三级仿真体系:纯数学模拟(软
件)、半实物模拟、实物模拟或模拟飞行实验。
? 飞行员及宇航员训练用飞行仿真模拟器。
2、电力工业
? 电力系统动态模型实验:电力系统负荷分配、瞬态
稳定性以及最优潮流控制等。
? 电站操作人员培训模拟系统。
3、原子能工业
? 模拟核反应堆
? 核电站仿真器用来训练操作人员以及研究异常故
障的排除处理。
4、石油、化工及冶金工业
5、非工程领域
? 医学
? 社会学
? 宏观经济与商业策略的研究
二、应用仿真技术的意义
1、经济
? 大型、复杂系统直接实验是十分昂贵的,如:空
间飞行器的一次飞行实验的成本约在 1亿美元左右,
而采用仿真实验仅需其成本的 1/10~1/5,而且设备
可以重复使用。
2、安全
? 某些系统(如载人飞行器、核电装置等),直接
实验往往会有很大的危险,甚至是不允许的,而
采用仿真实验可以有效降低危险程度,对系统的
研究起到保障作用。
3、快捷
? 提高设计效率:比如电路设计,服装设计等等。
4、具有优化设计和预测的特殊功能
? 对一些真实系统进行结构和参数的优化设计是非
常困难的,这时仿真可以发挥它特殊的优化设计
功能。
? 在非工程系统中(如社会、管理、经济等系统),
由于其规模及复杂程度巨大,直接实验几乎不可
能,这时通过仿真技术的应用可以获得对系统的
某种超前认识。
三、仿真技术的发展趋势
1、硬件方面:基于多 CPU并行处理技术的全数字仿
真将有效提高仿真系统的速度,大大增强数字仿
真的实时性。
2、应用软件方面:直接面向用户的数字仿真软件不
断推陈出新,各种专家系统与智能化技术将更深
入地应用于仿真软件开发之中,使得在人机界面、
结果输出、综合评判等方面达到更理想的境界。
3、分布式数字仿真:充分利用网络技术,协调合作,
投资少,效果好。
4、虚拟现实技术:综合了计算机图形技术、多媒体
技术、传感器技术、显示技术以及仿真技术等多
学科,使人置身于真实环境之中。
第四节 计算机仿真软件
一、仿真软件的发展
1、程序编程阶段
? 所有问题(如:微分方程求解、矩阵运算、绘图等)
都是用高级算法语言(如 C,FORTRAN等)来编
写。
2、程序软件包阶段
? 出现了“应用子程序库”。
3、交互式语言阶段(仿真语言)
? 仿真语言可用一条指令实现某种功能,如“系统特
征值的求解”,使用人员不必考虑什么算法,以及
如何实现等低级问题。
4、模型化图形组态阶段
? 符合设计人员对基于模型图形化的描述。
二、几种仿真软件
1,PSPICE,ORCAD:通用的电子电路仿真软件,
适合于元件级仿真。
2,SYSTEM VIEW:系统级的电路动态仿真软件
3,MATLAB:具有强大的数值计算能力,包含各
种工具箱,其程序不能脱离 MATLAB环境而运行,
所以严格讲,MATLAB不是一种计算机语言,而
是一种高级的科学分析与计算软件。
4,SIMULINK:是 MATLAB附带的基于模型化图形
组态的动态仿真环境。
本章小结
? 仿真是对系统进行研究的一种实验方法,它的基本
原则是相似性原理。
? 数字仿真具有经济、安全、快捷的特点。
? 仿真是在模型上进行的,建立系统的模型是仿真的
关键内容。
? 系统模型可以分为物理模型、数学模型及仿真模型,
据此可将仿真分为物理仿真和数学仿真两大类。
? 系统、模型、计算机是数字仿真的三个基本要素,
建模、仿真实验及结果分析是三项基本内容。
? MATLAB与 SIMULINK是当今广泛为人们采用的控
制系统数字仿真与 CAD应用软件。