系统建模与仿真技术_第1页
系统建模与仿真技术_第2页
系统建模与仿真技术_第3页
系统建模与仿真技术_第4页
系统建模与仿真技术_第5页
已阅读5页,还剩404页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

系统建模与仿真技术参考书2004-7-1ISBN:9787302082286

肖田元,编著,系统仿真导论(第2版)

2010-2-1

ISBN:9787302204459

(美)著,仿真建模与分析(第4版).2009-9-1

ISBN:9787302204060等编著,国防工业出版社:2006-05-24ISBN:9787118050615著,系统建模与仿真,

2008-12-1ISBN:9787302175230计算机仿真技术第一篇连续系统仿真篇概论

连续系统模型经典的连续系统建模方法学离散相似法集中参数连续系统仿真语言

第二篇离散事件系统仿真篇离散事件系统仿真基础随机变量模型的确定与产生离散事件系统仿真策略离散事件系统仿真输出分析1概论1.1系统、模型与仿真1.2仿真科学与技术的应用1.3系统仿真的类型1.4当前仿真科学与技术研究的热点1.5MATLAB语言简介1.1系统、模型与仿真G.Golden的系统定义“按照某些规律结合起来,互相作用、互相依存的所有实体的集合或总和”。电动机调速系统实体: 电动机、测速元件、比较元件以及控制器。相互作用: 实现按给定要求调节电动机的速度。理发馆系统

实体: 服务员、顾客顾客: 按某种规律到达,服务完毕后顾客离去。服务员: 根据顾客的要求,按一定的程序服务。相互作用: 顾客到达模式影响着服务员的工作忙闲状态顾客排队状态。 服务员的多少和服务效率:影响着顾客接受服务的质量。1.1系统、模型与仿真数学建模是指对现实世界的一特定对象,为了某特定目的,做出一些重要的简化和假设,运用适当的数学工具得到一个数学结构,用它来解释特定现象的现实性态,预测对象的未来状况,提供处理对象的优化决策和控制,设计满足某种需要的产品等。一般来说数学建模过程可用如下图所示实际问题模型建立模型假设模型应用模型求解模型分析模型评价1.1系统、模型与仿真数学模型的定义数学模型还没有一个统一的准确的定义,因为站在不同的角度可以有不同的定义。不过我们可以给出如下说明。"数学模型是关于部分现实世界和为一种特殊目的而作的一个抽象的、简化的结构。"具体来说,数学模型就是为了某种目的,用字母、数学及其它数学符号建立起来的等式或不等式以及图表、图象、框图等描述客观事物的特征及其内在联系的数学结构表达式。1.1系统、模型与仿真建立数学模型的方法和步骤1、模型准备首先要了解问题的实际背景,明确建模目的,搜集必需的信息,尽量弄清对象的特征。2、模型假设根据对象的特征和建模目的,对问题进行必要的、合理的简化,用精确的语言作出假设,是建模至关重要的一步。如果对问题的所有因素一概考虑,无疑是一种有勇气但方法欠佳的行为,所以高超的建模者能充分发挥想象力、洞察力和判断力,善于辨别主次,而且为了使处理方法简单,应尽量使问题线性化、均匀化。3、模型构成根据所作的假设分析对象的因果关系,利用对象的内在规律和适当的数学工具,构造各个量间的等式关系或其它数学结构。可以利用各种数学工具,如:图论、排队论、线性规划、对策论等。值得注意的是,建立数学模型是为了让更多的人明了并能加以应用,因此工具愈简单愈有价值。1.1系统、模型与仿真4、模型求解可以采用解方程、画图形、证明定理、逻辑运算、数值运算等各种传统的和近代的数学方法,特别是计算机技术。一道实际问题的解决往往需要纷繁的计算,许多时候还得将系统运行情况用计算机模拟出来,因此编程和熟悉数学软件包能力便举足轻重。

5、模型检验与修正建立数学模型的目的是解决实际问题,因此必须把模型所得到的结果返回到实际问题,如果符合,说明模型是可用的。如果不符合,要重新检查建模的过程和基本假设是否合理。6、模型分析对模型解答进行数学上的分析。"横看成岭侧成峰,远近高低各不同,能否对模型结果作出细致精当的分析,决定了你的模型能否达到更高的档次。还要记住,不论那种情况都需进行误差分析,数据稳定性分析。1.1系统、模型与仿真数学模型分类

按照数学方法可以分为确定性模型,随机模型,和模糊模型。确定性模型:对象具有固定性,对象之间具有必然的联系。这类模型的表示形式可以是方程式,关系式,逻辑关系式,网络图等。所使用的方法是经典的数学方法。随机模型:这类模型对应的实际问题具有随机性,模型的表示工具是概率论,随机过程和数理统计等。模糊模型:这类模型对应的实际问题具有模糊性,模型的表示工具是模糊集合,模糊逻辑等。1.1系统、模型与仿真按照对研究对象的了解程度可以分为白箱模型,灰箱模型,和黑箱模型。白箱模型:可以用力学、电学理论等基本原理清楚地描述的对象。研究的主要问题是优化设计和控制方面的问题。灰箱模型:主要是指化工、水力、地质、气象、交通和经济领域中机理尚不清楚的现象。黑箱模型:这类模型主要包括可能是生态、生理、社会领域中机理更不清楚的现象,黑箱模型过去采用定性研究方法较多,但是研究正在向定量分析发展。定性因素的量化一般采用模糊数学的方法。按照数学模型的结构可以分为分析的,非分析的,和图论的。分析的模型:以无穷小量的概念为基础研究函数变量之间的依赖关系,如常微分方程、偏微分方程、积分方程等。非分析的模型:用符号系统表示方程或表达式变量和常数的运算关系(如代数)、或研究他们的坐标关系(如几何)、集合论、群论等都属于这种类型。图论模型:这类模型以点和点的联线(有向的和无向的)组成的用来表示各种关系的图形。既能表示分析的问题,又能表示非分析的问题。具有独特的运算形式,如结构树图,决策树图,状态图等。1.1系统、模型与仿真按照数学模型研究变量的特性可以分为连续模型和离散模型。线性模型和非线性模型。单变量模型和多变量模型。静态模型和动态模型。集中参数模型和分布参数模型。可以用有限个变量描述的系统,称为集中参数系统或集总参数系统。状态变化不能只用有限个参数而必须用场(一维或多维空间变量的函数)来描述的系统,称为分布参数系统。此外,若运动过程包含因在某种场内传递而造成的时滞,则这种时滞系统也属于分布参数系统。在实际问题中,参数的分布性质是普遍存在的。在很多情况下可以部分甚至全部地忽略这种分布性质,以便简化对问题的研究。例如,对于一个有质量分布的弹性飞行器,在研究它的扭转运动时,必须考察其内部各点的运动,把它当作分布参数系统。但在研究它的运动轨线时,就不必逐点考虑其内部运动,而把质量集中到质心来分析,即把它当作集中参数系统。1.1系统、模型与仿真数学建模实例重点是如何作出合理的、简化的假设,用数学语言确切表达实际问题,模型的结果如何解释实际现象。考虑以下问题。在雨中没有带伞行走,显然尽可能快走才能少淋雨。如果考虑降雨方向的变化,在全部时间内快跑不一定是最好的策略,我们讨论如何在雨中行走才能减少淋雨的程度。先分析一下这个问题的因素,主要有:降雨的大小、风向的变化(降雨的方向)、路程的远近及你的速度。为了简化问题,作以下假设:

1、降雨的强度保持不变。

2、人在雨中沿直线,以一个定常速度跑回目的地。

3、风速、风向始终保持不变。

4、把人体作为一个长方体。1.1系统、模型与仿真在上述假设下,我们可以给出涉及模型的所有参数和变量

1、人在雨中行走的距离D(米),时间t(秒)速度v(米/秒)

2、人的高度、宽度、厚度h,w,d(米)

3、身上淋雨的总量C(升)

4、降雨强度(单位时间平面降雨的厚度)I(厘米/时)显然,问题中身体的尺寸是不变的,从而身体被雨淋的面积S=2(wh+dh)+wd(米2)是不变的,人在雨中行走的距离D和降雨强度E也是不变的,可以任为是问题的参数。人在雨中行走的时间t(秒}速度V(米/秒)是问题的变量。t=D/v(秒)。考虑到参数单位的一致性,可以得到在整个行走其间被雨淋的总量

C=t×(I/3600)×S×0.01米3=(D/v)×(I/3600)×S×10(升)1.1系统、模型与仿真下面给出具体数据进行计算

1、人在雨中行走的距离D=1000(米),时间t(秒)速度v=6(米/秒)

2、人的高度、宽度、厚度h=1.5,w=0.5,d=0.2(米)

3、降雨强度(单位时间平面降雨的厚度)I=2(厘米/时)可以算出t=D/v=167(秒),从而可以得到在整个行走其间被雨淋的总量

C=(D/v)×(I/3600)×S×10(升)=167×(2/3600)×2.2×10=2.041(升)

仔细分析,人在雨中行走的时间为2分47秒,行走其间被雨淋的总量竟然为2.041(升),约4酒瓶水,这是不可思议的,这表明这个模型与实际情况不符合。按建模程序,要考虑对问题的假设是否合理。我们发现没有重视降雨的角度的影响把问题过于简化了。1.1系统、模型与仿真下面给出降雨速度r(米/秒),降雨角度,既雨滴落下反方向与行人前进方向的夹角Q,显然,前面提到的降雨强度受到降雨速度的影响,但它不仅仅取决降雨速度,还决定于雨滴落下的密度p、称为降雨强度系数,于是有I=pr。在此情况下,关键是考虑雨滴相对行走的下落方向,因为雨滴是迎面下落的,由经验知道,这时候,被淋到的只是行人的顶部和前面。首先考虑顶部的雨水,顶部的面积是wd,雨滴速度的垂直分量是rsinQ,因此在时间t=D/v内落在顶部的雨水量为C1=(D/v)wd(prsinQ)

再考虑前方表面淋雨的情况,前方的面积是wh,雨速的水平分量是rcosQ

+v。得到前方表面淋雨的水量是C2=(D/v)wh[p(rcosQ

+v)]。总的淋雨的水量C=C1+C2=pwd[drsinQ+h(rcosQ+v)]/v

假设降雨速度r=4米/秒,由降雨量I=2厘米/小时,可以估算出它的强度系数p=1.39×10-6。1.1系统、模型与仿真把人的行进速度分为两种情况进行分析,首先考虑v<=rsinQ),也就是说,行走速度慢于雨滴的水平速度,这时雨滴落在人的背后,淋在背后的雨水量为pwDh(rsinQ

-v))/v。于是淋在全身的雨水总量为C=pwD[drcosQ+h(rsinQ-v)]/v,显然,当v=rsinQ时,淋雨的水量最小。这时候,只是头顶被淋到。当v>rsinQ)时,也就是说,行走速度快于雨滴的水平速度,这时雨滴落在人的胸前,淋在胸前的雨水量为pwDh(v-rsinQ

))/v。于是淋在全身的雨水总量为C=pwD[drcosQ+h(v-rsinQ)]/v。综合分析从这个模型得到的结论是(1)如果雨是迎着你的前方落下,策略很简单,应以最大速度向前跑。(2)如果雨是从你的背后落下,这时候应控制在雨中的行走速度,使行走速度等于雨滴的水平速度。1.1系统、模型与仿真仿真的定义1961年,G.W.Morgenthater,首次技术性定义“仿真指在实际系统尚不存在的情况下对于系统或活动本质的实现”。1978年,Körn,“连续系统仿真”“用能代表所研究的系统的模型作实验”。1982年,Spriet―进一步将仿真的内涵加以扩充“所有支持模型建立与模型分析的活动即为仿真活动”1984年,Oren―给出了仿真的基本概念框架

“建模-实验-分析”,“仿真是一种基于模型的活动”1989年文传源又在“系统仿真在中国的发展”一文中对系统仿真的学科定义作了如下重要修订:“系统仿真是建立在相似理论,控制理论、系统科学及计算机技术基础上的一门综合性和试验性学科”。1.1系统、模型与仿真系统、模型、仿真三者之间的关系系统是研究的对象模型是系统的抽象仿真是对模型的实验系统模型计算机系统建模仿真实验仿真建模

