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

2012.09.26 Лабы LabVIEW

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

18.Для объединения полученных значений выбросов сигнала сердечного ритма и построения графиков установите ВП

«Норм-е знач-я и вы-

бросы.vi» из библиотеки

«ЛР5.llb». Подсоедините к его соответствующим входным терминалам данные о выбросах, полученных автоматически и вручную. К входному терминалу «Массив значений времени» подключите полученный в цикле «For Loop» массив времени, а к входному терминалу «Исходный массив» – массив значений сигнала сердечного ритма.

19.Соедините выходной терминал «Графики выбросов и норм. Знач.» с графическим элементом «Ритмограмма».

20.Скопируйте из ВП «Заготовка.vi» графический элемент «Артериальное давление» и поместите его на лицевую панель на первую вкладку. Выполните пункты 11 – 19 для массива значений АД и графического элемента «Артериальное давление». Переименуйте элементы управления для ВП «Ав-

том-е опр-е выбросов» «min» в «min, мм рт. ст.», «max» – в «max, мм рт. ст.»

и задайте им минимальное значение равное 50, максимальное – 200, значение процента допустимой погрешности равным 15 %. Сделайте их значениями по умолчанию.

21.Расположите на первой вкладке элементы индикации и управления, созданные для сигнала сердечного ритма и АД.

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

Интерполяция сигналов

23. Далее диаграмма будет строиться вне цикла «While Loop». Для получения значений интерполированного сигнала сердечного ритма установите ВП «Интерпо-

41

ляция.vi» из библиотеки «ЛР5.llb». Подключите к его входному терминалу «Нормальные значения» данные, полученные на выходе ВП «Норм-е знач-я и выбросы.vi», примененного для сигнала сердечного ритма.

24.У входного терминала «Частота редискретизации, Гц» создайте элемент управления, задайте ему значение 4 Гц.

25.Для того чтобы рассчитать продолжительность исследуемых сигналов в секундах, установите на диаграмме функцию «Add Array Elements» (Function >> Programming >> Numeric). Входной терминал этой функции соедините с массивом значений сигнала сердечного ритма. Подсоедините «Add Array Elements» к входному терминалу «Время, с» у ВП «Интерполя-

ция.vi».

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

27.Для отображения интерполированного сигнала АД на графике создайте с помощью функции «Bundle» кластер для хранения набора координат x и y. Соедините выходной терминал «Интерп. массив времени» у ВП «Интерполяция.vi» с первым входным терминалом элемента «Bundle», а выходной терминал «Интерп. массив значений» – со вторым входным терминалом.

28.Повторите предыдущий пункт для сигнала сердечного ритма. Для того чтобы на одном графике сигналы сердечного ритма и АД отображались в сопоставимых масштабах,

отсчеты интерполированного сигнала сердечного ритма умножьте на 100, прежде чем подсоединить его к элементу «Bundle». Отсчеты интерполированного сигнала АД оставьте неизмененными.

29.Для совместного отображения графиков сигналов в одном графическом окне поместите на диаграмме функцию «Build Array». Растяните его так, чтобы у него было два входных терминала. На первый входной терминал подайте кластер графика сигнала сердечного ритма, на второй входной терминал подайте кластер графика сигнала АД.

42

30.Скопируйте из ВП «Заготовка.vi» графический элемент «Интерполированные сигналы» и поместите его на лицевой панели на первой вкладке. Соедините полученный массив кластеров с установленным графическим элементом.

31.Сохраните ВП и запустите его. Нажмите кнопку «Анализ» и убедитесь, что отображаются графики интерполированных сигналов.

Спектральный анализ

32.На диаграмме установите цикл «While Loop», который бы останавливался при нажатии на кнопку «Стоп». Переименуйте кнопку «Стоп» в «Выход». Все дальнейшие действия необходимо выполнять в данном цикле.

33.Установите на диаграмме ВП «Курсор.vi» из библиотеки «ЛР5.llb». ВП «Курсор.vi» обрабатыва-

ет событие, когда какой-либо курсор на графике меняет свое положение. Если изменяется положение начального

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

34.Получите ссылку на график «Интерполированные сигналы». Соедините ссылку с входным терминалом «Ссылка на график» у ВП «Курсор.vi». Входной терминал «Частота редискретизации, Гц» соедините с установленным ранее элементом управления.

35.Для того чтобы задать время выполнения каждой итерации цикла, поместите на диаграмме функцию «Wait Until Next ms Multiple». Создайте и подсоедините к её входному терминалу константу, придайте ей значение 250. Соедините эту константу также с входным терминалом «Время итерации,

