我是靠谱客的博主 可耐冬日,最近开发中收集的这篇文章主要介绍MATLAB绘制开环单位阶跃响应,利用matlab由开环传递函数求闭环传递函数并求其单位冲击和阶跃响应...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

41528d3028836879cd698677c3999917.gif利用matlab由开环传递函数求闭环传递函数并求其单位冲击和阶跃响应

利用matlab 由开环传递函数求闭环传递函数并求其单位冲击和阶跃响应 例:设有一个系统的开环传递函数如下函数,并绘制输出阶跃响应曲线和脉冲响应曲线解: 编程(见:workCT_tchresp_2_20110522 ) clear all; close all; %%%%%%%%%%%%%% a0 = [0 0 0 0 0.8 ]; % a0: 开环传递函数分子多项式系数 b1 = [1 0 ] ; % s b2 = [0.3 1 ] ; % b3 = [0.5 0.7 1] ; % (0.5 s2 + 0.7s + 1) b0 = conv(b1,conv(b2,b3)); % b0: 开环传递函数分母多项式系数 %%%% 闭环传递函数 aa = a0 ; % aa:闭环传递函数分子多项式系数 bb = b0 + a0; % bb:闭环传递函数分子多项式系数 disp ( System Closed Loop Transfer Function is : ) aa bb %%%% 计算:阶跃响应 t = 0 : 0.1 : 20 y = step (aa, bb, t); % 阶跃响应 %%%% 绘制:阶跃响应 figure(1) plot(t ,y) ; title( 阶跃响应 ); % 标题:阶跃响应 xlabel( 时间 /s ); % 横坐标 ylabel( 幅值 ); % 纵坐标 grid; % Íø¸ñ %%%% 计算:脉冲响应 figure(2) yy = impulse (aa, bb, t); % 标题:脉冲响应plot(t, yy); title( 脉冲响应 ); xlabel( 时间/s ); ylabel( 幅值 ); grid; % 网格 %%%% 绘制:脉冲响应 wt = logspace (-1,1); % 对数空间(¨0.1, 10) [mag,phase] = bode (a0 ,b0 ,wt); % 计算:Bode 中的幅值和相位 [ Gm,Pm,Wcg,Wcm] = margin(a0,b0); % 计算:稳定裕度 disp ( System Gain Margin and its associated frequency are : ); Gm % 模值稳定裕度 Wcg % 幅 值穿越频率,剪切 频率,1/s disp ( System Phase Margin and its associated frequency are : ); Pm % 相位稳定裕度 Wcm % -π 相位穿越频率,1/s %%%% 绘制:Bode 图 figure(3) Subplot (211); % 对数幅值-频率图 amp = 20*log10(mag); % 20*log(mag),dB semilogx(wt,amp); title ( 对数幅值-频率图 ); xlabel ( 频率 / rad ); ylabel ( 幅值 / dB ); grid; subplot (212); % 相位-频率图 semilogx(wt,phase); title ( 相位-频率图 ); xlabel ( 频率/ rad ); ylabel ( 相位/ degree ); grid;运行该程序可得系统的单位阶跃和脉冲响应曲线如下,图 1 系统的单位阶跃响应曲线图 2 系统的脉冲响应曲线系统的Bode图如下,图3 系统的Bode图

最后

以上就是可耐冬日为你收集整理的MATLAB绘制开环单位阶跃响应,利用matlab由开环传递函数求闭环传递函数并求其单位冲击和阶跃响应...的全部内容,希望文章能够帮你解决MATLAB绘制开环单位阶跃响应,利用matlab由开环传递函数求闭环传递函数并求其单位冲击和阶跃响应...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部