SlideShare a Scribd company logo
1 of 12
БАКАЛАВРСКАЯ РАБОТА
Тема: разработка программных средств для эмуляции
работы робота-манипулятора
Работу выполнил: студент Щербаков А.А.
Руководитель: ст.преп.к.т.н. Кипяткова И.С.
1. Цель и задачи работы
Цель работы: разработка программных средств для
эмуляции работы роботов-манипуляторов, позволяющих
упростить процесс проектирования и внедрения, а значит и
снизить стоимость манипулятора и обучения персонала
Задачи дипломной работы:
• анализ аналогичных программных решений;
• разработка структурной схемы программных средств;
• разработка архитектуры приложения эмулятора;
• разработка приложения эмулятора;
• тестирование приложения эмулятора.
3. Объект и предмет исследования
Предмет исследования: система работы робота-манипулятор
Объект исследования: робот-манипулятор
4. Актуальность исследования
0
50
100
150
200
250
300
Тысячед.
Год
Динамика изменения объёма мировых поставок промышленных манипуляторов
5. Анализ приложений с аналогичным
требуемому функционалом
GazeboV-REP
WebotsMorze
6. Выбор технологий реализации
Платформа: веб-браузер
Язык программирования: JavaScript
Визуализация: WebGL
Пользовательский интерфейс: HTML5, CSS3
Фреймворк: Blend4Web
Пример пользовательского интерфейса:
7. Архитектура эмулятора
Вычисления
F.A.B.R.I.K.
Angles
Blend4Web
Обработка
графики
Модуль
вычислений
Manipulator
Arm
Nodes
GUI
Fingers
TargetPoint
forwardKinematic
ProblemSolver
8. Режимы работы эмулятора
Начало
Задание
углов
Прямая задача
кинематики
Поворот звеньев
Конец
Начало
Задание точки
Решение обратной
задачи кинематики
Вычисление углов
Конец
Поворот звеньев на
заданный
фиксированный угол
Массив точек
Перестроение звеньев для
достижения заданной точки
точка
а – алгоритм управляющей программы: «Перестроение
звеньев для достижения заранее заданной точке»
б – алгоритм: «Поворот звеньев на заданный
фиксированный угол»
а)
б)
в)
- презентация манипулятора
- обратная задача кинематики
- прямая задача кинематики
в – принцип работы
демонстрационной программы
9. Тестирование. Тест-кейсы
Тест-кейсы
Название Статус прохождения
Импорт модели Успешно
Идентификация Неудачно
Прямая задача кинематики Успешно
Обратная задача
кинематики
Успешно
10. Тестирование. Профилирование
Профилирование по времени исполнения
Профиль Временя, мс
Время выполнение демонстрация 12462
Время выполнения прямая задача кинематики 77,62
Время выполнения «обратная задача кинематики» 80,67
Эталонное измерение 74,47
Профилирование по потребляемой памяти
Профиль Память, мб
Потребляемая память - демонстрация 62.11
Потребляемая память - прямая задача кинематики 61.9
Потребляемая память - обратная задача кинематики 62
Эталонное измерение 61.14
11. Заключение
Исходный код приложения: https://github.com/akaguny/crane3d
Бета версия приложения: http://akaguny.github.io/crane3d/
Для упрощения внедрения и проектирования манипуляторов был
разработан эмулятор манипулятора.
В ходе разработки были выполнены:
• анализ существующих программных средств;
• выбор средств реализации;
• оптимизация времени разработки;
• разработка архитектуры;
• тестирование приложения эмулятора.
Рекомендации по дальнейшей разработке:
• уменьшить время выполнения демонстрационного режима за
счёт использования анимации вместо динамического просчёта
траектории и решения обратной задачи кинематики
Спасибо за внимание!

More Related Content

Similar to Разработка программных средств для эмуляции работы робота-манипулятора

диплом
дипломдиплом
дипломgoloveyko
 
Тестирование программно-реализованных логических контроллеров типа SoftPLC
Тестирование программно-реализованных логических контроллеров типа SoftPLCТестирование программно-реализованных логических контроллеров типа SoftPLC
Тестирование программно-реализованных логических контроллеров типа SoftPLCNikita Shapovalov
 
Кондратюк т.а. построение концептуальной модели заданной функциональности
Кондратюк т.а. построение концептуальной модели заданной функциональностиКондратюк т.а. построение концептуальной модели заданной функциональности
Кондратюк т.а. построение концептуальной модели заданной функциональностиLita Ford
 
презентация (сухачев и аверьянова)
презентация (сухачев и аверьянова)презентация (сухачев и аверьянова)
презентация (сухачев и аверьянова)ISUIA
 
