专栏
标签
如何绘制离散时间传递系统?
技术分享
发布于 2025-08-06 16:33:03
查看 1过去300天

问题现象

Q1:如何直接利用Z变换得到的系数进行绘制?

Q2:是否有Z域下转为S域的函数?

Q3:是否有时域到拉普拉斯的函数?

解决方法

Q1:
1.在Z域下的利用tf函数,可以给定采样时问后创建对应的离散系统:例如指定0.1s的采样时问,代码如下:

using TyControlSystems

num2=[2,e]

den2=[4,0,3,-1]

Ts=0.1

sys =tf(num2,den2,Ts)

运行代码后,生成对应的离散系统:
image.png
2.利用bode函数绘制上述离散时间传递系统的伯德图:
代码:

bode(sys)

绘制结果如下:
image.png
Q2:

离散域转连续域可以使用d2c函数:

利用tf函数生成离散系统,代码如下:

using TyControlsystems

H=tf([1,-1],[1,1,0.3],0.1)

运行后结果如下,已经生成Z域下的离散系统:
image.png
利用d2c函数转换到连续域,代码如下:

Hc =d2c(H)

运行代码,结果如下,生成了连续域的系统:
image.png
Q3:
如果是用状态空间模型表示的,可以直接用tf函数进行时域到拉普拉斯的变换;关于tf函数的相关信息可以查帮助文档:
image.png
例如生成以下状态空间模型所对应的连续时间传递函数模型:
image.png
代码如下:

using TyControlSystems

A=[-2 -1;1 -2]

B=[1 1;2 -1]

C=[1 0]

D=[0 1]

Ltisys=ss(A,B,C,D);

sys= tf(LtiSys)

运行上述代码,结果如下,实现了从时域到拉普拉斯的变换:
image.png

所属专栏:Syslab基础平台
产品信息:Syslab科学计算环境
科学计算

全部回答

暂无数据
暂无数据
用户
和原帖交流更多问题细节吧,去
我要发帖 我要发帖
资料中心 资料中心
查看更多>
热门帖子 热门帖子
主要贡献者 主要贡献者
过去7天