Публикации сообщества

Александр Григорьев • 12 декабря 2018

Игрофикация в робототехнике, плюсы и минусы

Нравится нам это или нет, развитие робототехники, в том числе образовательной, идёт по пути максимального упрощения её использования. Чтобы написать свою первую программу, теперь не обязательно понимать, в чём отличие двоичной системы исчисления от десятеричной, можно просто пальчиком или мышкой собрать "паззл" из визуальных блоков. Лично меня это радует. А Вас? Хороший тест, чтобы понять, каких идей и подходов Вы придерживаетесь в обучении. В разговоре со многими техническими специалистами, а подчас и преподавателями, можно услышать растерянность и даже неприкрытую вражду в отношении игрофикации. Что пугает и тревожит этих людей? Давайте попробуем разобраться, а заодно посмотрим, насколько далеко вперёд (или назад?) шагнула образовательная робототехника за последние годы и десятилетия.

Очень условно и схематично этапы развития робототехники можно представить себе следующим образом.

"Доисторическая" робототехника

Самое начало, восьмидесятые годы и ранее. Лишь отдельные, избранные представители человечества имеют возможность (и способны) заниматься робототехникой. Требуется глубокое понимание основ многих наук, очень серьёзное образование. Программирование на низкоуровневых языках. Роботы получаются пока нелепые, но разве это проблема для людей, посвятивших данной теме жизнь?

"Историческая" робототехника

Первые "общедоступные" робототехнические наборы "для всех". Например, fischertechnik Computing - 1985 г., Lego Mindstorms RCX - 1998 г. Очень-очень модные, очень-очень редкие и очень-очень дорогие игрушки для взрослых энтузиастов, а в отдельных случаях даже для очень-очень продвинутых подростков, которым очень-очень повезло. "Мобильный" робот из набора fischertechnik Computing-Experimental, привязанный проводом к компьютеру, в 1987 г. был способен даже ездить по черной линии на белом полу!

"Современная" робототехника (обратите внимание на кавычки)

"Массовые" наборы современности для средней и старшей школы. Это в первую очередь наборы Lego Mindstorms NXT и EV3, коммерческий успех которых сподвиг многих производителей броситься заполнять ту же самую нишу. Но гениальность и непревзойдённость конструктива Lego Technic трудно переоценить, для использования детьми он подходит практически идеально. Чего нельзя сказать, кстати, о программном обеспечении этой компании. Визуальная среда программирования Lego настолько неудачна, что отбивает всякую охоту её осваивать, а заодно формирует негативное отношение к визуальному программированию в целом. Даже «древние» среды программирования fischertechnik LuckyLogic (1991 г., на базе псевдографики) и fischertechnik ROBO Pro (2004 г., графическая среда, применяется до сих пор) выглядят рациональнее. Результат: данные наборы Lego годятся для использования в отдельных учебных заведениях  для работы с отобранными детьми, которых не пугает текстовое программирование.

Цена этих робототехнических наборов по-прежнему соответствует игрушке скорее для состоятельного взрослого, а не для ребенка. Посмотрите ролики на Youtube: большинство энтузиастов Lego Mindstorms NXT и EV3 - не подростки, а взрослые, которых уже не отталкивает обманчивая "детскость" конструктора.

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

Попытка компании Lego адаптировать свои наборы для использования в начальной школе выглядит следующим образом: давайте оставим детям ОДИН (!!!) мотор с ОДНИМ (!!!) датчиком и назовём это роботом! Конечно, дети будут способны многое узнать даже в этом случае, но не эффективнее ли использовать иной подход?

В момент своего появления (2013 г.) набор Lego Mindstorms EV3 был чудовищно передовым. Безусловно, его и сейчас, и ещё долгое время можно будет с успехом использовать в обучении. Но надеюсь, все понимают, что далеко не для всех задач он подходит оптимально. Так каких же средств недостаёт современной образовательной робототехнике? Какие нам нужны альтернативы и какие новые возможности они должны предоставлять?

Перво-наперво давайте честно признаемся самим себе: увлечение робототехникой в средней и старшей общеобразовательной школе никогда не станет по-настоящему массовым, охватывающим 100% учеников или близко к тому. В этот момент персональные интересы уже в целом сформированы, очень дифференцированы, и к тому же, изрядно трансформированы пубертатным периодом. Но если вновь обратиться к вышеописанным этапам становления образовательной робототехники, мы увидим, что она постепенно начинает быть доступной для более младшего возраста, происходит понижение "входного порога". И по опыту нашей школы мы можем сказать, что теперь в "началке" дети с восторгом ходят на занятия по робототехнике целыми классами!