计算机仿真三要素及三个基本活动1.1系统、模型与仿真传统上系统建模属于系统辨识技术范畴,仿真技术则侧重于仿真建模,即针对不同形式的系统模型研究其求解算法,使其在计算机上得以实现。至于仿真实验这一活动也往往只注重仿真程序的检验(Verification)。至于如何将仿真实验的结果与实际系统的行为进行比较这一根本问题(Validation)缺乏从方法学的高度进行研究。现代仿真技术的一个重要进展是将仿真活动扩展到上述三个方面,并将其统一到同一环境中。1.1系统、模型与仿真在系统建模方面,除了传统的基于物理学、化学、生物学、社会学等的基本定律及系统辨识的方法外,现代仿真技术提出了用仿真的方法建立系统的数学模型。例如,根据某系统在实验中得到的输入输出数据,在计算机上进行仿真实验,确定模型的结构参数。基于模型库的结构化建模,采用面向对象的建模方法,在类库的基础上实现模型的拼合和重用。在仿真建模方面,现代仿真技术采用模型与数据分离技术,即模型的数据驱动。任何一个仿真问题可以分为两个方面,模型与实验,这一点,现代仿真技术与传统的仿真定义是一致的。区别在于现代仿真技术又将模型分为参数模型和参数值两部分。参数值属于实验内容之一。这样,模型参数与与其对应的参数模型分离开来。仿真实验时,只需对参数模型赋予具体的参数值,就得到了特定的模型,从而大大提高了仿真的效率和灵活性。在仿真实验方面,现代仿真技术将仿真框架与仿真运行控制区分开来,一个实验框架定义一组条件,包括:模型参数、输入变量、观测变量、初始条件,终止条件、输出说明。前面已经对模型参数进行了说明,除此之外,将输出函数的定义也与仿真模型分离开来。这样,当需要不同形式的输出时,不必重新修改仿真模型。1.1系统、模型与仿真系统仿真的目的及其在系统研究中的重要性在于优化设计。现代大型系统的规模和复杂性,要求在建立系统之前能够预测系统的性能和参数,以便使所设计的系统达到最优指标。经济性。对于一个大型的系统,直接实验成本十分昂贵。采用仿真实验的方法仅需成本的1/5--1/10,而且设备可以重复使用。安全性。对于某些系统,直接实验往往是危险的和不允许的。预测。对于经济、社会、生物等非工程系统,直接实验几乎是不可能的,仿真则可以用于预测系统的特性和外部作用的影响,从而研究控制的策略。1.2系统仿真的一般知识相似理论我们之所以能对实际系统进行仿真,是基于客观世界所固有的相似性和人们对客观世界认识过程中的相似性。这是系统仿真学科生存和发展的基础。相似理论的基本原理包括同序结构原理、信息原理和支配原理等。这些原理反映了相似系统的形成和演变的规律。1.同序结构原理相似理论的同序结构原理认为:任何系统都有一定的序结构,序结构的规律形成系统的有序结构,包括空间有序、时间有序和功能有序。具体来说,空间有序表征系统组成要素的空间排列、组合和联系方式的规律性。时间有序表征系统要素随时间变化的运动规律。功能有序表征系统要素在相互作用过程中表现出的各种功能发挥秩序的规律性。系统的结果决定了系统的特性。当系统序结构存在共同时,系统之间就有相似性,其相似的程度取决于系统序结构相似的程度。基于系统相似性的仿真模型应以某种形式、在某种程度上反映实际系统的空间序结构、时间序结构和功能序结构的规律性。1.2系统仿真的一般知识2.信息原理相似理论的信息原理认为:系统序结构的形成和演化与系统的信息作用有关,当不同的系统之间的信息作用存在共同性时,系统间形成信息作用的相似性。信息作用的内容、形式和信息场强度及分布规律越接近,系统间的特性越相似。基于系统相似性的仿真模型应以某种形式反映系统的信息作用规律,包括信息作用的内容、形式和信息场强度及其分布规律。3.支配原理相似理论的支配原理认为:受相同自然规律支配的系统间存在一定的相似性,系统相似程度取决于支配系统的自然规律的接近程度。基于系统相似性的仿真模型应能够反映支配实际系统的自然规律。因此,应研究这些自然规律,并以某种形式体现在仿真模型中。1.2系统仿真的一般知识基于相似理论的系统仿真相似理论的基本原理为相似模型的建立提供了理论基础和思想方法。这些原理的运用应贯穿于整个仿真过程中,既在建模和仿真的各个阶段始终要进行相似的定性和定量分析,在此基础上形成一套可操作的工程化的方法和技术,使系统仿真更加精确、高效和可信。基于相似理论的系统仿真步骤是1.定义被仿真系统,包括定义仿真系统、仿真对象的描述2.进行相似性分析,包括确定相似形式、确定相似要素、确定相似特性、研究相似规律和相似性实现的原理、方法和技术。3.建立相似模型,在相似性分析的基础上,建立某种形式的相似模型,相似模型的形式根据仿真类型分为数学相似、物理相似和数学-物理相似。4.仿真模型运行和相似性分析,数学仿真的本质是用模型在计算机上进行试验,既在计算机上运行仿真模型。所得到的结果即为模型的行为,包括点行为、轨迹行为和结构行为。其中一部分要与实际系统的观测数据进行比较,另一部分可能是无法或尚未从实际系统中获得的结果。这也正是进行仿真的原因之一。1.2系统仿真的一般知识1、根据模型的物理属性分类

物理仿真按照真实系统的物理性质构造系统的物理模型,并在物理模型上进行实验的过程称为物理仿真。优点是:直观、形象,也称为“模拟”。缺点是:模型改变困难,实验限制多,投资较大。数学仿真对实际系统进行抽象,并将其特性用数学关系加以描述而得系的数学模型,对数学模型进行实验的过程称为数学仿真。亦称为计算机仿真。优点是:方便、灵活、经济。缺点是:受限于系统建模技术,即系统数学模型不易建立。半实物仿真即将数学模型与物理模型甚至实物联合起来进行实验。对系统中比较简单的部分或对其规律比较清楚的部分建立数学模型,并在计算机上加以实现,对比较复杂的部分或对规律尚不十分清楚的系统,其数学模型的建立比较困难,则采用物理模型或实物。仿真时将两者连接起来完成整个系统的实验。1.2系统仿真的一般知识2、

根据仿真计算机类型分类

模拟计算机仿真模拟计算机本质上是一种通用的电气装置,这是50-60年代普遍采用仿真设备。将系统数学模型在模拟机上加以实现并进行实验称为模拟机仿真。模拟机仿真是一种并行仿真,仿真时,代表模型的各部件是并发执行的。数字计算机仿真将系统数学模型用计算机程序加以实现,通过运行程序来得到数学模型的解,从而达到系统仿真的目的。早期的数字计算机仿真则是一种串行仿真,因为计算机只有一个中央处理器(CPU),计算机指令只能逐条执行。数字模拟混合仿真为了发挥模拟计算机并行计算和数字计算机强大的存贮记忆及控制功能,以实现大型复杂系统的高速仿真,将系统模型分为两部分,其中一部分放在模拟计算机上运行,另一部分放在数字计算机上运行,两个计算机之间利用模/数和数/模转换装置交换信息。1.2系统仿真的一般知识3、根据仿真时钟与实际时钟的比例关系分类

实际动态系统的时间基称为实际时钟,系统仿真时模型所采用的时钟称为仿真时钟。根据实际时钟和仿真时钟之间的比例关系,可以分为实时仿真即仿真时钟与实际时钟完全一致,模型仿真的速度与实际系统运行的速度相同,当被仿真的系统中存在物理模型或实物时,必须进行实时仿真。亚实时仿真即仿真时钟慢于实际时钟,模型仿真的速度慢于实际系统运行的速度,也称为离线仿真。超实时仿真即仿真时钟快于实际时钟,模型仿真的速度快于实际系统运行的速度。1.2系统仿真的一般知识4、根据系统模型的特性分类

连续系统仿真连续系统是指系统状态随时间连续变化的系统,进一步可以分为集中参数系统模型,一般用常微分方程(组)描述分布参数系统模型,一般用偏微分方程(组)描述离散时间变化模型中的差分模型归为连续系统仿真范畴。离散事件系统仿真离散事件系统是指在某些随机时间点上系统的状态发生变化的系统。离散事件系统与连续系统仿真的主要区别在于状态变化发生在随机时间点上这种引起状态变化的行为称为“事件”,因而这类系统是由事件驱动的。1.2系统仿真的一般知识建模与形式化:确定模型的边界,模型进行形式化处理仿真建模:算法的稳定性、计算精度、计算速度。程序设计:将仿真模型用计算机能执行的程序来描述,程序中要包括仿真实验的要求。仿真运行参数、控制参数、输出要求。模型校验:程序调试,检验所选仿真算法的合理,检验模型计算的正确性。仿真运行:对模型进行实验。仿真结果分析:对系统性能作出评价,模型可信性检验只有可信的模型才能作为仿真的基础。实际系统建模与形式化形式模型仿真建模程序设计仿真模型校验正确否?否仿真运行仿真结果分析是正确否?否是结束图0.3

