Научная статья на тему 'Стенд полунатурного моделирования системы управления медицинским манипулятором'

Стенд полунатурного моделирования системы управления медицинским манипулятором Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
79
16
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ / СИСТЕМА УПРАВЛЕНИЯ / ПОЛУНАТУРНОЕ МОДЕЛИРОВАНИЕ / РЕАЛЬНОЕ ВРЕМЯ / ПРОЦЕСС РАЗРАБОТКИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Юдин Александр Евгеньевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Юдин Александр Евгеньевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Stand of hardware in the loop simulation of control system for surgery assistant manipulator

The study covers mathematical and hardware in the loop simulation of the control system for 7-DoF manipulator. It describes the structure of the manipulator control system as well as the development process with the simulation stand which allowed implementation of the control system within the research and development work. The article includes the description of the stand software such as 3D visualization, mathematical simulation and control system of the manipulator. It also comprehends a short description of the realtime operation system for simulation of the manipulator operation and implementation of the manipulator control system.

Текст научной работы на тему «Стенд полунатурного моделирования системы управления медицинским манипулятором»

УДК 62-523.8

Стенд полунатурного моделирования системы управления медицинским манипулятором

© А.Е. Юдин НИИ ИСУ МГТУ им. Н.Э. Баумана, Москва, 105005, Россия

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

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

Введение. В рамках выполнения составной части опытно-конструкторской работы медицинского робота-ассистента в НИИ ИСУ МГТУ им. Н.Э. Баумана разрабатывалась система управления семистепенным манипулятором. Семистепенной манипулятор имеет избыточное количество степеней свободы, что усложняет разработку системы управления и требует проведения обширных исследовательских работ, а также выполнения различных экспериментов с манипулятором. Запланировали большой объем работ, который было необходимо выполнить в сжатые сроки без работающего манипулятора, поскольку он находился на стадии конструкторской разработки и изготовления.

Структура системы управления манипулятором. Система управления манипулятором реализована в виде иерархической системы, составные элементы которой показаны на рис. 1.

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

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

текущего состояния манипулятора, вычисляет заданные угловые скорости для каждого привода. Также на этом уровне осуществляется контроль усилий по показаниям силомоментного датчика, установленного на схвате. Эти алгоритмы физически реализованы в виде программы, выполняющейся на промышленном компьютере архитектуры Intel x86 под управлением операционной системы реального времени (ОСРВ).

Рис. 1. Структура системы управления манипулятором

Третий уровень — управление режимами работы системы, индикация для оператора. Физически реализован в виде программы, выполняющейся на промышленном компьютере архитектуры Intel x86 под управлением операционной системы Microsoft Windows 7; взаимодействие с оператором осуществляется через сенсорный дисплей и блок органов управления (подключен напрямую к вычислителю второго уровня управления).

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

Разработку программного обеспечения второго уровня управления было решено разбить на две стадии: 1) разработка алгоритма управления с помощью математического моделирования движения манипулятора в совокупности с алгоритмом управления; 2) реализация отлаженного алгоритма в виде программы, выполняющейся под управлением ОСРВ.

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

Для реализации возможности автономной разработки алгоритма управления манипулятором без работающего манипулятора разработан и изготовлен стенд математического и полунатурного моделирования, обладающий следующими возможностями:

• рабочим местом программиста, позволяющим отлаживать программные реализации алгоритма;

• системой математического моделирования кинематики манипулятора и алгоритмом управления;

• системой трехмерной визуализации состояния манипулятора;

• математической моделью манипулятора, работающей в реальном масштабе времени под управлением ОСРВ, выполняющейся на автономном промышленном компьютере и имеющей интерфейс Ethernet по протоколам TCP/IP, аналогичный интерфейсу модуля преобразователя интерфейсов. Модель также соединяется с системой трехмерной визуализации;

• реализацией разработки программного обеспечения (ПО) кинематического процессора под управлением ОСРВ, при этом данное ПО выполняется на автономном промышленном компьютере, играющем роль аппаратуры кинематического процессора;

• реализацией разработки ПО поста управления, при этом данное ПО выполняется на компьютере разработчика с подключенным к нему сенсорным дисплеем;

• подключением реального манипулятора вместо математической модели, работающей в реальном времени, для чего достаточно изменить структуру Ethernet сети.

Структурная схема стенда показана на рис. 2.

Все перечисленные возможности стенда позволяют проводить моделирование работы манипулятора в режиме мягкого (математическое моделирование) и жесткого (полунатурное моделирование) реального времени, давая возможность разработчику выступать в роли оператора и отлаживать интересующие режимы движения.

Компьютер системы трехмерной визуализации

Рабочий монитор

Сенсорный монитор

Отладочный монитор

Рис. 2. Структурная схема стенда математического и полунатурного моделирования системы управления манипулятором

