% Matlab控制系统的建模及模型间的转换
%内容包含:
% 1.由 系数 建立 传递函数
% 2.由 零极点 建立 传递函数
% 3.由 传递函数 得到 零极点方程系数
% 4.把 传递函数 转化为 零极点模型
% 5.结构框图间的运算
%
%---------------------------------------------------------------%
%传递函数的模型表示
num = [1 5] % 分子多项式 降幂 系数向量
den = [1 2 3 4 5] % 分母多项式 降幂 系数向量
G = tf(num, den) % tf()函数 用于 构造传递函数对象
%---------------------------------------------------------------%
%零极点模型表示
num = [1 5]
z = roots(num) % r = roots(c) 返回多项式的根
den = [1 2 3 4 5]
p = roots(den)
zpk(z, p, 1) % Specify zero-pole-gain models 由零极点增益得到传递函数
%---------------------------------------------------------------%
%由 传递函数 得到 部分分式的 极点 和 系数
num = [1 5]
den = [1 2 3 4 5]
[r q k] = residue(num, den)
%---------------------------------------------------------------%
%连续系统系统模型之间的转换
num = [1 -0.5 2]
den = [1 0.4 1]
[z, p, k] = tf2zp(num, den) %把传递函数转换为零极点函数
%---------------------------------------------------------------%
%传递函数的 特征根及零极点函图
p = [1,3,0,4]
r = roots(p) %由方程求根
p = poly(r) %由根求多项式系数
%结构框图的模型表示
G1 = tf(1, [1, 2, 1]) %定义传递函数
G2 = tf(1, [1, 1])
G3 = tf(1, [2, 1])
G4 = tf(1, [1, 0])
G12 = G1 + G2 % + 并联结构
G34 = G3 * G4 % * 串联结构
G = feedback(G12, G34, -1) % feedback 反馈结构
%练习1:
top = [4, 8] %分子
bottom = [1, 6, 5, 0] %分母
G = tf(top, bottom) %构造系统传递函数
[r q k] = tf2zp(num, den) %得到零极点参数
zpk(r, q, k) %构造零极点方程
%练习2:
top = [6, 11, 6, 10] %分子
bottom = [1, 2, 3, 1, 1] %分母
G = tf(top, bottom) %构造系统传递函数
[r q k] = tf2zp(num, den) %得到零极点参数
zpk(r, q, k) %构造零极点方程
[r q k] = residue(num, den) %得到部分分式的所有系数
%练习3:
r1 = roots([1, 6, 5, 0])
r2 = roots([1, 2, 3, 1, 1])
%练习4:
top = [1]
bottom = [6, 5]
G1 = tf(top, bottom)
top = [3]
bottom = [5, 1]
G2 = tf(top, bottom)
G3 = G1 * G2
G4 = G1 + G2
G5 = feedback(G1, G2, -1)
Matlab控制系统的建模及模型间的转换
最新推荐文章于 2025-07-18 09:46:19 发布