Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2012.09.26 Лабы LabVIEW

.pdf
Скачиваний:
0
Добавлен:
12.02.2026
Размер:
1 Mб
Скачать

субВП, расположенном в правом верхнем углу окна и выберите пункт «Show Connector». После этого значок иконки поменяет вид на схему входных и выходных терминалов.

36.Для того чтобы связать элементы управления с терминалами входных и выходных данных, необходимо навести курсор мыши на любую ячейку и щелкнуть мышью. Ячейка выделится, а курсор изменит внешний вид. Затем необходимо щелкнуть мышью на элементе, с которым нужно связать терминал. Входные терминалы принято назначать слева, выходные - справа. Свяжите элементы управления фазой, частотой сигнала, частотой дискретизации, амплитудой и размером массива с входными терминалами ВП.

37.Свяжите индикатор значений массива с выходным терминалом.

38.Для настройки рисунка иконки субВП переключитесь в окно редактирования диаграмм и вызовите контекстное меню на значке субВП, который находится в том же месте, где он расположен в окне лицевой панели. Выберите пункт «Edit Icon». В открывшемся окне редактирования «Icon Editor», создайте любое изображения для иконки субВП. Сохраните субВП.

39.Для того чтобы использовать субВП «Function 1.vi» откройте созданный вами ВП «1.vi», переключитесь в окно редакти-

рования диаграмм, откройте палитру функций и вы-

берите пункт «Function Palette >> Select a VI… ». С

помощью файлового диалога выберите субВП «Function 1.vi» и поместите его внутри цикла «While Loop».

40.Создайте и подсоедините к субВП «Function 1.vi» элементы управле-

ния.

41.Поместите на лицевой панели графический элемент «Waveform Graph» (Controls >> Modern >> Graph >> Waveform Graph).

42.Для того чтобы сформировать кластер данных для отображения на «Waveform Graph» поместите на диаграмме элемент создания кластера

«Bundle» (Functions >> Programming >> Cluster, Class & Variant). Растя-

ните иконку кластера так, чтоб в нем образовалось три входа.

43.Для задания начальной точки графика создайте и подсоедините к кластеру константу со значением 0 «Numeric Constant» (Functions >> Programming >> Numeric).

11

44.Рассчитайте значение периода дискретизации и подсоедините его ко второму входу кластера.

45.К третьему входу кластера подсоедините массив значений с выходного терминала «Function 1.vi».

46.Для отображения графика, соедините кла-

стер и «Waveform Graph».

47.Сохраните ВП и запустите его. Если при-

бор сделан без ошибок, на графике должен отобразиться график созданной функции, по оси «X» будет отображаться время в секундах.

Задание для вариантов

48. Аналогичным образом создайте субВП, формирующий массив значений функции в соответствии с вашим вариантом (см. табл. П.1). С помощью вашего субВП в ВП «1.vi» создайте и отобразите график функции, соответствующей вашему варианту.

2. МОДЕЛИРОВАНИЕ ЦИФРОВОЙ ФИЛЬТРАЦИИ БИОМЕДИЦИНСКИХ СИГНАЛОВ

Цели работы: Ознакомление с цифровой фильтрацией сигналов и её программная реализация, исследование адаптивного фильтра сетевой наводки 50 и 60 Гц, БИХ и КИХ фильтров

Основные положения

Цифровой фильтр (ЦФ) – это математический алгоритм обработки дискретных сигналов, который описывается разностным уравнением:

где

и

– отсчеты входного и выходного сигналов соответственно,

и

– константы, называемые коэффициентами фильтра, а

и

соответ-

ствуют количеству коэффициентов для первой и второй суммы.

Одной из важных характеристик цифрового фильтра является его импульсная характеристика, которая однозначно описывает свойства ЦФ. Импульсной характеристикой называют реакцию фильтра на единичный импульс, который был подан на его вход. Под единичным импульсом понима-

12

ется такой сигнал, который в момент времени t=0 он равен 1, а во все остальные моменты времени он равен нулю.

Если все коэффициенты в разностном уравнении равны нулю, то

