Лего Роботы и Обучение (Lego Mindstorms & Education). Управление роботом LEGO Mindstorms EV3 от первого лица

09.04.2019

Какой самый самый известный конструктор в мире? Конечно Lego! А какая самая известная платформа для обучения робототехнике? Конечно Lego Mindstorms! Разберемся почему.

Lego: от ремесла плотника к лидерству в мире игрушек

Компания Lego основана в 1932 году. Ее основатель — датчанин Оле Кирк Кристиансен . Будучи плотником, он сначала основал фирму по производству изделий для дома, а позже занялся еще и производством деревянных кубиков для детей. Фирма получила название Lego, соединив датские слова leg — играть и godt — хорошо.

В 1947 году компания Lego начала выпуск пластиковых игрушек и уже в 1949 появились знаменитые защелкивающиеся кирпичики Lego.

Основными идеями Lego являются модульность и совместимость. Хотя кирпичики за 65 лет своего существования меняли дизайн и форму, они абсолютно совместимы между собой. Современные элементы вполне можно присоединить к элементам 40-летней давности.

Сегодня сфера деятельности Lego конечно много шире, чем производство игрушек. Компания создает одежду, фильмы, игры, организует конкурсы, в том числе робототехнические. В мире открыты музеи Lego тематические парки развлечений — леголенды, которые практически полностью построены из кубиков Lego.

Из Lego можно собирать модели автомобилей, самолетов, кораблей, зданий, и, конечно, роботов. С конца прошлого века Lego выпускает специальный робототехнический конструктор, который сегодня стал лидером образовательной робототехники.

Lego Mindstorms: робототехника для всех

Идея добавить к стандартным деталям Lego электронный программируемый блок, датчики и электродвигатели, сделать программирование простым и понятным детям и разработать специальный конструктор для создания роботов оживила не только Lego-конструкции, но и всю компанию. С 1991 года 11 лет подряд компания несла убытки. И именно робототехническое направление спасло ситуацию.

Впервые робототехнический конструктор Lego Mindstorms был представлен в 1998 году. B 2006 году вышла вторая версия конструктора — NXT , и в начале 2013 года появился EV3 (сокращение от Evolution 3 ).

Слева направо коробочные версии Lego Minstorms 1998 г, 2006 г, 2013 г

Сердцем конструктора является микрокомпьютер (микроконтроллер), он же P-brick, или Р-кирпич (от Programmable brick — программируемый кирпич). Стандартные детали Lego (балки, шестерни, оси, колеса) мало изменяются с развитием конструктора, наибольшие изменения претерпевает именно микрокомпьютер.

Первую версию конструктора комплектовали микрокомпьютером RCX , вторую — NXT , а в составе современной версии — EV3 .

Слева направо микрокомпьютеры Lego: RCX (1998 г.), NXT (2006 г.), EV3 (2013 г.)

С развитием конструктора производитель придерживается политики обратной совместимости, т.е. детали от старых версий могут использоваться совместно с новым конструктором. Так, например, датчики от NXT-версии могут использоваться с EV3. Развитие конструктора в ногу со временем — это прежде всего развитие микрокомпьютера и среды программирования. Важным отличием современного блока EV3 является то, что он работает на свободно распространяемой операционной системе Linux.

Технические характеристики микрокомпьютера Lego EV3:

  • Процессор — ARM9 (в конструкторе NXT 2.0 использовался ARM7);
  • оперативная память — 64 мегабайт;
  • FLASH память — 16 мегабайт;
  • слот расширения SD;
  • USB 2.0 с поддержкой подключения Wi-Fi;
  • Bluetooth 2.1;
  • монохромный экран разрешением 178×128 пикселей;
  • четыре порта ввода;
  • четыре порта вывода;
  • шестикнопочный интерфейс управления;
  • высококачественный интегрированный динамик;
  • автономное питание от шести батарей типа АА, либо с использованием аккумулятора постоянного тока EV3 2050 мАч;
  • операционная система Linux.

Видео-обзор микрокомпьютера Lego EV3:

Состав Lego Mindstorms EV3

Конструктор Lego Mindstorms — это набор стандартных деталей Lego, микрокомпьютер и датчики.

Компоненты Lego Mindstorms EV3

Конструктор был разработан для двух целевых аудиторий: для домашнего пользования (дети и любители) и для использования в образовательных учреждениях (ученики и преподаватели). Для каждой группы создан базовый набор — соответственно коробочная версия Lego EV3 и образовательная версия Lego EV3 .

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

Сегодня этот набор достаточно активно внедряется в России в образовательную робототехнику для дошкольников и младших школьников.

Такой конструктор позволяет собрать и запрограммировать при помощи компьютера множество базовых моделей по инструкции, а также придумывать свои. В наборе детали, совместимые со стандартными кирпичиками Lego.

Состав набора Lego Education WeDo:

  • 158 строительных элементов;
  • USB Lego-коммутатор;
  • мотор;
  • датчик наклона;
  • датчик расстояния.

Через коммутатор осуществляется управление датчиками и моторами при помощи программного обеспечения WeDo. Через разъемы коммутатора подается питание на моторы и осуществляется обмен данными между датчиками и компьютером.

Видео презентация набора Lego WeDo:

Lego Education WeDo — не только конструктор, но полное методическое обеспечение, готовое к внедрению в учебный процесс. Это отличное начало для занятий робототехникой.

Найти кружки робототехники, где используется Lego WeDo, можно в нашем .

LEGO Education WeDo 2.0

Upd. 4.12.2017: LEGO Education в начале 2016 года новую версию образовательного конструктора робототехники для детей WeDo 2.0 (арт.45300).

