Научная статья на тему 'АНАЛИЗ НАПРАВЛЕНИЙ ПРИМЕНЕНИЯ ПРИНЦИПА МОДУЛЬНОСТИ ПРИ РАЗРАБОТКЕ И ИСПОЛЬЗОВАНИИ УЧЕБНЫХ ПРОЕКТОВ ПО РОБОТОТЕХНИКЕ В ВУЗАХ'

АНАЛИЗ НАПРАВЛЕНИЙ ПРИМЕНЕНИЯ ПРИНЦИПА МОДУЛЬНОСТИ ПРИ РАЗРАБОТКЕ И ИСПОЛЬЗОВАНИИ УЧЕБНЫХ ПРОЕКТОВ ПО РОБОТОТЕХНИКЕ В ВУЗАХ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
253
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕХАТРОНИКА И РОБОТОТЕХНИКА / РОБОТОТЕХНИЧЕСКИЕ СИСТЕМЫ / УЧЕБНОЕ ПРОЕКТИРОВАНИЕ / ПРИНЦИП МОДУЛЬНОСТИ / ФУНКЦИОНАЛЬНОСТЬ РАЗРАБОТОК / РЕАЛИЗАЦИЯ РАЗРАБОТОК / МИКРОКОНТРОЛЛЕРЫ / ДАТЧИКИ / ИСПОЛНИТЕЛЬНЫЕ МЕХАНИЗМЫ / ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / ПРИМЕРЫ МОДУЛЕЙ / ПРИМЕРЫ УСТРОЙСТВ / ТЕСТИРОВАНИЕ УСТРОЙСТВ / ОБЩЕРОССИЙСКИЙ БАНК МОДУЛЕЙ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Волосатова Тамара Михайловна, Барсуков Дмитрий Александрович, Тамков Павел Игоревич

Приведены цели и основные направления обучения студентов по направлению «Мехатроника и робототехника»: 15.03.06 - бакалавриат и 15.04.06 - магистратура. Указаны ключевые вузы, осуществляющие такое обучение. Проведен анализ современных требований к процессу проектирования робототехнических систем учебного назначения. Показано, что такой процесс и его результаты должны удовлетворять ряду требований, в том числе по полноте охвата изучаемых дисциплин; по использованию средств автоматизированного проектирования; по трудоемкости и срокам выполнения разработки проекта и его практической реализации; по выбору элементной базы реализации проекта с учетом необходимой функциональности разработки; по возможностям практической оценки работоспособности выполненной разработки, соблюдению всех предусмотренных в техническом задании функциональных требований. Охарактеризовано содержание понятия «принцип модульности» применительно к разработке робототехнических систем. Представлены преимущества разработки робототехнических систем с использованием принципа модульности, включая возможности формирования и применения библиотек, модулей и программных средств для них; оптимизации выбора модулей из таких библиотек; замены функционально близких модулей в ходе эксплуатации устройств и пр. Приведено краткое обоснование выбора программно-аппаратной платформы для исследования практических вопросов реализации принципа модульности. Процесс последовательной реализации этого принципа показан на примере ряда конкретных проектов. Эти проекты подробно охарактеризованы по следующим направлениям: определение назначения и функциональных возможностей разработки, поиск аналогов и анализ их возможностей; методика разработки конструкции с учетом использования принципа модульности; выбор конкретной элементной базы для проектов; обеспечение взаимозаменяемости модулей, разработки программных средств для модулей, тестирование модулей и устройств в целом; замена модулей в процессе эксплуатации и перенастройка программного обеспечения. Охарактеризованы возможные подходы к оценкам рациональности выбора технических решений в проектах, практической реализации этих проектов, их последующего использования, в том числе с заменой модулей. Сделан вывод о целесообразности создания общероссийского банка «модулей», программных средств для них, разработок на основе модулей. Такой банк может быть использован для сокращения трудоемкости выполнения конкретных разработок и, как следствие, расширения направлений учебного проектирования робототехнических систем.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Волосатова Тамара Михайловна, Барсуков Дмитрий Александрович, Тамков Павел Игоревич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ANALYSIS OF DIRECTIONS FOR USING THE PRINCIPLE OF MODULARITY IN THE DEVELOPMENT OF TRAINING PROJECTS ON ROBOTICS IN UNIVERSITIES

The article analyzes the current requirements for the design process of robotic systems. The article discusses the application of the principle of modularity in the design of educational robotic systems based on the Arduino Uno platform. The use of this principle provides an almost unlimited set of capabilities for solving robotic problems. The authors present the main advantages of developing robotic systems using the principle of modularity. The process of implementing the principle is shown on the example of projects: creating a weather station and a prototype of a search robot. The authors provide options for the use of weather stations for environmental monitoring. A brief review of existing autonomous weather stations has been carried out. The following is the process of modeling, assembling and tuning the copter. Particular attention is paid to the choice of components and their compatibility. In the work on the weather station, attention is paid to changing the configuration and writing a control program. When creating a prototype of a search robot, special attention is paid to setting up complex modules and component compatibility. The article describes in detail the process of connecting the camera to the search robot, presents the received image of the room and examples of object recognition in the image, and considers analogues of the weather station and the search robot. The strengths and weaknesses of the platform for creating complex robotic systems have been identified. At the end of the article presents conclusions about the use of the principle of modularity in practice.

Текст научной работы на тему «АНАЛИЗ НАПРАВЛЕНИЙ ПРИМЕНЕНИЯ ПРИНЦИПА МОДУЛЬНОСТИ ПРИ РАЗРАБОТКЕ И ИСПОЛЬЗОВАНИИ УЧЕБНЫХ ПРОЕКТОВ ПО РОБОТОТЕХНИКЕ В ВУЗАХ»

DOI 10.21672/2074-1707.2020.52.4.133-148 УДК 62-529

АНАЛИЗ НАПРАВЛЕНИЙ ПРИМЕНЕНИЯ ПРИНЦИПА МОДУЛЬНОСТИ ПРИ РАЗРАБОТКЕ И ИСПОЛЬЗОВАНИИ УЧЕБНЫХ ПРОЕКТОВ ПО РОБОТОТЕХНИКЕ В ВУЗАХ

Статья поступила в редакцию 01.05.2020, в окончательном варианте - 20.06.2020.

Волосатова Тамара Михайловна, Московский государственный технический университет имени Н.Э. Баумана, 105005, Российская Федерация, г. Москва, ул. 2-я Бауманская, 5, стр. 1, кандидат технических наук, доцент, e-mail: tamaravol@gmail.com

Барсуков Дмитрий Александрович, Московский государственный технический университет имени Н.Э. Баумана, 105005, Российская Федерация, г. Москва, ул. 2-я Бауманская, 5, стр. 1, студент, e-mail: fieria.pirs@yandex.ru

Тамков Павел Игоревич, Астраханский государственный университет, 414040, Российская Федерация, г. Астрахань, ул. Татищева, 20а, студент, e-mail: ptamkov@ya.ru

Приведены цели и основные направления обучения студентов по направлению «Мехатроника и робототехника»: 15.03.06 - бакалавриат и 15.04.06 - магистратура. Указаны ключевые вузы, осуществляющие такое обучение. Проведен анализ современных требований к процессу проектирования робототехнических систем учебного назначения. Показано, что такой процесс и его результаты должны удовлетворять ряду требований, в том числе по полноте охвата изучаемых дисциплин; по использованию средств автоматизированного проектирования; по трудоемкости и срокам выполнения разработки проекта и его практической реализации; по выбору элементной базы реализации проекта с учетом необходимой функциональности разработки; по возможностям практической оценки работоспособности выполненной разработки, соблюдению всех предусмотренных в техническом задании функциональных требований. Охарактеризовано содержание понятия «принцип модульности» применительно к разработке робототехнических систем. Представлены преимущества разработки робототехнических систем с использованием принципа модульности, включая возможности формирования и применения библиотек, модулей и программных средств для них; оптимизации выбора модулей из таких библиотек; замены функционально близких модулей в ходе эксплуатации устройств и пр. Приведено краткое обоснование выбора программно-аппаратной платформы для исследования практических вопросов реализации принципа модульности. Процесс последовательной реализации этого принципа показан на примере ряда конкретных проектов. Эти проекты подробно охарактеризованы по следующим направлениям: определение назначения и функциональных возможностей разработки, поиск аналогов и анализ их возможностей; методика разработки конструкции с учетом использования принципа модульности; выбор конкретной элементной базы для проектов; обеспечение взаимозаменяемости модулей, разработки программных средств для модулей, тестирование модулей и устройств в целом; замена модулей в процессе эксплуатации и перенастройка программного обеспечения. Охарактеризованы возможные подходы к оценкам рациональности выбора технических решений в проектах, практической реализации этих проектов, их последующего использования, в том числе с заменой модулей. Сделан вывод о целесообразности создания общероссийского банка «модулей», программных средств для них, разработок на основе модулей. Такой банк может быть использован для сокращения трудоемкости выполнения конкретных разработок и, как следствие, расширения направлений учебного проектирования робототехнических систем.

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