фильтр обладает конечной импульсной характеристикой и называется КИХ фильтром или нерекурсивным фильтром. Для КИХ фильтров импульсная характеристика совпадает с набором коэффициентов .

Если в разностном уравнении есть хотя бы один коэффициент не рав-

ный нулю, то такой ЦФ обладает бесконечной импульсной характеристикой и называется БИХ фильтром или рекурсивным фильтром.

Важнейшими характеристиками фильтра являются его амплитудночастотная (АЧХ) и фазо-частотная характеристики (ФЧХ). Они связаны с импульсной характеристикой преобразованием Фурье.

Сетевая наводка с частотой 50 Гц (60 Гц) является одной из наиболее распространенных помех, характерных для биомедицинских сигналов. В данной работе предлагается исследовать адаптивный цифровой режекторный фильтр, предназначенный для устранения этой помехи.

Сетевая помеха представляет собой синусоиду

, с ча-

стотой

равной 50 (60) Гц (рис. 2.1).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.1. Сетевая помеха в виде дискретного сигнала.

Принцип действия адаптивного цифрового режекторного фильтра основан на использовании известного тригонометрического соотношения:

.

13

Если интерпретировать величину как текущее время, а величину – как интервал между отсчетами дискретного сигнала, то можно преобразовать приведенное выше выражение к следующему виду:

;

;

;

;

;

, где

частота дискретизации

Другими словами, эта формула позволяет предсказать очередное значение синусоиды по двум предыдущим.

Алгоритм адаптивной фильтрации, анализируя сигнал, постепенно настраивается на имеющуюся в нем синусоидальную составляющую и вычитает ее из сигнала. Одним из важнейших параметров алгоритма является шаг адаптации, определяющий скорость настройки фильтра и качество фильтрации.

Задание

Загрузить из файла фрагмент ЭКГ и добавить к нему помехи.

Исследовать работу адаптивного фильтра сетевой наводки, КИХ и БИХ фильтров.

Порядок выполнения работы

1.Создайте папку и перепишите в нее библиотеку VI «ЛР2.llb» и файл сигнала ЭКГ для вашего варианта (см. табл. П.2).

2.Запустите среду LabView. Создайте новый ВП и сохраните его под ка- ким-нибудь именем.

Загрузка фрагмента ЭКГ из файла

14

3.Для того чтобы загрузить файл с фрагментом ЭКГ поместите на диа-

грамме ВП «Read From Spreadsheet File» (Functions >> Programming >> File I/O >> Read From Spreadsheet File).

4.Для задания пути к файлу на лицевой панели создайте элемент управ-

ления «File Path Control» (Controls >> Modern >> String & Path). С помо-

щью этого элемента укажите путь к файлу с фрагментом ЭКГ для вашего варианта. На диаграмме соедините его с входным терминалом «file path» у ВП «Read From Spreadsheet File». (Если путь не будет указан, то при выполнении ВП будет вызван файловый диалог).

5.Для того чтобы извлечь столбец со значениями ЭКГ поместите на диа-

грамме функцию «Index Array» из палитры (Functions >> Programming >> Array), в которой находятся функции для работы с массивами.

6.Соедините выходной терминал «all rows» у ВП «Read From Spreadsheet File», на который выводятся загруженные данные в виде двухмерного массива, с функцией «Index Array».

7.Для извлечения первого столбца, которому соответствует порядковый индекс 0, создайте и подсоедините к входному терми-

налу «index (col)» константу с указанным значением. Входной терминал «index (row)» оставьте не подключенным.

8.Для управления частотой дискретизации создайте на лицевой панели численный элемент управления, задайте ему значение по умолчанию 360.

9.Для отображения графика загруженного фрагмента ЭКГ поместите на лицевой панели элемент «Waveform Graph». Создайте для него кластер данных и постройте график.

10.Сохраните ВП и запустите его. Убедитесь, что на элементе «Waveform Graph» отображается график фрагмента ЭКГ.

15

Добавление помех к фрагменту ЭКГ

