Популярные статьи

BMW 3-series Coupe (Бмв ) 2006-2009: описание, характеристики, фото, обзоры и тесты

С сентября 2006 года серийно выпускается БМВ 3-й серии купе (Е92). Невзирая на свое техническое родство с седаном и Touring, купе БМВ 3-й серии имеет

Длительный тест Range Rover Sport: часть вторая

Аш длительный тест Range Rover Sport Supercharged подошел к концу. Первая хорошая новость: машину не угнали! Вторая: несмотря на соблазн, за

Audi E-tron (Ауди ) 2010: описание, характеристики, фото, обзоры и тесты

Audi E-tron, представленный на автосалоне в Детройте в январе 2010 года, совсем не то же самое, что E-tron, который выставлялся осенью на IAA 2009 во

Принципы ухода за АКБ зимой

В зимнее время года при морозной погоде аккумулятор автомобиля испытывает нагрузку намного больше, чем в летнее время. Автовладельцами замеченны

SEAT Toledo (Сиат Толедо) 1998-2004: описание, характеристики, фото, обзоры и тесты

Эта модель расширяет присутствие компании SEAT в сегменте рынка престижных автомобилей. Toledo - первый автомобиль компании дизайн которого выполнен

В 2000 г. семейство японских Corolla лишь обновилось. Спрос на эти машины падал и классическая Corolla уже не устраивала японских покупателей. Как

Skoda Octavia (Шкода Октавия) 1996-1999: описание, характеристики, фото, обзоры и тесты

Skoda Octavia - это современный переднеприводной автомобиль с поперечным расположением двигателя. На нём может стоять один из пяти моторов концерна

Chrysler PT Cruiser (Крайслер Пт крузер) 1999-2010: описание, характеристики, фото, обзоры и тесты

Дебют серийной модели PT Cruiser состоялся в 1999 году в Детройте. Компании Chrysler удалось зацепить ностальгическую струну в душе каждого простого

Примеряем Audi A6 Allroad и A8 Hybrid к нашим дорогам

Компания сыграла на контрасте, представив одновременно две модели, совершенно противоположные по идеологии: сверхэкономичный лимузин-гибрид А8 и

Toyota Tundra Crew Max (Тойота Тундра Crew Max) 2006-2009: описание, характеристики, фото, обзоры и тесты

Toyota Tundra (Тойота Тундра) проектировался как грузовик. Мощный двигатель, основательная рама и большая грузоподъемность... вот что отличает этот

Архив сайта
Облако тегов
Календарь

Юзай новий блютус, BLE-п'ять! Вивчаємо і Кодима під новий швидкісний протокол на прикладі Arduino

  1. Зміст статті З ростом кількості мережевих бездротових пристроїв (охоронні і пожежні сигналізації,...
  2. WWW
  3. Висока пропускна здатність даних
  4. Збільшення пропускної здатності мовлення
  5. Покращене співіснування з поліпшеним чергуванням каналів
  6. BLE Mesh - поки тільки 4.0
  7. вибір заліза
  8. INFO
  9. SoftDevice
  10. отладочная плата
  11. Продовження доступно тільки учасникам
  12. Варіант 2. Відкрий один матеріал

Зміст статті

З ростом кількості мережевих бездротових пристроїв (охоронні і пожежні сигналізації, телемедицина, моніторинг навколишнього середовища і безліч інших) з'являються нові і удосконалюються старі стандарти і протоколи бездротового зв'язку. Різні компанії і 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

Всі нові 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

Mesh-мережі - мережева топологія комп'ютерної мережі, побудована на принципі осередків, в якій радіостанції мережі з'єднуються один з одним і здатні приймати на себе роль комутатора для інших учасників. Ця організація мережі досить складна в налаштуванні, проте при такій топології досягається висока відмовостійкість. Як правило, вузли з'єднуються за принципом «кожен з кожним».
Таким чином, велика кількість зв'язків забезпечує широкий вибір маршруту слідування трафіку всередині мережі, а значить, обрив одного з'єднання не порушить роботу мережі в цілому. Але BLE Mesh-мережі розраховані (принаймні поки що) на Bluetooth стандарту четверте версій.

вибір заліза

На момент написання цієї статті п'яту версію протоколу підтримували смартфони Samsung і Sony і у вільному продажу було досить мало BLE5-сумісних пристроїв.

На момент написання цієї статті п'яту версію протоколу підтримували смартфони Samsung і Sony і у вільному продажу було досить мало BLE5-сумісних пристроїв

Плата nrf52840 Preview DK

Тому, щоб оцінити всі можливості 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

Всі багато протокольних 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

Стеки бездротових протоколів від Nordic Semiconductor відомі як SoftDevices. NRF52840 підтримується S140 SoftDevice.
S140 SoftDevice - це підтримує Bluetooth 5 (поки alpha).

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

Отладочную плату на основі цього мікроконтролера я вибрав до пари чіпу, ось вона: 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», щоб читати всі матеріали на сайті

Членство в співтоваристві протягом зазначеного терміну відкриє тобі доступ до ВСІХ матеріалами «Хакера», збільшить особисту накопичувальну знижку і дозволить накопичувати професійний рейтинг Xakep Score! Детальніше

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

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


Навіщо потрібна така висока швидкість?
Упевнений, що з першими двома швидкостями тобі вже все ясно, але от питання: навіщо при такому багатстві потрібні дві «нижні передачі»?
Чому саме їх?
О-небудь використовував цей протокол?
Чому це добре?
Ru»?