мс» у ВП «Курсор.vi».

36.Для извлечения фрагмента сигнала сердечного ритма установите на диаграмме функцию «Array Subset» (Functions >> Programming >> Array).

К входному терминалу «array» подсоедините выходной терминал «Интерп. массив значений» у ВП «Интерполяция.vi» (не масштабированный для

43

отображения на графике). К входному терминалу «index» подсоедините выходной терминал «Начал. точка 1» у ВП «Курсор.vi» и к «length» – «Длина

1».

37.Выполните аналогичные операции для извлечения второго фрагмента сигнала сердечного ритма.

38.С помощью созданного ВП «Курсор.vi» извлеките два фрагмента сигнала АД.

39.Для расчета СПМ двух участков сигнала сердечного ритма установите на диаграмме ВП «СПМ 2-ух участков.vi» из библиотеки «ЛР5.llb». Подсоедините к его входным терминалам извлеченные фрагменты сигнала сердеч-

ного ритма и значение частоты редискретизации.

40.Для отображения графиков СПМ каждого участка создайте с помощью контекстного меню графики для выходных терминалов «СПМ 1-го участка», «СПМ 2-го участка», «(СПМ 2-го участка)–(СПМ 1-го участка)». Переименуйте оси «Y» у этих графиков в «с^2/Гц».

41.Аналогичным образом рассчитайте и отобразите СПМ для двух участков АД. Переименуйте оси «Y» у соответствующих графиков в «мм рт.

ст.^2/Гц».

42.Для расчета взаимной спектральной плотности мощности (ВСПМ) первого участка сигнала сердечного ритма и первого участка АД установите на диаграмме ВП

«ВСПМ.vi» из библиотеки

«ЛР5.llb». Подсоедините к его входным терминалам первые фрагменты сигналов сердечного ритма и АД. Создайте и подсоедините к его выходным терминалам графические элементы индикации. У графика ВСПМ переименуйте ось «Y» как «с^2/Гц».

44

43.Аналогичным образом рассчитайте и отобразите ВСПМ для вторых участков сигналов сердечного ритма и АД. У графика ВСПМ переименуйте ось «Y» как «мм рт. ст.^2/Гц».

44.Для извлечения массивов значений ВСПМ из кластеров для первого и второго участков установите на диаграмме два элемента «Unbundle». Соедините выходной терминал ВП «ВСПМ.vi» для первого участка с входным терминалом одного элемента «Unbundle», а выходной терминал ВП «ВСПМ.vi» для второго участка – с входом другого элемента «Unbundle».

45.Вычтите из массива значений ВСПМ второго участка массив значений массива ВСПМ первого участка.

46.Для отображения графика «(ВСПМ 2-го уч.)–(ВСПМ 1-го уч.)» установите на диаграмме элемент создания класте-

ра «Bundle». Растяните иконку кластера так, чтоб в нем образовалось три входных терминала. К нижнему входному терминалу

подключите результат, полученный при вычитании ВСПМ для двух участков, к входному терминалу «cluster» подсоедините – выходной терминал одного из ВП «ВСПМ.vi». Создайте графический элемент «Waveform Graph» и отобразите на нем график «(ВСПМ 2-го уч.)–(ВСПМ 1-го уч.)».

47.Разместите графики СПМ и ВСПМ на вкладке «Спектральные характеристики», а графики сдвига фаз – на третьей вкладке.

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

Анализ графиков ритмограммы и АД

49.Запустите ВП и загрузите файл в соответствии с вашим вариантом. Сохраните в отчет графики ритмограммы и АД.

50.Отключите автоматическое определение выбросов с помощью кнопки «Добав. автом-ски». Нажмите кнопку «Анализ». Сохраните в отчет графики интерполированных сигналов с выбросами и остановите выполнение программы.

51.Повторно запустите ВП. Включите автоматическое определение выбросов сигналов сердечного ритма и АД. Визуально проанализируйте сигна-

45

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

52. Оставшиеся выбросы выделите с помощью курсора и кнопок «Выброс», «Не выброс» и «Сбросить». Для того чтобы курсор переместился в центр графика, в окне «Cursors» вызовите контекстное меню на пункте «Курсор» и выберите пункт «Bring To Center».

Для управления масштабами графиков отключите у них автомасштабирова-

ние осей и воспользуйтесь элементом «Graph Palette» , расположенным внизу слева от каждого из графиков RR-интервалов и АД. Кнопка

позволяет изменять мышью положение курсоров на графиках. Кнопка позволяет изменять масштаб, увеличивать произвольные фрагменты, а также