В состав базового набора Lego WeDo 2.0 входят новые версии коммутатора, датчиков наклона и движения, двигателя. К сожалению, новый конструктор не совместим с моторами и датчиками Lego WeDo предыдущей версии, т.к его микропроцессор (СмартХаб) имеет другие разъемы подключения. СмартХаб WeDo 2.0 подключается к компьютеру или планшету по протоколу Bluetooth 4.0.

Есть ли альтернатива Lego в образовательной робототехнике?

Сегодня платформа Lego является безусловным лидером образовательной робототехники. Наборами Lego Mindstorms оснащены кружки робототехники во многих странах мира. На лидирующих позициях Lego Mindstorms и в российских .

Каковы причины такого лидерства? Их несколько.

Во-первых, это безусловно качество платформы, ее, с одной стороны, обучающие, с другой — конструкторские возможности. Из этого конструктора можно построить не только игрушечных роботов, но и прототипы таких серьезных конструкций как, например, и т.п. Причем придумывать и реализовывать все это могут дети. А еще из Mindstorms можно сделать робота, который !

Робот-венероход на WRO-2014 в Казани

Есть ли альтернативы по функционалу? В общем, да. Это, например, корейский , немецкий , отечественный ТРИК и другие. Перечисленные платформы схожи по цене с Lego. Есть и более дорогие конструкторы.

Во-вторых, это мощное олимпиадное робототехническое движение на основе Lego. Конкурсы мирового уровня — такие как и , а также множество региональных мероприятий и фестивалей содержат в своих регламентах требование использовать Lego.

Производители альтернативных Lego конструкторов также продвигают соревнования на основе своих платформ — так молодежные соревнования по робототехнике полностью основываются на конструкторах HUNA. Набирают популярность и мультиплатформенные соревнования. В России это и только что объявленный ИКаР .

В-третьих, преемственность Lego Mindstorms. До него может быть описанный выше WeDo , после — TETRIX и MATRIX. Последние два используют контроллеры NXT и EV3, но предлагают значительное механическое и конструктивное расширение. С учетом того, что современные дети знакомятся с Lego в возрасте еще до года, то продолжать с ним работать и дальше кажется естественным и более простым.

В-четвертых, на популярность Lego играет и фактор времени — он просто был первым в этой области и завоевал рынок. Есть сложившиеся сообщества в разных странах, есть множество разработок, есть значительный опыт по использованию в образовании.

Роботом, собранным из конструктора LEGO Mindstorms EV3, вы легко можете управлять дистанционно от первого лица. Для этого вам дополнительно понадобится два смартфона, с установленным приложением RoboCam на один из них. Давайте познакомимся подробнее с приложением RoboCam и научимся им пользоваться.

Статья описывает новые возможности, появившиеся в первой версии версии 1.0 приложения RoboCam. Все статьи посвященные приложению RoboCam вы можете найти . Приложение RoboCam можно установить из магазина Google Play .

Сначала давайте посмотрим видео, где показан робот, управляемый от первого лица, которого я назвал Исследователь EV3. Помимо того, что робот может ездить в любом направлении, он умеет поднимать и опускать голову, т.е. рамку, к которой прикреплён смартфон. А это значит, что вы сможете смотреть не только по сторонам, но и вверх/вниз.

Что нужно для проведения эксперимента?

Чтобы повторить эксперимент, который вы видите на видео, вам нужно следующее:

  1. Робот , собранный из конструктора LEGO Mindstorms EV3.
  2. Android-смартфон с камерой и установленным на него приложением RoboCam . Поддерживается Android 2.3 и выше. В смартфоне как минимум должна быть хотя бы одна камера, а также модули Bluetooth и Wi-Fi.
  3. Смартфон или планшет с современным браузером с поддержкой HTML5. Хорошо подходят и протестированы браузеры Google Chrome, Яндекс.Браузер, Firefox и Opera последних версий. Операционная система в принципе может быть любой (Android, iOS или Windows), но полноценные тесты проводились только на Android. У смартфона или планшета должен быть как минимум сенсорный экран (желательно с распознаванием не менее 2-точек касания) и модуль Wi-Fi.

Схема подключения

Сначала, давайте посмотрим, как все перечисленные выше устройства подключены друг к другу. Лучше всего это иллюстрирует рисунок снизу.

Как вы видите, приложение RoboCam установлено на смартфон 1. Этот смартфон прикрепляется к роботу и подключен к нему через Bluetooth. От смартфона 1 к EV3 идут команды управляющие моторами, обратно поступает информация с датчиков.

2-й смартфон или планшет, подключается к смартфону 1 через Wi-Fi. Смартфон 1 и смартфон или планшет 2 должны быть подключены к одному роутеру. От смартфона или планшета 2 идут координаты джойстиков на смартфон 1, а обратно идёт видеопоток с камеры.

Как происходит управление EV3

Чтобы лучше понять, как происходит управление роботом EV3, посмотрим следующую схему.

Когда вы начинаете прикасаться к джойстикам A и B, смартфон или планшет 2 передаёт координаты прикосновений смартфону 1, который преобразует их в команды для моторов EV3. Каким образом координаты будут преобразованы, зависит от настроек приложения RoboCam. Подробнее о настройках мы поговорим ниже.

Собираем робота

Чтобы повторить эксперимент, прежде всего, вам нужно собрать робота, которым вы будете управлять. Это может быть простой двухколёсный робот, робот-автомобиль или робот со сложным механизмом передвижения. По большому счёту не важно, каким будет ваш робот, ведь программа RoboCam гибко настраивается, и вы сможете управлять с её помощью роботом любой конструкции. Главное чтобы вы смогли закрепить на своём роботе смартфон таким образом, чтобы камера была направлена вперёд, по ходу движения.

