Проект «робот-питомец»: сервоприводы, датчики и характер

Робот-питомец превращает сервоприводы и датчики в проект, который дети обожают: соберите тело, а затем запрограммируйте характер как простые состояния «покой», «реакция» и «сон».
Робот-питомец — один из самых надёжных проектов, чтобы вернуть к программированию отвлёкшийся класс или заскучавшего ребёнка. Вы собираете небольшое существо из одного-двух сервоприводов и датчика, а затем основное время тратите на то, чтобы дать ему характер: манеру поведения, из-за которой оно кажется живым. Полезный для преподавания приём в том, что характер — это просто набор правил, поэтому проект ощущается как игра, а сам тем временем незаметно учит настоящему программированию.
Почему робот-питомец возвращает внимание
Почти каждый ученик в какой-то момент упирается в стену. Рабочий лист перестаёт цеплять, или у проекта слишком много правильных ответов и слишком мало самого ребёнка. Робот-питомец сбрасывает это состояние, потому что единственно верного результата тут нет. Один ученик делает пугливого кота, который прячется, другой — щенка, который следует за рукой. Порог входа низкий, поэтому никто не застревает, а потолок высокий, поэтому те, кто быстро справляется, продолжают. Дать питомцу имя — это половина мотивации, а когда ребёнок что-то назвал, ему обычно хочется, чтобы оно заработало.
Характер — это маленький конечный автомат
Никакие деревья поведения и прочие сложности не нужны. Трёх состояний достаточно, чтобы робот казался живым: покой, реакция и сон. В покое питомец делает мягкие, чуть случайные движения — лёгкое подёргивание ухом или поворот головы каждые несколько секунд, — чтобы никогда не выглядеть выключенным. В реакции он отвечает на что-то в комнате. В сне, после долгого затишья, он отключает движение и тихо ждёт, пока что-нибудь его не разбудит.
Вся программа — это цикл, который задаёт один вопрос: в каком я состоянии и что должно произойти дальше. Это чистое и честное введение в понятие состояния, и дети схватывают его быстро, потому что уже знают: настоящий питомец либо шалит, либо реагирует на тебя, либо спит.
Датчики — это органы чувств
Волшебный момент — это когда датчик впервые сам меняет настроение питомца. Свяжите каждый вход с чувством. Датчик расстояния означает, что кто-то приближается, поэтому питомец просыпается и выглядит любопытным. Всплеск звука — это грохот, поэтому он пугается. Датчик света, показывающий темноту, означает ночь, поэтому питомца клонит в сон. Держите соответствие простым и читаемым, один вход — одно настроение, а дальше пусть ученики добавляют новые, когда первое заработает.
Сервоприводы — это то, как питомец показывает настроение. Один серво может вилять хвостом, наклонять голову или махать парой ушей, и этот небольшой объём движения несёт удивительно много характера. Контроллер, способный одновременно управлять парой сервоприводов и читать датчик, удерживает проводку в честных рамках; плата sheenbot∞ справляется и с тем, и с другим, а значит сборка остаётся про поведение, а не про распутывание кабелей.
Чек-лист сборки на выходные
- Плата-контроллер, способная управлять сервоприводами и читать хотя бы один датчик.
- Один-два микросерво для движения — хвост, уши или наклон головы.
- Один входной датчик для начала: хорошо подходит датчик расстояния или звука.
- Корпус из того, что есть под рукой: картон, 3D-печать или каркас из LEGO.
- Запасные качалки для серво и небольшой бюджет на поломки — примерно от десяти до пятнадцати процентов стоимости набора, потому что подвижные детали всё-таки перегружают.
Если вы собираете комплектующие, сервоприводы и датчики в sheen store — те же самые, что мы используем на занятиях, так что проект совпадает с тем, что ребёнок видит в академии.
Как проводить это на уроке
Не стройте все три состояния сразу. Начните только с покоя и добейтесь, чтобы питомец подёргивался. Добавьте реакцию на следующем занятии, а потом сон. Такое разбиение даёт каждому ребёнку работающего робота в конце каждого урока, а это гораздо важнее, чем идеальный робот в конце четверти. Проект хорошо растягивается на несколько недель еженедельных занятий или укладывается в каникулярную сборку, если хочется пройти его одним интенсивным заходом на каникулярном воркшопе.
Вывод в том, что характер — это программирование. Робот-питомец даёт детям повод всерьёз заинтересоваться циклами простоя, показаниями датчиков и простыми правилами принятия решений, потому что из этих правил складывается нечто, ведущее себя так, будто у него есть собственный разум. Это тот проект, к которому мы обращаемся, когда вовлечённость просела, и он почти всегда её возвращает.



