Bluetooth Low Energy (LE)

Energooszcz臋dny Bluetooth dla IoT i aplikacji sensorowych.

Narodziny Po艂膮czonych Urz膮dze艅: Dlaczego Powsta艂 Bluetooth LE

Chocia偶 Bluetooth Classic genialnie rozwi膮za艂 problem bezprzewodowego strumieniowania audio i ci膮g艂ego transferu danych, pocz膮tek XXI wieku przyni贸s艂 now膮 rewolucj臋 technologiczn膮: Internet Rzeczy (IoT). Nagle 艣wiat wyobrazi艂 sobie przysz艂o艣膰, w kt贸rej codzienne przedmioty mog膮 sta膰 si臋 "inteligentne". Termostaty, 偶ar贸wki, opaski fitness, czujniki medyczne i niezliczone inne ma艂e urz膮dzenia potrzebowa艂y sposobu na bezprzewodow膮 komunikacj臋. Jednak ich potrzeby by艂y fundamentalnie inne ni偶 te, kt贸re mia艂y bezprzewodowe s艂uchawki.

Te nowe urz膮dzenia nie musia艂y strumieniowa膰 megabajt贸w danych na sekund臋. Zamiast tego musia艂y wysy艂a膰 niewielkie pakiety informacji w nieregularnych odst臋pach czasu: odczyt temperatury co kilka minut, aktualizacj臋 t臋tna co sekund臋, prost膮 komend臋 "w艂膮cz" lub "wy艂膮cz" dla 艣wiat艂a. Co najwa偶niejsze, urz膮dzenia te musia艂y dzia艂a膰 miesi膮cami, a nawet latami na jednej, ma艂ej baterii pastylkowej. U偶ywanie do takich zastosowa艅 Bluetooth Classic by艂oby jak gaszenie zapa艂ki wozem stra偶ackim; jego zu偶ycie energii by艂o po prostu zbyt wysokie dla tej nowej klasy oszcz臋dnych gad偶et贸w.

Dostrzegaj膮c t臋 krytyczn膮 luk臋, Bluetooth Special Interest Group (SIG) wprowadzi艂a Bluetooth Low Energy (LE) jako cz臋艣膰 specyfikacji Bluetooth 4.0 w 2010 roku. Bluetooth LE nie by艂 ewolucj膮 wersji Classic, ale ca艂kowitym, od podstaw zaprojektowanym standardem, kt贸rego nadrz臋dnym celem by艂a ekstremalna energooszcz臋dno艣膰. Jego filozofia projektowa opiera si臋 na utrzymywaniu radia urz膮dzenia w stanie wy艂膮czenia przez maksymalnie d艂ugi czas, budz膮c si臋 tylko na kilka milisekund, aby wys艂a膰 lub odebra膰 kr贸tki pakiet danych, a nast臋pnie natychmiast wracaj膮c do g艂臋bokiego snu. Ta fundamentalna r贸偶nica w architekturze umo偶liwia istnienie ca艂ego nowego wszech艣wiata po艂膮czonych urz膮dze艅, czyni膮c IoT praktyczn膮 rzeczywisto艣ci膮.

Prostsze, Inteligentniejsze Radio: Warstwa Fizyczna Bluetooth LE

Aby osi膮gn膮膰 swoj膮 niezwyk艂膮 energooszcz臋dno艣膰, Bluetooth LE wykorzystuje warstw臋 fizyczn膮, kt贸ra, cho膰 dzieli to samo pasmo ISM 2.4 GHz co jej klasyczny odpowiednik, dzia艂a w spos贸b fundamentalnie inny i bardziej uproszczony.

Inny Uk艂ad Kana艂贸w

