Неделя 1

Материал из robbo
Перейти к навигации Перейти к поиску

Пятый всероссийский летний робототехнический лагерь 2015

Неделя 1

Ребята участвующие в лагере должны уже как минимум год заниматься робототехникой, поэтому при приеме в лагерь они проходят входное тестирование. Поскольку робоплатформа рассчитана на самых маленьких и впервые попала в робототехнический лагерь было принято решение брать в группы ScratchDuino детей не прошедших тестирование. В день заезда каждое направление в лагере, а их около 20, было представлено руководителем направления на открытии лагеря. Для презентации направления мною было подготовлено несколько слайдов о робоплатформе. После открытия дети могли выбрать заинтересовавшее их направление и пройти либо собеседование, либо тестирование по данному направлению. Очень многим детям отказывали в выбранном направлении в связи с недостаточной подготовкой. И так в нашу группу попали 5 человек В течении следующих 4 дней нас дали три учебные пары в день: с 10:00 до 11:30, с 12:00 до 13:30 и с 17:00 до 19:00. При желании детей или в случаи необходимости можно было провести 4 пару с 20:00 до 21:30. Занятия в субботу состоят только из двух утренних пар, а после обеда происходит переход в место проведения соревнований и подготовка на реальных полях к соревнованиям. Воскресенье все посвящено соревнованиям.

День первый

Презентация к первому занятию

Иосиф помогает
Объезд двух дисков
Результаты соревнования, указано число успешно сделанных поворотов и время

Итак, начались занятия. Знакомство с детьми показало, что у нас дети, закончившие 4 и 5 класс, все из Питера, занимавшиеся лего конструированием и некоторые NXT G в течении года, два из них знакомы немного со Scratch в чистом виде. Мы начали с рассказа о том, что такое свободная робототехника. Конечно всем детям нравится, что робота можно создать совсем с нуля, но не все понимают насколько это сложно. Обсудили сложности, которые возникают при создании роботов, а я сильно пожалела, что не взяла с собой реальные версии ScratchDuino, разработанные моими студентами. В общем момент мотивации прошел успешно. Хотя в лагере, благодаря старшим опытным детям-робототехникам атмосфера в отношении ScrstchDuino была не благоприятная - платформу постоянно вышучивали и мягко скажем презирали) Однако младшим ребятам как раз идея крепления датчиков на магнитах сильно понравилась. Покрутили платформу в руках, посмотрели где двигатели, как вставлять и вынать картридж, как ставить датчики. Рассмотрели все надписи и светодиоды. Погоняли платформу руками по столу и посмотрели как зажигаются светодиоды направления движения двигателей.

Следующим шагом стал а установка программного обеспечения. Оказалось, что в партии поставленной в лагерь многие диски остались чистыми. Мы стали ставить всем Arduino 1.0.6 (а не записанную на диск версию), поскольку она автоматически устанавливает драйвера для Arduino. Показали как установить прошивку платы для использования Scratch. Детям понравилось рассматривать текст программы - "Какой он страшный" - "Как много написано" и тем самым мы создали положительную атмосферу для восприятия простого кода Scratch. Затем учились определять COM-порт по какому подключается робоплатформа, использовали для этого Arduino IDE, как наиболее быстрый способ. После запуска среды разработки Arduino IDE, достаточно в меню СЕРВИС -> ПОСЛЕДОВАТЕЛЬНЫЙ ПОРТ посмотреть номер порта. Только в этом случае каждый ребенок должен пользоваться одной и той же платформой, иначе IDE запоминает все порты. Потом подключали платформы в ScratchDuino. Кстати ни в одном руководстве не написано что же за Button такой, напротив которого при подключении должно возникнуть false. А на некоторых компьютерах возникает true и все работает. А уж загадочное А, вызывает массовый интерес детей, а преподавателю ответить нечего!

Первую программу конечно же была "тормози", поскольку останавливать робота больше нечем, а ловить его дети не всегда успевают. Потом практически самостоятельно было написано управление роботом со стрелок. Не использовали запуск двигателей на время и пришлось повозиться с тем, чтобы дети понимали, что сначала надо установить направление движения, а уж потом включать двигатель. Первое настоящее задание это написать движение по квадрату, бились за написание программы наименьшей длины. Таким образом, ненавязчиво, ввели понятие цикла. Мы поставили себе задачу показать удобства и ограничения языка Scratch и для этого подбирали соответствующие примеры. Следующим заданием было заставить двигаться робоплатформу по кругу. Многие практически сразу догадались, что сделать это, используя существующие команды невозможно, в крайнем случае получится многоугольник. Попросили детей запомнить это, чтобы увидеть как это реализуется в более сложных языках программирования. Ну и как принято в методике Филиппова Сергея Александровича, каждое продвижение вперед должно завершаться соревнованием. Провели соревнование на самую лучшую программу, объезжающую два диска по восьмерке. Хотелось, чтобы ребята увидели в этом объезде квадраты и воспользовались уже существующими программами. Но... все же понятие цикла сложно воспринимается, поэтому мы получили большущие линейные программы.


День второй

презентация ко второму занятию

Так как циклы у детей не пошли, мы посвятили весь второй день разработке программ на циклы. Серия задач представляла задание пути для робота, по которому он должен был проехать. Мы неуклонно требовали самой короткой программы. На доске была нарисована табличка в которую заносились результаты решения задач. Кто решал задачу первым получал в табличку 1, кто вторым - 2 и т.д. Завершили день соревнованием по кегельрингу. На круглом поле-ринге стоит 6 банок-кегель. Необходимо написать программу для робоплатформы без датчиков, за минимальное время выталкивающую все кегли за пределы ринга. Оценивались решения по трем критериям: минимальный размер программы в строчках, количество вытолкнутых банок и время работы программы в секундах. Очень много было технических проблем. Неловкое движение ребенка в результате которого USB шнур вытащен из шилда и компьютер потерял COM-порт. Причем Windows может прекрасно видеть порт, как и Arduino IDE, а вот ScratchDuino отказывается подключаться. В итоге была придумана целая система последовательности действий, которая приводила к определению порта.

Антон нагоняет пропущенный день Оценка учебных задач Тренировка Результаты соревнования