仿真的一般步骤可信否?否是1.2系统仿真的一般知识报童问题仿真,报童问题是一个古典的统计分析问题,虽然问题本身并不复杂,作为一个例子,可以反映出计算机仿真的许多特点。1.报童问题一报童从发行处定报后零售,每卖一份报纸可得a元,若定报后卖不出去,可以退回发行处,此时每退回一份报纸要赔钱b元,每天卖出的报纸的份数是随机的,但是可以根据以往卖报的情况统计得到每天卖报k份的概率p(k),问题是每天定报多少,收益最大?1.2系统仿真的一般知识2.数学模型设每天定报z份,报纸每天卖出y份,我们假设y的分布为报童的损失有两种情况(1)供过于求.因退货造成的损失(2)供不应求.因缺货造成的损失每天期望的损失费为

我们的目标是得到一个合适的z,使总的损失最小1.2系统仿真的一般知识3.报童问题的计算机仿真

对于给定的每一个定报量Z,利用离散随机变量算法产生给定分布的随机数R,表示每天卖出的报纸数,从而可以计算出每天的损失和一个阶段损失的平均值.在实际应用中,分布如果不知道,就需要采集数据,进行分析后来判断分布的类型,进行分布参数的估计.Tm:仿真的天数,z:定报量,g定报量的上界,s:最小损失值,Superz:最佳定报量。1.2系统仿真的一般知识function[superz,supers]=baotong(tm,g,a,b)z=1;supers=1000;whilez<gr=round(2*randn(1,tm)+5);t=1;s=0;dv=z>r;s1=sum(((z-r)*b).*dv);s2=sum(((r-z)*a).*(1-dv));%[z,s]=baotong(5,10,0.2,0.4)s=s1+s2;a_s=s/tm;ifsupers>=a_ssupers=a_s;superz=z;endz=z+1;end1.3仿真科学与技术的应用1、

仿真技术在系统设计中的应用

新系统设计提供了强有力的工具在可行性论证阶段,进行定量比较,为系统设计打下坚实的基础在系统设计阶段,进行模型实验、模型简化并进行优化设计。系统改造涉及新的设备、部件或控制装置利用仿真技术进行分系统实验,即一部分采用实际部件,另一部分采用模型,避免由于新的子系统的投入可能造成对原系统的破坏或影响,大大缩短开工周期,提高系统投入的一次成功率。1.3仿真科学与技术的应用在真实系统上进行试验往往存在以下问题在真实系统上试验会破坏系统的正常运行;难以按预期的要求改变参数,或者得不到所需要的试验条件;很难保证每次的操作条件相同,难对试验结果做出正确的判断;无法复原;试验时间太长、费用太大或者有危险等而利用系统模型作仿真实验则可以避免这些问题的出现。1.3仿真科学与技术的应用2、仿真在教育与训练中的应用

利用计算机并通过运动设备、操纵设备、显示设备、仪器仪表等复现所模拟的对象行为,并产生与之适应的环境,从而成为训练操纵、控制或管理这类对象的人员的系统。三大类载体操纵型

这是与运载工具有关的仿真系统,航空、航天、航海、地面运载工具,以训练驾驶员的操纵技术为主要目的。过程控制型

用于训练各种工厂的运行操作人员,如电厂、化工厂、核电站、电力网等

搏奕决策型企业管理人员(厂长、经理),交通管制人员(火车调度、航空管制、港口管制、城市交通指挥等),军事指挥人员(空战、海战、电子战等)。1.3仿真科学与技术的应用举例:船舶训练仿真系统(1)人在回路中——操作环境、视觉环境、听觉环境、力觉环境(加速度、速度)。(2)真实性:模型的准确性以人的感觉为判断依据、模型的多面向要求。(3)实时要求必须保证:仿真算法、软硬件选择、输入输出接口要求。视景产生器其它船舶的大视场景象产生设备。模拟驾驶舱各种航行仪表、雷达等设备,由驱动系统实现船舶摇摆模拟。环境音响发生器模拟风、流、浪及外界产生的音响。仿真计算机实现船舶操纵运动模型仿真,控制所有外围设备同步。环境音响产生器受训者模拟舰桥仿真计算机D/APIOA/D视景视景发生器闭路电视控制台教练员控制指令CRT显示记录设备1.3仿真科学与技术的应用3、仿真在产品开发及制造过程中的应用

