系统仿真技术课件_第1页
系统仿真技术课件_第2页
系统仿真技术课件_第3页
系统仿真技术课件_第4页
系统仿真技术课件_第5页
已阅读5页,还剩346页未读 继续免费阅读

下载本文档

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

文档简介

连续系统模型描述

1.1连续系统模型描述

连续系统----系统状态变化在时间上是连续的,可以用方程式(常微分方程、偏微分方程、差分方程)描述系统模型。

一个系统可以定义成如下集合结构:T:时间基,描述系统变化的时间坐标T为整数则称为离散时间系统,T为实数则称为连续时间系统X:输入集,代表外部环境对系统的作用。X被定义为,其中,X即代表n个实值的输入变量。Ω:输入段集,描述某个时间间隔内输入模式,是(X,T)的子集。Q:内部状态集,是系统内部结构建模的核心。δ:状态转移函数,定义系统内部状态是如何变化的。它是映射:其含义:若系统在时刻处于状态q,并施加一个输入段,则表示系统处于状态。λ:输出函数,它是映射:输出函数给出了一个输出段集。Y:输出段集,系统通过它作用于环境。连续系统数学模型典型形式

常微分方程

传递函数

状态空间描述

权函数(脉冲过渡函数)1.1.1常微分方程--输入/输出水平

……..(1)其中n为系统的阶次,为系统的结构参数,为输入函数的结构参数,它们均为实常数

1.1.2传递函数----输入/输出水平

若系统的初始条件为零,对(1)式两边取拉氏变换后稍加整理:

……..(2)

(2)式称为系统的传递函数。

1.1.3状态空间描述----状态结构水平

系统内部模型――状态空间模型。状态空间描述的一般形式为:

状态方程

:(3)输出方程

:(4)1.2模型结构变换

连续系统仿真要将这个系统的模型在计算机上实现出来,首先要把系统的各种描述形式转换成内部模型---状态空间模型,我们将其称为模型结构变换。

1.2.1输入/输出水平模型到内部模型的变换

假设一连续系统,它的数学模型如(5)式所示(a0=1)(5)

今引进n个状态变量:

,,,……输入/输出水平模型到内部模型的变换(续)则有

将上述n个一阶微分方程写成矩阵形式可得(6)输入/输出水平模型到内部模型的变换(续)

(7)外部模型变换到内部模型不唯一,所以仿真模型也不唯一。一个系统有多种实现,最小实现的充要条件是(A、B、C)为完全能控且完全能观测。

1.2.2系统状态初始值变换

如果系统是非零初始条件,那么从外部模型变换到内部内部模型还必须考虑如何将给定的初始条件转变为相应的状态变量的初始值。若系统是由如下一般形式的n阶微分方程来描述:系统初始条件为:

伴随方程法一阶微分方程组的状态变量记为,如果它们满足如下关系:

(8)(9)(10)(11)该状态方程与原方程等价。

伴随方程法(续)证明:将(8)两边分别进行微分n次,可得:

(12)

其中p为微分算子符号。对(9)式两边分别进行n-j(j=1,2,…,n-1)次微分,可得:(13)对(10)式也引入微分算子:

(14)将(12)、(13)、(14)所包括的n+1个等式左右两边分别相加,消去同类项,稍加整理后就得到原高阶微分方程,表明两者之间的等价关系。

伴随方程法(续)伴随方程法显式地表示了状态变量与原输入/输出变量及其高阶导数之间的关系,因而易于进行初始值的转换。这样得到状态方程及输出方程:(15)其中

伴随方程法(续)设a0=1,初值转换方程:伴随方程有多种形式,因而得到的状态方程也不唯一。那么,实现这种初值转换的条件是什么呢?

伴随方程法(续)考虑转换后得到的系统状态空间模型为:

即假定u的n阶导数项的系数c0=0,已知系统的初始条件为:则为了由上述初始值求出状态变量的初始值,可列出以下方程:

伴随方程法(续)于是可得下列矩阵方程

(16)其中

伴随方程法(续)由(16)式可得:(17)

即,若存在,则可由(17)式求出x(t)的初始值。由控制理论可知,θ是(A、B、C)的能观判别阵,若(A、B、C)是完全能观的,则θ非奇异。这就是说,由高阶微分方程输入/输出变量初始值转变为状态初始值的条件是:内部模型(A、B、C)是完全能观的。

1.2.3典型环节的传递函数

控制系统由许多元件组合而成,这些元件的物理结构和作用原理是多种多样的,但抛开具体结构和物理特点,从传递函数的数学模型来看,可以划分成几种典型环节,常用的典型环节有比例环节、惯性环节、积分环节、微分环节、振荡环节、延迟环节等。

1.比例环节

环节输出量与输入量成正比,不失真也无时间滞后的环节称为比例环节,也称无惯性环节。输入量与输出量之间的表达式为c(t)=Kr(t)比例环节的传递函数为

式中K为常数,称为比例环节的放大系数或增益。

2.惯性环节(非周期环节)惯性环节的动态方程是一个一阶微分方程

其传递函数为

式中T——惯性环节的时间常数

K——惯性环节的增益或放大系数

当输入为单位阶跃函数时,其单位阶跃响应为

单位阶跃响应曲线

惯性环节实例很多,如图所示的R-L网络,输入为电压u,输出为电感电流i,其传递函数式中2.积分环节

输出量正比于输入量的积分的环节称为积分环节,其动态特性方程

其传递函数

式中Ti为积分时间常数。

积分环节的单位阶跃响应为它随时间直线增长,当输入突然消失,积分停止,输出维持不变,故积分环节具有记忆功能,如图所示。

上图为运算放大器构成的积分环节,输入ui(t),输出u0(t),其传递函数为式中Ti=RC

4.微分环节

理想微分环节的特征输出量正比于输入量的微分,其动态方程

其传递函数

式中Td称微分时间常数

它的单位阶跃响应曲线

如图所示,理想微分环节实际上难以实现,因此我们常采用带有惯性的微分环节,其传递函数

其单位阶跃响应为

曲线如下图所示,实际微分环节的阶跃响应是按指数规律下降,若K值很大而Td值很小时,实际微分环节就愈接近于理想微分环节。

