МИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра БТС
отчет
по лабораторной работе №1
по дисциплине «Методы обработки и анализа
биомедицинских сигналов и данных»
Вариант № 1
Студенты гр. 7501 |
|
Басалай К.А. Фалевская А.А. |
Преподаватель |
|
Калиниченко А.Н. |
Санкт-Петербург
2019
Лабораторная работа 1. ТЕОРЕМА ОТСЧЕТОВ И ЭФФЕКТ НАЛОЖЕНИЯ
Цели работы: получение первоначальных навыков работы с системой MATLAB; исследование теоремы отсчетов и эффекта наложения.
Основные положения:
Суть теоремы отсчетов (теоремы Котельникова) состоит в следующем: действительный непрерывный сигнал со спектром, ограниченным в полосе частот 0 < f < Fm, может быть восстановлен по его дискретным отсчетам при условии, что частота дискретизации Fs > 2Fm.
Эффект наложения состоит в том, что при нарушении теоремы отсчетов (т. е. при выборе недостаточно высокой частоты дискретизации) некоторые частотные составляющие становятся неразличимыми.
Задание на выполнение работы
• Освоить основы работы в системе MATLAB в командном режиме и в режиме использования сценариев (М-файлов). Освоить простейшие способы расчета значений функций и их вывода в графической форме.
• Выполнить исследование эффекта наложения на тестовых синусоидальных сигналах.
• Выполнить исследование эффекта наложения на фрагменте ЭКГ.
Отчет по выполненной работе
Задание 1: Исследование эффекта наложения на тестовых сигналах.
В ходе выполнения работы была создана программа, которая рассчитывает и отображает в трех расположенных друг под другом графических полях одного окна графики синусоид с амплитудой A и частотами F, Fs2 + F и Fs2 – F (соответственно – в верхнем, среднем и нижнем полях) для частот дискретизации Fs1 и Fs2. Значения величин: F, A, tmax, Fs1 и Fs2 были взяты из таблицы.
Таблица 1
Вариант |
F, Гц |
А |
tmax, c |
Fs1, Гц |
Fs2, Гц |
Имя файла |
K1 |
K2 |
1 |
13 |
2 |
0,5 |
200 |
45 |
R1_01.txt |
3 |
10 |
Код программы в MATLAB:
clc % очистка command window
clear all % очистка workspace
F=13; % параметры синусоиды
A=2;
tmax=0.5;
Fs1=200; % частота дискретизации
Fs2=45;
T1=1/Fs1; % интервал дискретизации
t1=(0:T1:tmax); % диапазон изменения аргумента
T2=1/Fs2;
t2=(0:T2:tmax);
Y1=A*cos(2*pi*F*t1); % расчет 1-ой синусоиды
figure % создание окна для отображения
plot(t1,Y1) % построение графика
hold on % сохранение графического окна
Y2=A*cos(2*pi*F*t2); % расчет 2-ой синусоиды
plot(t2,Y2,'r') % расположение 2-ой синусоиды поверх 1-ой
Y3=A*cos(2*pi*(F+Fs2)*t1);
Y4=A*cos(2*pi*(F+Fs2)*t2);
Y5=A*cos(2*pi*(F-Fs2)*t1);
Y6=A*cos(2*pi*(F-Fs2)*t2);
figure
subplot(3,1,1) % создание окна графиков 3х1, активен 1-ый
plot(t1,Y1,'b') % первый сигнал делаем синим
hold on
plot(t2,Y2,'r') % второй сигнал красный
subplot(3,1,2)
plot(t1,Y3,'b')
hold on
plot(t2,Y4,'r')
subplot(3,1,3)
plot(t1,Y5,'b')
hold on
plot(t2,Y6,'r')
Изображения графических окон:
З адание 2: Исследование эффекта наложения на сигнале ЭКГ.
В ходе выполнения работы была создана программа, которая читает заданный для варианта файл и отображает в трех расположенных друг под другом графических полях сигнал с исходной частотой 1200 Гц и сигналы, прореженные в K1 и K2 раз (коэффициенты прореживания взяты из табл. П.1).
Код программы в MATLAB:
clc
clear all
Y=load('R1_01.txt'); % чтение значений из файла в массив “Y”
LY=length(Y); % определение числа прочитанных отсчетов
Fs=1200; % частота отсчетов ЭКГ
T=1/Fs; % интервал дискретизации для исходной частоты
tmax=LY*T; % размер фрагмента сигнала
t=0:T:tmax-T; % диапазон изменения аргумента
K1=3; % коэффициент прореживания
Fs1=Fs/K1;
T1=1/Fs1;
t1=0:T1:tmax-T1;
LY1=LY/K1; % размер массива для новой частоты
for i=1:LY1 % цикл для “i” от 1 до “LY1”, в..
Y1(i)=Y((i-1)*K1+1); % котором создается массив прореженных..
end % в “K1” раз отсчетов
K2=5;
Fs2=Fs/K2;
T2=1/Fs2;
t2=0:T2:tmax-T2;
LY2=LY/K2;
for i=1:LY2
Y2(i)=Y((i-1)*K2+1);
end
figure; % создание окна для отображения графиков
subplot(3,1,1) % создание окна графиков 3x1, активный 1-й
plot(t,Y) % построение графика непрореженного сигнала
set(gca,'YLim',[-800 500]); % изменение границ осей
subplot(3,1,2)
plot(t1,Y1)
set(gca,'YLim',[-800 500]);
subplot(3,1,3)
plot(t2,Y2)
set(gca,'YLim',[-800 500]);
Изображения графических окон:
Выводы:
Из теоремы Котельникова вытекают следствия:
любой аналоговый сигнал может быть восстановлен с какой угодно точностью по своим дискретным отсчётам, взятым с частотой F > 2Fs {\displaystyle f>2f_{c}}, где {\displaystyle f_{c}}Fs — максимальная частота, которая ограничена спектром реального сигнала;
если максимальная частота в сигнале равна или превышает половину частоты дискретизации (наложение спектра), то способа восстановить сигнал из дискретного в аналоговый без искажений не существует.
В ходе выполнения данного задания на графиках стало видно, что при более низкой частоте дискретизации (Fs2) сигналы в точках взятия отсчетов одинаковы для всех трех случаев (т. е. не различимы между собой), что иллюстрирует эффект наложения. Также стало видно, что при понижении частоты дискретизации в сигнале начинают пропадать высокочастотные элементы (в частности – импульсы электрокардиостимулятора), что свидетельствует о недостаточно высокой частоте отсчетов (т. е. о нарушении условий теоремы Котельникова).