КОМПЬЮТЕРНЫЙ КОМПЛЕКС ДЛЯ ПРОВЕДЕНИЯ ЭЛЕКТРОМИОГРАФИЧЕСКИХ ОБСЛЕДОВАНИЙ
В.Л. Сахаров, С.Н. Буланов, В.В. Котляров
В основу работы легла практическая разработка нейрофизиологического комплекса для диагностики нервно-мышечных заболеваний. Данный метод называется электромиография, то есть исследование нервно-мышечной системы посредством регистрации электрических потенциалов мышц [9]. В общем случае нервно-мышечная система представляет собой функционально тесно связанный комплекс скелетных мышц и периферических образований нервной системы. Функциональной единицей нервно-мышечной системы является двигательная единица (ДЕ), состоящая из одного мотонейрона, его аксона и иннервируемых им мышечных волокон.
Нервная клетка, в частности сегментарный мотонейрон, его тело, покрыты так называемой клеточной мембраной, поддерживающей стабильность концентрации положительно заряженных ионов внутри клетки. При раздражении нервной клетки возникает быстрое колебание величины мембранного потенциала, соответствующее образованию потенциала действия (ПД). При возникновении ПД в определенном участке мембраны тела нейрона или его аксона создается разность потенциалов между возбужденным участком и невозбужденным соседним - появляются местные токи, которые приводят к деполяризации соседнего невозбужденного участка мембраны. Регистрация и исследование этой разности потенциалов и составляют задачу электромиографии.
Для проведения подобных исследований необходимо наличие аппаратно-программного комплекса, где бы аппаратура решала вопросы регистрации сигнала, его первичной обработки, ввода в персональный компьютер, а также ряда других сервисных функций, а программное обеспечение реализовывало медицинскую методологию проведения исследований и интерфейс взаимодействия системы с пользователем.
Медико-технические основы метода. Все методики исследования нервно-мышечной активности можно условно разделить на два класса: электроней-ромиографические (ЭНМГ) и электромиографические (ЭМГ). ЭНМГ-методики основываются на стимуляции электрическим током участков нервов пациента, регистрацией и анализом ответов на эту стимуляцию с определенных участков тела человека. ЭМГ-методики анализируют регистрацию спонтанной интерференционной мышечной активности человека.
В рамках нейрофизиологического комплекса также целесообразно проводить исследования вызванных потенциалов центральной нервной системы. Эти исследования происходят путем подачи на пациента электрических, звуковых или световых импульсов и последующей регистрации с его головы ответов на стимуляцию.
Таким образом, можно поставить задачу разработки аппаратных и программных средств комплекса. Аппаратура должна включать: четырехканальный ЭМГ усилитель с полосой пропускания 20КГц по каналу, систему аналого-цифрового преобразования и ввода сигнала в компьютер, встроенный электростимулятор для проведения нейромиографических исследований, а также встроенные фото-, фоностиму-ляторы и блок управления монитором для реализации методики шахматного паттерна (видеостимулятора), что необходимо для реализации вызванных потенциалов. Прибор должен иметь небольшой размер, а также возможность подключения к ноутбуку, что позволит использовать его как портативный, носимый для проведения обследований в различных условиях, в том числе и на дому у пациента.
Программные средства должны реализовывать все стандартные методики электромиографии и вызванных потенциалов, иметь базу данных для хранения результатов обследования. Интерфейс должен быть удобным и простым в управлении, поскольку параллельно со взаимодействием с программой врач производит действия на теле пациента (удержание или перемещением электродов и т.п.).
Аппаратные средства комплекса. Для современной аппаратуры, применяемой в медицинской технике, необходимо создание портативных приборов с интеграцией всех периферийных устройств (стимуляторов, блоков управления) в одном корпусе. Задача синхронного управления работой всех этих устройств, биоусилителя, блока ввода сигнала в компьютер ложится на цифровую часть системы. Причем стандартными средствами (использованием известных сигнальных процессоров, стандартных протоколов обмена) качественно справиться с подобной задачей невозможно.
Для решения этой задачи нами была разработана так называемая система MGS, аппаратное ядро которой представляет собой связку одного или нескольких контроллеров MegaAVR фирмы Atmel и сигнального процессора ADSP-2181 фирмы Analog Devices. Необходимость наличия такой связки обусловливается многофункциональностью прибора. Цель системы - расширение функциональных возможностей приборов по цифровой обработке биомедицинской информации и управлению периферийных устройств. Как было отмечено выше, помимо функций регистрации, оцифровки и передачи в компьютер самой электромиограммы, необходимо организовать параллельное управление стимуляторами, монитором для шахматного паттерна, озвучиванием элек-тромиограммы, управлением фильтров и т.д. Ведущим в этой системе является ADSP-2181, который осуществляет взаимодействие с микроконтроллера-
ми и организует обмен данными с компьютером. Схема функционирования приведена на рисунке.
Рассмотрим функционирование микроконтроллеров данной схемы.
В случае получения запроса от компьютера на управление электростимулятором или видеостимулятором ADSP-2181 выдает команду в MegaAVRl, который в свою очередь на основе этой команды выдает управляющие команды в стимуляторы. Аналогично работает и MegaAVR2. Основной функцией MegaAVR3 является организация потока данных, регистрируемых с пациента. Данные принимаются с блока аналого-цифрового преобразователя, который занимается оцифровкой аналоговых данных, принимаемых по каналам регистрации ЭМГ. Вторая функция этого контроллера - управление диапазонами фильтров нижних и верхних частот усилителя ЭМГ сигналов, а также переключение диапазонов.
Система позволяет производить загрузку и запуск ADSP-2181, просмотр и корректировку содержимого ADSP-2181, а также позволяет управлять работой прикладных программ в контроллерах MegaAVR. Система имеет два режима обмена с компьютером - обмен по запросу и потоковую выдачу из MegaAVR в компьютер. Включенная система находится в режиме ожидания запроса, при этом компьютер может работать с несколькими контроллерами MegaAVR на одном канале связи.
Связь с компьютером осуществляется по каналу RS-232 со скоростью 115200 бод с одним стоповым битом в посылке и без контроля паритета, а обмен -посылками: компьютер выдает запросную посылку, а контроллер в ответ на нее может выдать ответную.
Работа по запросу осуществляется передачей запросной посылки из компьютера в контроллер, в ответ может быть выдана ответная посылка. Формат запросной и ответной посылок одинаковый.
Формат посылки: mark net_adr len com [data_block] ks [data_stream] mark - маркер.
net_adr - сетевой адрес. Каждый микроконтроллер, ADSP и компьютер имеют свой уникальный адрес в общей системе для обращения к нему. len - длина блока данных (data_block). com - команда. Для системы написаны команды (сегодня их 16), выполняющие функции загрузки и чтения данных, обращения к конкретным устройствам и т. д.
data_block - блок данных. Блок содержит параметры и данные, используемые в командах. В тех случаях, когда команды адресуются к памяти, блок данных содержит начальный адрес памяти.
ks - контрольная сумма. Получается побайтовым суммированием без переноса всех байт посылки от net_adr и до ks (не включая ks), побитовой инверсией и увеличением на 1. Таким образом, при суммировании всех байт с net_adr до ks (включая ks) получится байтовое значение, равное нулю.
data_stream - поток данных. Выдается после получения потоковой команды.
Потоковая выдача данных. Компьютер может запустить выдачу потока данных из контроллера в компьютер. Поток данных необходим в тех случаях, когда требуется высокая скорость передачи информации из контроллера в компьютер и когда ведущим в информационном обмене является микроконтроллер MegaAVR. Микроконтроллер выдает информацию из ОЗУ ADSP-2181. Для этого в ADSP организуются два буфера: в одном происходит текущая подготовка данных программой ADSP, а в другом находятся данные, готовые к выдаче.
Система MGS обеспечивает правильное взаимодействие между MegaAVR и ADSP в процессе выдачи данных. В команде, запускающей потоковую выдачу данных, необходимо лишь указать длину буфера выдачи в ADSP и адреса первого и второго буферов в ADSP. Нужно учесть, что имеются две команды потоковой выдачи: выдача байт и выдача слов. По команде потоковой выдачи байт происходит выдача младших байт из слов (двухбайтовых) памяти данных ADSP. По команде потоковой выдачи слов происходит выдача слов из памяти данных ADSP (порядок байт - старший, младший). Заметим, что при потоковой выдаче слов в каждом блоке выдачи будет в два раза больше байт, чем была заказана длина буфера.
Синхронизация при потоковой выдаче может осуществляться несколькими способами. Во-первых, прежде чем начнется выдача потока, будет выдан заголовок ответной посылки (включая ks). Кроме того, потоковая выдача не накладывает ограничений на содержание блока выдачи в потоке. Этот блок может содержать синхронизирующие признаки в зависимости от прикладных задач.
Поток можно запустить и остановить (то есть вернуться к полноценному запросно-ответному режиму). В процессе выдачи потока многие системные (и прикладные) команды модифицируют свое действие. Команды, корректирующие ОЗУ MegaAVR или ADSP, не выдают ответа (и этим не нарушают поток). То есть во время потока можно передавать значения в MegaAVR или в ADSP, и при этом поток из MegaAVR в компьютер не будет нарушен (только несколько снизится достоверность передачи информации из компьютера в контроллер, так как не будет подтверждения правильности принятия этой информации в контроллере).
Команды, которые запрашивают информацию из MegaAVR или ADSP, действуют по-другому: ответ будет отложен до конца выдачи очередного блока потока, потом будет выдана полная ответная посылка (включая маркер), а затем возобновится выдача потока. Процесс выдачи потоковой информации возобновится корректно, то есть с начала блока, хотя
при этом сам номер блока, с которого процесс выдачи возобновится, будет случайным, зависимым от того, какой блок к моменту выдачи будет вновь подготовлен.
Общее правило обращения к запросным командам в процессе потоковой выдачи таково: если команда не требует ответа в принципе, то ответа не будет. Если же команда запрашивает данные или данные в ответе являются существенными, то ответная посылка с этими данными будет включена в поток по завершении передачи очередного блока данных потока. Такие ответы назовем отложенными. Отложенный ответ появляется не сразу после выдачи блока, а спустя примерно два интервала, соответствующих двум байтовым посылкам. Это сделано для повышения надежности связи. После завершения отложенного ответа и перед началом новой выдачи блока паузы может не быть.
Нельзя создавать такую ситуацию, когда в системе окажется два отложенных ответа подряд. То есть запрос на отложенный ответ можно выдавать только после полного получения предыдущего отложенного ответа.
В процессе потока, используя механизм отложенных ответов, можно проверить наличие потока в настоящий момент.
Общие правила взаимодействия компьютера и контроллеров. Компьютер выдает посылку запроса в контроллер. Контроллер обрабатывает эту посылку в соответствии с командой в запросной посылке. В большинстве команд контроллер выдает посылку с ответом в компьютер (однако некоторые команды предполагают отсутствие ответа).
Контроллер не выдаст ответ на команду (имеются в виду команды, предусматривающие ответ) в следующих случаях:
- в посылке от компьютера к контроллеру указан не тот адрес (заметим, что общий вызов адресуется ко всем контроллерам на линии);
- контроллер не смог правильно принять посылку (не сошлась к или обнаружены сбои в связи).
В тех случаях, когда байты имеют значение по старшинству, сначала передается старший байт, за-
тем младший (или даже так: старший, средний, младший - для слов программ ADSP).
Программное обеспечение осуществляет взаимодействие с аппаратными средствами, выполняет прикладные функции отображения сигнала в заданных временных и амплитудных масштабах, имеет базу данных пациентов, а также реализует медицинские ЭМГ методики, часть из которых являются стандартными, а часть - так называемыми ноу-хау.
Особенность данного программного обеспечения заключается в полнофункциональном программном управлении электромиографом. Значения чувствительности, частот среза, громкости озвучивания электромиограммы, а также все параметры работы внешних стимуляторов задаются с помощью специальных окошек с выпадающими списками над сигналом. Это позволило уйти от различных ручек переключения на панели прибора, которые являются слабым звеном системы в смысле ее надежности.
Медицинские методики разделены по функциональным группам. Имеется группа методик, анализирующая интерференционную миограмму, зарегистрированную с помощью накожных или игольчатых электродов, стимуляционные методики, анализирующие ответы нервов на подачу электрических импульсов электростимулятора, а также методы анализа вызванных потенциалов: звуковые, регистрируемые с помощью акустического стимулятора и наушников; зрительные, получаемые с помощью видеомонитора, управляемого от прибора; соматосенсор-ные, получаемые с помощью электростимулятора. Регистрация сигнала для всех методик производится в реальном времени, программное обеспечение имеет большое количество сервисных функций, обеспечивающих максимальный комфорт для врача.
Симбиоз представленных в статье средств позволил разработать электромиографическую систему «Феникс», являющуюся одной из лучших в России среди подобных систем. А также стоит отметить, что разработанная система MGS может лечь в основу ряда других систем, предназначенных как для создания медицинских комплексов, так и для других областей промышленной электроники.
ИСПОЛЬЗОВАНИЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ ДЛЯ ПРОЕКТИРОВАНИЯ СИСТЕМ ПОДВИЖНОЙ СВЯЗИ
Л.А. Зинченко, С.Н. Сорокин, М.П. Олейник
Проектирование систем мобильной связи, работающих в городских условиях, сталкивает проектировщика со следующей проблемой: при заданных форме зоны обслуживания, ее географических особенностях и рабочем диапазоне частот требуется определить положение базовых станций, обеспечивающих уверенную связь в любой точке зоны. Количество базовых станций должно быть минимальным, кроме того, необходимо учесть влияние объектов застройки на распространение радиоволн.
Объекты жилой и административной застройки можно рассматривать как пассивные ретрансляторы и полупрозрачные экраны, препятствующие прямолинейному распространению радиоволн. Вследствие этого в некоторых зонах застройки возникают области, в которых невозможно обеспечить прием сигнала от базовой станции, - области тени. Они могут иметь различные форму и площадь, определяющиеся характером расположения объектов застройки, их размерами, свойствами материалов и длиной волны.