Электрокардиомонитор. Подсистема фильтрации на основе рекурсивного цифрового фильтра

Федеральное агентство по образованию

Рязанский государственный радиотехнический университет

Кафедра ИИБМТ


Курсовая работа по дисциплине:

«Микропроцессоры и микро-ЭВМ в медико-биологических и медицинских системах»

на тему:

«Электрокардиомонитор. Подсистема фильтрации на основе рекурсивного цифрового фильтра»


Выполнил: ст. гр. 456

Клюев И.О.

Проверил:

Виноградов А.Л


Рязань 2007

Содержание


Введение

Электрокардиография

Теоретическая часть

Структурная схема

Функциональная схема

Принципиальная схема

Алгоритм работы

Программа на Ассемблере

Программирование микроконтроллера

Отладка системы в целом

Заключение

Список литературы


Введение


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

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

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

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

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

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


Электрокардиография


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

Сигнал ЭКГ снимается с кожных покровов при помощи электродов, размещаемых в определенных точках. Кривая ЭКГ имеет характерную форму, пики и интервалы между пиками обозначаются латинскими буквами Р, Q, R, S, Т и U ( рис. 1).



Устройство недорогого ЭКГ-монитора предполагается использовать совместно с персональным компьютером.

Входные цепи аппарата ЭКГ должны усиливать довольно слабый сигнал в диапазоне напряжений 0,5-5 мВ в сочетании с постоянной составляющей величиной до ±300 мВ, которая возникает при контакте электрода с кожей (к русскоязычной литературе это явление называется кожно-гальванической реакцией, КГР), плюс синфазная составляющая величиной до 1,5 В между электродами и общим (земляным) проводом. Полоса частот, подлежащая обработке и анализу, составляет, в зависимости от вида исследования, от 0,5 Гц до 50 Гц (в устройствах мониторинга при интенсивной терапии), и до 1 кГц при исследовании водителей сердечного ритма (пейсмейкеров). Стандартный клинический аппарат ЭКГ работает с полосой частот 0,05-100 Гц.

На сигналы ЭКГ могут накладываться различного рода шумы и помехи. Основные источники шумов и помех это:

влияние сетевых помех с частотой 50 Гц (или 60 Гц) и гармоник сетевого напряжения;

влияние изменений параметров контакта электрода с кожей, приводящее к дрейфу постоянной составляющей;

мышечные сокращения: при этом на сигнал ЭКГ накладываются сигналы типа миограммы (ЭМГ);

дыхательные движения вызывают смещение постоянной составляющей;

электромагнитные наводки от других электронных устройств, когда провода электродов ЭКГ играют роль антенн;

высокочастотные шумы от других электронных устройств.

Для точной и достоверной регистрации ЭКГ не обходимо принять все меры для отфильтровывания или устранения перечисленных шумов.


Теоретическая часть


Рисунок 2. Внутренняя структура ADuC847


ADuC847 является улучшенной модификацией микроконвертера ADuC834 и функционально близок к микроконвертеру ADuC845. ADuC847 имеет улучшенную, 12.58MIPs, версию ядра МК 8052. По сравнению с ADuC845 ADuC847 содержит большее число каналов аналогового ввода, но в нем отсутствует ЦАП и Дополнительный АЦП. Изделие обладает всеми функциями ADuC834, стандартное 12-цикловое ядро которого заменено одноцикловым с производительностью 12.58MIPs. является законченным контроллером для интеллектуальных датчиков, включающем в себя сигма-дельта АЦП высокого разрешения, гибкий входной мультиплексор на 10/8 каналов, быстрый 8 разрядный микроконтроллер и встроенную Flash/EE память программ и данных.


Структурная схема


Рисунок 3. Обобщенная структурная схема кардиомонитора.


Блок предварительной обработки ЭКС производит усиление, фильтрацию и аналого-цифровое преобразование ЭКС. Цифровой сигнал поступает в общую магистраль, связанную с МПС и внешними устройствами. Микропроцессорная система осуществляет обработку цифрового сигнала с целью обнаружения R-зубцов, вычисления ЧСС, сравнения его с порогами и отображения результатов обработки на ЭЛТ дисплея совместно с ЭКС. При появлении сигнала тревоги срабатывает световая и звуковая сигнализация, формируемая в блоке индикации и сигнализации. Документирование результатов анализа и сопровождающих данных осуществляется через устройство вывода внешним печатающим устройством. Благодаря ЦАП кардиомонитор позволяет по сигналу тревоги получать ЭКГ больного длительностью 10-20 с. Через устройство ввода-вывода КМ может быть подключен к центральному посту наблюдения АСОВК. Все управление прибором производит обычно очень небольшой клавиатурой. Поскольку быстродействие и вычислительные мощности такой МПС обычно ограничены, КМ не может выполнять такие функции, как цифровую фильтрацию ЭКС, стабилизацию изолинии, определять характер нарушений ритма и ряд других функций автоматизации (самоконтроль работоспособности, самодиагностику неисправностей).


