Файлы DLL

Направленный Bluetooth-маяк (iBeacon) и полный мобильный факап.

 Направленный Bluetooth-маяк (iBeacon) и полный мобильный факап.

Инверсия - великая вещь! Изобрети что-то одно, а потом возьми и выверни его наизнанку, получишь не менее интересный результат. Я сначала провернул такое с одной штукой, и только потом увидел, что в ТРИЗ (теория решения изобретательских задач) есть такой прием "инверсия или обратная аналогия". Век живи, век учись.


Но это все теория, а практика ставит всё на свои места...


Маяки Bluetooth Low Energy или iBeacon теперь не что-то из ряда вон. Их можно встретить на вокзалах, в аэропортах, в музеях и в торговых центрах. Как радио-инженер я участвовал в проектировании маяков и, в особенности, антенн к ним. Дело это, по-началу интересное, потом становится скучным. Нечем выделиться, ничего особо нового не изобретешь. И тут меня осенило!



Приведём небольшие фрагменты кода с логикой работы пеленгатора:


Получаем уровни с обеих антенн. Полученные уровни требуется усреднить, а после этого посчитать разницу. На самом деле это не разница сигналов, а их отношение. Но если измерять в децибелах , то будет разница.


Запись уровней в буфер

public boolean handleInfo(WFPacket data) { if (data.apName.equals(ssid) && data.mac.equals(mac)) { int idx = data.antIdx; if (0 <= idx && idx <= 1) { mLevels.get(idx).addLast(data.power); while (mLevels.get(idx).size() > avgCount) { mLevels.get(idx).removeFirst(); } needRecalc = true; print(); } else { Log.d(TAG, "LevelCalculator.HandleInfo() Bad rcvIdx: " + data.antIdx); } } else { return false; } return needRecalc; }


Усреднение и подсчёт разницы

public double getAvg() { if (needRecalc) { for (int idx = 0; idx < 2; idx++) { double sum = 0d; for (Double x: mLevels.get(idx)) { sum += x; } int count = mLevels.get(idx).size(); if (count != 0) { sum /= count; } avgLevels = sum; } avgDiff = Math.pow(10.0, (avgLevels - avgLevels) * 0.1 + 2.5); //Переводим обратно из децибелов needRecalc = false; } return avgDiff; }


Обработка "разницы". Если уровни на обеих антеннах различаются "сильно", то мы с некоторой точностью (плюс минус лапоть) направлены на источник. Чему равно это "сильно" на данный момент определяется методом научного тыка экспериментально.


private void updateLevelDiff(double levelDiff)

private void updateLevelDiff(double levelDiff) { long deltaTime = System.currentTimeMillis() - lastUpdateTime; int progress = (int) Math.floor(100.0 * levelDiff); // Масштабирование для красивого отображения на экране // Сохраняем пеленг if (deltaTime > TIME_PERIOD) { // Мы не хотим сохранять пеленги слишком часто if (progress < mThreshold) { // Если разница в уровнях больше порога, то мы как раз направлены на источник сигнала addBearing(); numUpdates++; } lastUpdateTime = System.currentTimeMillis(); } //Далее идёт обновление GUI }


А теперь ИНВЕРТИРУЕМ!


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


В стандарте Bluetooth версии 5 даже анонсирован похожий способ высокоточного позиционирования - Angle of Departure. До точного описания этого способа они еще не дошли, обещают в следующих версиях.


В рафинированном виде работу можно проиллюстрировать роликами: раз и два .


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



Сам маяк выглядит так:



А вот рендеры внутренностей:



Красавец, не правда ли?! Внутри антенна, как в пеленгаторе WiFi, и Bluetooth SoC nRF51822. Но все было тщетно...


Далее история переходит в факап, который заключается в том, что это работает на смартфоне Nexus 5 и найти другой гаджет, работающий хотя бы так же, оказалось не очень просто. Нет, они есть, Samsung Galaxy S7, Lenovo Phab 2 Pro, и на этом список пока заканчивается. Больше "хороших" гаджетов найти у друзей и знакомых не удалось. Из "плохих" можно отметить Samsung S4 mini.


Конечно, был проверен маяк. Он излучает пакеты на две антенны по очереди с минимальным интервалом. Маленький интервал нужен, чтобы измерения относились к моментам времени, отстоящим друг от друга незначительно. Иначе нельзя будет соотнести их друг с другом.



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


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


А мне сейчас очень жаль, что эта идея не работает.

RuuviTag – Bluetooth маячок датчик с открытым исходным кодом для производителей, разработчиков, IoT компаний, студентов и обычных пользователей.

Bluetooth маячок и The Physical Web – темы, которые активно обсуждают сегодня в мировом ИТ сообществе. В ближайшем будущем нас будут окружать небольшие интеллектуальные сети Bluetooth маячков, которые анализируют окружающую среду и предлагают информацию о распродажах, расписании общественного транспорта или рекламных постерах. На западном рынке Bluetooth маячки уже используют такие гиганты как McDonald’s и розничная сеть Tesco.

Чтобы пользоваться возможностями, которые дают Bluetooth маячки, вам достаточно включить Bluetooth в мобильном устройстве. Не нужно устанавливать специальную программу. Маячок обнаружит в радиусе действия мобильное устройство и отправит сообщение. Оно может содержать информацию о распродаже в магазине, мимо которого вы проходите. Либо маячок может быть с кнопкой, и чтобы получить информацию о расписании на автобусной остановке, достаточно нажать кнопку и на мобильное устройство поступит сообщение с графиком движения.

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

Чтобы использовать маячок RuuviTag в большинстве сценариев, не потребуется программирование. Все настройки несложно произвести в специальном мобильном приложении.

Питается Bluetooth маячок RuuviTag от одной батарейки таблетки, которая может работать до 10 лет, в зависимости от условий экплуатации. Маячок совместим с мобильными устройствами на Android (4.3.2 или выше) и iOS (8.0 и выше). RuuviTag готов к работе с новым стандартом Bluetooth 5, и совместим с аппаратной платформой Arduino.

Кампания по сбору средств на краудфандинговой платформе Kickstarter за 10 часов собрала более 200% от целевой суммы. На момент публикации проект поддержали более 1000 человек суммой свыше $61000. Целевая сумма $10000.

Цена Bluetooth маячка RuuviTag со всеми датчиками – от $25 (1 шт) до $15.98 (50 шт). Планируемый срок поставки октябрь 2016 года.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter .

В 2013 году компания Apple представила iBeacon - технологию передачи Bluetooth-сигнала между компактными маячками и совместимыми устройствами вроде смартфонов, планшетов и ноутбуков. Идею подхватили Google и анонсировали технологию Eddystone. Сейчас маячки применяют в разных отраслях, в том числе и ритейле.

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

Что такое iBeacon

iBeacon - это протокол передачи Bluetooth-сигнала между локационным маячком и любым устройством (смартфоном, планшетом), которое совместимо с Bluetooth Low Energy. Принцип работы iBeacon прост: через равные промежутки времени маячки отправляют Bluetooth-сигнал на устройства, находящиеся в радиусе их действия.

Вот как Bluetooth-маячки выглядят изнутри. Источник: estimote.com

Когда совместимое устройство получает сигнал, приложение активирует заранее определённое действие: приветствует посетителей, предлагает дополнительную информацию о товаре или услугах, рассказывает историю. Маячки используют в музеях, на стадионах, выставочных центрах и магазинах.

На входе в стадион Камп Ноу в Барселоне установлены маячки. С их помощью мобильное приложение футбольного клуба «Барселона» приветствует посетителей, запускает специальные предложения и предлагает купить билеты на тур по музею Камп Ноу.

Стадион Камп Ноу, Барселона

Комплекс BMW World работает как выставочный зал для автомобилей и новых технологий. Вокруг экспонатов расположены маячки, которые предоставляют дополнительную информацию в нужное время и в нужном месте: видеоролики, изображения и текст.

Комплекс BMW World, Мюнхен

Как применять iBeacon в ритейле

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

Маячки в магазине. Источник: estimote.com

Для получения дополнительной информации

Рассказать о товаре. Когда покупатель подходит к товару, в приложении у него на смартфоне отображается дополнительная информация об интересующей его вещи: характеристики, контекстные фотографии, видео или отзывы других клиентов. В отличие от продавца-консультанта, приложение - обезличенный источник информации, которому покупатель будет доверять.

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

Например, клиент выбирает кофемашину. С помощью мобильного приложения и маячков он получает дополнительную информацию о товаре. Модели, которые ему интересны, он откладывает в корзину и уходит. Вечером клиент заходит в интернет-магазин и если его аккаунт подвязан к аккаунту в мобильном приложении, ритейлер напоминает ему о товарах, которые заинтересовали его в оффлайн-магазине. Покупатель увидит, что о нём заботятся, а магазин получает дополнительные продажи.

Отправлять push-уведомления. Благодаря маячкам push-уведомления будут не бездумными сообщениями в пустоту, а полезными и своевременными напоминаниями. Например, когда клиент придёт в магазин, уведомление сообщит, что у него есть бонусы, которые он может потратить прямо сейчас на покупку фотоаппарата или чехла для телефона.

Для быстрой выдачи заказов

Представим, покупатель приходит в магазин или в точку выдачи, чтобы забрать товар, заказанный онлайн. Чтобы оператор выдачи заказов нашёл нужный товар, покупатель должен продиктовать номер заказа или телефона. Это обычно не занимает много времени и усилий оператора. Но не тогда, когда в очереди за выдачей собралось с десяток клиентов.
В таких случаях, маячки ускорят работу оператора: передадут информацию о прибывшем клиенте и его заказе, и покупателю останется лишь оплатить товар в кассе (если не было предоплаты) и забрать его. В результате – сокращаются очереди и разгружаются кассы.

Для помощи продавцам

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

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

Когда маячки не принесут пользы

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

Но создать приложение – лишь часть решения проблемы. Куда сложнее – мотивировать клиентов установить его на смартфон. Однако и установка приложения — только начало трудностей, ведь клиенту для взаимодействия с маячками нужно включить Bluetooth, достать смартфон из кармана, прочитать уведомление и зайти в магазин. Это меняет привычное поведение покупателя и усложняет шоппинг.

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

Вот, как мы реализовали это на базе . На товары клеятся маячки-стикеры от Estimote, которые оснащены датчиками движения и тепла. Рядом с товарами стоит iPad с предустановленным . Когда покупатель взаимодействует с товаром, срабатывает датчик движения, и маячок-стикер передает сигнал на планшет или ближайший дисплей. На экране отображается информация: характеристики товара, сопутствующие аксессуары или услуги, отзывы покупателей, видео-обзоры и контекстные изображения. Покупатель ведёт себя как обычно, но вместе с тем получает больше информации об интересующем его товаре.

Вот как Bluetooth-маячки работают в нашем «Интерактивном промоутере»

Кейсы использования могут быть разными, потому тип контекстной информации и контент вы задаёте самостоятельно в панели администратора Facelet. Продаёте платья - покажите характеристики платья, получили новую коллекцию - представьте её с помощью интерактивной презентации или промо-видео. Вы не меняете поведение клиента – лишь расширяете его опыт шоппинга, предоставляя полезную информацию в удобном формате.

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

Маячки могут оптимизировать работу продавцов-консультантов и – если у вас в магазине есть готовая технологическая база – улучшить презентацию товара.

Bluetooth-маячки в магазинах - способ выделиться и повысить качество обслуживания. Для брендов применение iBeacon в розничной торговле - это возможность по-новому представить товары, для омниканальных ритейлеров - сделать торговую точку интерактивной.

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

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

Привычка следить за своим телефоном медленно входит в разряд бессознательных рефлексов. И если с поиском iPhone может хотя бы частично помочь встроенный сервис Find My iPhone , то как быть с какими-нибудь мелкими вещами? Например, ключи. Забыть их где-нибудь в машине или просто за диваном в собственной квартире можно проще простого. И в таких случаях поиски затянутся надолго. Если, конечно, вы заранее не озаботились и не надели на них датчик StickNFind .

StickNFind - отдушина и спасение для забывчивых людей, постоянно теряющих полезную бытовую «мелочёвку». Если говорить кратко, это маленький пластиковый датчик, общающийся с внешним миром по протоколу Bluetooth. Вы цепляете его на какой-нибудь предмет, после чего можете найти местоположение датчика по простому «локатору» в фирменном приложении для iPhone.

Комплект у StickNFind из самых спартанских с учетом размера коробки. В коробке лежат два датчика, два пластиковых крепления для карабинов и ключниц, а также одна довольно-таки подозрительная инструкция. Оформлена она скупо и на английском языке. Ну ничего, мы и сами разобрались за пару минут, а теперь и читателям поможем.

Сходство формы с пятирублёвой монетой просто-таки поразительное. Датчик выпускается в шести цветах, поэтому не вижу смысла обращать внимание на невзрачность чёрной версии. Зато никак нельзя оставить в стороне прозрачную «прослойку», прямо как в какой-нибудь «печеньке» с начинкой. Именно там спрятан светодиод, о котором я расскажу чуть позже. Всё это весит всего четыре с половиной грамма .

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

StickNFind прикрепляется к любым вещам с помощью клейкой плёнки, размещённой на нижней стороне. Плёнка эта, без преувеличения, убийственная, и если вы по-глупости познакомили её с задней панелью iPhone 5, готовьтесь ломать ногти. С тканями ситуация полегче, да и со временем поразительная «приставучесть» этого слоя обязательно ослабнет.

Для настройки и поиска брелков StickNFind скачивается одноимённое фирменное приложение для iOS [App Store ] или Android. Чтобы инициировать первичную настройку, нужно активировать датчик - постучать пальцами по нему и дождаться пронзительного писка встроенного динамика. Да-да, в этой маленькой штучке нашлось место и для «пищалки».

Активированные датчики почти сразу же появляются в приложении. Каждому из них можно (и обязательно нужно ) присвоить уникальное имя. Например, «Ключи» для датчика, который вы повесили на ключницу. К слову, делается это очень просто: вешаете «метку» на небольшую пластинку из комплекта поставки, а затем продеваете эту пластинку в кольцо вместе с ключами.

Процесс синхронизации полностью автоматизирован. В некоторых случаях приложение сразу же начнёт обновлять прошивку датчиков, потребовав от вас поднести смартфон как можно ближе к метке. По окончанию регистрации и синхронизации, вы можете уверенно наклеить датчики туда, куда хотите - и забыть о них. Производитель обещает, что StickNFind будут работать как минимум в течение года без замены батареи. А батарея там из разряда «часовой», то бишь заменить её можно самостоятельно.

Поиск метки осуществляется по «локатору» в программе для iPhone. Чем дальше вы отходите со смартфоном от метки, тем дальше она отображается на воображаемом «радаре». Дальность прямого обнаружения составляет примерно 30 метров. Поиск напоминает игру в «холодно-горячо»: вы можете видеть только относительное расстояние между вами и меткой, но не её направление или четко определённое местоположение. На словах звучит трудно. Но на самом деле вы просто поворачиваетесь в правильную сторону и идете вперёд, сверяясь с данными в приложении.

Помимо этого, датчик и мобильное приложение взаимодействуют ещё несколькими любопытными способами. Например, вы можете настроить функцию «Поводок»: как только вы отойдете от датчика на слишком большое расстояние, на iPhone придет соответствующее Push-уведомление, а сама «метка» начнет проигрывать звуковой сигнал. И мигать светодиодом, конечно. Ещё можно удаленно активировать звуковой сигнал датчика и/или световую индикацию.

Одной функции «поводка» достаточно, чтобы порекомендовать датчики StickNFind каждому . То есть вообще всем, включая и вас. Или вы ничего никогда не теряли? Можно использовать сразу несколько датчиков одновременно, следя за каждой архиважной вещью в доме. И теперь утренние сборы спросонья не будут стопориться на поиске ключа от квартиры. А бородатый таксист не уедет в кабак с вашим кошельком, оставленным после хорошего вечера в клубе. Полезная вещь!

"Так. Ключи где? Ага, в кармане. Ноутбук? Да, на месте. Телефон! Ага, один здесь, другой здесь. Ключи! Точно, где ключи? Зарядка для ноутбука! Да где же она?" - примерно так строится мой диалог с самим собой при выходе из дома. Чтобы не потерять различные мелочи и не расстраиваться по этому поводу, вам может пригодиться устройство с типично американским названием .

Устройство представляет собой Bluetooth-маячок с липкой задней поверхностью. Размер пластикового корпуса схож с пятирублевой монетой, однако толщина выше. В маячке, которых в зависимости от комплекта может быть от 2 до 10 (комплекты по 2, 4, 6 и 10 штук), имеется все необходимое для дальнейшего обнаружения — писклявый динамик, не услышать который невозможно, светодиод, клейкая поверхность снаружи и модуль Bluetooth внутри.

Характеристики Stick-n-Find:

Диаметр: 24 мм
Толщина: 4 мм
Вес: 4,5 гр.
Связь: Bluetooth 4.0 Low Energy
Радиус действия: порядка 30 метров в зависимости от окружения
Батарея: CR2016, срок службы до 1 года

Для того, чтобы начать пользоваться Stick-n-Find, необходимо загрузить одноименное приложение из или Google Play, в котором можно производить все необходимые поисковые мероприятия и обновлять программное обеспечение маячков. Серьезно, при первом соединении маячка и смартфона произошел апдейт этого гаджета.

В приложении присутствует радар — на нем будут отображаться все находящиеся вокруг Bluetooth-маячки, принадлежащие вам. Например, вы потеряли в радиусе порядке 30 метров пульт от телевизора (согласитесь, такое случается очень часто). Достаточно просто открыть приложение на смартфоне и взглянуть на радар, чтобы оценить расстояние, на котором находится предмет. Нажатием кнопки «Вызвать его» можно заставить маячок пищать дурным голосом и сверкать светодиодом для того, чтобы искомое нашлось.

Вообще, говоря о приложении Stick-n-Find, нельзя не отметить тот факт, что локализовано оно весьма выборочно. На одном экране могут встречаться пункты как на английском, так и на русском языке. Конечно, на функциональности приложения и маячка это не сказывается, но визуально такая мешанина выглядит далеко не лучшим образом.

В комплекте к маячкам также поставляются пластиковые брелоки, которые можно крепить к ключам или домашним животным. Каждый маячок можно назвать, чтобы затем проще было понять, что и где искать. С помощью липкой поверхности вы можете прилепить маячок либо непосредственно на предмет, которому свойственно теряться, либо на пластиковый брелок, который затем повесить на ключи, кота или что-то еще.

В Bluetooth-маячке Stick-n-Find используется стандартный часовой элемент питания — батарея типа CR2016. В обычном режиме работы такая батарея продержится порядка 12 месяцев, ее заряд отображается в приложении. Там же можно узнать температуру среды, окружающей Bluetooth-маячок — эта информация также выводится в приложении на экране с радаром.

Также можно активировать весьма полезный в быту режим «Поводка». В случае, если вы удаляетесь от объекта с Bluetooth-маячком, последний при потере связи начнем пищать. Например, если вы забыли кошелек на столе в кафе, то на выходе из этого заведения телефон с приложением Stick-n-Find зазвенит, уведомляя вас о том, что вы вот-вот потеряете важную вещь. К тому же имеется режим «Найти меня». Он окажется полезным в том случае, если маяк вышел из радиуса действия. Вы получите уведомление о том, что он снова доступен.