https://habr.com/ru/articles/278689/ — iBeacon. Мифы и реальность
https://vc.ru/services/1098953-ispolzovanie-tehnologii-ble-pri-rabote-s-beacon-mayachkom-v-react-native — Использование технологии BLE при работе с beacon-маячком в React Native
https://habr.com/ru/companies/navigine/articles/269735/ — Как работают маяки: Физика технологии iBeacon
https://habr.com/ru/articles/245325/ — Навигация в помещениях с iBeacon и ИНС
https://www.dusuniot.com/ru/blog/angle-of-arrival-bluetooth-gateways/ — Как технология Bluetooth с определением угла прихода (AoA) модернизирует мир
https://moitvivt.ru/ru/journal/pdf?id=821 — Позиционирование в трехмерном пространстве внутри помещений по данным Bluetooth-маяков
Термины:
Magor и Minor — это идентификаторы пространства, например здание и помещение.
RSSI — мощность сигнала (например на расстоянии 1 метр)
PPS — количество пакетов в секунду (сканирование не менее 30 секунд)
Для расчета расстояние между BLE устройством и маячком на основе значения RSSI используем данную формулу:где:
d — расстояние до устройства (маячка),
TX Power — мощность сигнала, измеренная на стандартном расстоянии (обычно 1 метр) от маячка
RSSI — мощность сигнала,
n — коэффициент затухания сигнала (environmental factor), отражающий потери сигнала в среде; типичные значения находятся в диапазоне от 2 до 4.
Эта формула позволяет оценить расстояние между двумя устройствами, используя логарифмическую зависимость изменения мощности сигнала от расстояния.
Значение коэффициента затухания сигнала n зависит от конкретных условий окружающей среды, в которой происходит передача сигнала.
Открытое пространство без препятствий: Значениеnоколо 2. Это условие предполагает минимальное затухание сигнала, когда между устройствами нет значительных препятствий, и сигнал может распространяться прямолинейно.
Внутри помещений с препятствиями: Значениеnможет варьироваться от 2.5 до 3.5 или даже выше. В помещениях сигнал может отражаться от стен, потолков и других объектов, что увеличивает затухание. Более высокие значенияnиспользуются для учета этого дополнительного затухания.
Сложные условия с множеством препятствий: В помещении с высокой плотностью препятствий, таких как склады, производственные помещения или городские условия с множеством отражающих поверхностей, значение n может быть установлено в диапазоне от 4 до 5. Эти условия требуют более высокого коэффициента затухания для компенсации значительных потерь сигнала.
Важно понимать, что определение наиболее подходящего значения n часто требует эмпирического подхода. Это означает проведение тестов в целевой среде для измерения реального распределения сигнала и адаптации коэффициента затухания для достижения наилучшей точности в оценке расстояния.
бесплатная программа, которая переводит текст на различные языки, используя онлайн сервисы. Перевод осуществляется нажатием всего одной комбинации «горячих» клавиш (Ctrl+Q для перевода выделенного текста в всплывающем окне или Ctrl+W для перевода выделенного текста в основном окне программы). Также вы можете открыть главное окно и ввести весь текст вручную.
В программе есть возможность воспроизводить (озвучивать) текст (Ctrl+E для озвучивания выделенного текста).
Примечание! Программа переводит текст с помощью онлайн-переводчиков, поэтому необходимо подключение к Интернету.
Данное приложение предназначено для установки nodejs на устройство под управление ОС Android. В Google Play находим приложение Termux и устанавливаем на телефон (требуется минимальная версия android 5). Запускаем приложение и устанавливаем нужные пакеты, выполнив следующие команды:
Тем кто переходит на PostgreSQL с MySQL, наверное будет удивительно узнать что специального свойства у поля auto_increment в новой СУБД нету. Заменой автоинкрементов в PostgreSQL являются такие штуки как Sequences (счетчики).
Работают они так:
-- Создание счетчика
CREATE SEQUENCE auto_id_users;
-- Создание таблицы
CREATE TABLE users
(
"id" integer NOT NULL DEFAULT nextval('auto_id_users'),
"name" text
)
То есть счетчик взаимодействует с полем id через свойство DEFAULT в которой прописывается nextval от счетчика.
У этого подхода есть ряд несомненных плюсов:
можно очень быстро узнать значение счетчика, без нагрузки к БД и обращению к таблицам. SELECT last_value from auto_id_users;
У счетчика функционал не ограничивается только увеличением на единицу, у него много возможностей.