5.二阶振荡环节(二阶惯性环节)二阶振荡环节的动态方程为其传递函数式中为无阻尼自然振荡角频率,ζ为阻尼比。

图中所示为RLC网络,输入为ui(t)、输出u0(t),其动态特性方程其传递函数

式中6.延迟环节(时滞环节)

延迟环节是输入信号加入后,输出信号要延迟一段时间τ后才重现输入信号,其动态方程为其传递函数是一个超越函数

式中τ称延迟时间

需要指出,在实际生产中,有很多场合是存在迟延的,比如皮带或管道输送过程、管道反应和管道混合过程,多个设备串联以及测量装置系统等。迟延过大往往会使控制效果恶化,甚至使系统失去稳定。

1.2.4分解结构水平转换--面向结构图的模型变换

对于任何一个组合的典型环节都可以用状态方程表示(20)面向结构图系统方程描述

面向结构图系统方程描述(续)U=WY+W0y0 (21)

W称为系统的连接矩阵,它描述了系统内部各环节连接情况,每个元素Wij

表示第j个环节的输出到第i个环节的输入之间的联接系数.W0称为外部输入的连接矩阵,它描述了外部输入对系统的作用情况。对单输入系统,W0是一个列矢量,Woj

表示外部输入信号y0作用在第j个环节上的作用系数。在上图中,y0

只作用在第一个环节上,故W0

1=1。若为多输入系统则W0也是一个矩阵,它的列数等于输入量的个数。

系统方程转换

将(21)式代入(20)式,则可得:(22)(23)其中:Q=B-DW,P=CW-A,V1=CW0

,V2=DW0

如果Q阵的逆存在,那么对(23)式两边左乘Q-1,则得:(24)这是一个标准的一阶常微分方程组。

系统方程转换(续)说明:(1)矩阵方程的右端有两项与外加作用信号有关,一项是,另一项。若外加作用函数是单位阶跃阵,此时

,为了便于计算,就要求V2是零向量。如果外加作用信号是阶跃信号,那么必须限制外加作用信号所用的那个环节Di=0。(2)只有当Q阵能求逆时,才能获得(14)式。当系统中各环节不存在纯微分环节和/或纯比例环节时就能保证Q阵可以求逆。(3)关于Q的逆阵不存在时的结构变换,以下例说明:

结构变换例子则Q=B-DW

P=CW-A

V1=CW0C1D3S123+-结构变换举例因为Q阵中出现1、3两列全零,所以Q-1不存在。其原因是1、3两个环节是比例和微分环节。对于上述系统,可以将其结构加以变换。

结构变换例子(续)系统结构变换的程序法:设系统的状态方程为:Q阵中有(N-M)列元素为全零,这说明有有(N-M)个环节的Y不出现在方程的左端。也就是说,系统中有(N-M)个代数方程。系统结构变换程序法就是通过矩阵的初等变换,把系统中(N-M)个代数方程分离出来。具体做法,就是对Q、P、V各矩阵线性变换,使上述方程中的各矩阵变为,从而Y变为,方程变为:

(25)

结构变换例子(续)其中:

(26)结构变换例子(续)在变换的过程中,对Q、P、V作列变换,将使Y原来的编号改变。所以程序中应将列变换的情况记录下来,以便在最后求出后,经过反变换而仍能恢复Y。完成变换后,系统可以分为M个微分方程与(N-M)个代数方程。而该M个微分组的的逆存在。因此:(27)由此解得,然后再解(N-M)个代数方程:

结构变换例子(续)

(28)由当时,,由此方程(28)可以写成:

1.3

微分方程的线性化

实际的物理系统往往有间隙、死区、饱和等各类非线性现象。严格地讲,几乎所有实际物理和化学系统都是非线性的。目前,线性系统的理论已经相当成熟,但非线性系统的理论还远不完善。因此,在工程允许范围内,尽量对所研究的系统进行线性化处理,然后用线性理论进行分析不失为一种有效的方法。

当非线性因素对系统影响较小时,一般可直接将系统当作线性系统处理。另外,如果系统的变量只发生微小的偏移,则可通过切线法进行线性化,以求得其增量方程式。

非线性函数的线性化,是指将非线性函数在工作点附近展开成泰勒级数,忽略掉高阶无穷小量及余项,得到近似的线性化方程,来替代原来的非线性函数。

假如元件的输出与输入之间关系x2=f(x1)的曲线如图,元件的工作点为(x10,x20)。将非线性函数x2=f(x1)在工作点(x10,x20)附近展开成泰勒级数

当(x1-x10)为微小增量时,可略去二阶以上各项,写成

其中

为工作点(x10,x20)处的斜率,即此时以工作点处的切线代替曲线,得到变量在工作点的增量方程,经上述处理后,输出与输入之间就成为线性关系。

图2-8为一铁芯线圈,输入为ui(t),输出为i(t)。线圈的微分方程为

当工作过程中线圈的电压和电流只在工作点(u0,i0)附近变化时,即有

线圈中的磁通对也有增量变化,假如在i0附近连续可微,将在i0附近展开成泰勒级数,即因是微小增量,将高阶无穷小量略去,得近似式

这就是铁芯线圈的增量化方程,为简便起见,常略去增量符号而写成返回1.4方框图

在控制工程中,为了便于对系统进行分析和设计,常将各元件在系统中的功能及各部分之间的联系用图形来表示,即方框图和信号流图。1.4.1方框图

方框图也称方块图或结构图,具有形象和直观的特点。系统方框图是系统中各元件功能和信号流向的图解,它清楚地表明了系统中各个环节间的相互关系。构成方框图的基本符号有四种,即信号线、比较点、传递环节的方框和引出点。1.5在MATLAB中数学模型的表示

线性系统理论中常用的数学模型有微分方程、传递函数、状态空间表达式等,而这些模型之间又有着某些内在的等效关系。MATLAB主要使用传递函数和状态空间表达式来描述线性时不变系统(LinearTimeInvariant简记为LTI)。

1.5.1传递函数

单输入单输出线性连续系统的传递函数为

