Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как правильно расчитать выход амплитудного детектора?
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
Alex65111
clear all
N=2^16;
L=8;
fd=1000;

sko=65;
sr=5;

t=0:1/fd:(N-1)*1/fd;


noise=sr+(sko*(randn(1,N)+j*randn(1,N)));
smes=noise;

smes_s=reshape(smes,N/L,L);
sp1=(abs(fft(smes_s)))/(N/L);
sp=mean(sp1');

sp_noise=median(sp(1:end));
P_sp_noise=sqrt((N/L)*sp_noise^2)/1.25

P_vr_noise=std((noise))/sqrt(2)

Fpr=10;
Fpod=12;
[L1,f,a] = remezord([Fpr Fpod],[1 0],[0.1 0.000001],fd);
h1 = remez(L1, f , a);

fop=155/fd;
opora=exp(sqrt(-1)*2*pi*fop*(1:length(h1)));
Hn=h1.*opora;

figure(1)
plot(sp)
hold on
plot(abs(fft(Hn,length(sp))),'r')
hold off


D=round(fd/(2*Fpod))-1;
n_f=upfirdn(smes,Hn,1,D);

P_vr_noise_f=std(abs(n_f))

figure(2)
hold on
plot(abs(n_f),'r')
plot(abs(noise(1:length(n_f))),'g')
hold off



P_sp_noise - уровень шума, рассчитанная в спектральной области
P_vr_noise - уровень шума, рассчитанного во временной области
P_vr_noise_f - уровень шума после фильтрации и децимации и амплитудного детектора.

P_sp_noise и P_vr_noise вроде показывают одно и тоже значение, которое соответствует модельной величине sko. Но для того, чтобы соответствие получилось, пришлось в P_vr_noise ввести поправочный коэффициент 1.25. Вопрос - откуда он берется?
После фильтрации, децимации и амплитудного детектирования получается P_vr_noise_f, но ее никак не получается пересчитать с учетом фильтра, децимации и детектирования к исходному P_vr_noise. Вопрос как это можно сделать (или наоборот - зная исходный P_vr_noise пересчитать, что получиться после фльтрации, децимации и детектирования)?
Alex65111
Разобрался, вопрос снят
TSerg
Да ничего, никто не в обиде smile.gif
Задушевный разговор с самим с собой всегда продуктивнее лазанья по форумам.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.