ANALYSIS OF DIRECTIONS FOR USING THE PRINCIPLE OF MODULARITY IN THE DEVELOPMENT OF TRAINING PROJECTS ON ROBOTICS IN UNIVERSITIES

Volosatova Tamara M., Moscow State Technical University named after N.E. Bauman, building 1, 5 2-ya Baumanskaya St., Moscow, 105005, Russian Federation,

Cand. Sci. (Engineering), Associate Professor, e-mail: tamaravol@gmail.com Barsukov Dmitry A., Moscow State Technical University named after N.E. Bauman, building 1, 5 2-ya Baumanskaya St., Moscow, 105005, Russian Federation, student, e-mail: fieria.pirs@yandex.ru

Tamkov Pavel I., Astrakhan State University, 20a Tatishchev St., Astrakhan, 414040, Russian Federation, student, e-mail: ptamkov@ya.ru

The article analyzes the current requirements for the design process of robotic systems. The article discusses the application of the principle of modularity in the design of educational robotic systems based on the Arduino Uno platform. The use of this principle provides an almost unlimited set of capabilities for solving robotic problems. The authors present the main advantages of developing robotic systems using the principle of modularity. The process

of implementing the principle is shown on the example of projects: creating a weather station and a prototype of a search robot. The authors provide options for the use of weather stations for environmental monitoring. A brief review of existing autonomous weather stations has been carried out. The following is the process of modeling, assembling and tuning the copter. Particular attention is paid to the choice of components and their compatibility. In the work on the weather station, attention is paid to changing the configuration and writing a control program. When creating a prototype of a search robot, special attention is paid to setting up complex modules and component compatibility. The article describes in detail the process of connecting the camera to the search robot, presents the received image of the room and examples of object recognition in the image, and considers analogues of the weather station and the search robot. The strengths and weaknesses of the platform for creating complex robotic systems have been identified. At the end of the article presents conclusions about the use of the principle of modularity in practice.

Keywords: modularity principle, microcontroller, Arduino Uno platform, breadboard, Arduino IDE, weather station, gas sensors, temperature and humidity sensor, search robot, Wi-Fi module

Graphical annotation (Графическая аннотация)

Модули совместимые с Выбор робототехиической платформой

Инженер-робототехник платформы (Platform compatible Прототип робота

(Robot engineer) (Robot platform selection) modules) (Robot prototype)

Техническое задание Использование принципа модульности Разработка робота

(Specification) (Using the principle of modularity) (Robot development) -► -► -►

Введение. Робототехника - это научно-техническое направление, занимающееся проектированием, изготовлением и использованием роботов [1]. Результат любого робототехнического проекта представляет собой автоматизированную техническую систему, обладающую набором функциональных возможностей. Робототехника позволяет создавать системы разной сложности, начиная с бытовых помощников, таких как роботы-пылесосы или роботы-ищейки и заканчивая беспилотными летательными аппаратами. В статье рассматривается использование робототехники в качестве интегрирующей основы нескольких дисциплин учебной программы вуза. При этом робототехника наблюдается как инструмент, посредством которого можно получить прикладные навыки по направлениям: конструирование, программирование микроконтроллеров, геометрическое моделирование, компьютерное зрение, интернет вещей, беспилотные летательные аппараты. Робототехника в образовании относительно новая и активно развивающаяся область. Поэтому понятийный аппарат данной области находится на стадии формирования. Предметом дискуссий является определение границ использования понятий «образовательная робототехника» и «робототехническое образование». Образовательная робототехника направлена на развитие у обучаемого интереса к робототех-нической отрасли и ориентирована на средние образовательные учреждения. Робототехническое образование направлено на подготовку квалифицированных кадров для робототехнической отрасли и ориентировано на профессиональное образование в колледжах и вузах [2].

Задача инновационного развития экономики требует опережающего развития образовательной среды [3]. Во многих странах мира, таких как Австралия, Китай, Южная Корея, США, Сингапур, технические университеты самостоятельно или совместно с производственными компаниями (FANUC, RoboticsAmericanInc и другими) развивают программы образовательного направления для привлечения студентов к участию в робототехнических проектах [4]. В 2011 году в США на государственном уровне разработан план поддержки роботизации. С 2014 года Франция, Великобритания, Южная Корея и Япония уже рассматривают автономные транспортные средства и интеллектуальную робототехнику как приоритетные направления научно-технического развития. В странах -технологических лидерах период 2015-2050 гг. характеризуется революционной скоростью и масштабами роботизации. Основными ограничениями для массового внедрения роботов в России в современных условиях являются: отсутствие высококвалифицированных кадров по робототехнике и отсутствие доступных по цене серийных и массовых роботов российского производства [5].

Активное участие и поддержка российских и международных научно-технических и образовательных проектов в области робототехники и мехатроники позволит ускорить подготовку кадров, развитие новых научно-технических идей, обмен технической информацией и инженерными знаниями, реализацию инновационных разработок в области робототехники в России и по всему миру [6]. К сожалению, по большей части робототехническая часть учебного процесса заканчивается на этапе получения среднего образования. Курс по робототехнике в вузе с практической

направленностью программы, применением знаний из различных дисциплин учебной программы при разработке РТС и возможностью углубления и систематизации знаний из курса учебной программы помог бы решить эту задачу. Следует отметить, что особое внимание в курсе должно уделяться не сборке РТС, а процессу проектирования. В качестве подхода к проектированию рассматривается принцип модульности. Под модульностью РТС понимается способность к декомпозиции на ряд связанных модулей [7]. Многие исследователи применяли принцип модульности при разработке различных технических систем. Обзор применения модульности при проектировании сложных систем приводится в работе [8]. Основные концепции модульности при построении транспортных телекоммуникационных сетей рассмотрены в работе [9]. Описание этапов и перспектив развития модульного принципа при построении РТС представлено в статье [10].

Цель статьи - провести анализ направлений использования принципа модульности при разработке учебных проектов по робототехнике в вузах.

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

1. Основные особенности учебных проектов по робототехнике, разрабатываемых в вузах России.

Функциональные. Робототехника в образовании способствует освоению нового и социально значимого пласта современной технической культуры: приобретению политехнических знаний и овладению техническими и технологическими компетенциями [11]. Особенное значение робототехники заключается в реализации междисциплинарных связей. Обучение робототехнике позволяет не только выявлять и осознавать взаимосвязи дисциплин, но и систематизировать, обобщать знания различных дисциплин для последующего применения на практике [12]. Примером может послужить разработка модели корпуса РТС. Есть некоторые функциональные требования, ограничения к модели. Для их учета необходимо создать базовую геометрическую модель корпуса, в режиме симуляции проверить выполнение ограничений, например, по перемещению отдельных частей корпуса или максимальным напряжениям в узлах. В случае нарушения ограничений следует провести оптимизацию конструкции. Таким образом, для выполнения одной робототехнической задачи потребуются знания по дисциплинам: «Геометрическое моделирование», «Прикладная механика» и «Методы оптимизации».

Учитывая междисциплинарный характер принятия решений в ходе разработки РТС, возможно разделение работы на моделирование, расчетную, электротехническую и программную части. В таком варианте организации работы наиболее эффективной будет работа в небольших командах по 3-4 человека. Обучаемые смогут выбирать часть процесса разработки, которую бы хотели изучить более подробно. Работа в команде позволяет развить комплекс коммуникативных компетенций.

Робототехника в учебном процессе может быть представлена как:

1) область технического приложения дисциплин учебной программы,

2) инструмент современной технологии научного познания,

3) отдельная область технического знания.

В статье [12] рассматривается возможность применения робототехники в качестве специальной технологии обучения на занятиях по предметам естественно-математического цикла. Особо отмечается направленность обучения на формирование знаний и навыков, «позволяющих молодому поколению быть успешно интегрированным в современные социотехнические системы, эффективно поддерживать и развивать научно-технический потенциал общества». В процессе разработки РТС обучающиеся получают опыт реализации проектов по автоматизации, базовые знания электроники и схемотехники, навыки программирования цифровой и аналоговой техники.

Применение робототехники в контексте научного познания должно быть нацелено на знакомство обучаемых с новыми технологиями проведения научного исследования. Роботы могут применяться при постановке экспериментов, проведении наблюдений, диагностике состояния объектов.

Цель робототехники как отдельной дисциплины - это подготовка специалистов по разработке РТС: инженеров-исследователей, инженеров-конструкторов и инженеров-технологов. Обучение робототехнике как отдельной области технического знания необходимо для формирования практических навыков в решении конкретных технических задач. В ходе обучения могут решаться простые производственные задачи. Лучшие разработки могут использоваться при проектировании сложных РТС в качестве прототипов.

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

процессор, постоянное и оперативное запоминающие устройства, а также устройства периферии. Для работы с микроконтроллерами необходимо понимание устройства ЭВМ, базовые знания электроники и схемотехники. Кроме этого, необходимы знания физики, алгоритмов и принципов цифрового проектирования и программирования, специфичных для выбранного микроконтроллера. При выборе микроконтроллера особое значение имеет наличие учебной литературы и сайтов поддержки, в том числе поддержки эмуляции программного обеспечения. Также важным фактором является возможность подключения микроконтроллера к компьютеру для прошивки платы (вместо использования специальных программаторов, специфичных практически для каждого типа микроконтроллеров).

Согласно исследованию [13], наиболее популярными для организации занятий по робототехнике являются конструкторы Lego Mindstorms и платформа Arduino. Значительно менее распространены одноплатные компьютеры Raspberry Pi. Для изучения робототехники в учебном процессе компания Lego производит ряд тематических наборов, таких как «Технология и физика», «Пневматика» и «Возобновляемые источники энергии». Конструкторы в основном состоят из блока микроконтроллера, датчиков и всевозможных деталей, но для обучающегося являются малоинтересными. Обучаемый видит результат работы, но за результатом не видит системы - блоки остаются для него «черными ящиками» [14]. Стоимость базового набора Lego Mindstorms составляет 220$, а для разработки РТС может потребоваться несколько наборов. В качестве альтернативы может быть рассмотрен современный микроконтроллер Raspberry Pi, средняя стоимость которого - 38$. Некоторые исследователи выдвигают тезис о возможности использования одноплатного компьютера Raspberry Pi в системе образования. Так, в статье [15] рассматривается применение Raspberry Pi при обучении студентов сетевым технологиям. Разработчики Raspberry Pi также акцентируют внимание на обучающих возможностях платформы. Raspberry Pi представляет собой миниатюрный компьютер с возможностями обыкновенного ПК. Компьютер распространяется на четырехслойной печатной плате размером с пластиковую карту. Объем оперативной памяти составляет 1 Гб. При освоении Raspberry Pi определенные сложности могут быть вызваны отсутствием русскоязычных инструкций и сайтов поддержки. В этом отношении значительно опережает Raspberry Pi по количеству и качеству имеющихся ресурсов платформа Arduino. Многочисленные сайты поддержки, видеокурсы, большое количество практической и справочной литературы, интернет-площадки, форумы, а также развитая инфраструктура интернет-сообществ помогут найти ответ на любой вопрос о платформе.

Программно-технические. Выбор аппаратных средств во многом определяет программные средства. Так, программная часть конструктора Lego Mindstorms EV3 представлена специализированной графической средой разработки Lego EV3 Basic на основе LabView. Программное обеспечение наборов Mindstorms распространяется свободно. Среда разработки создана с целью обучения программированию. Следует отметить поддержку русскоязычного интерфейса, встроенную справочную систему и большое количество готовых примеров. Измерительные системы на базе Lego Mindstorms могут в режиме реального времени передавать полученные данные через USB, Wi-Fi или Bluetooth [11]. Помимо графической среды программирования Lego, существуют программы управления роботами Mindstorms (для Android и iPhone/iPad) и программы для просмотра и создания пошаговых 3D-инструкций по сборке роботов (на основе Autodesk Inventor Publisher).

Одноплатный компьютер Raspberry Pi в отличие от микрокомпьютера Mindstorms по умолчанию оснащен высокоуровневыми и визуальными языками программирования. Python, C, C++, Java, Scratch, Ruby устанавливаются на Raspberry Pi по умолчанию. При создании проектов в сфере интернета вещей могут быть использованы языки JavaScript, HTML5 и CSS3. Для одноплатного компьютера Raspberry Pi было разработано несколько операционных систем. Каждая система представляет собой дистрибутив Linux. Официальная операционная система Raspberry Pi - Raspbian. Она содержит веб-браузер, почтовый клиент, офисный пакет LibreOffice и некоторые инструменты обучения программированию. Дистрибутив Raspbian ориентирован на начинающих пользователей платформы. Другие дистрибутивы имеют специфические особенности. Например, дистрибутив Archlinux содержит только базовую систему без графического окружения, Pi Musicbox рассчитан на работу с музыкой, Openelec ориентирован на работу с медиаустройствами. В одной из обзорных статей о Raspberry Pi [16] рассматривается возможность ее модульного применения. Исследователи отмечают, что решения на основе Raspberry Pi могут быть полезны при построении более сложных технических систем. При наличии программных достоинств платформы следует отметить недостаточное для создания учебного курса по робототехнике количество русскоязычной справочной литературы, инструкций, интернет-курсов, описаний проектов. В то время как ключевым принципом выбора платформы для учебной программы должна быть доступность информации. В этом отношении явным преимуществом обладает платформа Arduino. Разработчики Arduino предоставляют онлайн-контент для студентов, а также обучение и поддержку преподавателей. Документация по языку программирования Arduino представлена в русскоязычных источниках.

Программное обеспечение Arduino IDE работает под управлением операционных систем Linux, Windows, Macintosh OS X и распространяется свободно. Программные средства Arduino включают в себя среду разработки и программный модуль, размещенный в секции загрузчика флеш-памяти микроконтроллера [17]. Загрузчик (Boot loader) реализует обновление области флеш-памяти. Наличие загрузчика позволяет загружать код в микроконтроллер через USB без использования специальных программаторов. Язык программирования устройств Arduino основан на C++ и дополнен набором библиотек аппаратных модулей. Помимо стандартного языка программирования могут быть использованы визуальные языки, такие как Visuino, Scratch, ArduBlock и FLProg. Arduino может взаимодействовать с Python через библиотеку PySerial. Также можно использовать пакет Matlab Simulink для интерактивного взаимодействия с Arduino. При загрузке программы в микроконтроллер среда разработки подключается к аппаратной части Arduino по USB-интерфейсу в режиме виртуального COM-порта.

Программно-технические средства разработки РТС не ограничиваются микроконтроллерным программированием. В большинстве робототехнических проектов активно применяются CAD-системы. Так программная система от MIT [18] позволяет проектировать и моделировать корпус коптера, симулировать поведение коптера в полёте. Пользователь системы может варьировать размеры, форму и структуру летательного аппарата, учитывать полезную нагрузку, стоимость деталей, время полета и другие параметры. Другая программная система интерактивного проектирования [19] упрощает процесс разработки колесных роботов. Пользователь работает с библиотекой компонентов. При выборе очередного компонента система предлагает возможные варианты его размещения и генерирует конструктивные элементы для подключения нового компонента. Система обеспечивает симуляцию среды для тестирования, в ходе которого пользователь может скорректировать проект для достижения желаемых параметров конструкции робота.

2. Использование принципа модульности при разработке учебных проектов в сфере робототехники. Модульный принцип построения и проектирования РТС впервые был реализован организацией ЦНИИ РТК в 1980-х годах в CCCP [10]. Организация ЦНИИ РТК разработала 15 мобильных роботов различной конфигурации. При производстве роботов использовались готовые модули. Задача роботов заключалась в измерении радиационного фона и очистке территории станции от радиационного мусора. В процессе эксплуатации появилась необходимость замены частей роботов. Использование модульного подхода позволило оперативно изменять конфигурацию роботов непосредственно на месте работ.

Современные тенденции и методологии производства РТС выдвигают новые требования к структурной организации процесса проектирования. Выбор конструктивного подхода к процессу проектирования определяет оперативность и эффективность производства. На стадии технического задания у инженера-робототехника должны быть определены критерии будущей системы. Реализуемая система должна выполнять свое назначение, быть гибкой, расширяемой, обладать необходимыми функциональными возможностями. Процесс разработки системы, удовлетворяющей этим критериям, может быть достаточно трудоемким. Для решения поставленной задачи целесообразно применить модульный подход, который обеспечит вариативность в применении системы в сочетании с низкой стоимостью эксплуатации. Например, пользователю необходима система для измерения климатических и экологических показателей окружающей среды. Он может реализовать работу двух независимых модулей. Модуль климатической станции может сообщать значения температуры, влажности, давления и освещенности, а экологический модуль - измерять концентрацию углекислого газа и метана в воздухе. Разделение системы на модули может производиться как по функциональному признаку, так и по способу подключения элемента. Например, датчики газа серии MQ (рис. 1) имеют общую схему подключения (5V, GND, Digital Output, Analog Output), одинаковые требования к входному напряжению - 5V и потребляемому току - 130-140 мА. По причине унификации способа подключения датчики газа могут быть рассмотрены как отдельные модули. Следует отметить, что большая часть аналоговых и цифровых датчиков Arduino имеет общую схему подключения.

Модульная архитектура решает проблему увеличения сложности систем, состоящих из нескольких функциональных блоков. Также она обеспечивает оперативную взаимозаменяемость модулей и возможность изменения конфигурации системы. Концепция модульности является универсальной, и поэтому применяется при разработке различных систем. Модульные системы состоят из подсистем, которые могут быть перенастроены в соответствии с требованиями пользователей. На рисунках 2 и 3 представлена линейная и модульная структуры из n элементов. При проектировании модульных систем каждый модуль представляет собой независимый функциональный блок. Он может состоять как из одного, так и из нескольких элементов. Между каждым модулем должна быть установлена связь для их совместной работы. При внесении функциональных изменений в систему необходимо изменить конкретный модуль. Изменения или неисправности в одном модуле не влияют на работу остальных. Это является характерным отличием модульных и линейных систем.

Рисунок 1 - Датчики газа серии MQ: MQ-2 - пропан СД, метан СЩ н-бутан С4Щ MQ-3 - пары С2Н50Н; MQ-4 -природный газ; MQ-5 - метан СН4, пропан С3Н8; MQ-6 - сжиженный нефтяной газ; MQ-7 - угарный газ СО; MQ-8 -Н2; MQ-9 - угарный газ СО, метан СН4; MQ-135 - аммиак 1ЯН3, оксиды азота N0,,, углекислый газ СО2

Рисунок 2 - Линейная структура из n элементов

Рисунок 3 - Модульная структура из n элементов

Процесс модульного проектирования можно также проиллюстрировать на примере платформы Arduino.

Основа базового модуля Arduino Uno - микроконтроллер ATmega328p с тактовой частотой 16МГц. Модуль имеет 14 цифровых и 6 аналоговых входов/выходов. Такого количества достаточно для разработки различных электронных устройств. Объем флеш-памяти микроконтроллера составляет 32 Кб, из которых 0,5 Кб используются для загрузчика, а также 2 Кб оперативной памяти. Рекомендуемый диапазон внешнего питания микроконтроллера от 7 до 12 В. Связь Arduino с компьютером реализуется посредством UART интерфейса через выводы платы RX и TX. Среда разработки Arduino подключается к микроконтроллеру по USB-интерфейсу через виртуальный COM-порт. Также для платформы Arduino разработаны специальные радиомодули, реализующие связь с микроконтроллером по каналам Wi-Fi и Bluetooth, силовые модули, управляющие сервоприводами и двигателями, модули работы с LCD дисплеями, видеокамерой, Ethernet модуль и другие. Реализация принципа модульности при выделении функциональных подсистем может осуществляться с использованием модулей беспроводной связи. Так модули беспроводной связи nRF24L01+, Wi-Fi-модуль ESP8266, Bluetooth-модуль HC-06, XBee, GPRS Shield v3 предназначены главным образом для общения между устройствами. В режиме общения может производиться отправка команд исполнительным устройствам, беспроводной опрос датчиков и передача изображений. Wi-Fi-модуль на основе микросхемы ESP8266B целесообразно использовать в образовательных проектах. По модулю доступно большое количество справочной литературы. Arduino Uno взаимодействует с ESP8266 через UART-интерфейс с помощью набора AT-команд. Напряжение питания модуля - 3,3 В. Объем флеш-памяти ESP8266 - 64 Кб, оперативной памяти - 96 Кб. Wi-Fi-модуль на основе ESP8266 является мощным инструментом организации беспроводной связи в проектах интернета вещей. В качестве исполнительных устройств Arduino могут быть рассмотрены сервоприводы и двигатели. Сервоприводы реализуют принцип работы систем

с отрицательной обратной связью. Они контролируют и поддерживают скорость вращения моторов, манипуляторов и захватов. Сервоприводы Arduino FS5519M, FS5109M, FS5106B используются для установки и удерживания угла поворота колеса. Приводы различаются величиной крутящего момента, но имеют общую схему подключения (5V, GND, Digital Output) и подключаются непосредственно к микроконтроллеру. В отличие от сервоприводов моторы нельзя подключить к плате напрямую. Выводы микроконтроллера Arduino Uno являются слаботочными, поэтому подключение моторов напрямую к плате может вывести их из строя. Эту проблему решает H-мост. В проекте робот-ищейка использовались моторы-редукторы с передаточным 1:75 и скоростью холостого хода 200 об/мин. Для взаимодействия РТС с внешним миром используются датчики расстояния HC-SR04, датчики освещенности, температуры и влажности DHT11, различные газовые анализаторы, датчики давления и другие. Большинство датчиков Arduino имеют единую схему подключения. Это позволяет оперативно изменять конфигурацию РТС.

Во многих отраслях промышленности отмечают переход к новому виду продукции, состоящей из стандартных функциональных блоков - модулей. Применение модульной архитектуры способствует развитию гибкости и экономической эффективности процесса производства, позволяет упростить отладку отдельных компонентов и сократить время разработки РТС. Модульность при разработке РТС распространяется как на аппаратную, так и на программную часть решения. На аппаратном уровне использование принципа модульности обеспечивает безопасную проверку совместимости компонентов и дает возможность изменения конфигурации РТС в процессе разработки. Принцип модульности на программном уровне заключается в написании кода для каждого отдельного модуля независимо от основной части кода будущей системы. На этом этапе производится отладка программы, калибровка модуля, проверка работоспособности. Далее модуль безопасно подключается в работающую систему. Такой подход локализует возможные программные ошибки и исключает возможность повреждения системы при добавлении и удалении модулей.

3. Примеры реализации принципа модульности при разработке учебных проектов в сфере робототехники.