Функциональная схема


Рисунок 4. Функциональная схема узла


ADuC847 Микроконвертор- недорогой усилитель-5 - стабилизатора напряжения на переключаемых конденсаторах- удвоитель напряжения со стабилизированным выходным напряжением- двунаправленный цифровой изолятор- внешний АЦП

Принципиальная схема


Рисунок 5. Принципиальная схема согласования микроконвертора внешними АЦП и ЦАП


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

Для схемы аналогового входа применено традиционное для подобных систем решение - инструментальный усилитель (IA) и операционный усилитель обратной связи, выход которого подключен к правой ноге пациента. В качестве инструментального усилителя применен AD620 - недорогой усилитель с высокой точностью и превосходными характеристиками на постоянном токе: коэффициент ослабления синфазного сигнала CMR >> 100 dB на частотах вплоть до J кГц, смещение на входе не более SO мкВ, малый входной ток (I нА макс.) и низкое напряжение шума (0,28 мкВ в полосе 0,1...10 Гц).

Для AD620 требуется единственный внешний резистор Rc, задающий коэффициент усиления. Резисторы R2 и R3 также влияют на коэффициент усиления: Кус = 1 +49,4к/ RG + (49,4к/2)/22к. Для того чтобы избежать насыщения выхода, коэффициент усиления установлен таким, чтобы размах выходного напряжения соответствовал максимальному, если на входе присутствует максимальное расчетное напряжение сигнала, f 1ри напряжении питания ±5 В размах выходного напряжения ИС AD620 составляет +.5,Я В; тогда при входном сигнале ±5 мВ и при возможном постоянном смещении ±300 мВ расчетный коэффициент усиления со ставит 12,45. Таким образом, с учетом запаса, мы устанавливаем коэффициент усиления равным 8 (±1%) при помощи Rt; - 8,45 кОм. В схеме обратной связи, предназначенной для компенсации синфазного сигнала, применен операционный усилитель типа ОР97 - малопотребляющий прецизионный ОУ с чрезвычайно высоким коэффициентом ослабления синфазного сигнала (мин. значение 114 дБ). Эта схема подает на правую ногу пациента напряжение, компенсирующее синфазную составляющую сигнала с целью устранить влияние синфазного сигнала. Операционный усилитель имеет коэффициент усиления для синфазного сигнала, равный 91 [то есть R4/(R2IIR3) = 1 МОм/11 кОм!, и частоту среза низкочастотного фильтра около 160 Гц, что обеспечивает устойчивость усиления


[f_3JB = 1/2л * (10 кОм * 0,1 мкФ)].


Гальваническая развязка применена в цифровом интерфейсе RS-232, связывающем электрокардиограф и компьютер, который предназначен в этом примере для вывода данных. В качестве устройства изоляции сигнала применена ИС ADuM1301 - двунаправленный цифровой изолятор, созданный по технологии iCoupler фирмы Analog Devices. Данная технология позволила создать устройства развязки цифрового сигнала, лишенные недостатков, присущих оптопарам (таких недостатков, как очень малый коэффициент передачи, нелинейная передаточная характеристика и т. д.)

Устройства iCoupler, кроме того, обеспечивают высокую скорость передачи данных при гораздо меньшем энергопотреблении по сравнению с оптопарами. ИС ADuMUOl имеет три изолирующих канала, два их которых используются в данной схеме - один для передачи, другой для приема данных. (Неиспользуемый канал в дальнейшем можно использовать для передачи сигнала разрешения/запрещения передачи данных.) Питание входной части прибора осуществляется с помощью ИС ADP3607-5 - стабилизатора напряжения на переключаемых конденсаторах, который обеспечивает постоянное напряжение 5 В. Линии питания той части прибора, которая подключена к компьютеру, совершенно изолированы от входной части. Питание выходной части прибора может осуществляться от компьютера или от другого источника питания. Питание изолированной части регистратора ЭКГ осуществляется с помощью батареи, которая периодически подзаряжается с помощью зарядного устройства в то время, когда аппарат ЭКГ не используется. Для того чтобы обрабатывать биполярный входной сигнал, усилителям AD620 и ОР97 требуется биполярное питание ±5 В. Стабилизатор напряжения на переключаемых конденсаторах ADP3607-5 и инвертор на переключаемых конденсаторах ADP3605 служат для получения стабилизированного двухполярного питания от батареи напряжением 3 В.

ИС ADP3607 - удвоитель напряжения со стабилизированным выходным напряжением, обеспечивающий ток до 50 м А. Она способна работать при напряжении питания 3 В, имеется версия, обеспечивающая фиксированное выходное напряжение 5 В (ADP3607-5) - именно такой применен в данной схеме. (Данные ИС поставляются также в варианте с подстройкой выходного напряжения в диапазоне 3...9 В с помощью внешнего резистора. Они могут обеспечить и более высокое напряжение, если добавить внешнюю ступень «насоса» - несколько пассивных компонентов.)

Инверторы на переключаемых конденсаторах ADP36O5 со стабилизированным выходным напряжением могут обеспечить ток до 120 мА. Они поставляются с фиксированным выходным напряжением -3 В (ADP3605-3J или с регулируемыми внешними резисторами в диапазоне -3...-6 В. (Более высокое напряжение можно получить с помощью дополнительного внешнего каскада, так же как и в ИС ADP36O7.) Нам необходим источник напряжения питания -5 В при входном напряжении +5 В, поэтому сопротивление резистора R выбрано равным 31,6 кОм (±1%) при помощи уравнения V0UT = ы--1,5 R/4,5 кОм.

Оба напряжения питания (5 В) получены с помощью емкостных «зарядовых насосов», в принципе неспособных генерировать небезопасное напряжение даже при нарушении режимов работы, так как в схеме отсутствуют катушки индуктивности. В этих микросхемах также имеется режим отключения (shutdown), что позволяет микроконвертору переводить, их в этот режим, когда система находится в состоянии ожидания.


Алгоритм работы



Программа


; реализация фильтра посредством решения уравнения y(n)=y(n-1)+0.5(x(n)-y(n-1))SEGMENT DATAmydata: EQU 90h ;линия для вывода импульса : EQU 80h ;порт ввода : EQU 00A0h ;порт вывода : EQU 19h ;управляющее слово для настройки

;портов : EQU 89h ;регистр управления режимами

;таймеров-счетчиков: EQU 02h ;управляющее слово настройки

;таймеров-счетчиков: EQU 8Ch ;старший байт Т/С0: EQU 38h ;управляющее слово для задания

;частоты переполнения: EQU 8Ch ;управляющий бит пуска Т/С0: EQU 00A8h ;регистр разрешения прерываний: EQU 83h ;слово разрешения прерываний

;от Т/С0 и входа INT0 : EQU 00F0h ;регистр В: EQU 08h ;коэффициент масштабирования

y: DS 1 ;вых.сигн.SEGMENT CODE

RSEG myprog

; программа

; инициализации00hINIT ;переход к программе

;инициализации00A0h: MOV TMOD, #STMOD ;настройка режима Т/С0TH0, #STH0 ;задание частоты

;дискретизацииTR0 ;пуск Т/С0IE, #SIE ;разрешение прерываний

;от Т/С0 и входа INT0: SJMP STOP ;останов программы

;Формирование импульса пуска АЦП по

;внутреннему прерыванию от Т/С000BhSTART ;переход к программе

;формирования импульса

;пуска АЦП00D0h: CLR B0 ;сброс бита В0B0 ;установка бита В0;возврат из подпрограммы

;обслуживания прерывания

;от Т/С0

;Вычисление выходного отсчёта по сигналу внешнего

;прерывания от входа INT0, рабочий цикл фильтра30hXYOUT ;переход к программе

;рабочего цикла фильтра100h: MOV y, #0DPTR, #P0 ;ввод отсчета Хn из АЦПA ,@DPTR ;через порт P0

; основная программа фильтрации: OV k,#01hC ; подготовка к вычитаниюA,y ; вычитание предыдущего сигналаF0,C ; запоминание знака разностиdp ; переход по положительной разностиA ; вычисление обратного кодаA ; получение модуля разности: MOV B,k ; загрузка коэффициентаAB ; вычисление произведенияA.7, nc ; переход если младший байт < 1/2B ; добавление 1 в стар.байт: MOV A,y ; загрузка предыдущего вых. сигналаF0,pos ; по положительному приращениюC ; подготовка к вычитаниюA,B ; вычитание модуля приращенияstr ; на запоминание вых. сигн.: ADD A,B ; добавление модуля приращения: MOV y,A ; запоминание выход. сигнала DPTR, #P2 ; вывод Yn через порт@DPTR, y ; P2 ; возврат к программе инициализации.

электрокардиомонитор микроконтроллер фильтр

Программирование микроконтроллера

содержит массив 64К-байта Flash/EE памяти программ. Нижние 62К-байт этой памяти можно использовать для хранения пользовательского исполняемого кода и данных. Верхние 2К-байта заняты специальным программным обеспечением (ПО), выполняющим последовательную загрузку микроконветера в составе системы, последовательную отладку и аппаратную эмуляцию устройства через один внешний контакт. Эти же 2КБ заводского ПО содержат программу начальной загрузки периферии калибровочными коэффициентами по включению питания.

Эти 2КБ памяти скрыты для пользовательского кода. Результатом чтения этой области памяти будет 00Н, что соответствует команде NOP.

В нормальном режиме работы 62КБ Flash/EE памяти программ пользователя составляют 1 блок. Как показано на рис. 16, этот блок используется для хранения исполняемого кода пользователя.

В нормальном режиме 62КБ Flash/EE памяти программ можно программировать двумя способами. можно загружать через стандартный последовательный порт (UART). Режим последовательной загрузки включается автоматически при подаче питания или после выполнения внешнего сброса, если контакт PSEN подключен через внешний резистор 1кОм к земле.

Попав в режим последовательной загрузки, микроконвертер начинает исполнять ПО из скрытой части ПЗУ. В это время пользователь может

загружать свой код в массив памяти программ 62КБ. Исполняемая программа последовательной загрузки с РС-компьютера (WSD.EXE) поставляется как часть системы разработки QuickStart ADuC847.


Рисунок 6


На рис.6 показано, что пользователю для размещения его прикладных программ доступен один блок Flash/EE памяти размером 62КБ. В таком режиме работы Flash/EE память представляет собой ПЗУ исполняемого кода, доступную только для чтения.

Рисунок 7


В режиме ULOAD (пользовательская загрузка - ПЗ) Flash/EE память можно использовать и для записи. Как показано на рис.7, в режиме ПЗ нижние 56КБ памяти программ можно использовать для записи из

ПО пользователя. В режиме ПЗ, используя любой протокол обмена, можно модифицировать программный код пользователя, расположенный в этой области памяти. Если последовательный порт SPI установить в режим ведомого, то в течение 5сек с его помощью можно полностью репрограммировать все 56КБ Flash/EE памяти программ .

Кроме того, в режиме ПЗ в 56КБ Flash/EE памяти можно сохранять данные. Это особенно полезно в приложения, связанных регистрацией данных, причем ADuC847 может предоставить для записи данных 60КБ Flash/EE памяти (поскольку существует еще 4КБ специальной Flash/EE памяти данных).

Верхние 6КБ из 62КБ Flash/EE памяти программ программируются только последовательно или параллельно. Это означает, что это пространство памяти может быть использовано только как ПЗУ программ пользователя. Поэтому эту область памяти невозможно произвольно стереть или случайно репрограммировать. По этой причине в этой области

памяти (6КБ) обычно размещают начальный загрузчик. В последовательном загрузчике существует вариант запуска начального загрузчика, определяемый фразой: «После сигнала СБРОС всегда начинать работу с адреса Е000h». При загрузке рекомендуется пользоваться начальным загрузчиком, поскольку при этом гарантируется, что с появлением сигнала СБРОС программа загрузки всегда будет выполняться корректно.


Отладка системы в целом


В курсовой работе для отладки системы я использовала программу ProView.фирмы Franklin Software Inc. - интегрированная среда разработки программного обеспечения для однокристальных микроконтроллеров семейства Intel 8051 и его клонов. Она включает в себя всё, что нужно для создания, редактирования, компиляции, трансляции, компоновки, загрузки и отладки программ:

стандартный интерфейс Windows,

полнофункциональный редактор исходных текстов с выделением синтаксических элементов цветом,

организатор проекта,

транслятор с языка C,

ассемблер,

отладчик,

встроенную справочную систему.

Среда разработки подобна Visual C++ Microsoft и Borland C++ для Windows. Пользователи, знакомые с любым из этих изделий, будут чувствовать себя в ProView, как дома.

Первый этап разработки программы - запись её исходного текста на каком-либо языке программирования.

Затем производится компиляция или трансляция его в коды из системы команд микроконтроллера, используя транслятор или ассемблер. Трансляторы и ассемблеры - прикладные программы, которые интерпретируют текстовый файл, содержащий исходный текст программы, и создают объектные файлы, содержащие объектный код.

После компоновки объектных модулей наступает этап отладки программы, устранения ошибок, оптимизации и тестирования программы.объединяет все этапы разработки прикладной программы в единый рекурсивный процесс, когда в любой момент времени возможен быстрый возврат к любому предыдущему этапу.имеет следующие компоненты.

.Оптимизирующий кросс-компилятор C51

Язык C - универсальный язык программирования, который обеспечивает эффективность кода, элементы структурного программирования и имеет богатый набор операторов. Универсальность, отсутствие ограничений реализации делают язык C удобным и эффективным средством программирования для широкого разнообразия задач. Множество прикладных программ может быть написано легче и эффективнее на языке C, чем на других более специализированных языках.- полная реализация стандарта ANSI (Американского национального института стандартов), насколько это возможно для архитектуры Intel 8051. C51 генерирует код для всего семейства микроконтроллеров Intel 8051. Транслятор сочетает гибкость программирования на языке C с эффективностью кода и быстродействием ассемблера.

Использование языка высокого уровня C имеет следующие преимущества над программированием на ассемблере:

глубокого знания системы команд процессора не требуется, элементарное знание архитектуры Intel 8051 желательно, но не необходимо;

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

лучшая читаемость программы, используются ключевые слова и функции, которые более свойственны человеческой мысли;

время разработки программ и их отладки значительно короче в сравнении с программированием на ассемблере;

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

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

.Макроассемблер A51

Ассемблер A51 совместим с ASM51 Intel для всего семейства микроконтроллеров Intel 8051. Ассемблер транслирует символическую мнемонику в перемещаемый объектный код, имеющий высокое быстродействие и малый размер. Макросредства ускоряют разработку и экономят время, поскольку общие последовательности могут быть разработаны только один раз. Ассемблер поддерживает символический доступ ко всем элементам микроконтроллера и перестраивает конфигурацию для каждой разновидности Intel 8051.транслирует исходный файл ассемблера в перемещаемый объектный модуль. При отладке или при включенной опции Include debugging information этот объектный файл будет содержать полную символическую информацию для отладчика/имитатора или внутрисхемного эмулятора.

.Компоновщик L51

Компоновщик объединяет один или несколько объектных модулей в одну исполняемую программу. Компоновщик размещает внешние и общие ссылки, назначает абсолютные адреса перемещаемым сегментам программ. Он может обрабатывать объектные модули, созданные транслятором C51, ассемблером A51, транслятором PL/M-51 Intel и ассемблером ASM51 Intel.

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

.Отладчик/симулятор WinSim51

Отладчик исходных текстов используется с транслятором C51, ассемблером A51, транслятором PL/M-51 Intel и ассемблером ASM51 Intel. Отладчик/симулятор позволяет моделировать большинство особенностей Intel 8051 без наличия аппаратных средств. Можно использовать его для проверки и отладки прикладной программы прежде, чем будут изготовлены аппаратные средства. При этом моделируется широкое разнообразие периферийных устройств, включая последовательный порт, внешний ввод - вывод и таймеры.


Заключение


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


Список литературы


Методические указания к лабораторным работам по курсу МП в МБИ.

Бродин В.Б., Шагурин М.И. «Микроконтроллеры»

«Кардиомониторы. Аппаратура непрерывного контроля ЭКГ». Под ред. Барановского А.Л.


Теги: Электрокардиомонитор. Подсистема фильтрации на основе рекурсивного цифрового фильтра  Курсовая работа (теория)  Информатика, ВТ, телекоммуникации
Просмотров: 3125
Найти в Wikkipedia статьи с фразой: Электрокардиомонитор. Подсистема фильтрации на основе рекурсивного цифрового фильтра
Назад