2017-03-18

О кубиках

Лего бывает разное. Дупло (Duplo, полагаю, с ударением на первый слог) — для самых маленьких. Просто Лего, в виде кучи самых разнообразных серий и наборов, — для детей всех прочих возрастов. Lego Technic — для взрослых.
We love Lego
Год назад мне подарили здоровенный 42025 Cargo Plane. Боже, как быстро они обновляют ассортимент. Самолёт уже не продаётся. Кажется я понимаю маньяков, которые коллекционируют Лего. Ведь большинство моделей продаются лишь год-два. А потом становятся археологией и мечтой коллекционеров.
Собирать самолёт было интересно. Кажется, я потратил почти две недели, вечерами. Офигенская маленькая пластмассовая раздаточная коробка с почти настоящими муфтами включения. Куча рычажков, которые что-то включают, выключают, двигают.
Но играбельность у самолёта оказалась почти никакой. Большой. Тяжёлый. Несколько хрупкий. Непонятно, за что его держать, чтобы палец не попал в шестерёнку, и чтобы что-нибудь не отломить. Нельзя просто так включить пропеллеры и "полетать" по квартире. Игрушкоподъемность и кукловместимость тоже никакие.
Cargo Plane
Вспоминая детство и металлический конструктор (который иностранцы называют Meccano), пытался сделать машинку с поворотными колёсами. Не слишком успешно.
В железном конструкторе всё просто. Вот планка с дырками. Вот болт и гайка. Вот уголок, если надо соединить планки под углом. Для длинных жёстких конструкций есть длинные металлические профили.
Всё более-менее просто в корейском My Robot Time. Там пластмассовые детали без проблем соединяются под прямым углом. Наоборот, чтобы соединить встык или внахлёст, нужны дополнительные детальки.
А вот в Lego Technic всё очень сложно. Это не обычные кирпичики Lego, которые просто ставишь один на другой. Это тоже планки с дырками. И пластмассовые шканты для их скрепления (порылся в Википедии в поисках правильного термина). Только вот пластмассовые планки не условно нулевой толщины, как в металлических конструкторах, а вполне себе единичной толщины, квадратные в поперечном сечении.
Возникает страшная проблема при переходе с одного направления дырок в планках (и направления протяжённости самих планок) на другое. Простых уголков почти нет. Нужны специальные детальки. Которые тоже занимают несколько единиц объема. И соединяемые детали получаются смещены на единицу. Это вам не торжество кубизма, как в Minecraft или классическом Lego.
Моё пространственное воображение пока только-только подстраивается под это безобразие. Удивительно, но помогают последние страницы инструкций, где нарисованы все детали, имеющиеся в наличии, и их количество.
Steering machine
А вот сейчас подарили SBrick. Эти ребята собрали деньги на Kickstarter в 2014. Успешно сделали и продают вот что...
У Lego есть моторчики, есть лампочки, есть инфракрасный приёмник и пультик дистанционного управления. Правда, в настоящее время с пультиком продаётся только странный гусеничный вездеход. Вся эта электрика подаётся под маркой Power Functions.
Но штатные способы управления этой электрикой: механические выключатели, полтора странных инфракрасных пультика, одна модель (но в двух не очень совместимых версиях) инфракрасного приёмника. Пультик и приёмник имеют только два канала управления. И те дискретные. Для машинки, чтобы рулить влево-вправо, да ехать вперёд-назад, может, и достаточно. Но такую машинку, с пультиком, нужно ещё найти и купить.
А вот SBrick — это четыре канала пропорционального управления. Через Bluetooth. С телефона или планшета, через соответствующее приложение. Можно рулить сразу несколькими SBrick. Рай для любителей электрификации Lego моделек.
SBrick and motors
А в конце 2016 те же ребята завершили ещё одну кампанию на Kickstarter. Теперь для SBrick Plus. Его уже можно купить. Он совместим не только с Power Functions, но и с образовательным набором от Lego под названием WeDo. А вскоре, видимо, через переходник, обещают поддержку и Mindstorms.
И SBrick, и SBrick Plus можно программировать как минимум через Scratch. Впрочем, я пока до этого не дошёл.
Имея два моторчика и один SBrick, я пока что взялся за, как внезапно оказалось, мечту всего детства — радиоуправляемую машинку. С одной стороны у нас есть SBrick и его четыре порта управления (задействуем только два). С другой стороны — приложение под Android и то, что называется Profile Designer.
Legokhod
Ребята развернули целую инфраструктуру. Чтобы управлять моделькой, в приложении нужно загрузить профиль. Либо один из нескольких доступных публично. Либо нарисовать свой профиль, в онлайн редакторе, привязанный к вашему аккаунту SBrick. К этому же аккаунту привязаны и ваши модельки.
Профиль — это картинка, которая будет видна на экране телефона/планшета при управлении моделькой. Рычажки, переключатели, фоновая картинка. Когда профиль подключается к модели, каждые рычажки и переключатели привязываются к каналам SBrick. Есть рычажки с одной осью. Есть джойстики с двумя осями. Есть кнопки вкл/выкл. Есть кнопки, которые при одном нажатии передают какую-то последовательность вкл/выкл. Можно задействовать акселерометры телефона, и, например, рулить моделькой, наклоняя телефон, как в автогонках. Можно применять к положению рычажков какие-то простейшие преобразования. Но нельзя смешивать несколько каналов, для этого придётся попрограммировать. В общем, получается уникальная панель управления для вашей уникальной модели.
Profile example
Имеем вполне успешный кикстартовый проект, который может хорошо порадовать родителей и детей, владельцев Lego Technic моделей.
У меня пока что получился лишь уродливый и неуклюжий легоход. Буду улучшать :)