Podczas gdy Bluetooth Classic dzieli spektrum 2.4 GHz na 79 kana艂贸w o szeroko艣ci 1 MHz ka偶dy, Bluetooth LE u偶ywa prostszego schematu z 40 kana艂ami, ka偶dy o szeroko艣ci 2 MHz. Ta szersza separacja kana艂贸w sprawia, 偶e radia s膮 mniej podatne na dryf cz臋stotliwo艣ci i zak艂贸cenia, co pozwala na prostsze i ta艅sze projekty sprz臋towe. Te 40 kana艂贸w dzieli si臋 na dwa odr臋bne typy:

  • Kana艂y Og艂oszeniowe (3 Kana艂y): S膮 to "publiczne kana艂y rozg艂oszeniowe" 艣wiata Bluetooth LE. S膮 tylko trzy (Kana艂y 37, 38 i 39). Ich cz臋stotliwo艣ci zosta艂y strategicznie wybrane tak, aby znajdowa艂y si臋 pomi臋dzy g艂贸wnymi kana艂ami Wi-Fi (1, 6 i 11), minimalizuj膮c prawdopodobie艅stwo bezpo艣redniej interferencji. Ca艂e odkrywanie urz膮dze艅, rozg艂aszanie danych i inicjowanie po艂膮cze艅 odbywa si臋 wy艂膮cznie na tych trzech kana艂ach. Urz膮dzenie szukaj膮ce po艂膮czenia musi nas艂uchiwa膰 tylko na tych trzech konkretnych cz臋stotliwo艣ciach, a nie na wszystkich 79, co drastycznie zmniejsza zu偶ycie energii w fazie odkrywania.
  • Kana艂y Danych (37 Kana艂贸w): Pozosta艂e 37 kana艂贸w (od 0 do 36) s膮 u偶ywane do dwukierunkowej wymiany danych po nawi膮zaniu po艂膮czenia. Gdy dwa urz膮dzenia zgodz膮 si臋 na po艂膮czenie na kanale og艂oszeniowym, prze艂膮czaj膮 si臋 na kana艂y danych i zaczynaj膮 razem przeskakiwa膰 mi臋dzy tymi 37 kana艂ami w zsynchronizowanym wzorcu, podobnie jak w Bluetooth Classic, w celu utrzymania solidnego po艂膮czenia.

Modulacja i Szybko艣膰 Transmisji Danych

Standardowym schematem modulacji dla Bluetooth LE jest to samo, co dla Basic Rate w Bluetooth Classic: . Przy szybko艣ci symbolowej 1 Msps, daje to surow膮 szybko艣膰 transmisji danych na poziomie 1 Mbps. Chocia偶 Bluetooth 5 i nowsze wersje wprowadzi艂y opcje wy偶szej pr臋dko艣ci (2 Mbps) i trybu kodowanego o dalekim zasi臋gu, ta podstawowa szybko艣膰 1 Mbps jest fundamentem ca艂ej komunikacji LE, zapewniaj膮c niezawodn膮 i energooszcz臋dn膮 metod臋 przesy艂ania kr贸tkich pakiet贸w danych.

Adaptacyjne Przeskoki Cz臋stotliwo艣ci (AFH)

Podobnie jak jego klasyczny odpowiednik, LE wykorzystuje , aby przetrwa膰 w ha艂a艣liwym 艣rodowisku 2.4 GHz. Urz膮dzenie LE mo偶e stale monitorowa膰 kana艂y w swojej mapie przeskok贸w. Je艣li wykryje, 偶e dany kana艂 jest konsekwentnie zaszumiony lub zaj臋ty przez inn膮 technologi臋, tak膮 jak Wi-Fi, mo偶e poinformowa膰 o tym po艂膮czonego partnera, a oba urz膮dzenia usun膮 ten "z艂y" kana艂 ze swojej wsp贸lnej sekwencji przeskok贸w. Pozwala to na dynamiczne dostosowanie po艂膮czenia do otoczenia radiowego, unikanie zak艂贸ce艅 i utrzymanie stabilnego 艂膮cza.

Nowe Role dla Nowego Paradygmatu: Central, Peripheral i GATT

