ЛР 3 вариант 14 (ЦОС) отчёт - Генерация и исследование ЛЧМ-сигнала. Сжатие ЛЧМ-сигнала в частотной области
.docxОТЧЁТ К ЛАБОРАТОРНОЙ РАБОТЕ №3
по дисциплине «Цифровая обработка сигналов»
Генерация и исследование ЛЧМ-сигнала. Сжатие ЛЧМ-сигнала в частотной области.
2020
Выполнение работы: (номер по списку - 14)
Дано:
var = 14;
f_0 = 180 + var; % несущая частота
delta_f = 25 + var; %полоса сигнала
f_s = 800 + var; %частота дискретизации
N_i = 400 + var; % дляительность сигнала в отсчётах
f_dp = 0; % частота Доплера
phi_0 = 2*pi/var; % начальная фаза
N = 1024;
var_2 = mod(14, 4); % остаток от деления = 2, => ЛЧМ pass сигнал по центру
Синтезировать ЛЧМ сигнал с заданными параметрами. Изобразить Re и Im составляющие сгенерированного ЛЧМ-сигнала на общем поле графиков с помощью функции subplot с параметрами ({1, 3}, 2, 4).
Функция для рисования графиков (решили опять сделать отдельную функцию, чтобы потом каждый раз её не расписывать).
function d = my_plot_LR3(Name_1, A, Name_2, B, Name_3, C, Name_4, D, Name_5, E, Name_6, F, Name_7, G, Name_8, H)
name_1 = Name_1; a = A;
name_2 = Name_2; b = B;
name_3 = Name_3; c = C;
name_4 = Name_4; d = D;
name_5 = Name_5; e = E;
name_6 = Name_6; f = F;
name_7 = Name_7; g = G;
name_8 = Name_8; h = H;
figure
subplot(4,2,1); plot(a); title (name_1); hold on; grid on;
subplot(4,2,3); plot(b); title (name_2); hold on; grid on;
subplot(4,2,5); plot(c); title (name_3); hold on; grid on;
subplot(4,2,7); plot(d); title (name_4); hold on; grid on;
subplot(4,2,2); plot(e); title (name_5); hold on; grid on;
subplot(4,2,4); plot(f); title (name_6); hold on; grid on;
subplot(4,2,6); plot(g); title (name_7); hold on; grid on;
subplot(4,2,8); plot(h); title (name_8); hold on; grid on;
end
Далее сам код, откуда потом вызываем нашу функцию:
T = 1/fs;
ti = N_i*T;
sg = @(t) cos(2*pi*(f_0*t+1/2*delta_f/ti*t.^2+phi_0/(pi*2))); % сигнал
signal = [sg(0:T:ti/2), zeros(1,N-N_i+1), sg(-ti/2:T:-T)];
Re = real(signal); % действительный спектр
Im = imag(signal); % мнимый спектр
my_plot_LR3 ('Действительный спектр сигнала', Re, 'Мнимый спектр сигнала', Im, 'Действительный спектр импульсной характеристики', Re_imp, 'Мнимый спектр импульсной характеристики', Im_imp, 'Амплитудный спектр сигнала', dpf, 'Фазовый спектр сигнала', phase_spec, 'Амплитудный спектр импульсной характеристики', dpf_imp, 'Фазовый спектр импульсной характеристики', phase_spec_imp)
Рисунок 1. Re и Im спектры сигнала
Синтезировать импульсную характеристику с заданными в п.1 параметрами. Изобразить Re и Im составляющие сгенерированной импульсной характеристики на общем поле графиков с помощью функции subplot с параметрами ({5, 7}, 2, 4).
imp_resp = @(t) cos(2*pi*(f_0*t-1/2*delta_f/ti*t.^2)); % импульсная характеристика
impulse_resp = [imp_resp(0:T:ti/2), zeros(1,N-N_i+1), imp_resp(-ti/2:T:-T)];
Re_imp = real(impulse_resp); % действительный спектр импульсной характеристики
Im_imp = imag(impulse_resp); % мнимый спектр импульсной характеристики
my_plot_LR3 ('Действительный спектр сигнала', Re, 'Мнимый спектр сигнала', Im, 'Действительный спектр импульсной характеристики', Re_imp, 'Мнимый спектр импульсной характеристики', Im_imp, 'Амплитудный спектр сигнала', dpf, 'Фазовый спектр сигнала', phase_spec, 'Амплитудный спектр импульсной характеристики', dpf_imp, 'Фазовый спектр импульсной характеристики', phase_spec_imp)
Рисунок 2. Re и Im спектры импульсной характеристики
Вычислить БПФ ЛЧМ сигнала и импульсной характеристики. Изобразить амплитудный и фазовый спектры ЛЧМ сигнала и импульсной характеристики на общем поле графиков с помощью функции subplot с параметрами ({2, 4, 6, 8}, 2, 4).
dpf = abs(fft(signal)); % амплитудный спектр сигнала
dpf_imp = abs(fft(impulse_resp)); % амплитудный спектр импульсной характеристики
phase_spec = angle(fft(signal)); % фазовый спектр сигнала
phase_spec_imp = angle(fft(impulse_resp)); % фазовый спектр импульсной характеристики
my_plot_LR3 ('Действительный спектр сигнала', Re, 'Мнимый спектр сигнала', Im, 'Действительный спектр импульсной характеристики', Re_imp, 'Мнимый спектр импульсной характеристики', Im_imp, 'Амплитудный спектр сигнала', dpf, 'Фазовый спектр сигнала', phase_spec, 'Амплитудный спектр импульсной характеристики', dpf_imp, 'Фазовый спектр импульсной характеристики', phase_spec_imp)
Сжать ЛЧМ сигнал в частотной области. Для этого необходимо выполнить ОБПФ от произведения БПФ сигнала и БПФ импульсной характеристики. Изобразить Re, Im, модуль сжатого сигнала на общем поле графиков с помощью функции subplot с параметрами ({1, 3, 5}, 2, 4). Изобразить Re, Im, амплитудный и фазовый спектры произведения БПФ сигнала и БПФ импульсной характеристики на общем поле графиков с помощью функции subplot с параметрами ({2, 4, 6, 8}, 2, 4).
Функция для рисования графиков my_plot_LR3 приведена на стр. 2.
% спектры произведения
multiply = fft(signal).*fft(impulse_resp); % произведения БПФ сигнала и БПФ импульсной характеристики
Re_mult = real(multiply); % действительный спектр произведения
Im_mult = imag(multiply); % мнимый спектр произведения
dpf_mult = abs(multiply); % амплитудный спектр произведения
phase_mult = angle(multiply); % фазовый спектр произведения
% сжатый сигнал
OBPF = ifft(multiply); % ОБПФ произведения БПФ сигнала и БПФ импульсной характеристики
Re_OBPF = real(OBPF); % действительный спектр сжатого сигнала
Im_OBPF = imag(OBPF); % мнимый спектр сжатого сигнала
dpf_OBPF = abs(OBPF); % модуль сжатого сигнала
my_plot_LR3 ('Действительный спектр сжатого сигнала', Re_OBPF, 'Мнимый спектр сжатого сигнала', Im_OBPF, 'Модуль сжатого сигнала', dpf_OBPF, 'No picture', 0, 'Действительный спектр произведения', Re_mult, 'Мнимый спектр произведения', Im_mult, 'Амплитудный спектр произведения', dpf_mult, 'Фазовый спектр произведения', phase_mult)
Рисунок 3. Графики спектров к заданию 4 (слева – сжатый сигнал, справа – произведение)