微机继电保护matlab算法仿真(有源程序)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微
机
继
电
保
护
算
法
仿
真
电控学院
一.两点乘积算法仿真(1)m atlab中编写的程序
N=12;
t=(0:0.02/N:0.02)';
m=size(t);
y=sin(2*pi*50*t);
y1=[zeros(N/4,1);y(1:m-N/4)];
ym=sqrt(y.^2+y1.^2);
subplot(3,2,1)
plot(t,y,'r.',t,y1,'xb');
legend('y(k)','y(k-T/4)');
title('两点乘积算法N=12');
subplot(3,2,2)
hold on;
plot(t,ym,'-r');
axis([0,0.02,0,1.2]);
xlabel('t/s');
ylabel('ym');
title('两点乘积算法算的有效值N=12'); text(0.01,0.6,'N=12');
N=16;
t=(0:0.02/N:0.02)';
m=size(t);
y=sin(2*pi*50*t);
y1=[zeros(N/4,1);y(1:m-N/4)];
ym=sqrt(y.^2+y1.^2);
subplot(3,2,3)
plot(t,y,'r.',t,y1,'xb');
legend('y(k)','y(k-T/4)'); title('两点乘积算法N=16');
subplot(3,2,4)
hold on;
plot(t,ym,'-r');
axis([0,0.02,0,1.2]);
xlabel('t/s');
ylabel('ym');
title('两点乘积算法算的有效值N=16'); text(0.01,0.6,'N=16');
N=24;
t=(0:0.02/N:0.02)';
m=size(t);
y=sin(2*pi*50*t);
y1=[zeros(N/4,1);y(1:m-N/4)];
ym=sqrt(y.^2+y1.^2);
subplot(3,2,5)
plot(t,y,'r.',t,y1,'xb');
legend('y(k)','y(k-T/4)');
title('两点乘积算法N=24');
subplot(3,2,6)
hold on;
plot(t,ym,'-r');
title('两点乘积算法算的有效值N=24'); axis([0,0.02,0,1.2]);
xlabel('t/s');
ylabel('ym');
text(0.01,0.6,'N=24');
(2)仿真出的波形
(3)流程图
输入信号
y=sin(2*pi*50*t)
m=size(t);得到离散的两点y1=[zeros(N/4,1);y(1:m-N/4)]
输出ym=sqrt(y.^2+y1.^2) N=12,即采样频率
f=600HZ,原始信号离
散化
二.傅里叶算法仿真(1)matlab中编写的程序
T=0.02;
t1=0.02;
N=12;
Ts=T/N;
t=0:Ts:4*T;
y=(exp(-t/t1)-cos(2*pi*50*t));
subplot(3,2,1);
plot(t,y,'.r');
xlabel('t/ms');
ylabel('y(t)');
title('输入信号N=12');
a=1;
i=1:N;
bs=sin(2*pi*i/N);
bc=cos(2*pi*i/N);
ys=filter(bs,a,y);
yc=filter(bc,a,y);
ym=2*abs(complex(ys,yc))/N;
subplot(3,2,2);
hold on
plot(t,ym)
xlabel('t/ms');
ylabel('ym');
title('傅里叶算法计算的有效值N=12'); hold on
T=0.02;
t1=0.02;
N=16;
Ts=T/N;
t=0:Ts:4*T;
y=(exp(-t/t1)-cos(2*pi*50*t));
subplot(3,2,3);
plot(t,y,'.r');xlabel('t/ms');
ylabel('y(t)');
title('输入信号N=16');
a=1; i=1:N;
bs=sin(2*pi*i/N);
bc=cos(2*pi*i/N);
ys=filter(bs,a,y);
yc=filter(bc,a,y);
ym=2*abs(complex(ys,yc))/N;
subplot(3,2,4);
plot(t,ym)
xlabel('t/ms');
ylabel('ym');
title('傅里叶算法计算的有效值N=16'); T=0.02;
t1=0.02;
hold on
N=24;
Ts=T/N;
t=0:Ts:4*T;
y=(exp(-t/t1)-cos(2*pi*50*t));
subplot(3,2,5);
plot(t,y,'.r');
xlabel('t/ms');
ylabel('y(t)');
title('输入信号N=24');
a=1;
i=1:N;
bs=sin(2*pi*i/N);
bc=cos(2*pi*i/N);
ys=filter(bs,a,y);
yc=filter(bc,a,y);
ym=2*abs(complex(ys,yc))/N;
subplot(3,2,6);
plot(t,ym)
xlabel('t/ms');
ylabel('ym');
title('傅里叶算法计算的有效值N=24');