虚拟制造(VirtualManufacturing)是实际制造在计算机上的本质实现,是仿真技术以制造过程为对象的全方位的应用。典型例子―波音777其整机设计、部件测试、整机装配以及各种环境下的试飞均是在计算机上完成的,使其开发周期从过去8年时间缩短到5年。1.4当前仿真科学与技术研究的热点1.网络化仿真技术网络化仿真技术泛指以网络为平台进行系统建模、仿真试验和评估等活动的技术。目前研究的热点有(1)基于Web技术的可扩展建模仿真框架(XMSF)XMSF的核心是使用通用技术、标准和开放的体系结构促进建模与仿真技术在更大范围内的互相操作和重用。(2)基于网格计算技术的仿真网格技术网格技术是一项新兴并正在发展的技术,其核心是解决网上各种资源的动态共享和协同使用。网络与仿真的结合为仿真资源的获取、使用和管理提供了巨大的空间。同时,也给仿真提出了具有挑战性的难题,如仿真应用的协同开发、仿真运行的协调、安全和容错、模型和服务的发现机制、资源管理、监控和负载平衡等。1.4当前仿真科学与技术研究的热点2.复杂系统/开放复杂巨系统的建模与仿真复杂系统广泛存在于各领域,如宏观经济系统、社会系统、军事系统、地理系统和生物系统等。关于复杂系统目前没有普遍认同的定义。一般来说,复杂系统除了有一般系统的特点外,还具有规模大、非线性、变结构、开放性和不确定性等特点。对于复杂系统仿真,当前研究的方向主要是(1)定性分析,研究热点:定量与定性结合的仿真、模型分解方法研究、并行定性仿真。(2)基于Agent的仿真,利用Agent的社会性和自制性,通过Agent之间的信息传递,完成基于Agent对象的社会行为和社会反应的仿真,得到了广泛的应用。特别是基于多Agent系统的仿真被广泛应用于复杂系统的仿真中。(3)基于系统动力学的仿真,系统动力学理论强调系统、整体的观点和联系、运动、发展的观点。系统动力学的方法是结构方法、功能方法和历史方法的统一,适合于分析复杂的大系统。系统动力学处理复杂系统的方法是定量与定性结合。系统动力学模型是一种结构-功能模型,系统动力学模仿真是一种结构-功能仿真,它最适合于研究复杂大系统结构、功能与行为之间的动态关系。一个突出的优点是它能处理高阶次、非线性和复杂时变系统的问题。1.4当前仿真科学与技术研究的热点3.综合自然环境的建模与仿真许多仿真系统需要考虑自然环境的影响,以得到更符合实际情况的结果。还有一些以环境变化、环境效应和环境影响为仿真目的。综合自然环境的建模与仿真包括对地理、海洋、空间等环境信息的建模与仿真环境建模的目的是获取实际环境的多维数据,并根据需要建立相应的虚拟环境模型。在环境模型基础上进行的仿真体现了环境对实体运动行为产生的影响。综合自然环境的建模采用静态或动态的数据场拟合方法,并对虚拟的自然环境和实体交互进行检测。综合自然环境的建模与仿真进一步研究的重点包括自然环境特征量的提取技术、多维数据场的动态建模与数据表示技术、虚拟自然环境的用户界面和人机交互技术、综合自然环境的多分辨率建模与模型压缩简化技术、自然环境内部建模和虚拟自然环境接口建模技术、分布及协同式虚拟自然环境技术、虚拟自然环境中特征识别和多维导航技术、综合自然环境中的非视觉可视化技术、基于图像的虚拟自然环境绘制技术和实体绘制技术等。1.4当前仿真科学与技术研究的热点4.基于普适计算技术的普适仿真技术普适计算技术是将计算技术与通信技术、多媒体技术相融合的技术。它提供了一种全新的计算模式,目的是构成由计算机和通信构成的信息空间与人们生活的物理空间相融合的智能化空间。在这个空间中人们可以随时随地透明地获得计算和信息服务。在仿真系统中引入普适计算技术,是将计算机软硬件、通信软硬件、传感器、各类设备紧密集成,实现信息空间和物理空间结合的一种新的仿真模式。其重要意义是实现仿真进入真实系统,无缝地嵌入到我们的日常生活中。当前,普适仿真的研究内容涉及基于web的分布仿真技术,网络计算技术,普适计算技术的仿真体系结构、信息空间和物理空间的协调管理和集成技术,基于普适计算的仿真自组织性、自适应性和高度容错性,以及普适计算应用技术等。1.4当前仿真科学与技术研究的热点5.基于高性能计算机的仿真随着仿真技术的发展,特别是广泛应用于复杂数学模型的领域如,天文、气象、生物和能源等,单处理器的计算机往往不能满足要求。因此,高性能计算机在仿真中的应用成为仿真研究的一个热点。高性能计算机的实现技术包括计算数学(计算模型与算法)、计算机体系结构与构成技术。目前,高性能计算机技术主要有两个发展方向:在深度上致力于研制有快速运算能力的高性能计算机,在广度上注重于开发有广泛应用前景的高性能计算机。高性能计算机的发展趋势主要表现在网络化、体系结构主流化、开放和标准化、应用的多样化等方面。网络化趋势是提高计算机性能的最主要的趋势。高性能计算机的主要用途是网络计算环境中的主机,所有重要的数据及应用都会放在高性能服务器上,一个重要的趋势超级服务器正取代超级计算机儿成为高性能计算的主流体系结构技术。Client\Server模式会进入第二代,既服务器聚集的模式。1.5MATLAB语言简介在进行系统的建模与仿真时,目前已经有30多个数学类科技应用软件,为我们进行数学处理提供方便,这些软件大体可分为两大类:一类是数值计算型软件,如MATLAB、Xmath、Gauss、MLAB等,这类软件对大批数据具有较强的管理、计算和可视化能力,运行效率高。另一类是数学分析型软件,如Mathematica、Maple、Macsyma等,他们以符号计算见长,并可得到解析符号解和任意精度解,但处理大量数据时运行效率较低。这里我们重点介绍一种在全世界广为应用的一种仿真软件——MATLAB。MATLAB是MathWorks公司推出的一套高性能的数值计算和可视化软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境。MATLAB的推出得到了各个领域专家学者的广泛关注,其强大的扩展功能为各个领域的应用提供了基础。由各领域专家学者相继推出了MATLAB工具箱。应用各种专业工具箱,用户可以方便地解决相应专业的计算和仿真问题。1.5MATLAB语言简介MATLAB主要包括以下五个部分MATLAB语言MATLAB语言是以矩阵和向量为基本数据单位,包括控制流程语句,函数,数据结构,输入输出及面向对象等特点的高级语言。它既适合编写只有区区几行的小程序(如数据文件进行处理的程序),也适合开发复杂的大型程序。MATLAB工作环境包括变量查看器、程序编辑器以及MATLAB附带的大量M文件(用MATLAB语言编写的可在MATLAB中运行的程序)。句柄图形这是MATLAB的图形系统。它既包括对二维和三维数据可视化、图像处理、动画制作等高层次的绘图命令,也包括可以完全修改图形局部及编制完整图形界面的、低层次的绘图命令。MATLAB数学函数库MATLAB的数学函数库极其庞大,既包括最基本的sum,cos函数,也包括如求矩阵特征值和特征向量,矩阵求逆,bissel函数,Fourie变换等复杂算法,MATLAB把它们统统编制成函数。MATLABAPI(ApplicationProgramInterface)提供了MATLAB语言与其它软件,如C,C++等的接口。1.5MATLAB语言简介1、访问和退出MATLAB在Windows系统中,一旦安装了MATLAB,,只要执行命令MATLAB.exe,即可进入MATLAB系统。退出MATLAB只要关闭MATLAB窗口就可以了。2、如何应用MATLAB通常以命令驱动方式应用MATLAB。当输入单个命令时,MATLAB会立即对其进行处理,并且显示处理结果。MATLAB也能够执行存储在文件中的命令序列。通过键盘输入的命令,应用向上箭头键可以被存取。通过输入某个最新命令和调用特定的命令行,可以使屏幕内容向上滚动。3、MATLAB的变量和其它的程序设计语言不同,MATLAB语言的基本变量单元是复数矩阵,其矩阵处理功能和图形处理功能是其最显著的特色。MATLAB的一个特点是变量在应用之前不必是维数确定的。在MATLAB中,变量一旦被采用,会自动产生(如果必要,变量的维数以后还可以改变)。在命令exit或quit输入之前,这些变量将保留在存储器中。命令clear能从工作空间中清除所有非永久性变量。如果只需要从工作空间中清除某个特定变量,比如“x”,则应输入命令clearx。1.5MATLAB语言简介4、以“%”开始的程序行MATLAB程序在编写时附有注解和说明,这些注解和说明阐明了发生在程序中的具体进程。在MATLAB中以“%”开始的程序行,表示注解和说明。以“%”开始的行,用来存储程序的注解或说明,这些注解和说明是不执行的。这就是说,在MATLAB程序行中,出现在“%”以后的一切内容都是可以忽略的。如果注解或说明需要一行以上程序行,则每一行均需以“%”为起始。5.应用分号操作符分号用来取消显示执行的结果。在执行MATLAB的命令时,每一条命令的计算结果都会立刻显示在屏幕上,如果某语句的最后一个符号是分号,命令仍在执行,而结果不再显示。这是一个有益的特性,因为显示中间结果可能不必要。此外,在输入矩阵时,除非最后一行,分号用来指示一行的结束。6.

