УСТРОЙСТВО СНЯТИЯ ЭЛЕКТРОКАРДИОСИГНАЛА ДЛЯ ПЕРЕДАЧИ В СИСТЕМУ MATLAB

Авторы: Ткаченко С.В., Краснокутский В.А.

Донецкий национальный технический университет

E-mail: seriy.tkachenko@gmail.com

Источник: Інформаційні управляючі системи та комп'ютерний моніторинг (ІУСКМ-2012): III Всеукраїнська науково-технічна конференція студентів, аспірантів та молодих вчених, 16-18 квітня 2012 р., м. Донецьк / Донец. націонал. техн. ун-т; редкол.: Є.О. Башков (голова) та ін. - Донецьк: ДонНТУ, 2012. - 549-552 c.

Аннотация:
Ткаченко С.В., Краснокутский В.А. Устройство снятия электрокардиограммы для обработки в системе MATLAB. Рассмотрены вопросы построения устройств снятия электрокардиограмм. Предлагается устройство на основе микроконтроллера, позволяющее вводить сигнал электрокардиограммы непосредственно в среду MATLAB. Использование реального сигнала в системы моделирования MATLAB позволяет исследовать и разрабатывать различные алгоритмы цифровой обработки электрокардиограмм. Использование цифровых методов обработки сигналов электрокардиограмм позволяет упростить аналоговые фильтры устройств, снизить сложность и стоимость кардиографов.

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


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


Общая постановка проблемы
В работе [1] сделан анализ устройства снятия ЭКГ, построенное на микроконтроллере, в котором основная обработка сигнала ЭКГ выполняется цифровыми методами. Использование цифровых методов обработки сигналов позволяет снизить требования к аналоговым фильтрам, что значительно упрощает устройство. Цифровая обработка сигнала существенно уменьшает стоимость необходимого оборудования, увеличить надежность и точность регистрации ЭКГ.


Для разработки и исследования алгоритмов цифровой обработки сигналов широко применяется система моделирования MATLAB. Особенностью системы моделирования MATLAB является то, что алгоритмы цифровой обработки сигналов можно исследовать для различных форматов данных, что очень важно при практической реализации алгоритмов на микроконтроллерах или процессорах цифровой обработки сигналов. Кроме того, в MATLAB существует возможность работать с устройствами, подключаемые к СОМ – порту. Использование реального сигнала ЭКГ при разработке и исследовании алгоритмов значительно повышает качество и достоверность получаемых результатов. В работе предлагается устройство для ввода электрокардиограмм непосредственно в среду MATLAB на основе микроконтроллера Atmega 32.



Рис. 1 – Структура устройства снятия электрокардиограммы


Структура устройства
На рис.1 представлена структурная схема устройства снятия электрокардиограммы на базе микроконтроллера ATmega 32.


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


Перед формированием данных для отправки в систему MatLAB необходимо сигнал усилить и оцифровать. Электрокардиосигнал имеет довольно сложную форму, его амплитуда находится в пределах 0,5 мВ – 5 мВ, в сочетании с постоянной составляющей 300 мВ. По-стоянная составляющая возникает при контакте электрода с кожей. Также присутствует син-фазная составляющая величиной до 1,5 В между электродами и общим проводом. Полоса полезных частот сигнала составляет от 0,5 до 50 Гц.


Аналоговая часть устройства по традиционной для подобных решений схеме [1] с использованием инструментального усилителя (ИУ) и операционного усилителя (ОУ) обратной связи для компенсации синфазного сигнала. Фирма Analog Devices рекомендует использо-вать, для подобных целей, недорогой ИУ AD620 и мало потребляющий, прецизионный ОУ OP97 соответственно. При использовании напряжения питания 5 В размах на выходе AD620 будет в пределах 3,8 В. Если учесть, что входной сигнал колеблется в пределах 5 мВ при возможном постоянном смещении 300 мВ, то коэффициент усиления ИУ не должен превышать 12,45. Коэффициент усиления ИУ задается с помощью внешних резисторов.


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


Обычно частота дискретизации для систем с одним отведением 256…1024 Гц. Целе-сообразно использовать АЦП, которое размещается на кристалле микропроцессора. Эти АЦП, зачастую, имеют худшие параметры, чем однокристальные, но, используя качествен-ные усилители, внешнее опорное напряжение и цифровую обработку сигналов, можно до-биться приемлемых результатов. Для решения задачи оцифровки и передачи данных в систему MatLAB используется микроконтроллер AVR ATmega32 с встроенными модулям АЦП.


Система моделирования MATLAB имеет встроенные средства связи с устройствами, подключаемые к COM – порту. Однако в современных компьютерах отсутствуют СОМ – порты. Для подключения внешних устройств используется более сложный, но и более быст-родействующий интерфейс USB. Устройство подключается к персональному компьютеру через интерфейс USB, реализованный с помощью микросхемы FT232R. Микросхема FT232R представляет собой высокоинтегрированный переходник между USB и последовательным портом, что позволяет использовать минимум внешних элементов для организации последо-вательной передачи данных между контроллером и компьютером через шину USB. Для работы с USB - устройством, реализованного на микросхеме FT232R, со стороны компьютера используется драйвер, эмулирующий работу СОМ - порта. Драйвер создает виртуальный СОМ – порт, к которому можно обращаться из системы MATLAB. Ниже приведен тестовый пример работы MATLAB с АЦП контроллера. Работа теста понятна из комментариев к тексту программы.


% Программа ввода 512 байт, что представляет собой 256 значений
% напряжения в формате int16. MatLab посылает строку запроса "!"
% контроллеру АЦП. Контроллер в ответ выдает обратно строку "!",
% подтверждая о готовности передать 512 байт информации и далее передает ее.
% Ввод строки "!" осуществляется оператором out = fscanf(s), а ввод
% двоичных данных оператором out1 = fread(s, 256, 'int16') в формате int16.
% Ввод данных осуществляется в синхронном режиме, т.е. пока все данные
% не будут введены, выполнение других операторов запрещено. После ввода
% двоичных данных MatLab выдает в контроллер строку завершения
% приема данных "@". Далее производится выдача данных в виде графика
s = serial('COM1');
set(s, 'BaudRate', 115200);
fopen(s);
fprintf(s, '!');
out = fscanf(s)
out1 = fread(s, 256, 'int16');
fprintf(s, '@');
n = 0:1:59; d = out1*2.5/4095-1.25;
plot(n, d(1:60)); % из массива d выбираются элементы с 1 по 60
axis ([0 30 -2 2]) % управление масштабом графика
fclose(s); delete(s);

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


Литература
1. ECG Front-End Design is Simplified with MicroConverter [Electronic resourse] / Интернет-ресурс.-Режим доступа: http://www.analog.com/library/analogDialogue/archives/37-11/ecg.pdf.