11.Поместите на диаграмме цикл «While Loop», который останавливался бы по нажатию на кнопку «Stop». Далее стройте диаграмму внутри этого цикла.

12.Для формирования сетевой помехи поместите на диаграмме субВП

«Сетевая наводка.vi» из библиотеки «ЛР2.llb».

13.Для определения размера массива загруженного фрагмента ЭКГ поместите на диаграмму функцию «Array Size». Подсоедините к его входному терминалу массив значений ЭКГ. Выходной терминал соедините с входом «Количество отсчетов» у ВП «Сетевая наводка.vi».

14.Подсоедините к соответствующему входному терминалу ВП «Сетевая наводка.vi» значение частоты дискретизации.

15.Для управления параметрами сетевой наводки создайте с помощью контекстного меню элементы управления для входных терминалов «Частота наводки», «Дополнительная наводка», «Амплитуда сетевой наводки». Для отображения графика помехи создайте для выходного терминала «График сетевой наводки» элемент индикации.

16.Сложите сетевую наводку и сигнал ЭКГ.

17.Для отображения суммы

сигнала и помех на графике поместите на лицевой панели элемент «Waveform Graph»,

создайте для него кластер данных и постройте график.

18. Для того чтобы задать время выполнения каждой итерации цикла

«While Loop» поместите на диаграмме функцию «Wait Until Next ms Multiple» (Functions >> Programming >> Timing). Эта функция позволяет существенно сэкономить ресурсы компьютера, затрачиваемые на выполне-

16

ние вашей программы. Действие этой функции отображено на следующем графике, где по оси времени X отложены равные интервалы времени , отведенные для выполнения каждой итерации, и неравные фрагменты времени , которые реально затрачиваются на выполнение диаграммы внутри итерации. Сэкономленное время может быть потрачено на выполнение каких-либо

параллельных задач.

0-ая итерация

1-ая итерация

n-ая итерация

t0

t

1

tn

 

 

 

 

 

t

T

 

T

T

Для определения значения временной задержки в мс создайте и подсоедините к её входному терминалу константу и придайте ей значение 1000.

19.Для размещения большого количества графических элементов поме-

стите на лицевой панели ВП элемент «Tab Control» (Controls >> Modern >>

Containers).

20.Присвойте первой вкладке название «Сигнал» и разместите на ней графики сигнала ЭКГ, помех и график сигнала ЭКГ с помехами. Элементы управления помехами и загрузкой файла разместите вне элемента «Tab

Control».

21.Сохраните и запустите ВП. Убедитесь в том, что помехи генерируются, добавляются к сигналу ЭКГ, и что отображается график сигнала с помехами.

Фильтрация сигнала адаптивным фильтром сетевой наводки

22. Для осуществления фильтрации сигнала адаптивным фильтром сетевой помехи поместите на диаграмме ВП «Адапт. фильтр сетевой наводки.vi» из библиотеки «ЛР2.llb». Подсоедините к его входному терминалу «Входной массив» фрагмент ЭКГ с помехами.

17

23.Для управления ВП «Адапт. фильтр сетевой наводки.vi» подсоеди-

ните к соответствующим входным терминалам значения частоты дискретизации и сетевой наводки.

24.Создайте элемент управления для входного терминала «Шаг адаптации», и элемент индикации для выходного терминала «График фильтрованного сигнала».

25.Присвойте второй вкладке элемента «Tab Control» название «Адаптивный фильтр сетевой наводки». Создайте элемент «Waveform Graph», поместите его на второй вкладке и отобразите на нем график фрагмента ЭКГ с помехами.

26.Разместите на этой же вкладке график сигнала обработанного фильтром сетевой наводки и элемент управления шагом адаптации.

27.Сохраните ВП.

Фильтрация сигнала БИХ фильтром

28. Для осуществления фильтрации сигнала БИХ фильтром поместите на диаграмме ВП «БИХ фильтр.vi» из библиотеки «ЛР2.llb». Подсоедините к его соответствующим входным терминалам массив фрагмента ЭКГ с помехой и частоту дискретизации.

