1 / 14
文档名称:

智能电表算法分析1.docx

格式:docx   大小:819KB   页数:14页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

智能电表算法分析1.docx

上传人:xxj16588 2017/12/19 文件大小:819 KB

下载得到文件列表

智能电表算法分析1.docx

文档介绍

文档介绍:智能电表算法分析
Σ-Δ ADC结构
模拟调制模块功能说明
模拟输入正弦波,经过220/630的增益调整,输给减法器模块的被减数,减法器的输出积分延时模块。一路经过1/3的增益调整作为加法器的一路输入,另一路经过1/4的增益调整后积分延时,然后经过2/3的增益调整作为加法器的另外一路输入。加法器的输出经过sign模块,如果大于0输出为1,如果小于0输出为-1,如果等于0输出为0。Sign模块的输出疏密波经过44/630增益调整反馈给减法器的减数输入。Sign模块的输出疏密波输出给CIC模块。
数字解调模块(CIC模块)功能说明
模拟模块输出的疏密波(1、-1)经过三次积分延时处理,然后经过1/64抽样处理,
经过三次微分延时处理,然后去掉多余的符号位,低位补5位的0,最后输出24位的带符号位的ADC数字信号。matlab仿真分析中发现CIC输出的19位信号中最低位常为0。
Σ-Δ的matlab仿真程序
模拟调制模块matlab仿真程序
x1 = * sin( 2 * pi * f * n * t + );
for i = 1:1:numb

if(i==1) x2(i) = x1(i)*220/630 + 0;
else x2(i) = x1(i)*220/630 -sign( x2d(i-1)/3 + x3d(i-1)*2/3 )*44/630;
end

if(i==1) x2d(i) = 0;
else x2d(i) = x2d(i-1) + x2(i);
end

if(i==1) x3d(i) = 0;
else x3d(i) = x3d(i-1) + x2d(i-1)/4;
end

if(i==1) x4(i) = 0;
else x4(i) = x2d(i-1)/3 + x3d(i-1)*2/3;
end

if(i==1) x5(i) = 0;
else x5(i) = sign( x2d(i-1)/3 + x3d(i-1)*2/3 );
end
end
数字解调模块(CIC)matlab仿真程序
for i=1:1:numb
if ( i==1) add_1(i) = 0;
else add_1(i) = add_1(i-1) + in(i);
end
end

for i=1:1:numb
if ( i==1) add_2(i) = 0;
else add_2(i) = add_2(i-1) + add_1(i-1);
end
end

for i=1:1:numb
if ( i==1) add_3(i) = 0;
else add_3(i) = add_3(i-1) + add_2(i-1);
end
end

for i=1:1:numb
if ( i==1) add_3_reg(i) = 0;
else if (wcnt_00(i)==1) add_3_reg(i) = add_3(i-1);
else add_3_reg(i) = add_3_reg(i-1);
end
end
end

for i=1:1:numb

if (i==1) sub_00(i) = 0;
else if (wcnt_00(i)==1) sub_00(i) = add_3(i-1) - add_3_reg(i-1);
else sub_00(i) = sub_00(i-1);
end
end

if (i==1) sub_00_reg(i) = 0;
else if (wcnt_00(i)==1) sub_00_reg(i) = sub_00(i-1);
else sub_00_reg(i) = sub_00_reg(i-1);
end
end

if (i==1) sub_01(i) = 0;
else if (wcnt_01(i)==1) sub_01(i) = sub_00(i) - sub_00_reg(i);
else sub_01(i) = sub_01(i-1);
end
end

if (i==1) sub_01_reg(i) = 0;
else if (wcnt_00(i)==1) sub_01_reg(i) = sub_01(i-1);
else sub_01_reg(i) = sub_01_reg(i-1);
end
end

if (i==1)