Перейти к содержанию
  • Регистрация
Pax Beach

TBeacon. CASE: Использование маячков для контроля расхода электроэнергии

Рекомендуемые сообщения

В рамках конкурса Device Lab от Google подготовил кейс «Маячки Eddystone для контроля расхода электроэнергии».

Ознакомиться можно по ссылке — http://singro.ru/eddystone-beacons-electro-energy/ и в ближайшее время на «Хабрахабре».

eddy_01.jpg

С помощью компонента TBeacon решены задачи:

— поиск ближайших маячков;

— работа с маячками в сервисе Android; 

— фильтрация маячков по технологии Eddystone, ссылкам, идентификаторам.

— привязка маячков к геокоординатам и базе данных приборов учета электроэнергии.

 

Черпайте идеи и задавайте вопросы.

Буду рад ответить на них.

 

UPD:

Наша работа заняла второе место в конкурсе Google Device Lab. Прочитать об этом можно на хабре.

Изменено пользователем Pax Beach

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
11 минут назад, Rusland сказал:

Данные по электроэнергии в программу вносятся вручную?

Конечно. Технология маячков не позволяет обмениваться динамическим данными.

Мы уже думаем над тем, как сделать маячок на базе PI компьютера, с подключением к шине счетчика. Это удорожает счетчик, но будет очень инновационно, в духе времени )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Raspberry Pi + маячок? Это ж цена счетчика огого как вырастет, не?

Изменено пользователем Rusland

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
52 минуты назад, Rusland сказал:

Данные по электроэнергии в программу вносятся вручную?

Из Pi можно сделать маячок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, Pax Beach сказал:

Из Pi можно сделать маячок.

Вот это интересная тема, поделитесь информацией с общественностью когда сделаете )

Изменено пользователем Rusland

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здорово.

Приятно было почитать статью! Особенно, сделанное нашими :-) Придумал, набросал прототип, получил наглядный результат :) 

Молодцы!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Уточните на каких системах у вас работает приложение. Только Анроид или на трёх китах ? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приложение заказывалось специально для Android.

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Из статьи:

Цитата

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

Скажите, пожалуйста, а почему вы выбрали в качестве уникального идентификатора Eddystone-UID, а не уникальный параметр маячка который конфигурируется в iBKS Config Tool и имеет название UUID? Или речь идет о том же параметре?

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это разные параметры.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 09.09.2016 в 21:29, Rusland сказал:

Pax Beach, а можно ли как-то по уровню RSSI определить расстояние до маячка?

Для расчета расстояния мы работаем с событием onCalculateDistances. Параметр var NewDistance: Double.

Выдается некое абстрактное дробное число, которое опытным путем можно перевести в метры.

Сейчас разбираемся с BeaconFence, скачал из GetIt PM, есть желание визуализировать местонахождение маячков, по типу локатора.

 

UPD:

Расчет расстояния получаем по такой формуле: пруфлинк1пруфлинк2пруфлинк3пруфлинк4.

function TfmMain.GetDistance(const ATxPower, ARssi: Integer): Double;
begin
  if ARssi = 0 then
    Result := -1; // Невозможно определить расстояние
  if (ARssi / ATxPower < 1) then
    Result := power(ARssi / ATxPower, 10)
  else
    Result := 0.89976 * power(ARssi / ATxPower, 7.7095) + 0.111;
end;

 

Изменено пользователем Pax Beach

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Похожий контент

    • От Pax Beach
      Коллеги, помогите пожалуйста с поиском решения.

      Есть зал 100x100 метров, 400-600 человек на борту. На их мобильные устройства (смартфоны, планшеты) нужно принимать раз в секунду различный текст ~120 символов в кодировке UTF8. Можно широковещательно, или P2P.
      Сейчас мы выбираем технологию передачи данных в ограниченном помещении большому количеству людей.
      От выбора инфраструктуры, понятно, зависит логика мобильных приложений для этой цели. 
       
      1. Как лучше выстроить инфраструктуру?
      2. Чем лучше рассылать Bluetooth или Wi-Fi (понятно, что GPRS канал в таком скоплении — не вариант, базовая станция не справятся, да и сигнала может не быть)?
      3. Сколько точек доступа и каких лучше разместить?
      4. На какие нюансы обратить внимание?
       
      Сначала я обратился к технологии маячков. Но по многим параметрам маячки здесь не подходят.
      Однако, не исключаю возможность широкого вещания по Bluetooth каналу.
      Так же возможно использовать технологию тетеринг (tethering), раздавать сигнал через смартфоны раскинутые по залу.
      Можно тоже самое организовать, раскидав точки доступа Wi-Fi.
      Преимущества той или иной инфраструктуры для меня не очевидны.
       
      Может кто-то сталкивался с подобными задачами?
      Заранее благодарю за участие в обсуждении.
       
       
       
    • От Pax Beach
      Возникла задача обработки телеметрии BLE маячков для построения пространственной карты.
      За пару дней собрал приложение для «ловли» маячков.
      Производится сбор всей телеметрии с маячков, которую обрабатывает компонент TBeacon. Данные можно передать в виде текста в другое приложение или отправить вложением по почте.
       
      Сейчас приложение Можно скачать в Google Play.
      Для платформ Windows качать здесь (SimpleBeaconTelemetry.exe.zip).
       
      Просьба протестировать у себя на устройствах.
      Код элементарный, если кому-то нужен, могу выложить сюда (SimpleBeaconTelemetry.zip).
       
    • От chaplin.u@gmail.com
      Я хочу создать кросплатформеную апликацию использующую BLE.  Зашёл в примеры и выбрал :
      C:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\CPP\Multi-Device Samples\Device Sensors and Services\Bluetooth\ExploreDevicesLE
      Во- первых Multi-Device оказался только Windows и OSX. И возможности добавить Андроид или ещё чего-то нет. См. картинку.
      Во-вторых после запуска приложения оно ругается на отсутствие DLL.
      Просьба помоь решить проблемы и/или указать на места где есть рабочие примеры и реально Multi-Device.
       


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...