Pull to refresh

Время первых. История, как мы внедряли Scratch как язык программирования роботов

Reading time3 min
Views4.9K
Смотря на текущее разнообразие образовательной робототехники радуешься, что детям доступно огромное количество конструкторов, готовых изделий и что планка «входа» в основы программирования опустилась достаточно низко (вплоть до детского сада). Массово идет тенденция приобщения сначала к модульно-блочному программированию с переходом затем на более продвинутые языки. Но такая ситуация была не всегда.



2009-2010 года. Россия начала массово знакомиться с Arduino и Scratch. Доступная электроника и программирование начинают завоевывать умы как энтузиастов, так и преподавателей и идея все это соединить уже вовсю витала (а частично была реализована) в мировом инфопространстве.

На самом деле Scratch в релизнувшейся в это время версии 1.4 уже имел поддержку внешнего оборудования. В нем была заложена поддержка Lego WeDo (Motor blocks) и платы PicoBoard.

Но хотелось Arduino и роботов на ее основе, причем желательно работающих на базовой версии. В это же время один из японских ардуинщиков придумал как совместить платформы и выложил схематику (хотя и не всю и пришлось «додумывать») и прошивки на всеобщий доступ (но увы даже не на английском). Взяв за основу этот проект в 2010 году родился ScratchDuino (я тогда вместе с женой работал в компании ЛинуксЦентр).

Концепция «заменяемого картриджа» (не напоминает Micro:bit ?), магнитные крепления для компонентов робота и использование встроенных возможностей Scratch в части обработки сенсоров и управления моторами.





Робот изначально задумывался Lego-совместимым:



В 2011 году платформа увидела свет и (уже после ухода из проекта меня и моей жены в 2013 году) живет и развивается в текущий момент под именем РОББО.



Кто-то может возразить, что были же похожие проекты. Да, примерно в это же время начал развиваться проект S4A, но они были нацелены на программирование именно в стиле Arduino (с его цифровыми и аналоговыми выходами) из видоизмененного Scratch, тогда как моя разработка могла работать с «ванильной» версией (хотя мы также ее видоизменили, чтобы отобразить блоки именно для сенсоров от 1 до 4).

Потом появился Scratch 2.0 а с ним и начали появляться плагины как для Arduino, так и популярных роботов, а Scratch 3.0 из коробки поддерживает большое число робоплатформ.

Blockly. Если посмотреть на популярных роботов, вида MBot (который кстати вначале тоже использовал видоизмененный Scratch), то они программируются на блочном языке, но это не Scratch, а модифицированный Blockly от Google. Я не знаю, повлияло ли на его разработку моя, но точно могу сказать, что когда мы в 2013 году в Лондоне показывали разработчикам Blockly платформу Scratchduino, роботами там еще «не пахло».



Сейчас же Blockly модификации лежат в основе множества робототехнических конструкторов и учебных роботов и это уже другая история, так как за последнее время появилось (и также кануло в лету) огромное число проектов как в России, так и в мире. Но в РФ именно в Scratch-реализации и «противостоянии» Lego мы были первыми :)

Что же произошло после 2013 года. Мы с женой в 2014 году основали свой проект ПРОСТОРОБОТ (он же SIMPLEROBOT) и ушли в разработку настольных игр. Но Scratch нас не отпускает.

У нас есть интересные наработки по моделированию роботов в Scratch и его потомке Snap!
PDF файл с описанием можно скачать и использовать свободно по ссылке, а готовые проекты найти тут. Все работает и в 3 версии Scratch.

Также мы вернулись к программированию роботов на Scratch в нашей новой настольной обучающей игре «Битва Големов. Карточная лига Пароботов» и будем рады, если вы поддержите ее издание на Crowdrepublic.



Когда ты стоишь у истоков чего-то и «чувствуешь» тренды до их массового появления и радостно, что ты был первым и создал по сути рынок и грустно, что не тебе достались лавры победителя. Но могу гордо заявить, что сплав Scratch и Arduino в робототехнике РФ появился благодаря и моим стараниям.
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
Total votes 26: ↑24 and ↓2+22
Comments11

Articles