Назад в библиотеку

Опыт разработки прототипа двуногого шагающего робота с использованием среды MATLAB

Авторы: И.Е. Азин, П.И. Розкаряка
Источник: Технологии разработки и отладки сложных технических систем: VI Всероссийская научно-практическая конференция: сборник материалов / Московский государственный технический университет имени Н.Э. Баумана, Центр инженерных технологий и моделирования Экспонента. Москва, 27–28 марта 2019 г. – Москва: Издательство МГТУ им. Н.Э. Баумана, 2019, с. 14–22.

Аннотация

И.Е. Азин, П.И. Розкаряка &ndash Опыт разработки прототипа двуногого шагающего робота с использованием среды MATLAB
В работе представлен опыт разработки прототипа двуногого шагающего робота (педипулятора), указаны особенности создания его имитационной модели и системы управления, построенной с использованием среды MATLAB на базе микроконтроллера семейства STM32F4. Приведенный подход позволяет создать в короткие сроки рабочий прототип шагающего робота из доступных материалов. Корпус робота реализован с применением техно-логии 3D-печати. Разработанная в среде MATLAB имитационная модель двуногого робота дает возможность синтезировать алгоритмы управления с последующей их отладкой на физическом объекте, учитывая действие гравитации и силы трения с поверхностью. Представленный прототип имеет десять степеней свободы, при этом имитационная модель позволяет производить расчет центра масс робота и фиксировать координаты любых точек механизма в динамике. Для представленного прототипа робота разработан алгоритм «умного» приседания, при котором система управления педипулятора автоматически определяет углы поворота сервомоторов при отработке управляющего воздействия. Разработанный робот может быть использован для изучения антропоморфных механизмов и систем управления ими. Выбранный подход применим для создания локомоционных роботов с любым количеством пар конечностей.



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

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

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

Разработанный робот представляет собой педипулятор с десятью степенями свободы. Суммарная масса робота без учета крепежных элементов составляет 0,721кг, высота – 0,358 м. В качестве приводных механизмов, выступающих в роли суставов робота и обеспечивающих движение, выбраны серводвигатели Tower Pro MG995, управляемые с помощью ШИМ сигнала. Для управления роботом выбран микроконтроллер STM32F417IG Discovery.

Рис. 1. Фронтальная и профильная проекции робота с пояснением возможных перемещений

Рис. 1. Фронтальная и профильная проекции робота с пояснением возможных перемещений

Рассматриваемый робот (см. рис. 2) сконструирован по наиболее распространенной кинематической структуре двуногих педипуляторов: две степени свободы в голеностопном, две в бедренном суставе и по одной в коленном [2]. Такая конструкция позволяет при наличии замкнутой по положению системы управления обеспечить устойчивость при появлении возмущающих воздействий вдоль любой из осей. Еще одной особенностью конструкции является равные длины голени и бедра, что делает геометрию робота более простой, а движения – более предсказуемыми. Наиболее тяжелыми элементами конструкции являются серводвигатели (10 шт.), масса каждого составляет 0,055кг. Всего компонентов – 31 шт., детали взаимозаменяемые, выполнены из ABS-пластика с максимальным заполнением при печати на 3D–принтере.

Рис. 2. Внешний вид собранного робота

Рис. 2. Внешний вид собранного робота

Для построения системы управления педипулятором была создана его имитационная модель в среде MATLAB с использованием библиотек Simulink Simscape Multibody и Contact Forces [3]. При моделировании шагающих роботов важно обеспечить его взаимодействие с поверхностью при перемещении в пространстве. Для этого было осуществлена сборка модели в Simulink Simscape Multibody. Это можно сделать как вручную, импортируя детали формата STEP или STL, при этом задавая точки вращения, так и с помощью интегрирования со средой SolidWorks. Вариант использования стандартных инструментов MATLAB для создания геометрии деталей в данном случае не рассматривался, так как CAD модели использовались впоследствии для 3D–печати и создания графической документации. Следующим шагом было установка необходимого количества контактных точек, в которых осуществляется взаимодействие с поверхностью и рассчитываются силы. Эта задача решена с помощью библиотеки Contact Forces.

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

В состав приведенной имитационной модели робота входят следующие элементы: детали конструкции робота (Assembly 1–11), подсистемы, которые обеспечивают движение суставов (P1R–P5R, P1L–P5L), подсистема, вычисляющая координаты центра масс робота (Sum of CM) и блоки конфигурации модели. В подсистемах ступней робота (Assembly 1, Assembly 11) устанавливаются контактные точки взаимодействия с поверхностью.

К блокам конфигурации относятся: Solver Configuration, определяющий параметры решателя, World Frame, инициализирующий точку отсчета системы, и Mechanism Configuration, задающий параметры силы тяжести. Наличие этих блоков обязательно для любой модели Simscape Multibody [4].

Структура подсистемы, обеспечивающей движение суставов (например, P1R) представлена на рис. 4а. Непосредственно движение реализуется благодаря последовательному соединению блоков Rigid Transform, предназначенных для переноса и вращения детали путем преобразования координат, и блока Revolute Joint, осуществляющего вращение детали относительно оси Z в глобальных координатах. Для учета инерционности исполнительного механизма (сервопривода) рассматриваемая подсистема дополнена задатчиком интенсивности, величина производной которого соответствует реальным параметрам сервопривода. Также в подсистеме предусмотрена возможность контроля динамических параметров: угла поворота (q), угловой скорости (w), углового ускорения (b) и момента (t).

