Вдосконалення функціональних можливостей моделі крокуючого робота
Вдосконалення моделі крокуючого двоногого робота із шістьома степенями свободи у середовищі MATLAB/Simulink з метою наближення їй до реальних параметрів людського тіла. Аналіз алгоритму його ходьби на зігнутих ногах та уникнення перешкоди на шляху робота.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | украинский |
Дата добавления | 11.07.2022 |
Размер файла | 689,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Вдосконалення функціональних можливостей моделі крокуючого робота
Репнікова Н.Б., к.т.н., Сверчков В.А., Національний технічний університет України «Київський політехнічний інститут ім. Ігоря Сікорського»
Вдосконалення функціональних можливостей моделі крокуючого робота
Репнікова Н.Б., Сверчков В.А.
Розглядаються можливості вдосконалення існуючої моделі крокуючого двоногого робота у середовищі MATLAB/Simulink з метою наближення моделі до реальних параметрів людського тіла та надання їй здатності до уникнення перешкод.
Вдосконалений робот повторює стиль ходьби людини на зігнутих ногах. В ході модернізації використовуються вбудовані засоби середовища Simulink, а для обрахування та виведення додаткової апостеріорної інформації -- інтерпретована мова програмування MATLAB. Запозичена модель була модернізована наступним чином: висота робота наближена до висоти комплексу нижніх кінцівок людини зі зростом 175 см і дорівнює 100 см, сумарна вага крокуючого робота дорівнює 172 кг, були впроваджені додаткові шість степенів свободи для надання більшої мобільності роботу, був реалізований скрипт для визначення швидкості робота. Також, була додана перешкода на шляху робота, було розроблено та пояснено алгоритм її уникнення з подальшим продовженням ходьби робота у початковому напрямку.
Ключові слова: двоногий робот, крокуючий робот, модель двоногого робота, уникання перешкод, двоногий робот з наближеними до людських параметрами.
Improving the functional capabilities of the walking robot model
Repnikova N.B., Sverchkov V.A.
Possibilities of improving the existing model of a walking two-legged robot in the MATLAB/Simulink environment are considered in order to bring the model closer to the real parameters of the human body and give it the ability to avoid obstacles.
The upgraded robot repeats style of human's walking on bent legs. During the modernization, the built-in tools of the Simulink environment are used, and for the calculation and output of additional a posteriori information -- the interpreted programming language MATLAB. Existing model was upgraded as follows: height of the robot was approximated to the height of human lower limbs complex with a height of 175 cm and now is 100 cm, total weight of the walking robot is 172 kg, additional six degrees of freedom were introduced to provide greater mobility to the robot, a script was implemented to determine the speed of the robot. Also, an obstacle in the way of the robot was added, an algorithm for obstacle avoidance with the subsequent continuation of the robot's walk in the initial direction was developed and explained.
Keywords: bipedal robot, walking robot, model of two-legged robot, obstacle avoidance, two-legged robot with close to human parameters.
Вступ
Двоногі крокуючі роботи є досить цікавими різновидами роботів, оскільки вони за своєю конструкцією правдоподібно відтворюють нижні кінцівки людини. Ця особливість відкриває перед науковцями широкі можливості для дослідження механіки руху нижніх кінцівок людини, а також допомагає проектувати пристрої, котрі виконували б певні транспортні задачі, асистували людині у небезпечному середовищі, або навіть допомагали хворим з паралізованістю ніг в їхній реабілітації [1-2].
Багато природніх ландшафтів мають досить нерівну поверхню: гори, пагорби, узбережжя тощо. Це дуже погані умови для використання колісних та навіть гусеничних роботів. Така ситуація підвищує затребуваність саме ходячих роботів з декількома ногами та їх актуальність для дослідників, оскільки вони відтворюють динаміку руху живих істот, котрі вдало переміщуються та живуть у подібних місцевостях [3].
Звичайно, розробка, вивчення та експериментування над такими прототипами неможливі без попередніх розрахунків або, принаймні, ескізів. На сьогодні є велика кількість доступного програмного забезпечення, котре допомагає виконувати моделювання різноманітних механізмів - в тому числі і роботів - без зайвих ресурсних та часових затрат. Одним з таких програмних забезпечень є пакет прикладних програм MATLAB разом з інтерактивним інструментом Simulink.
В даній статті для досліджень була взята вже готова авторська модель, яку розробив Sebastian Castro (надалі - «автор») у середовищі MATLAB R2017a [4]. Запропонована автором модель реалізована з використанням спеціальної бібліотеки Simscape Multibody, яка входить до пакету Simulink, і котра надає можливість моделювати різноманітні механічні 3D системи.
Авторська модель являє собою простий двоногий крокуючий робот із шістьома степенями свободи: дві для стоп, дві для гомілкових сегментів, дві для стегнових сегментів. Він має висоту 28 см, вага складає 0.6273 кг, здатний відтворювати рухи нижніх кінцівок людини та ходити прямолінійно відповідно до заданого початкового напрямку. Авторська модель крокуючого робота є гарною основою для її подальшої модернізації під задачу виявлення та обходження перешкод на шляху робота.
Найбільш лаконічно авторський робот зображений на рис. 1.
Рис. 1. Авторський крокуючий двоногий робот у середовищі Simulink
На рис. 1 чорно-білі кола - центри мас блоків, зеленим кольором позначено вісь Y (відповідає за ширину складових робота та ширину дороги), червоним - вісь X (відповідає за довжину дороги та складових робота), синім - вісь Z (відповідає за висоту). Маючи шість степенів свободи, робот має можливість здійснювати згинання стопи, коліна і стегна на лівій нозі та на правій. Це забезпечується можливістю відхилення кожного з цих трьох сегментів ноги відносно вісі Х на 180° - від -90° до 90° відносно початкової позиції з використанням блоків Rigid Transform бібліотеки Simscape Multibody.
Стопи робота мають у чотирьох кутах реалізовані контактні сили, котрі визначають взаємодію стоп робота з поверхнею, опираючись на яку він рухається.
Робот рухається за рахунок подання кожної 0.1333 секунди значень кутів на приводи стоп, колін та стегон з використанням блоків Repeating Table. Повний цикл ходьби робота триває 0.8 секунд, після чого він повторюється, доки робот з якихось причин не впаде, або доки час моделювання не припиниться. Спочатку значення кутів подаються на праву ногу, а через 0.4 секунди на ліву, що дозволяє ногам рухатися почергово, виконуючи рівномірне перенесення ваги. За перетворення прийнятих значень кутів у відповідні керуючі сигнали для запуску виконавчих механізмів відповідає Simulink-блок Revolute Joint. Процес ходьби авторського робота зображено на рис 2.
Рис. 2. Ходьба авторського робота у Simulink
Також, автор реалізував виведення інформації щодо певних параметрів робота у вигляді графіків: залежність кута стоп, колін та стегон від часу, пройдена роботом відстань, кутова швидкість, висота торсу робота над поверхнею.
Головна задача, котру вирішує авторська модель - переміщення робота у просторі подібно до паттерну переміщення людини. Мета модернізації моделі полягає у підвищенні функціональних можливостей робота, а саме - у наданні роботові можливості обходити перешкоди за їх наявності.
двоногий робот matlab ходьба
Шляхи та результати модернізації моделі крокуючого робота
На шляху до досягнення мети модернізації були виконані наступні кроки:
1. Зміна розрахунку інерції частин робота зі щільності на кілограми. До цього інерція сегментів нижніх кінцівок робота розраховувалася на основі щільності (кг/м3), що було незручно для обчислення такого параметру робота, як вага. Також, відомо, що двоногих роботів досить важко врівноважити у порівнянні з тими самими триногими або шестиногими екземплярами [5]. Вага модернізованого робота складає 172 кг. Така величина зумовлена тим, що робот має досить важкий торс у порівнянні з масою ніг, а тому збереження малої ваги ніг при переміщенні викликало б різку втрату рівноваги робота, що неминуче призводило б до його падіння. Для компенсації такого явища вага кожної стопи була прирівняна до 60 кг, при цьому гомілки та стегна - по 8 кг. Якщо казати про втілення даної моделі в реальності, то немає необхідності створювати такі важкі стопи - це лише найпростіша варіація усунення проблеми високої інерційності робота при віртуальному моделюванні, а у житті різні, наприклад, гідравлічні механізми можуть утримувати баланс робота.
2. Зміна розмірів робота на такі, що наближені до людини. Нові розміри складових робота (висота, вісь Z): стегна - 38 см, гомілки - 40 см, торс - 32 см. Дані розміри стегон та гомілок відповідають людині, чий зріст дорівнює 175 см.
3. Зміна параметрів взаємодії робота з поверхнею (вище згадані контактні сили).
4. Реалізація додаткової мобільності робота за рахунок впровадження додаткових 6-ти степенів свободи робота шляхом додавання можливості відхилення стегон відносно вісі Y, відхилення стоп відносно осей Y та Z. Результуюча модель має 12 степенів свободи. Таким чином, модернізована модель містить більш наближену до людини кількість степенів свободи [6].
5. Написання скрипту, котрий показує швидкість руху робота у кожний момент часу, а також підраховує середню швидкість робота.
6. Додавання перешкоди на шляху робота - паралелепіпед з розмірами 40 х 80 х 16 см.
7. Реалізація виявлення роботом перешкоди та її уникнення зі збереженням початкового напрямку руху (вздовж осі Х).
Зупинимося детальніше на 7-му пункті. Його ядром є два блоки - Transform Sensor та Compare to Constant. Перший блок дозволяє аналізувати відстань між роботом та перешкодою, а другий - при виявленні достатнього зближення із перешкодою (тут - 1.3 м) перейти до відповідного реагування, яке детальніше буде розглядатися.
На рис. 3 зображена ділянка схеми, котра відповідає за просторове відображення перешкоди та її виявлення модернізованим роботом. Червоним виділенням позначена перешкода та чотири блоки, котрі відповідають за її просторове положення. Синім позначена ділянка, що аналізує відстань між роботом та перешкодою, а зеленим - детектор близькості до перешкоди.
Рис. 3. Ділянка схеми у Simulink, котра відповідає за відображення перешкоди та її виявлення роботом
Після того, як буде виявлена близькість до перешкоди, робот переходить у короткий стан групування і рухається ліворуч, доки не вийде із зони детектування перешкоди, після чого продовжить рухатися вперед. Логіка обходу роботом перешкод продемонстрована на рис. 4 та рис. 5.
Відповідно до рис. 4 та рис. 5, алгоритм ходьби робота наступний:
Рис. 4. Ділянка, що відповідає за логіку переміщення робота при виявленні перешкоди 1
Рис. 5. Продовження ділянки з рис. 4
1. На початку моделювання робот групується (Grouping) - займає позицію із зігнутими стопами, колінами та стегнами (-15°, 30°, -30° відповідно). Це триває 0.5 с і необхідно для кращої стійкості та рівноваги робота.
2. Робот виходить зі стану групування і починає йти вперед (Walking Forward).
3. Як тільки прив'язаний до перешкоди Transform Sensor фіксує відстань, що менша або дорівнює 1.3 м, робот знову переходить до стану Grouping на 0.2 с, після чого починає рухатися ліворуч, користуючись можливостями, що надають 12 степенів свободи (Side Walking).
4. Коли робот покидає діапазон перешкоди - 1.3 м, він виходить зі стану Side Walking і переходить до Walking Forward, продовжуючи рух вперед.
Даний алгоритм реалізовано у середовищі Simulink переважно за рахунок блоків Switch, Delay та Repeating Table. На рис. 4 та рис. 5 можна знайти детальніший опис щодо того, як працює той чи інший блок і за що кожен відповідає. Результати моделювання на рис. 6.
Рис. 6. Відпрацювання модернізованої моделі з крокуючим роботом, котрий обходить перешкоди (з позначеною послідовністю): 1 - робот прийняв позу Grouping, 2 - робот йде (Walking Forward), 3 - робот помітив перешкоду і прийняв позу Grouping, 4 та 5 - робот обходить перешкоду (Side Walking), 6 - робот закінчив обхід та йде прямолінійно (Walking Forward)
На рис. 7 зображено відпрацювання скрипту, що згадувався у пункті 5 під час переліку нововведень моделі.
Як видно з рисунку 7, різка зміна коливань на графіку зумовлена тим, що робот розпізнав перешкоду та почав її обходити. Покази графіку стали стабільнішими у момент, коли робот успішно обійшов перешкоду та продовжив рух відповідно до заданого початкового напряму. При цьому середня швидкість робота становить приблизно 0.27 м/с.
Рис. 7. Графік швидкості робота у кожен момент часу та повідомлення про обчислену середню швидкість робота
Висновки
У статті запропоновано нові функціональні можливості вже існуючої моделі двоногого крокуючого робота. Головні досягнення модернізованої моделі - вміння робота уникати зіткнення з перешкодами, а також володіння вагою та розмірами, що наближені до людських параметрів - мають види на використання робота у небезпечних для людини середовищах з різноманітними перешкодами. Дослідження модернізованої моделі крокуючого робота у MATLAB/Simulink, а також синтезований графік швидкості показали, що робот повністю виконує свою місію.
Література
1. Двуногие ходящие роботы.
2. Обзор: шагающие роботы | Triol.
3. Wettergreen D. Robotic walking in natural terrain. Gait planning and behavior- based control for statically-stable walking robots : дис. докт. филос. наук / D. Wettergreen - Pittsburgh PA, 1995. - 134 p.
4. MATLAB and Simulink Robotics Arena: Walking Robot - File Exchange - MATLAB Central.
5. Brдunl T. Embedded Robotics: Mobile Robot Design and Application with Embedded Systems, 3rd Ed. / T. Brдunl - New York: Springer Publishing, 2008. - P. 165-184.
6. Замараев В.А., Година Е.З., Никитюк Д.Б. Анатомия для студентов физкультурных вузов и факультетов: учебник и практикум для академического бакалавриата / В.А. Замараев, Е.З. Година, Д.Б. Никитюк. - М.: Издательство Юрайт, 2019. - 416 с.
Размещено на Allbest.ru
...Подобные документы
Середовище програмування Visual Studio 2010. Функції стандартного введення-виведення. Робота з побітовими операціями. Робота з функцією заміни у рядку символів. Робота з масивами. Тестування алгоритму роботи програми. Представлення двовимірного масиву.
курсовая работа [652,2 K], добавлен 15.01.2014Тривимірна модель мобільного робота. Алгоритмізація моделі та її програмної реалізації з використанням бібліотек MFC та OpenGL. Розробка програмного забезпечення. Середовище розробки проекту Microsoft Visual Studio 2010. Керування рухами маніпулятора.
курсовая работа [462,9 K], добавлен 03.04.2014Порядок та основні принципи створення електронних баз даних за допомогою табличного редактора Мicrosoft Еxcel, його властивості, оцінка можливостей. Робота з записами в базі даних, операції над ними. Методика сортування бази даних в Мicrosoft Еxcel.
курсовая работа [2,8 M], добавлен 07.10.2010Знайомство з інтерфейсом ОС Linux, робота з довідковою системою Linux. Робота з утилітами командного рядка. Символічні посилання та архівація даних. Пошук файлів за критеріями. Робота з програмою Midnight Commander. Використання офісних додатків.
методичка [396,5 K], добавлен 17.05.2011Призначення, принцип дії та класифікація антивірусних програм, робота в їх середовищі. Записування інформації на оптичні носії. Послідовність процесу копіювання дисків. Етапи форматування жорстких магнітних дисків. Робота програми Nero StartSmart.
презентация [1,3 M], добавлен 25.12.2014Порядок и назначение разработки подсистемы планирования действий интеллектуального робота. Задачи, решаемые данной подсистемой и функциональные требования к ней. Информационное моделирование функционирования интеллектуального робота и управление им.
дипломная работа [864,0 K], добавлен 10.06.2010Назначение, технические характеристики промышленного робота МП20. Режимы работы робота и кинематическая схема. Приводные электродвигатели. Элементы электроавтоматики. Алгоритм управления следящим цифроаналоговым приводом. Интерфейс станочной магистрали.
курсовая работа [1,7 M], добавлен 15.04.2013Прямая и обратная задача кинематики и позиционирования захвата манипуляционного робота. Разработка алгоритмов и решений, позволяющих организовать процесс нанесения рисунков на поверхность изделия при помощи робота-манипулятора FS03N фирмы Kawasaki.
дипломная работа [4,1 M], добавлен 17.09.2013Обзор схемы конструкции автоматизированного мобильного робота. Выбор компонентов конструкции. Общая классификация роботов; виды двигателей. Выбор типа микроконтроллера. Осуществление программирования на основе расчётов по математической модели робота.
курсовая работа [1,2 M], добавлен 20.05.2015Створення алгоритму програмної моделі розкладу в учбовому закладі для ефективного вирішення завдань автоматичного складання розкладу, шляхом підбору найбільш оптимальних варіантів. Шляхи реалізації розробленого алгоритму в середовищі Mathemetica 5.0.
дипломная работа [5,0 M], добавлен 25.10.2012Засоби доступу до БД в середовищі Lazarus. Створення і робота з таблицями за допомогою DBase. Набір візуальних компонентів LCL в Lazarus. Основні переваги останньої версії InterBase. Основи створення нової таблиці бази даних програмного забезпечення.
курсовая работа [49,5 K], добавлен 23.11.2010Загальні відомості про електронні таблиці. Призначення електронних таблиць. Завантаження електронних таблиць. Елементи вікна Excel. Робота з книгами. Введення та відображення даних. Редагування даних. Формули і функції.
курсовая работа [59,9 K], добавлен 28.03.2004Составление программы для построения траектории движения захвата манипулятора робота: запись системы линейных алгебраических уравнений, получение коэффициентов. Анимация движения манипулятора. Схема направления движения точки соединения звеньев робота.
лабораторная работа [274,4 K], добавлен 01.12.2013Методи чисельного розв'язання рівнянь. Рух тіла у в’язкому середовищі. В'язкість (внутрішнє тертя) і в'язкопружність. Метод Рунге-Кутти четвертого порядку. Функції та макроси вводу та виводу даних у стилі мови програмування Сі. Параметри фізичної моделі.
курсовая работа [947,5 K], добавлен 23.08.2014Робота зі сторінками, абзацами та текстом у Microsoft Word, використання таблиць замість символів табуляції, робота з формулами та малюнками. Робота з Microsoft Excel, використання статистичних функцій, вирішення рівнянь, створення адресної книги.
контрольная работа [1,6 M], добавлен 21.04.2011Аналіз існуючих методів оцінки конкурентноспроможності підприємства. Процес навчання нечіткої експертної системи. Модель комлексної оцінки конкурентоспроможності страхової компанії методом візуального моделювання пакету Simulink середовища Matlab.
дипломная работа [2,0 M], добавлен 27.05.2014Аналіз параметрів та характеристик аудіо та відео кодеків. Аналіз параметрів протоколів сигналізації медіатрафіку та мережного рівня медіа систем. Вербальні моделі взаємодії відкритих систем. Математичні моделі процесів інкапсуляції та передачі даних.
курсовая работа [573,9 K], добавлен 22.03.2015Робота з рисунками і таблицями в текстовому редакторі. Робота з вікном MS Word "Сохранить как". Обчислення в електронних таблицях. Використання засобу "Поиск решения" в MS Excel. Створення типових документів. Розробка web-сторінки "Оптовий магазин".
контрольная работа [688,6 K], добавлен 17.11.2010Призначення пакету Forecast Expert, його використання для прогнозування однофакторної залежності та оцінка її довірчого інтервалу. Створення фінансової моделі підприємства за допомогою Project Expert. Практична робота з програмою "Бізнес-прогноз 2.0".
контрольная работа [1,7 M], добавлен 24.05.2009Програма на мові програмування С++. Аналіз стану технологій програмування та обґрунтування теми. Розробка програми виконання завдання, методу вирішення задачі. Робота з файлами, обробка числової інформації і робота з графікою. Розробка програми меню.
курсовая работа [41,0 K], добавлен 17.02.2009