Понимание профилей энергопотребления Bluetooth Le для устройств с длительным сроком службы батареи
Понимание профилей энергопотребления Bluetooth с низкой энергией для устройств с длительным сроком службы батареи
Bluetooth Low Energy (LE) стал доминирующим беспроводным протоколом для устройств Интернета вещей (IoT) на батарейках, от фитнес-трекеров и умных часов до медицинских датчиков и умных домашних узлов. Его определяющей характеристикой является способность поддерживать беспроводную связь при наведении на порядки меньше тока, чем классический Bluetooth. Однако достижение многолетнего срока службы батареи, часто обещанного на упаковке продукта, требует глубокого понимания профилей энергопотребления, присущих Bluetooth LE, и того, как каждый рабочий режим способствует общему энергетическому бюджету.
Разработчики, которые понимают эти профили, могут сделать обоснованные компромиссы между отзывчивостью, пропускной способностью данных и энергоэффективностью. В этой статье рассматриваются основные состояния мощности Bluetooth LE - реклама, сканирование, соединение и сон - и рассекаются ключевые параметры, которые определяют текущий тираж. Затем эти знания преобразуются в действенные стратегии для оптимизации срока службы батареи в реальных продуктах. Для любого, кто создает устройство, которое должно работать в течение нескольких месяцев или лет на батарее монетного элемента, освоение этих концепций не подлежит обсуждению.
Bluetooth LE Power Profiles и государства
Bluetooth LE разработан по простому принципу: свести к минимуму радиовремя. Протокол достигает этого посредством строго запланированного набора состояний, определенных в Bluetooth Core Specification. Каждое устройство Bluetooth LE существует в одном из пяти основных состояний: Standby, Advertising, Scanning, Initiating и Connection. С энергетической точки зрения наиболее актуальными являются реклама (передачи), сканирование (прием), подключение (бинаправленный обмен данными) и сон (Standby).
Каждое состояние имеет свой собственный профиль потребления тока, который варьируется в зависимости от радиочастоты, выходной мощности, длины пакета и рабочего цикла.Главная задача для разработчика состоит в том, чтобы организовать эти состояния так, чтобы радио проводило подавляющее большинство своего времени в состоянии с наименьшей мощностью — в режиме ожидания — при этом все еще удовлетворяя требованиям приложения для обнаружения и передачи данных.
Подробные режимы потребления электроэнергии
Рекламный режим
Реклама — это механизм, с помощью которого периферийное устройство Bluetooth LE объявляет о своем присутствии. Устройство передает небольшие пакеты по трем выделенным рекламным каналам (37, 38, 39) с интервалами, установленными рекламным интервалом . Этот режим часто является первым источником утечки энергии в жизненном цикле продукта, потому что устройство должно излучать пакеты со скоростью, которая позволяет центральному устройству (например, смартфону или шлюзу) быстро его обнаруживать.
Мощность, потребляемая во время рекламы, зависит от трех основных факторов:
- Выводная мощность (Tx power): Более высокая мощность передачи увеличивает диапазон, но также и более высокий ток. Типичный радио Bluetooth LE может выводить 5-10 мА при 0 дБм и удваивать это при +8 дБм.
- Рекламный интервал: Время между последовательными рекламными событиями. Интервал 20 мс приводит к 50 событиям в секунду, разряжая батарею намного быстрее, чем 1-секундный интервал. Однако более длинные интервалы увеличивают задержку обнаружения.
- Длина пакета: Полезная нагрузка рекламы может варьироваться от 0 до 31 байт. Отправка большего количества данных на событие немного расширяет радио в режиме реального времени, но доминирующей стоимостью является преамбула пакета и адрес доступа.
Для приложений, где быстрое открытие не требуется, например, датчик температуры, который транслирует один раз в минуту, рекламный интервал может быть установлен на несколько секунд, уменьшая средний ток от микроампер до наноампер. Многие продукты также реализуют быструю рекламу в течение короткого периода после включения (например, 30 секунд с интервалом 20 мс) перед переходом в медленный, длительный рекламный режим.
Расширение рекламы (BLE 5.0+)
Bluetooth 5.0 ввел Расширенная реклама, которая позволяет отправлять рекламу по 37 каналам данных, а также по трем основным рекламным каналам. Это позволяет передавать гораздо большие полезные нагрузки (до 255 байт на пакет) и поддерживает периодическую рекламу. Расширенная реклама может быть более энергоэффективной для устройств, которым необходимо транслировать большие наборы данных, поскольку она перемещает пакет из ограниченных первичных каналов и позволяет приемнику сканировать только в назначенное время. Однако экономия мощности сильно зависит от реализации; время радиосвязи для большой расширенной рекламы может быть выше, чем стандартная реклама, но общая энергия на передаваемый бит может быть ниже.
Режим сканирования
Сканирование является аналогом рекламы. Сканирующее устройство слушает рекламу по трем основным каналам. Большинство устройств с питанием от батареи действуют как периферийные устройства и не сканируют часто, но сканирование используется смартфонами, шлюзами и некоторыми продвинутыми узлами датчиков, которые должны обнаружить другие устройства. Потребление энергии в режиме сканирования определяется интервалом сканирования и окном сканирования .
Окно сканирования — это продолжительность, которую радио слушает на каждом канале. Более длинное окно увеличивает вероятность получения рекламы, но при этом потребляет больше тока. Интервал сканирования — это промежуток между последовательными окнами сканирования. Пассивный сканер, который слушает всего 30 мс каждую секунду, потребляет гораздо меньше энергии, чем тот, который слушает непрерывно. Для шлюзов с питанием от батареи или тегов активов, которые должны получать рекламу от многих устройств, разработчики должны тщательно сбалансировать рабочий цикл сканирования с емкостью батареи.
Режим подключения
После установления соединения периферийное и центральное вводят периодическое расписание обмена данными, определяемое интервалом соединения , , , рабской задержкой и тайм-аутом наблюдения . Интервал соединения — это время между событиями соединения — типичные значения варьируются от 7,5 мс до 4 секунд. Каждое событие соединения потребляет мощность как для передачи, так и для приема пакетов, включая накладные расходы на пакет и подтверждение.
Основными факторами силы в связи являются:
- Интервал связи: Более длинные интервалы уменьшают количество событий в секунду, снижая средний ток, однако они также увеличивают задержку и уменьшают максимальную пропускную способность.
- Латентность полок: Рабовому устройству (периферийному) разрешено пропускать до заданного числа последовательных событий соединения без прослушивания. Это, пожалуй, самая мощная ручка для экономии мощности в подключенном устройстве. Датчик, который передает данные каждые пять секунд, но имеет рабовладельческое время 99, может пропустить все промежуточные события, эффективно пробуждаясь только через каждые 100 интервалов соединения. Это может сократить средний ток в десять и более раз.
- Пропускная способность данных: Более быстрая отправка данных (с использованием больших размеров пакетов или более высоких скоростей PHY, таких как 2 Мбит/с) снижает время радиосвязи для заданного количества данных. Использование BLE 5.0 Расширение длины данных (DLE) для отправки до 247 байтов на пакет может значительно повысить энергоэффективность для массовых передач.
Режим сна (Standby)
В режиме ожидания, радио полностью отключено. Хорошо разработанный чип Bluetooth LE потребляет всего несколько сотен наноамперов до нескольких микроамперов в спящем режиме - часто ограничен утечкой в регуляторе напряжения системы или часах реального времени, а не в самом радио. Режим сна - это то, где устройство проводит большую часть своего рабочего времени , поэтому критически важно минимизировать ток утечки. Разработчики должны выбирать компоненты с низким током сна и, где это возможно, использовать самые глубокие состояния сна микроконтроллера, сохраняя только необходимые периферийные устройства (например, низкочастотный осциллятор для поддержания таймера пробуждения).
Многие устройства просыпаются от сна только для того, чтобы выполнить рекламное событие или событие соединения, а затем сразу же возвращаются к сну. цикл работы (радиопо времени, деленное на общее время) является ключевой метрикой. Устройство, которое просыпается каждую секунду, чтобы отправить рекламу 2 мс, имеет рабочий цикл 0,2%. Если радиоприемник рисует 10 мА в то время как активен и 1 мкА во время сна, средний ток составляет примерно 10 мА * 0,002 + 1 мкА * 0,998 ≈ 21 мкА. Это хорошо в рамках бюджета для батареи монетного элемента CR2032 (около 225 мАч) для работы в течение года.
Факторы, влияющие на общее потребление энергии
Помимо параметров базового режима, несколько факторов на системном уровне влияют на потребление электроэнергии в реальном мире:
- Передаваемая мощность: Каждое увеличение выходной мощности на 3 дБ примерно удваивает текущий расход усилителя мощности. Используйте минимальную мощность, необходимую для надежной связи, особенно в развертываниях на ближнем расстоянии.
- PHY режим: Bluetooth LE поддерживает 1 Мбит/с (LE 1M), 2 Мбит/с (LE 2M) и кодированный PHY на большой дальности (125 кбит/с и 500 кбит/с). Кодированный PHY потребляет больше энергии на бит, потому что биты повторяются для исправления ошибок, но он предлагает расширенный диапазон. Для данного диапазона, используя максимальную скорость передачи данных, возможно, минимизирует радио в режиме времени.
- Условия канала: Помехи и мультипаты могут вызывать потери пакетов, приводящие к ретрансляциям. Повторяющиеся столкновения на рекламных каналах увеличивают потребление энергии. Адаптивный подскочок частоты помогает, но в шумных средах энергопотребление повышается.
- Обработка микроконтроллеров: MCU должна обрабатывать пакеты и запускать код приложения. Использование маломощного MCU и оптимизация прошивки для сна между событиями имеет важное значение. Многие SoC объединяют Bluetooth LE и MCU на одном кристалле, чтобы минимизировать ток.
- Периферийные датчики : Прием показаний датчиков (например, акселерометра, температуры) может доминировать в энергопотреблении, если это делается слишком часто.
Измерение и моделирование потребления энергии
Для оптимизации времени автономной работы разработчики должны измерить фактический профиль тока своего устройства. A осциллограф с током или специализированный профильер мощности может захватывать всплески миллисекундного уровня во время рекламных и соединительных событий. Интегрируя область под кривой тока в течение репрезентативного периода, инженеры могут вычислить средний ток и оценить время автономной работы.
Многие поставщики SoC предоставляют калькуляторы мощности на основе Excel, которые моделируют потребление на основе таких параметров, как интервал подключения, размер пакета и рабочий цикл. Эти инструменты являются хорошей отправной точкой, но должны быть проверены с помощью реальных измерений, потому что эффективность паразитов на уровне платы и регулятора напряжения может вызывать отклонения.
Важный нюанс: внутреннее сопротивление батареи может вызвать падение напряжения во время импульсов высокого тока (например, 10 мА на 2 мс. Если напряжение падает ниже порога выключения чипа, устройство может сбросить. Использование банка конденсатора, снижение мощности Tx или удлинение рекламного интервала может снизить этот риск.
Стратегии оптимизации потребления электроэнергии
Вот практические стратегии, сгруппированные по режиму, которые разработчики могут применить сразу:
Оптимизация рекламы
- Используйте двухступенчатую рекламную схему: Реклама быстро (например, 20 мс) только в течение первых 30 секунд после включения, затем переключайтесь на медленный интервал (например, 1-4 секунды).
- Минимизируйте длину полезной нагрузки: Включите в объявление только важную информацию. Дополнительные данные можно получить после подключения.
- Рассматривайте направленную рекламу: Если периферийное устройство знает адрес центра, оно может использовать направленную рекламу, которая более эффективна, поскольку она нацелена на конкретное устройство и останавливается после установления соединения.
- Использовать неподключаемую рекламу: Для приложений, предназначенных только для вещания (маяки), используйте неподключаемую рекламу, чтобы избежать накладных расходов на поддержание состояния соединения.
Оптимизация соединений
- Установите самый длинный допустимый интервал соединения: Для датчика, который сообщает один раз в секунду, 1-секундный интервал соединения эффективен.
- Используй рабскую задержку агрессивно: Раб может пропустить большинство событий соединения. Установить количество пропущенных событий настолько высоко, насколько приложение может выдержать. Например, метеостанция, которая передает данные каждые 10 минут, может установить рабскую задержку до 599 с 1-секундным интервалом, эффективно спящая для 599 из 600 событий.
- Объедините данные : вместо того, чтобы отправлять показания датчиков по одному за раз, скачайте несколько показаний и отправьте одно большое уведомление с помощью DLE.
- Отключайтесь, когда не работаете : Если соединение не требуется в течение длительного времени, разорвите его и вернитесь к рекламе или сну.
Оптимизация сна
- Используйте режим сна с наименьшей мощностью: На Nordic nRF52, то есть System ON с удержанием ОЗУ; на TI CC13xx, это Standby с RTC запущен. Отключите неиспользуемые периферийные устройства.
- Минимизировать рабочий цикл часов пробуждения: Используйте генератор 32 кГц, который рисует <500 нА. Избегайте использования высокоскоростного осциллятора для времени пробуждения.
- Уменьшить утечку GPIO: Конфигурировать неиспользуемые GPIO в качестве входов с выдвижением или выходами с низким уровнем, чтобы предотвратить извлечение дополнительного тока плавающими штифтами.
Оптимизация системного уровня
- Датчики с затвором питания и внешние компоненты : Используйте переключатель питания с управлением MOSFET или GPIO для отключения питания датчиков, когда они не используются.
- Использовать эффективный регулятор напряжения: Регуляторы с низким уровнем выпадения могут иметь высокий покоящий ток; для больших батарей может потребоваться коммутационный преобразователь.
- Рассматривайте BLE 5.1+ нахождение направления: Если используется AoA/AoD, имейте в виду, что переключение антенны добавляет мощность. Выключите двигатель нахождения направления, когда это не нужно.
Пример из реального мира: фитнес-трекер
Типичный фитнес-трекер подключается к смартфону каждые несколько минут для подсчета шагов синхронизации. Устройство рекламирует в течение 30 секунд с интервалом 20 мс, когда приложение открыто, затем падает до рекламного интервала 1 секунда. После подключения он использует интервал соединения 30 мс (для низкой задержки) без задержки раба во время синхронизации. Этот всплеск длится, возможно, 2 секунды. После синхронизации он переключается на 1-секундный интервал соединения с задержкой раба 99, эффективно спит между синхронизациями. Радио рисует ~6 мА во время TX, ~5 мА во время RX и 1 мКА во сне. В течение дня с двумя 2-секундными синхронизациями и в противном случае 1-секундная реклама, средний ток составляет около 15-20 мкА. Батарея 100 мАч будет длиться около 200 дней - реалистично для современного трекера.
Будущие направления
Bluetooth LE продолжает развиваться в направлении еще более низкой мощности. С Bluetooth LE Audio протокол вводит кодек LC3 и синхронизацию потоков, но потребление основного радио остается аналогичным. Предстоящая спецификация Bluetooth 6.0 обещает звучание канала и другие функции, которые могут повлиять на бюджетирование мощности. Для разработчиков ключом является получение информации о новых функциях, которые могут уменьшить рабочий цикл, таких как периодическая реклама с ответом (PAwR) и возможность синхронизировать несколько периферийных устройств с одной картой канала.
Заключение
Обеспечение длительного времени автономной работы с Bluetooth LE является упражнением в тщательной разработке компромиссов. Понимая профили мощности рекламы, подключения и режима сна - и систематически регулируя такие параметры, как интервал, задержка и мощность передачи - разработчики могут подталкивать средний ток в диапазон микроамперов. Результатом является устройство, которое может работать в течение многих лет на ячейке монеты, открывая приложения, которые ранее были непрактичными с беспроводной связью. Мастерство этих профилей отделяет продукты, которые просто функционируют от тех, которые радуют пользователей годами без обслуживания.