Matlab扫频法求系统传递函数
创作时间:
作者:
@小白创作中心
Matlab扫频法求系统传递函数
引用
CSDN
1.
https://blog.csdn.net/wanrenqi/article/details/123714046
在控制系统和信号处理领域,传递函数是描述系统输入输出关系的重要数学工具。对于一些复杂的系统,直接通过建模方法求解传递函数可能较为困难。此时,扫频法(Sweep Frequency Method)提供了一种通过实验测量来获取系统传递函数的有效途径。本文将以一阶RC滤波电路为例,详细介绍如何使用Matlab的Simulink和相关工具箱来实现扫频法求解传递函数的过程。
一、在Simulink中建立一阶RC低通滤波电路模型
首先,在Simulink中搭建一阶RC低通滤波电路模型。具体电路结构如下:
二、设置系统的输入和输出
如上图所示,将受控电压源的输入设置为系统输入,电压表的输出设置为系统输出。
三、使用Model Linearizer进行扫频设置
- 打开Model Linearizer工具箱,选择ESTIMATION模式。
- 设置输入信号为正弦输入。
- 对输入正弦信号的参数进行设置:
- 输入正弦的单位设置为HZ。
- 扫频范围设置为1HZ至1000HZ。
- 扫频点数设置为20个点。
- 将所有点的参数设置一致,振幅设置为受控电压源输入的1/10。
四、获取伯德图并估算传递函数
- 点击Bode按钮,根据扫描点绘制伯德图。
- 在Linear Analysis Workspace中会生成两个变量。
- 将生成的变量estsys1拖入MATLAB Workspace。
- 在MATLAB命令行中输入以下命令来估算传递函数:
其中,n表示系统阶数,这里n为1。sys = tfest(estsys1, 1)
五、结果分析
通过建模得到的传递函数为:
$$
sys = \frac{212.7}{s + 212.7}
$$
估算得到的传递函数与建模结果基本一致,验证了扫频法的有效性。
六、使用命名方式估算伯德图
除了使用Model Linearizer工具箱外,还可以通过命令行方式获取更详细的信息。以下是具体的MATLAB代码示例:
mdl = 'RC_Filter';
open_system(mdl); % 打开模型 RC_Filter
%%%%%%%%%% 收集频率响应的数据
ios = [... % 指定频率响应的输入和输出点
linio([mdl,'/volin'],1,'input'); ...
linio([mdl,'/volout'],1,'output')];
f = logspace(log10(10),log10(20000),10);
in = frest.Sinestream('Frequency',f,'Amplitude',1); % 使用frest.Sinestream命令来定义要在输入点注入的正弦曲线的频率范围,离散的点数和幅值
[sysData,simlog] = frestimate(mdl,ios,in); % 利用frestimate计算频率响应曲线上离散的点
bopt = bodeoptions;
bopt.Grid = 'on';
bopt.PhaseMatching = 'on';
figure, bode(sysData,'*r',bopt)
% 利用frest.simView命令在一个图形界面中查看注入信号、测量输出和频率响应
frest.simView(simlog,in,sysData);
% 估算传递函数
sysA = tfest(sysData,1) % 估算一个1阶的传递函数
figure, bode(sysData,'r*',sysA,bopt) % 画出这个传函的伯德图
通过上述步骤,可以更详细地分析系统的频率响应特性,并估算出准确的传递函数。
参考资料
热门推荐
怎样在银行办理定期存款的利率查询?
OC渲染太慢怎么办?场景优化教程来了
虚函数效率真的低吗?
请假事由一般怎么写
外文数据库检索如何翻译
如何查找接口的API
词汇精选:companion的用法和辨析
复旦大学面向海外中国籍留学生开放直博通道:人才战略与教育公平的平衡之道
美国报税时间全解析:关键日期、延期申请与常见问题解答
农村盖房如何选地基?这7个关键因素要牢记!
个税零申报的流程和注意事项是什么?这些流程如何简化申报过程?
八种可以食用的树叶,你吃过几种?
主升浪启动前的特征与K线形态分析
睡觉打呼噜怎么办?有效缓解方法有哪些?
邮件消息推送服务如何确保信息的实时性和准确性?
骨科常用药有哪些?药师告诉你
AI写作的原创性探讨:深度解析原创标准与AI创作界定
血氧饱和度越高越好?一味追高、盲目吸氧,警惕呼吸衰竭风险
点亮青少年科技创新梦 近100件科创作品亮相渝中区第39届青少年科技创新大赛
玩航模,你要懂电池!
【港車北上預約懶人包】申請流程、申請資格、費用、驗車、保險一覽!
从锡林浩特乘坐动车组列车进京,你期待几个小时到达?
汽车质量工程师的职责和技能介绍
一直做梦醒来感觉很累怎么办
Excel表内内容核对的多种方法与工具详解
玉米面窝窝头的制作方法,这样做松软得像枕头一样
怎样蒸窝头松软又好吃(咋样蒸窝头窍门)
带父母做体检有哪些项目
科普|你会吸氧吗?
西安霸陵探秘:历史、文化与旅游全攻略 🏛️