matlab仿真低通滤波,Matlab 低通Butterworth滤波仿真m文件

Matlab 低通Butterworth滤波仿真m文件

//

clear;

P=bodeoptions;

P.Grid='on';

P.XLim={[0 800]};

P.XLimMode={'manual'};

P.FreqUnits='Hz';

P.MagUnits='abs';

P.FreqScale = 'linear';

n=2;f0=100;fs=6400;

[b,a]=butter(n,f0/(fs/2),'low')

H=tf(b,a,1/fs);

bode(H,P);grid on;     %绘制滤波器伯德图

Ts=0.1;          % 分析的时间

t=0:1/fs:Ts;w=100*pi*2;     %w=2*pi*f0;

u=800+100*sin(3*w*t)+500*[(t>=0.05)-(t>=0.05+1/fs)];      %input signal;直流800V+100Hz纹波+冲击

for i=1:1:2

y(i)=0;

end

for i=3:1:Ts*fs+1

y(i)=-1*(a(2)*y(i-1)+a(3)*y(i-2))+b(1)*u(i)+b(2)*u(i-1)+b(3)*u(i-2);

end

%figure;plot(t,u,t,y);grid on;   % 绘制滤波效果,100Hz衰减95%

figure;

plot(t,u);

grid on;   % 绘制滤波效果,100Hz衰减95%

figure;

plot(t,y);

grid on;   % 绘制滤波效果,100Hz衰减95%

/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值