Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по ЭКГ.doc
Скачиваний:
102
Добавлен:
18.11.2018
Размер:
10.54 Mб
Скачать

1. Вывод сигнала с электрокардиографа

Для вывода аналогового ЭКГ-сигнала с электрокардиографа, в его схеме необходимо, в первую очередь, найти точку, в которой можно зарегистрировать сигнал, соответствующий усиленному сигналу ЭКГ. В процессе решения данной задачи были изучены принципиальные схемы плат усилителя биопотенциалов, а именно: платы усилителя напряжения, платы усилителя регистратора (усилителя мощности); и в качестве места съема усиленного ЭКГ-сигнала для последующей передачи в ПК была выбрана плата усилителя регистратора (рис. 10). Экспериментальным путем с использованием осциллографа была найдена искомая точка на плате усилителя регистратора, и получен сигнал с 4 вывода ОУ DA6 (см. ПРИЛОЖЕНИЕ 1, точка съема сигнала указана синим цветом).

Oval 10

Рис. 10. Плата усилителя регистратора. Точкой выделено место съема ЭКГ-сигнала.

Дальнейшая обработка полученного сигнала подразумевает его регистрацию и оцифровку с помощью АЦП стенда SDK-1.1/S.

С платы усилителя регистратора был получен усиленный инвертированный ЭКГ-сигнал. АЦП стенда SDK-1.1/S может принимать сигналы только положительной полярности в диапазоне напряжения 0… 5 В. Однако электрокардиограмма представляет собой биполярный сигнал. Вследствие чего необходимо провести инвертирование полученного сигнала и смещение линии нуля.

Для проведения указанных операций было принято решение разработать инвертор со смещением нуля (рис. 11).

Разработанная и внедренная в схему платы усилителя регистратора плата инвертора со смещением нуля представлена на рисунке 12. Черной рамкой выделена плата инвертора. Данная плата позволяет получить усиленный биполярный ЭКГ-сигнал, со смещением линии нуля на 2,5 В. Такой сигнал можно подавать на АЦП стенда SDK-1.1/S для дальнейшего преобразования.

Рис. 11. Схема инвертора со смещением нуля.

Рис. 12. Плата усилителя регистратора с внедренной платой инвертора.

2. Преобразование сигнала в цифровой код

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

Для реализации задачи оцифровки и передачи сигнала с электрокардиографа в ПК, в микропроцессорном стенде SDK-1.1/S, были задействованы:

1) 12-разрядный АЦП;

2) UART;

3) ОЗУ.

Оцифровка аналогового сигнала происходит с интервалом 38 мс. При помощи АЦП значения напряжения преобразуются в двоичный 12-разрядный код. Затем этот код передается в ПК по последовательному интерфейсу RS-232C (со скоростью 9600 бит/с) с дальнейшим его преобразованием в значения напряжения и графическим построением временной диаграммы напряжений. В связи с тем, что процесс оцифровки аналогового сигнала и передачи цифрового кода в ПК занимает менее 40 мс, необходимо осуществить его дополнительную задержку.

3. Обработка сигнала с помощью специально разработанного программного обеспечения

Для осуществления связи электрокардиографа с ПК и реализации операций оцифровки сигнала и его передачи, необходимо было написать программу для работы микропроцессорного стенда SDK-1.1/S в программной среде Keil μVision 3 на языке программирования C++.

Программа должна производить преобразование аналогового ЭКГ-сигнала в цифровой 12-разрядный код, и далее - его передачу в ПК по последовательному интерфейсу (RS-232C). При выборе частоты дискретизации аналогового сигнала, необходимо учитывать тот факт, что величина этой частоты должна быть такой, чтобы по мгновенным выборкам напряжения, можно было бы восстановить первоначальную форму сигнала.

На рисунке 13 приведена блок-схема работы программы написанной на языке программирования C++ в программной среде Keil μVision 3, записываемая в память микроконтроллера стенда SDK-1.1/S.

Рис. 13. Блок-схема программы, записываемой в память микроконтроллера SDK-1.1/S.

В первую очередь, осуществляется инициализация стенда SDK-1.1/S с ПК, для чего на ПК передается служебный байт. В программе задается число циклов. Один цикл программы включает в себя регистрацию, преобразование и передачу в ПК квантованной величины напряжения и соответствует одной точке на временной диаграмме напряжений.

Далее происходит преобразование полученного с электрокардиографа аналогового сигнала в 12-ти разрядный цифровой код и последующая его передача в ПК через последовательный интерфейс.

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

В связи с тем, что процесс преобразования аналогового сигнала АЦП и передача цифрового кода на ПК занимает порядка 3 мс, была создана дополнительная задержка в 35 мс.

На заключительном этапе сопряжения электрокардиографа с ПК, необходимо было создать терминал (программа визуализации), принимающий и обрабатывающий цифровой код со стенда SDK-1.1/S. Результатом работы данного терминала является визуализация переданного на ПК ЭКГ-сигнала.

В качестве программной среды для создания данного терминала был выбран Delphi 7.0.

Рис. 14. Блок-схема работы терминала.

Поскольку АЦП 12-разрядный, то для передачи 12-разрядного кода, необходимо переслать его значения в двух байтах. То есть, терминал принимает 2 байта составными частями одного двухбайтового кода. Первым приходит старший байт, он сдвигается на 8 позиций (разрядов) влево, далее к получившемуся двухбайтовому числу прибавляется младший байт. Таким образом, удается восстановить 12-разрядный код (значение напряжения) на входе АЦП микропроцессорного стенда. У получившегося кода 4 старших разряда всегда равны нулю, поскольку это 13, 14, 15, 16 разряды двухбайтовой переменной, у которой задействованы только младшие 12 бит. Далее двоичный код переводится в десятичный, при этом его необходимо умножить на дробь , с целью восстановления исходного значения напряжения.

Числитель дроби означает, что максимальная величина измеряемого напряжения равна 5 вольтам, а знаменатель – количество возможных состояний 12-разрядного двоичного числа. Например, код 111111111111 означает, что на входе АЦП подано 5 вольт.

Каждая квантованная величина напряжения пересылается тремя байтами. Первый байт – служебный байт, а оставшиеся два байта кодируют квантованную величину напряжения.