应用冒号操作符冒号操作符在MATLAB中起着重要作用。该操作符用来建立向量,赋予矩阵下标和规定叠代。1.5MATLAB语言简介7、输入超过一行的长语句一个句通常以回车键或输入键终结。如果输入的语句太长,超出了一行,则回车键后面应跟随由3个或3个以上圆点组成的省略号(…),以表明语句将延续到下一行。下面是一个例子x=1.234+2.345+3.456+4.567+5.678+6.789…+7.890+8.901-9.012符号=、+和-前后的空白间隔可以任选。这种间隔通常可以起到改善语句清晰度的效果。8、选择输出格式MATLAB中的所有计算都是以双精度方式完成的,但是显示输出可以是具有4个小数位的定点输出。例如,对于向量x=[1/30.00002]MATLAB有下列输出x=0.33330.0000。如果在矩阵中至少有一个元素不是严格的整数,则有4种可能的输出格式。显示的输出量可以利用下列命令加以控制formatshort,formatlong,formatshorte,formatlonge。一旦调用了某种格式,则这种格式将保持,直到对格式进行了改变为止。1.5MATLAB语言简介9、在一行内输入数个语句在一行内可以把数个语句用逗号或分号隔开,则可以把这数个语句放在一行内。例如plot(x,y,’o’),text(1,20,’System1’),text(1,15,’System2’)plot(x,y,’o’);text(1,20,’System1’);text(1,15,’System2’)10、退出MATLAB时如何保存变量当键入“exit”或“quit”时,MATLAB中的所有变量将消失。如果在退出以前输入命令save,则所有的变量被保存在磁盘文件matlab.mat中。当再次进入MATLAB时,命令load将使工作空间恢复到以前的状态。1.5MATLAB语言简介11、MATLAB函数

的使用MATLAB函数的调用格式和其它编程语言是不同的,其典型的调用格式为[返回变量列表]=func_name(输入变量列表)其中等号左边的变量为返回变量,等号右边的变量为输入变量。MATLAB允许在函数调用时同时返回多个变量。而一个函数又可以由多种格式进行调用,例如bode函数可以由下面的格式调用bode(num,den)其中bode函数用来求取或绘制系统的Bode图,而系统在这里由传递函数分子num和分母den表示,还可以用下面的格式调用此函数[mag,phase]=bode(A,B,C,D,w)尽管两种调用格式是完全不同的,MATLAB函数还是会自动识别到底是用哪种格式调用该函数的,从而得出正确的结论。MATLAB函数在返回变量的格式上可以不同,例如若上面的语句中若没有返回变量,则将自动地绘制系统的Bode图,否则将返回计算结果数据。1.5MATLAB语言简介12、绘制曲线

如果x和y是同一长度的向量,则命令plot(x,y)将画出y值对于x值的关系图。为了在一幅图上画出多条曲线,采用具有多个自变量的plot命令:plot(X1,Y1,X2,Y2,…,Xn,Yn)变量X1,Y1,X2,Y2等等是一些向量对。每一个x-y对都可以图解表示出来,因而在一幅图上形成多条曲线。多重变量的优点是它允许不同长度的向量在同一幅图上显示出来。每一对向量采用不同的线型。在一幅图上画一条以上的曲线时,也可以利用命令hold。hold命令可以保持当前的图形,并且防止删除和修改比例尺。因此,随后的一条曲线将会重叠地画在原曲线图上。再次输入命令hold,会使当前的图形复原。如果需要在下列语句指定的范围内绘制曲线:v=[x-minx-maxy-miny-max]则应输入命令axis(v),式中v是一个四元向量。axis(v)把坐标轴定标建立在规定的范围内。1.5MATLAB语言简介13、MATLAB基本操作举例

Commandwindow,CurrentDirectory,Workspace,CommandHistoryA=[123;401;111][s,v]=eig(A)D=det(A)M=max(A(:))B=inv(A)S=svd(A)t=0:0.1:2*pi;plot(t,cos(t),t,sin(t));gridonsphere(30)peaks(30)x=normrnd(0,1,1,100)mu=mean(x)sigma=cov(x)max_x=max(x)min_x=min(A)[t,y]=ode45('vdp1',[0,50],[01])plot(t,y)plot(y(:,1),y(:,2))x=[1234567]y=[1233221]p=polyfit(x,y,2)xx=1:0.1:7;plot(xx,polyval(p,xx),x,y,'ro');grid2连续系统模型2.1连续系统的模型描述2.2MATLAB中的连续系统模型2.3面向结构图的数学模型2.4面向测量数据的建模方法2.1连续系统模型描述1.连续时间模型常微分方程其中n为系统的阶次,a0,a1,a2…,an为系统的结构参数,c1,c2…,cn为输入函数的结构参数,它们均为实常数。若系统的初始条件为零,对上式两边取拉氏变换后稍加整理,得到传递函数模型

2.1连续系统模型描述零极点增益模型状态空间模型连续系统仿真要将上述系统的模型在计算机上实现,首先要把系统的各种描述形式转换成内部模型-状态空间模型,我们将其称为模型结构变换。外部模型变换到内部模型不唯一,所以仿真模型也不唯一。一个系统有多种实现,最小实现的充要条件是(A、B、C)为完全能控且完全能观测。由控制理论可知,由高阶微分方程输入/输出变量初始值转变为状态初始值的条件是内部模型(A、B、C)是完全能观的。2.1连续系统模型描述2.离散时间模型差分方程a0y(n+k)+a1y(n+k-1)+…+any(k)=c0u(n+k)+c1u(n+k-1)+…+cnu(k)其中n为系统的阶次,a0,a1,a2…,an为系统的结构参数,c0,c1,c2…,cn为输入函数的结构参数,它们均为实常数。若系统的初始条件为零,对上式两边取拉氏变换后稍加整理,得到z传递函数模型2.1连续系统模型描述离散时间零极点增益模型离散时间状态空间模型3.连续-离散混合模型如果有一个系统,它的环节中有的环节的状态量是连续变量,有的环节的状态量是离散变量。例如用数字计算机控制连续对象所组成的计算机控制系统就属于这种系统。对于这类系统,它的连续部分可以用连续系统模型描述,离散部分可以用离散系统模型描述。在离散环节和连续环节之间有一个保持器,将离散信号恢复成连续信号。在连续环节和离散环节之间有一个采用器,将连续信号采用成离散信号。2.1连续系统模型描述状态空间模型的概念说明,已知系统如图所示。其状态特性可用下列微分方程描述由上式可知,如果已知uc(t)和i(t)的初始值,以及在t时的外加输入信号,就能够完全唯一地确定在t时的系统状态。将上述微分方程写成矩阵方程的形式,即为状态方程LiuRCuc2.1连续系统模型描述通常,用x表示状态矢量,用x1,x2,...表示其分量。对于上式,如令又可写为此处其输出方程为需要指出的是,从理论上讲,描述系统状态的状态变量的选择不是唯一的,可以有无穷多种表示方式。2.2MATLAB的连续系统模型根据上图。在理想条件下,可得到此电路的电压平衡方程式式中,q为电荷量,C为电容。可改写为初始条件为零时,取方程的拉普拉斯变换,取U(s)与Uc(s)之比,即可得到系统的传递函数2.2MATLAB的连续系统模型传递函数模型在MATLAB中,直接用分子/分母的系数表示num=[b0,b1,…,bm];den=[a0,a1,…,an];sys=tf(num,den)零极点增益模型z=[z0,z1,…,zm];p=[p0,p1,…,pn];k=[k];sys=zpk(z,p,k)状态空间模型在MATLAB中,该系统可用(A,B,C,D)矩阵组表示。sys=ss(A,B,C,D)