сбрасывать масштаб графика, отображая его целиком. Кнопка позволяет мышью перемещать график.

53.Сохраните в отчет выводы о наличии выбросов в сигналах сердечного ритма и АД. Оцените количество выбросов, которое было удалено автоматически, и количество выбросов, которые пришлось удалять вручную. Сохраните в отчет графики RR-интервалов и АД с удаленными выбросами.

54.Нажмите кнопку «Анализ» и сохраните графики интерполированных сигналов сердечного ритма и АД без выбросов.

55.Сравните полученные интерполированные сигналы с выбросами и без них, вывод сохраните в отчет.

56.Выделите при помощи курсоров два фрагмента одинаковой длительности на графике «Интерполированные сигналы» в соответствии с вашим вариантом (см. табл. П.5).

57.Перейдите на вкладку «Спектральные характеристики».

58.Сохраните в отчет полученные графики СПМ сигнала сердечного ритма для двух участков. Определите по этим графикам, на каких частотах наблюдается наибольшая мощность. По графику «(СПМ 2-го участка)–(СПМ 1-го участка)» сделайте вывод, как изменился спектр СПМ на втором участ-

46

ке, на каких частотах мощность возросла, на каких – снизилась. Выводы сохраните в отчет.

59.Повторите предыдущий пункт для графиков СПМ сигнала АД.

60.Сохраните в отчет графики ВСПМ для первого и второго участков. Сделайте по ним вывод о том, какие общие частоты присутствуют у графиков сигнала сердечного ритма и АД на первом участке, и какие - на втором участке. По графику «(ВСПМ 2-го уч.)–(ВСПМ 1-го уч.)» сделайте вывод, какие общие частоты добавились, а какие – исчезли. Выводы сохраните в отчет.

61.Перейдите на вкладку «Фазовый сдвиг» и сохраните графики фазового сдвига для двух участков в отчет. Фазовый сдвиг показывает, насколько частотные составляющие двух сигналов отстают друг от друга в угловых единицах радианах. По графикам «Фазового сдвига» определите, на каких частотах наблюдаются наибольшие значения сдвигов фаз между сигналами сердечного ритма и АД. Выводы сохраните в отчет.

6. ИССЛЕДОВАНИЕ АЛГОРИТМА ОБНАРУЖЕНИЯ QRSКОМПЛЕКСА

Цель работы: Исследование алгоритмов формирования модельного

сигнала ЭКГ и обнаружения QRS-

 

 

 

R

комплексов.

 

 

 

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

 

 

Электрокардиограмма (ЭКГ) – это за-

P

T

 

 

 

пись колебаний разности потенциалов,

 

 

возникающих на поверхности тела вслед-

 

 

ствие электрической активности сердца. На

Q

S

 

 

 

ЭКГ деполяризация предсердий регистри- Рис. 6.1. Схематическое изобра-

руется как P-зубец, деполяризация желу- жение ЭКГ кардоцикла (PQRST- дочков – QRS-комплекс, реполяризация комплекса)

желудочков – T-зубец (см. рис. 6.1). Общепринятыми единицами измерения напряжения в электрокардиографии являются «мВ», но в данной работе для

47

Рис. 6.2. График кардиоцикла, сформированного моделью
ECGSYN

удобства управления программами будут использоваться единицы измерения

«мкВ».

В литературе (см. список литературы) предложена модель для формирования морфологии кардиоцикла (ECGSYN), которая генерирует траекторию в трехмерном пространстве с координатами (x, y, z). Квазипериодичность ЭКГ реализуется движением траектории по окружности единичного радиуса в горизонтальной плоскости (x, y). Каждый оборот по этой окружности соответствует одному RR-

интервалу. Зубцы P, Q, R, S, T моделируются гауссовыми кривыми в вертикальном направлении по оси z. Положения зубцов определяются соответственно заданным углам (см. рис. 6.2).

Вариабельность сердечного ритма (ВСР) моделируется путём создания модели сигнала, обладающей частотными свойствами, характерными для сигнала ВСР в норме (концентрация мощности в диапазонах частот VLF

(0,003-0,04 Гц), LF (0,04-0,15 Гц) и HF (0,15-0,4 Гц)). Последовательность

RR-интервалов, соответствующая рассчитанному сигналу, формируется с использованием концепции модели порождения сигнала сердечного ритма, из-

вестной как IPFM (Integral Pulse Frequency Modulation, интегральная импуль-

сно-частотная модуляция). Она заключается в следующем – с каждым новым отсчетом сигнала водителя ритма происходит накопление текущего значения RR-интервала. Как только накапливаемое значение достигает уровня сигнала, оно принимается за длительность текущего RR-интервала. Затем алгоритм переходит к следующей итерации.