其中m≤n。G(s)的分子多项式的根称为系统的零点,分母多项式的根称为系统的极点。令分母多项式等于零,得系统的特征方程:D(s)=a0sn+a1sn-1+……+an-1s+an=0系统的传递函数在MATLAB下可由其分子和分母多项式唯一地确定出来,其格式为

sys=tf(num,den)其中num为分子多项式,den为分母多项式

num=[b0,b1,b2,…,bm];den=[a0,a1,a2,…,an];对于其它复杂的表达式,如可由下列语句来输入

>>num=conv([1,1],conv([1,2,6],[1,2,6]));>>den=conv([1,0,0],conv([1,3],[1,2,3,4]));>>G=tf(num,den)

Transferfunction:1.5.2传递函数的特征根及零极点图

传递函数G(s)输入之后,分别对分子和分母多项式作因式分解,则可求出系统的零极点,MATLAB提供了多项式求根函数roots(),其调用格式为

roots(p)其中p为多项式。

例如,多项式p(s)=s3+3s2+4

>>p=[1,3,0,4];%p(s)=s3+3s2+4>>r=roots(p)%p(s)=0的根

r=-3.35330.1777+1.0773i0.1777-1.0773i

反过来,若已知特征多项式的特征根,可调用MATLAB中的poly()函数,来求得多项式降幂排列时各项的系数,如上例

>>poly(r)p=1.00003.00000.00004.0000

而polyval函数用来求取给定变量值时多项式的值,其调用格式为

polyval(p,a)其中p为多项式;a为给定变量值

例如,求n(s)=(3s2+2s+1)(s+4)在s=-5时值:>>n=conv([3,2,1],[1,4]);>>value=polyval(n,-5)value=-66[p,z]=pzmap(num,den)其中,p─传递函数G(s)=numden的极点

z─传递函数G(s)=numden的零点例如,传递函数

传递函数在复平面上的零极点图,采用pzmap()函数来完成,零极点图上,零点用“。”表示,极点用“×”表示。其调用格式为

用MATLAB求出G(s)的零极点,H(s)的多项式形式,及G(s)H(s)的零极点图

>>numg=[6,0,1];deng=[1,3,3,1];>>z=roots(numg)z=0+0.4082i0-0.4082i%G(s)的零点>>p=roots(deng)p=-1.0000+0.0000i

-1.0000+0.0000i%G(s)的极点-1.0000+0.0000i>>n1=[1,1];n2=[1,2];d1=[1,2*i];d2=[1,-2*i];d3=[1,3];>>numh=conv(n1,n2);denh=conv(d1,conv(d2,d3));>>printsys(numh,denh)numh/denh=%H(s)表达式>>pzmap(num,den)%零极点图>>title(‘pole-zeroMap’)零极点图如图所示:1.5.3控制系统的方框图模型

若已知控制系统的方框图,使用MATLAB函数可实现方框图转换。

1.串联

如图所示G1(s)和G2(s)相串联,在MATLAB中可用串联函数series()来求G1(s)G2(s),其调用格式为

[num,den]=series(num1,den1,num2,den2)其中:2.并联

如图所示G1(s)和G2(s)相并联,可由MATLAB的并联函数parallel()来实现,其调用格式为

[num,den]=parallel(num1,den1,num2,den2)其中:3.反馈

反馈连接如图所示。使用MATLAB中的feedback()函数来实现反馈连接,其调用格式为

[num,den]=feedback(numg,deng,numh,denh,sign)式中:sign为反馈极性,若为正反馈其为1,若为负反馈其为-1或缺省。例如

G(s)=,H(s)=,负反馈连接。

>>numg=[1,1];deng=[1,2];>>numh=[1];denh=[1,0];>>[num,den]=feedback(numg,deng,numh,denh,-1);>>printsys(num,den)num/den=

MATLAB中的函数series,parallel和feedback可用来简化多回路方框图。另外,对于单位反馈系统,MATLAB可调用cloop()函数求闭环传递函数,其调用格式为

[num,den]=cloop(num1,den1,sign)1.5.4控制系统的零极点模型

传递函数可以是时间常数形式,也可以是零极点形式,零极点形式是分别对原系统传递函数的分子和分母进行因式分解得到的。MATLAB控制系统工具箱提供了零极点模型与时间常数模型之间的转换函数,其调用格式分别为

[z,p,k]=tf2zp(num,den)[num,den]=zp2tf(z,p,k)其中第一个函数可将传递函数模型转换成零极点表示形式,而第二个函数可将零极点表示方式转换成传递函数模型。

例如

G(s)=用MATLAB语句表示:>>num=[12241220];den=[24622];>>[z,p,k]=tf2zp(num,den)z=-1.9294

-0.0353+0.9287i

-0.0353-0.9287i

p=-0.9567+1.2272i-0.9567-1.2272i-0.0433+0.6412i-0.0433-0.6412ik=6即变换后的零极点模型为G(s)=

可以验证MATLAB的转换函数,调用zp2tf()函数将得到原传递函数模型。

>>[num,den]=zp2tf(z,p,k)num=06.000012.00006.000010.0000den=1.00002.00003.00001.00001.0000即

1.5.5状态空间表达式

状态空间表达式是描述系统特性的又一种数学模型,它由状态方程和输出方程构成,即

x(t)=Ax(t)+Bu(t)

y(t)=Cx(t)+Du(t)式中

x(t)∈Rn称为状态向量,n为系统阶次;A∈Rn×n称为系统矩阵;B∈Rn×p称为控制矩阵,p为输入量个数;C∈Rq×n称为输出矩阵;D∈Rq×p称为连接矩阵,q为输出量个数。

在一般情况下,控制系统的状态空间表达式项简记为(A,B,C,D)。

例如:设一个双输入双输出系统的状态空间表达式为系统模型可由MATLAB命令直观地表示:>>A=[1,2,4;3,2,6;0,1,5]>>B=[4,6;2,2;0,2]>>C=[0,0,1;0,2,0]>>D=zeros(2,2)MATLAB的控制系统工具箱提供了由状态空间表达式转换成传递函数或由传递函数转换成状态空间表达式的转换函数ss2tf()和tf2ss()。其调用格式为[num,den]=ss2tf(A,B,C,D,iu)

