Урок истории
Компания LEGO (название произошло от датской фразы «leg godt», «Играй с удовольствием») не нуждается в представлении – она была основана в далёком 1932 году, хотя первые знакомые всем пластиковые кубики появились значительно позже, в 1947. Примечательно, что кубики LEGO, выпускаемые в те годы, полностью совместимы с теми, что выпускаются сейчас.
Сейчас компания производит около 20 миллиардов деталек в год, то есть более 630 штук в секунду. В текущем модельном ряду более 600 различных конструкторов и так уж получилось, что серия Mindstorms является своего рода вершиной технической мысли, самым-самым навороченным конструктором. Если вкратце, то она позволяет делать вполне себе полноценных роботов.
Как гласит википедия, серия LEGO Mindstorms была впервые представлена в 1998 году. Через 8 лет (в 2006) на свет появился набор LEGO Mindstorms NXT 1.0, а уже в 2009 — набор LEGO Mindstorms NXT 2.0. Сегодня речь пойдёт о LEGO Mindstorms EV3 – последнем (третьем) поколении терминатора конструктора, который был представлен почти год назад, 4 января 2013 года (в продаже появился только спустя полгода).
История конструкторов LEGO MINDSTORMS
Компания LEGO производила конструкторы и игрушки с конца 1940-х годов. Поначалу это были деревянные игрушки, затем компания планомерно перешла от использования дерева к использованию пластмассы. К концу 40-х годов у компании было в наличии около 200 различных моделей деревянных и пластиковых игрушек.
Отличия EV3 от NXT 2.0
EV3 | NXT | |
Дисплей | Монохромный LCD, 178×128 | Монохромный LCD, 100×64 |
Процессор | 300 МГц Texas Instruments Sitara AM1808 (ARM9) |
48 МГц Atmel AT91SAM7S256 (ARM7TDMI) |
Память | 64 Мб RAM 16 Мб Flash Слот microSDHC (до 32 Гб) |
64 Кб RAM 256 Кб Flash |
USB-хост | Есть | Нет |
Wi-Fi | Опционально, через USB-донгл | Нет |
Bluetooth | Есть | Есть |
Поддержка Apple-устройств | Есть | Нет |
Как видите, разница довольно существенна – было бы странным, если бы за 4 года поменяли только разрешение экрана и набор наклеек.
Ещё одно отличие заключается в том, что серия NXT продавалась в нескольких версиях (в разные годы) и представляла собой разные наборы, базовые и ресурсные. У нового EV3 с этим попроще – пока он продаётся в основном варианте – 31313 (601 деталь), из которого можно наделать кучу всего. Но при желании можно докупить базовый набор 45544 (541 деталь) с дополнительными сенсорами и детальками (использовать детали от обычных конструкторов также никто не мешает). Кстати, обратите внимание на пятизначные артикулы – на такую нумерацию компания перешла в 2013 году.
Что касается совместимости, то тут было проделано всё возможное. Все NXT-сенсоры и моторы совместимы с EV3 и распознаются как NXT. EV3-сенсоры не работают с NXT, но EV3-моторы вроде как совместимы. NXT-кирпичик может быть запрограммирован софтом от EV3, но некоторые функции могут быть недоступны, а вот запрограммировать EV3-кирпичик NXT-софтом без сторонних решений не получится.
Наборы и компоненты
(Боевой робот)
Все комплекты состоят из стандартного набора деталей. Детям будет интересно работать с балками, колесами, осями и шестернями. Неотъемлемой частью LEGO MINDSTORMS также являются программируемые блоки, двигатели и удобные сенсоры для управления роботом. Наборы могут быть базовыми и ресурсными. В составе базовых — нужное для создания простых роботов количество деталей, а ресурсные состоят из большего разнообразия частей.
(Промышленно-конвеерный робот из наборов Лего)
Базовые наборы NXT представлены в трёх версиях, количество деталей в которых колеблется от 431 до 619. Это простые и понятные обучающие наборы, которые могут быть использованы для проведения школьных уроков, занятий в кружках робототехники.
(Разновидности моделей из наборов LEGO Mindstorms)
Более разнообразными и интересными для многих детей кажутся ресурсные наборы, которые состоят из большего количества разнообразных деталей. Это наборы 9648 и 9695, которые могут быть использованы в различных робокружках и соревнованиях по робототехнике. Главное преимущество ресурсных наборов — большое разнообразие деталей и более сложные задачи для решения.
Главное отличие наборов MINDSTORMS от всех остальных серий LEGO заключается в наличии уникальных электронных компонентов, составляющих ядро всей системы. Первым, и самым главным устройством является программируемый контроллер, или, как его называет компания LEGO – интеллектуальный блок. Если быть точным, то слово блок не совсем подходит, так как в оригинале он называется intelligent brick, а применительно к конструкторам LEGO словом brick обозначают прямоугольные строительные кирпичики.
Программируемый контроллер NXT (NXT Brick), считывает данные с датчиков и управляет моторами робота в соответствии с заданной программой. Контроллер имеет четыре входных порта для датчиков, помеченных цифрами от 1 до 4 и три выходных порта для двигателей, помеченных буквами A, B и C (для движения обычно используются B и C, A – для манипулятора).
Основные характеристики программируемого контроллера приведены в таблице ниже.
Параметр | Описание |
---|---|
Процессор | Основной процессор: 32-разрядный Atmel ARM7 AT91SAM7S256, частота 48 МГц,. Сопроцессор: 8-разрядный Atmel AVR ATmega48, частота 8 МГц |
Память | 256 Кб ППЗУ (Flash-память), 64 Кб ОЗУ основного процессора, и 4 Кб ППЗУ (Flash-память), 512 байт ОЗУ сопроцессора |
Входы | 4 входа, 6 контактов на порт, поддержка аналоговых и цифровых интерфейсов. Скорость цифровых интерфейсов 9600 бит/с. 1 высокоскоростной порт (порт 4) с поддержкой промышленных сетей (стандарт IEC 61158 Type 4) |
Выходы | выхода, 6 контактов на порт |
Дисплей | Графический жидкокристаллический дисплей (LCD), разрешение 100 x 64 точек, черно-белый. При выводе текста используются символы 8 точек высотой, 8 строк |
Звук | Встроенный динамик, разрешение 8-бит, частотный диапазон 2-16 КГц |
Кнопки | 4 кнопки (без подcветки и подписей) |
Связь | USB 2.0 Full speed, разъём типа USB-B, скорость до 12 Мбит/с. Беспроводной Bluetooth-модуль BlueCore 4 v2.0 |
Питание | 6 элементов питания типоразмера АА или литий-ионный аккумулятор «LEGO» напряжением 7,4 В и емкостью 2200 мАч |
Размеры | 14 М х 9 М х 5 М |
Питание осуществляется от 6 элементов питания типоразмера АА (гальванические элементы или Ni-MH аккумуляторы) или от фирменного аккумулятора компании «LEGO», который приобретается отдельно (рис 2.1). Производителем рекомендуется использовать щелочные гальванические элементы, поскольку они имеют большую емкость и работают дольше, чем солевые.
Контроллер NXT оснащен графическим жидкокристаллическим дисплеем с возможностью отображения текста и графики, а также динамиком для воспроизведения различных звуков. Для перемещения по разделам меню служат клавиши в виде треугольников, оранжевая клавиша служит для выбора, темно-серая – для отмены. Кнопки также могут использоваться для управления ходом выполнения программы.
Размеры блока в таблице указаны в модулях. Модуль – условная единица измерения, равная 8 мм (5/16 дюйма). Расстояние между центрами отверстий в балках «LEGO Technic» и «LEGO MINDSTORMS» составляет ровно 1 модуль (1 М).
Подключение к контроллеру NXT осуществляется по интерфейсу USB, либо с помощью беспроводного Bluetooth-модуля, который также может использоваться для связи с другими контроллерами NXT. С целью снижения энергопотребления использован передатчик 2-ого класса с дальностью передачи данных около 10 м.
Структурная схема контроллера NXT показана на рисунке ниже Основной процессор AT91SAM7S256 и сопроцессор ATmega48 взаимодействуют по интерфейсу I2C. Данный интерфейс реализован на аппаратном уровне в каждом из процессоров. При обмене информацией основной процессор является ведущим устройством. Скорость обмена данными составляет 380 Кбит/c. Структурная схема контроллера NXT показана на рисунке ниже.
Основными задачами основного процессора являются работа с дисплеем, Bluetooth-модулем, а также реализация интерфейса USB для связи с компьютером. Управление Bluetooth-модулем осуществляется посредством интерфейса SPI, а передача данных идет по интерфейсу UART. Также основной процессор управляет выводом звуковых сигналов и реализует поддержку промышленных сетей (стандарт IEC 61158 Type 4) 4-ым портом ввода.
Интерактивные сервомоторы. В набор входит три сервомотора, каждый из которых включает датчики угла поворота (энкодеры) для обеспечения высокой точности движения робота. Контроллер может управлять мощностью подаваемой на моторы, изменяя скорость и направление их вращения. Внешний вид сервомоторов представлен на рисунке ниже.
Сервомоторы подключаются к портам A, B и C интеллектуального блока, и могут работать как каждый отдельно, так и в синхронизированном режиме. Этот режим позволяет обеспечить одинаковую скорость вращения моторов, даже при различной нагрузке на каждый из них. Синхронизированный режим лучше всего работает для двух моторов, подключенных к портам B и C, это связано с некоторыми аппаратными особенностями выходных портов.
Сервомоторы NXT включают в себя электродвигатель, шестерёнчатый редуктор и датчик оборотов вращения (энкодер), объединенные в одном корпусе. Энкодер определяет угол поворота вала двигателя в градусах, один полный оборот составляет 360 градусов. Благодаря энкодерам контроллер точно определяет, на какой угол повернулся вал двигателя.
Малогабаритные двигатели постоянного тока обычно вращаются слишком быстро и при этом имеют не очень большую мощность на валу, поэтому нет особого смысла подключать их напрямую к колёсам или другим механизмам. Для понижения скорости вращения и одновременного увеличения вращающего момента, используют редукторы. Редуктор сервомотора NXT содержит восемь шестерёнок, суммарное передаточное отношение редуктора – 1:48.
Сервомоторы выполнены неразборными. Однако, благодаря фотографиям энтузиаста Даниэля Бенедеттелли (Daniele Benedettelli) можно изучить их внутреннее устройство.
Сервомотор NXT в разобранном виде | |
Редуктор сервомотора NXT крупным планом |
Для защиты от повреждений последовательно с двигателем включен электронный предохранитель. Принцип действия такого предохранителя основан на резком увеличении сопротивления при превышении протекающим через него током некоторого порогового значения. Увеличение нагрузки на сервомотор приводит к росту потребляемого двигателем тока, что в свою очередь приводит к нагреву двигателя и предохранителя и, как следствие, срабатыванию предохранителя.
После остывания предохранителя его сопротивление возвращается к начальному значению, а двигатель снова может работать в штатном режиме. Поэтому длительное использование двигателя при нагрузке близкой к максимальной может привести к его остановке, что является сигналом о срабатывании электронной защиты.
Встроенный в сервомотор энкодер представляет собой оптико-механический датчик оборотов вращения и состоит из оптической пары (светодиод и фототранзистор) и зубчатого колеса с секторными отверстиями, соединённого непосредственно с первой шестерней на валу двигателя (рисунок ниже). На правой фотографии хорошо видна оптическая пара, чёрный прямоугольник – это светодиод, а полупрозрачный прямоугольник напротив него – фототранзистор.
Разрешающей способности этого датчика достаточно, чтобы определять положение выходного вала сервомотора с точностью в 1 градус. Ранее подобный принцип использовался в шариковых компьютерных мышах. Принцип работы у датчиков в компьютерной мыши и в сервомоторе совершенно одинаков – при вращении колесо с отверстиями пересекает луч света, испускаемый светодиодом, а фототранзистор определяет наличие или отсутствие света.
Вал мотора, шестерня и датчик оборотов вращения (слева) и оптическая пара светодиод-фототранзистор (справа) |
При внимательном рассмотрении можно обнаружить, что на ведущем валу электромотора установлена шестерня с 10 зубьями, а зубчатое колесо энкодера имеет 32 зуба и 12 отверстий. Можно посчитать, что за один оборот выходного вала датчик успевает просмотреть 48*10/32*12 = 180 отверстий, что ровно в два раза меньше, чем заявленная величина (1 оборот = 360 градусов).
Внутри коробки
Ещё когда я сам был маленький и ездил с родителями в центральный Детский Мир (когда он ещё был), на Лубянку – уже тогда я не мог оторвать глаз от коробок с LEGO. Тогда не было ни Гиктаймс, ни даже Хабра, но с тех пор коробки остались всё такими же яркими и сочными, даже во взрослом возрасте активируют процесс слюновыделения ) В этом плане другим производителям есть чему поучиться.
Часть коробки, на самом деле, представляет собой (если её разрезать) трассу с различными цветовыми зонами, которую можно использовать для роботов с сенсорами цвета.
Все детальки аккуратно разложены по пакетикам, в комплекте – инструкция и набор наклеек. Давайте вкратце пройдёмся по тому, что положили в комплект.
– Многофункциональный монохромный дисплей с разрешением 178х128– Шестикнопочный интерфейс управления с функцией изменения подсветки (3 цвета) для индикации режима работы– 4 порта ввода (1, 2, 3, 4) для подключения датчиков – 4 порта вывода (A, B, C, D) для выполнения команд– 1 разъём miniUSB для подключения EV3 к компьютеру– 1 порт USB–хост (для соединения нескольких EV3 в одну цепь, например)– 1 слот для карт памяти формата microSD (до 32Гб) – для увеличения объёма доступной памяти EV3– Встроенный динамик
Кубик EV3 также поддерживает Bluetooth, WiFi (через USB-адаптер NETGEAR WNA1100 Wireless-N 150), для связи с компьютерами имеет программный интерфейс, позволяющий создавать программы и настраивать регистрации данных непосредственно на микрокомпьютере EV3.
» Большой EV3-сервомотор (2 штуки). Cоздан для работы с микрокомпьютером EV3 и имеет встроенный датчик вращения с точностью измерений до 1 градуса. Используя этот датчик, мотор может соединяться другими моторами, позволяя роботу двигаться с постоянной скоростью. Кроме того, датчик вращения может использоваться и при проведении различных экспериментов для точного считывания данных о расстоянии и скорости.
– Встроенный датчик вращения с точностью измерений до 1 град– Максимальные обороты до 160-170 об/мин– Максимальный крутящий момент в 40 Нсм– Автоматическая идентификация программным обеспечением EV3
» Средний EV3-сервомотор. Идеален для задач, когда скорость и быстрота отклика, а также размер робота важнее его грузоподъёмности.
– Встроенный датчик вращения с точностью измерений до 1 градуса– Максимальные обороты до 240-250 об/мин– Максимальный крутящий момент в 12 Нсм– Автоматическая идентификация программным обеспечением EV3
» Датчик цвета (EV3). Способен определить 8 различных цветов, хотя также может использоваться как датчик освещённости.
– Измеряет отраженный красный свет и внешнее рассеянное освещение, от полной темноты до яркого солнечного света– Фиксирует и определяет 8 цветов– Частота опроса до 1 кГц– Автоматическая идентификация программным обеспечением EV3
» Датчик касания (EV3). Позволяет роботу реагировать на касания, распознает три ситуации: прикосновение, щелчок и освобождение. Также способен определить количество нажатий, как одиночных, так и множественных.
» Цифровой ИК-датчик (EV3). Для определения приближения робота. Также способен улавливать ИК-сигналы от ИК-маяка, позволяя создавать дистанционно управляемых роботов, навигационные системы для преодоления препятствий.
– Измерения приближения/удаления в радиусе 50-70 см– Радиус улавливания ИК-сигналов до 2 метров– До 4 индивидуальных каналов приёма сигнала– Получение удаленных ИК-команд управления– Автоматическая идентификация программным обеспечением EV3
» Удалённый инфракрасный маяк. Разработан для использования с ИК-датчиком EV3. Маяк излучает ИК-сигнал, улавливаемый датчиком – может использоваться в качестве пульта дистанционного управления микрокомпьютера EV3, передавая сигналы на ИК-датчик.
– До 4 индивидуальных каналов передачи сигнала (переключатель прямо на корпусе)– Имеет кнопку и тумблер для включения/выключения– При работе ИК-маяка горит зелёный светодиод– Автоматическое отключение при простое более 1 часа– Радиус действия до 2 метров
В отдельном пакетике смотаны провода для подключения датчиков и моторов к кубику, а также USB-шнур для подключения кубика к компьютеру.
» Гироскопический датчик (EV3). Цифровой гироскопический датчик EV3 позволяет измерять движение вращения робота, а также улавливать изменения в его движении и положении. Режим измерения углов с точностью до ± 3 градуса; встроенный гироскоп улавливает вращения с моментом до 440 град/с; частота опроса до 1 кГц.
» Ультразвуковой датчик (EV3). Генерирует звуковые волны и фиксируюет их отражения от объектов, тем самым измеряя расстояние до объектов. Также может использоваться в режиме сонара, испуская одиночные волны. Может улавливать звуковые волны, которые будут являться триггерами для запуска программ. Измеряет расстояния в пределах от 1 до 250 см, а точность измерений составляет ± 1 см.
А во-вторых, поддерживаются сенсоры и прочие аксессуары от сторонних производителей, таких как HiTechnic и Mindsensors – они предлагают всевозможные джойстики, инфракрасные датчики расстояний, магнитные датчики, компасы, гироскопы, акселерометры, таймеры, мультиплексоры, шаровые опоры, и т.д. Так что, если задаться вопросом, можно найти много всего интересного.
В общем, как вы уже поняли, LEGO – это для реальных пацанов!
Интерфейс программируемого контроллера NXT
Рассмотрим интерфейс контроллера NXT. На рисунке ниже показано назначение и описание иконок на экране контроллера
На экране контроллера отображаются следующие иконки:
- индикатор Bluetooth-подключения – отображает текущий статус беспроводного модуля и наличие соединения. Если Bluetooth-модуль отключен, то иконка не будет показываться. Описание значений индикатора Bluetooth-подключения приведено в таблице ниже;
- индикатор USB-подключения – отображает наличие и статус проводного подключения к компьютеру. При наличии неполадок необходимо проверить наличие установленных драйверов для контроллера NXT. Описание значений индикатора USB-подключения приведено в таблице ниже;
- заряд аккумулятора – отображает уровень заряда аккумулятора, иконка начинает мигать при разряде;
- индикатор работы программы – показывает состояние контроллера и позволяет определить завис он или нет. Если вращение иконки прекратилось, это означает, что контроллер NXT завис и его необходимо перезагрузить;
- имя контроллера – используется при подключении по Bluetooth-интерфейсу. По умолчанию роботу присвоено имя NXT. Имя может быть длиной до 8 символов.
Ниже в таблице приведено описание иконок индикаторов связи
Иконка | Описание |
---|---|
Bluetooth-модуль включен, но контроллер не видим для других Bluetooth-устройств. | |
Bluetooth-модуль включен, и контроллер виден для других Bluetooth-устройств. | |
Bluetooth-модуль включен, и контроллер подключен к какому-либо Bluetooth-устройству. | |
Контроллер подключен по USB и работает нормально. | |
Контроллер подключен по USB, но имеются неполадки. |
Все текстовые сообщения на экране контроллера отображаются на английском языке. Перемещение по пунктам меню осуществляется с помощью стрелок. Текущий выбранный пункт выделяется рамкой. Основное меню содержит 6 пунктов (разделов), описание которых приведено в таблице ниже.
Пункт меню | Иконка | Описание |
---|---|---|
My Files | Подменю «Мои файлы» позволяет просматривать все программы, а также графические и звуковые файлы, загруженные в память контроллера NXT. | |
Try Me | Подменю «Попробуй» позволяет ознакомиться с работой датчиков и моторов. | |
View | Подменю «Обзор» позволяет провести быстрое тестирование датчиков и сервомоторов, а также получить данные с каждого устройства. | |
NXT Program | Встроенная программа для графического программирования контроллера без компьютера. | |
Bluetooth | Подменю «Bluetooth» позволяет задать настройки беспроводного модуля, а также создать канал связи между контроллером NXT и другими устройствами. | |
Settings | Подменю «Установки» позволяет провести настройку контроллера NXT (громкость звука, автоматическое отключение и т.д.). |
Встроенная оболочка контроллера NXT включает программу NXT Program, позволяющую составлять простые программы без компьютера. Робота можно запрограммировать на движение вперёд/назад, а работу с датчиками. При использовании NXT Program каждый датчик должен подключаться к заданному порту. При входе в пункт меню NXT Program отображается схема подключения датчиков.
Сервомоторы могут подключаться к любому выходному порту без каких-либо ограничений, левый двигатель подключается к порту B, а правый к порту C. В некоторых версиях встроенной оболочки требуется обязательное подключение двух сервомоторов (то есть нельзя подключить двигатель только к порту B или C). В противном случае подключенный двигатель будет работать прерывисто. Использование порта A в NXT Program невозможно.
Программы в NXT Program составляются из отдельных блоков аналогично блок-схемам (рис 4.1). Каждая программа состоит из 5 блоков (квадратных ячеек), в которых необходимо разместить выбранные команды. NXT Program содержит большое количество базовых команд: управление моторами (движение вперед/назад, повороты вправо/влево), опрос датчиков (ждать нажатия кнопки, ждать появления объекта перед роботом и т.д.
), ожидания, звуковых сигналов. Подробное описание команд, а также примеры их использования приведены в книге С.А. Филиппова «Робототехника для детей и родителей». Созданные программы при необходимости можно сохранить в памяти контроллера, а затем вызвать из подпункта NXT Files в пункте меню My Files.
Первая модель
В комплекте с конструктором идёт бумажная инструкция, по которой можно собрать одну-единственную модель – некое подобие гусеничной самоходной машины.
Сначала я удивился, ведь даже в самых простых наборах (серии типа LEGO Creator) всегда идёт несколько инструкций, а тут вдруг бумаги пожалели или места в коробке не нашли. Оказалось… что только на официальном сайте из набора деталей предлагается собрать 17 разных роботов! Поэтому 17 инструкций в коробке были бы действительно лишними (и для логистики, и для лесов природы).
Инструкция наиподробнейшая, накосячить сложно. Сын сказал, что детали в пакетиках расфасованы не очень удачно – на первой же странице может потребоваться вскрыть 3 разных пакета, но это тоже мелочи.
Кубик EV3 необходимо запитать, для чего можно использовать аккумулятор (нет в комплекте) или 6 пальчиковых батареек. Забегая вперёд – ещё 2 батарейки (но уже мизинчиковых) понадобятся для питания ИК-маяка (он же пульт ДУ).
Первую модель ребёнок (7 лет) собрал примерно минут за 30.
Процесс оказался не таким увлекательным, как, например, сборка моделей LEGO Technics – в инструкции предлагается собрать далеко не самого интересного робота: в нём лишь крупные детали, среди которых были практически все датчики и двигатели – видимо, чтобы продемонстрировать работу каждого из них.
Но вот результат превзошёл все детские ожидания – впервые он собрал модель, которая могла двигаться сама: вперёд-назад, поворот, разворот на месте, крутила щупальцами…
Запуск осуществляется с кубика EV3, для чего следует нажать пару кнопок на лицевой панели. Некоторые действия можно запрограммировать прямо на кубике: выбрать количество итераций, настроить подачу звукового сигнала и так далее – в одной статье всего не рассказать, курите мануалы.
Дополнительные элементы для LEGO MINDSTORMS
Помимо компонентов, входящих в наборы LEGO MINDSTORMS NXT, существует множество различных датчиков и других модулей как от компании «LEGO», так и от сторонних производителей (HiTechnic, MindSensors, TETRIX, Vernier, Dexter Industries). Продукция сторонних производителей сертифицируется компанией «LEGO», что подтверждает полную совместимость с конструктором, а также высокие стандарты качества и безопасности. С помощью дополнительных элементов можно значительно расширить функциональные возможности робота. Ниже рассмотрены лишь некоторые из них.
Датчик температуры LEGO. Датчик предназначен для контактного измерения температуры различных объектов. Температура может быть измерена в двух различных температурных шкалах: в градусах по Цельсию и по Фаренгейту (от -20° С до 120° С / от -4 F до 248 F).
Для измерения температуры датчик оснащен длинным металлическим зондом. Датчик не имеет разъёма подключения кабеля, кабель подключен к датчику через заднюю крышку и не отсоединяется. В целом датчик выполнен герметичным и неразборным. Вероятнее всего это сделано для защиты датчика при проведении измерений в различных экспериментах.
Датчик цвета LEGO. Датчик цвета является одним из двух сенсоров, которые заменяют роботу зрение. Фактически датчик цвета выполняет три различных функции. Он может работать как датчик цвета, измеряя цветовую интенсивность окрашенных поверхностей (распознаётся 6 цветов), работать как датчик освещённости, определяя интенсивность света в помещении, а также выполнять функции цветной лампы красного, зеленого или синего цветов.
Датчик цвета был добавлен в набор «LEGO MINDSTORMS NXT 2.0», который вышел в 2009 году. Датчик включает трехцветный RGB-светодиод и фотодиод. Последовательно излучая, красный, зелёный и синий цвета, датчик одновременно анализирует отражённый свет, который попадает в фотодиод. По результатам обработки измерений датчик определяет ближайшее значение цвета.
Датчик может работать в одном из в трёх режимов:
- различает шесть цветов (стандартные цвета деталей из конструкторов «LEGO»), или раскладывает принятый цвет на три цвета режима RGB (красный, зелёный, синий);
- фиксирует внешнее освещение и выдает результат в условных единицах;
- фиксирует отражённый свет, созданный собственным излучателем, и выдает результат в условных единицах.
При использовании только одного из трёх цветов, датчик работает аналогично стандартному датчику освещённости из набора NXT, выдавая результат в условных единицах по шкале от 0 до 100. Таким образом, помимо своей основной задачи – различать цвета, этот датчик полностью дублирует функции датчика освещённости.
Дополнительно датчик можно использовать в виде светодиодной лампы с тремя различными цветами. Возможно включение одного из трех цветов, или всех одновременно. Произвольное сочетание цветов, а также регулировка яркости не предусмотрены.
Максимальная эффективная дальность, на которой датчик цвета безошибочно определяет цвета объектов, составляет не более 1,5 см. Для корректного определения цвета необходимо держать датчик под прямым углом к поверхности. В ходе экспериментов удалось установить, что датчик корректно работает при частоте опроса до 100 Гц.
Софт
Программировать через компьютер собранную выше модель не пришлось. Тем не менее, возможность такая есть, при этом на разных уровнях хардкорности.
Ребёнку проще всего будет начать с предлагаемого производителем софта, который есть как под Windows, так и под OS X. Во втором случае дистрибутив весит 666 Мб, а установленное приложение займёт гигабайт. Оно называется LEGO Mindstorms EV3 Home Edition и разработано совместно с небезызвестной компанией LabView. На сайте LEGO довольно много обучающих программированию материалов.
Сразу после запуска перед нами возникает интерактивный «гараж» из роботов, которых можно собрать из набора: Выбираем понравившегося и начинаем собирать: перед нами появится интерактивная инструкция по сборке, видеоролики, а также подборка различных миссий, которые можно выполнить с собранным роботом.
Вот почему дистрибутив весил так много.Не вижу смысла описывать всё в деталях: вы быстрее скачаете приложение сами и увидите, что там есть и на каком уровне. Разве что упомяну один из недостатков, который мне больше всего запомнился: не самый дружелюбный (особенно для детей) интерфейс – от приложения попахивает каким–то банк-клиентом.
Нельзя ещё раз не отметить, что кубиком EV3 можно управлять со смартфона на операционных системах Android или iOS, для чего есть отдельные приложения.
Если всего этого оказалось мало, можете повысить градус хардкора. Для кубика EV3 существуют различные прошивки, которые позволяют расширить его возможности, скорость работы и т.д. Вот, например, альтернативная прошивка leJOS EV3 – прошивка с jvm, позволяющая программировать EV3 на языке Java. Хотите на другом языке? Окей, гугл – в вашем распоряжении почти 60 вариантов на выбор: ASM/C/C /Perl/Python/Ruby/VB/Haskell/Lisp/Matlab/LabVIEW и многое-многое другое.
Более подробно об этом я рассказывать не буду по нескольким причинам: во-первых, программист из меня полный false (все надежды на сына), во-вторых, пока мы успели собрать только одну модель (и на выходных возьмёмся за вторую), а в-третьих – вы уже и так оформили заказ на этот конструктор и скоро сами всё узнаете 😉 Ну а если серьёзно, то статья и так уже огромная – вот лучше две ссылочки изучите: раз и два.
Ну и ещё большой плюс – это LEGO-сообщества, которых полно по всему миру. Можете быть уверены, что на любом из этапов экспериментов с роботами вы всегда сможете найти единомышленников и тех, кто сможет помочь с решением проблемы. Помимо дружелюбных сообществ, на просторах сети выложено огромное множество различных инструкций, моделей, исходников, видеороликов и обучающих материалов. Всё это означает одно: с Mindstorms вы не соскучитесь.
Плюсы и минусы
Продукция компании LEGO не первый год славится своим качеством, поэтому в этом плане никаких нареканий нет: эффектная коробка, детальки, наклейки, инструкция – всё проработано до мелочей. Поэтому позволю себе закрыть глаза на все «маленькие плюсы» по сравнению с одним большим: многообразие возможных комбинаций конструкций, которые можно сделать даже из штатного набора деталей (про дополнительные наборы и говорить не стоит), ограничено только вашей фантазией. Возможность по-разному программировать собранную модель – это ещё один плюс, который, на самом деле, гораздо больше, чем кажется на первый взгляд.
А вот из реально существенных минусов я нашёл только один: цену. Ещё летом LEGO Mindstorms EV3 можно было купить за 14-15 тысяч, но стремительный рост курса вечнозелёного президента увеличил прайс аж до 17 тысяч. Кто-то скажет: «да, крутой конструктор… НО ДОРОГО Ж!» И будет прав. Во время изучения набора и его возможностей я офигел от количества тех ресурсов, которые были вложены при его создании;
я понимаю, что тут куча электроники и всё остальное… но всё равно пока не могу смириться с такой стоимостью конструктора. За эти деньги можно человека из тюрьмы вытащить (с) выбрать много других подарков: квадрокоптер, ДВС-модельку на радиоуправлении, полноразмерный электромотоцикл, год занятий в спортивной секции, планшет… да много чего!
Но на спорт можно ходить в любое время и это вроде как не совсем подарок, а тот же квадрокоптер будет жужжать до первой серьёзной поломки. Лего же в этом плане гораздо более долгоиграющий подарок, совмещающий приятное с полезным, с нереально большим потенциалом. Да, на том же планшете тоже можно учиться программировать, но когда нет возможности вживую пощупать руками результат работы, это уже не так увлекательно. Поэтому решайте сами.
Ах да. Производитель позиционирует данный набор для детей от 10 лет, но даже 7-летнему ребёнку было интересно поиграться – процесс бурного освоения начался. Как думаете, сколько этим парням и во сколько они купят свой первый Порш? )