Инструмент для разработки эл. курсов Course lab. WebSoft
Инструмент для разработки эл. курсов Course lab. WebSoftИнструмент для разработки эл. курсов Course lab. WebSoft
Инструмент для разработки эл. курсов Course lab. WebSoftСообщество eLearning PRO
 
Алексей Иванов -- курс по стыку системной и программной инженерий
Алексей Иванов -- курс по стыку системной и программной инженерийАлексей Иванов -- курс по стыку системной и программной инженерий
Алексей Иванов -- курс по стыку системной и программной инженерийAnatoly Levenchuk
 
презентация
презентация презентация
презентация ISUIA
 
Лабораторные практические работы
Лабораторные практические работыЛабораторные практические работы
Лабораторные практические работыRauan Ibraikhan
 
положение об отделе ю
положение об отделе юположение об отделе ю
положение об отделе юNika Stuard
 
First click тестирование. История одного теста.
First click тестирование. История одного теста.First click тестирование. История одного теста.
First click тестирование. История одного теста.Дмитрий Силаев
 
C# Web. Занятие 09.
C# Web. Занятие 09.C# Web. Занятие 09.
C# Web. Занятие 09.Igor Shkulipa
 
рп по пр практике вт
рп по пр практике втрп по пр практике вт
рп по пр практике втAnastasia Snegina
 
рп по пр практике вт
рп по пр практике втрп по пр практике вт
рп по пр практике втAnastasia Snegina
 
Автоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложенийАвтоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложенийТранслируем.бел
 
Анна Книжник
Анна КнижникАнна Книжник
Анна КнижникSQALab
 
Mva stf module 1 - rus
Mva stf module 1 - rusMva stf module 1 - rus
Mva stf module 1 - rusMaxim Shaptala
 
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?sqadays8
 

Similar to Разработка программных средств для эмуляции работы робота-манипулятора (20)

Java 2 - Java Intro
Java 2 - Java IntroJava 2 - Java Intro
Java 2 - Java Intro
 
диплом
дипломдиплом
диплом
 
Java 1 - Java Fund
Java 1 - Java FundJava 1 - Java Fund
Java 1 - Java Fund
 
Тестирование программно-реализованных логических контроллеров типа SoftPLC
Тестирование программно-реализованных логических контроллеров типа SoftPLCТестирование программно-реализованных логических контроллеров типа SoftPLC
Тестирование программно-реализованных логических контроллеров типа SoftPLC
 
Кондратюк т.а. построение концептуальной модели заданной функциональности
Кондратюк т.а. построение концептуальной модели заданной функциональностиКондратюк т.а. построение концептуальной модели заданной функциональности
Кондратюк т.а. построение концептуальной модели заданной функциональности
 
презентация (сухачев и аверьянова)
презентация (сухачев и аверьянова)презентация (сухачев и аверьянова)
презентация (сухачев и аверьянова)
 
Инструмент для разработки эл. курсов Course lab. WebSoft
Инструмент для разработки эл. курсов Course lab. WebSoftИнструмент для разработки эл. курсов Course lab. WebSoft
Инструмент для разработки эл. курсов Course lab. WebSoft
 
Алексей Иванов -- курс по стыку системной и программной инженерий
Алексей Иванов -- курс по стыку системной и программной инженерийАлексей Иванов -- курс по стыку системной и программной инженерий
Алексей Иванов -- курс по стыку системной и программной инженерий
 
презентация
презентация презентация
презентация
 
Лабораторные практические работы
Лабораторные практические работыЛабораторные практические работы
Лабораторные практические работы
 
положение об отделе ю
положение об отделе юположение об отделе ю
положение об отделе ю
 
First click тестирование. История одного теста.
First click тестирование. История одного теста.First click тестирование. История одного теста.
First click тестирование. История одного теста.
 
C# Web. Занятие 09.
C# Web. Занятие 09.C# Web. Занятие 09.
C# Web. Занятие 09.
 
2012 Мухаметшин Р.Р. http://vlavrov.professorjournal.ru/
2012 Мухаметшин Р.Р. http://vlavrov.professorjournal.ru/2012 Мухаметшин Р.Р. http://vlavrov.professorjournal.ru/
2012 Мухаметшин Р.Р. http://vlavrov.professorjournal.ru/
 
рп по пр практике вт
рп по пр практике втрп по пр практике вт
рп по пр практике вт
 
рп по пр практике вт
рп по пр практике втрп по пр практике вт
рп по пр практике вт
 
Автоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложенийАвтоматизированное тестирование мобильных приложений
Автоматизированное тестирование мобильных приложений
 