Начинать я рекомендую с простой модели. Если у вас образовательный набор LEGO Mindstorms EV3, то вы можете собрать Исследователя EV3, которого вы видите на фото и видео в начале статьи. Вот схема сборки Исследователя EV3:

Инструкция для сборки исследователя EV3 Версия:2

Инструкция для сборки робота исследователя EV3 из базового образовательного набора конструктора LEGO Mindstorms Education EV3 (45544).

В версии 2: рамка закреплена прочнее и не отваливается.

04.06.2016 4.95 MB 5783

Готовим Android-смартфон и приложение RoboCam

Приложение RoboCam работает на смартфонах или планшетах под управлением операционной системы Android 2.3 и выше. Обязательным является наличие у устройства любой встроенной камеры и модулей Bluetooth и WiFi. Приложение бесплатное, вы можете установить его с помощью магазина Google Play. Вот страничка приложения RoboCam . Для установки нажмите кнопку «УСТАНОВИТЬ», и примите требуемые разрешения, нажав на кнопку «ПРИНЯТЬ».

После установки откройте приложение. В Android 6 и выше, вы сразу увидите запрос на разрешение использовать камеру. Камера нам обязательно нужна, поэтому нажмите «РАЗРЕШИТЬ».

После того как приложение откроется вы увидите, три круглые кнопки для основных действий, а на заднем плане картинку с камеры.

Зелёная кнопка слева отвечает за запуск и остановку сервера RoboCam, который нужен для подключения смартфона или планшета 2, см. схему выше. Одновременно кнопка показывает, работает сервер или нет. На картинке фон кнопки белый, это значит, что сервер не работает. Об этом же говорит подсказка сверху. Вы можете в любой момент запустить или остановить сервер, нажав на эту кнопку.

Средняя кнопка пурпурного цвета отвечает за подключение к роботу EV3. Одновременно кнопка показывает, подключен ли смартфон к роботу или нет. На картинке, фон кнопки белый, это значит, что робот не подключен. У этой кнопки тоже есть подсказка, прямо под кнопкой, где в верхней строке отображается состояние подключения (на картинке это надпись «EV3 не подключен»), а в нижней строке – название текущих настроек робота (на картинке это «Исследователь EV3»).

Кнопка справа открывает настройки программы RoboCam. Если вы будете использовать моего Исследователя EV3, то дополнительно ничего настраивать не надо, т.к. сразу после первого запуска приложения по умолчанию будут выбраны настройки с названием «Исследователь EV3». Если робот у вас другой, то сначала придётся поковыряться в настройках. Но об этом поговорим ниже.

Запуск сервера RoboCam и подключение к нему

Сразу скажу, что совсем неважно, что вы сделаете раньше, запустите сервер RoboCam или подключите смартфон к роботу. Это можно сделать в любом порядке.

Итак, после того как приложение установлено на смартфон 1 (см. схемы выше) и открыто, вы можете запустить сервер RoboCam. Для этого нажмите на зелёную копку слева, при этом кнопка начнёт мигать, а в подсказке будет написано «Инициализация сервера RoboCam...». Через некоторое время, после того как сервер запустится, фон кнопки окрасится в зелёный цвет, а в подсказке будет написано «Сервер RoboCam работает».

Если смартфон ещё не подключен к вашему Wi-Fi-роутеру (как у нас на картинке), то пора это сделать. После подключения в верхней подсказке во второй строке отобразится адрес для подключения к серверу RoboCam. При включении сервера нет разницы, что включать сначала, сервер RoboCam или Wi-Fi.