Рис. 3. Имитационная модель педипулятора

Рис. 3. Имитационная модель педипулятора/p>

Рис. 4. Подсистема движения одно сустава (а) и подсистема ступни (б)

Рис. 4. Подсистема движения одно сустава (а) и подсистема ступни (б)

В подсистеме ступни (Assembly 1 и Assembly 11) (рис. 4, б) расположены детали голеностопной части робота. В ней настраиваются контактные точки (блоки Sphere to Plane Force). На каждой ступне расположены четыре контактные точки, установленные на «шипах» (r1–r4), необходимых для увеличения сил трения при ходьбе. В блоке Sphere to Plane Force задаются следующие параметры: радиус контактной точки (Sphere Radius), длина и ширина контактной поверхности (Plane Length x, Plane Length y), ее глубина (Plane Depth to Reference Frame), жесткость контакта (Contact Stiffness), коэффициент демпфирования (Contact Damping). А также задается коэффициент трения покоя (Coefficient of Static Friction), коэффициент трения скольжения (Coefficient of Kinetic Friction) и скорость трогания (Velocity Threshold). Данные параметры позволяют имитировать различные по своим характеристикам поверхности.

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

Рис. 5. Подсистема тазовой части робота (Assembly 6)

Рис. 5. Подсистема тазовой части робота (Assembly 6)

Во всех подсистемах, в состав которых входят детали серводвигателей, координаты их центра масс передаются в подсистему Sum of CM для вычисления центра масс всей конструкции робота. Центр масс робота вычисляется приближенно, и учитываются только сосредоточенные массы серводвигателей. Массами пластиковых деталей пренебрегаем. Подсистема Sum of CM суммирует координаты центров масс каждого привода.

Сервопривода собранной конструкции робота управляются от микроконтроллера STM32F4, который с помощью пакета Waijung [5] позволяет легко реализовывать алгоритмы управления, предварительно проверенные в среде MatLab. Подробно методика организации взаимодействия между системой управления и объектом управления широко представлена в литературе, например в [6]. Такая процедура быстрого прототипирования позволяет сосредоточить внимание разработчика на алгоритмах управления, сокращая время перехода от этапа моделирования до этапа реализации на объекте.

Первая задача, которая была решена для рассматриваемого робота, была задача отработки алгоритма приседания. Рассмотрим эту задачу подробнее. При данном типе движения геометрию робота можно упростить до треугольника в профильной проекции, вершинами которого являются бедренный, коленный и голеностопные суставы (см. рис. 6). При подаче на бедренный и голеностопный сустав одинакового задания, а на коленный сустав этот сигнал, умноженный на определенный коэффициент (зависящий от соотношения длин голени и бедра), получаем приседание, при котором таз во время движения остается параллелен земле и его положение изменяется лишь по высоте (рис 6, а). Задачу автоматического определения углов поворота серводвигателей при заданном расстоянии, на которое необходимо опуститься (рис 6, б), можно решить исходя из свойств треугольника. На рис. 6, б обозначены: H – расстояние между бедренным суставом на сгиб и голеностопным суставом на сгиб; dН – заданная высота опускания таза; b1 – длина бедра; b2 – длина голени; a, y – углы сгиба.

Рис. 6. Модель робота при приседании (а) и упрощенная проекция педипулятора (б)

Рис. 6. Модель робота при приседании (а) и упрощенная проекция педипулятора (б)

Из рис. 6, б можно записать:

В рассматриваемом случае длина бедра равна длине голени, а значит, треугольник можно считать равнобедренным:

Из свойства треугольника о сумме его углов:

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

Из теоремы косинусов и (1), (3) и (4) получаем следующее выражение:

решая которое относительно y, получаем:

Выводы

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

Список использованной литературы

1. Павловский В. Е. О разработках шагающих машин //Препринты Института прикладной математики им. МВ Келдыша РАН. – 2013. – №. 0. – с. 101–32.
2. Лапшин В. В. Механика и управление движением шагающих машин //М.: Изд-во МГТУ им. НЭ Баумана. – 2012.
3. Мусалимов В. М. и др. Моделирование мехатронных систем в среде MatLab (Simulink/SimMechanics): учеб. пособие для высших учебных заведений //СПб: НИУ ИТМО. – 2013., 114 с.
4. Герман-Галкин С. Г. Matlab & Simulink. Проектирование мехатронных систем на ПК //СПб.: КОРОНА-Век. – 2008. – Т. 368.
5. Waijung Blockset. URL: http://waijung.aimagin.com (accessed 10.03.2019).
6. Полющенков И.С. Разработка системы управления электропривода по методу модельно-ориентированного программирования / Технологии разработки и отладки сложных технических систем: V Всероссийская научно-техническая конференция: сборник материалов / 2018 г. – Москва: Издательство МГТУ им. Н. Э. Баумана, с. 113-123.