2.2MATLAB的连续系统模型连续系统数学模型之间的转换ss2tf命令:状态空间模型转换成传递函数模型。[num,den]=ss2tf(A,B,C,D,iu)式中,iu为输入的序号。ss2zp命令:状态空间模型转换成零极点增益模型。[Z,P,K]=ss2zp(A,B,C,D,iu)式中,iu为输入的序号。tf2ss命令:传递函数模型转换成状态空间模型。[A,B,C,D]=tf2ss(num,den)tf2zp命令:将传递函数模型转换成零极点增益模型。[Z,P,K]=tf2zp(num,den)zp2ss命令:将零极点模型转换成状态空间模型。

[A,B,C,D]=zp2ss(Z,P,K)zp2tf命令:将零极点模型转换成传递函数模型。

[num,den]=zp2tf(Z,P,K)2.2MATLAB的连续系统模型机械转动系统如图所示。它由惯性负载和粘性磨擦阻尼器组成。J为转动惯量,f为粘性磨擦系数,为角速度,T为作用到系统上的转矩。对于机械转动系统,其运动方程可写成初始条件为零时,取方程的拉普拉斯变换,取(s)与T(s)之比,即可得到系统的传递函数TTs=K

机械转动系统J2.2MATLAB的连续系统模型假设J=2,f=2.5,k=5num=[1];den=[22.55]sys=tf(num,den)step(sys);gridonimpulse(sys);gridonpzmap(sys);gridonss(sys)zpk(sys)bode(sys);gridonltiview是MATLAB中提供的一个线性系统分析的图形工具。sisotool是一个综合性的用于单输入,单输出系统的分析与设计工具。它为用户设计单输入,单输出系统提供了非常有好的界面。tf2ssss2tfzp2tfss2zpzp2sstf2zp三种模型之间的转换零极点状态空间传递函数2.2MATLAB的连续系统模型

s+1G(s)=------------------------s3+6s2+11s+6sys=tf([11],[16116])[a,b,c,d]=tf2ss([11],[16116])sys1=ss(a,b,c,d)T=rot90(eye(size(a)))sys11=ss2ss(sys1,T)sys2=minreal(sys)n1=sys2.num{1}d1=sys2.den{1}[a,b,c,d]=tf2ss(n1,d1)sys3=ss(a,b,c,d)MATLAB可以建立多输入-多输出系统,下面是一个两个输入,两个输出的系统模型sys=tf({[25],[277];[31211],[167]},{[156],[16116];[16116],[156]})sys(1,1)第1个输入到第1个输出sys(2,1)第1个输入到第2个输出sys(1,2)第2个输入到第1个输出sys(2,2)第2个输入到第2个输出step(sys)bode(sys)step(sys(1,2))2.3面向结构图的数学模型在工程实际中,另外一种常用的系统表示方式是系统的结构图(方块图),它是系统中每个元件的功能和信号流号的图解表示。方块图表明了系统中各种元件间的相互关系,能够清楚地表明实际系统中的信号流动情况。在方块图中,通过函数方块,可以将所有的系统变量联系起来。"函数方块"或简称为"方块",是对加到方块上的输入信号的一种运算符号,运算结果以输出量表示。元件的传递函数,通常写进相应的方块中,并以标明信号流向的箭头,将这些方块连接起来。应当指出,信号只能沿箭头方向通过。这样,系统的方块图就清楚地表示了它的单向特性。2.3面向结构图的数学模型如下图表示了一个方块图单元。指向方块的箭头表示输入,而从方块出来的箭头则表示输出。在这些箭头上标明了相应的信号。应当指出,方块输出信号等于输入信号与方块中传递函数的乘积。用方块图表示系统的优点是:只要依据信号的流向,将各元件的方块连结起来,就能够容易地组成整个系统的方块图,通过方块图,还可以评价每一个元件对系统性能的影响。总之,方块图比物理系统本身更容易体现系统的函数功能。方块图包含了与系统动态特性有关的信息,但它不包括与系统物理结构有关的信息。因此,许多完全不同和根本无关的系统,可以用同一个方块图来表示。应当指出,对于一个系统来说,方块图也不是唯一的。由于分析角度的不同,对于同一个系统,可以画出许多不同的方块图。2.3面向结构图的数学模型任何系统,都可以用由方块、相加点和分支点组成的方块图来表示。所谓分支点,就是由方块出来的输出信号,从这一点起同时进入另一个方块或相加点。画方块图的步骤在绘制系统的方块图时,首先列写描述每一个元件动态特性的方程式。然后假定初始条件等于零,对这些方程式进行拉普拉斯变换,并将每一个拉普拉斯变换方程分别以方块的形式表示出来。最后将这些方块单元结合在一起,以组成完整的方块图。C(s)方快图单元R(s)G(s)相加点R(s)E(s)C(s)

分支点2.3面向结构图的数学模型典型环节的传递函数积分环节惯性环节一阶领先(或迟后)环节比例积分环节二阶振荡环节2.3面向结构图的数学模型12345w1w2

w3

uv1x2v2x3v3v4x4x5v5x1y2.3面向结构图的数学模型2.3面向结构图的数学模型对简单系统的建模可直接采用三种基本模型:传递函数、零极点增益、状态空间模型。但实际中经常遇到几个简单系统组合成一个复杂系统。常见形式有并联、串联、闭环及反馈等连接。1.并联将两个系统按并联方式连接,在MATLAB中可用运算符+实现。命令格式为

sys12=sys1+sys2

其对应的结果为:Gp(s)=G1(s)+G2(s)2.串联将两个系统按串联方式连接,在MATLAB中可用运算符*实现。命令格式为

sys12=sys1*sys2

其对应的结果为:Gs(s)=G1(s)*G2(s)2.3面向结构图的数学模型3.闭环将系统通过正负反馈连接成闭环系统,在MATLAB中可用feedback函数实现。命令格式为

[numf,denf]=feedback(num1,den1,num2,den2,sign)

sign为可选参数,sign=-1为负反馈,而sign=1对应为正反馈。缺省值为负反馈。其对应的结果为4.单位反馈将两个系统按反馈方式连接成闭环系统(对应于单位反馈系统),在MATLAB中可用cloop函数实现。命令格式为

[numc,denc]=cloop(num,den,sign)

sign为可选参数,sign=-1为负反馈,而sign=1对应为正反馈。缺省值为负反馈。其对应的结果为2.3面向结构图的数学模型在实际应用中,往往系统是由多个典型模块组成,连接关系也比较复杂。在这种情况下MATLAB的控制系统工具箱中提供了一个脚本文件blkbuild和一个函数connect()来得到具有相互连接关系的结构图的模型。先使用blkbuild得到原始系统的增广状态方程模型(a,b,c,d),然后输入各个模块的连接关系,建立连接矩阵Q,最后调用connect()函数来得到总的状态方程模型。下面对blkbuild和connect()用法进行说明。clear,clcn1=[1];d1=[12];n2=[11];d2=[12];n3=[-1-3];d3=[14];Q=[103;210;320];nblocks=3;blkbuild;%得到原始系统的的增广模型In=1;Out=2[A,B,C,D]=connect(a,b,c,d,Q,In,Out);sys=tf(ss(A,B,C,D))1--------s+2s+1--------s+2-s-3--------s+41232.3面向结构图的数学模型步骤1,模块排号,首先对结构图中的模块按照信号流动的方向排号步骤2,得到增广矩阵,输入各个模块的信息。具体方法是

