Особенности разработки электроники с применением BLE (Bluetooth Low Energy)

Мы уже привыкли, что Bluetooth — неотъемлемая часть любого смартфона, при помощи которого можно решать массу повседневных задач.

Сегодня мы рассмотрим все возможные способы применения этого беспроводного интерфейса.

Что такое Bluetooth?

Bluetooth — стандарт передачи данных между устройствами на основе радиосигнала, который передает и принимает специальный модуль. Право установки и использования данной технологии в смартфоны ничем не ограничено, чем успешно пользуются производители. Этим объясняется широкое распространение, повсеместное использование и постоянная актуальность данного протокола связи.

Радиус действия последней версии Bluetooth 5.0 составляет до 100 метров на открытом пространстве, скорость передачи данных — 2 Мбит/с, а новый способ шифрования позволяет не бояться утечки личной информации.

bluetooth-logo.png

История Bluetooth

Разработки Bluetooth начались компанией Ericsson в 1994 году. В 1998 году крупные производители компьютеров и телефонов (Toshiba, Ericsson, IBM, Intel) объединились в «Bluetooth Special Interest Group» с целью создания единой спецификации для Bluetooth.

С этого времени этот способ соединения начал интегрироваться в телефоны и успешно эволюционировал с 1-й до 5-й версии, значительно ускорив скорость передачи данных, увеличив радиус действия и снизив энергопотребление.

android-bluetooth.jpg

Функции Bluetooth

Передача данных между смартфонами. Именно благодаря этой функции Bluetooth стал востребован у пользователей. В 2000-х годах интернет не был повсеместно доступен и обмен различными файлами (рингтоны, фотографии, видеоролики) между владельцами телефонов происходил исключительно по Bluetooth-соединению. В наше время актуальность такого обмена снизилась, так как нужные файлы проще и быстрее переслать по электронной почте или передать через Wi-Fi.

Передача данных между компьютером и смартфоном. Это беспроводное соединение помогает объединять телефон и компьютер в единую сеть для обмена файлами, что позволяет отказаться от применения кабеля. Еще таким образом можно использовать телефон в качестве точки доступа Wi-Fi в интернет. В этом случае смартфон, сопряженный с компьютером, выступает в качестве модема.

Подключение беспроводных наушников и гарнитуры. Радиомодуль Bluetooth настолько мал по размерам, что его используют не только в смартфонах, но и в массе других устройств, например, наушниках и телефонной гарнитуры. Согласитесь, очень удобно слушать музыку в наушниках без лишних проводов или разговаривать по телефону, не задействовав руки. Стоимость таких гаджетов относительно невелика, а преимущества при использовании неоспоримы.

Портативная акустика. Динамики практически любого смартфона не позволяют полноценно слушать музыку. На помощь приходит портативная музыкальная колонка, которая работает через Bluetooth. Учитывая радиус действия радиосигнала последних версий Bluetooth, смартфон и колонку можно разместить на значительном расстоянии друг от друга.

bluetooth-smartphone.png

Автомобильная магнитола. Практически все автомобильные мультимедийные центры оснащены модулем Bluetooth для соединения со смартфоном. Это позволяет прослушивать музыку, радио и аудиокниги со смартфона через автомобильную акустику. Еще большинство автомобилей оснащены микрофоном, что позволяет разговаривать за рулем по громкой связи.

bluetooth-auto.jpg

Фитнес-трекеры и умные часы. Данные гаджеты начали производиться относительно недавно, но уже успели завоевать популярность. Фитнес-браслеты позволяют пользователю следить за двигательной активностью в течение дня и, как следствие, за здоровьем. Умные часы отлично дополняют функционал смартфона — на них можно принимать вызовы, SMS и уведомления. Для работы обоих устройств необходим смартфон с Bluetooth.

IMG_4116-min.jpg

Вот такие дополнительные возможности смартфонов раскрывает «ветеран» беспроводных соединений — Bluetooth. Если у вас есть другие интересные идеи, пишите в комментариях.

