ОРИГИНАЛЬНОЕ ИССЛЕДОВАНИЕ
Решение задачи формирования безопасной конфигурации роботического протеза верхней конечности человека
1 Центр развития науки, технологий и образования в области обороны и обеспечения безопасности государства, Национальный исследовательский Томский государственный университет, Томск, Россия
2 Федеральный научно-клинический центр медицинской реабилитации и курортологии Федерального медико-биологического агентства, Москва, Россия
Для корреспонденции: Дмитрий Сергеевич Жданов
ул. Красноармейская, д. 14, г. Томск, 634029, Россия; ur.liam@vonadhz_s_d
Финансирование: результаты были получены в рамках выполнения государственного задания Минобрнауки России, проект № FSWM-2022-0008.
Благодарности: заместителю генерального директора ФГБУ ФНКЦ МРиК ФМБА России Н. Абдулкиной за поддержку научного коллектива; проректору по научной и инновационной деятельности НИ ТГУ А. Ворожцову за помощь в развитии исследований в области медицинской робототехники.
Соблюдение этических стандартов: исследование одобрено этическим комитетом Федерального научно-клинического центра медицинской реабилитации и курортологии Федерального медико-биологического агентства (протокол № 1 от 06 июля 2022 г.).
В настоящее время общий тренд научно-технологического развития во всем мире — активное внедрение роботизированного оборудования во всех сферах экономики. В исследовании консалтинговой компании The Boston Consulting Group (BCG) заявлено, что к 2030 г. общий объем мирового рынка профессиональной сервисной робототехники достигнет объема в $260 млрд [1].
Медицинская робототехника — один из лидирующих по уровню технологий и востребованности сегментов профессиональной сервисной робототехники. Как говорил отец коммерческой робототехники Джозеф Энгельбергер, «…больницы — это идеальное место и идеальная окружающая среда для использования роботов» [2].
Тем не менее, несмотря на широту внедрения роботических медицинских систем, до сих пор недостаточно внимания уделено вопросам обеспечения безопасности их применения как для пациента, так и для медицинского персонала. В имеющихся отдельных исследованиях указывается, что по результатам изучения документов, касающихся итогов операций с использованием роботов, было обнаружено более 1,5 тыс. случаев различных неблагоприятных последствий [3]. Роботизированные операции повлекли гибель 144 человек в 2000–2013 гг. В период с 2000 по 2013 г. было выявлено более 190 случаев возгорания или поломки оборудования в процессе подобных операций. Системные ошибки, такие как потеря видеосигнала, способствовали почти 800 другим неблагоприятным исходам роботизированных операций [3].
По мнению авторов статьи, роботизированная реабилитация несет несколько иные риски для пациентов, заключающиеся в возможном некорректном перемещении (по недопустимой траектории или на недопустимый угол) манипуляторов робота, влекущем за собой травмы пациента или медицинского персонала. Учитывая это, авторами была поставлена перед собой задача разработки метода повышения безопасности человека при эксплуатации медицинских реабилитационных роботов путем введения дополнительного контура контроля перемещения манипулятора робота в виде системы технического зрения (СТЗ). Под контролем перемещения манипулятора в контексте проведенного исследования понимается определение факта его перемещения в заданную точку внутри локальной системы координат. Таким образом, в рамках работы СТЗ использовали только для подтверждения успешности выполнения перемещений манипулятора без оценки его итоговой конфигурации. Для этой цели проводили анализ координат в трехмерном пространстве для каждого из узлов манипулятора.
В статье метод позиционирования узлов роботизированных манипуляторов рассмотрен на примере антропоморфного робота AR-600Е (НПО «Андроидная техника»; Россия), использованного в качестве модели для отработки возможного способа повышения безопасности и точности позиционирования антропоморфных роботических протезов верхних конечностей человека. Особое внимание уделено решению задачи поиска координат отдельных узлов манипулятора для формирования его конфигурации, наиболее близкой к движениям руки человека. Это необходимо для создания медицинских реабилитационных устройств, замещающих отсутствующую или дисфункциональную руку пациента и максимально приближенных по своей кинематике к руке человека, что повышает безопасность их применения.
Следует учитывать, что в отличие от манипуляторов промышленных роботов, антропоморфный реабилитационный роботический манипулятор не зафиксирован на жестком основании. Это, наряду со сложной структурой механизма и большим количеством взаимосвязанных узлов, приводит к получению большой ошибки позиционирования, что в ряде случаев может оказаться опасным для владельца роботического протеза или окружающих. В таких условиях задача точного и безопасного позиционирования является нетривиальной и во многом зависит от способа построения самого механизма.
Для решения этой задачи предлагается в контур управления роботическим реабилитационным антропоморфным манипулятором дополнительно ввести модуль СТЗ, отслеживающий положение манипулятора в поле зрения системы технического зрения и формирующий команды на прерывание или корректировку потенциально опасного движения. При этом будет вестись распознавание как схвата манипулятора, так и специальных маркеров, фиксируемых на его узлах [4, 5]. Но даже использование СТЗ при применении традиционных методов оценки положения манипулятора (относительно элементов системы технического зрения) дает абсолютную среднюю ошибку калибровки между системой технического зрения [6, 7] и схвата манипулятора более ± 5 см [4].
Традиционно, текущее положение узлов манипулятора определяется путем запроса их координат в трехмерном пространстве из схемы прямой кинематики. Она формируется на основании показаний датчиков углового положения соответствующих приводов. В той же схеме присутствуют и текущие координаты СТЗ. Программное обеспечение на начальных стадиях должно осуществить поиск целевого объекта и расчет его пространственного положения относительно элементов системы либо абсолютного нуля кинематической схемы. Операцию можно осуществлять путем использования positionbased (PBVS), image-based (IBVS) visual servoing или гибридных методов. В общем виде перечисленные методы осуществляют расчет желаемых координат при анализе изображений и могут быть использованы как для работы промышленных манипуляторов и антропоморфных роботов, так и роботических протезов руки человека.
Согласно методу IBVS, проводят сравнение рассчитанного желаемого и текущего положения манипулятора или объекта на плоскости. Полученную ошибку в виде разности желаемого и текущего положения используют в виде обратной связи. Связь между полученной информацией и изменениями в положении узлов обеспечивается путем использования матрицы Якоби и прямой кинематической схемы робота [8]. Существует большое количество методов, позволяющих определить эту связь [9–11]. При этом необходимо учитывать, что использование одной маркерной точки на объекте (объект манипуляции либо сам манипулятор) дает возможность управления только двумя степенями свободы. Для управления шестью степенями свободы потребуется использовать как минимум четыре маркера. При этом повышается вероятность получения однозначного решения при формировании управляющей команды [11, 12]. Метод IBVS не обеспечивает линейного управления узлами робота и не использует трехмерную информацию о положении объекта манипуляции. Это приводит к формированию неоптимальных или нереализуемых траекторий, что может быть решено подбором визуальных параметров [13–15].
При использовании метода PBVS координаты объектов внутри рабочего пространства определяют по отношению к системе координат камеры, входящей в состав системы технического зрения. Для этого учитывается совокупность параметров геометрической модели отслеживаемого объекта и параметров камеры. Параметры отслеживаемого манипулятора, находящегося в рабочей зоне, известны. Их изменения можно отслеживать при получении ответа от кинематической схемы робота. Геометрические параметры объекта манипуляции, напротив, сильно зависят от параметров системы технического зрения и способов трехмерной локализации, реализованных в ней [16–22].
При гибридном визуальном сервоуправлении совместно используют методы IBVS и PBVS с целью повышения точности формирования управляющих команд путем использования, например, раздельного контроля над степенями свободы управляемого манипулятора [23–27]. Такие системы менее зависимы от точности калибровки камер робота и дают более точное представление о геометрических характеристиках объектов. Однако они сложны в реализации и потребляют больше вычислительных ресурсов. Риск формирования неоптимальных или нереализуемых траекторий остается. Это может быть связано как с ошибками позиционирования, так и с неверной оценкой трехмерного положения отслеживаемых объектов системой технического зрения робота.
При расчете оптимальных позиций схвата манипулятора должны быть учтены механические ограничения узлов, как при первоначальном позиционировании, так и при последующей манипуляции с предметом. Кроме того, ввиду использования антропоморфных протезов для повышения безопасности применения в «человеческой» среде позиционирование манипулятора может включать в себя остановку перед препятствиями при решении задачи достижения целевого положения.
При разработке модуля управляющего программного обеспечения, ответственного за формирование траектории перемещения манипуляторов робота AR-600Е, при использовании существующих методов обработки информации, поступающей от СТЗ, возникает высокая вероятность формирования небезопасной либо нереализуемой траектории перемещения манипулятора к целевому объекту. Кроме этого, была поставлена задача построения траектории перемещения манипуляторов, схожей с естественными движениями руки человека. При проведении работ были оценены различные варианты решения задачи обратной кинематики манипулятора и предложен метод, обеспечивающий построение ожидаемой траектории перемещения.
Целью исследования была разработка метода повышения безопасности применения роботизированных медицинских реабилитационных устройств путем разработки и апробации алгоритма расчета угловых положений роботизированных манипуляторов или роботических протезов, применяемых в восстановительном лечении и позволяющих воспроизвести естественную траекторию перемещения руки человека.
МАТЕРИАЛЫ И МЕТОДЫ
В процессе проведения работ был создан ряд алгоритмических решений, позволяющих сформировать траекторию перемещения антропоморфного манипулятора, приближенную к естественной траектории руки человека. Решения были реализованы в виде программного обеспечения, управляющего манипулятором антропоморфного робота AR-600E в симуляционной среде с использованием алгебры кватернионов. Манипулятор включает следующие узлы (рис. 1):
- группа узлов Shoulder осуществляет перемещение узла Elbow и нижестоящих узлов манипулятора по фронтальной (ShoulderS), сагиттальной (ShoulderF) и вертикальной осям (ElbowR);
- узел Elbow осуществляет перемещение дочерних узлов по сагиттальной оси;
- узел WristR осуществляет перемещение дочерних узлов по вертикальной оси;
- узлы WristF и WristS обеспечивают перемещение кисти по фронтальной и сагиттальной осям соответственно.
Управление пальцами реализовано при помощи приводов, располагаемых на узле WristS.
Пространственное положение узлов манипулятора рассчитывали при помощи метода Forward and Backward Reaching Inverse Kinematics (FABRIK) [28], учитывающего ограничения и представляющего их координаты, совокупность которых позволяет кисти достичь заданной позиции в трехмерном пространстве.
Захват изображений рабочей области производится при помощи двух видеокамер, расположенных на голове антропоморфного механизма и регистрирующих цветные изображения. Контроль перемещения схвата манипулятора и оценка достижения им заданной координаты внутри рабочей области происходит с использованием методов машинного обучения, основной задачей которых является детектирование схвата и оценка выполнения им заданного действия внутри рабочей области.
Корректность позиционирования схвата оценивали двумя способами: путем запроса ответа от приводов манипулятора с последующим воспроизведением на его основе текущей конфигурации схвата манипулятора и с использованием СТЗ антропоморфного механизма. Контроль всей конфигурации манипулятора при этом не производится ввиду невозможности нахождения всех его узлов внутри рабочей области СТЗ. Для решения этой задачи после формирования конфигурации пространственного положения происходит расчет угловых положений приводов, приводящих узлы манипулятора в заданные координаты в трехмерном пространстве. Рассмотрим возможные пути их расчета на примере группы Shoulder (рис. 1), перемещения которой влияют на пространственное положение всех остальных узлов манипулятора. Было произведено сравнение работы следующих методов расчета угловых положений:
1) с использованием ортогональных проекций точек узлов манипулятора. Угол между двумя точками (например, оси узла Elbow и группы Shoulder) рассчитывали согласно формуле:
где а — модуль координаты y для соответствующей оси узла; c — расстояние между узлами в соответствующей ортогональной плоскости;
2) как угол поворота ортогональной плоскости между проекцией узла Elbow при инициализации кинематической схемы и проекцией в анализируемой плоскости его перемещения. Расчет происходил согласно формуле:
где ā и ƀ — трехмерные векторы, между которыми рассчитывается угол; an, bn — соответствующие координаты трехмерных векторов после формирования ортогональных проекций;
3) через проекцию координаты узла Elbow в трехмерном пространстве на соответствующие плоскости перемещения группы Shoulder:
где dist — расстояние между текущей координатой оси узла Elbow и общей осью (null) узлов ShoulderF, ShoulderS (группа Shoulder). Расчет угловых положений осуществляли как по (1), так и по (2);
4) путем использования метода «Shortest arch», применяемого разработчиками игр для расчета кратчайшей дуги перемещения связных узлов виртуальных объектов из начальной в заданную точки трехмерного пространства. Практическая реализация метода сводится к формированию кватерниона поворота из кватернионов двойного поворота и нулевого вращения. Результирующий кватернион получается в результате сложения кватерниона двойного поворота и кватерниона идентичности;
5) алгоритм, предложенный авторами статьи.
Способ вычисления угловых положений, предложенный и апробированный коллективом авторов, использует матрицу взаимных положений узлов манипулятора, представляющую собой набор координат, соответствующих определенным углам. Шаг между ними устанавливается при инициализации алгоритма, что позволяет избежать повторного формирования матрицы. В качестве входных данных для предложенного алгоритма используется координата точки схвата в трехмерном пространстве, которая представляет собой центр кисти манипулятора (рис. 1). Далее применяется метод FABRIK, дающий набор координат точек осей основных узлов, совокупность которых формирует конфигурацию манипулятора в трехмерном пространстве. После этого внутри сформированной матрицы взаимных положений по принципу минимума расстояний (dist; формула (3)) между координатами предполагаемого положения узла Elbow и координатами, хранимыми в матрице, происходит выбор наиболее подходящего углового положения привода. В случае необходимости происходит дополнительная корректировка углового положения за счет формирования локальной матрицы взаимных положений с более точным шагом внутри небольшого диапазона углов поворота. Затем происходит расчет углового положения привода узла Elbow согласно формуле (1). При этом в качестве значения а выступает значение по оси y ортогональной проекции искомого положения, а в качестве стороны с — длина узла. Расчет углового положения привода ElbowR производится относительно оси узла WristR (рис. 1). Здесь применяется итеративный подход — при помощи последовательно формируемых кватернионов осуществляется поворот WristR с заданным шагом. Процедура останавливается по условию минимума расстояний между координатами, рассчитанными методом FABRIK, и координатами, извлеченными из матрицы взаимных положений.
РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ
При проведении экспериментальных исследований предложенные методы были применены для расчета угловых положений приводов манипулятора антропоморфного механизма AR-600E в симуляционной среде. Для этого оператором вручную задавались желаемые положения узлов, фиксировались результирующие угловые положения их приводов, а также координаты осей приводов Elbow и WristS в трехмерном пространстве. Далее происходило сравнение полученных результатов и выбор наилучшего метода по критерию близости результирующих координат с координатами осей узлов, выведенными оператором.
Пример конфигурации манипулятора при проведении исследований представлен на рис. 2.
В табл. 1 представлены угловые положения узлов группы Shoulder и узла Elbow:
- 0 — начальное положение для антропоморфного механизма;
- 1 — угловые положения, выставленные оператором;
- 2 — угловые положения для конфигурации, рассчитанные согласно формуле (1);
- 3 — угловые положения для конфигурации, рассчитанные согласно формуле (2);
- 4 — угловые положения для конфигурации, рассчитанные через проекцию координаты на соответствующую ось с использованием формулы (1);
- 5 — угловые положения для конфигурации, рассчитанные через проекцию координаты на соответствующую ось с использованием формулы (2);
- 6 — угловые положения, рассчитанные предлагаемым методом.
Ячейки табл. 1 Elbow и WristS содержат координаты осей этих узлов в трехмерном пространстве, полученные при применении к ним сформированных угловых положений приводов. Ячейки Elbow и WristR — информацию об угловых положениях (градусы) приводов, перемещающих соответствующие узлы в заданные точки трехмерного пространства.
Представленная табл. 2 иллюстрирует абсолютную разницу координат осей Elbow и WristR, между координатами, полученными в результате перемещения этих узлов оператором, и координатами, полученными при переводе их приводов в рассчитанные каждым из методов угловые положения. В табл. 2 не включена информация о положениях 0 и 1.
ОБСУЖДЕНИЕ РЕЗУЛЬТАТОВ
Анализ результатов, приведенных в табл. 1 и табл. 2, дает возможность говорить о том, что предлагаемый метод расчета угловых положений приводов узлов позволяет сформировать именно заданную конфигурацию манипулятора и вывести его узлы в необходимые точки. Можно заметить, что и координаты положений узлов манипулятора, полученные при работе предлагаемого алгоритма, также отличаются от координат, которые были выведены оператором. Наибольшее расхождение полученных результатов от эталонных было получено для координаты оси узла WristS. Для компенсации этой ошибки был применен алгоритм, который так же, как и рассмотренный выше, использует матрицу взаимных положений. Для этого узел WristS необходимо перевести в его начальное положение. Затем в матрице взаимных положений, согласно условию минимума расстояний, происходит поиск значения углового положения привода. Для повышения быстродействия алгоритма было решено произвести первоначальный расчет значения углового положения привода узла WristF:
где angle — предварительно рассчитываемый угол поворота привода WristS по сагиттальной оси; nullWristF — статичный угол поворота узла WristS относительно узла WristF, рассчитываемый при инициализации программного обеспечения антропоморфного механизма; a — длина предплечья антропоморфного механизма; b — расстояние от оси узла WristF до оси WristS; c — расстояние от оси узла WristS до оси узла WristR.
Расчет углового положения привода WristR осуществляется способом, аналогичным для ElbowR. Результаты корректировки для конфигураций манипулятора, сформированных в табл. 1, представлены в табл. 3.
Строка «Разница отклонений» в табл. 3 характеризует величину и направление изменений расстояний (миллиметры) между целевыми координатами узлов манипулятора в трехмерном пространстве и их расчетными значениями, полученными до и после проведения корректировки значений для угловых положений привода WristS. Анализ представленных данных позволяет говорить о том, что использование дополнительного этапа корректировки координат позволяет переместить узлы манипулятора с большей точностью. Погрешность перемещения при этом не превышает 0,5 мм. Этот механизм можно использовать при задании большого шага поиска при формировании матриц взаимных положений. Более точная подстройка конфигурации будет происходить на дополнительном этапе корректировки. Это позволит повысить быстродействие предлагаемого алгоритма.
ВЫВОДЫ
Создан алгоритм расчета угловых положений приводов узлов манипулятора, получающий наиболее точный и предсказуемый результат (табл. 2, табл. 3), который в итоге позволяет получить конфигурацию, заданную оператором. При этом минимизирована вероятность получения непредсказуемого результата и перемещения манипулятора робота по небезопасной для человека траектории. Отдельно отметим, что точность расчета координат при использовании предложенного алгоритма напрямую зависит от величины шага поиска (градусы), использованного при формировании матриц взаимных положений. Созданный алгоритм был программно реализован и оптимизирован на языке С++. Время его исполнения на персональном компьютере (Intel Core i7–4770 3.40 GHz, RAM – 16 Gb) колебалось от 5 до 8 мс, что достаточно для управления манипулятором антропоморфного робота и при управлении роботическим протезом. Точность расчета угловых положений приводов можно повысить за счет уменьшения шага при формировании матриц взаимных положений. При этом повысится объем оперативной памяти, используемой управляющим программным обеспечением, и понизится быстродействие алгоритма. Этого можно избежать путем применения в составе управляющего программного обеспечения модификации предложенного алгоритма, которая будет осуществлять расчет угловых положений приводов манипулятора с учетом его предыдущей конфигурации. В этом случае будет существенно сужена область поиска внутри матриц взаимных положений, что приведет к более быстрому формированию команды на изменение положения от программного обеспечения, управляющего манипулятором или роботическим протезом, и повысит точность его позиционирования. Использование СТЗ в процессе работы описанного алгоритма будет сведено к контролю факта корректного выполнения действия, осуществляемого манипулятором. Это значительно упростит алгоритмическое обеспечение, снизит вычислительную нагрузку и позволит уменьшить время формирования управляющей команды. Такой подход повысит безопасность эксплуатации роботизированных устройств в процессе решения задач медицинской реабилитации, критериями выполнения которых являются быстрота реакции и точность исполнения действий.