Маячки Eddystone для контроля расхода электроэнергии

В июле 2016, разбирая статьи на «Хабрахабре», я узнал конкурсе Device Lab от Google, в котором предлагалось попробовать в работе BLE-маячки (beacons) c технологией Eddystone и описать в статье свое решение на их базе.

ic_launcher

Про BLE-маячки мы уже знали из обсуждений на форуме разработчиков FireMonkey, портала разработчиков Google, из видео блога Максима Кульгина , и уже начали придумывать, как можно использовать эту технологию в своих мобильных приложениях.

BLE устройства (Bluetooth Low Energy, англ.) — это устройства, которые имеют крайне низкий уровень потребления энергии при передаче данных по каналу Bluetooth. Маячки тоже относятся к BLE-устройствам, созданные для общения разработчиков ПО с объектами реального мира. Предлагаю прочитать про маячки статью на Хабрахабре.
А я хочу рассказать о нашем опыте использования маячков.

Наша компания «СофтИнтерГрупп» создает в том числе и мобильные приложения, в нашем портфолио есть Android приложение «Контроль приборов учета электроэнергии» , разработанное для АО «Орелоблэнерго» . Приложение создавалось для работы контролёров, которые ежедневно получают с сервера предприятия задания, обходить определенные адреса абонентов, проверять целостность счетчиков электроэнергии, записывать показания в приложение и передавать результаты работы на сервер предприятия.

У нас появилась идея предложить заказчику доработку приложения, включив в него взаимодействие с маячками, упростить для контролёров обнаружение приборов учета электроэнергии, облегчить поиск в списке счетчиков, получать гео-координаты ввода показаний устройств там, где нет сигнала спутников (в ангарах, подвалах, помещениях).

Для этих целей было решено принять участие в конкурсе и протестировать работу маячков.

 

Получили маячки.

После регистрации на сайте конкурса, я подал заявку на получение маячков, рассказал о нашем мобильном приложении и планах применения технологии Eddystone. Хотелось развернуть сеть маячков, поэтому в заявке я запросил протестировать сразу тридцать маячков. В ответ сотрудник Google сообщил мне, что можно получить только два.

— Ну что же, два так два. — ответил я, и уже на следующий поехал в офис Google на Балчуге, где на ресепшене меня ждали обещанные маячки.

 

Как тестировали?

Полученные маячки называются iBKS 105А.

eddystone_beacons

Чтобы проверить их работоспособность на своем HTC One с Android 6.0 было достаточно включить на смартфоне Bluetooth, а из маячка выдернуть пластиковую перемычку, которая размыкает контакт с батарейкой.

Через пару секунд на смартфоне в шторке уведомлений высветилась нотификация с иконкой “Physical Web” и заголовком сайта “Github”.

eddy_02

Щелкнув по этой нотификации, в Хроме открылась страница “Eddystone” на Github с описанием технологии и API Eddystone. Я уже знал, что мы перешли по ссылке, которая была изначально зашита в маячке.

Для программирования маячка было установлено из Google Play приложение “iBKS Config Tool”.

eddy_03

Это приложение позволяет полностью переконфигурировать маячки, задать уникальные идентификаторы и данные, которые рассылает маячок, изменить технологию рассылки пакетов, например, заменить технологию Eddystone на iBeacon.

eddy_04

 

Мобильное приложение для работы с Eddystone.

Разработку мобильных приложений мы осуществляем в среде Embarcadero RAD Studio. Это очень удобно, потому что все необходимые компоненты и библиотеки для работы с маячками уже входят в поставку среды разработки, создание приложения для отладки маячков заняло 15 минут:

  1. кинул на форму кнопку «Включить Bluetooth», компонент “Beacon” и текстовое поле для отладочной информации;

eddy_05

  1. включил пару разрешений Android для работы с Bluetooth;

eddy_06

  1. связал логику событий компонентов;

eddy_07

  1. нажал кнопку «Запустить проект», проект собрался и запустился на подключенном к компьютеру устройстве.

После запуска приложения «полилась» информация с маячков: ссылки, идентификаторы, вход и выход из настроенных зон, расстояние до датчиков, уровень заряда аккумуляторов, температура на борту датчика.

eddy_08

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

 eddy_09

 

Какую технологию маячков применять Eddystone или iBeacon?

Особенности работы нашего приложения в том, что разработано для работы на планшетах без интернета. Данные в него попадают с датчиков GPS и вводятся стилусами контролёров. Поэтому использование рекламной ссылки Eddystone-URL для нас было не актуально, ведь по этой ссылки перейти в интернет сотрудники не смогут. Однако смогут перейти все те, кто интернет имеют, поймают на своих смартфонах сигнал маячков и из любопытства захотят открыть ссылку. Поэтому в качестве URL зашили в маячки ссылку на сайт «Орёлоблэнерго».

Интересная особенность. В процессе тестирования выяснилось, что Physical Web показывает рекламные ссылки в области уведомлений (в шторке) только, когда ссылка указывает на защищенный SSL сертификатом сайт, то есть адрес сайта начинается с HTTPS. Разработчики Eddystone объясняют, зачем это сделано. Переадресация через Google URL Shortener вопрос не решает, нужно, чтобы конечный ресурс открывался по протоколу HTTPS. Сайт заказчика работает без SSL, поэтому Physical Web в шторку его не выводит. Ну и ладно, сейчас у нас другая задача.

Для нашей задачи мы задействовали параметр маячка Eddystone-UID. Нам был нужен уникальный идентификатор маячка, который привязан к идентификаторам в базе данных счетчиков предприятия, и к которому привязаны гео-координаты местоположения прибора учета. К приложению разработали сервис, который опрашивает маячки. Если обнаружен маячок Eddystone, со ссылкой на сайт «ОрёлОблЭнерго», информация об этом появится в области уведомления планшета или смартфона.

eddy_10

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

eddy_11

Если найден один маячок, сразу открывается форма для просмотра информации о приборе учета и ввода показаний счетчика.

eddy_12

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

Таким образом маячки Eddystone заступили на службу контроля расхода электроэнергии.

А мы уже приступили к проектированию системы позиционирования и управления сельскохозяйственными роботами на основе маячков с технологией Eddystone.

 

Директор по развитию ООО «СофтИнтерГрупп»,

Павел Валентов.