反过来,若已知系统的传递函数,求取系统状态空间表达式的调用格式为

[A,B,C,D]=tf2ss(num,den)例如系统的传递函数为

系统的状态空间表达式为

>>num=[1,2,3];den=[1,3,6,1];>>[A,B,C,D]=tf2ss(num,den)A=-3-6-1100010B=100C=123D=0返回1.6用MATLAB和SIMULINK进行瞬态响应分析

1.6.1单位脉冲响应

当输入信号为单位脉冲函数δ(t)时,系统输出为单位脉冲响应,MATLAB中求取脉冲响应的函数为impulse(),其调用格式为[y,x,t]=impulse(num,den,t)

或impulse(num,den)式中G(s)=num/den;t为仿真时间;y为时间t的输出响应;x为时间t的状态响应。例

试求下列系统的单位脉冲响应MATLAB命令为:>>t=[0:0.1:40];>>num=[1];

>>den=[1,0.3,1];>>impulse(num,den,t);>>grid;>>title('Unit-impulseResponseofG(s)=1/(s^2+0.3s+1)')其响应结果如图所示。例

系统传递函数为求取其单位脉冲响应的MATLAB命令为>>t=[0:0.1:10];num=[1];>>den=[1,1,1];>>[y,x,t]=impulse(num,den,t)>>plot(t,y);grid>>xlabel(‘t’);ylable(‘y’);其响应结果如图所示。

1.6.2单位阶跃响应

当输入为单位阶跃信号时,系统的输出为单位阶跃响应,在MATLAB中可用step()函数实现,其调用格式为[y,x,t]=step(num,den,t)或step(num,den)例

求系统传递函数为>>num=[1];den=[1,0.5,1];>>t=[0:0.1:10];>>[y,x,t]=step(num,den,t);>>plot(t,y);grid;>>xlabel(‘Time[sec]t’);>>ylabel(‘y’)响应曲线如图

所示图单位阶跃响应1.6.3斜坡响应

在MATLABA中没有斜坡响应命令,因此,需要利用阶跃响应命令来求斜坡响应。根据单位斜坡响应输入是单位阶跃输入的积分。当求传递函数为的斜坡响应时,可先用除得,再利用阶跃响应命令即可求得斜坡响应。例

已知闭环系统传递函数

对单位斜坡输入则

系统单位斜坡响应的MATLAB命令:>>num=[1];

>>den=[1,0.3,1,0];>>t=[0:0.1:10];>>c=step(num,den,t);>>plot(t,c);>>grid;>>xlabel('tsec');>>ylabel('InputandOutput')其响应结果如图所示。1.6.4任意函数作用下系统的响应

用线性仿真函数lsim来实现,其调用格式为[y,x]=lsim(num,den,u,t)

式中;y(t)为系统输出响应;x(t)为系统状态响应;u为系统输入信号;t为仿真时间。例反馈系统如图(a)所示,系统输入信号为图(b)所示的三角波,求取系统输出响应。图反馈系统及输入信号(a)(b)MATLAB实现指令>>numg=[10,20];deng=[1,10,0];>>[num,den]=cloop(numg,deng,-1);>>v1=[0:0.1:2];>>v2=[1.9:-0.1:-2];>>v3=[-1.9:0.1:0];>>t=[0:0.1:8];>>u=[v1,v2,v3];>>[y,x]=lsim(num,den,u,t);>>plot(t,y,t,u);>>xlabel('Time[sec]');>>ylabel('theta[rad]');>>grid其响应曲线如图所示。图系统响应曲线1.6.5Simulink中的时域响应举例

例图的Simulink的仿真框图可演示系统对典型信号的时间响应曲线,图中给出阶跃响应曲线。返回

虚拟设计

一、前

言0102030405060产品定义产品开发工艺规划制造检验应用成本%避免错误、或尽早发现错误、尽早修正错误设计开发目标75%修改源于设计开发80%修改由制造后续阶段完成团队工作开发过程重组DFX实现策略并行工程虚拟产品开发虚拟产品建模与仿真虚拟产品开发过程建模与过程仿真二、虚拟产品开发现实产品开发设计评价产品报废品报废品制造原料外在因素变化设备厂房人员试制原料设备厂房人员数据/信息原料设备厂房产品实际制造人员报废品设计虚拟样机评价反馈信息虚拟加工虚拟装配虚拟检测市场信息虚拟产品开发虚拟产品开发的定义

虚拟产品开发技术是以计算机仿真和产品生命周期建模为基础,计算机图形学、人工智能、网络技术、多媒体技术和虚拟现实技术等在产品开发(包括产品构思、设计、制造、测试和分析等)的综合应用技术。虚拟产品开发过程建模与仿真虚拟产品开发过程建模与仿真虚拟产品开发技术的意义促进创新设计加快产品上市速度减少资源浪费降低产品开发风险推进远程协同产品开发提高技术培训与教育质量增强企业竞争力三、虚拟现实技术何谓虚拟现实什么是虚拟现实?人类需要用工具来增强、延伸、扩大自己的感官、肢体和大脑的功能

杠杆、滑轮、千斤顶增强肢体的功能望远镜、显微镜、雷达增强眼睛的功能听诊器、助听器、收音机增强耳朵的功能计算机、仿真模拟器、精密分析仪器增强大脑的功能。这些基本上都只能帮助我们进行单方向的推理。对于广泛和复杂的世界,单方向的推理是远远不够的。人类盼望着能够找到…

能够根据研究问题的需要,提供一个具有尽可能逼真的虚拟对象、虚拟环境的虚拟世界。能够帮助我们沉浸在这个虚实结合的环境中,身临其境地体验这个虚拟世界中的一切,在这样的环境中研究和分析问题。能够灵活地扩大或缩小虚拟世界的时间尺度和空间尺度。例如,在数秒钟内观察地壳的演变历程,在数分钟内细细品味子弹穿破玻璃时的精细过程。能够帮助我们跟这个虚拟世界交流、发生相互作用,我们不只是能移动和触摸虚拟世界中的虚拟物体,还能在虚拟世界的街巷楼宇之间漫游。总之:希望能帮助我们创建一个时域和空域可变的虚拟世界,使人能够:沉浸其中,超越其上,进出自如,交互作用获得“观古今于须臾,抚四海于一瞬”的效果。虚拟现实是用高科技手段构造出来的一种人工环境,它具有模仿人的视觉、听觉、触觉等感知功能的能力,具有使人可以亲身体验沉浸在这种虚拟环境中并与之相互作用的能力虚拟现实技术的最终日的是提高人的认识能力,促进人与环境的交流,更深入地开发人类的智慧这就是虚拟现实…虚拟现实:

虚拟现实技术(VirtualReality,VR)是一种三维计算机图形技术与计算机硬件技术发展而实现的高级人机交互技术,允许用户通过视觉、听觉、触觉甚至嗅觉和味觉等多种知觉方式实时地与计算机所建造的仿真环境发生相互作用。虚拟现实的情景是怎样生成的?如何生成?情景生成要使人能够产生:视觉、听觉、触觉、力感、运动感、味感、嗅感等。如何生成这些感觉呢?环境生成跟踪系统发射器头部跟踪接收器头盔显示器立体声耳机话筒数据手套跟踪接收器手部3D跟踪系统语音识别3D声音处理器虚拟环境数据库

图形处理器

主计算机

虚拟环境

实时操作系统虚拟现实环境:一个典型的虚拟现实环境是由人和虚拟现实系统两大部分组成虚拟现实系统又由三部分构成:

基于先进传感器的人机接口具有多媒体功能的计算机系统面向虚拟现实的软件系统

虚拟现实系统虚拟现实系统VR硬件计算机VR软件场景显示系统触觉反馈器方位跟踪系统声音识别系统操作者机器人机接口在虚拟现实系统中,关键之一是:如何实现多维信息的输入和输出如何实现人跟虚拟世界的交互作用。最基本的人机接口设备是:头盔式显示器三维鼠标数据手套人机接口---先进传感器技术和产品头盔式显示器的外形很像摩托车驾驶员所佩戴的头盔,左右两眼前是高分辨率的显示屏。当佩戴头盔式显示器的用户头部发生移动时,利用头盔上的方位跟踪器,就能向计算机报告用户头部的方位了。如果计算机系统的处理速度足够快的话,就能向显示屏提供与头部方位(准确地说是眼睛所注视的方位)相一致的图像佩戴头盔的人能随着头部的转动看到一个和头部方位相一致的、由计算机所输出的虚拟世界的图像,好像是头转到哪里就能看到哪里,这样从视觉上就感觉完全沉浸在这个虚拟世界中头盔式显示器头盔式显示器头盔式显示器头戴头盔式显示器进入虚拟现实环境在虚拟环境中最常用的人机接口工具之一是数据手套。数据手套通常是一种尼龙手套,在每个手指上安装有相应的弯曲和扭曲传感器。计算机利用传感器的信息,控制虚拟空间中物体的位置和方向,于是就产生了人能用自己的手,去控制虚拟空间中虚拟物体的感觉了数据手套为了能使戴上数据手套的手不仅仅能搬动虚拟物体,还能感受虚拟物体“应有的”重量和质感,更先进的数据手套还具有触觉,最简单的做法是在手套上安装气压式和振动触感式的反馈器。在计算机的控制下,向手套的气袋充气时,戴上这种数据手套的手就感受到一定的压力了,用这种办法就可以模拟手触模真实物体时的感觉数据手套数据手套不管是在头盔、三维鼠标上,还是在数据手套上,都需要安装能对空间位置进行跟踪定位的跟踪装置

基于超声波原理进行位置和方向的跟踪,即用三角形法测出位置发送器和接受器之间的相对方位。它的优点是工作可靠、价格较低,缺点是分辨率较低、时延较长,而且受回声的干扰影响较大

不管是在头盔、三维鼠标上,还是在数据手套上,都需要安装能对空间位置进行跟踪定位的跟踪装置

基于光学原理的跟踪器。在固定的位置上(例如天花板上)安装排列成栅格状的一组发光二极管,在用户的头上安装一个照相机,发光二极管周期性地发光,通过照相机的感光就可测出头部的位置。它的优点是定位精度较高、时延较短,其缺点是受控的面积受发光二极管栅格面积的限制,如果要检测头部或手部的全方位的转动就有一定的困难

具有多媒体功能的计算机系统是虚拟现实系统的基石基于个人计算机(PC)的虚拟现实计算机

基于工作站的虚拟现实计算机

在虚拟现实技术中,软件的主要功能就是高效地产生与真实物体形似、质似和神似的虚拟物体和虚拟环境,“以假乱真”,从而取得“身临其境”的效果面向虚拟现实的软件系统“几何建模”就是用许许多多各式各样的多边形,拼构成所模拟对象的立体外形,这个外形必须尽可能地跟所模拟的对象完全一致,达到“形似”。形似对几何模型进行纹理、颜色和光照的处理,也就是所谓的“物理建模”,使它看上去具有“质感”。同样是一个球,通过这两种建模,就能分辨出是玻璃球、塑料球还是棉花球。为了使虚拟空间内的虚拟对象具有质感,有时还要为对象附加更多的物理属性。例如:橡皮球具有变形和弹性的双重属性,玻璃球掉在地上时可能要破碎,而木球就会发生反弹等等。这就是“质似”。质似最典型的例子就是用简单的线条描述舞蹈家的体型及四肢的舞蹈动作,用演员的面部表情模拟某个卡通形象的面部表情。寥寥数笔线条与舞蹈家的身材当然相差甚远,而动物卡通的一个拟人形象当然不能等同于真人,但如果我们能从线条的动态变化中分辨出是“梁山伯与祝英台”的双人舞还是“天鹅湖”双人舞,这就达到“神似”神似常用的软件系统:图形生成环境OpenGL(OpenGraphicsLibrary)用于创建复杂图景的虚拟现实的工具包VRT开发虚拟世界的工具集WTK(WorldToolKit)快速生成和观察虚拟现实系统的QuickTimeVR等。近来最受用户欢迎的虚拟现实软件工具之一是MultiGen许多仿真公司和三维图像处理公司等已经利用MultiGen所提供的工具进行了二次开发,研制出满足某个特定领域需要的、成套的开发虚拟现实应用系统的软件。Vega就是较成功的一个实例。Vega是基于MultiGen软件工具所开发的一套专门用于实时仿真、可视化环境和虚拟现实系统的软件系统。利用Vega可以快速地生成一个交互的、三维的作战模拟环境或生产控制环境。Vega提供了建立快速原型系统、图形编辑、系统构成所需的工具,还能提供内容丰富的三维模型库和功能强大的虚拟现实环境

