В настоящее время наиболее востребованным методом познавательного развития школьников является проектный метод. В соответствии с ФГОС обучение проектной деятельности должно происходить как обучение универсальному умению. В ходе выполнения проекта учащийся приобретает умение правильно организовать свою работу, ставить задачи, составлять план работы, проводить поиск информации. Проектная деятельность «признана наиболее эффективным способом построения образования, направленного на развитие активной личности» [1]. Для привлечения учащихся к активной научно-исследовательской деятельности в Республике Саха (Якутия) ежегодно проводятся научно-практические конференции. В школах занятие учащихся проектной деятельностью всячески поощряется. Но организация проектной деятельности в области робототехники в рамках школы затруднена как из-за недостаточности материальной базы и нехватки специалистов, так и по причине сложности планирования времени и отсутствия требующихся ресурсов. Также неуклонно повышаются требования научно-практических конференций к работам в плане новизны, актуальности и качества реализации. Для достижения высоких результатов школа подыскивает руководителей для старшеклассников в сторонних организациях, в том числе в вузах. Самыми сложными моментами для привлеченного со стороны руководителя являются организация совместной практической работы со школьником и обеспечение безопасности при самостоятельной работе ученика с робототехническим оборудованием.
Предмет робототехники — это создание и применение роботов и других средств робототехники различного назначения. Возникнув на основе кибернетики и механики, робототехника, в свою очередь, породила новые направления развития и самих этих наук. Для кибернетики это связано, прежде всего, с интеллектуальным управлением, которое требуется для роботов, а для механики – с многозвенными механизмами типа манипуляторов [2].
Важнейшими элементами современной робототехники являются компьютерное зрение, глубокое машинное обучение, расчет кинематики многозвенного манипулятора. Для приобретения навыков по компьютерному зрению и глубокому машинному обучению достаточно иметь обычные компьютеры, но для того, чтобы научиться писать программы с математическим решением задачи обратной кинематики, необходимо иметь манипулятор. В случае отсутствия промышленного манипулятора можно разработать собственный многозвенный манипулятор из доступных общеобразовательным организациям аппаратных компонентов. Как правило, обычные промышленные манипуляторы обладают пятью-шестью степенями подвижности. Однако часто встречаются роботы, имеющие менее четырех степеней подвижности. Их популярность обусловлена простотой использования и надежностью эксплуатации в условиях реального производства [3]. Управление такими столь сложными механизмами, как многозвенные манипуляторы, – дело очень сложное. При выполнении вроде бы простейшей операции – перемещении захватного устройства многозвенного манипулятора из точки А в точку В – для расчета управляющей программе требуется выполнить большой объем сложных вычислений [4].
Робот может иметь также подсистему компьютерного зрения. Компьютерное зрение объединяет множество методов работы с изображениями. Видеоинформация с камер обрабатывается какой-либо программой. Чтобы не писать код с нуля, программист может применить готовые программные решения. В данной работе используем библиотеку OpenCV (от англ. Open Source Computer Vision Library). Она предоставляется бесплатно как для учебных целей, так и для коммерческого использования. OpenCV – это библиотека алгоритмов компьютерного зрения с открытым исходным кодом. Типичными задачами компьютерного зрения являются обнаружение, отслеживание и классификация объектов. В OpenCV реализовано большое количество алгоритмов для обработки изображений и компьютерного зрения [5].
Авторами в статье описывается работа ученика одиннадцатого класса по созданию робототехнического комплекса, распознающего посредством компьютерного зрения определенные предметы и передвигающего эти предметы самодельным манипулятором. Такой достаточно сложный проект был выбран по причине того, что школьник, начав заниматься в кружках робототехники с третьего класса, имел большой опыт успешного участия в научно-практических конференциях и командных соревнованиях по спортивной робототехнике. Также было желание перейти от разработки типовых роботов, которые встречаются в большинстве программ дополнительного образования школьников, к разработке более сложного комплекса, который стал бы первым шагом к созданию человекоподобного робота.
Цель исследования – организация проектной деятельности школьника по разработке реальной модели многозвенного манипулятора, управляемой программно, и подсистемы компьютерного зрения, поставляющего координаты обнаруживаемых предметов.
Материал и методы исследования
Методы исследования эмпирические: наблюдение, описание, эксперимент, измерения.
Методы работы школьника над проектом были в основном эмпирические: наблюдение, эксперименты, измерения. Также применялся анализ собранных данных, измерений.
После анализа наличного оборудования, накопленного опыта и будущих перспектив перед школьником была поставлена следующая цель: разработка робототехнического комплекса, состоящего из манипулятора, из подсистемы распознавания прозрачных стаканов и подсистемы управления самодельным многозвенным манипулятором.
Для достижения цели необходимо решить следующие задачи:
1) сборка многозвенного манипулятора с захватом, который манипулирует стаканом с жидкостью общей массой до 200 г;
2) разработка программной подсистемы управления манипулятором;
3) разработка программной подсистемы распознавания прозрачных стаканов и распознавания наполненности стаканов определенным материалом;
4) обеспечение взаимодействия обеих подсистем через wi-fi-сеть и USB.
Поскольку проект имеет большую сложность и состоит из двух разных подсистем, работа над ним проводилась в несколько этапов: сбор и анализ информации по самодельным манипуляторам, сборка манипулятора, анализ измерений, переделка манипулятора, разработка подсистемы управления манипулятором, сбор и анализ информации по распознаванию образов, мозговой штурм по способам распознавания выбранного объекта, разработка подсистемы распознавания объекта, интеграция обеих подсистем в один комплекс, модернизация подсистемы распознавания объекта.
Необходимые серводвигатели и механизмы подбирали опытным путем. В качестве основной элементной базы для создания манипулятора был выбран робототехнический набор Pitsco TETRIX® Max. Для управления серводвигателями был применен имеющийся в этом наборе модуль HiTechnics Servo Controller for TETRIX. Модуль HiTechnic подключается к контроллеру LEGO® MINDSTORMS EV3, на котором была установлена операционная система leJOS. Операционная система leJOS предназначена для программирования контроллера LEGO® MINDSTORMS EV3 на языке Java [6]. В наборе Pitsco TETRIX® Max имеются серводвигатели с усилием до 4,8 кг/см при напряжении питания 4,8 В. По результатам испытаний были дополнительно закуплены более мощные серводвигатели (таблица).
Характеристика серводвигателей
№ |
Модель |
Усилие при 4,8 В (кг/см) |
Усилие при 6 В (кг/см) |
Положение приводного вала |
Расстояние от обслуживаемой оси вращения до следующей оси вращения (мм) |
Расстояние от конца захвата манипулятора до оси вращения вала (мм) |
1 |
Power HD 1501MG |
15,5 |
17 |
вертикально |
18 |
420 |
2 |
JX Servo PDI-5521MG |
17,25 |
20,32 |
горизонтально |
130 |
380 |
3 |
JX Servo PDI-5521MG |
17,25 |
20,32 |
горизонтально |
100 |
260 |
4 |
HS-485HB Servo |
4,8 |
6 |
любое |
32 |
200 |
5 |
HS-485HB Servo |
4,8 |
6 |
любое |
62 |
160 |
6 |
HS-485HB Servo |
4,8 |
6 |
любое |
– |
95 |
Сначала простой программой проверили движение определенных звеньев манипулятора в отдельности на предмет достаточности мощности и плавности хода. Потом провели такую же проверку с предметом весом 200 г в захвате. Испытания на прочность механизмов и достаточность прилагаемого усилия при управлении определенными звеньями прошли успешно. Визуальным путем пришли к выводу, что, хотя серводвигатели и механизмы выдерживают высокие скорости движения, надо ограничивать максимальную скорость, так как при высоких скоростях звенья начинают раскачиваться. Частое раскачивание звеньев будет приводить к раннему износу серводвигателей и появлению пауз в управлении, связанных с ожиданием прекращения колебаний. Стремясь к тому, чтобы манипулятор точно позиционировал свой захват в определенной точке пространства за возможно более краткое время, мы подобрали скорости управления, не приводящие к длительным колебаниям звеньев.
Манипулятор имеет 5 степеней свободы без учета пальцев, 4 плеча, 2 пальца, 6 серводвигателей. Для конструирования рамы, плеч и осей вращения использованы детали набора Pitsco TETRIX® Max (рис. 1).
Рис. 1. Сконструированный манипулятор
Манипулятор сконструирован так, чтобы упрощенно смоделировать основные манипуляции человеческой руки со стаканами.
Принято решение уменьшить требуемые расчеты для управления многозвенным манипулятором за счет некоторого упрощения нашей задачи. Мы ограничили места установки стаканов одной вертикальной плоскостью, отстоящей на фиксированном расстоянии от места крепления первого плеча многозвенного манипулятора. Тем самым мы упростили задачу обратной кинематики до теоремы косинусов для двух плоских треугольников.
Глубокое машинное обучение является самым эффективным способом для обнаружения прозрачных стаканов. Хотя в Интернете обсуждалась проблема обнаружения прозрачных предметов посредством глубокого машинного обучения, готовое программное решение не было найдено. Поскольку применение глубокого машинного обучения требует большого опыта, очень много времени для подготовки большого количества изображений и для процесса обучения модели, было принято решения обнаруживать прозрачные стаканы на изображении с помощью обычных функций OpenCV по нахождению контуров определенного цвета. После многих наблюдений и мозговых штурмов было выбрано решение определять местонахождение стеклянных цилиндрических стаканов за счет поиска на изображении двойных бликов (рис. 2).
Рис. 2. Распознавание стаканов на сложном фоне
Было замечено, что благодаря прозрачности на тонкостенном стеклянном стакане образуются два блика, схожих по форме и размеру, из-за яркого света, поступающего на стакан под углом между 20 и 50 градусами по отношению к видеокамере от окна или осветительного прибора. При отсутствии в помещении такого источника мы используем освещение от собственного светодиода белого спектра. Оказывается, блики на изображении являются носителями максимально яркого белого цвета. Распознавание успешно проходит даже на сложном и пестром фоне с блестками и гирляндами (рис. 2). Зеленые линии демонстрируют местонахождение центров бликов, синие линии определяют центры стаканов.
Подсистема распознавания образов состоит из обычного компьютера с внешней web-камерой. Для распознавания образов на компьютере были выбраны язык Java и библиотека OpenCV 4.5.2.
Подсистема распознавания стаканов и подсистема управления манипулятором взаимодействуют между собой посредством wi-fi-сети или USB-интерфейса.
Максимальное количество стаканов, распознаваемых в одном кадре, – 3 штуки.
Робототехнический комплекс состоит из одного ноутбука (процессор i5, оперативная память 6 GB), одного контроллера LEGO® MINDSTORMS EV3, web-камеры с USB-интерфейсом, одного манипулятора. Манипулятор состоит из рамы, четырех плеч, механической кисти с двумя пальцами, имеющей в совокупности 5 степеней свободы без учета пальцев.
Контроллер LEGO® MINDSTORMS EV3 работает под управлением leJOS 0.9.1-beta и взаимодействует с компьютером через wi-fi или USB-кабель. Программа контроллера EV3 написана на Java (исключительно на JDK 1.7), программа компьютера для распознавания изображений написана на Java (проверено на JDK версий 13.0.1 и 15.0.3) и использует библиотеку OpenCV версии 4.1.2.
Результаты исследования и их обсуждение
Цель проекта полностью достигнута, все задачи решены – робототехнический комплекс с манипулятором сконструирован в одном экземпляре, программы, демонстрирующие его возможности, разработаны, комплекс успешно осуществляет распознавание объектов и запланированные механические манипуляции с ними.
Расчет управления манипулятором был произведен в упрощенной форме. Проведены расчеты управления манипулятором при заранее известном расстоянии до стаканов и рассчитано только движение двух плеч, положение и движение кисти подобраны опытным путем. Управление серводвигателями не синхронизировано.
Разработанный комплекс с рукой многозвенной конструкции с шестью серводвигателями предназначен для захвата предмета весом до 200 г с поверхности и манипуляции им. Комплекс может обнаруживать местонахождение 3 прозрачных стеклянных стаканов и манипулировать стаканами. Дополнительные достижения:
1) возможность определения роботом степени заполненности стаканов;
2) возможность переливания роботом содержимого одного стакана в другой стакан;
3) разработка программы мониторинга процесса распознавания предметов.
При решении некоторых несложных задач можно обеспечить достаточно качественное управление конкретным многозвенным манипулятором посредством упрощенных расчетов, допустив, что имеются только 2 плеча и 3 степени свободы и расстояние до распознаваемых предметов заранее известно. В таком случае решение задачи обратной кинематики упрощается до расчетов углов двух треугольников при всех известных сторонах.
При высоких нагрузках на подвижные плечи многозвенного манипулятора плечи не должны вращаться непосредственно на вале вращения серводвигателя во избежание поломки вала стандартного серводвигателя, а должны вращаться на отдельном вале. Усилие на этот вал должно передаваться посредством шестереночных или червячных передач.
При приобретении сервоприводов следует обращать внимание на:
– мощность серводвигателя (мощность также зависит от подаваемого напряжения);
– возможность сопряжения шестеренок выходного вала серводвигателя с шестеренками, червяками (диаметр и количество шлицев шестеренок).
Для достижения лучшего результата при распознавании прозрачных предметов необходимо в будущем применить глубокое машинное обучение.
Заключение
Разработка манипулятора собственными руками, с возможностью постепенного усложнения механизмов, поэтапного увеличения количества степеней свободы позволяет начать изучение кинематики с более простых механизмов и в то же время оставляет большой простор для дальнейшего роста. Создание робота, который может распознавать камерой окружающие предметы и может управлять ими как человек, мотивирует учащихся изучать не только языки программирования, но и математику. Школьник в 2020 г. стал лауреатом Республиканской научно-практической конференции «Шаг в будущее», в 2021 г. занял 3-е место на Республиканском конкурсе технического творчества молодежи «ROBOSTAR» Молодежного фестиваля под эгидой Федерального агентства по делам молодежи «Росмолодежь». Реализация учеником подобного проекта положительно сказывается на осознанном выборе будущей профессии. Проектная деятельность по робототехнике помогает прививать школьнику самостоятельность, целеустремленность и уверенность в своих силах [7]. Созданный манипулятор имеет преимущество перед популярными учебными манипуляторами меньшего размера в том, что он может осуществлять операции с предметами, которыми человек пользуется в быту. В данном проекте это стеклянные или пластиковые стаканы. Также этот манипулятор можно будет использовать для обучения студентов технических специальностей.
Библиографическая ссылка
Лыткин С.Д., Лыткин Ф.С. ИЗ ОПЫТА ПРИМЕНЕНИЯ КОМПЬЮТЕРНОГО ЗРЕНИЯ И МАНИПУЛЯТОРА В ПРОЕКТНОЙ ДЕЯТЕЛЬНОСТИ ШКОЛЬНИКА ПО РОБОТОТЕХНИКЕ // Современные проблемы науки и образования. – 2021. – № 6. ;URL: https://science-education.ru/ru/article/view?id=31256 (дата обращения: 06.11.2024).