SimpleLink™ SensorTag и dweet.io

Элли Хопкинс (Allie Hopkins)

Мы были весьма обрадованы, когда специалисты группы SimpleLink™ SensorTag из Texas Instruments сказали, что хотят добавить поддержку dweet.io в своё приложение для смартфонов (smartphone app). SensorTag — один из самых надёжных и удобных для разработчика «Интернета вещей» (IoT) комплектов проектирования, с которым мы когда-либо имели дело. А с dweet.io макетирование с помощью комплекта SensorTag станет ещё проще.

Что такое dweet.io?

В двух словах, dweet.io — это Twitter для машин. Это платформа, которая позволяет «вещам» в «Интернете вещей» публиковать свои данные, помещая их в облако. В свою очередь, другие «вещи» или приложения могут подписываться на эти данные. Для разработчика dweet — это основанный на протоколе HTTP (RESTful) уровень API для всего подключённого аппаратного обеспечения. С ним вы можете создавать, моделировать и развёртывать свои IoT-приложения на любой платформе. Фактически вы можете в большей степени сосредоточиться на прикладных решениях и пользовательских проблемах и меньше думать об инфраструктуре «Интернета вещей».

Краткий курс обучения

Рассмотрим вкратце, как загрузить ваши данные SensorTag в dweet.io. Первое, что нужно, — это последняя версия приложения SensorTag app. Это приложение использует Bluetooth® Smart для подключения вашего телефона к комплекту SensorTag и работает в качестве интернет-шлюза, отправляя ваши данные в облако (dweet). Убедитесь в том, что SensorTag у вас включён.

Запуск приложения

Убедитесь в том, что в вашем телефоне разрешено использование Bluetooth®. В первом окне вы должны увидеть свой SensorTag в списке устройств Bluetooth® (рисунок 1).

 Приложение SensorTag осуществляет поиск устройств Bluetooth® Smart

Рисунок 1. Приложение SensorTag осуществляет поиск устройств Bluetooth® Smart

Выберите свой SensorTag и «Sensor View» во всплывающем окне. Вы получите окно просмотра сигналов с выходов датчиков своего SensorTag в реальном времени. Эти данные мы хотим отправить в облако. По умолчанию облачная конфигурация приложения настроена на IBM  Bluemix, поэтому нам нужно изменить конфигурацию на dweet.io. Щёлкните на ячейке просмотра облака, чтобы войти в конфигурацию. После этого выберите редактирование. В списке встроенных облачных служб выберите dweet.io (рисунок 2).

 Выбор dweet.io

Рисунок 2. Выбор dweet.io

После этого вы увидите, что вам присвоено «имя вещи» (Thing) для dweet.io. В dweet.io имя вещи — это то же, что имя пользователя в Twitter. Это просто способ однозначно идентифицировать ваше изделие или устройство. Поскольку мы используем бесплатный сервис dweet.io, все ваши данные доступны для просмотра кем угодно. Если вы хотите защитить их, можете купить замок. Ваше имя вещи также не защищено — то есть кто угодно может записывать туда, пока вы его не закроете для доступа. Поэтому я рекомендую вам изменить имя вещи, которое было вам присвоено по умолчанию, на что-нибудь своё (я использовал просто «mysensortag» (рисунок 3)).

 Имя вещи для dweet.io

Рисунок 3. Имя вещи для dweet.io

Теперь щёлкните «save» (сохранить) и вернитесь на страницу просмотра датчиков. Убедитесь в том, что переключатель «загрузить в облако» находится в состоянии «вкл.», и на этом настройка заканчивается. Вы можете наблюдать за тем, что загружается в облако, в реальном времени, если перейдете по ссылке http://dweet.io/follow/ваше-имя-вещи в любом браузере. Вместо «ваше-имя-вещи» нужно подставить имя, которое вы настроили в приложении.

Можно переключать просмотр между наблюдением необработанных значений и визуальным представлением. Как видите, приложение dweet отправляет в облако данные SensorTag, такие как показания вашего акселерометра, скорости, высоты, температуры и ориентации. Иными словами, приложение загружает данные вашего SensorTag в dweet.io для открытого доступа. Любое другое устройство может подписаться и отслеживать поток данных вашего устройства с помощью API-интерфейса dweet.io (или просто набрав вышеуказанный URL, если оно знает ваше имя вещи).

