16+
Четверг
21 сентября
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Схемы, платы, компоненты

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Хаос  (17.07.2017 23:13) , в ответ на Там будут две комплексные компоненты гармоники: I и Q. Но теперь, когда вы любезно сообщили нам, что все частоты фиксированы, и что частота несущей кратна частоте огибающей, это все уже не имеет значения. Вычисляйте коэффициенты Фурье для автор: Хаос
Вот, собсно, алгоритм вычисления обеих амплитуд несущей (немодулированного сигнала) и огибающей через вычисление четырех коэффициентов ряда Фурье: 
clear all;
ahi = 10.0;                % Амплитуда немодулированного сигнала [В]
alo = 1.0;                 % Амплитуда сигнала модуляции [В]
fhi = 2.0e5;               % Частота несущей [Гц]
flo = 2.0e2;               % Частота низкочастотной огибающей [Гц]
whi = 2*pi*fhi;            % Частота несущей [Рад/с]
wlo = 2*pi*flo;            % Частота низкочастотной огибающей [Рад/с]
phi = pi/5;                % Фаза несущей [Рад] - Произвольная величина!
plo = pi/7;                % Фаза низкочастотной огибающей [Рад] - Произвольная величина!
tp = 1.0/flo;              % Длительность импульса [сек]
fs = fhi*4;                % Частота дискретизации [Гц]
dt = 1.0/fs;               % Период дискретизации [сек]
ns = tp/dt;                % Общее число семплов в импульсе ГКЧ
for i = 1:ns
S(i) = ahi*cos(whi*(i-1)*dt)*(1.0+alo*sin(wlo*(i-1)*dt));
end;
a_hi = 0.0;
b_hi = 0.0;
for i = 1:ns
a_hi = a_hi + S(i)*cos(whi*(i-1)*dt);
b_hi = b_hi + S(i)*sin(whi*(i-1)*dt);
end;
ampl_hi = 2.0*sqrt(a_hi^2+b_hi^2)/ns;             % Оценка амплитуды немодулированного сигнала [В]
a_lo = 0.0;
b_lo = 0.0;
for i = 1:ns
a_lo = a_lo + S(i)*cos((whi-wlo)*(i-1)*dt);
b_lo = b_lo + S(i)*sin((whi-wlo)*(i-1)*dt);
end;
ampl_lo = 4.0*sqrt(a_lo^2+b_lo^2)/(ampl_hi*ns);   % Оценка амплитуды сигнала модуляции [В]
err_hi = ampl_hi - ahi
err_lo = ampl_lo - alo
Для вычисления коэффициентов используются четыре регистра: a_hi; b_hi; a_lo; b_lo; Коэффициенты cos(whi*(i-1)*dt) и sin(whi*(i-1)*dt) можно в ПЗУ не хранить, так как они равны: +1,-1 и 0. enjoy! :)
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7526 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVII