Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson

в 15:33, , рубрики: Arduino 101, Genuino 101, ibm watson, Intel NUC, IoT, Блог компании Intel, Программирование, программирование микроконтроллеров, разработка, Разработка для интернета вещей

Наш сегодняшний рассказ посвящён использованию компактного компьютера Intel Next Unit Computing (NUC) для подключения к IoT-платформе IBM Watson датчиков, присоединённых к плате Genuino 101. Из этого материала вы узнаете о том, как, в реальном времени, считывать сведения с датчиков, подключённых к Genuino 101, тут же просматривать их на NUC и отправлять в облако IBM Watson. Там данные можно хранить, обрабатывать, визуализировать. Для того, чтобы всё это сделать, используется Node-RED, установленный на NUC. Графический интерфейс Node-RED позволяет создавать блок-схемы, реализующие функции ввода, обработки и вывода данных, то есть, всё то, что лежит в основе IoT-приложений.

image

Для того, чтобы опробовать всё то, о чём пойдёт речь, на практике, вам понадобится следующее:

  • Компьютер Intel NUC, подключённый к интернету. В нашем проекте он выполняет роль IoT-шлюза.
  • Плата Genuino 101, связанная с NUC по USB.
  • Базовая плата расширения Seed Studio Grove, подключённая к Genuino 101 и переведённая в режим 3V3 VCC.
  • Датчики Grove, подключённые к базовой плате: датчик освещённости, присоединённый к разъёму A1, датчик угла поворота на разъёме A2, кнопка (разъём D4), зелёный светодиод (D5), зуммер (D6) и реле (D7).

Подробности о подключении шлюзов Intel для интернета вещей к облаку IBM Watson можно посмотреть здесь, о работе с IoT Developer Kit читайте здесь.

Чтение показателей датчиков и вывод данных в Intel IoT Gateway Developer Hub

Подключитесь к Intel IoT Gateway Developer Hub, введя в браузере IP-адрес NUС. При запросе имени и пароля используйте и для того и для другого gwuser. После подключения будет показана основная информация о NUC, в частности – номер модели, версия, Ethernet-адрес и сведения о сети.

Щёлкните по значку Sensors, затем – по Manage Sensors для того, чтобы открыть окно Node-RED. Здесь, по умолчанию, будет лист Sheet 1, на котором размещена стандартная блок-схема для датчиков RH-USB. В этом проекте, однако, такие датчики не используются, поэтому на данном шаге нужно выделить всю блок-схему и удалить её. Теперь перед нами чистый лист, на котором мы и будем работать.

В левой части интерфейса Node-RED находится набор узлов. Это – функциональные блоки для создания Node-RED-приложений в NUC. В нашем случае понадобятся узлы, показанные ниже.

Узлы, использованные в примере

Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 2 Считывание нажатий на кнопку Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 3 Светодиод (включен или выключен)
Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 4 Измерение уровня освещённости Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 5 Форматирование выводимых данных на NUC
Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 6 Измерение угла поворота Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 7 Отправка данных в IoT-платформу Watson
Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 8 Реле (открыто или закрыто) Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 9 Отправка данных в IoT-платформу Watson

Эти узлы надо перетащить в рабочую область и разместить так, как показано на рисунке ниже. Некоторые узлы используются по несколько раз. Узлы соединяют с помощью мыши. Обратите внимание на то, что узел Watson IoT понадобится нам позже, в текущую версию блок-схемы Node-RED он пока не включён.

Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 10

Размещение узлов в рабочей области Node-RED

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

В таблице ниже показаны настройки, которые требуются для узлов. В некоторых случаях поле Name остаётся пустым (в таком случае используется стандартное имя узла). Номера выводов соответствуют тем разъёмам базовой платы, к которому подключён соответствующий датчик или актуатор.

Узлы и их настройки

Узел блок-схемы
Параметры
  • Platform: Firmata
  • Pin: D4
  • Interval (ms): 1000

Grove Light
  • Platform: Firmata
  • Pin: A1
  • Unit: Raw Value
  • Interval (ms): 1000

Grove Rotary (датчик угла поворота)
  • Platform: Firmata
  • Pin: A2
  • Unit: Absolute Raw
  • Interval (ms): 1000

Grove LED
  • Platform: Firmata
  • Pin: D5
  • Mode: Output

