Статьи

Управляйте звездным войном BB-8 Droid с помощью жестов рук и Интернета вещей IBM Bluemix

Что вы будете создавать

Добро пожаловать! В нашем предыдущем уроке « Управляйте дроидом с помощью своего разума» и IBM Bluemix Internet of Things мы рассказали, как Джошуа Карр использовал гарнитуру Emotiv Insight для управления дроидом Star Wars BB-8 своими мыслями. Если вы мне не верите, проверьте это или посмотрите видео ниже.

Это стало возможным благодаря удивительному потребительскому оборудованию и интеграции IBM Bluemix с Интернетом вещей.

В сегодняшнем уроке я проведу вас через интервью с ИТ-специалистом по консалтингу Робом Переном. Он создал показанное видео вверху, показывающее, как он использовал жесты на руку и руку для управления BB-8 с достаточной точностью, чтобы играть в футбол (или в футбол без сотрясения мозга, как его называют некоторые).

Мы также, вероятно, продолжим эту серию по IBM Bluemix и Internet of Things (IoT) с конкретными пошаговыми руководствами о том, как опробовать больше ваших собственных проектов. Пожалуйста, дайте нам знать, о каких типах тем IoT вы бы хотели узнать больше в будущем.

Если вам нужен более широкий обзор IBM Bluemix , я советую вам посмотреть вступительное слово Дэвида Барнса ниже:

Как всегда, поделитесь своими идеями и отзывами в комментариях ниже или свяжитесь со мной напрямую в Twitter @reifman . Вы также можете связаться с Робом Переном @robobob или через @IBMCloud .

Вот элементы демонстрации повязки Перена:

IBM Bluemix IoT Arm Gestures - компоненты, используемые Робом Переном для учебного пособия сегодня

Вы можете купить повязку Myo черного или белого цвета за 199 долларов США:

IBM Bluemix IoT Arm Gestures - браслет для управления жестами Myo

Вот пара вводных видео Myo Armband, которые интересно смотреть, особенно если вы еще не видели этого.

Вот общее введение продукта:

И этот ориентирован больше на разработчиков:

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

И, конечно же, вот снова BB-8 и как это произошло :

IBM Bluemix IoT Arm Gestures - Розничная коробка звездных войн BB-8 Droid от Sphero
Жесты IBM Bluemix IoT Arm - вид BB-8 Дарта Вейдера с мячом для гольфа Raspberry Pi и Myo Armband

Теперь давайте углубимся в то, как Пирэн построил демонстрацию, используя Интернет вещей IBM Bluemix . В сегодняшнем эпизоде ​​я дам общий обзор моего интервью с Переном. Возможно, мы сделаем шаг за шагом вместе в ближайшем будущем — дайте нам знать в комментариях ниже, если вам будет интересно!

Вот снимок экрана, показывающий, как Bluemix работает с устройствами и IoT:

IBM Bluemix IoT Arm Gestures - горячо, все это объединяет введение в Bluemix IoT

Вот высокоуровневое архитектурное изображение того, что происходит между Bluemix и каждым из Raspberry Pis в видео Peeren ( узнайте больше о MQTT здесь ):

Жесты IoT для IBM Bluemix - блок-схема IoT для устройств и Bluemix с MQTT

Поскольку я не буду рассказывать вам о настройке приложения, вас может заинтересовать обзор UX приложения Bluemix от IBM Design Lead, Tarun Gangwani:

По сути, вы можете создать приложение из любого шаблона Bluemix, включая Internet of Things Platform Starter .

IBM Bluemix IoT Arm Gestures - Меню Boilerplates

Вот информационная панель Peer’s Internet of Things, которая включает SDK для NodeJS и платформу Internet of Things, которую он использует для получения данных с повязки Myo и отправки их на BB-8:

IBM Bluemix IoT Arm Gestures - панель управления Bluemix с демонстрационным приложением IoT123

Перен рекомендует потренироваться с повязкой Myo после калибровки. Вот видео из « Создание пользовательской калибровки вашей повязки Myo», которое показывает, как это работает (см. Также « Что может делать повязка Myo» ):

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

  • Машет, чтобы повернуть налево
  • Размахивая, чтобы повернуть направо
  • Кулак, чтобы остановить
  • Раздвигая пальцы, чтобы заставить его идти
  • Поднимите руку, чтобы вращаться на 180 (Тони Хок будет горд, а потом скажет: «Сделай это в воздухе, дроид!»)

Пирен говорит, что для того, чтобы обучить Emotiv Insight потребовались часы, нужно потренироваться, чтобы работать с Myo. Системы управления еще не полностью автоматические — вы не можете просто надеть шлем и аккуратно летать на вертолете ( извините, что извините вас за сценаристы боевиков ).

Как я уже упоминал выше, синий Raspberry Pi получает данные от повязки и отправляет их в облако Bluemix. Это достигается путем запуска кода Python и MQTT для связи с Bluemix.