29.Для управления ВП «БИХ фильтр.vi» создайте элементы управления для входных терминалов «Тип фильтра», «Порядок фильтра», «Верхняя частота среза», «Нижняя частота среза».

30.Для отображения графиков, характеризующих работу фильтра, создайте элементы индикации для выходных терминалов «График фильтрованного сигнала», «Импульсная характеристика», «АЧХ», «ФЧХ», «Прямые коэффициенты», «Обратные коэффициенты».

18

31.Для создания новой вкладки элемента «Tab Control» перейдите к лицевой панели, вызовите на нем контекстное меню и выберите пункт «Add Page After». Дайте новой вкладке название «БИХ фильтр».

32.Создайте элемент «Waveform Graph», поместите его на вкладке «БИХ фильтр» и отобразите на нем график фрагмента ЭКГ с помехами.

33.Разместите на вкладке «БИХ фильтр» все элементы управления и индикации, связанные с ВП «БИХ фильтр.vi».

34.Сохраните ВП.

Фильтрация сигнала КИХ фильтром

35. Для осуществления фильтрации сигнала КИХ фильтром поместите на диаграмме ВП «КИХ фильтр.vi» из библиотеки «ЛР2.llb». Подсоедините к его соответствующим входным терминалам массив фрагмента ЭКГ с помехой, частоту дискретизации.

36.Для управления ВП «КИХ фильтр.vi» создайте элементы управления для входных терминалов «Тип фильтра», «Количество коэффициентов», «Верхняя частота среза», «Нижняя частота среза».

37.Для отображения графиков, характеризующих работу фильтра, создайте элементы индикации для выходных терминалов «График фильтрованного сигнала», «Импульсная характеристика», «АЧХ», «ФЧХ», «Прямые коэффициенты».

38.Создайте новую вкладку элемента «Tab Control» и назовите её «КИХ фильтр». Создайте и поместите на ней элемент «Waveform Graph», отобразите на нем график фрагмента ЭКГ с помехами.

39.Разместите на вкладке «КИХ фильтр» все элементы управления и индикации связанные с ВП «КИХ фильтр.vi».

19

40.Сохраните ВП.

Исследование работы фильтров

Адаптивный фильтр сетевой наводки

41.Установите для сетевой наводки следующие параметры: амплитуда 500, частота 50 Гц, дополнительная наводка 0 Гц.

42.Изменяя шаг адаптации от минимального до максимального значения, исследуйте зависимость времени настройки фильтра от шага адаптации. Сохраните вывод в отчет.

43.Изменяя амплитуду сетевой наводки от минимального до максимального значения, исследуйте зависимость времени настройки фильтра от амплитуды сетевой наводки. Сохраните вывод в отчет.

44.Подберите значение шага адаптации, который обеспечивал бы минимальное время настройки фильтра, и при котором фильтр не вносил бы дополнительных помех в сигнал с точки зрения визуального восприятия. Сохраните это значение в отчете, вместе с графиком фильтрованного сигнала.

45.Изменяя значение элемента управления «Дополнительная наводка» в сторону уменьшения и увеличения, подобрать такие допустимые отклонения частоты сетевой наводки, при которой продолжала бы обеспечиваться работа фильтра. Значения дополнительной наводки сохранить в отчете вместе с графиками фильтрованного сигнала.

БИХ и КИХ фильтры

46.Установите элементам управления нижней частотой среза значение 40 Гц, верхней – 80 Гц, порядком фильтра - 15.

47.Для каждого типа фильтра - нижних частот (ФНЧ) (Lowpass), верхних частот (ФВЧ) (Highpass), полосового (ПФ) (Bandpass) и режекторного (РФ) (Bandstop) фильтра - исследуйте и сохраните в отчете графики коэффициентов фильтра, импульсной характеристики, АЧХ и ФЧХ.

48.Установите режим ПФ. Изменяя порядок для БИХ фильтра (количество коэффициентов для КИХ фильтра) от минимального до максимального значения, исследуйте зависимость АЧХ фильтра от его порядка. Сохраните в от-

20