EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
Matlab 低通Butterworth滤波仿真m文件" M h# J9 ~+ y# F+ T
1 \8 c% X- W% E. G5 e4 ]1 r; B
# o* y8 G- o+ J: U* @) V7 Y5 ?! u6 V+ ? |
////////////////////////////////////////////////////////////////////// clear; P=bodeoptions;' l+ l' P( t' ~0 m* v. x6 ]( ~
P.Grid='on';
) _. u$ ~: L6 H% T+ E5 H+ e: _# O9 i& AP.XLim={[0 800]};; l; X- [. E9 l* Z& [3 n' n' Z) I
P.XLimMode={'manual'};
, D; e, o5 ]* v3 B9 c% V( WP.FreqUnits='Hz';
" k& B3 O# Y; Q# y1 j; BP.MagUnits='abs';
3 F+ x( b3 u5 C$ W+ ?P.FreqScale = 'linear';' {* \5 u% V5 `, q# N) ~8 d* V
n=2;f0=100;fs=6400;# e2 Z" o8 F! j3 n3 W0 `7 M1 d2 _
[b,a]=butter(n,f0/(fs/2),'low')
% U" }8 ^( P2 x# iH=tf(b,a,1/fs);
' w) ?( B, }/ h+ `6 V) sbode(H,P);grid on; %绘制滤波器伯德图+ O" y# Z2 y( d& J' t$ Z. f
Ts=0.1; % 分析的时间0 {3 X. c6 b2 k* i8 f; l; F; _
t=0:1/fs:Ts;w=100*pi*2; %w=2*pi*f0;
, P1 ~, P' v/ zu=800+100*sin(3*w*t)+500*[(t>=0.05)-(t>=0.05+1/fs)]; %input signal;直流800V+100Hz纹波+冲击7 R7 {! {7 N' s* `8 G; H
for i=1:1:2
" T0 d1 n3 x F; p# f% d y(i)=0;* G9 H4 z& `2 O$ ^ d" L" j9 k
end" u& l" g* a2 L- N
for i=3:1:Ts*fs+1
) u6 A/ d3 {* y8 ~" \3 ]: { 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);
7 W6 Z# f" f0 |3 t1 Y, q: F! Qend
! c) J% n. P; D; n& j%figure;plot(t,u,t,y);grid on; % 绘制滤波效果,100Hz衰减95%
. p0 Q5 ]# g! ^8 v# t y3 P! v: {figure;
- d8 x9 h; I: M' {# N( @/ t7 n" xplot(t,u);
; o4 b9 |8 o1 K' K4 t/ j2 g ~grid on; % 绘制滤波效果,100Hz衰减95%. `: z- C. D3 p3 t
figure;7 \6 a/ I6 |4 l _5 f' q
plot(t,y);. C5 |1 o2 W' L
grid on; % 绘制滤波效果,100Hz衰减95%
, R$ K+ x9 q! ?/////////////////////////////////////////////////////////////////////////////9 {% H# P0 i! m0 S! U
' C3 l7 e5 d8 U( |" ~% U
3 s( f5 m4 G0 J |