Но это ещё не всё!

В помощь разработчику платформа Bug Labs предоставляет web-приложение визуализации с открытым исходным кодом под названием freeboard™. Панели freeboard — это легко конфигурируемые информационные панели, которые позволяют вам выводить на индикацию сочетание «вещей» и доступных по сети данных в реальном времени. Информационные панели помогают принимать лучшие проектные решения, наблюдать и понимать поведение вещей, обнаруживать тенденции и быстро выявлять проблемы. Многие наши заказчики используют информационную панель в качестве основного приложения конечного пользователя, например, приложения управления парком транспортных средств (определения места, скорости, направления движения), температуры в общественном бассейне и предоставления информации о качестве воздуха.

Начало работы с информационной панелью freeboard

Freeboard открыта для использования всеми, пока вы не решили сделать свои информационные панели приватными. После того как вы зарегистрировались, выберите «Create New» («Создать новую») и присвойте имя своей первой информационной панели freeboard. Информационная панель freeboard имеет три составляющие:

  • Виджеты, которые могут быть с различными типами визуализации
  • Окна, которые являются панелями вывода, содержащими один или несколько виджетов (например, скорость и направление движения)
  • Источники данных, которые являются потоками данных, поступающими на вашу информационную панель для визуализации. Источниками данных могут быть физические устройства, поддерживающие связь друг с другом с помощью dweet, или любые доступные через Интернет API-интерфейсы с поддержкой JSON. Информационная панель Freeboard по умолчанию поддерживает несколько источников данных, или же вы можете добавить свои собственные.

Шаг 1: добавление источника данных

После того как вы создали новую информационную панель, вы увидите чистое поле и панель конфигурации сверху. Прежде чем добавлять окна в свою информационную панель, мы должны добавить хотя бы один источник данных (рисунок 4). Щёлкните «add» («добавить») под источниками данных и выберите в качестве типа dweet.io.

 Выбор dweet.io в качестве типа вашего источника данных

Рисунок 4. Выбор dweet.io в качестве типа вашего источника данных

После этого присвойте имя этому источнику данных dweet.io, например «SensorTag». В качестве имени вещи необходимо использовать то имя, которое приложение использует для вашего SensorTag. В моем случае это mysensortag. Поскольку мы используем открытый уровень dweet.io, никакого значения key (ключа) нет, и можно оставить это поле пустым.

После нажатия «save» («сохранить») вы увидите имя своего источника данных вверху панели. О том, что ваш источник данных работает, вы узнаете по времени его последнего обновления (рисунок 5).

 Ваш SensorTag подключен!

Рисунок 5. Ваш SensorTag подключен!

Шаг 2: добавление панелей и виджетов

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

Чтобы начать, щёлкните «add pane» («добавить окно»). Вы увидите, что окно имеет строку меню сверху. Для добавления виджетов в окно щёлкните «+» и выберите свой тип. Нашим первым виджетом будет датчик температуры (рисунок 6).

 Настройка виджета

Рисунок 6. Настройка виджета

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

Сначала добавьте свой источник данных в первое поле ввода, щёлкнув «+ datasource». После этого вы можете выбирать пары ключевых значений в выпадающем списке. Выберите температуру окружающей среды. Установите в качестве единиц измерения градусы Цельсия — C. Я задал максимальное значение диапазона 50 (рисунок 7).

 Настройка виджета

Рисунок 7. Настройка виджета

И всё! Вы настроили свой первый виджет.

Попробуйте повторить эти действия для других типов виджетов и значений источников данных. Я настроил текстовый виджет с графиком типа «спарклайн» для датчика света (рисунок 8). Эту простую информационную панель я настроил за 2 минуты.

 Виджет с графиком типа «спарклайн»

Рисунок 8. Виджет с графиком типа «спарклайн» для датчика света

Мы в восторге от того, что наши инструменты стали доступны для комплекта SimpleLink SensorTag корпорации Texas Instruments. Мы считаем, dweet.io и панели freeboard помогут вам ускорить разработку, потому что пользоваться ими очень легко. Удачи в макетировании!