Architektura Master/Slave z Bluetooth Classic, zaprojektowana dla stabilnych po艂膮cze艅 jeden do jednego, nie by艂a wystarczaj膮co elastyczna dla dynamicznego 艣wiata IoT. Bluetooth LE wprowadza nowy zestaw r贸l oraz, co najwa偶niejsze, standardow膮 struktur臋 organizacji danych zwan膮 Generic Attribute Profile (GATT).

Peripheral (Serwer GATT)

Peripheral to zazwyczaj ma艂e, zasilane bateryjnie urz膮dzenie IoT. To urz膮dzenie, kt贸re posiada dane. Na przyk艂ad monitor t臋tna to Peripheral. Nie mo偶e samo zainicjowa膰 po艂膮czenia; zamiast tego "og艂asza" swoj膮 obecno艣膰 i oferowane us艂ugi danych, czekaj膮c, a偶 urz膮dzenie Central si臋 z nim po艂膮czy. W strukturze GATT, Peripheral pe艂ni rol臋 Serwera, poniewa偶 "serwuje" dane klientowi.

Central (Klient GATT)

Central to zazwyczaj pot臋偶niejsze urz膮dzenie, jak smartfon, tablet czy komputer. To urz膮dzenie, kt贸re chce danych. Urz膮dzenie Central "skanuje" w poszukiwaniu og艂aszaj膮cych si臋 Peripheral i mo偶e zdecydowa膰 o zainicjowaniu po艂膮czenia z jednym z nich. W strukturze GATT, Central pe艂ni rol臋 Klienta, poniewa偶 偶膮da danych od Serwera.

Ten model jest wysoce wydajny. Pojedynczy Peripheral mo偶e og艂asza膰 si臋 do wielu Central naraz, a pojedynczy Central mo偶e by膰 po艂膮czony z wieloma Peripheral jednocze艣nie.

GATT: Uniwersalny J臋zyk Danych LE

Protok贸艂 jest sercem wymiany danych w Bluetooth LE. Zapewnia uniwersalny, standardowy spos贸b strukturyzacji i organizacji danych na urz膮dzeniu Peripheral, czyni膮c je zrozumia艂ymi dla ka偶dego Central, kt贸re si臋 z nim po艂膮czy. GATT jest zorganizowany w prost膮 hierarchi臋:

  1. Profil: Wysokopoziomowy, predefiniowany zbi贸r us艂ug, kt贸re razem definiuj膮 konkretny przypadek u偶ycia. Na przyk艂ad "Profil T臋tna" okre艣la, 偶e urz膮dzenie musi zawiera膰 "Us艂ug臋 T臋tna". Zapewnia to interoperacyjno艣膰 typu "plug-and-play".
  2. Us艂uga: Zbi贸r powi膮zanych punkt贸w danych, zwanych charakterystykami. Us艂uga jest jak folder, kt贸ry grupuje podobne informacje. Na przyk艂ad "Us艂uga T臋tna" zawiera艂aby dane o t臋tnie, a "Us艂uga Baterii" informacje o poziomie na艂adowania baterii. Ka偶da us艂uga jest identyfikowana przez unikalny numer zwany .
  3. Charakterystyka: Rzeczywista warto艣膰 danych. Jest to podstawowy element informacji. Charakterystyka jest jak plik w folderze us艂ugi. Przyk艂ady to "Pomiar T臋tna" lub "Poziom Baterii". Ka偶da charakterystyka posiada:
    • Warto艣膰: Rzeczywiste dane (np. liczba `120`).
    • UUID: Unikalny identyfikator dla tego konkretnego typu danych.
    • W艂a艣ciwo艣ci: Zestaw uprawnie艅 okre艣laj膮cych, co Central mo偶e z ni膮 zrobi膰 (np. Odczyt, Zapis, Powiadomienie).
  4. Deskryptor: Opcjonalne, dodatkowe informacje opisuj膮ce charakterystyk臋, takie jak czytelny dla cz艂owieka opis (np. "Uderzenia na minut臋") lub prawid艂owy zakres jej warto艣ci.