通过Vega生成的作战模拟的场景图,其中甚至包括了火光、烟雾和云彩美国波土顿动力学公司(BDI,BostonDynamicslnc.)开发一个名为DI-Guy的虚拟现实软件工具。DI-Guy在虚拟现实中的应用分为三类:即沉浸式的训练(ImmersiveTraining)系统、交互式的训练(InteractiveTraining)系统和可视化想定(ScenarioVisualization)系统。

不论是哪一类虚拟现实应用系统,在DI-Guy的支持下,系统开发者都能用一些很简单的命令,自动地对虚拟物体、虚拟人物、虚拟场景赋予某种“仿生”的特征

仿战士:能逼真地重现一个训练有素的战士的动作和姿态;仿男人:有男子汉的刚劲有力;仿女人:有女人的婀娜多姿;仿运动员:就能分清体操、跑步、垒球、足球、排球、篮球运动员的不同的体型和节奏;仿现场:就能产生烟雾、火光、云雾的效果。

DI-Guy软件所产生的单兵作战动作

穿不同的军装;携带不同的武器;做着各种不同的动作

运动员翻腾跳跃

球场上激烈竞争

虚拟现实技术的新进展具有宽视野的立体眼镜虚拟现实技术的新进展美国的SGI公司推出了名为DataVlsor80的头盔式显示器。这是一种宽视野、高分辨率的头盔式显示器。显示部分是采用1英寸的阴极射线管,能得到24位的全彩色图像。其垂直视野可达80度,水平视野可达120度,分辨率可达1280×l024,用户佩戴这种头盔式显示器后,能获得较好的沉浸感。整个头盔重约2kg

虚拟现实技术的新进展SGI公司提供了一种类似双简望远镜式的手持式显示器。为了能使显示器中的图像随着人的头部的方位发生变化,所以在显示器上也安装有方位跟踪装置。由于是手持的,调整方位十分方便,视野小些,也不妨碍用户观看全景。这个显示器的分辨率为640×480和1280×1024两种,能产生24位彩色图像

最常见的三维鼠标有两种跟踪球(trackL,a11)三维空间探针三维鼠标虚拟现实技术的新进展跟踪球跟踪球的中心是固定的,并有一个活动的外层,装有6个发光二极管和相应的6个光传感器。当使用者用手对该球的外层施加力和力矩时,根据“弹簧变形”规则,就可通过6个光传感器测出3个力和3个力矩的信息,传输给计算机后求出虚拟空间中某物体的位置和方向虚拟现实技术的新进展三维空间探针是安装在一个固定的基座上,具有6个关节的机械臂。在每个关节上装有传感器,计算机接收传感器的信息,并计算出在虚拟空间的物体的位置和方向三维空间探针虚拟现实技术的新进展虚拟现实技术的新进展多人共享的沉浸式系统虚拟现实技术的新进展大屏幕显示系统可以满足数十人、几百人同时观看虚拟现实技术的新进展手控式高分辨率CRT显示器虚拟现实技术的新进展观察者只需佩戴一个非常轻巧的眼镜,效果较好:从视觉效果上可以达到120度的宽阔视野;具有很高的分辨率,可以形成1024线、每线具有1280像素的光栅,并且按72HZ的频率进行更新,因此几乎和人眼的分辨率一致。它还可以得到全色图像和足够的亮度,即使在户外观看也无影响。如果对两只眼睛分别产生两幅有一定视点差异的图像,就可产生三维立体图像的效果。必要时,它可以在原来视网膜上已经有的真实世界的图像上叠加上所产生的虚拟图像,取得了虚实结合的效果。虽然这种虚拟视网膜显示装置才刚刚诞生,但已显示出很大的应用潜力。虚拟视网膜显示器通过各种各样的显示系统,人们能够亲眼看见虚拟空间中的虚拟物体和虚拟景象,可以在一定程度上能够得到身临其境的感觉。人们并不满足这种“只能看、不能模、不能碰”的局面。人们如何去搬动虚拟空间的一张虚拟桌子呢?如何能用一块虚拟的木板压扁一个虚拟的气球呢?如何实现用自己的手去掂量一下虚拟石头的重量?虚拟现实技术的新进展触觉和力反馈的装置虚拟空间的虚拟物体仅仅是一个计算机生成的三维图像,它无真正的重量、无实在的质地,只是一个“虚幻的”图像。的手指、手腕或手臂上的控制机构和执行机构,并通过“某种算法”,产生与人触摸到真实物体时同样的刺激或反馈,用户就得到如同触摸、搬动一个真实物体一样的感受当计算机赋予这个图像某些属性数据,例如几何学属性、材料质地属性、动力学属性以及运动学属性等时,我们可以用“某种办法”,通过“某种设备”,触模到这个虚拟物体,计算机系统能够及时地把这些属性数据传送给用户虚拟现实技术的新进展触觉和力反馈的装置虚拟现实技术的新进展触觉和力反馈的装置三维探针:用手操纵探针的把手,用探针尖去触碰虚拟物体,计算机把虚拟物体的属性数据反馈给探针把手,使人感受到虚拟物体的某些属性手指卡箍:卡箍与连杆及马达相连。戴上卡箍去触摸、旋转或搬动虚拟物体时,计算机能把这个虚拟物体的某些属性数据反馈给马达,通过连杆作用在卡箍上,使人获得触感和力感一个VirtualWorkbench的工作平台虚拟现实技术的新进展虚拟现实技术应用虚拟现实与教育、培训虚拟现实在其它领域的应用虚拟现实与文化娱乐虚拟现实与制造将VR技术应用于教育可以使学生能够游览海底、遨游太空、观摩历史城堡,甚至深入原子内部观察电子的运动轨迹和体验爱因斯坦的相对论世界,从而更形象地获取知识,激发思维。虚拟现实与教育、培训VR技术在文化、娱乐领域有着极其广泛的应用。第一个大规模的VR娱乐系统“BattleTech”,将每个“座舱”仿真器连网进行组之间的对抗,3维逼真视景、游戏杆、油门、刹车和受到打击时的晃动给用户很强的感官刺激。虚拟现实与文化娱乐虚拟现实与文化娱乐基于高速网络和虚拟现实技术的“虚拟美国国家艺术馆”能使任何一个在计算机网上工作的人,都能远距离地参观艺术馆,不仅仅使参观者能尽兴地仔细欣赏展品,获得身临其境的感受,并且还可以参加培训中心或研究中心,获得更多的知识。当您进入“虚拟美国国家艺术馆”时,您可根据自己的爱好选择摄影、雕塑、民间艺术、绘画、风景画、肖像画、微型艺术品、抽象画、城市景色、美国西部风光、美洲土著居民文化艺术、宗教艺术、儿童艺术、体育运动和动物艺术等选项。虚拟现实与文化娱乐驯马罗马女神篱安娜