С ростом количества сетевых беспроводных устройств (охранные и пожарные сигнализации, телемедицина, мониторинг окружающей среды и множество других) появляются новые и совершенствуются старые стандарты и протоколы беспроводной связи. Разные компании и DIY-разработчики используют для своих устройств и сетей разные стандарты передачи данных, например ZigBee, Z-Wave, Bluetooth 4, Wi-Fi, 6LoWPAN, Thread, ANT или собственные проприетарные протоколы. Не так давно вышла новая спецификация стандарта радиосвязи для обмена данными по воздуху Bluetooth 5. В этой статье я на примере программирования новейшего микроконтроллера покажу преимущества нового стандарта.

На правах любящего логику «программиста с паяльником» 🙂 начну статью с плана.

  1. Обзор стандарта. Преимущества пятой версии в сравнении с четвертой.
  2. Выбор железа. Приемник, передатчик.
  3. Описание отладочной платы и микроконтроллера. В этой части я расскажу о параметрах выбранного микроконтроллера и отладочной платы.
  4. Начало работы с SDK (software development kit) под выбранный микроконтроллер. Здесь описывается, как начать разрабатывать простые радиоприложения под Bluetooth Low Energy четвертой версии на нашей отладочной плате. Чтобы мы привыкли к новому набору инструментов и на конкретном примере научились общаться по Bluetooth c Android-телефоном.
  5. Тест нового стандарта Bluetooth 5. В этой части мы сделаем две прошивки для двух отладочных плат и рассмотрим новые режимы радиопередачи по Bluetooth 5.

Обзор стандарта Bluetooth 5

Что мы знаем о новом стандарте? Мы знаем, что он обратно совместим с четвертыми версиями спецификации BLE (Bluetooth Low Energy, Bluetooth Smart), то есть с версиями 4.0, 4.1, 4.2, и позволяет новым устройствам с Bluetooth 5 общаться со старыми девайсами (разумеется, новые фичи будут недоступны). В четвертых версиях BLE, в полном соответствии с названием, позволял проектировать устройства с гораздо меньшим потреблением, чем Bluetooth Classic. Но все остальное, кроме энергопотребления, было не очень — я про скорость, объем передаваемых данных в одном пакете и дальность. Все эти свойства улучшает Bluetooth 5.

Более подробно можно узнать на официальном сайте Bluetooth 5, а мы сейчас кратко остановимся на главных преимуществах пятой версии.

www-icon.jpg

WWW

Все новые Bluetooth-спецификации публикуются здесь.

Высокая пропускная способность данных

Вместе с усовершенствованиями, введенными в Bluetooth 4.2, которые позволяли увеличить объем данных в одном пакете, и еще большим увеличением возможного объема данных в пакете в Bluetooth 5 (DLE) общая пропускная способность стала впятеро выше, чем исходный уровень Bluetooth 4.0!

Теперь чистая пропускная способность данных без учета накладных расходов, таких как адресация, может достигать 1,4 Мбит/c. Зачем нужна такая высокая скорость? Согласен, дурацкий вопрос, даже не знаю, зачем я его придумал. 🙂 Пользователей-аудиофилов это порадует скоростью передачи качественной музыки, а для нас, гиков, открывает возможность гораздо быстрее обновлять прошивку устройства «по воздуху» (OTA-DFU). Всего же благодаря изменениям, внесенным в физический (PHY) слой для работы Bluetooth-радио, стали доступны четыре скорости:

  • 2 Мбит/с;
  • 1 Мбит/с;
  • 500 Кбит/с;
  • 125 Кбит/с.

Уверен, что с первыми двумя скоростями тебе уже все ясно, но вот вопрос: зачем при таком богатстве нужны две «нижние передачи»?

А дело в том, что при низких скоростях и связанной с ними LE закодированной обработке с использованием прямой коррекции ошибок (FEC) становится легче отказаться от повторной передачи данных в окружающем шуме. Короче говоря, чувствительность улучшается. И не надо при высоком уровне шума повторно запрашивать пакеты данных (маленький квадрокоптер может улететь дальше от пульта управления).

Увеличение пропускной способности вещания

Для снижения загрузки вещательного (advertisment, рекламного :)) канала и решения проблемы перегрузки каналов предлагаются вещательные расширения (они же «рекламные расширения»).

