Домашние задания для занятий по робототехнике Следы NiNoXT в Галактике / 04.09.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 регуляторов.Подробнее со средами можно ознакомиться здесь:http://nnxt.blogspot.com/2012/05/nxc-robot...tual-world.htmlhttp://nnxt.blogspot.com/2012/03/nxc_29.htmlЕсть еще, говорят, отечественная среда разработки QReal:Robots, которая тоже поддерживает виртуальные полигоны для виртуальных роботов, но мной она пока не опробована. Интересующиеся могут ознакомиться со средой здесь.Еще один вариант также связан с роботами, но уже совсем не LEGO. Существует такая древняя компьютерная игрушка COLOBOT. В ней космонавту необходимо управлять роботами для выполнения различных миссий по терраформированию неземных миров. Здесь есть и строительство новых объектов и роботов, и исследования новых земель, и охрана своих владений от нападения извне. Для того, чтобы управлять роботами, вы должны их сначала запрограммировать. Т.е. наш виртуальный космонавт подходит к консоли робота и пишет там программу на Cи подобном языке. Программа может отвечать за всю миссию целиком, а может за небольшой какой-то ее участок. Потом, если нужно, еще одного робота программируете. А потом запускаете программы и смотрите, как механизмы повинуются вашим указаниям. В игре есть режимы обучения, постепенно объясняющие азы программирования виртуальных роботов. А управление роботом - это не только классическое: поезжай, поверни, подними, положи - тут можно реализовывать и машины состояний, и регуляторы различной сложности.Есть много отзывов, касающихся того, что данная игрушка реально помогает изучать не только программирование, но и английский язык. И даже недавно выяснился такой факт, что в 239 ФМЛ Санкт-Петербурга ученики сдают зачет по программированию именно в этой среде! И ведь, действительно, гонять виртуального робота, выполняющего охрану какого-то объекта интереснее, чем двигать игрушечную черепашку по разлинованному полю. colobot nxc qreal robotc домашняя работа конструирование программирование робототехника