Proces Po艂膮czenia LE: Przewodnik Krok po Kroku

Ca艂y cykl 偶ycia interakcji Bluetooth LE, od odkrycia po wymian臋 danych, jest skrupulatnie zaprojektowany pod k膮tem efektywno艣ci energetycznej.

Krok 1: Og艂aszanie (Advertising)

Peripheral (np. inteligentny termostat), kt贸ry chce by膰 wykryty, zaczyna okresowo rozg艂asza膰 kr贸tkie "pakiety og艂oszeniowe" na trzech kana艂ach og艂oszeniowych (37, 38, 39). Pakiety te zawieraj膮 podstawowe informacje, takie jak jego nazwa i kluczowe us艂ugi, kt贸re oferuje, pozwalaj膮c Central zdecydowa膰, czy chce si臋 po艂膮czy膰, bez marnowania energii na pe艂ne zapytanie.

Krok 2: Skanowanie

Central (np. smartfon), kt贸ry chce si臋 po艂膮czy膰, wchodzi w stan skanowania, w kt贸rym kr贸tko nas艂uchuje na kana艂ach og艂oszeniowych w poszukiwaniu tych pakiet贸w. Aplikacja na telefonie mo偶e nast臋pnie wy艣wietli膰 list臋 pobliskich urz膮dze艅, kt贸re si臋 og艂aszaj膮.

Krok 3: 艁膮czenie

Gdy u偶ytkownik wybierze termostat w aplikacji, smartfon (Central) wysy艂a pakiet z 偶膮daniem po艂膮czenia do termostatu (Peripheral). Pakiet ten zawiera kluczowe parametry po艂膮czenia, takie jak , kt贸ry definiuje, jak cz臋sto urz膮dzenia b臋d膮 si臋 budzi膰 w celu komunikacji.

Krok 4: Wymiana Danych przez GATT

Po po艂膮czeniu oba urz膮dzenia prze艂膮czaj膮 si臋 na kana艂y danych i zaczynaj膮 przeskoki cz臋stotliwo艣ci. Aplikacja na smartfonie zbada teraz serwer GATT termostatu, aby odkry膰 jego us艂ugi i charakterystyki (np. "Us艂uga Temperatury" z charakterystyk膮 "Aktualna Temperatura"). U偶ytkownik mo偶e teraz wchodzi膰 w interakcj臋 z tymi danymi:

  • Odczyt Danych: Aplikacja wysy艂a 偶膮danie "odczytu", aby uzyska膰 aktualn膮 temperatur臋 z termostatu.
  • Zapis Danych: U偶ytkownik zmienia docelow膮 temperatur臋 w aplikacji. Aplikacja wysy艂a polecenie "zapisu" do charakterystyki "Docelowa Temperatura" termostatu, zmieniaj膮c jego ustawienie.
  • Subskrypcja przez Powiadomienia: Aplikacja mo偶e zasubskrybowa膰 charakterystyk臋 "Aktualna Temperatura". Teraz termostat b臋dzie automatycznie wysy艂a艂 aktualizacj臋 (pakiet "powiadomienia") do telefonu za ka偶dym razem, gdy temperatura si臋 zmieni, bez konieczno艣ci ci膮g艂ego pytania o jej warto艣膰. Jest to niezwykle energooszcz臋dne w por贸wnaniu z wielokrotnym odpytywaniem o warto艣膰.

Krok 5: Zako艅czenie

Gdy interakcja jest zako艅czona, Central lub Peripheral mo偶e wys艂a膰 polecenie zako艅czenia po艂膮czenia. Peripheral wraca wtedy do stanu og艂aszania, gotowy na nowe po艂膮czenie.

    Bluetooth Low Energy (LE) | Teleinf Edu