Метеостанция. В наше время проблема экологии приобрела особое значение. В районах, находящихся в непосредственной близости к сильно загруженным автомобильным дорогам, аэродромам, заводам, вопрос загрязненности окружающей среды является ключевым. Стационарные и передвижные лаборатории не могут дать подробную информацию об экологическом состоянии в труднодоступных местах. Например, вблизи свалок мусора или в местах захоронения радиоактивных отходов они не смогут произвести замеры. В то время как беспилотный летательный аппарат может в короткий срок провести измерения на обширной территории, включая труднодоступные места. Это позволит отлеживать экологическую обстановку и своевременно выявлять нарушения [20]. Так возникла идея разработки метеостанции с экологической функцией на базе беспилотного летательного аппарата. На начальном этапе проекта поставлены задачи: создание метеостанции (микро-лаборатории), определение способа сбора данных и их записи на коптере, сборка летательного аппарата, установка метеостанции на борт коптера и проверка работоспособности аппарата. В результате анализа плат линейки Arduino в качестве основы метеостанции был выбран микроконтроллер Arduino Uno. Также был проведен сбор информации об устройстве и конструировании коптера. Экспериментальный метод позволил проверить функциональность аппарата на практике.

Основным критерием при создании любой РТС является возможность ее дальнейшей модернизации. В процессе создания метеостанции на платформе Arduino Uno необходимо тестировать работоспособность каждого сенсора (рис. 4), в случае неисправности заменять, а также добавлять новые модули. Принцип модульности позволил подключать новые сенсоры в работающую модель, а также проводить замену используемых датчиков. При выходе из строя датчика температуры и влажности DHT11 была сразу проверена работоспособность нового датчика для его замены. При тестировании каждого модуля были написаны отдельные программы, поэтому замена любого датчика в системе может быть проведена оперативно и без риска для всей системы. Код программы, написанный в среде разработки Arduino, может быть изменен или дополнен. В работающую систему встроен IMU-модуль для измерения высоты. Для его тестирования была написана отдельная программа. После проверки ее работоспособности был дополнен код основной программы.

Управляющая программа для совместной работы всех модулей была написана в соответствии с принципом модульности. Это значительно упростило ее отладку и ускорило процесс разработки метеостанции. Вначале были написаны программы для каждого сенсора и модуля отдельно, затем программы были объединены в основной скетч. Использование модульного подхода на программном уровне уменьшило область поиска возможных программных ошибок и сократило время разработки [7]. На рисунке 5 представлен фрагмент кода, отвечающий за запись на SD-карту.

Рисунок 4 - Подключение датчиков к метеостанции: плата управления Arduino Uno, макетная плата, датчики газа: MQ-2 - пропан С3Н8, метан СН4, н-бутан С4Н10, MQ-4 - природный газ; датчик температуры и влажности DHT11, модуль реального времени DS1302, SD card модуль [15]

vcid SDcaidHrite () // "сзцаю фунг-щив, цлл записи на 3D card,

// начинается запись на SU carl з файл diir.asens. tat

myFile.print (dht. readflunnidity (¡); // значения злажнасти, myFile.print {dht. reedTempereture (J); // значения температура,

Рисунок 5 - Запись результатов измерений на SD-карту

В void setup создана функция SDcardWrite() для записи данных: после открытия файла печатается: дата, время, влажность, температура и другие показания, затем функция void loop() итерационно повторяет запись в файл для постоянной регистрации данных. Для некоторых модулей использовались готовые библиотеки: библиотека SD для записи результатов эксперимента на карту памяти, библиотека DS1302 для регистрации реального времени, библиотека DHT для настройки датчика температуры и влажности. Использование готовых библиотек значительно сократило время разработки метеостанции.

Следует отметить, что при подключении новых датчиков или замене установленных отсутствует необходимость написания новой управляющей программы после каждого изменения. Достаточно добавить в используемую программу часть кода для новых датчиков. Так добавлен код для датчика MQ4, регистрирующего угарный газ. Фрагмент кода с добавленным датчиком показан на рисунке 5. Аналогично в состав датчиков метеостанции может быть добавлен, например, датчик сероводорода MQ136. Это позволяет установить в РТС практически неограниченное количество сенсоров, что является отличительной характеристикой и преимуществом разработанной метеостанции [20]. После тестирования модулей и написания программы были получены результаты измерений, представленные на рисунке 6.

g СОМ21 (Arduino Uno)

1

OS.01.2016 05.01.2016 05.01.2016 00:00:11 00:00:22 00:00:33 Eluiil di t y: bujt.í di t y: Humidity: 15, 21, 20. 00 £ 00 £ 00 £ Тещр: 23 Temp: 22 Тещр: 22 , оо+с , оо*с: , оо+с SaaMq4: SasMq4: SasMq4: 133 139 143 SaaMq2: GaaMq2: SaaMq2: 104 107 110 Oav: Oav: Oav: 103 107 юг

Рисунок 6 - Формат вывода данных измерений

Трудоемкость разработки части кода отдельных модулей заключалась в написании библиотек и калибровке каждого модуля. При объединении кода модулей в основной скетч необходимо учитывать их совместимость и ограниченное количество входов Arduino Uno. Использование части кода готовых библиотек в некоторых случаях приводило к конфликтам при объединении кода модулей в основной скетч. Чувствительность каждого датчика устанавливалась программно, поэтому при измерении показателей, например, на улице и в домашних условиях производилась настройка чувствительности датчиков.

Были рассмотрены готовые метеостанции. Большинство из них имеет ограниченный набор сенсоров. Например, модель Ea2 ED603 имеет датчик температуры, влажности и давления и встроенные часы. Стоимость метеостанции составляет 1390 руб. Модель RST 02777 помимо функциональности Ea2 ED603 имеет два слота для добавления дополнительных датчиков и функцию прогноза погоды. Стоимость RST 02777 - 8390 руб. Оба устройства имеют дисплеи. В рассмотренных метеостанциях отсутствует возможность модернизации и передачи данных на ПК. Стоимость разработанной метеостанции - менее 1500 руб. Результаты измерений сохраняются на SD-карту. В зависимости от задачи функциональный состав метеостанции может быть изменен. Функциональность и степень сложности РТС (в данном контексте метеостанции) влияют на состав их компонентов, которые являются или могут быть (для проектируемых устройств) объектами интеллектуальной собственности. Поэтому необходим детальный анализ этих компонентов и их взаимосвязей с позиций прав интеллектуальной собственности [21].

В окончательную версию метеостанции вошли следующие модули:

1) плата управления Arduino Uno;

2) макетная плата;

3) датчик MQ-2 для фиксации: пропана С3Н8, метана СН4, н-бутана С4Н10;

4) датчик MQ-4 для фиксации природного газа;

5) IMU-модуль для измерения высоты и давления;

6) датчик освещенности;

7) датчик температуры и влажности DHT11;

8) модуль реального времени DS1302;

9) SD card модуль.

Результаты измерений каждого датчика сохраняются в файле на SD-карте. Обработка данных осуществляется на ПК. Для упрощения процесса получения данных возможно подключение wi-fi-модуля для отправки результатов измерений на сервер. Существует множество сервисов для обработки результатов измерений Arduino, например, google-гистограммы, сервер SVMonitor и другие.

Следующий этап посвящен моделированию, конструированию и настройке коптера. Разработка моделей РТС в виртуальной среде позволяет инженерам находить наиболее эффективные конструктивные и функциональные решения [12]. Геометрическое моделирование, прочностной анализ, топологическая оптимизация конструкции РТС могут быть выполнены в CAD-системе NX. Так, в проекте метеостанции созданы модели верхней и нижней площадок центральной рамы и лучей коптера. На их основе реализована сборка рамы коптера (рис. 7a, б). Модель луча разбита на конечные элементы, заданы нагрузки и ограничения (рис. 8). В приложении «Расширенная симуляция» произведен прочностной анализ луча коптера (рис. 9). Дополнительно могут быть использованы приложения «Анимация» и «Топологическая оптимизация» NX. Приложение «Анимация» позволяет визуализировать движения конструкции при заданных нагрузках, «Топологическая оптимизация» - уменьшать массу конструкции за счет усложнения формы деталей. Изначально планировалось проводить измерения на квадрокоптере. Однако выбор небольшого количества двигателей предполагает увеличение их мощности для подъема дополнительного оборудования и не гарантирует стабилизацию при зависании на определенной высоте, необходимую для проведения измерений. Кроме того, при выходе из строя одного из моторов квадрокоптера совершить посадку без повреждений конструкции коптера и метеостанции крайне трудно, в то время как посадка гексакоптера в аналогичной ситуации возможна.

Рисунок 7 - а, б Модель рамы квадрокоптера в NX

Рисунок 8 - Задание нагрузок и граничных условий Рисунок 9 - Режим симуляции

Рассмотрим более подробно процесс сборки рамы гексакоптера. На плате разводки питания (рис. 10) есть готовые разъемы для установки лучей и телеметрии. К каждому лучу припаяны провода питания от регуляторов, к двум лучам - светодиоды для определения передней части коптера в воздухе, переходник для аккумулятора и преобразователь напряжения, к левому лучу провод от антенны. Все необходимые отверстия на плате для установки лучей и телеметрии сделаны производителем. Была использована рама F550 с шестью лучами, обладающая повышенной устойчивостью. На рисунке 11 она уже собрана, моторы и телеметрия не отрегулированы. Антенна GPS установлена на верхней части коптера, для того чтобы другие элементы коптера не влияли на магнитное поле вокруг датчика. Моторы прямого и обратного вращения устанавливались произвольно.

Рисунок 10 - Пайка платы разводки питания Рисунок 11 - Сборка рамы гексакоптера

При установке метеостанции на борт (рис. 12) пришлось удлинить провода для датчиков газа, поскольку воздушный поток затягивался моторами коптера на расстоянии 20 см. К боковой части бокса потребовалось приклеить две гибкие трубки из стекловолокна, а к ним присоединить провода от датчиков газа для закрепления их в необходимом положении. Сенсоры освещенности, температуры и влажности расположены на боковой части бокса, датчик давления и высоты - внутри. Бокс расположен на верхней части коптера.

Рисунок 12 - Установка метеостанции Рисунок 13 - РТС Гексакоптер-эколог

В результате работы создана метеостанция и осуществлена запись данных на карту памяти. Собран летательный аппарат, на него установлена метеостанция. Аппарат готов к работе. Проведены тестовые полеты с метеостанцией на борту в лабораторных и полевых условиях. Созданный гексакоптер-эколог (рис. 13) будет актуален для детального мониторинга конкретного района [20].

Робот-ищейка. Рассмотрим другой пример использования принципа модульности. В ходе создания робота-ищейки были сформулированы основные задачи: разработать проект и конфигурацию робота, способного проходить по маршруту согласно алгоритму, распознавать на изображении с камеры препятствия и объезжать их [22]. Для каждого модуля необходимо было проверить совместимость с другими компонентами, подключить модуль к плате, провести его настройку, протестировать функции отдельных модулей и платы Arduino Uno, собрать единый роботизированный комплекс. В работе использован микроконтроллер Arduino Uno, для управления моторами - плата расширения motor shield. Блок питания робота состоит из 5 батареек AA 1.5V. Также был добавлен ультразвуковой датчик расстояния HC-SR04 для обнаружения препятствий. Поскольку основная цель робота - поиск объектов, необходим инструмент, позволяющий определить, является ли объект препятствием или объектом поиска. Распознавание объекта является отдельной задачей, поскольку ресурсов памяти микроконтроллера для ее решения недостаточно. Идея создания прототипа робота-ищейки заключалась в том, чтобы робот при обнаружении препятствия мог получить изображение с использованием видеокамеры OV7670 и отправить его на сервер посредством wi-fi- модуля (на основе ESP 8266). Распознавание объектов должно производиться на сервере. Поскольку в статье речь идет о создании прототипа робота-ищейки, робот должен отделять препятствия, такие как стены, двери от небольших объектов. Распознавание конкретных объектов является одним из возможных путей развития проекта.

В качестве аналога для прототипа робота-ищейки могут быть рассмотрены роботы TurtleBot. Они способны строить карту и одновременно перемещаться по комнате. TurtleBot имеет специальное приспособление для манипулирования объектами. TurtleBot может быть перенастроен для поиска объектов в помещении. Функциональные возможности роботов TurtleBot гораздо шире, чем у прототипа робота-ищейки. Например, во время составления карты робот может отмечать на карте найденные объекты. Стоимость робота составляет 549$. Стоимость компонентов робота-ищейки составляет менее 15$. Обе системы способны выполнять поиск объектов в помещении.

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

расстояния до препятствия с учетом скорости движения. Посредством motor shield к микроконтроллеру подключен отдельно каждый мотор. Из-за качества изготовления скорости вращения моторов не совпадали (было испробовано несколько идентичных по характеристикам моторов). Добиться компенсации эффекта удалось программно: подбором сигналов, определяющих скорости вращения моторов. Аппаратно избежать асинхронного вращения моторов можно с помощью энкодеров: колес с чередующимися светлыми радиальными полосами и дополнительными датчиками цвета (рис. 16а). Количество светлых полос на колесе эквивалентно полному обороту. Программно можно отслеживать количество оборотов каждого колеса и при несовпадении увеличивать скорость вращения колеса с меньшим количеством оборотов.

Рисунок 14 - Принципиальная схема робота-шцейки

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

Главное назначение робота - поиск предмета в помещении. Предмет может находиться в любой точке помещения, поэтому один из главных критериев в выборе алгоритма - посещение всех точек помещения. Второй значимый критерий - ограниченная флеш-память Arduino Uno (32 Кб). Исходя из критериев, представленных выше, в качестве алгоритма обхода помещения был выбран алгоритм короеда [23]. Пример работы алгоритма представлен на рисунке 15. Область обхода ограничена темными пикселями. При прохождении участка ячейка закрашивается в серый цвет. Пиксель P является активным. Соседние пиксели Q, R, S ожидают закраски. При обходе помещения робот-ищейка находится в центре рассматриваемой области. Помещение разделяется на области по 20 см2. Обход производится в соответствии с алгоритмом. При прохождении отмечаются препятствия и пройденные области. Обход завершается, когда внутри области, ограниченной препятствиями, не останется не пройденных областей.

Рисунок 15 - Пример работы алгоритма короеда

После отладки программного блока движения РТС по заданному алгоритму была подключена и настроена камера OV7670. В качестве основного режима работы с камерой был задан YUV. В этом режиме использован первый байт, кодирующий градацию серого цвета. При подключении камеры были задействованы практически все цифровые входы Arduino Uno, камера зафиксирована на регулируемой подставке (рис. 16б).

б

а

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Рисунок 16 - а - калибровка моторов, б - крепление камеры к корпусу РТС

В результате съемки получены изображения в формате bmp. Размер полученного изображения 240 х 320 пикселей, глубина цвета 32. Качество полученных изображений для поисковых целей можно считать удовлетворительным, так как визуально объекты и текст различимы. На рисунке 17 представлено изображение и варианты распознавания объекта на изображении.

Рисунок 17 - Пример распознавания изображения на объекте

В результате проведенной работы был собран прототип робота-ищейки (рис. 18). Произведены тестовые обходы помещения, подключена и настроена камера, получены изображения объектов в помещении. Время обхода помещения площадью 12 м2 составило 14 минут. Общее время автономной работы без замены блока питания составило 53 минуты. Фотосъемка должна проводиться при подключении платформы к компьютеру, так как для одновременного подключения моторов, камеры OV7670 и SD-карты на Arduino Uno недостаточно входов. Наиболее простым решением является использование платформы Arduino Mega со значительно большим количеством входов. Целью статьи является демонстрация значения и эффективности использования модульности при проектировании учебных РТС. Для демонстрации принципа модульности достаточно функциональных возможностей платформы Arduino Uno. Работоспособность каждого модуля была протестирована отдельно по принципу модульности. Проведена попытка передачи данных через канал wi-fi. После установления исправности wi-fi-модуля основная программа была объединена с программой для обеспечения работы модуля wi-fi. Для одновременной работы камеры и wi-fi-модуля флеш-памяти Arduino Uno (32 кБ) оказалось недостаточно. Функциональности Arduino Uno достаточно для создания прототипа робота-ищейки, а также выполнения задач его тестирования. В результате создан прототип робота-ищейки (рис. 18), подключена камера, роботом произведена фотосъемка объектов в помещении, проведен тестовый обход помещения площадью 12 м2.

