EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
Matlab 低通Butterworth滤波仿真m文件; D; _# X& }" }) S) g) ~
. c* H, @0 C3 E, _4 {
! `6 a5 B+ n0 s# l$ O# L( U p, s7 C
////////////////////////////////////////////////////////////////////// clear; P=bodeoptions;
3 ]1 H9 _& X+ t, \/ e* a/ {P.Grid='on';7 b! y* k2 a, G7 u; L
P.XLim={[0 800]};
+ X/ _; A5 w4 U% [7 g) PP.XLimMode={'manual'};
1 U3 b+ P2 B7 }# f2 H1 l: D6 NP.FreqUnits='Hz';$ g$ M0 I3 y1 F; [6 U7 c2 M
P.MagUnits='abs';
' n2 ?% l' S" KP.FreqScale = 'linear';4 y: _- D9 l( ?' [- q6 C9 l% l; {
n=2;f0=100;fs=6400; B2 C4 a3 Z8 d! @: u9 g" K2 o
[b,a]=butter(n,f0/(fs/2),'low')
& c' I) J' u0 f; o7 `3 fH=tf(b,a,1/fs);6 B3 s2 u$ d+ a4 G" F4 }
bode(H,P);grid on; %绘制滤波器伯德图* y3 ?& M. u( [4 \# @
Ts=0.1; % 分析的时间
( C# p G5 F$ j& Q: vt=0:1/fs:Ts;w=100*pi*2; %w=2*pi*f0;
6 P) k2 ^! `2 S. }" T* h' t: su=800+100*sin(3*w*t)+500*[(t>=0.05)-(t>=0.05+1/fs)]; %input signal;直流800V+100Hz纹波+冲击
8 b/ C/ P* e1 W8 ~1 B) ]for i=1:1:2
& y& e+ z3 ]! j. _" K& q* e7 l: y y(i)=0;
% {0 D. A) l. B0 mend- y) g% T& c9 t$ b$ c
for i=3:1:Ts*fs+1
5 l `! z- p7 _' D/ ]/ U: O% r5 C 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);- Y7 G5 S# E. Q0 \" U% V6 ~$ m
end/ V+ U- D$ q0 `7 _8 M; }& \
%figure;plot(t,u,t,y);grid on; % 绘制滤波效果,100Hz衰减95%; l+ z+ a2 g/ z8 `/ @; V3 C, C1 _) {" B
figure;
. ?* r/ t# X" Q/ T) Y& }0 {plot(t,u); 3 S2 C3 }( x M6 w
grid on; % 绘制滤波效果,100Hz衰减95%9 ]' O0 Q" B, a
figure;
, Z I$ {" k) J) iplot(t,y);4 u2 X% V( M9 G: W
grid on; % 绘制滤波效果,100Hz衰减95%
M. z0 h5 {! ]5 s2 H/////////////////////////////////////////////////////////////////////////////
3 b* C5 t0 q* c1 d; r5 j8 z5 ~' Z
8 h% ?7 U v$ V, C5 N
|