Grove Relay (верхний элемент)
  • Platform: Firmata
  • Pin: D7

Grove Relay (нижний элемент)
  • Name: Grove Buzzer
  • Platform: Firmata
  • Pin: D6 (с помощью этого узла можно управлять зуммером)

chart tag connected to Grove
  • Title: Button
  • Type: Status Text

chart tag connected to Grove
  • Title: Light
  • Type: Gauge
  • Units: RAW

chart tag connected to Grove
  • Title: Rotary
  • Type: Gauge
  • Units: RAW

mqtt
  • Server: localhost:1883
  • Topic: /sensors
  • Name: Charts

После выполнения настроек следует всё проверить, взглянуть, надёжно ли подключены датчики. Теперь можно нажать на кнопку Deploy, она отвечает за развёртывание приложения на NUC и его запуск. Если приложение нормально заработает, в верхней части окна Intel IoT Gateway Developer Hub можно будет увидеть сведения, которые поступают с датчиков в режиме реального времени. Это – показания датчика угла поворота (Rotary), датчика освещённости (Light), а также – данные с кнопки (Button).

Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 11

Приложение, созданное в Node-RED, запущено на NUC и выводит данные в окна Intel IoT Gateway Developer Hub

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

Отправка данных в облако и служба Quickstart

Теперь пришло время добавить в наше приложение узел для облачной IoT-платформы IBM Watson. С его помощью можно будет отправлять данные в службу Quickstart. Quickstart позволяет подключаться к Watson очень быстро и с минимальными потерями времени на настройки. Часто эту службу используют на начальных этапах разработки новых IoT-приложений.

Дополните блок-схему в редакторе Node-RED выходным узлом Watson IoT. Когда узел окажется в рабочей области, его имя поменяется на IBM IoT Device. Проведите соединительную линию от выхода узла Grove Rotary ко входу нового узла. Выполните двойной щелчок по этому узлу и настройте его параметры так, как показано ниже. Не забудьте об имени узла (поле Name) – введите в него Watson IoT Quickstart. Идентификатор (Id) Quickstart генерируется автоматически, менять его не нужно.

Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 12

Настройка параметров для узла IBM IoT Device

После внесения изменений в параметры узла нажмите на кнопку OK, а затем – на кнопку Deploy. Программа, уже установленная на NUC, будет обновлена. В этот момент показатели датчика угла поворота Grove начнут, один раз в секунду, поступать в Quickstart. Для того, чтобы эти данные просмотреть в Quickstart, нужно, в рабочей области Node-RED, выполнить двойной щелчок по узлу Watson IoT Quickstart, после чего – щёлкнуть по кнопке со ссылкой на Quickstart (она отмечена цифрой «1» на рисунке выше и расположена правее поля Quickstart id). Если это сделать, в браузере откроется страница Quickstart, а на ней, в реальном времени, будет выводиться график показателей датчика угла поворота. Если покрутить ручку датчика, график, соответственно, будет меняться.

Про облака и датчики: подключение Intel NUC и Genuino 101 к IoT-платформе IBM Watson - 13

Показатели датчика выводятся в Quickstart

Каждая новая порция показателей, полученных с датчика, подключённого к плате Genuino 101 и переданная в облако Watson с помощью NUC, выводится в нижней части экрана вместе со сведениями о времени получения данных. Эти данные должны соответствовать тем, которые можно наблюдать локально, в Intel IoT Gateway Developer Hub. Для того, чтобы проверить, правильно ли передаются эти данные, можно сравнить то, что видно в Quickstart, с тем, что выводится в Developer Hub.

Что дальше?

Основываясь на примере, который мы здесь рассмотрели, можно создавать сложные приложения, предусматривающие использование датчиков, подключённых к плате Genuino 101 и компьютер NUC в качестве инструмента для организации работы с облачной IoT-платформой IBM Watson. Если вы сделали всё, о чём мы тут рассказали, то сейчас вам, наверняка, захочется вывести в Quickstart показания ещё нескольких датчиков, проверить, корректно ли эти сведения передаются в облако.

Наверняка, у вас уже появилась идея собственного приложения для интернета вещей, использующего всё то, о чём мы тут рассказали. Поэтому сейчас самое время зарегистрироваться в IBM Watson и приступить к работе. Удачи!

Автор: Intel

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js