Расширение длины данных и новый PHY-уровень означают, что длина пакетов увеличивается с точки зрения фактических данных и времени, в течение которого они занимают канал. Поскольку существуют только три рекламных канала, эти каналы вскоре могут перегружаться вещательными пакетами с большими объемами данных при более низких скоростях передачи в эфире, таких как 125 Кбит/с.

Рекламные расширения смягчают эту потенциальную проблему.

Улучшенное сосуществование с улучшенным чередованием каналов

Bluetooth 5 также предоставил усовершенствованный алгоритм секвенирования каналов (CSA # 2) для улучшения псевдослучайного последовательного переключения каналов. CSA # 2 повысит производительность сосуществования разрешенных устройств при наличии вокруг Wi-Fi и других Bluetooth-устройств. Все SoCs серии nRF52 имеют возможность поддерживать CSA # 2.

BLE Mesh — пока только 4.0

Выбор железа

На момент написания этой статьи пятую версию протокола поддерживали смартфоны Samsung и Sony и в свободной продаже было довольно мало BLE5-совместимых устройств.

nrf52840PDK.jpg

Поэтому, чтобы оценить все возможности Bluetooth 5, я решил взять две отладочные платы с микроконтроллером nRF52840 компании Nordic Semiconductor. Почему именно их? Просто Nordic Semiconductor давно славится своими разработками именно в области Bluetooth-микросхем. Кроме того, их разработки традиционно отличаются вменяемой ценой и богатой документацией. Чипы серии nRF52 и конкретно nRF52840 представляют собой систему на кристалле (SoC, System on a Chip) и, согласно документации, мультипротокольны — могут работать со стандартами Bluetooth 5, Bluetooth Low Energy, ANT, 802.15.4, 2.4GHz RF. Поддерживают они и NFC.

info-icon.jpg

INFO

Все многопротокольные SoCs серии nRF52 поддерживают перечисленные фичи. Кроме того, nRF52840 имеет улучшенную выходную мощность, что вместе с новыми функциями Long Range (увеличение расстояния вещания) переполняет сердце разработчика безотчетной радостью. 🙂

NRF52840 — это усовершенствованный многопроцессорный SoC, идеально подходящий для сверхмалых беспроводных приложений. Имеет полную аппаратную поддержку Bluetooth 5 (включая увеличенную дальность вещания). Софт nRF52840 крутится на 32-битном процессоре ARM Cortex-M4F (64 МГц достаточно каждому (с) почти Билл Гейтс) с 1 Мбайт флеш-памяти и 256 Кбайт ОЗУ на чипе. Поддерживает инструкции DSP (цифровая обработка сигнала), вычисления с плавающей точкой (FPU).

Поддерживает несколько протоколов, включая Bluetooth с низким энергопотреблением, ANT (кто-нибудь использовал этот протокол? :)), 802.15.4 и 2.4GHz.

NRF52840 SoC использует управление питанием, чтобы максимизировать энергоэффективность приложений и время автономной работы. Запитать чип можно от напряжения постоянного тока в диапазоне от 1,7 до 5,5 В.

EasyDMA, как и все DMA (прямой доступ к памяти), позволяет разгрузить ЦП нашего микроконтроллера, например чтобы передавать потоки данных из АЦП в UART без участия ядра.

В SoC есть также мощный криптографический сопроцессор на кристалле (ARM Cryptocell-310), обеспечивающий криптографические функции и услуги для ускорения операций, экономии времени обработки процессором данных и сокращения потребления энергии. Он включает в себя настоящий генератор случайных чисел (TRNG) и поддерживает широкий спектр асимметричных, симметричных и хеширующих криптографических сервисов. NFC также поддерживается в чипе.

NRF52840 имеет встроенную поддержку USB 2.0 (full speed) и встроенное регулирование питания, позволяющее напрямую подключаться к USB-хостам для передачи данных.

Чип совместим с существующими сериями nRF52, nRF51 и nRF24 Series от Nordic Semiconductor.

SoftDevice

Отладочная плата

Отладочную плату на основе этого микроконтроллера я выбрал под стать чипу, вот она: nRF52840 Preview DK Development Kit for nRF52840. Между прочим, к ней прилагается NFC-антенка!