Теперь вы можете подключиться к серверу RoboCam. Для этого возьмите второй смартфон или планшет (я буду использовать планшет), убедитесь, что он подключен к тому же Wi-Fi-роутеру, откройте браузер и перейдите на страничку с адресом, который показан в подсказке в приложении RoboCam (на картинке это «http://192.168.1.153:8088»). Браузер нужно использовать один из тех, про которые было написано выше. Если вы всё сделали правильно, то в браузере загрузится страничка для ввода логина и пароля. Введите здесь логин и пароль и нажмите кнопку «Войти». Если после установки вы ничего не меняли в настройках, то по умолчанию установлен логин «admin» и пароль «123».

После этого откроется основная страничка сервера RoboCam, на которой вы увидите картинку с камеры смартфона 1 (см. схему выше).

Как видите ориентация смартфона 1 – портретная, а моего планшета – альбомная. Вы можете перевернуть смартфон 1 так, чтобы он тоже был в альбомной ориентации. При этом картинка в на планшете автоматом поменяется на альбомную.

Обратите внимание, что ориентация не меняется, если вы заблокировали смартфон 1.

Чтобы теперь сделать изображение на весь экран, нажмите на значок справа сверху на странице. Так уберутся все ненужные нам кнопочки, закладки браузера и т.д., а изображение с камеры станет крупнее.

Подключение RoboCam к EV3

Прежде чем подключать приложение RoboCam к EV3 убедитесь, что у вашего робота EV3 и смартфона включён Bluetooth и что они спарены. Также убедитесь, что моторы подключены именно к тем портам, которые указаны в настройках робота. Название текущих настроек написано в подсказке к средней кнопке во второй строке, на картинке ниже, это «Исследователь EV3». Если вы собрали Исследователя EV3 по моей схеме (см. выше) и после установки приложения RoboCam не меняли настройки, то будьте уверены, что всё настроено правильно. Подробно о настройках будет написано ниже.

Итак, если всё готово, нажмите на центральную пурпурную кнопку. Если у вас на смартфоне Bluetooth оказался выключен, то вы увидите запрос на его включение. Нажмите «Да».

Дальше вы увидите, что кнопка начнёт мигать, а вместо подсказки появится список спаренных через Bluetooth устройств. Выберите здесь вашего робота EV3 (на картинке – это «EV3», но у вас в настройках EV3 может быть выставлено другое имя).

После этого приложение подключится к EV3.

Если в это время клиент подключен к серверу RoboCam, то вы увидите, как появятся джойстики (прямоугольный и круглый джойстики на картинке снизу). После этого вы сразу можете управлять роботом.

В настройках по умолчанию для Исследователя EV3 у вас будут два джойстика: круглый и вертикальный (см. картинку выше). Вертикальным джойстиком управляется рамка-держатель смартфона, а круглым – движения робота. Иконка с изображением ладони сверху справа, меняет джойстики местами, чтобы быстро переключать управление для левши и правши. Подробнее о джойстиках будет написано ниже.

Остановка сервера RoboCam и отключение EV3

После того как вы закончили управлять роботом перед тем как закрыть приложение RoboCam рекомендуется остановить сервер RoboCam и отключить EV3 от смартфона. Это можно делать в любом порядке. Для того чтобы остановить сервер нажмите на зелёную кнопку слева. После этого фон кнопки станет белым, а подсказка покажет «Сервер RoboCam выключен». Чтобы отключить EV3, нажмите на центральную пурпурную кнопку. После этого фон кнопки станет белым, а на подсказке в верхней строке вы увидите надпись «EV3 не подключен». При этом моторы остановятся или примут первоначальное положение в зависимости от настроек.

Чтобы перейти в настройки, нажмите на серую кнопку справа.

Настройки разделены на 2 части: настройки сервера и настройки робота. Сначала давайте посмотрим, что есть в настройках сервера. Выберите «Сервер».

Настройки сервера делятся на 2 группы: настройки камеры и настройки безопасности. В настройках камеры можно выбрать камеру (фронтальную или тыловую), размер изображения и качество JPEG. Чем меньше вы установите размер изображения, тем плавнее и быстрее будет передача видео клиенту, но ухудшится качество картинки. Аналогично влияет передачу видео и качество JPEG: чем лучше качество JPEG (90 и более процентов), тем лучше картинка, но медленнее скорость, и наоборот, чем хуже качество JPEG (40 и менее процентов), тем быстрее скорость, но хуже картинка. Выберите то, что оптимально для вас.

В настройках безопасности вы можете поменять имя и пароль водителя (по умолчанию – имя «admin» и пароль – «123»). Также по умолчанию включены наблюдатели. Наблюдатели могут параллельно с вами видеть изображение с камеры, но не могут управлять роботом. Для наблюдателя также можно задать имя и пароль (по умолчанию здесь используется имя «guest» и пароль «123»). Чтобы выключить наблюдателей, уберите галку «Разрешить наблюдателей».

Количество водителей и наблюдателей не ограничено, однако подключение более одного водителя может вызвать конфликты при одновременном управлении и передаче видео потока. Не рекомендуется подключаться к серверу RoboCam более одного водителя. Большое количество наблюдателей может также негативно сказаться на передаче видео. Желательно уменьшить количество наблюдателей до минимума или вообще отключить эту функцию.

После изменения настроек, вы можете сохранить их, нажав на кнопку «СОХРАНИТЬ» справа сверху или выйти без сохранения, нажав на кнопку «ОТМЕНА» или стрелку слева сверху. После сохранения настроек сервера клиенты могут быть отключены, и нужно будет подключаться снова.

Список настроек роботов

Вторая часть настроек программы RoboCam – это настройки роботов. Нажмите «Робот», чтобы перейти к списку настроек роботов.

В списке настроек роботов вы можете увидеть настройки для всех ваших роботов. Вы в любой момент можете добавить или удалить настройки нажав, соответственно, кнопку «ДОБАВИТЬ» или «УДАЛИТЬ» сверху справа. А сразу под кнопками вы можете увидеть текущие настройки. С помощью этого пункта происходит переключение между настройками для ваших роботов. Теперь давайте посмотрим настройки Исследователя EV3. Для этого выберите в списке «Исследователь EV3».

В самом верху указана общая информация: название робота и описание. Название и описание отображаются в списке, чтобы вы могли легко найти нужные настройки. Также название отображается в основном экране программы под центральной кнопкой, с помощью которой вы подключаетесь к EV3. Ниже идут настройки джойстиков.

Всего вы можете настроить до 4-х джойстиков, но одновременно на экране у клиента будет видна только одна пара джойстиков 1-2 или 3-4. Однако если вы будете использовать джойстик 1 и 3, то они всё равно не будут видны одновременно, т.к. относятся к разным парам, и вы будете видеть либо джойстик 1, либо джойстик 3. Видимость каждого джойстика включается галочкой «Видимость ». Если вы включили 2 пары джойстиков, то на экране клиента появится кнопка для переключения между парами.

Итак, в настройках вы можете увидеть группы «Джойстик 1», «Джойстик 2», «Джойстик 3» и «Джойстик 4». В каждой из них собраны настройки для одного джойстика. Давайте посмотрим настройки для «Джойстика 1». Галочка «Видимость», как вы уже поняли, показывает или прячет джойстик. Если галочка не установлена, то и настройки для этого джойстика будут спрятаны.

Чуть ниже в выпадающем списке «Форма » вы можете выбрать форму джойстика, а вместе с формой и его характеристики. Доступны следующие формы джойстиков: вертикальная, горизонтальная, круглая, квадратная, стрелки, вертикальные стрелки и горизонтальные стрелки. Вот как выглядят перечисленные джойстики:

Вертикальный джойстик воспринимает только высоту прикасания к нему, т.е. ему всё равно, прикоснулись вы к нему левее или правее, главное на какой высоте. Координата касания для него будет в пределах от -100 в самой нижней точке до 100 в самой высокой точке с 0 посередине.

Горизонтальный джойстик работает аналогично, но по горизонтали. Для него всё равно, на какой высоте происходит касание, главное слева или справа. Здесь координата касания вычисляется по горизонтали от -100 в самой левой точке до 100 в самой правой точке с 0 посередине.

Круглый и квадратный джойстики похожи. Здесь определяются координаты касания по горизонтальной и вертикальной осям, также в пределах от -100 до 100 с 0 по центру. Но в круглом джойстике касания не могут выйти за пределы круга. Т.е. если точка касания находится за пределом круга, то будет взята точка, находящаяся на пересечении линии от точки касания до центра круга с окружностью. Нагляднее это видно на рисунке ниже.

Джойстики-стрелки не чувствительны к точке касания, главное, к какой стрелке вы прикасаетесь. Если вы касаетесь стрелки вверх, то считается, что координата джойстика по вертикали будет 100, а по горизонтали 0. Для стрелки вниз, горизонтальная координата джойстика также будет 0, а вертикальная превратится в -100. Аналогично со стрелками влево и вправо: вертикальная координата джойстика будет равна 0, а горизонтальная будет соответственно -100 и 100.

Сразу под формой выбирается тип джойстика в выпадающем списке «Тип ». Здесь можно выбрать одно из следующих значений: «Независимые моторы», «Руление 1», «Руление 2» и «Почтовый ящик».

Джойстики с типами «Руление 1 » и «Руление 2 » позволяют управлять роботом с двумя независимыми ведущими колёсами, таким как Исследователь EV3. Координаты прикосновения к таким джойстикам будут автоматически трансформироваться в команды двигателям. Для джойстика нужно будет только выбрать, на каком порту будет левое, а на каком правое колёса. Но об этом будет написано чуть ниже.

«Руление 1» позволит управлять двухколёсным роботом, как автомобилем. Здесь вы не сможете развернуть робота на месте. Чем ближе касание к центру по вертикали, тем ниже скорость. «Руление 2» позволяет роботу крутиться на месте.

Джойстик с типом «Независимые моторы » преобразует горизонтальную координату касания в команды мотору независимо от вертикальной координаты. Для джойстика нужно будет указать, какой мотор будет управляться при изменении горизонтальной координаты, а какой при изменении вертикальной координаты. Этот тип джойстика можно использовать для управления машиной, у которой один мотор поворачивает руль, а второй мотор крутит ведущие колёса. В этом случае изменение горизонтальной координаты нужно настроить на вращение первого мотора, а изменение вертикальной координаты – на вращение второго мотора.

Джойстик с типом «Почтовый ящик » будет просто передавать координаты прикосновения в почтовые ящики EV3. Чтобы ваш робот ожил, вам нужно будет написать программу для EV3, которая будет обрабатывать эти координаты. С помощью джойстика такого типа вы можете сделать более сложные модели управления роботом, т.к. можете реализовать свой собственный алгоритм преобразования координат снятых с джойстика в команды моторам. Например, вы сможете сделать управление Гиробоем EV3. Джойстик 1 передаёт координаты в почтовые ящики с именами x и y, джойстик 2 – в почтовые ящики w и z, джойстик 3 – в почтовые ящики a и b и джойстик 4 – в почтовые ящики c и d.

Следующие две настройки «Окончание прикосновения (для горизонтальной оси) » и «Окончание прикосновения (для вертикальной оси) » определяют, что будет происходить, когда вы перестали прикасаться к джойстику. Здесь можно выбрать один из двух вариантов: «Возвращаться к нулю» или «Сохранять позицию». Возвращение к нулю имеет смысл использовать в большинстве ситуаций, например, если вам нужно чтобы робот остановился, когда вы перестали прикасаться к джойстику, как раз подходит вариант «Возвращаться к нулю». Вариант с сохранением позиции будет полезен, когда нужно помнить последнюю координату касания. Этот вариант используется, например, для наклона рамки Исследователя EV3. Эта настройка доступна для всех форм джойстика кроме джойстиков-стрелок.

Если вы используете тип джойстика «Независимые моторы», «Руление 1» или «Руление 2», то ниже вы найдёте настройки портов для этого джойстика. Порты, которыми будет управлять джойстик можно добавлять и удалять. Для этого есть кнопки «ДОБАВИТЬ» и «УДАЛИТЬ». Количество портов не ограничено. Снизу на первом рисунке показаны настройки для джойстика с типом «Независимые моторы», а на втором рисунке для джойстика с типами «Руление 1» и «Руление 2». Как видите, есть небольшая разница.

Давайте пробежимся по настройкам портов. Настройка «Ось джойстика » появляется только для джойстика с типом «Независимые моторы». Варианта здесь два: «Горизонтальная» и «Вертикальная». Если вы выбрали «Горизонтальная», то мотор будет реагировать только при изменении координаты прикосновения по горизонтальной оси, а если выбрали «Вертикальная» - то на прикосновения по вертикальной оси.

Настройка «Мотор » появляется только для джойстика с типом «Руление 1» или «Руление 2». Здесь вы выбираете между «Левый» и «Правый».

Настройка «Модуль EV3 » понадобится, если вы собрали робота с использование нескольких модулей EV3, соединённых в «гирлянду». Здесь можно выбрать номер модуля от 1 до 4. Если у вас используется только один модуль EV3, то здесь всегда должна быть 1.

Настройкой «Номер порта » вы можете выбрать порт мотора от A до D.

Настройка «Изменяемое значение » появляется только для джойстика с типом «Независимые моторы». Здесь возможно два варианта: «Мощность мотора» и «Угол поворота мотора». Если вы выбрали «Мощность мотора », то джойстик будет влиять на мощность мотора, т.е. чем дальше от центра джойстика вы касаетесь, тем быстрее будет крутиться мотор. Если вы выбрали «Угол поворота мотора », то джойстик будет влиять на угол поворота мотора, т.е. чем дальше от центра джойстика вы касаетесь, тем на больший угол повернётся мотор. В этом случае мощность для мотора будет настраиваться настройкой «Мощность ». Чем больше будет эта цифра, тем быстрее мотор будет реагировать на изменение координаты касания, и тем лучше он будет держать угол.

Установка галочки «Инвертировать » позволит инвертировать вычисленную мощность или угол, а «Коэффициент » увеличить или уменьшить вычисленное значение.

При установке галочки «Тормозить », моторы будут останавливаться быстро, т.е. будут тормозить. При снятии этой галочки моторы будут некоторое время крутиться по инерции до полной остановки.

Вот собственно и все настройки, которые есть в программе RoboCam. Если что-то непонятно, пишите в комментариях.

Подключение без роутера

Теперь немного трюков, которые могут сделать использование приложения RoboCam немного удобнее. Если поблизости нет роутера, например, если вы находитесь на улице, вы можете организовать подключение между смартфоном 1 и смартфоном или планшетом 2 напрямую. Для этого вам нужно включить точку доступа на смартфоне 1 (точка доступа в системе Android обычно включается в настройках сетевых подключений). После включения смартфон 1 превратится в роутер W-Fi и вы без проблем сможете подключить к нему планшет или смартфон 2. Вот так схематично будет выглядеть подключение.

Адрес сервера RoboCam вы сможете точно так же узнать из подсказки к кнопке. В большинстве случаев, для такой точки доступа адрес всегда будет http://192.168.43.1:8088.

Использование смартфона 1 как джойстик

Есть ещё один трюк, который вы можете проделать с приложением RoboCam. На смартфоне 1 (на котором у вас установлено приложение RoboCam) запустите сервер, подключитесь к роботу, а затем на этом же смартфоне запустите браузер (естественно такой, который поддерживает HTML5) и перейдите по адресу http://localhost:8088. Вы увидите страничку для ввода логина и пароля. Войдите как водитель. После входа вы увидите джойстики и сможете управлять роботом. Правда в этом случае изображение с камеры передаваться не будет. Wi-Fi можно отключить.

Итог

Надеюсь, я дал достаточное количество информации о том, как можно использовать приложение RoboCam. Если остались вопросы по программе или есть предложения, можете оставлять их в комментариях к этой статье или в сообществе

В этом разделе представлены различные Лего роботы. Начиная с Mindstorms - робота для продвинутых пользователей и даже профессионалов, заканчивая персонажами легенд: Hero Factory, Ninjago, Chima и др.


Начнём наше повествование с необычной лего игрушки – электронного интерактивного робота на базе процессора NXT 2.0! Его, с помощью инструкции, может собрать даже 10-12-летний ребёнок! LEGO Роботы mindstorms понравится не только детям, но и их родителям, так как он очень функционален и возможности его программирования поистине безграничны! Можно сконструировать свои программируемые модели!

Программирование робота очень удобно осуществлять через дружественный интерфейс программы, которую можно установить с диска! При желании, выбрать набор функций можно комбинацией клавиш на центральном блоке управления. Robot имеет очень хорошую функциональность, что достигается за счёт интерактивных сервомоторов и специальных датчиков, реагирующих на свет, звук, механические воздействия и на другие внешние раздражители!

Mindstorms может передвигаться в различном направлении, воспроизводить звуки, различать цвета, собирать кубик Рубика, брать в руки не тяжелые предметы, охранять комнату, управлять лего поездом или машиной с расстояния и многое другое! Помимо обычных датчиков, которые поставляются в начальном комплекте, можно докупить и другие различные аксессуары: различные сенсоры, переходники, моторы, аккумуляторы и многое другое, которые существенно расширят возможности Вашего лего робота!

Инструкция, которая есть на диске программного обеспечения, предлагает несколько первоначальных, несложных в сборке моделей mindstorms: Робогатор, Сортировщик цветных шариков, Сторож комнаты и некоторые другие.

Ваш ребёнок никогда не будет скучать, а учиться навыкам конструирования и программирования в игровой форме, тоже весьма познавательное занятие!

Ещё одна серия – это Фабрика Героев. Герои из серии Hero Factory являются очень колоритными существами, это гибрид человека и робота и название им – киборги! Фигурки роботов имеют подвижные руки и ноги, они держат различное оружие, которое помогает им сражаться с полчищами мутантов, которые прислуживают Огненному Лорду.

Данная серия Hero Factory является аналогом Биониклов, поэтому её с радостью воспримут поклонники мультфильмов про роботов.

Среди персонажей есть как добрые: Стормер, Фурно, Бриз и другие, так и отрицательные герои: Дриллдозер, Джетбаг, Вон Небула, которые подчиняются могущественному и злому Огненному Лорду. Попробуйте собрать всю коллекцию фигурок Фабрика Героев лего роботов и устроить своё сражение за торжество добра и справедливости!

Конструктор LEGO Mindstorms представляет собой набор электронных блоков и сопрягаемых деталей, предназначенный для создания программируемого робота. Первый набор Mindstorms компания LEGO представила еще в 1998 году, а спустя 8 лет, в 2006 году, была выпущена в свет первая версия набора LEGO Mindstorms NXT 1.0, еще через 3 года, в 2009 году вышла вторая версия набора — LEGO Mindstorms NXT 2.0, и, наконец, в 2013 году появился в продаже набор LEGO Mindstorms EV3.

Набор LEGO Mindstorms включает в себя как стандартные детали LEGO, такие как оси, шестерни, балки, колеса и сервомоторы, так и двигатели, сенсоры, и программируемый блок. Эти наборы подразделяются на ресурсный и базовый.

Базовый набор LEGO MINDSTORMS NXT есть трех версий:

    8527 LEGO MINDSTORMS содержит 577 деталей, 2006 года выпуска. Это - первая версия коммерческого набора;

    9797 LEGO MINDSTORMS Education NXT Base Set содержит 431 деталь, 2006 года выпуска. Это — базовый набор для обучения, образовательный набор;

    8547 LEGO MINDSTORMS NXT 2.0 содержит 619 деталей, 2009 года выпуска. Это - вторая версия коммерческого набора.

Каждый из трех наборов включает в себя интеллектуальный блок NXT одной и той же версии. Прошивки отличаются, но легко обновляются, поэтому наборы можно считать в принципе равноценными.

Ресурсный набор LEGO MINDSTORMS Education Resource Set есть двух версий:

    9648 LEGO MINDSTORMS Education Resource Set;

    9695 LEGO MINDSTORMS Education Resource Set.

Ресурсный набор 2010 года выпуска содержит 817 деталей, они более разнообразны.

Базовый набор 2013 года выпуска LEGO MINDSTORMS EV3 3.0 поставляется в одной версии 31313, и содержит 601 деталь. «EV» расшифровывается здесь как Evolution.

Наборы LEGO Mindstorms комплектуются блоками управления на микроконтроллерах нескольких версий RCX, NXT и EV3. На текущий момент их три, кроме того есть модификации 1.0; 2.0 и 3.0.

Огромное количество сенсоров, которыми комплектуются наборы LEGO Mindstorms открывают широкие возможности для творчества. Сенсоры выпускают и сторонние производители, такие как Mindsensors и HiTechnic. Вот лишь несколько примеров стандартных сенсоров для LEGO Mindstorms NXT: сервомотор-тахометр NXT, ультразвуковой сенсор расстояния NXT, сенсор касания NXT, сенсор звука NXT, сенсор освещенности NXT. Вообще, список довольно обширен.

Давайте же рассмотрим, что представляет собой набор LEGO MINDSTORMS EV3.

Что касается начинки EV3, то интеллектуальный блок оснащен процессором Sitara AM1808 (ARM9) частотой 300 МГц от Texas Instruments, имеет 64 Мб оперативной памяти, 16 Мб Flash-памяти, также есть слот для карт памяти microSDHC до 32 Гб. В наличии USB-хост и Bluetooth, возможен Wi-Fi через USB-донгл, поддерживаются устройства Apple. Также блок оснащен монохромным LCD-дисплеем, разрешением 178x128. Все моторы и NXT-сенсоры полностью совместимы с блоком EV3. Кстати, NXT-блок может быть запрограммирован под EV3, но некоторые функции будут недоступны.

Коробка с конструктором может быть развернута в трассу с разноцветными зонами, и сенсоры цвета отлично будут с ними взаимодействовать. Детали, находящиеся в коробке, изначально разложены в несколько отдельных пакетиков. Кроме того, есть в комплекте набор наклеек и инструкция.

Интеллектуальный блок EV3 является сердцем конструктора. Питание осуществляется 6 пальчиковыми батарейками. Для управления служат 6 кнопок, причем подсветка имеет три цветовых режима индикации. Для подключения датчиков имеется 4 порта ввода, также присутствуют 4 порта вывода команд. Для подключения блока к компьютеру — гнездо miniUSB, порт USB-хост для организации соединений, встроенный динамик и, как упоминалось ранее, слот для карты памяти. Программный интерфейс позволяет создавать и настраивать программы непосредственно с блока.

Кроме интеллектуального блока, в комплект включены:

2 больших сервомотора, оснащенные точными датчиками вращения, и могущие развить 170 оборотов в минуту при максимальном крутящем моменте в 40 Нсм.

Также есть один средний сервомотор, крутящий момент здесь меньше — до 12 Нсм, однако обороты могут достигать 250 в минуту.

Датчик цвета и освещенности с возможностью различать 8 цветов с частотой опроса до 1 кГц.

Датчик касания, способный распознавать щелчок, прикосновение, освобождение и считать их количество.

ИК-датчик расстояния, применимый и для ДУ, способный принимать сигнал даже с 2 метров, с диапазоном измерения расстояния в радиусе до 70 см. Доступны 4 канала для индивидуального приема сигналов, управляющих команд.

Инфракрасный маяк для ИК-датчика, может работать как пульт ДУ. На корпусе есть зеленый индикаторный светодиод и переключатель каналов. Может предавать в 4 отдельных канала в радиусе до 2 метров. Автоматически отключается через час простоя. Питается от двух мизинчиковых батареек.

Кроме включенных в комплект датчиков, могут использоваться и другие датчики:

Гироскопический датчик для измерений вращательных движений робота с точностью в 3 градуса, чувствительный к моментам до 440 градусов в секунду. Частота опроса до 1 кГц.

Ультразвуковой датчик, служащий для измерения расстояний посредством передачи и приема отраженных волн. Может работать как сонар и как приемник звуковых волн в качестве управляющих сигналов. Способен измерять расстояния до 2,5 метров с точностью в 1 см.

Поддерживаются не только сенсоры и аксессуары LEGO, но и модели сторонних производителей, например Mindsensors и HiTechnic. Это могут быть джойстики, компасы, акселерометры и т. д. Ассортимент всевозможных решений очень-очень широк.

Для программирования робота можно использовать программное обеспечение LEGO Mindstorms EV3 Home Edition для Windows или OS X, которое легко скачивается на официальном сайте LEGO. Там же есть обилие прошивок, обучающих материалов по программированию, видеороликов, интерактивных инструкций, описаний миссий.

Разумеется, EV3 может управляться со смартфона на Android или iOS, для этого есть отдельные приложения. Программирование возможно и на Java и на множестве других языков: ASM/C/C++/Perl/Python/Ruby/VB/Haskell/Lisp/Matlab/LabVIEW.

На официальном сайте LEGO можно найти 17 моделей с инструкциями для сборки разных роботов из комплекта EV3. Вот эти модели:

TRACK3R - робот на гусеничном ходу высокой проходимости с четырьмя взаимозаменяемыми инструментами.

SPIK3R - робот-скорпион, может резко разворачиваться, хватать клешней-дробилкой предметы, а хвост-молния даст отпор всему, что окажется на его пути.

R3PTAR - робот-кобра высотой 35см, может скользить по полу, атаковать предметы клыками с высокой скоростью.

GRIPP3R - этот робот способен поднимать тяжести, может захватить, поднять и кинуть жестяную банку.

EV3STORM - робот на гусеничном ходу со множеством миссий.

BOBB3E - робот-погрузчик Bobcat® с возможностью дистанционного управления посредством кнопок ИК-маяка, может двигаться или поднимать различные предметы.

BANNER PRINT3R - робот-принтер. Он умеет рисовать обычным маркером, проводя линии. Можно задавать собственный рисунок.

RAC3 TRUCK - гоночный грузовик на дистанционном управлении. Можно добавить прицеп.

DINOR3X - робот-трицератопс ходит и поворачивается на четырех ногах.

KRAZ3 - робот реагирует на ИК-маяк своего друга-жучка. Можно также управлять роботом с помощью настраиваемой программы или запрограммировать так, чтобы он двигался исключительно за жучком;

EV3D4 - созданный по мотивам “Звездных войн”, может следовать за владельцем, перемещаться по ИК-маяку, общаться. Поддерживает обширный набор сценариев, которые можно программировать и расширять, используя новое ПО EV3.

EL3CTRIC GUITAR - Ударяя по одной струне, перебирая пальцами по безладовому грифу, используя тремоло-систему, можно исполнять невероятные соло на этой гитаре!

EV3MEG - робот-помощник, способный перемещаться точно по линиям определенного цвета, благодаря датчику освещенности. Обнаруживает препятствия на пути и реагирует на них. Способен перемещаться как самостоятельно, так и управляться с помощью ИК-маяка.

Игра EV3 - робот умеет прятать мячик под стаканчик, затем менять стаканчики местами, а вам предстоит угадать, где мячик. Используя ИК-маяк можно задавать уровень.

MR.B3AM - измеряет длину балок LEGO® Technic, определяет цвет и размер балок.

ROBODOZ3R - робот-бульдозер. Может двигаться самостоятельно или управляться дистанционно. Расчищает себе путь, отваливая и отодвигая с пути мешающие предметы.

В силу того, что данные наборы заставляют думать, моделировать, изобретать, в общем побуждают к творчеству и развитию, вовсе не удивительно, что во множестве стран весьма широко внедрено обучение в колледжах и школах с использованием наборов LEGO Mindstorms.

Стали довольно популярны соревнования роботов, в которых каждое учебное заведение может выставить свои команды роботостроителей на соревнования. Проводятся такие соревнования и в России, самое известное из таких мероприятий — РобоФест. Лучшие из лучших попадают на Всемирную Олимпиаду Роботов - WRO (World Robot Olympiad).

Где купить LEGO Mindstorms EV3?

Цена LEGO Mindstorms EV3 зависит от комплектации набора. Различные комплектации LEGO Mindstorms, его образовательные версии, можно приобрести у специализированных продавцов LEGO Education.

Андрей Повный


Конструктор LEGO – это более универсальный материал, чем может показаться на первый взгляд. Ведь с его помощью можно строить не только игрушечные машинки и домики, но и достаточно сложные конструкции, например, роботов под управлением мобильного телефона. Вот подобные наборы с названием Mindstorm EV3 и представила недавно датская компания на выставке 2013 CES в Лас-Вегасе.




В прошлом году четырнадцатилетний американский школьник прославился на весь технический мир тем, что создал из LEGO , умеющий рисовать фломастером заданные пользователем рисунки. А в 2013-м датская компания и сама выпустила продукт с похожим названием – Mindstorm EV3. Но это не принтер, а сборные роботы, собираемые вручную из деталей упомянутого выше конструктора.



Основу Mindstorm EV3 составляет некое подобие системного блока, небольшой компьютер на базе ARM-процессора, работающий под управлением операционной системы Linux. Он имеет 16 мегабайт встроенной флеш-памяти, 64 мегабайта памяти оперативной, слот расширения для SD-карточек, а также Wi-Fi-модуль.

Вот этот системный блок и станет «мозгом» робота, который каждый обладатель комплекта Mindstorm EV3 сможет собрать собственноручно, следуя инструкциям от производителя или руководясь своим инженерным техническим талантом.



Модуль же будет управлять действиями этого робота, в зависимости от выбранной предустановленной программы или алгоритма, написанного самим пользователем.

Более того, компания LEGO обещает, что робот Mindstorm EV3 сможет также взаимодействовать с мобильными телефонами под управлением операционных систем Android и iOS. Достаточно будет лишь установить на них специальное программное обеспечение, чтобы одними лишь движениями пальцев по экрану смартфона управлять действиями собранного только что собственными руками робота.



Комплект LEGO Mindstorm EV3 включает в себя 594 детали, а собрать простейшего робота с его помощью можно будет всего за 20 минут. Производитель обещает начать продажи этого необычного конструктора уже в 2013 году.