虚拟现实与文化娱乐黄石公园山泉的奔腾黄石公园大峡谷的雄浑内华达丛岭的峻峭虚拟现实与文化娱乐可爱和美的女神维纳斯雕像

蒙娜丽沙画像虚拟现实技术在制造业中的应用:利用虚拟样机在产品实际加工之前对其性能、可制造性进行评价,同时对制造全过程仿真,将制造过程可能发生的问题提前到设计阶段处理,以达到产品生产的最优目标。波音777飞机的设计是虚拟原型机的应用典型实例,这是飞机设计史上第一次在设计过程中没有采用实物模型。波音777由300万个零件组成,所有的设计在一个由数百台工作站组成的虚拟环境中进行。设计师戴上头盔显示器后,可以穿行于设计中的虚拟“飞机”,审视“飞机”的各项设计指标。虚拟现实与制造四、虚拟设计技术及其应用虚拟产品设计

虚拟产品设计是以虚拟现实技术为基础,实现产品或工程设计与评价分析的技术,是新一代的计算机辅助设计技术。虚拟产品设计技术的应用形状设计装配设计工程设计虚拟形状设计对于规则形体,可以采用语音识别、手势跟踪的交互系统实现实体生成、尺寸更改、形状变更、实体变换(移动、旋转等),从而完成形体设计虚拟形状设计单独使用语音命令“产生高20mm、长100mm、宽50mm的长方体”“放置对象于X=10、Y=10、Z=20处”“将对象沿X移动10mm”语音与手势合用指着对象,“选择”确定双手间距,“长度这么长”“改变长度”,作手势虚拟形状设计对于自由曲面,主要采用手势和虚拟工具,完成曲面设计。虚拟形状设计单独使用手势手势比划虚拟工具虚拟油泥建模(VirtualClayModeling):允许工业造型技术人员以类似于传统的手工设计方式(刮、削、扫、抹等)制作出随心所欲的模型虚拟装配设计设计人员可以利用手套或其它设备根据经验装配或拆卸零件,在虚拟环境中使用各种装配工具对产品的装配性进行分析,而且可以产生装配规划虚拟工程设计

对于生产线、厂房车间、地铁等大型工程设计,虚拟设计技术提供对设计方案评价的非常直观的手段虚拟厂房虚拟生产线虚拟工程虚拟设计、制造软件系统名称出品公司名称主要模块主要功能

Deneb

美国DenebRobotics公司EnvisionQuestVirtualNCAssemblyERGO虚拟样机设计分析、虚拟环境漫游、离散事件仿真、加工过程仿真、虚拟装配和拆卸仿真、人体建模与分析

dVISE

英国Division公司dv/WebFlydv/Playerdv/Reviewdv/Mock-Updv/Reality实时网上信息浏览虚拟样机装配拆卸仿真WorldToolKit美国Sense8公司WorldUp实时交互虚拟环境建立

EAI美国EngineeringAnimation,Inc.装配分析、装配设置评估、模型可视化、三维工程动画五、应用事例虚拟人工拆卸工程设计与仿真由虚拟环境到CAD的数据交换问题数据接口数据缩减实时与复杂硬件方面的问题网络传输速度问题六、需要解决的问题由于虚拟设计系统在图形输出和模型操纵方法上与其他的计算机辅助应用系统如CAD、CAPP(计算机辅助工艺规划)等存在着很大的不同,从而导致虚拟现实系统的数据和信息不能很好地被其他现行的计算机辅助系统共享由虚拟环境到CAD的数据交换问题目前所用的数据接口,例如IGES(基本图形转换规范)只能提供几何数据的转换。例如,它们只能提供一个孔的周边信息而不能提供孔本身的信息如孔径及中心位置,更不用说材料、质地、颜色、力学特性等。数据接口问题在硬件还不足够强大的情况下,若要保证足够的图像刷新率,CAD数据就需要转换为多边形格式并且很可能需要实施进一步的缩减处理。巧妙的缩减算法可以将原数据缩减数据缩减问题限于目前计算机的能力,为了在虚拟环境中完成较为理想的交互,系统必须在描绘的真实感和必要的刷新率之间进行折中。这样的折中应该考虑系统的具体应用环境和对沉浸感的要求,好在虚拟设计一般对沉浸感要求不是太高。适当地进行纹理渲染处理有利于增强图形的真实感并不增加三角形的数量。实时要求与复杂问题处理器计算能力不足、头盔式显示器分辨率太低、触觉/力量反馈系统能力太差。跟踪系统能够精确跟踪的范围太小,抵抗外来干扰的能力不足。以上这些硬件问题是虚拟设计系统不能充分发挥其强大功能的主要障碍。硬件方面的问题全球虚拟设计系统对实现异地设计和异地制造,帮助企业占领全球市场是极其重要的,但目前网络的传输速度实在难以满足这样的要求网络传输速度问题虚拟设计技术使人类从虚拟的世界中获得巨大的现实效益使人类更多的梦想成真