Система трехмерной визуализации. Для облегчения восприятия разработчиком результатов моделирования алгоритма управления разработана система трехмерной визуализации. Внешний вид экрана визуализации представлен на рис. 3.

Разработанная система визуализации позволяет строить модель манипулятора как цепочки звеньев, при этом каждое звено имеет свою систему координат, а переход между системами координат звеньев задается последовательностью сдвигов и поворотов по произвольным осям. В данной разработке использовался стандартный для описания манипуляторов набор параметров Денавита — Хартенбер-га. Система визуализации позволяет отображать произвольные трехмерные тела в привязке к любой системе координат с возможностью коррекции положения локального центра трехмерного тела относительно начала выбранной системы координат с помощью последовательности сдвигов и поворотов.

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

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

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

Рис. 3. Внешний вид экрана визуализации положения манипулятора

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

Математическое моделирование алгоритма управления. Для исследований алгоритмов управления манипулятором разработана программа, позволяющая моделировать движение манипулятора под управлением различных алгоритмов. Программа написана на языке C# и работает под управлением Microsoft .NET Framework. Применение высокоуровневого языка программирования на этапе разработки алгоритмов управления позволяет в значительной степени абстрагироваться от физической аппаратуры и сосредоточить усилия разработчика непосредственно на алгоритме управления.

Алгоритм управления рассматривается как отдельная сборка (Assembly в терминах Microsoft .NET Framework), содержащая в себе класс, который реализует некоторый интерфейс. Эта сборка разрабатывается и компилируется отдельно от программы математического моделирования. Программа управления может загружать произволь-

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

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

Внешний вид экрана программы представлен на рис. 4.

Рис. 4. Внешний вид окна программы математического моделирования алгоритма управления манипулятором

Также программа математического моделирования обеспечивает протокол взаимодействия с системой визуализации и отправляет в нее данные о положении степеней свободы манипулятора и другую отладочную информацию.

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

Полунатурное моделирование алгоритма управления. Реальный алгоритм кинематического управления выполняется на частоте 1000 Гц в жестком реальном времени и является критичным с точки зрения фазовых задержек в процессе прохождения сигналов управления и обратной связи. При этом для выполнения математической модели манипулятора с учетом динамики и системы управления приводов требуется частота выполнения алгоритма моделирования вплоть до частоты ШИМ в 20...25 кГц, поскольку на такой частоте работает токовый контур управления двигателем.

Для реализации таких частот при жестких требованиях к временным параметрам требуется применение ОСРВ.

Для выполнения таких жестких условий применена операционная система (ОС OnTime RTOS-32 немецкой компании On Time Informatik GmbH. Данная ОС характеризуется высокой скоростью реакции, измеряющейся в сотнях наносекунд [1], компактностью и ориентированием на архитектуру компьютеров Intel x86. Она поддерживает современные многоядерные процессоры, имеет эффективную плоскую модель памяти, обеспечивает доступ ко всему адресному пространству 32 бит, имеет свою реализацию стека TCP/IP.

Данная ОС представляет собой монолитное ядро в виде набора откомпилированных объектных файлов библиотек, линкующихся совместно с пользовательской программой. Разработка программы, компиляция и линковка осуществляется средствами С/С++ компилятора Microsoft Visual Studio. Результирующий выполняемый файл формата PE (выполняемый файл с расширением «.exe») конвертируется в загрузочный образ для компьютера. Итак, BIOS компьютера, на котором должна выполняться программа с этой ОС, загружает ее и запускает аналогично запуску любой ОС.

Для облегчения отладки программ управления и математической модели компьютеры с RTOS (см. рис. 2) настроены на сетевую загрузку через PXE по протоколам DHCP и TFTP из образа, хранящегося на компьютере разработчика. Данный образ состоит из загрузчика PXELINUX, а также загрузочного образа, генерируемого в процессе компиляции программы с OnTime RTOS-32.

Взаимодействие между программами математической модели, кинематического процессора и поста управления осуществляется через интерфейс Gigabit Ethernet по протоколу UDP.

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

Статья поступила в редакцию 28.06.2013

* Компания ПРОСОФТ, «Встраиваемые операционные системы» 2011, ftp:// ftp.prosoft.ru/pub/Software/RTOS/rtos-comparison-table.pdf

Ссылку на эту статью просим оформлять следующим образом: Юдин А.Е. Стенд полунатурного моделирования системы управления медицинским манипулятором. Инженерный журнал: наука и инновации, 2013, вып. 10. URL: http://engjournal.ru/catalog/it/nav/1088.html

Юдин Александр Евгеньевич родился в 1983 г., окончил МГТУ им. Н.Э. Баумана в 2006 г. Младший научный сотрудник НИИ ИСУ МГТУ им. Н.Э. Баумана, ассистент кафедры «Системы автоматического управления» МГТУ им. Н.Э. Баумана. e-mail: yudin.a.e@bmstu.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.