以图搜图
X
提示:扫描拍照图截取关键部位识图,更精准。
(仅支持jpg、png、bmp图片,最大2M)
当前位置:首页 > 百科 > matlab状态空间模型(matlab中如何通过ss函数和tf2ss函数将微分方程转化...)

matlab状态空间模型(matlab中如何通过ss函数和tf2ss函数将微分方程转化...)

2020-02-16 13:39:44
matlab中如何通过ss函数和tf2ss函数将微分方程转化...

例如下面的一道题。

方法一:

num=[0 0 10 10];

den=[1 6 6 10];

[A,B,C,D]=tf2ss(num,den)

方法二:

num=[0 0 10 10];

den=[1 6 6 10];

gs = tf(num,den)

gss = ss(gs)


matlab中由传递函数生成到状态空间的指令dif2ss

1、dif2ss并非MATLAB系统自带的命令,而是国内某本教材上所载的作者自编函数。我不知道楼主看的是哪本书,根据我查到的信息判断,可能是赵明旺等编著的《现代控制理论》(华中科技大学出版社,第73页):

http://ishare.iask.sina.com.cn/f/23221558.html

书中说该函数在随书光盘中提供,但我未能找到随书光盘。

 

2、如果愿意做,可以根据该书第49-53页关于约旦规范型的相关内容自行编写程序。

 

3、另外一个可行的做法是,使用符号数学工具箱的jordan函数来求变换矩阵,以下是示例:

>> num_1=[2 14 24];  den_1=[1 5 8 4];
>> sys_1=tf(num_1,den_1);
>> [a,b,c,d]=ssdata(sys_1);
>> [v,j]=jordan(a);
>> sys_2=ss(va*v,v,c*v,d)
 
a = 
       x1  x2  x3
   x1  -1   0   0
   x2   0  -2   1
   x3   0   0  -2 
 
b = 
       u1
   x1   2
   x2   0
   x3   2 
 
c = 
       x1  x2  x3
   y1   6  -2  -5 
 
d = 
       u1
   y1   0
 
Continuous-time model.

需要注意,这个结果与上面所说赵明旺《现代控制理论》73页并不一致,这是因为,由于状态变量的选择不唯一,约旦规范型也不唯一。转换为输入输出关系的模型(传递函数)看的更清楚:

>> tf(sys_1-sys_2)
 
Transfer function:
-1.29e-014 s^3 - 7.466e-014 s^2 - 1.448e-013 s - 9.716e-014
-----------------------------------------------------------
   s^6 + 10 s^5 + 41 s^4 + 88 s^3 + 104 s^2 + 64 s + 16

可见二者是等同的(不严格等于0是由于数值误差造成)。

H01-0727欧式异型圆形长条出风口空调封口3d模型下载H01-0727欧式异型圆形长条出风口空调封口3d模型下载


matlab状态空间模块

在命令窗口直接给A,B,C,D赋值

然后双击你在模型中的State-Space模块,就可以设置A,B,C,D了

评论区(0)
友情提示:请文明评论、尊重他(她)人,垃圾评论一律封号!
邮箱
昵称
密码
确认密码
阅读并接受《用户协议》
使用其他方式登录
微信登陆