Возникновение новых научных направлений, технических средств и технологий, позволяет реализовать обучение программированию на качественно другом уровне. Одним из таких направлений является робототехника. Все более распространяющееся увлечение молодежи робототехникой может быть использовано для повышения эффективности обучения программированию: решение интересной практической задачи по «обучению» робототехнических устройств определенному алгоритму действий естественным образом мотивирует обучающихся к активной и целенаправленной работе со знаково-символическими средствами, до этого для них скучной и непонятной. Робототехника привлекает обучающихся новизной и разнообразием методов работы, актуальностью содержания, возможностью наглядного представления результата своей знаково-символической деятельности.
В зависимости от предметной области в определении понятия «робототехника» выделяют те или иные признаки (таблица).
Определение понятия «Робототехника»
Определение |
Источник |
Робототехника – производственная техника, основанная на применении роботов |
Ожегов С.И. Толковый словарь русского языка |
Робототехника – область науки и техники, ориентированная на создание роботов и робототехнических систем, построенных на базе мехатронных модулей |
Приказ Минобрнауки РФ от 9.11.2009 № 545 «Об утверждении и введении в действие ФГОС ВПО по направлению подготовки 221000 «Мехатроника и робототехника» |
Робототехника – технические устройства, связанные с изготовлением и применением роботов |
Современный энциклопедический словарь под ред. Т.Ф. Елфимовой |
Робототехника – прикладная наука, занимающаяся вопросами построения технических систем, функционально эквивалентных некоторым из важнейших систем человеческого организма |
Накано Э. Роботы и робототехника |
Как видно из определений робототехники, ее основным понятием является робот – универсальный автомат, для осуществления механических действий, подобных тем, что производит человек, выполняющий физическую работу.
Современный робот представляет собой устройство, состоящее из нескольких систем, а именно: управляющей, исполнительной, сенсорной, – а также системы связи [1]. Система связи предназначена для обмена информацией робота с человеком и другими устройствами, а также между устройствами, входящими в состав робота.
Управляющая система – это «мозг» робота. Служит для выработки закона управления приводами (двигателями) механизмов исполнительной системы на основе сигналов обратной связи от сенсорной системы, а также для организации общения робота с человеком на том или ином языке. Интеллектуальные способности робота зависят, прежде всего, от алгоритмического и программного обеспечения его управляющей системы.
Исполнительная система, определяющая «моторику» робота, т. е. его способности совершать разнообразные движения, служит для отработки управляющих сигналов, формируемых управляющей системой, и воздействия на окружающую среду. Это, например, механические руки (манипуляторы), механические ноги (педипуляторы), синтезаторы речи, графопостроители и многое другое.
Сенсорная система – это искусственные органы чувств робота. Как и человеческие, предназначены для восприятия и преобразования информации о состоянии внешней среды и самого робота.
В качестве элементов сенсорной системы робота обычно используются телевизионные и оптико-электронные устройства, лазерные и ультразвуковые дальномеры, тактильные и контактные датчики, датчики положения, тахометры, акселерометры, гироскопы и т.п.
Система связи организует обмен информацией между роботом и человеком или другими роботами. Цель такого обмена – формулировка человеком заданий роботу, организация диалога между человеком и роботом, контроль за функционированием робота, диагностика неисправностей и регламентная проверка робота.
В настоящее время для образовательных целей созданы такие робототехнические наборы, как Lego NXT 2.0. (Ev3), Pop-Bot Parallax, iRobotCreate.
LEGO Mindstorms – это конструктор (набор сопрягаемых деталей и электронных блоков) для создания программируемого робота. К достоинствам этого конструктора можно отнести большую функциональность, большее количество инструкций для сборки различных моделей роботов на русском языке.
Наборы LEGO Mindstorms комплектуются набором стандартных деталей LEGO (оси, колеса, шестерни и др.) и набором, состоящим из сенсоров, двигателей и программируемого блока. Наборы делятся на базовый набор и расширенный. Базовый набор поставляется в двух версиях: версия для широкой продажи и базовый обучающий набор. Оба набора могут быть использованы для участия в соревнованиях робототехники (например, во Всемирной олимпиаде роботов (англ. World Robot Olympiad)). Расширенный набор содержит большее количество деталей.
Pop-Bot Parallax представляет собой роботизированную платформу на базе модуля управления BASIC Stamp. Включает в себя все необходимое для сборки – алюминиевую платформу, сервоприводы непрерывного вращения, колеса, датчики, крепеж. На платформе имеется макетная плата, что расширяет возможность подключения дополнительных компонентов.
Большое количество примеров для Pop-Bot Parallax позволяет познакомиться со встраиваемыми системами, освоить работу аппаратной части (датчики, исполнительные устройства) и принципы программирования. Для начала работы с набором не требуется особых знаний в области робототехники, электроники и программирования.
I-Robot Create – это учебный робот, созданный на основе популярного робота-пылесоса, разработанный и продаваемый компанией iRobot. Встроенный ультразвуковой сенсор и дифференцированный привод робота позволяют изучить основные приемы работы с робототехническими устройствами. Устройство представляет собой диск 34 см в диаметре и до 9 см в высоту. Большой контактный сенсор установлен в передней части устройства, с инфракрасным датчиком по центру в верхней передней части. В зависимости от модели, робот поставляется с одним или двумя инфракрасными датчиками «Виртуальная стена», а некоторые модели и с «Виртуальными стенами – маяками».
Кроме робототехнических наборов, в настоящее время актуально использование симуляционных сред управления движением робота. Наиболее популярной средой управления роботами, поддерживающей симуляцию, является Microsoft Robotics Developer Studio (MRDS) [1].
Платформа MRDS включает в себя язык визуального программирования Visual Programming Language (VPL) и имитационную визуальную 3D-среду. Язык визуального программирования Visual Programming Language (VPL) предлагается в качестве средства описания алгоритмов поведения роботов для начинающих программистов (в том числе данный язык программирования может изучаться студентами первых курсов), язык C# – для профессиональных. Написание программы на VPL заключается в выборе подходящих компонентов для решения поставленной задачи и устанавливания связи между ними.
Среда Microsoft Development Robotics Studio может быть с успехом использована в образовательных целях. К ее достоинствам можно отнести:
– бесплатную лицензию для учебных заведений;
– достаточно легкий старт для начала использования;
– наличие учебно-методических материалов для организации обучения и проведения учебных исследований;
– сценический подход к моделированию окружающего мира, позволяющий создавать и размещать их в определенных местах виртуальной среды (сцены);
– развитые средства графики, позволяющие точно моделировать визуальную составляющую окружающего мира;
– возможность учета законов физики при построении модели.
Отметим некоторые дидактические особенности использования сред управления роботами и робототехнических наборов в учебном процессе:
– среды управления роботами (Microsoft Robotics Studio, Arduino, Parallax Boe-Bot, Lego NXC-G) поддерживают популярные языки программирования (С#, Visual Basic), которые имеют практическую значимость для будущей профессиональной деятельности;
– роботехнические конструкторы дают возможность обучающимся манипулировать не только виртуальными, но и реальными объектами. Это имеет немаловажное значение для успешного освоения учебного материала обучающимися с разными ведущими каналами восприятия. Обработка информации с помощью датчиков и настройка датчиков дают студентам представление о различных вариантах понимания и восприятия мира живыми системами;
– виртуальные среды (например, Visual Simulation Environment) позволяют не только управлять запрограммированными роботами, но и непосредственно создавать окружающие предметы. Таким образом, если в группе студенты имеют разные интересы и увлечения (компьютерная графика, дизайн, программирование), можно объединять их в группы и разделять обязанности: кто-то программирует робота, кто-то создает окружающую среду. Коллективная работа позволяет студентам получать навыки сотрудничества при разработке проекта, что особенно актуально в настоящее время.
Таким образом, введение элементов робототехники при изучении программирования позволит заинтересовать студентов, разнообразить учебную деятельность, использовать групповые активные методы обучения. Следует отметить, что совместное изучение программирования и робототехники за рубежом приобретает все большую популярность и дает положительные результаты, о чем свидетельствует ряд исследований [3, 4, 5].