Проектирование Bluetooth Mesh: узлы, фичи и интероперабельность
Bluetooth Low Energy (BLE) стал основой экосистемы IoT, питая умные дома, домашнюю медицину и трекинг активов своим низкопотребляющим профилем. Однако традиционный BLE ограничен связями один-к-одному или один-ко-многим, и его короткий диапазон затрудняет управление всеми устройствами из одной точки — особенно в многокомнатных домах, где сигналы должны пробивать стены и препятствия.
Чего многим IoT-развертываниям нужно — это истинное много-к-многим общение: любой узел должен уметь принимать от нескольких пиров и вещать нескольким пирам. Представьте группу из четырех умных ламп, управляемых несколькими смартфонами, которые также слушают команды «Set» от диммера или датчика присутствия. Традиционный BLE просто не может это обеспечить.
Bluetooth Mesh решает эти вызовы, добавляя меш-маршрутизацию много-к-многим, расширение диапазона и низкое потребление, сохраняя работу от малых батарей. Он быстро стал предпочтительной технологией для домашней автоматизации, потому что каждый узел доступен прямо с телефона или планшета — шлюз не нужен — и потому что его стандартные форматы сообщений (известные как Модели) гарантируют быстрые, интероперабельные развертывания по вендорам.
Эта статья — первая из пяти частей, охватывающих ключевые концепции Bluetooth Mesh. Мы рассмотрим возможности низкого потребления, приватность и безопасность, и как выбрать правильное устройство для вашего умнодомашнего приложения. Сегодня фокус — на фундаментальных элементах, составляющих Bluetooth Mesh сеть.
Архитектура сети Bluetooth Mesh
Bluetooth Mesh сеть строится из узлов, которые могут предоставлять один или несколько из следующих типов фич:
- Relay Node/Feature (Релейный узел/фича)
- Low Power Node (LPN)/Feature (Низкоэнергопотребляющий узел/фича)
- Friend Node/Feature (Дружественный узел/фича)
- Proxy Node/Feature (Прокси-узел/фича)
- Provisioner (Провижинер)
click for larger image
Рисунок 1: Сеть Bluetooth Mesh (Источник: Cypress)
Узлы могут комбинировать несколько фич. Например, узел, отмеченный «R+F», поддерживает и Relay, и Friend, а «R+P» — Relay и Proxy.
Фича Relay
Возможность Relay позволяет узлу пересылать сообщения через рекламный носитель. Устройства от сети, которые могут быть постоянно включены, идеальны для Relay-узлов. Примеры: умные лампы и настенные выключатели. Батарейные узлы обычно опускают Relay, потому что постоянное прослушивание быстро сажает батарею.
Фича Low-Power Node (LPN)
LPN спроектированы для батарейных устройств, которые должны большую часть времени находиться в глубоком сне. Вместо прослушивания каждого пакета, LPN просыпается в определенные интервалы, опрашивает Friend-узел на предмет ожидающих сообщений и возвращается в сон. Эта архитектура идеальна для сенсорных узлов, ценников в ритейле и других низкоэнергетических приложений.
Фича Friend
Friend-узел выступает буфером памяти для одного или нескольких LPN. Он принимает и хранит сообщения, адресованные LPN, и передает их, когда LPN просыпается и опрашивает Friend. Поскольку он должен держать несколько очередей сообщений, Friend-узлу может потребоваться больше RAM, чем другим типам узлов.
Фича Proxy
Фича Proxy раскрывает Mesh-сеть устройствам, не поддерживающим Mesh нативно, таким как смартфоны или Wi-Fi-Mesh шлюзы. Proxy-узел мостит GATT (Generic Attribute Profile BLE) и рекламные носители, позволяя non-Mesh устройствам отправлять и принимать сообщения. Развертывание нескольких Proxy-узлов обеспечивает отказоустойчивость — если один уходит офлайн, сеть остается доступной.
Провизининг
Провизининг — безопасный процесс добавления нового узла в сеть. Непровижненные устройства вещают биконы; провижнирующее устройство — часто смартфон или планшет — детектит бикон, аутентифицирует устройство и устанавливает сетевые ключи узла. Этот шаг предотвращает присоединение неавторизованных устройств к Mesh.
Согласно Bluetooth-спецификации, устройство может быть квалифицировано для Mesh без поддержки каждого типа фич. Многие кремниевые вендоры опускают Friend и Low-Power фичи, что может мешать батарейным приложениям.
Поиск поддерживаемых фич на продукте
Чтобы определить, какие типы узлов/фич поддерживает конкретное устройство, зайдите на сайт Bluetooth SIG, выберите Find a Product и найдите свое устройство. Например, ввод Cypress CYBT‑413034‑02 показывает его Declaration ID (напр., D040142). Клик по ID ведет к списку поддерживаемых слоев, ролей и фич. Ниже скриншоты с модуля Cypress, иллюстрирующие процесс.
click for larger image
Рисунок 2: Роли и версии для конкретного продукта на сайте Bluetooth SIG. В этом случае продукт поддерживает роли Node и Provisioner. (Источник: Cypress)
click for larger image
Рисунок 3: Сайт Bluetooth SIG также показывает возможности узла для конкретного продукта. Здесь продукт поддерживает фичу Relay. (Источник: Cypress)
click for larger image
Рисунок 4: Фичи Friend и Low-Power Node поддерживаются этим продуктом, как показано в возможностях Upper Transport Layer. (Источник: Cypress)
click for larger image
Рисунок 5: Фича Proxy поддерживается, как показано в Proxy capability. (Источник: Cypress)
Пока модуль Cypress демонстрирует все вышеперечисленные фичи, помните, что многие из них опциональны. Для надежной Mesh-сети — особенно с батарейными устройствами — вы захотите интегрировать Relay, Friend, Low-Power и Proxy узлы где возможно.
Для глубокого погружения смотрите видео Learning More about Bluetooth Mesh, чтобы увидеть, как типы узлов и фич работают вместе на практике.
В следующей статье мы рассмотрим, как коммуникация течет через Bluetooth Mesh сеть и исследуем Mesh-модели, обеспечивающие интероперабельность устройств по приложениям.
Встроенный
- Метод контурных токов: процедура, примеры и применение
- Synopsys представляет полный набор HBM3 IP для много-кристаллических систем, повышая пропускную способность до 921 ГБ…
- Bluetooth Mesh: выбор между модулем и дискретным чипом
- STMicroelectronics запускает STM32Cube.AI — внедрение нейросетей в пограничные устройства на STM32
- Cypress запустила двухрежимные Bluetooth 5.0 MCU с Mesh-сетями, связывающие IoT-устройства со смартфонами
- Future Electronics формирует глобальное партнерство с Silvair для ускорения Bluetooth Mesh решений
- Contrinex 2020: облачные сенсоры и Bluetooth light curtains для безопасности
- Silicon Labs представляет предварительно сертифицированные модули Wireless Gecko с поддержкой Bluetooth Mesh, Zigbee, Thread и BLE
- Bluetooth 5.1 SoC: Ультракомпактное, низкозатратное решение для IoT-устройств
- Операторы в C++: типы, примеры и практические программы