Беспроводные технологии для микроконтроллеров: сравнение
Какую беспроводную технологию поставить в устройство на микроконтроллере: Wi-Fi, Bluetooth LE, Zigbee или Thread, собственный протокол на 2,4 ГГц, субгигагерцовый FSK или LoRa. Сравниваем по даташитам конкретных микросхем — ESP32-C3, ESP32-H2, nRF24L01+, CC1101 и SX1276 — частоту, скорость, чувствительность, мощность и ток.
Обновлено Редакция GAW
Беспроводной интерфейс в устройстве на микроконтроллере — это всегда компромисс трёх величин: скорости, дальности и потребления. Быстрое радио занимает широкую полосу и требует сильного сигнала; дальнее — передаёт медленно и долго держит передатчик включённым; экономичное — спит и выходит в эфир короткими пакетами. Ниже — основные технологии, которые встречаются в любительских и промышленных устройствах, с числами из даташитов конкретных микросхем.
Коротко
- Wi-Fi
- 2412–2484 МГц, сотни мА в передаче
- Bluetooth LE
- 2402–2480 МГц, до −105 дБм на 125 кбит/с
- 802.15.4
- Zigbee, Thread: 250 кбит/с, 16 каналов
- nRF24L01+
- до 2 Мбит/с, 0 дБм, свой протокол
- 433/868 МГц
- FSK и OOK, CC1101 до −116 дБм
- LoRa
- до −148 дБм ценой скорости
Сравнение по даташитам
В таблице — по одной типичной микросхеме на технологию. Числа типовые (typ) при условиях производителя; у Wi-Fi ток — пиковый при 3,3 В.
| Технология | Микросхема | Частоты | Скорость | Мощность передатчика | Чувствительность | Ток приём / передача |
|---|---|---|---|---|---|---|
| Wi-Fi 802.11b/g/n | ESP32-C3 | 2412–2484 МГц | до 150 Мбит/с, каналы 20 и 40 МГц | до 21 дБм (802.11b) | −98,4 дБм (11b, 1 Мбит/с); −74,8 дБм (11n MCS7) | 84 / 335 мА (11b, 21 дБм) |
| Bluetooth LE 5 | ESP32-C3 | 2402–2480 МГц | 125, 500 кбит/с, 1 и 2 Мбит/с | от −24 до 20 дБм | −105 дБм (125 кбит/с), −97 дБм (1 Мбит/с), PER 30,8 % | — |
| IEEE 802.15.4 | ESP32-H2 | 2405–2480 МГц | 250 кбит/с | от −24 до 20 дБм | −102,5 дБм, PER 1 % | — |
| Свой протокол 2,4 ГГц | nRF24L01+ | 2400–2525 МГц | 250 кбит/с, 1 и 2 Мбит/с | до 0 дБм | −94 / −85 / −82 дБм (BER 0,1 %) | 13,5 мА (2 Мбит/с) / 11,3 мА (0 дБм) |
| FSK, OOK, ASK до 1 ГГц | CC1101 | 300–348, 387–464, 779–928 МГц | 0,6–600 кбит/с | до +12 дБм | −116 дБм (433 МГц, 0,6 кБод, PER 1 %) | 15–16 мА / 29,2 мА (433 МГц, +10 дБм) |
| LoRa (и FSK, OOK) | SX1276 | 137–1020 МГц | 0,018–37,5 кбит/с | до +20 дБм | от −111 до −148 дБм | 9,9–12,6 мА / 120 мА (+20 дБм) |
Скорость Wi-Fi 150 Мбит/с — наибольшая скорость передачи в эфире по разд. 4.3.2.1 даташита ESP32-C3, а не скорость полезных данных. Токи приёма Bluetooth LE и 802.15.4 в таблицах радиочастотных характеристик ESP32-C3 и ESP32-H2 не приведены — их ищите в разделах о потреблении.
Как читать чувствительность и почему она падает с ростом скорости — в словарной статье «Чувствительность приёмника». Как из мощности и чувствительности получить дальность — в статье «Бюджет радиолинии».
Wi-Fi
Wi-Fi нужен, когда устройство должно само ходить в локальную сеть или интернет: веб-интерфейс, MQTT, обновления по воздуху. На микроконтроллерах его чаще всего дают чипы Espressif. Цена — потребление: у ESP32-C3 пиковый ток передачи 802.11b на 21 дБм — 335 мА, приёма — 84 мА (табл. 5-7), поэтому питание должно выдерживать броски, а батарейное устройство просыпается, быстро передаёт и снова засыпает. Чувствительность сильно зависит от скорости: от −98,4 дБм на 1 Мбит/с до −74,8 дБм на 802.11n MCS7 (табл. 6-4) — разница почти 24 дБ (наш подсчёт).
Bluetooth LE
Bluetooth Low Energy рассчитан на короткие сеансы связи со смартфоном, планшетом или шлюзом: датчики, браслеты, метки, настройка устройства с телефона. ESP32-C3 поддерживает четыре скорости Bluetooth LE — 2 и 1 Мбит/с, 500 и 125 кбит/с (табл. 6-8–6-15), и медленные нужны ради дальности: чувствительность на 125 кбит/с −105 дБм против −97 дБм на 1 Мбит/с (табл. 6-12 и 6-14) — наш вывод: 8 дБ разницы в свободном пространстве дают примерно в 2,5 раза большую дальность.
IEEE 802.15.4: Zigbee и Thread
Радиостандарт IEEE 802.15.4 на 2,4 ГГц — 16 каналов с шагом 5 МГц, скорость 250 кбит/с. Поверх него работают сетевые протоколы Zigbee и Thread, которые строят ячеистую (mesh) сеть: пакет доходит до цели через соседние узлы. Semtech в AN1200.22 (разд. 5.1.2) описывает плюсы и минусы такой топологии: сеть сама восстанавливается при потере узла, но сложнее звезды и нагружает узлы-ретрансляторы трафиком, поэтому ретрансляторами обычно делают узлы, которым не нужно экономить энергию. Это основа умного дома: выключатели, датчики, замки. ESP32-H2 на этом радио даёт −102,5 дБм при PER 1 % и заявляет поддержку Thread 1.4, Zigbee 3.0 и Matter.
Собственный протокол на 2,4 ГГц: nRF24L01+
nRF24L01+ не совместим ни с Wi-Fi, ни с Bluetooth: это простой трансивер GFSK с протоколом Enhanced ShockBurst — адрес, CRC, подтверждение и повтор пакета выполняет сама микросхема. Он дешёв и быстр, но мощность всего 0 дБм, поэтому дальность ограничена; в модулях с усилителем и внешней антенной её поднимают, а параметры такого модуля берут из его описания.
Субгигагерцовое радио: 433 и 868 МГц
Ниже 1 ГГц волна длиннее, и при тех же мощности, чувствительности и усилении антенн дальность в прямой видимости больше: TI в AN058 (разд. 3.3) отмечает, что снижение частоты вдвое удваивает дальность, — но и антенна вдвое длиннее. Трансиверы вроде CC1101 работают модуляциями FSK, GFSK, MSK и OOK/ASK со скоростью от сотен бит до сотен килобит в секунду и чувствительностью до −116 дБм на низкой скорости. Здесь же самые дешёвые модули — передатчики и приёмники OOK без микроконтроллерного интерфейса, на которых делают пульты и метеостанции. Разбор — в статье «Радиомодули 433 и 868 МГц».
LoRa
LoRa — модуляция Semtech с расширением спектра на основе линейно-частотно-модулированных импульсов (CSS): скорость обменивается на чувствительность в постоянной полосе (AN1200.22, разд. 1 и 4). SX1276 принимает сигнал до −148 дБм и передаёт до +20 дБм — Semtech называет это бюджетом до 168 дБ. Расплата — скорость от десятков бит в секунду и длинные пакеты: при SF12 пакет в 20 байт занимает в эфире больше секунды. Формулы и примеры — в статье «LoRa: SF, полоса и время в эфире». Микроконтроллеры со встроенным LoRa-радио — например, STM32WL.
Сотовая связь
Когда нужен выход в сеть из любой точки без своего шлюза, используют сотовые модемы: GSM, NB-IoT, LTE-M. Они работают в лицензированных полосах операторов и требуют SIM-карты и тарифа, а модем управляется AT-командами по UART. Им будет посвящена отдельная статья раздела.
Как выбрать
- Куда уходят данные. Смартфон рядом — Bluetooth LE. Роутер в доме и нужен интернет — Wi-Fi. Своя сеть из многих узлов — 802.15.4 или LoRa с шлюзом. Пара «пульт — приёмник» — nRF24L01+ или субгигагерцовый трансивер.
- Сколько данных и как часто. Сотни килобит в секунду и выше — 2,4 ГГц. Несколько байт раз в минуту — подойдёт и LoRa.
- Дальность и препятствия. Посчитайте бюджет линии с запасом: ниже 1 ГГц и с LoRa он больше, но антенна длиннее.
- Питание. Сравните ток передачи и приёма с ёмкостью батареи и долей времени в эфире.
- Нормы. Частота, мощность и доля времени в эфире ограничены правилами страны. Для оборудования до 1 ГГц TI в даташите CC1101 называет европейский стандарт EN 300 220; в России условия использования полос для устройств малого радиуса действия устанавливают решения ГКРЧ — проверьте актуальное решение до выбора частоты и мощности.
Частые ошибки
- Сравнивать модули по рекламной дальности. Дальность зависит от обеих антенн, высоты подвеса и препятствий; сравнивайте мощность, чувствительность при одинаковой скорости и антенну.
- Не учитывать ток передачи. Wi-Fi в передаче потребляет сотни миллиампер, LoRa на +20 дБм — 120 мА: батарея и стабилизатор должны выдерживать такие импульсы.
- Путать модуль и микросхему. В модуле с усилителем мощности и малошумящим усилителем параметры другие, чем у чипа; берите их из документации на модуль.
- Забывать про антенну. Плохо согласованная или закрытая металлом антенна съедает больше децибел, чем дают разница в чувствительности между микросхемами. Об этом — статья «Антенны».
Частые вопросы
Чем Bluetooth LE отличается от Wi-Fi для датчика?
Потреблением и назначением. Wi-Fi даёт прямой выход в локальную сеть и интернет, но у ESP32-C3 пиковый ток передачи 802.11b — 335 мА, приёма — 84 мА. Bluetooth LE рассчитан на короткие сеансы со смартфоном или шлюзом и позволяет устройству большую часть времени спать. Для датчика на батарейке, который раз в минуту передаёт несколько байт, обычно выбирают BLE, 802.15.4 или субгигагерцовое радио, а Wi-Fi — для устройств с питанием от сети.
Что дальше бьёт: nRF24L01+ или LoRa?
По даташитам разница в бюджете линии огромная. У nRF24L01+ мощность до 0 дБм и чувствительность −94 дБм на 250 кбит/с (при BER 0,1 %) — бюджет 94 дБ. У SX1276 мощность до +20 дБм и чувствительность до −148 дБм — Semtech указывает до 168 дБ. Наш расчёт: 74 дБ разницы в свободном пространстве — это дальность больше в тысячи раз, но на практике ограничат рельеф, препятствия и нормы на мощность. Зато nRF24L01+ передаёт до 2 Мбит/с, а LoRa — десятки бит или единицы килобит в секунду.
Можно ли сравнивать чувствительность разных микросхем напрямую?
Только с поправкой на условия. Чувствительность указывают при заданной доле ошибок: у ESP32-C3 для Bluetooth LE — при PER 30,8 %, у ESP32-H2 для 802.15.4 и у CC1101 — при PER 1 %, у SX1276 в режиме LoRa — при PER 1 %, у nRF24L01+ — при доле ошибочных бит (BER) 0,1 %. Кроме того, она сильно зависит от скорости: чем медленнее передача, тем слабее сигнал, который приёмник ещё разберёт.
Zigbee, Thread и Matter — это разное радио?
Zigbee и Thread работают поверх одного радиостандарта — IEEE 802.15.4 на 2,4 ГГц: у ESP32-H2 это 16 каналов с шагом 5 МГц от 2405 до 2480 МГц и скорость 250 кбит/с. Различаются они сетевыми уровнями. Matter — прикладной стандарт умного дома; ESP32-H2 заявляет поддержку Thread 1.4, Zigbee 3.0 и Matter. Подробнее о радиостандарте — в словарной статье IEEE 802.15.4.
Источники
- Espressif Systems. ESP32-C3 Series Datasheet, version 2.4 — разд. 4.3.2.1: 802.11b/g/n, каналы 20 и 40 МГц, до 150 Мбит/с; табл. 5-7: пиковый ток Wi-Fi при 3,3 В, 25 °C — передача 802.11b 1 Мбит/с при 21 дБм 335 мА, 802.11n MCS7 при 18,5 дБм 276 мА, приём 84 мА; табл. 6-1: каналы Wi-Fi 2412–2484 МГц; табл. 6-2: мощность 21 дБм (802.11b), 18,5 дБм (802.11n MCS7); табл. 6-4: чувствительность 802.11b 1 Мбит/с −98,4 дБм, 802.11n HT20 MCS7 −74,8 дБм; табл. 6-7: Bluetooth LE 2402–2480 МГц; табл. 6-8: мощность Bluetooth LE от −24 до 20 дБм; табл. 6-12–6-15: чувствительность при PER 30,8 % — 1 Мбит/с −97, 2 Мбит/с −93, 500 кбит/с −100, 125 кбит/с −105 дБм
- Espressif Systems. ESP32-H2 Series Datasheet, version 1.3 — IEEE 802.15.4-2015, заявлена поддержка Thread 1.4, Zigbee 3.0 и Matter; табл. 6-10: 2405–2480 МГц, 16 каналов с шагом 5 МГц (каналы 11–26); табл. 6-11: мощность от −24 до 20 дБм; табл. 6-12: 250 кбит/с, чувствительность −102,5 дБм при PER 1 %
- Nordic Semiconductor. nRF24L01+ Product Specification v1.0 (September 2008) — архивная копия официального файла; 2400–2525 МГц, 250 кбит/с, 1 и 2 Мбит/с, мощность до 0 дБм, чувствительность −94/−85/−82 дБм при BER 0,1 % (табл. 7), ток передачи 11,3 мА при 0 дБм, приёма 13,5 мА при 2 Мбит/с
- Texas Instruments. CC1101 Low-Power Sub-1 GHz RF Transceiver (SWRS061I, 2013) — с. 1–2: полосы 300–348, 387–464 и 779–928 МГц, 0,6–600 кбит/с, 2-FSK, 4-FSK, GFSK, MSK, OOK и ASK, мощность до +12 дБм, чувствительность −116 дБм при 0,6 кБод на 433 МГц (PER 1 %), сон 200 нА, рассчитан на соответствие EN 300 220 и FCC CFR Part 15; табл. 4: 433 МГц — приём 15–16 мА при 1,2 кБод, передача 29,2 мА при +10 дБм
- Semtech. SX1276/77/78/79 Datasheet, Rev. 5 (August 2016) — архивная копия официального файла; табл. 1: SX1276 137–1020 МГц, SF 6–12, полоса 7,8–500 кГц, 0,018–37,5 кбит/с, чувствительность от −111 до −148 дБм; табл. 6: ток передачи 120 мА при +20 дБм и 29 мА при +13 дБм, сон 0,2 мкА; табл. 10: приём LoRa в диапазоне 1 — 9,9–12,6 мА в зависимости от полосы; модуляции FSK, GFSK, MSK, GMSK, LoRa и OOK
- Semtech. AN1200.22 LoRa Modulation Basics, Rev. 2 (May 2015) — архивная копия официального файла; разд. 4: LoRa — модуляция с расширением спектра на основе ЛЧМ (CSS), скорость обменивается на чувствительность; разд. 5.4: в нелицензируемых полосах линия ограничена скорее помехами, чем бюджетом
Нашли ошибку?
Смотрите также
- Радио и беспроводные модулиWi-Fi, BLE, Zigbee, LoRa, 433/868 МГц: выбор радио, бюджет линии, антенны
- Бюджет радиолиниидБм, дБи, ЭИИМ, потери в свободном пространстве, Фриис, чувствительность, запас, примеры
- Антенны для радиомодулейλ/4 и земля, PCB IFA, чип и спираль, КСВ, П-цепь, зона без меди, КПД по замерам
- LoRaSF, BW, CR, чувствительность SX1276, структура пакета, формула времени в эфире, пример
- Радиомодули 433 и 868 МГцOOK, ASK, FSK; супергетеродин и сверхрегенератор; CC1101, SX1276/SX1278; выбор модуля
- nRF24L01+Радио 2,4 ГГц по SPI: питание, уровни, токи, каналы, ShockBurst, тайминги
- CC1101Трансивер ниже 1 ГГц по SPI: выводы, питание, токи, частота канала, FIFO
- SX1276, SX1278LoRa-трансиверы: версии, выводы, PA_BOOST и +20 дБм, токи, сброс, SPI, DIO
- ESP32-C3: выводы и GPIO22 GPIO: функции, свободные и занятые выводы, флеш-память, strapping, USB, JTAG, токи
- STM32WLCortex-M4 до 48 МГц с радио LoRa 150–960 МГц: WLE5, WLE4, WL55, WL54 — радио, ядра, загрузка и распиновки
- Чувствительность приёмникаНаименьший сигнал, который приёмник принимает с заданной ошибкой
- IEEE 802.15.4Маломощное радио для Zigbee и Thread: скорость, диапазон, чипы
- Enhanced ShockBurstПакетный протокол nRF24L01+ с автоподтверждением и повторами
- Калькулятор децибелдБм ↔ мВт ↔ В, дБВ, дБмкВ, дБ ↔ разы
- FSK и GFSKЧастотная манипуляция: 0 и 1 — сдвиг на минус и плюс девиацию
- Chirp spread spectrum (CSS)Расширение спектра ЛЧМ-импульсами: основа LoRa, приём ниже шумового порога