模块的总个数参数和各模块中的传递函数的参数nblocks=3n1=[1];d1=[10]; %注意,变量名不能变。n2=[11];d2=[12];n3=[-1-3];d3=[11];blkbuild执行了blkbuild后,在MATLAB的workspace中的得到原始结构图的增广状态方程模型(a,b,c,d)。这实际上是三个输入对三个输出的模型,还不是我们所需要的。步骤3,指定连接关系Q,和输入,输出向量INPUTS,OUTPUTS。Q应有nblocks行,Q的第一列是相应模块的编号,Q的第k行第二列及以后的元素应包含进入k模块的所有信号的信息,与顺序无关。INPUTS由输入信号进入的模块编号构成,OUTPUTS由输出信号流出的模块编号构成。2.3面向结构图的数学模型Q=[103 %由第3个模块流出的信号进入第1个模块210 %由第1个模块流出的信号进入第2个模块320]; %由第2个模块流出的信号进入第3个模块INPUTS=1 %输入端为第1个模块OUTPUTS=2

%输出端为第2个模块步骤4,构造整个系统的模型[A,B,C,D]=connect(a,b,c,d,Q,INPUTS,OUTPUTS)完成整个过程后,得到的是原结构图的状态空间模型。sys=tf(ss(A,B,C,D))

%转换为传递函数模型step(sys);gridon,pause %求系统的阶跃响应rlocus(sys);gridon,pause %画系统的根轨迹图bode(sys) ;gridon %画系统的频率特性图2.4面向测量数据的建模方法对单输入/单输出系统的数学模型,可以用一条曲线来表示。对具有两个输入的系统,其特性可以用一个曲面表示。已知系统的一组数据(通常是通过测量得到),要得到此系统的模型的函数表达式,称为曲线拟合或曲面拟合。在数据分析上都称为回归分析(RrgressionAnalysis)或数据拟合(DataFitting)。面向测量数据的建模方法常用的有两类,一是插值方法(InterpolationMethod)可用于预估在已知数据点中间的函数值,其应用范围相当广泛。二是曲线拟合(CurveFitting),其目的是利用有限的采样点(SamplePoints)来建立数学模型,并通过此模型进行进一步的分析和预测。MATLAB提供了一系列的内插法和曲线拟合函数,以应付不同的需求。下面的数据是美国1790年至1990年(以10年为单位)的总人口。loadcensus.mat;plot(cdate,pop,'o');pause;A=[ones(size(cdate)),cdate,cdate.^2];y=pop;theta=A\yplot(cdate,pop,'o',cdate,A*theta,'-')2.4面向测量数据的建模方法一维内方法interp1是MATLAB的基本一维内插命令,使用方法是yi=intper1(x,y,xi,method)向量x是数据点的x坐标,向量y是数据点的y坐标,xi是插值点,字符串method则规定插值的方法,共有4种临近点内插法(method='nearest')线性内插法(method='linear')三次样条内插法(method='spline')三次多项式内插法(method='cubic')MATLAB中interp1使用方法的例子x=0:1:4*pi;y=sin(x).*exp(-x/5);xi=0:0.1:4*pi;y1=interp1(x,y,xi,'nearest');y2=interp1(x,y,xi,'linear');y3=interp1(x,y,xi,'spline');y4=interp1(x,y,xi,'cubic');plot(x,y,'o',xi,y1,'r',xi,y2,'g',xi,y3,'b',xi,y4,'m');legend('Original','Nearest','Linear','Spline','Cubic');2.4面向测量数据的建模方法已知某平原地区的一条公路经过如下坐标点,请用不同的插值方法绘出这条公路(不考虑公路的宽度)。对于上表给出的数据,请用三种不同插值方法编程绘出这条公路。X(m)03050708090120148170180Y(m)80644742486680120121138X(m)202212230248268271280290300312Y(m)160182200208212210200196188186X(m)320340360372382390416430478440Y(m)200184188200202240246280296308X(m)420380360340320314280240200Y(m)3343283343463563603923904002.4面向测量数据的建模方法X1=[03050708090120148170180];Y1=[80644742486680120121138];X2=[202212230248268271280290300312];Y2=[160182200208212210200196188186];X3=[320340360372382390416430478440];Y3=[200184188200202240246280296308];X4=[420380360340320314280240200];Y4=[334328334346356360392390400];x=cat(2,X1,X2,X3,X4);y=cat(2,Y1,Y2,Y3,Y4);t=1:39;dt=1:0.01:39;[m,n]=size(dt);x1i=interp1(t,x,dt,'spline');y1i=interp1(t,y,dt,'spline');x2i=interp1(t,x,dt,'nearset');y2i=interp1(t,y,dt,'nearset');x3i=interp1(t,x,dt,'cublic');y3i=interp1(t,y,dt,'cublic');subplot(221)plot(x,y,'o-');title('折线')subplot(222)plot(x1i,y1i);title('三次样条')subplot(223)plot(x2i,y2i);title('近点插值')subplot(224)plot(x3i,y3i);title('内插')2.4面向测量数据的建模方法对于有两个输入的系统的建模问题,可以用二维栅格点内插法MATLAB的interp2用来进行二维栅格点内插,使用方法是zi=intper2(x,y,z,xi,yi,method)其中z是一个矩阵,代表一个函数的高度,矩阵x,y是此函数在方栅格点的x,y坐标,字符串method则规定插值的方法,主要有4种临近点内插法(method='nearest')二维线性内插法(method='bilinear')二维样条内插法(method='spline')二维三次多项式内插法(method='bicubic')2.4面向测量数据的建模方法MATLAB的interp2用来进行二维栅格点内插的例子[x,y]=meshgrid(-3:1:3);z=peaks(x,y);[xi,yi]=meshgrid(-3:0.25:3);zi1=interp2(x,y,z,xi,yi,'nearest');zi2=interp2(x,y,z,xi,yi,'bilinear');zi3=interp2(x,y,z,xi,yi,'bicubic');subplot(2,2,1);surf(x,y,z);title('Original');subplot(2,2,2);surf(xi,yi,zi1);title('nearest');subplot(2,2,3);surf(xi,yi,zi2);title('bilinear');subplot(2,2,4);surf(xi,yi,zi3);title('bicubic');2.4面向测量数据的建模方法在某海域测得一些点(x,y)的水深z(单位:米)如下表,水深数据是在低潮时测得的,船的吃水深度为5米,问在矩形区域

(75,200)×(-50,150)平方米的那些地方要避免进入。

x129.0140.0103.588.0185.5195.0105.5y7.5141.523.0147.022.5137.585.5z4868688x157.5107.577.081.0162.0162.0117.5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论