EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
Matlab 低通Butterworth滤波仿真m文件+ j+ l8 P a3 }5 b
1 p1 S& B8 ]) ~' \* h
w5 C, v0 G" C J& [! {
* m: O Z+ d# \: }6 G////////////////////////////////////////////////////////////////////// clear; P=bodeoptions;
7 u/ i& ~* h+ wP.Grid='on';, I9 z1 T# F9 w9 H0 @
P.XLim={[0 800]};; c$ d6 ?* }2 [( A' l+ k. b2 m
P.XLimMode={'manual'};8 M9 U/ s; q' ]7 V' b
P.FreqUnits='Hz';' `) X% x9 p' r4 r' M% {& H- s
P.MagUnits='abs';8 h* `$ E0 B* W
P.FreqScale = 'linear';* r/ \( G% C' b4 H( N" e# v
n=2;f0=100;fs=6400;
" B% U" R3 n- Z" L5 U[b,a]=butter(n,f0/(fs/2),'low')
2 T3 C* j6 W+ G) QH=tf(b,a,1/fs);" |( M8 f1 ?. A; ]9 p+ t
bode(H,P);grid on; %绘制滤波器伯德图- n) _7 e) H. G6 |
Ts=0.1; % 分析的时间
5 L( L+ K5 @$ r/ d1 b% Zt=0:1/fs:Ts;w=100*pi*2; %w=2*pi*f0; * A' [3 ]& b6 `3 L- g
u=800+100*sin(3*w*t)+500*[(t>=0.05)-(t>=0.05+1/fs)]; %input signal;直流800V+100Hz纹波+冲击
* \; ]" X, s2 e( Ofor i=1:1:2
8 @: F" X) ^, U6 u; N y(i)=0;, ~8 ~7 g# K6 L% |0 a; w3 o
end& H) c. r& a: F4 E
for i=3:1:Ts*fs+1/ S% L1 l# M$ ^' m9 \$ S
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 b; [; V/ x" A8 Y; Mend
5 e- [2 K2 g% O) S( W G2 w% O+ u%figure;plot(t,u,t,y);grid on; % 绘制滤波效果,100Hz衰减95%: C9 ^4 l$ E% x8 \( \- n: {. z
figure;. }! ]* `% l( R# ?0 ?
plot(t,u);
1 }" A, @5 i: f" h7 f" L+ Ngrid on; % 绘制滤波效果,100Hz衰减95%
8 i6 p) S3 U4 afigure;# W4 c: D9 l" g8 A
plot(t,y); Z W% Y2 {8 Y% v; k
grid on; % 绘制滤波效果,100Hz衰减95% 9 \ p" ` L* n& N; E
/////////////////////////////////////////////////////////////////////////////3 I0 C. K2 s6 j
( {# q# l# s4 T* c% u! l
/ F" P3 ]! ^# G' ]! u |