- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
全结构仿真功能库.doc
四 全结构仿真
一) 全结构仿真概述
从控制原理上,我们知道系统的描述方法有很多种,比如传递函数、状态方程、信号流图等。方块图法也是其中的一种,如图所示。
若上图所示的功能块它们可以是如加法、减法、惯性、实际微分、传递函数等一些线性环节或非线性环节组成。如果我们能够用一系列函数(或称为功能块)来实现这些方块的功能,我们就很容易把这个系统在计算机里进行描述,也即用一些功能块来描述系统,功能块的计算顺序就是函数参数的更新顺序,也是系统信号的传递顺序。
描述系统的方块图非常之多,各有不同,每个方块我们都用一个功能块或函数去编程实现,再把一个系统送入计算机,这样的工作量是非常大的,因为每编写一个功能块并把它调试正确是需要大量时间的。如果我们把系统看成是一些如加法、减法、惯性、实际微分、继电等基本环节构成,把这些其本环节的功能块组成一个功能库就可避免上述的麻烦,并且把一个系统数学模型送入计算机也变得简单多了。我们把这种数字仿真方法叫全结构仿真。
要实现这一目的,关键是要建一个由基本环节的函数构成的功能库。我们知道,任何一个运算都可以看成是函数运算特性,为了运算的需要,我们采用如下的函数结构:
y=f(x1,x2,x3)
图4-3 全结构仿真基本思想框图
这样,对于一个系统,我们就可以看成是由若干个单元构成,将f编制成各种各样的运算特性,就可以组成功能库。使用时,将这个库中的功能调出,放在此单元中进行运算即可。设计时将每种功能函数定义一个功能代号,以代号直接就可以找到相就的处理程序块。
这种结构中,x1~x3是三个输入信号,它可以是某个环节的输出信号,也可以是常数。信号的类别可以是数字,也可以是0和1的开关状态量;单元的输出y可以是数字,也可以是0和1的状态,具体形式由所调用的功能块决定。单元号码是在仿真系统中,按运算的顺序编号。程序就可以根据这个单元编号顺序调用相就的功能函数。每一个步长内,将构成系统的所有单元都处理一次,这样循环下去,从而可以得到输出的数字解或响应曲线。
根据这样的一种思路,程序的结构如下图4-3示。从图中可以看到,程序的主体是功能库。
表4-1 功能库表
功能代号 功能名称 功能 01 阶跃闸门函数 Y=x1*1(t-x3)+x2 02 减法 Y=x1-x2 03 加法 Y=x1+x2 04 积分 Y=1/s*x1*x2 05 惯性 Y=x1*x2/(x3*s+1) 06 实际微分 Y=x1*x2*/(x3*s+1) 07 超前-滞后 08 PI 09 PD 10 PID 11 纯滞后 12 选择 13
周期方波 14 乘法加法 15 闸门斜坡信号 16 闸门正弦信号 17 饱和非线性 18
死区非线性 19
小信号切除 20
死区滞环继电
二) 全结构仿真功能库
按照系统的一般性,可以将系统中所使用的特性分解成如表所示的一些基本功能,这些功能编制成功能函数,即可建立一个功能函数库。由于某些功能函数需要使用一些保存的中间变量,所以在程序中需设置一个中间变量数组作为全局变量,以存放运算中要保存的中间变量,变量存放的下一个位置由一个全局变量指针SP所确定。我们定义全局变量数组为ymv.
根据表中列出的功能编制相应的功能函数,下面就几个功能块作一介绍。
01号功能块 阶跃闸门函数
global 定义全局变量的语句
t 仿真时间
ts 仿真步长
tmax 仿真终止时间
sp中间数组单元指镇
ymv全局中间数组变量
yd1 yd2 纯滞后数组变量
spd1 spd2 纯滞后数组单元指镇。
function y= f01f (x1, x2, t0)
% 阶跃闸门函数;
% 当tt0时,输出y=x1+x2;
% 当tt0时,输出y=x1。
%
global t ts tmax sp ymv yd1 yd2 spd1 spd2
if (t=t0) y=x1+x2; else y=x1; end
02号功能块 减法运算
function y=f02f(x1,x2)
% 减法运算 y=x1-x2
y=x1-x2;
03 号功能块 加法运算
function y=f03f(x1,x2)
%加法运算 y=x1+x2
y=x1+x2;
04 号功能块 积分运算
function y=f04f(x1,ki)
文档评论(0)