时域离散相似法

“离散相似法”

――对传递函数作离散化处理得离散传递函数,称为频域离散相似模型――频域离散相似法

――对状态方程离散化得时域离散相似模型――时域离散相似法

3.1时域离散相似法基本原理

3.1.1基本方法

系统状态方程:(1)解析解:(2)离散化处理:

信号重构TT

图3.1连续系统的离散化处理基本方法

(续)输入端:加上虚拟采样开关和虚拟信号重构器;输出端:加一个虚拟采样开关虚拟采样周期:T,两者同步。

对离散化处理后的系统,设kT及(k+1)T为两个依次相连的采样瞬时,则有:

(3)(4)

基本方法

(续)将(4)式-(3)式乘以eAT,可得:

(5)(5)式右端的积分与k无关,故可令k=0。若信号重构器使kT与(k+1)T之间的不变,积分式中的保持常数,那么,(5)式可改写为:

(6)

基本方法

(续)若令,则有:

(7)信号重构器使为一斜坡函数(梯形近似),则在原基础上增加

(8)对应,对

引起的变化量为:

(9)

则:(10)

基本方法

(续)(状态转移矩阵)

(输入信号采用零阶重构器引入的系数矩阵)

(输入信号采用一阶重构器后叠加的系数矩阵)

比较:离散相似法:方程系数可以一次求出,每做一步积分只要计算一次右端函数,无须迭代,速度快

.数值积分方法:每做一步积分要多次计算右端函数,迭代,速度慢3.1.2状态转移矩阵的计算

1.泰勒级数展开法

由Lion提出(12)若级数在i=L处截断

(13)要求:

或(14)其中rij和mi

j对应为R与M的元素,rmax为ri

j中最大元素。

状态转移矩阵的计算(续)(13)式中mmin是容易求出的,但rmax却无法求出,因为R仍是一个无穷项的和。估计rmax:令为矩阵R的范数,根据矩阵范数的定义,有由

(15)状态转移矩阵的计算(续)令

(16)则有如果,则因此,若(17)则满足(14)式,eAT可以按照以下迭代过程来计算:

状态转移矩阵的计算(续)(1)选择初始L;

(2)计算矩阵M及│mmin│;(3)用式(16)求ε;(4)用式(17)判别是否满足精度的要求。若满足,则用M来代替eAT,否则L=L+1,并重新计算。系数的计算:因为令

2.eAT加速收敛算法eAT计算:在有些情况下,泰勒级数展开法收敛性较差,即需要取很多项才能达到精度要求。然而项数增加,大量矩阵乘法计算,矩阵计算引入的舍入误差大大增加,影响计算精度。以一阶系统为例,,分别令aT等于0.1,0.5,1.0,2.0,泰勒展开式取前m项所达到的计算精度用10-b表示:

eAT加速收敛算法(续)baT123456789100.12357810121416180.5112345789111.01123456782.01122345可以看到,-aT<1才有较好的收敛性。然而,在某些情况下,全部满足该条件比较困难(比如病态系统),如何加速收敛就成为状态转移矩阵计算中一个必须解决的关键问题。

3.等效转移法

若,步长T<1,取时间比例尺,即原时间t,经等效转移后的时间为τ,则由相似定理若则

令并略加整理,可得:

等效转移法(续)得到新的状态方程:A*、B*阵的各元素ai*、bi*与原来的ai、bi相比较,分别乘以Ti+1、Ti,时间常数加大,状态矩阵计算的收敛性则大大加快。需要注意的是,仿真结果的时间比例尺也放大了1/T倍。

缩方与乘方

根据eAT的特性,若设

T=T×2-m,m为大于零的整数,则有先利用台劳级数法来计算eA

T,那么可以取较少的级数项而能获得较高的精度;然后再将它进行2m次方相乘,即可计算出eAT。需要指出的是,m也不能太大,一般m应小于4~8,否则计算eAT时会产生很大的舍入误差。3.2增广矩阵法

对线性定常系统,离散模型:

(1)这种方法的误差来源于:

(1)eAT的计算误差;

(2)u(t)误差

尽管可归结为eAT的计算,而且eAT的计算误差可以通过缩方与乘方的方法减少,然而,虚拟采样后的信号带来的误差却无法消除。增广矩阵法(续)将输入信号也能作为系统的状态对待,那么只需要着眼于提高eAT的计算精度就能达到仿真精度的提高――增广矩阵法。广矩阵法将转化为齐次常微分方程组:(2)等价的离散模型就变成(3)

增广矩阵法(续)其中,(4)仿真只有一项误差――计算的误差。

例如,阶跃输入时,,定义第n+1个状态变量为:增广状态方程及输出方程为:初始条件:

增广矩阵法(续)考虑一般情形,设作用函数u(t)可以表示成如下形式:(5)视u(t)为上述m阶系统的自由响应。设该m阶系统的状态变量为xu,(6)(7)增广矩阵法(续)其中(8)(9)将该m阶系统增广到原n阶系统,增广状态方程如下:

(10)增广矩阵法(续)AuAXXu增广状态系统结构图3.3面向结构图的非线性系统仿真

非线性典型环节位于线性环节之间,不可能统一计算整个系统的及,而只能计算出各个线性部分的及(i=1,2,…,N,N表示该系统共有N个线性部分)。定义仿真模型时,选择如图(3.6)所示的环节作为基本环节。该环节是在典型线性环节的前面与后面均附属了一个非线性环节,

面向结构图的非线性系统仿真(续)以被仿真的系统中的线性典型环节为基础确定系统的环节个数、参数,连接矩阵等;确定非线性环节的归属,对每类非线性环节给出其特征参数和类型参数,以及它位于某一环节孰前孰后的描述参数。计算过程分四步:①不考虑非线性,根据连接矩阵计算出各环节的输入;②根据各环节前的非线性计算出各环节中线性动态部分的输入;③根据线性部分的离散状态方程计算各环节线性部分之输出;④根据各环节后的非线性计算出各环节中线性动态部分的输出;然后重复上述四步,直到仿

温馨提示

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

评论

0/150

提交评论