Добро пожаловать! В нашем предыдущем уроке « Управляйте дроидом с помощью своего разума» и 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 .
Компоненты контроллера повязки
Вот элементы демонстрации повязки Перена:
- Повязка для управления жестами Myo
- Синий Raspberry Pi, который получает данные от повязки и отправляет их в облако Bluemix (не показано)
- Серебряный Raspberry Pi, который доставляет данные из Bluemix на BB-8 через Bluetooth Low Energy
- Сферо Звездные войны BB-8 Droid
- Мяч для гольфа и Дарта Вейдера не показаны (вероятно, тусуются в их звездном трейлере)
Вы можете купить повязку Myo черного или белого цвета за 199 долларов США:
Вот пара вводных видео Myo Armband, которые интересно смотреть, особенно если вы еще не видели этого.
Вот общее введение продукта:
И этот ориентирован больше на разработчиков:
Они предлагают множество решений для использования, а также отличный сайт для разработчиков .
И, конечно же, вот снова BB-8 и как это произошло :
Сборка приложения
Теперь давайте углубимся в то, как Пирэн построил демонстрацию, используя Интернет вещей IBM Bluemix . В сегодняшнем эпизоде я дам общий обзор моего интервью с Переном. Возможно, мы сделаем шаг за шагом вместе в ближайшем будущем — дайте нам знать в комментариях ниже, если вам будет интересно!
Вот снимок экрана, показывающий, как Bluemix работает с устройствами и IoT:
Вот высокоуровневое архитектурное изображение того, что происходит между Bluemix и каждым из Raspberry Pis в видео Peeren ( узнайте больше о MQTT здесь ):
Настройка приложения Bluemix
Поскольку я не буду рассказывать вам о настройке приложения, вас может заинтересовать обзор UX приложения Bluemix от IBM Design Lead, Tarun Gangwani:
По сути, вы можете создать приложение из любого шаблона Bluemix, включая Internet of Things Platform Starter .
Вот информационная панель Peer’s Internet of Things, которая включает SDK для NodeJS и платформу Internet of Things, которую он использует для получения данных с повязки Myo и отправки их на BB-8:
Калибровка повязки для ваших движений
Перен рекомендует потренироваться с повязкой Myo после калибровки. Вот видео из « Создание пользовательской калибровки вашей повязки Myo», которое показывает, как это работает (см. Также « Что может делать повязка Myo» ):
По сути, вы калибруете его несколькими простыми жестами, а затем тренируете свои движения, чтобы он мог уловить ваши намерения. Перен использовал следующие жесты для видео:
- Машет, чтобы повернуть налево
- Размахивая, чтобы повернуть направо
- Кулак, чтобы остановить
- Раздвигая пальцы, чтобы заставить его идти
- Поднимите руку, чтобы вращаться на 180 (Тони Хок будет горд, а потом скажет: «Сделай это в воздухе, дроид!»)
Пирен говорит, что для того, чтобы обучить Emotiv Insight потребовались часы, нужно потренироваться, чтобы работать с Myo. Системы управления еще не полностью автоматические — вы не можете просто надеть шлем и аккуратно летать на вертолете ( извините, что извините вас за сценаристы боевиков ).
Отправка нарукавной телеметрии в Bluemix
Как я уже упоминал выше, синий Raspberry Pi получает данные от повязки и отправляет их в облако Bluemix. Это достигается путем запуска кода Python и MQTT для связи с Bluemix.
По сути, Myo Armband отправляет телеметрию через Bluetooth на адаптер Bluetooth на Raspberry Pi. Затем код Python берет телеметрию и отправляет ее в Bluemix в облаке. Все данные поступают в виде полезной нагрузки JSON.
Вот скриншот кода Питера Пирена:
Если вы хотите углубиться в эту область, я рекомендую посетить портал Thalmic Labs Developer и его неофициальную библиотечную страницу . Вы также можете посмотреть это видео с повязкой Myo, управляющей колесным роботом Raspberry Pi (у него отличный саундтрек):
Обработка данных нарукавной повязки в Bluemix
В Bluemix данные можно преобразовать с помощью визуального редактора Node-RED . Нам нужно преобразовать поступающие жесты Myo в команды, которые BB-8 понимает в своем драйвере / языке.
Например, нарукавная повязка переводится на BB-8: запуск и остановка. Вот скриншот из потока переводов Peeren’s Node-RED:
Доставка команд на BB-8
Чтобы получить команды от 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 через цилиндрический сфероид:
Как только команды получены 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 . Вот некоторые связанные ресурсы:
- Начало работы с онлайн-курсом IBM Bluemix
- Быстрые приложения, код, учебники и видео
- 200 дней Bluemix
- Форум Bluemix
Если вы хотите узнать больше о Bluemix и IoT, сообщите нам об этом — напишите в комментариях или свяжитесь с нами через Twitter @reifman или Rob Peeren @robobob или через @IBMCloud . Если вы создадите классное приложение для устройств IoT, дайте нам знать, и, возможно, мы напишем о вашей функции!
Вы можете посмотреть будущие уроки всех видов от меня на моей странице инструктора Envato Tuts + . Я надеюсь, что вы также ознакомитесь с моими двумя сериями Как программировать с Yii2 и Создайте свой запуск с помощью PHP о построении Meeting Planner .
Если вы хотите узнать больше о IBM Bluemix и Интернете вещей, посетите http://ibm.com/bluemix .