EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
Matlab 低通Butterworth滤波仿真m文件1 D2 Q; ]$ P1 j g5 [7 \- P. h7 Y( ]
' w: s8 h3 \! w5 v( R7 l
) L/ n5 W; E8 Q. U8 o7 g1 t6 T! s) ]# L5 U0 o7 L# D9 e6 f7 ~6 J
////////////////////////////////////////////////////////////////////// clear; P=bodeoptions;
% p0 z/ |7 s% T: Q! x1 RP.Grid='on';
6 y" `- m2 n2 tP.XLim={[0 800]};
) h! S. U; S; ]. L( ^P.XLimMode={'manual'};
0 Q; w+ ?6 k' f% z0 Q1 |" m1 i- B/ _P.FreqUnits='Hz';
/ l' ?" \- e6 d8 \% ZP.MagUnits='abs';
+ r/ v% k/ R3 S9 AP.FreqScale = 'linear';
0 I' L; e- D7 n% P* sn=2;f0=100;fs=6400;
i" g9 t$ J6 ~% [4 x# v[b,a]=butter(n,f0/(fs/2),'low')
1 A1 O' h- n/ {8 J$ ?8 E, }H=tf(b,a,1/fs);4 u+ T7 w0 T, W6 C$ Z4 R! H$ w4 ~
bode(H,P);grid on; %绘制滤波器伯德图
; X4 b7 r/ D* _; E1 C6 b+ Q7 OTs=0.1; % 分析的时间# J6 R3 p4 a% _( m
t=0:1/fs:Ts;w=100*pi*2; %w=2*pi*f0;
( g5 r6 F+ F0 h, M5 i& Zu=800+100*sin(3*w*t)+500*[(t>=0.05)-(t>=0.05+1/fs)]; %input signal;直流800V+100Hz纹波+冲击: B2 ?5 @( v4 L$ S( i* h
for i=1:1:2
0 Q7 d. Y" K! i y(i)=0;( K. C; W4 {! i3 \) D; z9 c
end
0 ]) E. _( W' v8 e( C8 Yfor i=3:1:Ts*fs+1
& S6 `8 U9 \) [7 U 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);9 s( P q" i6 U. m
end5 M% E' ]1 [8 ^
%figure;plot(t,u,t,y);grid on; % 绘制滤波效果,100Hz衰减95%/ w" V% m' ]) }& U1 n! [
figure;3 _+ c! T, m+ S7 n4 S/ _/ A
plot(t,u);
8 E' o1 p2 E# n+ I3 z! x% _, lgrid on; % 绘制滤波效果,100Hz衰减95%5 \$ e8 H- ~: o8 M5 B
figure;
% C7 z/ B; C5 tplot(t,y);& B# t# j+ n, ]: b, E' Q1 Y! G/ M3 b
grid on; % 绘制滤波效果,100Hz衰减95% ; M0 `; R) M* P; O/ Y' x
/////////////////////////////////////////////////////////////////////////////
4 D4 P$ o% V7 Y. o+ E/ o2 X" C- Z* s) H- O* t$ B6 A
0 G+ _6 l! [' s
|