Анна Книжник
Анна КнижникАнна Книжник
Анна Книжник
 
Mva stf module 1 - rus
Mva stf module 1 - rusMva stf module 1 - rus
Mva stf module 1 - rus
 
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
 

Разработка программных средств для эмуляции работы робота-манипулятора

  • 1. БАКАЛАВРСКАЯ РАБОТА Тема: разработка программных средств для эмуляции работы робота-манипулятора Работу выполнил: студент Щербаков А.А. Руководитель: ст.преп.к.т.н. Кипяткова И.С.
  • 2. 1. Цель и задачи работы Цель работы: разработка программных средств для эмуляции работы роботов-манипуляторов, позволяющих упростить процесс проектирования и внедрения, а значит и снизить стоимость манипулятора и обучения персонала Задачи дипломной работы: • анализ аналогичных программных решений; • разработка структурной схемы программных средств; • разработка архитектуры приложения эмулятора; • разработка приложения эмулятора; • тестирование приложения эмулятора.
  • 3. 3. Объект и предмет исследования Предмет исследования: система работы робота-манипулятор Объект исследования: робот-манипулятор
  • 4. 4. Актуальность исследования 0 50 100 150 200 250 300 Тысячед. Год Динамика изменения объёма мировых поставок промышленных манипуляторов
  • 5. 5. Анализ приложений с аналогичным требуемому функционалом GazeboV-REP WebotsMorze
  • 6. 6. Выбор технологий реализации Платформа: веб-браузер Язык программирования: JavaScript Визуализация: WebGL Пользовательский интерфейс: HTML5, CSS3 Фреймворк: Blend4Web Пример пользовательского интерфейса:
  • 8. 8. Режимы работы эмулятора Начало Задание углов Прямая задача кинематики Поворот звеньев Конец Начало Задание точки Решение обратной задачи кинематики Вычисление углов Конец Поворот звеньев на заданный фиксированный угол Массив точек Перестроение звеньев для достижения заданной точки точка а – алгоритм управляющей программы: «Перестроение звеньев для достижения заранее заданной точке» б – алгоритм: «Поворот звеньев на заданный фиксированный угол» а) б) в) - презентация манипулятора - обратная задача кинематики - прямая задача кинематики в – принцип работы демонстрационной программы
  • 9. 9. Тестирование. Тест-кейсы Тест-кейсы Название Статус прохождения Импорт модели Успешно Идентификация Неудачно Прямая задача кинематики Успешно Обратная задача кинематики Успешно
  • 10. 10. Тестирование. Профилирование Профилирование по времени исполнения Профиль Временя, мс Время выполнение демонстрация 12462 Время выполнения прямая задача кинематики 77,62 Время выполнения «обратная задача кинематики» 80,67 Эталонное измерение 74,47 Профилирование по потребляемой памяти Профиль Память, мб Потребляемая память - демонстрация 62.11 Потребляемая память - прямая задача кинематики 61.9 Потребляемая память - обратная задача кинематики 62 Эталонное измерение 61.14
  • 11. 11. Заключение Исходный код приложения: https://github.com/akaguny/crane3d Бета версия приложения: http://akaguny.github.io/crane3d/ Для упрощения внедрения и проектирования манипуляторов был разработан эмулятор манипулятора. В ходе разработки были выполнены: • анализ существующих программных средств; • выбор средств реализации; • оптимизация времени разработки; • разработка архитектуры; • тестирование приложения эмулятора. Рекомендации по дальнейшей разработке: • уменьшить время выполнения демонстрационного режима за счёт использования анимации вместо динамического просчёта траектории и решения обратной задачи кинематики