Задание

Создать программу для формирования модельного кардиосигнала.

Создать программу обнаружения QRS-комплексов по сигналу ЭКГ.

Исследовать алгоритмы формирования модельного сигнала ЭКГ и обнаружения QRS-комплексов.

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

1.Создайте папку и перепишите в нее библиотеку ВП «ЛР6.llb».

2.Запустите среду LabVIEW. Создайте новый ВП и сохраните его под именем «Генератор.vi».

48

Создание программы для формирования модельного сигнала ЭКГ

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

4.Поместите на лицевую панель элемент «Tab Control», создайте у него

4вкладки и назовите их соответственно «ЭКГ», «Морфология PQRST», «ВСР», «Шумы».

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

6.Для формирования значений RR-интервала поместите на диаграмму субВП «Генератор_RR.vi» из библиотеки «ЛР6.llb».

7.Для формирования массива значений кардиоцикла поместите на диаграмму субВП «Генера-

тор_кардиоцикл.vi» из библиотеки

«ЛР6.llb». Подсоедините к его входным

терминалам значения частоты дискретизации и текущего RR-интервала.

8.Для добавления помех к сигналу ЭКГ поместите на диаграмму субВП

«Генератор_помехи.vi» из библиоте-

ки «ЛР6.llb». Подсоедините к его входным терминалам значение часто-

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

9.Размер массива значений кардиоцикла непостоянен, так как он зависит от длительности RR-интервала,

принимающего на каждой итерации различные значения. Для того

чтобы представить формируемый сигнал в виде фрагментов небольшого размера равной длины поместите на диаграмму субВП «Генератор_Фрагменты.vi» из библиотеки «ЛР6.llb». К входному терминалу «Размер фрагмента» создайте и подсоедините константу со значением 25. Подсоедините к соответствующим входным терминалам частоту дискретизации и сигнал с помехой. На выходе этого субВП будет сформирован массив фрагментов сигнала типа Waveform. Данные этого типа хранят отсчеты фрагмента сигнала, информацию о времени его начала и период дискретизации.

10.Для отображения на графике формируемого сигнала поместите на диаграмме цикл «For Loop». Перейдите к лицевой панели и создайте на вкладке

49

«ЭКГ» графический элемент «Waveform Chart», назовите его «Сигнал ЭКГ», поместите его на диаграмме внутри созданного цикла и подсоедините к нему массив фрагментов с соответствующего выходного терминала субВП

«Генератор_Фрагменты.vi».

11.Для настройки формата времени на оси «X» графика «Сигнал ЭКГ» вызовите на нем на лицевой панели контекстное меню, выберите пункт «Properties» и откройте вкладку «Display Format». В верхней части вкладки выберите из всплывающего списка ось «Time (X-Axis)». Во всплывающем списке настройки даты выберите пункт «Date unused». В поле «Type» выберите пункт «Relative time» и в правой части вкладки выберите формат време-

ни «HH:MM:SS».

12.Для отображения сигнала в режиме реального времени рассчитайте вне цикла «For Loop» значение времени t , через которое должен выводиться каждый фрагмент сигнала ЭКГ. Оно будет представлять произведение пери-

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

Td

, размера фрагмента

n

и 1000, для перевода значения в

мс t = Td n1000 . Поместите внутри цикла «For Loop» функцию «Wait Until next ms Multiple» и подсоедините к ней рассчитанное значение времени.

13.Запустите ВП, убедитесь, что сигнал формируется и выводится в режиме реального времени.

14.Для интегрирования лицевой панели субВП «Генератор_кардиоцикл.vi» в панель главного ВП поместите на вкладке

«Морфология PQRST» элемент «Sub Panel» (Controls >> Modern >> Containers), на диаграмме поместите его вне цикла «While Loop».

15.Для получения ссылки на субВП «Генератор_кардиоцикл.vi» на диаграмме поместите вне цикла «While Loop» элемент «Static

VI Reference» (Functions >> Programming >> Application Control). Дважды щелкните по нему мышью и выберите

необходимый субВП. Соедините ссылку и входной терминал «Sub Panel».

16.Аналогичным образом интегрируйте лицевые панели субВП «Генератор_RR.vi» на вкладку «ВСР» и «Генератор_помехи.vi» на вкладку «Шумы».

17.Перед запуском ВП убедитесь, что были закрыты все субВП, лицевые панели которых будут интегрироваться в ВП.

50