Коммуникация узлов Bluetooth Mesh: проектирование надежных Mesh-сетей
Строительство надежной Bluetooth Mesh сети начинается с понимания того, как узлы обмениваются данными. Эта статья исследует ключевые механизмы коммуникации, архитектуру узлов и модели, обеспечивающие интероперабельность разных устройств.
Managed Flood — Основа Mesh-сообщений
Bluetooth Mesh доставляет сообщения через стратегию managed flood (управляемое заливание). В отличие от наивного flooding, где каждый узел повторяет каждый пакет, managed flood использует кэшированный список сообщений и поле Time-to-Live (TTL) для избежания дубликатов и ограничения хопов. Каждый узел проверяет входящие пакеты против своего кэша; дубликаты отбрасываются. TTL, задаваемое на каждом сообщении, декрементируется на единицу с каждым релеем и ограничивается 126 хопами, обеспечивая эффективную и предсказуемую доставку.
Publish-Subscribe коммуникация
Чтобы сеть оставалась масштабируемой и устройства не обрабатывали нерелевантный трафик, Bluetooth Mesh использует модель publish-and-subscribe (публикация-подписка). Публикатор шлет сообщения только группам, выразившим интерес, а подписчики получают только адресованные их группе сообщения. Эта модель поддерживает unicast, multicast и broadcast, позволяя тонкое управление в сценариях вроде комнатного освещения.
Рисунок 1 демонстрирует реальную реализацию с наборами оценки Cypress CYBT‑213043‑MESH. Выключатели выступают публикующими, а лампы — подписчиками групп Dining и Kitchen. Когда Switch 1 публикует в группу Dining, отвечают первые три лампы. Switch 2, публикуя в Kitchen, управляет только третьей лампой.
Рисунок 1. Пример Publish и Subscribe в Bluetooth Mesh для подключенного освещения. (Источник: Cypress)
Архитектура узла — Элементы, адреса и модели
Каждый Mesh-узел содержит один или несколько Элементов, функциональных строительных блоков, выставляющих возможности устройства. Каждый Элемент получает уникальный unicast-адрес, позволяя независимое управление. Типичная лампа имеет один Элемент для on/off и яркости. Регулируемая лампа с датчиком присутствия будет иметь два Элемента: освещение и сенсинг.
Рисунок 2 иллюстрирует узлы с одним и двумя Элементами, подсвечивая адресное пространство и отношения между Элементами и Моделями.
Рисунок 2. Узлы с одним и двумя Элементами. (Источник: Cypress)
Модели — Язык Mesh
Функциональность определяется Моделями, аналогом Bluetooth-сервисов. Модели делятся на три категории:
- Server Models выставляют состояние, которое может быть прочитано или изменено Клиентами (напр., On/Off Server, Light Lightness Server).
- Client Models посылают запросы или команды Серверам (напр., On/Off Client, используемый выключателями).
- Control Models комбинируют логику Client и Server с прикладным кодом для действий над сообщениями.
Server Models могут управлять множеством состояний через один или несколько Элементов. Например, регулируемая лампа может хостить и On/Off Server, и Light Lightness Server. Client Models позволяют устройствам вроде выключателей или диммеров запрашивать или менять эти состояния.
Модели могут расширять друг друга. Light Lightness Server расширяет On/Off и Generic Level Servers, позволяя одной команде On/Off влиять на любой тип лампы независимо от базовой модели.
Состояния — Данные за каждым Элементом
Каждый Элемент хранит Состояния, определенные Bluetooth SIG. Состояния держат значения (напр., ON/OFF) и поведения. Например, On/Off Server контроллера полива выставляет Generic OnOff состояние, которое может манипулироваться любым Клиентом, понимающим это состояние.
Следующие шаги — Приватность и безопасность
В следующей статье мы погрузимся в надежные механизмы приватности и безопасности Bluetooth Mesh, критичные для защиты вашей сети от перехвата и неавторизованного управления.
Для глубоких инсайтов смотрите наше видео Learning More about Bluetooth Mesh и начинайте проектировать свое mesh-приложение.
Встроенный
- Реагирует ли вольфрамная проволочная сетка с воздухом? Технический обзор
- Bluetooth Mesh: выбор между модулем и дискретным чипом
- STMicroelectronics запускает STM32Cube.AI — внедрение нейросетей в пограничные устройства на STM32
- Cypress запустила двухрежимные Bluetooth 5.0 MCU с Mesh-сетями, связывающие IoT-устройства со смартфонами
- ON Semiconductor запускает солнечную RSL10 Multi-Sensor платформу для действительно безбатарейного IoT
- Future Electronics формирует глобальное партнерство с Silvair для ускорения Bluetooth Mesh решений
- Silicon Labs представляет предварительно сертифицированные модули Wireless Gecko с поддержкой Bluetooth Mesh, Zigbee, Thread и BLE
- Почему Bluetooth Mesh — гейм-чейнджер для Industrial IoT, по мнению исполнительного Bluetooth SIG
- Bluetooth SIG расширяет mesh-сети для масштабируемого IoT и промышленных приложений
- Проектирование с проводящими полиуретанами: повышение производительности и безопасности