mBot Educational Kit
mBot Educational Kit

Имеет ли смысл заниматься с третьеклассниками и четвероклассниками точно так же, как с подростками? Нет! Для этого требуются другие наборы и другие формы занятий, включающие игровые элементы. Но то, что нам самим в детстве казалось идеальной игрушкой, о чём мы могли лишь мечтать, нынешних детей привлекает не особо. Их привлекает то, о чём мы в детстве и мечтать не могли!

И было бы неплохо, кстати, если бы эти игрушки начали быть доступны каждому ребёнку. Прогресс не стоит на месте, за последнюю пару-тройку лет появилась масса интересных и доступных альтернатив классическому Lego Mindstorms EV3, и теперь иметь собственного несложного робота ничуть не более накладно, чем иметь мобильный телефон. Могут позволить себе приобрести подобные образовательные комплекты и школы.

Codey Rocky Educational Kit
Codey Rocky Educational Kit

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

Что даёт третьеклассникам-четвероклассникам посещение занятий по робототехнике?

  1. Понимание основ программирования, самых базовых идей и концепций, что позволит будущим взрослым профессионалам, какой бы деятельностью они не занимались (биология, автомеханика, журналистика, список можете продолжить сами), использовать программирование для решения своих прикладных задач. Программирование - это язык, и как любой другой язык, эффективнее всего осваивается в детстве. Обратите внимание, неважно, обозначается ли бесконечный цикл графической "скобкой" с подписью "всегда", или словечком "loop" со скобками. Независимо от способа обозначения суть остаётся неизменной.
  2. Интерес к инженерному и техническому знанию в целом. Кстати, мы не противопоставляем "технарей" "гуманитариям". "Технарь", это не тот, кто ненавидит читать книги, а тот, кто интересуется техникой. "Гуманитарий" это не тот, кто презирает технику, а тот, кто любит читать книги. Можно быть и "технарём" и "гуманитарием" одновременно, а можно быть ни тем, ни другим.
  3. Способность строить компьютерные модели, и вообще разнообразные интеллектуальные модели, а это один из наиболее эффективных, если не самый эффективный способ обучения и познания.
  4. Наконец, формирование самого главного метапредметного результата: способности рационально мыслить и решать любые задачи методом "сверху вниз".

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

Во-первых, по моему глубокому убеждению, разделяемому и многими другими преподавателями, в начальной, да и в средней школе следует использовать визуальные программные среды. Но… «не все йогурты одинаково полезны». Действительно хорошо зарекомендовала себя среда визуального программирования Scratch и (почти) все программные продукты на основе этого блочного языка, позволяющие работать с универсальными микроконтроллерами (Arduino, Micro:bit и прочие) и со специализированными роботехническими контроллерами (есть нюансы, но о них нужно говорить отдельно). Именно Scratch прочно формирует навыки СТРУКТУРНОГО программирования и не позволяет детям увязать в так называемом «спагетти-программировании» (чем грешат визуальные среды Lego Mindstorms, fischertechnik ROBO Pro и TRIK Studio, кстати). Обзор существующих визуальных сред на базе Scratch будет в следующих статьях.

Во-вторых, робототехнические наборы нового поколения должны быть изначально сориентированы на игровое использование детьми, при этом предоставлять возможность перейти к «серьезному» программированию. Эта игровая ориентация не должна ограничиваться лишь формальной декларацией на коробке: «Учись играя». Набор должен быть готов для игры и комплектоваться готовыми обучающими играми. И примеры реализации подобного подхода уже есть!

К настоящему моменту мне удалось покрутить в руках и освоить три подобных набора: Makeblock mBot, Makeblock Codey Rocky и Jimu Explorer (кстати, последний комплектуется семью сервомоторами с обратной связью и стоит при этом дешевле Lego Mindstorms EV3).

Jimu Explorer Educational Kit
Ubtech Jimu Explorer Educational Kit

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

Во всех трёх случаях разработчики предоставляют свой обучающий игровой курс в виде бесплатного мобильного приложения, работающего на платформах Android и iOS. Роль взрослого (поначалу) сведена к минимуму: выдать ребенку (или группе из двух-трёх детей) коробку с набором и смартфон или планшет, на котором установлено игровое приложение (mBlock Blockly или Jimu). Современные дети умеют играть в компьютерные игры, дальнейший процесс проходят практически самостоятельно, следует всего лишь им подсказать, что для начала игры надо выбрать раздел «История» или «Приключение», а интерактивная инструкция по сборке робота находится в самом приложении.

