вторник, 4 сентября 2012 г.

Домашние задания для занятий по робототехнике

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

При размышлении на эту тему возникают следующие идеи:

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

Конструирование.

Задания "до следующего занятия":
Японский конструктор ISOGAWA Yoshihito несколько лет назад выпустил конструктопедию (энциклопедию по конструированию) LEGO Technic Tora no Maci. Не смотря на свое японское происхождение в книге на несколько сотен страниц - только две страницы с текстом - одна на японском - вступление, а другая - тоже самое, только на английском. Остальные качественные фотографии и рисунки.


Так вот, а что если давать в качестве задания тому или иному учащемуся набор фотографий определенного механизма, и он бы подготавливал небольшой реферат (можно устный), который бы описывал что это за механизм, каково его предназначение, из каких частей состоит, в чем конструкторская особенность, и где бы можно было бы его использовать в реальных робототехнических задачах.
Имеет смысл попробовать.

Задание на долгий период времени:
Было подсказано преподавателем робототехники из Екатеринбурга - он использовал этот метод для себя - для тренировки конструкторских навыков.

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

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

На одном из зарубежных LEGO сайтов - это возведено в ранг конкурса - кто быстрее и качественнее подготовит инструкции по сборке только по нескольким фотографиям механизма.

Если ученик не может собрать робота в живую, то можно предусмотреть вариант, когда модель должна быть продемонстрирована в виде схемы, подготовленной в LEGO Digital Designer. Таким образом, ребята знакомятся также и с программным обеспечением, решающим задачи проектирования.

Программирование.

Тут, как ни странно, инструментов оказывается больше.
Простой вариант: преподаватель заранее готовит реализацию какого-то алгоритма. Особенно эффективно это смотрится на графических языках программирования. Ученикам раздаются распечатка программы или файл с ее текстом. Но не говорится, что это алгоритм и для чего он нужен. Это и есть задание - ребята должны догадаться о предназначении алгоритма и рассказать, для каких задач он подходит, какие должны быть конструкторские особенности робота (если это не входит в условие задачи).

Задания на программирование именно роботов, тоже могут выполнятся в домашних условиях. Для этого можно воспользоваться средами, которые эмулируют робота, его моторы и датчики, в 2D или даже в 3D мире. Из наиболее известных, это две среды RobotC Virtual Worlds (программирование на языках RobotC и Not eXactly C) и nxcSimulator (программирование на Not eXactly C). Среды достаточно мощные и уже проверенно, что на них можно тренировать написание даже довольно непростых вещей, например, PID регуляторов.


NiNoXT уже знакомил с этими средами здесь и здесь.

Есть еще, говорят, отечественная среда разработки QReal:Robots. Которая тоже поддерживает виртуальные полигоны для виртуальных роботов, но ее еще нужно опробовать. Интересующиеся, могут ознакомиться со средой здесь.


Еще один вариант также связан с роботами, но уже совсем не LEGO.

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


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

Есть много отзывов, касающихся того, что данная игрушка реально помогает изучать не только программирование, но и английский язык. И даже недавно выяснился такой факт, что в 239 ФМЛ г. Санкт-Петербург ученики сдают зачет по программированию именно в этой среде! И ведь действительно, гонять виртуального робота выполняющего охрану какого-то объекта интереснее, чем двигать игрушечную черепашку по разлинованному полю.

3 комментария:

  1. COLOBOT вроде как не совсем бесплатная

    ОтветитьУдалить
    Ответы
    1. Ровно как и RobotC, однако, школы покупают и используют. Надо лишь определиться, что важнее то, чего хотим достичь, или какое-то количество денег.

      Удалить
  2. ROBLOX is driven by a growing player base of over 300,000 creator players who produce an infinite variety of highly immersive experiences.

    These experiences range from 3D multiplayer games and competitions, to interactive adventures where friends can take on new avatars imagining what it's like to be a dinosaur, a miner working a mine or an astronaut on a space exploration.

    ОтветитьУдалить

Related Posts Plugin for WordPress, Blogger...