а б

Рисунок 18 - Прототип робота-ищейки

SD card модуль Arduino поддерживает SD-карты до 2 Гб. Размер одного снимка в формате bmp составляет 76 Кб. За один обход РТС может произвести более 20000 снимков. Вес РТС -276 г, длина - 15 см, ширина - 13,6 см, высота - 14 см. Обход помещения возможен при наклоне поверхности не более 5 градусов, трудности могут быть вызваны низкими (менее 5 см) препятствиями. Также прототип не может преодолевать препятствия в виде ступеней. При написании программы для РТС и при тестировании его составляющих был использован принцип модульности, поэтому компоненты РТС могут быть легко заменены.

Заключение. В качестве платформы для оценки эффективности использования принципа модульности применительно к робототехническим проектам была выбрана платформа Arduino Uno. Принцип модульности реализован при создании метеостанции и робота-ищейки. Выявлены основные достоинства модульного подхода при разработке РТС на платформе Arduino. Произведена оценка эффективности использования принципа модульности применительно к проектам разной сложности. Использование принципа модульности позволило выполнять независимое предварительное тестирование отдельных модулей; производить безопасное добавление, удаление или замену модулей; проводить быструю настройку и калибровку отдельных модулей. В процессе реализации принципа модульности была решена задача проверки совместимости модулей, повышена ремонтопригодность системы, уменьшена область поиска возможных программных ошибок.

На данном этапе разрабатываются лабораторные работы для ряда дисциплин кафедры «Системы автоматизированного проектирования» по направлению «Информатика и вычислительная техника», в частности для бакалавров по курсу «Схемотехника», а для магистров по курсу «Технологии проектирования и информационная поддержка жизненного цикла наукоемкой продукции», а также для курса «Технология управления цифровым макетом изделия». Именно при разработке этих лабораторных работ студентам предлагается в рамках задания разработать РТС на основе применения принципа модульности на аппаратном или программном уровне.

Библиографический список

1. Кальченко Е. А. Мониторинг образовательной робототехники и IT-образования города Москвы / Е. А. Каль-ченко, И. Е. Ступина, Н. В. Мельяновская. - Москва : Издательский центр АНО «АИР», 2017. - 328 с.

2. Гагарина Д. А. Робототехника в России: образовательный ландшафт. Часть 1 / Д. А. Гагарина, С. Г. Косарецкий, А. С. Гагарин. - Москва : Национальный исследовательский университет «Высшая школа экономики». 2019. - 108 с.

3. Кузьмина М. В. Образовательная робототехника: сборник методических материалов для работников образования по развитию образовательной робототехники в условиях реализации Федеральных государственных образовательных стандартов / М. В. Кузьмина, А. В. Гребенкин. - Киров : КОГОАУ ДПО «ИРО Кировской области», 2016. - 250 с.

4. Ечмаева Г. А. Подготовка педагогических кадров в области образовательной робототехники / Г. А. Ечмаева // Современные проблемы науки и образования. - 2013. - № 2. - С. 325.

5. Комков Н. И. Перспективы и условия развития робототехники в России / Н. И. Комков, Н. Н. Бондарева // Мир (Модернизация. Инновации. Развитие). Сер. 7. - 2016. - № 2 (26). - С. 8-22.

6. Комплексная программа «Развитие образовательной робототехники и непрерывного IT-образования в Российской Федерации»: Распоряжение Правительства Российской Федерации от 4 сентября 2014 г. № 1726-р // Паспорт комплексной программы. - 2014. - С. 29.

7. Барсуков Д. А. О принципе модульности при создании робототехнических систем на платформе Arduino / Д. А. Барсуков, Т. М. Волосатова // Математические методы в технике и технологиях - ММТТ / Саратовский государственный технический университет имени Гагарина Ю.А. - 2019. - Т. 12-3. - C. 44-47.

8. Khoder H. Modular technology in design of flexible complex systems / H. Khoder, G. V. Verkhova, S. V. Akimov // T-Comm. - 2017. - vol. 11, no. 9. - P. 86-90.

9. Андреев В. А. Модульный принцип построения оборудования транспортных телекоммуникационных сетей / В. А. Андреев, В. А. Бурдин, С. Г. Телешевский, В. Ю. Шустанов // T-COMM: Телекоммуникации и транспорт. - 2013. - Т. 7, № 8. - С. 17-19.

10. Лопота А. В. Этапы и перспективы развития модульного принципа построения робототехнических систем / А. В. Лопота, Е. И. Юревич // Научно-технические ведомости Санкт-Петербургского государственного политехнического университета. Сер. Информатика, телекоммуникации и управление. - 2013. - № 1. - С. 98-103.

11. Оспенникова Е. В. Образовательная робототехника как инновационная технология реализации политехнической направленности обучения физике в средней школе / Е. В. Оспенникова, М. Г. Ершов // Педагогическое образование в России / Уральский государственный педагогический университет. - 2015. - № 3. - С. 33-40.

12. Оспенникова Е. В. Применение образовательной робототехники в учебном процессе по физике / Е. В. Оспенникова, М. Г. Ершов // Вестник Пермского государственного гуманитарно-педагогического университета / Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Пермский государственный гуманитарно-педагогический университет». Сер. Информационные компьютерные технологии в образовании. - 2016. - № 12. - С. 116-141.

13. Ершов М.Г. Использование робототехники в преподавании физики / М. Г. Ершов // Вестник Пермского государственного гуманитарно-педагогического университета / Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Пермский государственный гуманитарно-педагогический университет». Сер. Информационные компьютерные технологии в образовании. - 2012. - № 8. - С. 77-85.

14. Перунова Т. А. Достоинства и недостатки конструкторов, используемых при обучении робототехнике / Т. А. Перунова // Современные научные исследования и разработки / Научный центр «Олимп». - 2019. -№ 1 (30). - С. 833-835.

15. Стариченко Е. Б. Применение компьютеров Raspberry Pi в системе образования / Е. Б. Стариченко // Педагогическое образование в России / Уральский государственный педагогический университет. - 2015. -№ 7. - С. 137-141.

16. Сергеева А. Одноплатный компьютер Raspberry Pi: от учебного пособия до промышленного контроллера / А. Сергеева, С. Кривандин // Компоненты и технологии. - 2016. - № 4 (177). - С. 96-102.

17. Пономаренко В. И. Использование платформы Arduino в измерениях и физическом эксперименте / В. И. Пономаренко, А. С. Караваев // Известия высших учебных заведений. Прикладная нелинейная динамика. - Т. 22, № 4. - 2014. - С. 77-90.

18. Conner-Simons A. «Design your own custom drone. CSAIL system lets users design and fabricate drones with a wide range of shapes and structures» / A. Conner-Simons- December, 2016. - Режим доступа: https://news.mit.edu/2016/design-your-own-custom-drone-1205, свободный. - Заглавие с экрана. - Яз. рус. (дата обращения: 30.10.2020).

19. Spice B. «DIY Robot Design» / B. Spice. - June, 2017. - Режим доступа: https://www.cmu.edu/news/stories/archives/2017/june/diy-robot-design.html, свободный. - Заглавие с экрана. -Яз. рус. (дата обращения: 30.10.2020).

20. Барсуков Д. А. Создание метеостанции на базе БПЛА / Д. А. Барсуков, Т. М. Волосатова // Мехатро-ника, автоматика и робототехника. - 2019. - № 3. - С. 131-134.

21. Брумштейн Ю. Робототехнические системы: вопросы разработки / Ю. Брумштейн, М. Ильменский, И. Колесников // Интеллектуальная собственность. Авторское право и смежные права. - 2016. - C. 49-64.

22. Барсуков Д. А. Создание робота-ищейки / Д. А. Барсуков, Т. М. Волосатова // Мехатроника, автоматика и робототехника. - 2019. - № 3. - С. 6-9.

23. Хропов А. Алгоритмические основы растровой графики / А. Хропов. А. Карпов, В. Лемпицкий, Е. Иванов. - Москва : БИНОМ. Лаборатория знаний, 2007. - 304 с.

References

1. Kalchenko E. A., Stupina I. E., Melyanovskaya N. V. Monitoring obrazovatelnoy robototekhniki i IT-obrazovaniya goroda Moskvy [Monitoring of educational robotics and IT education in the city of Moscow]. Moscow, Publishing Center ANO "AIR", 2017. 328 p.

2. Gagarina D. A., Kosaretskiy S. G., Gagarin A. S. Robototekhnika v Rossii: obrazovatelnyy landshaft. Chast 1 [Robotics in Russia: Educational Landscape. Part 1]. Moscow, National Research University "Higher School of Economics", 2019. 108 p.

3. Kuzmina M. V. Obrazovatelnaya robototekhnika : sbornik metodicheskikh materialov dlya rabotnikov obra-zovaniya po razvitiyu obrazovatelnoy robototekhniki v usloviyakh realizatsii Federalnykh gosudarstvennykh obra-zovatelnykh standartov [Educational robotics: a collection of teaching materials for educators on the development of educational robotics in the context of the implementation of federal state educational standards]. Kirov, 2016. 250 p.

4. Echmaeva G. A. Podgotovka pedagogicheskikh kadrov v oblasti obrazovatelnoy robototekhniki [Training of teaching staff in the field of educational robotics]. Sovremennyeproblemy nauki i obrazovaniya [Modern Problems of Science and Education], 2013, no. 2, p. 325.

5. Komkov N. I., Bondareva N. N. Perspektivy i usloviya razvitiya robototekhniki v Rossii [Prospects and conditions for the development of robotics in Russia]. Mir (Modernizatsiya. Innovatsii. Razvitie) [World (Modernization. Innovation. Development)], 2016, vol. 7, № 2 (26), pp. 8-22.

6. Kompleksnaya programma «Razvitie obrazovatelnoy robototekhniki i nepreryvnogo IT-obrazovaniya v Ros-siyskoy Federatsii» : Rasporyazhenie Pravitelstva Rossiyskoy Federatsii [Comprehensive program "Development of educational robotics and continuous IT education in the Russian Federation" : Order of the Government of the Russian Federation "], September 4, 2014, no. 1726-r], 2014. 29 p.

7. Barsukov D. A., Volosatova T. M. O printsipe modulnosti pri sozdanii robototekhnicheskikh sistem na plat-forme Arduino [On the principle of modularity when creating robotic systems on the Arduino platform]. Matematich-eskie metody v tekhnike i tekhnologiyakh [Mathematical methods in engineering and technology], 2019, vol. 12-3, pp. 44-47.

8. Khoder H., Verkhova G. V., Akimov S. V. «Modular technology in design of flexible complex systems». T-Comm, 2017, vol. 11, no. 9. pp. 86-90.

9. Andreev V. A., Burdin V. A., Teleshevskiy S. G., Shustanov V. Yu. Modulnyy printsip postroeniya obo-rudovaniya transportnykh telekommunikatsionnykh setey [Modular principle of construction of equipment for transport telecommunication networks]. T-COMM: Telekommunikacii i transport [T-COMM: Telecommunications and Transport], 2013, vol. 7, no. 8, pp. 17-19.

10. Lopota A. V., Yurevich E. I. Etapy i perspektivy razvitiya modulnogo printsipa postroeniya robototekhnicheskikh sistem [Stages and prospects for the development of the modular principle of building robotic systems]. Nauchno-tekhnicheskie vedomosti Sankt-Peterburgskogo gosudarstvennogo politekhnicheskogo universiteta [Scientific and technical statements of the St. Petersburg State Polytechnic University], 2013, no. 1, pp. 98-103.

11. Ospennikova E. V., Ershov M. G. Obrazovatelnaya robototekhnika kak innovatsionnaya tekhnologiya reali-zatsii politekhnicheskoy napravlennosti obucheniya fizike v sredney shkole [Educational robotics as an innovative technology for the implementation of the polytechnic orientation of teaching physics in secondary school]. Pedagog-icheskoe obrazovanie v Rossii [Pedagogical Education in Russia], 2015, no. 3, pp. 33-40.

12. Ospennikova E. V., Ershov M. G. Primenenie obrazovatelnoy robototekhniki v uchebnom protsesse po fizike [Application of educational robotics in the educational process in physics]. Vestnik Permskogo gosudarstvennogo gumanitarno-pedagogicheskogo universiteta [Journal of the Perm state humanitarian pedagogical university], 2016, no. 12, pp. 116-141.

13. Ershov M. G. Ispolzovanie robototekhniki v prepodavanii fiziki [The use of robotics in teaching physics]. Vestnik Permskogo gosudarstvennogo gumanitarno-pedagogicheskogo universiteta [Journal of the Perm State Humanitarian Pedagogical University], 2012, no. 8, pp. 77-85.

14. Perunova T. A. Dostoinstva i nedostatki konstruktorov, ispolzuemykh pri obuchenii robototekhnike [Advantages and disadvantages of constructors used in teaching robotics]. Sovremennye nauchnye issledovaniya i raz-rabotki [State of the art research and development], 2019, no. 1 (30), pp. 833-835.

15. Starichenko E. B. Primenenie kompyuterov Raspberry Pi v sisteme obrazovaniya [The use of Raspberry Pi computers in the education system]. Pedagogicheskoe obrazovanie v Rossii [Pedagogical Education in Russia], 2015, no. 7, pp. 137-141.

16. Sergeeva A., Krivandin S. Odnoplatnyy kompyuter Raspberry Pi: ot uchebnogo posobiya do promyshlen-nogo kontrollera [Raspberry Pi Single Board Computer: From Tutorial to Industrial Controller]. Komponenty i tekhnologii [Components and Technologies], 2016, no. 4 (177), pp. 96-102.

17. Ponomarenko V. I., Karavaev A. S. Ispolzovanie platformy Arduino v izmereniyakh i fizicheskom eksperi-mente [Using the Arduino Platform in Measurements and Physics Experiment]. Izvestiya vysshih uchebnyh zavedeniy. Prikladnaya nelineynaya dinamika [Proceedings of higher educational institutions. Applied nonlinear dynamics], 2014, vol. 22, no. 4, pp. 77-90.

18. Conner-Simons A. «Design your own custom drone. CSAIL system lets users design and fabricate drones with a wide range of shapes and structures», December, 2016. Available: https://news.mit.edu/2016/design-your-own-custom-drone-1205 (accessed 30.10.2020).

19. Spice B. «DIY Robot Design», June, 2017. Available: https://www.cmu.edu/news/stories /archives/2017/june/diy-robot-design.html (accessed 30.10.2020).

20. Barsukov D. A., Volosatova T. M. Sozdanie meteostantsiy na baze BPLA [Creation of a meteorological station based on UAVs]. Mekhatronika, avtomatika i robototekhnika [Mechatronics, Automation and Robotics], 2019, no. 3, pp.131-134.

21. Brumshteyn Yu., Ilmenskiy M., Kolesnikov I. Robototekhnicheskie sistemy: voprosy razrabotki [Robotic systems: development issues]. Intellektualnaya sobstvennost. Avtorskoe pravo i smezhnye prava [Intellectual property. Copyright and related rights]. 2016, pp. 49-64.

22. Barsukov D. A., Volosatova T. M. Sozdanie robota-ishcheyki [The search robot creation]. Mekhatronika, avtomatika i robototekhnika [Mechatronics, Automation and Robotics], 2019, no. 3, pp. 6-9.

23. Khropov A., Karpov A., Lempitskiy V., Ivanov E. Algoritmicheskie osnovy rastrovoy grafiki [Algorithmic foundations of raster graphics]. Moscow, BINOM. Laboratoriya znaniy Publ., 2007. 304 p.

i Надоели баннеры? Вы всегда можете отключить рекламу.