По сути, Myo Armband отправляет телеметрию через Bluetooth на адаптер Bluetooth на Raspberry Pi. Затем код Python берет телеметрию и отправляет ее в Bluemix в облаке. Все данные поступают в виде полезной нагрузки JSON.

Вот скриншот кода Питера Пирена:

IBM Bluemix IoT Arm Gestures - код Python из демоверсии

Если вы хотите углубиться в эту область, я рекомендую посетить портал Thalmic Labs Developer и его неофициальную библиотечную страницу . Вы также можете посмотреть это видео с повязкой Myo, управляющей колесным роботом Raspberry Pi (у него отличный саундтрек):

В Bluemix данные можно преобразовать с помощью визуального редактора Node-RED . Нам нужно преобразовать поступающие жесты Myo в команды, которые BB-8 понимает в своем драйвере / языке.

Например, нарукавная повязка переводится на BB-8: запуск и остановка. Вот скриншот из потока переводов Peeren’s Node-RED:

IBM Bluemix IoT Arm Gestures - визуальный редактор проводки NodeRED

Чтобы получить команды от Bluemix для робота, они отправляются из Bluemix через Интернет на NodeJS и Cylon.js SDK на серебряном Raspberry Pi. Серебряный пи посылает команды через Bluetooth дроиду BB-8.

Cylon.js — это JavaScript-фреймворк для робототехники, физических вычислений и Интернета вещей. Это позволяет невероятно легко управлять роботами и устройствами. Также есть специальный пакет Cylon.js для Sphero BB-8 . Смотрите также драйвер Cylon.js на GitHub .

Вот некоторые из кодов Peylon Cylon, соединяющих Bluemix via MQTT и BB8 через цилиндрический сфероид:

IBM Bluemix IoT Arm Gestures - код JavaScript Cylonjs из демоверсии

Как только команды получены BB-8, его внутренние системы активируют каждую команду, создавая эффекты движения и освещения дроида.

Я спросил Перена, что было самым сложным в этих усилиях, и он ответил: «На самом деле это было довольно просто». Он сказал, что просто подключает несколько API.

«Я ничего не строил здесь. Я не писал ни драйверов устройств, ни кода более низкого уровня. Я использую API и стандартно подключаюсь к Bluemix по протоколу MQTT. Мне не нужно было ничего придумывать, чтобы это работало ».

Перен хочет вдохновить нас задуматься об использовании Bluemix более широко. Конечно, меня вдохновляет все, что Bluemix может сделать с гарнитурой Emotiv Insight, аппаратным обеспечением Myo Armband и Raspberry Pi. Невероятно, как далеко зашла индустрия.

Будучи подростком, я экспериментировал с захватом голосового сигнала и мечтал о распознавании. В колледже я экспериментировал с перьевым планшетом и с тем, как могло бы работать распознавание рукописного ввода ( демонстрация этого поздним днем Натану Мирволду помогла мне устроиться на мою первую работу в Microsoft ). Но теперь большая часть этого возможна с Bluemix и Internet of Things.

Перен говорит: «Основная сантехника очень проста». А Bluemix предлагает более 120 услуг для предприятий; «Речь идет не только о повязках и роботах». Или микрофоны и распознавание голоса — это намного больше.

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

Когда вы создаете свое собственное приложение в Bluemix, у вас есть все в одном месте. Вам не нужно переходить на разные платформы. Одно место для бизнес-правил, механизма правил отчетности, Hadoop и т. Д. Возможности практически безграничны.

Надеюсь, вам понравились наши демонстрации видео и учебники IBM Bluemix «Интернет вещей». Возможно, вы почувствуете вдохновение, пытаясь создать собственную демонстрацию.

Перен упомянул мне, что лучшая часть о Bluemix IoT состоит в том, что ничто не является очень сложным. Он может достичь своих целей, комбинируя строительные блоки, которые предлагают Bluemix и сторонние поставщики.

IBM также предлагает широкий спектр обучения и сертификации для Bluemix на своих сайтах developerWorks . Вот некоторые связанные ресурсы:

Если вы хотите узнать больше о Bluemix и IoT, сообщите нам об этом — напишите в комментариях или свяжитесь с нами через Twitter @reifman или Rob Peeren @robobob или через @IBMCloud . Если вы создадите классное приложение для устройств IoT, дайте нам знать, и, возможно, мы напишем о вашей функции!

Вы можете посмотреть будущие уроки всех видов от меня на моей странице инструктора Envato Tuts + . Я надеюсь, что вы также ознакомитесь с моими двумя сериями Как программировать с Yii2 и Создайте свой запуск с помощью PHP о построении Meeting Planner .

IBM Bluemix IoT Arm Gestures - логотип IBM и ссылка Bluemix

Если вы хотите узнать больше о IBM Bluemix и Интернете вещей, посетите http://ibm.com/bluemix .