Editor's Notes

  1. Здравствуйте уважаемые члены и председатель государственной аттестационной комиссии. Представляю Вашему вниманию выпускную квалификационную работу на тему: “Разработка программных средств эмуляции работы робота-манипулятора”. Работу выполнил студент Щербаков А.А. Руководитель ст.преп.к.т.н. И.С.Кипяткова
  2. Целью работы является разработка программных средств для эмуляции работы роботов-манипуляторов, позволяющая упростить процесс проектирования и внедрения, а значит и снизить стоимость манипулятора и обучения персонала. В задачи дипломной работы входит: - анализ аналогичных программных решений, выявление преимуществ и недостатков используемых технологий; - разработка структурной схемы программных средств; - разработка архитектуры приложения эмулятора; - разработка приложения эмулятора; - тестирование приложения эмулятора.
  3. Объектом исследования является робот-манипулятор Предмет исследования система работы робота-манипулятор
  4. Актуальность исследования объясняется темпами распространения роботов-манипуляторов. За последние 13 лет поставки роботов-манипуляторов выросли с 80 тысяч единиц в 2002 году до 240 тысяч единиц в 2015. Согласно закону спроса годовой рост поставок может быть увеличен за счёт понижения стоимости робота-манипулятора. Обобщённо стоимость манипулятора складывается из стоимости: разработки; Производства; Обучения; и внедрения робота-манипулятора; Разработка программных средств эмуляции работы робота-манипулятора может способствовать снижению стоимости проектирования, входящего в этапы производства а также снижению стоимости обучения персонала работе с новыми видами роботов-манипуляторов, которое входит в мероприятия по внедрению роботов-манипуляторов. Помимо выгод для производства программные средства эмуляции роботов манипуляторов могут быть использованы в образовании и медицине.
  5. В качестве входных данных для анализа приложений с аналогичным функционалом были выбраны популярные эмуляторы V-REP, Webots, MORSE и Gazebo. В результате анализа были выявлены следующие преимущества и недостатки: Все перечисленные эмуляторы позволяют моделировать и взаимодействовать с моделями роботов-манипуляторов различных производителей, кроссплатформенны, и позволяют моделировать роботов различных типов и поколений, при этом большинство из них распространяются по одной из свободных лицензий. Однако универсальность данных приложений ведёт за собой усложнение взаимодействия пользователя с ними. Также недостатком является необходимость установки программного обеспечения на компьютер и отсутствие возможности работы с мобильных платформ, таких как планшеты.
  6. Исходя из требований был выбран веб-браузер в качестве платформы, javascript стандарта Esmascript5 в качестве языка программирования, WebGL для визуализации трёхмерной графики, пользовательский интерфейс на HTML5 и CSS 3 Для сокращения времени на разработку приложения используется средство быстрой разработки - фреймворк. В ходе дипломной работы были рассмотрены варианты, такие как Babylon, Unity3D, TreeJS и другие и выбран фреймворк отечественной разработки Blend4web
  7. В ходе выполнения дипломной работы за несколько итераций была разработана и дополнена архитектура, спроектированная с использованием объектно-ориентированного подхода. На слайде представлена структурная схема архитектуры приложения, структурные единицы которой реализованы как классы и совокупности классов. Исследование “РАЗРАБОТКА АРХИТЕКТУРЫ ПРОГРАММНОГО КОМПЛЕКСА ДЛЯ ЭМУЛЯЦИИ РАБОТЫ РОБОТА-МАНИПУЛЯТОРА” была представлена на молодёжной сессии конференции “Завалишенские чтения” и опубликована в сборнике “Завалишенские чтения”16
  8. Разработанное программное обеспечение имеет 3 режима работы: демонстрация управляющей программы; поворот звеньев на заданный, фиксированный угол; перестроение звеньев манипулятора для достижения заранее заданной точки. Демонстрационная управляющая программа итеративно запускает управляющую программу перестроение звеньев для достижения заданной точки, на каждой итерации задавая новое положение заданной точки в пространстве. блок-схема алгоритма работ Управляющая программа “поворот звеньев на заданный угол позволяет задать положение схвата за счёт ввода углов поворота звеньев, использую решение обратной задачи кинематики. блок-схема алгоритма работ Управляющая программа “перестроение звеньев манипулятора для достижения заданной точки” решает обратную задачу кинематики и переориентирует звенья в соответствии с результатом блок-схема алгоритма работ
  9. Для объективной оценки разработанных программных средств был составлен комплект тест-кейсов, каждый из которых предназначен для тестирования отдельных функций функционала, располагаемого приложением. Также выполнено профилирование времени и памяти на выполнение управляющих программ. Также выполнено профилирование времени и памяти на выполнение управляющих программ.
  10. Профилирование выполнено в браузере с помощью Firefox Средства для разработчика
  11. В результате выполнения дипломной работы было выполнено несколько итераций разработки в результате которых разработано опытное приложения. Как следует из результатов тестов, разработанное приложение реализует базовый функционал для данного этапа разработки. При дальнейшей разработке необходимо учесть результаты кейс-тестирования реализовав возможность более полной идентификации манипулятора на основе 3D модели, а также как следует из результатов профилирования необходимо изменить механизм работы управляющей программы.
  12. В результате выполнения дипломной работы было выполнено несколько итераций разработки в результате которых разработано опытное приложения. Как следует из результатов тестов, разработанное приложение реализует базовый функционал для данного этапа разработки. При дальнейшей разработке необходимо учесть результаты кейс-тестирования реализовав возможность более полной идентификации манипулятора на основе 3D модели, а также как следует из результатов профилирования необходимо изменить механизм работы управляющей программы.