NRF52840 PDK — это универсальный комплект для разработки плат для Bluetooth 5, Bluetooth с низким энергопотреблением, ANT, 802.15.4 и 2.4GHz с использованием nRF52840 SoC. Этот комплект поддерживает разработку для SoC nRF52840.

Набор аппаратно совместим с Arduino Uno Revision 3, позволяет использовать сторонние шилды, совместимые с этим стандартом. Антенна NFC может быть подключена к набору, чтобы активировать функциональность тега NFC. Комплект обеспечивает доступ ко всем входам и выходам через интерфейсы и имеет четыре светодиода и четыре кнопки, которые программируются пользователем.

Он поддерживает стандартную цепочку инструментов разработки Nordic Software Development с использованием Keil, IAR и GCC. Опции программы / отладки в комплекте — это Segger J-Link OB.

Кроме всего прочего, на основе младшего чипа серии nRF52832 уже существуют платы для платформы Arduino, например Arduino Primo. Почему это хорошо? Да потому, что это избавляет тебя от кодинга на С.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.

Я уже участник «Xakep.ru»← Ранее Сергей Лебедь. Интервью с руководителем службы кибербезопасности СбербанкаДалее → Опубликованы детали уязвимости в AMD Secure Processor

5e815af5-b8d7-4d87-b8d2-dde8e2908c39-shutterstock_1151032733.jpgПрактика

343

21 января 2021 Читать 2 мин.

Слушать музыку или смотреть фильмы в беспроводных наушниках очень удобно: вы не мешаете окружающим, при этом вы не привязаны к компьютеру физически. Во многих современных ноутбуках, телефонах и планшетах есть встроенный bluetooth-модуль, а вот в стационарных компьютерах — далеко не всегда. В этом случае подключить беспроводные наушники поможет специальный  bluetooth-адаптер — устройство размером с USB-флешку. 

Для чего нужен bluetooth-адаптер: 

— чтобы подключать к стационарному компьютеру беспроводные устройства: наушники, клавиатуру, мышь; 

— чтобы передавать файлы с настольного ПК на телефон или планшет, или наоборот; 

— для беспроводного соединения двух компьютеров (при условии, что они находятся рядом). 

Преимущества bluetooth-адаптера: 

— небольшое потребление энергии — адаптер не слишком сильно влияет на заряд батареи ноутбука или потребление энергии компьютером; 

— стабильное подключение; 

— лёгкость и доступность в использовании: адаптер подойдёт к любому компьютеру, у которого есть USB 2.0 или 3.0. 

Принцип работы bluetooth-адаптера 

Bluetooth-адаптер — это внешний модуль, который добавляюет любому компьютеру функцию беспроводной связи. 

Когда вы включаете два устройства с bluetooth, одно из них «видит» другое в списке доступных. Вы подтверждаете сопряжение, и они образуют персональную сеть (PAN). После этого, при следующем включении, устройства соединяются на основе уникального адреса, и всегда будут отправлять и считывать нужные сигналы. 

Когда вы включаете адаптер, микросхемы устройства генерируют длины волн в диапазоне, выделенном для связи между близкими объектами. Небольшой радиус действия bluetooth имеет свои преимущества: вам не мешают объёмы ненужных данных. 

Как подключить bluetooth-адаптер

Найдите на компьютере порт USB. Скорее всего, компьютер сам «увидит» новое устройство. Иногда для правильной работы требуется установить драйвер с официального сайта производителя. 

Активируйте bluetooth на втором устройстве. После этого и компьютер, и другой гаджет предложат создать соединение. 

Адаптер Vention USB/Bluetooth 4.0

Этот адаптер со встроенной антенной помогает передавать данные на расстоянии до 10 метров. Устройство оснащено технологией Plug and Play — это значит, что при включении оно сразу готово к работе, установления драйверов не требуется.  

Понравилась статья?

Подпишитесь на нашу еженедельную рассылку

Используемые источники:

  • https://androidlime.ru/bluetooth-smartphone
  • https://xakep.ru/2018/01/09/ble5/
  • https://motivator.wildberries.ru/articles/praktika/dlya-chego-nuzhen-i-kak-rabotaet-bluetooth-adapter

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации