Litvek - онлайн библиотека >> Журнал «Компьютерра» >> Околокомпьютерная литература >> Цифровой журнал «Компьютерра» № 136

Компьютерра 27.08.2012 - 02.09.2012

Статьи

Робот за тридцать минут Евгений Крестников

Опубликовано 31 августа 2012 года


Цифровой журнал «Компьютерра» № 136. Иллюстрация № 1
Edumandriva и ряд других свободных проектов. Сейчас он работает над версией робоплатформы для вузов и предприятий.

Об открытом железе мы пишем нечасто. Не так давно появился замечательный повод исправить это упущение — первые партии устройств, выпущенных в рамках российского проекта ScratchDuino, поступят в школы уже в этом учебном году.

ScratchDuino выпускает входящая в группу "Мезон.Ру" компания ЗАО «ТЫРНЕТ». На сегодняшний день в серии два продукта: предназначенная для осуществления взаимодействия физической среды с программной ScratchDuino.Лаборатория и решение для обучения детей основам робототехники — ScratchDuino.Робоплатформа.

Компания «ТЫРНЕТ» прошла отбор Фонда содействия развитию малых форм предприятий в научно-технической сфере и получила государственный грант, который позволил воплотить идею в железе и довести её до стадии мелкосерийного производства. По словам генерального директора «Мезон.Ру» Павла Фролова, устройства ScratchDuino протестированы в российских школах и получили хорошие отзывы. Теперь компания готовится начать их регулярные поставки в образовательные учреждения и собирает предварительные заказы через сайт Linuxcenter.ru. Фролов также отметил высокий интерес, проявленный к ScratchDuino родителями учеников.


Цифровой журнал «Компьютерра» № 136. Иллюстрация № 2
Продукты ScratchDuino выпускаются серийно и доступны всем желающим
ScratchDuino = Scratch + Arduino
Проект ScratchDuino был задуман как средство взаимодействия физической среды со средой Scratch — визуальной средой программирования, развивающей идеи Лого, которую разработали в Массачусетском технологическом институте (MIT). «Scrath нужен, чтобы учить детей программировать, — объясняет Павел Фролов. — С её помощью можно обучить ребёнка объектно-ориентированному программированию за полчаса».

Программы на Scratch состоят из графических блоков с текстовыми подписями. Чтобы составить программу, нужно перетащить блоки в специальное окно. Бесплатное (хотя и не совсем свободное) приложение с открытым кодом распространяется на условиях собственной лицензии и доступно для Windows, Linux и Mac OS X.


Цифровой журнал «Компьютерра» № 136. Иллюстрация № 3
Программа на Scratch
За взаимодействие с реальным миром отвечает Arduino — набор микроконтроллеров и прочих электронных компонентов, очень популярный у «самодельщиков». "Изначально идея состояла в том, чтобы дать детям в школах поработать с Arduino, но потом мы поняли, что микроконтроллерный модуль там не выживет — его могут уронить, облить водой или положить в груду скрепок, — говорит Фролов. — Плату нужно упаковать в некую защитную среду, чтобы ребёнок её нечаянно не сломал".


Цифровой журнал «Компьютерра» № 136. Иллюстрация № 4
Arduino в картридже — один из ключевых элементов ScratchDuino
Arduino и специальную плату расширения (так называемый shield, или шилд) для подключения внешних устройств убрали в прочный картридж из прозрачного органического стекла.

Добро пожаловать в робототехнику
Картридж с Arduino можно устанавливать в разные устройства, которым нужны компьютерные «мозги». Первой была выпущена ScratchDuino.Лаборатория, основанная на плате с открытыми спецификациями Scratchboard для среды Scratch. «Мы доделали Scratchboard так, чтобы она хорошо сочеталась с идеологией убранного в картридж модуля Arduino, и добавили туда дополнительные элементы», — рассказывает Фролов.


Цифровой журнал «Компьютерра» № 136. Иллюстрация № 5
Плата ScratchDuino.Лаборатория также упакована в прочный корпус
Среда Scratch позволяет работать со стандартными датчиками платы ScratchDuino.Лаборатория, подключённой к компьютеру через порт USB, — встроенным микрофоном, датчиком света. Кроме того, имеется динамик (в стандартной версии Scratchboard он отсутствует), есть аудио- и видеовходы, кнопки и рычажок.

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

Ко входам платы подключаются дополнительные датчики (влажности, температуры, сопротивления и т.д.) для создания более серьёзных программ взаимодействия Scratch с физической средой. Показатели датчиков переносятся в переменные среды разработки и нормализуются в значениях от 0 до 100.


Цифровой журнал «Компьютерра» № 136. Иллюстрация № 6
ScratchDuino.Лаборатория с установленным в картридж модулем Arduino
ScratchDuino.Лаборатория соответствует стандартным спецификациям, и для её взаимодействия со Scratch не нужно прилагать усилия. Продукт работает со Scratch для Windows, Linux или Mac OS X. Впрочем, при желании устройство можно программировать через штатную среду разработки Arduino либо через Lazarus (IDE для Free Pascal). Из него можно сделать портативный детектор лжи, проверить с помощью датчика сопротивления, действительно ли растения радуются, когда их поливают, и т.д.

Самое главное, что всё это делается очень быстро — программы в Scratch короткие (десятки строк), объектно-ориентированные и пишутся на родном языке ребёнка. Это решает главную проблему с обучением младших школьников программированию: для освоения Scratch им не приходится запоминать англоязычные операторы. Здесь всё наглядно (создателям среды удалось решить проблемы Лого), так что дети начинают программировать практически сразу.


Цифровой журнал «Компьютерра» № 136. Иллюстрация № 7
Павел Фролов
"Затем у нас возникла идея сделать к имеющемуся картриджу с модулем Arduino стандартную платформу для обучения детей азам робототехники, — говорит Павел Фролов. — Надо сказать, что и ScratchDuino.Лаборатория, и ScratchDuino.Робоплатформа были созданы из-за новых образовательных стандартов — взаимодействие с физическими