- PVSM.RU - https://www.pvsm.ru -

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

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

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

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

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

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

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

Робот изначально задумывался Lego-совместимым
Время первых. История, как мы внедряли Scratch как язык программирования роботов - 4

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

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

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

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

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

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

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

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

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

Также мы вернулись к программированию роботов на Scratch в нашей новой настольной обучающей игре и будем рады, если вы поддержите ее издание [4] на краудфандинге.

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

Когда ты стоишь у истоков чего-то и «чувствуешь» тренды до их массового появления и радостно, что ты был первым и создал по сути рынок и грустно, что не тебе достались лавры победителя. Но могу гордо заявить, что сплав Scratch и Arduino в робототехнике РФ появился благодаря и моим стараниям.

Автор: Aleksandr Kazantsev

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/programmirovanie/331601

Ссылки в тексте:

[1] платы PicoBoard: https://en.scratch-wiki.info/wiki/PicoBoard

[2] по ссылке: https://yadi.sk/i/paULFAu_3MPbxQ

[3] найти тут: https://scratch.mit.edu/studios/157855/

[4] вы поддержите ее издание: https://crowdrepublic.ru/project/1021802/Bitva-Golemov-Kartochnaya-liga-Parobotov

[5] Источник: https://habr.com/ru/post/469433/?utm_source=habrahabr&utm_medium=rss&utm_campaign=469433