Может ли обычный родитель купить такой набор, отдать его вместе с планшетом «на растерзание» своему чаду и спокойно продолжить заниматься своими делами? Да, может. Может ли педагог-организатор без специальной подготовки проводить занятия по робототехнике с детьми с использованием подобных наборов? Да, может. Вопрос лишь заключается в том, что делать, когда ребенок пройдет игровой курс до конца. Как поддержать интерес ребенка, не дать ему увянуть? Вас не пугает перспектива выяснить, что ребенок вдруг научился делать что-то лучше, чем умеете Вы, и то, что Вы собирались ему начать рассказывать, он уже знает, и Вам нечем поделиться? Если Вы готовы учиться ВМЕСТЕ со своими детьми, вместе придумывать новые игры и новые игровые задания, значит, Вы на правильном пути. И у нас для Вас есть хорошая новость: мы постарались дать ряд подсказок по возможному дальнейшему направлению движения в нашей книге «Игровая робототехника для юных программистов и конструкторов: mBot и mBlock».

Об особенностях всех трёх наборов хотелось бы рассказать подробнее, но это тема для отдельной публикации. А пока давайте вернемся к вопросу о том, что нас пугает в современных тенденциях визуализации, игрофикации и упрощения пользования современной робототехникой.

Итак, чем нам грозит внедрение игровой робототехники? Для серьёзных специалистов «старой закалки» это может оказаться ощутимым ударом по профессиональному престижу. Задачи, которые требовали от них раньше времени и усилий, с использованием сегодняшних средств решаются без труда. «Мы вначале учились двоичной системе исчисления, а у современных детей всё РАЗ! – и готово! А азов они не знают!» Но те, кто высказываются подобным образом, забывают, что сами в юности слышали очень похожие слова от старших.

Педагогам, уже занимающимся робототехникой в средней и старшей школе, тоже будет непросто: придётся перекраивать программы обучения. Как минимум по той причине, что дети будут приходить с иным багажом знаний. Но виновата ли во всём игровая робототехника? Нет, по моему мнению, виновата наша всеобщая страсть решать все задачи методом «снизу вверх»! И наши обучающие курсы в большинстве своём тоже построены «снизу вверх»!

Каким образом частенько выглядит процесс обучения? Вначале мы заставляем детей освоить инструмент (для ребёнка – непонятно зачем), а затем требуем решить задачу с использованием этого инструмента. Таким образом формируется исполнительность, старательность, умение преодолевать сложности… Но думаю, и негативные стороны подобного подхода всем хорошо знакомы. Можно столкнуться с тем, что ученик нужный инструмент так и не освоил (ему это было неинтересно), либо есть шанс услышать: «Мне проще эту задачу решать по-другому».

При написании программ подобный метод работы называется «восходящим программированием» или методом «снизу вверх». Мы ВНАЧАЛЕ создаем необходимый инструментарий, то есть подпрограммы, а затем с их помощью пытаемся решить основную задачу. И очень часто мы при этом убеждаемся, что созданные или выбранные нами средства для решения задачи подходят не оптимально. Приходится начинать всё заново.

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

Идея, которую мне хотелось бы донести, заключается в том, что метод «сверху вниз» это не только метод программирования, не только эвристический метод решения разнообразных творческих задач, это ещё и метод обучения. И каждому педагогу имеет смысл задать следующие вопросы самому себе: «Не чрезмерно ли я сам злоупотребляю подходом снизу вверх? Готов ли я сам к изменениям? Кого мне хотелось бы вырастить из своих учеников, послушных исполнителей или творческих людей? Способен ли я сам оставаться ребенком и продолжать играть?»

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

Кол-во комментариев: (15)

Екатерина Алексеева
Александр - игра - великая вещь https://alldef.ru/ru/articles/almanac-28/! Если в игрофикации что-то и раздражает сегодня - это чрезмерное упрощение для ребенка всего и вся. Зона ответственности детей сужается до нуля, обязанностей у детей становится все меньше... Периодического трудового напряжения не хватает. Блюдечко с голубой каемочкой подставляется и под учебу, и под программирование, и под дела житейские... Но в принципе - игровое начало особенно для ребенка начальной школы - это мудро и правильно...
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Елена Дегтярева
    Полностью согласна, с вами, что "Программирование - это язык, и как любой другой язык, эффективнее всего осваивается в детстве." Глядя на сына, который не знает английского языка, учится в 1 классе, читает по слогам, справляется с программированием на сайте Code.org или в Scratch, удивляюсь. У нас все 3 набора Lego education, покупали по низкой цене. В противовес написанному, что "Визуальная среда программирования Lego настолько неудачна, что отбивает всякую охоту её осваивать, а заодно формирует негативное отношение к визуальному программированию в целом. " есть выход - программировать модели Лего через Scratch. Спасибо за пост!
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Александр Григорьев
    Спасибо! С программированием EV3 в Scratch, к большому сожалению, не всё гладко. Должен признаться, что моего терпения не хватило, чтобы пробиться через сложности необходимых подготовительных операций (хоть я не особенно старался, возможно). Самая главная проблема, которую я вижу, это невозможность создания программ автономной работы, необходимость постоянного подключения к компьютеру. Или я ошибаюсь? Поделитесь, у кого есть опыт! Но с EV3 можно работать в TRIK Studio, а это уже неплохо. Только придётся уделять особое внимание рациональному оформлению программы, чтобы она не превратилась в спагетти...
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Александр Григорьев
    Елена Дегтярева, Спасибо за подсказку! Знал про третий Scratch (работаем с продуктами на его основе), но как-то не доходили руки попробовать его с EV3. Да, теперь не надо специально готовить контроллер, и это здорово! К сожалению, судя по всему, в остальном сохраняются проблемы: низкая скорость обмена данными, урезанная функциональность, капризность Bluetooth соединения, и, самое главное, работа лишь в интерактивном режиме, под управлением компьютера. Пока что лишь TRIK Studio выглядит как спасительный инструмент, хоть и не лишённый недостатков.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Анна Хлебникова
    "Попытка компании Lego адаптировать свои наборы для использования в начальной школе выглядит следующим образом: давайте оставим детям ОДИН (!!!) мотор с ОДНИМ (!!!) датчиком и назовём это роботом! " Датчиков в "адаптированных" наборах (если речь идёт о WeDo и WeDo 2.0) не один. Количество моторов можно тоже подсоединять больше одного. Всё зависит от количества комплектов.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Александр Григорьев
    Надеюсь, то, что я написал, никого не вводит в заблуждение. Но давайте, на всякий случай поясню. В наборе Ledo Wedo один хаб с двумя разъёмами, плюс один мотор и два датчика. С помощью одного комплекта реализуются проекты с одним мотором и одним датчиком, либо с двумя датчиками, либо с двумя моторами (но без датчиков), если "добыть" ещё один мотор. В комплекте Lego Mindstorms EV3 лишь три мотора, хотя оправдано было бы иметь четыре. К одному контроллеру подключается максимум четыре стандартных Lego мотора. Существует возможность создать проект с бОльшим количеством моторов, но для каждых четырёх моторов потребуется свой собственный контроллер EV3 стоимостью примерно 20 тысяч рублей (если покупать отдельно). Вы считаете, что никак по-другому и не может быть? Отнюдь! В статье я пишу о том, что иной подход не только возможен теоретически, но и существуют реальные примеры его использования. Например, набор Ubtech Jimu Astrobot стоит примерно же столько, сколько Lego Wedo 2. Рассчитан на возраст от 8 лет. В комплекте лишь один датчик, но при создании проектов можно использовать датчики мобильного устройства (акселерометр), и кроме того, каждый мотор сам работает как датчик, поскольку имеет обратную связь. А моторов в комплекте пять. При наличии дополнительных моторов к одному контролеру подключается максимум 32 мотора. Не 2 и не 4, а 32. И повторюсь, это набор для детей от 8 лет.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Анна Хлебникова
    Александр, в WeDo 2.0 есть ещё и проекты с открытым решением, когда возможно использование нескольких хабов, датчиков и моторов. По поводу "образовательных комплектов" для образовательной робототехники. (Сразу оговорюсь, что я - не фанат наборов LEGO.) Но... Те учебно-методические материалы, которые представлены к наборам WeDo и WeDo 2.0 больше похожи на полноценные УМК. А набор, например, Ubtech Jimu Astrobot? Мне он больше напоминает игрушку.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Александр Григорьев
    Вот! Я тоже заметил! :) Современные наборы напоминают игрушки, при этом обладают принципиально более серьезными возможностями, чем те наборы, к которым мы привыкли! Кстати, я фанат наборов Лего, особенно Lego Technik. И большая проблема для нас с вами, для всех тех, кто занимается с детьми робототехникой, заключается в том, что нам рано или поздно придется переделывать УМК. Безусловно, можно ещё какое-то время пытаться держаться за старые УМК и старую методическую базу, главное, слишком не опоздать.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Анна Хлебникова
    Тут больше вопрос не в опоздании, а в финансировании, не правда ли? Держаться за старые УМК придётся. Ведь школе невозможно приобретать всё, чем наполняется рынок робототехнических игрушек. Поэтому старые-добрые УМК с одним мотором и одной кнопкой ещё пригодятся. :) Хотя... Каждому решать, что лучше: восемь пирогов и одна свечка или один пирог и восемь свечей. :)
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Александр Григорьев
    Тут непонятно, что катастрофичнее - опоздание или финансирование. Бюджет США на развитие искусственного интеллекта - 615 миллиардов долларов, и значительная часть этих денег вкладывается в образование. Мы эту цифру осознать просто не в состоянии. Но и США, и Россия в плане развития искусственного интеллекта безнадёжно, просто катастрофично отстают от Китая. Вы заметили, что все описанные выше наборы - китайские? "Это ж-ж-ж неспроста!" Все восемь пирогов с восемью свечами давно уже испечены и съедены, в Китае давным давно уже занимаются с детьми с использованием этих и подобных им наборов, все УМК давно написаны. В крупных городах функционирует система распознавания всех жителей и посетителей по лицу (и по походке), полиция находит любого необходимого человека за 8 минут. https://www.youtube.com/watch?v=2DBf1wrjG58 Скоро во всех школах для всех школьников (насколько я знаю) введут новый обязательный предмет - "Основы искусственного интеллекта". А мы продолжаем считать китайцев отсталыми и с пренебрежением относиться к их опыту. Так что дело даже не в отставании с финансированием, а в инерции нашего мышления. Немного информации для дальнейших размышлений на тему перспективности или бесперспективности развития робототехники в нашей стране. Наша статья полуторагодичной давности: Академический вестник АППО - 3(37), Григорьев А.Т., Винницкий Ю.А. Реализация учебных программ по направлению "робототехника" в непрофильной общеобразовательной школе. Написана на материале следующих интернет-публикаций: www.lab169.ru/2018/02/14/опыт-преподавания-робототехники-в-общеобразова… и www.lab169.ru/2018/03/15/проблемы-внедрения-учебных-программ-по-направл…
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Александр Григорьев
    Анна, честно говоря, про EV3+Makecode ничего не думаю, сказать мне практически нечего. Makecode вещь сама по себе очень неплохая, в некоторых отношениях почти незаменимая, по крайней мере при использовании Micro:bit или Adafruit Playground Express. Напрягает в первую очередь то, что это не Open Source. Но Makecode с EV3 попробовал, не завелось, я и забыл об этой связке. А может быть, зря. Надо будет изучить вопрос, попробовать снова, понять, почему не работает. Это может оказаться хорошим вариантом. Спасибо за идею!
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Александр Григорьев
    В очередной раз поражаюсь "гениальности" программистов компаний Lego и Microsoft... Сумасшедшее количество танцев с бубном, и вот результат: с помощью двух компьютеров, на одном из которых получалось сделать одни операции, а на другом другие, мне всё-таки удалось проверить связку EV3 + Makecode. С помощью одного компьютера мне удалось прошить "кирпич" EV3 новой прошивкой 1.10E, на другом заработал сам Makecode. Не знаю, может, это только мне так не повезло, мои компьютеры, конечно же замучены бесконечными экспериментами... Но если на вашей системе получится всё настроить, настоятельно рекомендую! :))) Анна, еще раз огромное спасибо, что напомнили про Makecode с EV3! И кстати, если всё-таки будет возможность познакомиться с Jimu, попробуйте сравнить удобство работы. Распаковываете набор, подсоединяете моторы к контроллеру, включаете его, запускаете приложение Jimu и с удивлением наблюдаете, как оно само безо всякого вашего участия и главное, безо всяких проблем прошивает свежей прошивкой контроллер, а контроллер потом перепрошивает все сервомоторы...
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Анна Хлебникова
    "В очередной раз поражаюсь "гениальности" программистов компаний Lego и Microsoft... " Возможно, это какой-то хитрый маркетинговый ход. :) LEGO и Scratch 3.0 обещают ещё и расширение для WeDo 2.0 в начале января. Будем посмотреть. :)
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии