Systemy łączności bezprzewodowej (część 1)

Rozwój wielu dziedzin elektroniki opiera się na technice mikroprocesorowej i łączności bezprzewodowej. Bardzo silnym motorem napędzającym rozwój technologii bezprzewodowych są dwa obszary. Jednym z nich jest urządzenia rynku konsumenckiego, którego koronnym przykładem jest smartfon pozwalający na połączenia głosowe, przesyłanie wiadomości SMS i połączenia internetowe. Trudno dzisiaj o bardziej spektakularny przykład wpływu technologii bezprzewodowej na wiele aspektów życia społeczeństw na całym świecie.

Podobnej rewolucji doświadczyliśmy w XX wieku za sprawą innych mediów: najpierw radia, a potem telewizji. Smartfony mają także dodatkowe interfejsy radiowe: Wi-Fi i Bluetooth. Bez Wi-Fi nie można byłoby się połączyć z Internetem poprzez rutery dostępowe pozwalające na transfer danych bez dodatkowych kosztów. Natomiast jednym z najbardziej znanych, ale nie jedynym zastosowaniem Bluetooth jest możliwość łączenia się ze zdalnymi systemami audio, na przykład zestawami głośnomówiącymi w autach lub słuchawkami bezprzewodowymi.

Rynek konsumencki korzysta z coraz większej liczby zaawansowanych technologii wykorzystujących połączenia bezprzewodowe. Oprócz technologii GSM dającej każdemu możliwość komunikacji dwukierunkowej możemy dzisiaj korzystać na przykład z nawigacji satelitarnej GPS, czy też innych konkurencyjnych satelitarnych systemów nawigacyjnych. Ta technologia jest już tak szeroko dostępna, że stosuje się ją nie tylko do nawigacji komunikacyjnej, ale też do geotagowania zdjęć i innych podobnych zastosowań.

Drugi obszar wpływający na rozwój technologii komunikacji bezprzewodowych to rozwijająca się bardzo dynamicznie technologia Internetu Rzeczy (IoT). Trudno sobie wyobrazić, by tak dynamiczny rozwój IoT był możliwy bez rozwoju sieci radiowych.

Radiowe pasma ISM

Masowe stosowanie połączeń radiowych przez użytkowników nie posiadających koncesji do eksploatacji urządzeń nadawczo-odbiorczych wymaga specjalnych uregulowań. Dla tego typu zastosowań wydzielono pasma częstotliwości wolne od zezwoleń i opłat. Urządzenia pracujące w tych pasmach muszą mieć jednak ograniczoną przepisami niską moc i wykorzystywać przydzielone kanały. Najczęściej są to pasma ISM zarezerwowane dla zastosowań przemysłowych, naukowych i medycznych w celach innych niż telekomunikacyjne. W różnych krajach przewidziano różne częstotliwości do wykorzystania i przy projektowaniu urządzenia pracującego w pasmach ISM należy wybrać odpowiednie pasmo częstotliwości.

Połączenia radiowe mają bardzo wiele zalet. Są wygodne i tanie, bo nie wymagają kosztownego i kłopotliwego okablowania. Pozwalają na nieskrepowaną mobilność w obszarze rzeczywistego zasięgu. Ale niestety są i wady. Przesyłanie danych w kanałach radiowych wymaga zaawansowanego kodowania zapobiegającego podsłuchiwaniu danych, ale również ich przechwytywania i modyfikowania w celach przestępczych. Sporym problemem mogą być zakłócenia elektromagnetyczne powodujące zaniki lub przekłamania sygnału. W ważnych zastosowaniach stosuje się mechanizmy pozwalające na odzyskanie części utraconych danych metodami programowymi. Wymaga to jednak przesyłania danych nadmiarowych spowalniających przesyłanie danych właściwych.

Tutaj zajmiemy się połączeniami bezprzewodowymi niewymagającymi od użytkowników posiadania zezwoleń na korzystanie z częstotliwości i przeznaczonymi do przesyłania danych.

Systemy modulacji

Z technicznego punktu widzenia do przesyłania danych potrzebujemy modemu radiowego i układu nadajnika oraz odbiornika, czyli transceivera. Modem zamienia po stronie nadawczej sygnał cyfrowy, czyli ciąg zer i jedynek, na sygnał analogowy, który może być przesłany w kanale radiowym. Jedną z najpopularniejszych metod przesyłania danych jest modulacja FSK i jej odmiany, polegająca na dyskretnej zmianie częstotliwości nośnej w zależności od przesyłanego bitu informacji (rysunek 1a). Innym rodzajem modulacji jest modulacja ASK, czyli modulacja amplitudy. W dużym uproszczeniu możemy przyjąć, że dla zera logicznego amplituda sygnału nośnej jest zerowa, a dla jedynki logicznej ma maksymalną możliwą wartość (rysunek 1b).

Po stronie odbiorczej modem zamienia sygnał zmodulowany z powrotem na ciąg zer i jedynek.

Rysunek 1a. Modulacja FSK

Rysunek 1b. Modulacja ASK

Modulacja FSK jest bardziej odporna na zakłócenia i dlatego jest chętniej stosowana.

Sposoby organizacji sieci radiowych

Połączenia radiowe można organizować na różne sposoby. W mało wymagających rozwiązaniach stosuje się proste moduły radiowe wspomagające konstruktora w przesyłaniu surowych danych. Bardzo dobrze spełniają one swoją rolę podczas transmisji danych pomiędzy dwoma punktami. Dobrym przykładem może być odczytywanie temperatury z czujnika umieszczonego na zewnątrz. Układ nadrzędny (stacja pogodowa) wysyła drogą radiową zapytanie o temperaturę, a czujnik (termometr) w odpowiedzi przekazuje zmierzoną wartość. Takie moduły mają wbudowaną jedynie prostą logikę i bufory danych.

W trochę bardziej zaawansowanych układach mogą pojawiać się mechanizmy potwierdzania przesłanych pakietów danych oraz zabezpieczanie danych sumami (wielomianami) kontrolnymi. To rozwiązanie ma jedną zaletę – jest tanie w warstwie sprzętowej. Jeżeli wymiana danych nie musi spełniać kryteriów dużej niezawodności przesyłania i nie jest wymagane skuteczne zabezpieczanie przed podsłuchem, to oprogramowanie również może okazać się relatywnie tanie. Do wspomnianego już zdalnego odczytywania danych meteorologicznych czy w podobnych aplikacjach, takie rozwiązanie jest wystarczające. Każda dodatkowa funkcjonalność, na przykład konfiguracja sieci, retransmisja danych przez urządzenia połączone łączami radiowymi w celu zwiększenia zasięgu, wykrywanie przesyłania błędnych danych, wykrywanie utraty połączenia z obiektem czy optymalizacja pobieranej mocy będzie się wiązała z dużym nakładem pracy programisty.

Poza tym powstanie urządzenie, które będzie kompatybilne tylko samo ze sobą co najczęściej jest wadą, a jedynie czasami zaletą.

Standardowe protokoły komunikacji

W wymagających zastosowaniach stosuje się połączenia radiowe wykorzystujące protokoły wymiany danych zaprojektowane i ustandaryzowane specjalnie do tego celu. Nie ma tu uniwersalnego rozwiązania, a standard połączenia radiowego dobiera się do wymagań aplikacji. W technice komputerowej protokoły wymiany danych opisuje się za pomocą modeli warstwowych. Każdy z takich modeli dzieli się na najniższą warstwę fizyczną obejmującą rozwiązania sprzętowe i warstwy wyższe definiowane dla konkretnego protokołu. W interfejsach bezprzewodowych warstwa fizyczna to transceiver radiowy pracujący w zadanym paśmie częstotliwości z określoną modulacją i mocą wyjściową. Interfejs musi mieć możliwość modulowania fali nośnej kanału częstotliwości przez strumień nadawanych danych cyfrowych i demodulowania danych odbieranych.

Standardy łącz bezprzewodowych są dobrze udokumentowane i można bez problemu napisać ich implementację. To jednak wymaga sporego nakładu czasu pracy programisty i przez to koszty wyraźnie rosną. Dlatego na rynku dostępne są kompletne moduły zbudowane z części radiowej połączonej z mikrokontrolerem, w którym jest umieszczony firmware realizujący większość funkcji niezbędnych do nawiązania połączenia, przesyłania danych, obsługi błędów itp. Zależnie od wykonania zaimplementowana jest obsługa dwóch najniższych warstw: sprzętowej i dostępu do łącza MAC lub całego protokołu z elementami warstwy aplikacji.

Proste moduły radiowe

Proste moduły radiowe są chętnie wykorzystywane wszędzie tam, gdzie potrzebujemy taniego rozwiązania, najczęściej do połączenia punkt-punkt. Swego rodzaju standardem stały się moduły wykorzystujące układy nRF24L01 firmy Nordic Semiconductor. Popularność zawdzięczają niskiej cenie i sporym możliwościom. Moduły oparte na nRF24L01 są szeroko wykorzystywane w środowisku Arduino, co również przyczynia się do ich dużej popularności. Na portalach chińskich sprzedawców moduły takie jak na rysunku 2 można kupić już za ok. 5…6 PLN z przesyłką do Polski.

Rysunek 2. Moduł z układem nRF24L01

Niestety moje doświadczenia z nimi są różne. Kiedyś działały bardzo dobrze, ale w tych ostatnio kupionych zupełnie już nie działa komunikacja na poziomie interfejsu SPI. Po przejrzeniu kilku forów okazało się, że inni użytkownicy na całym świecie mają podobne problemy. Jeżeli nie chcemy mieć takich problemów i nie tracić czasu na to, by w końcu stwierdzić, że układ na płytce jest albo uszkodzony, albo jest to niedziałająca podróbka, można zakupić moduły znanej firmy, na przykład Sparkfun (rysunek 3). Cena jest jednak wielokrotnie wyższa, bo oscyluje w granicach 100…110 PLN za sztukę.

Rysunek 3. Moduł firmy Sparkfun z układem nRF24L01

Parametry modułu radiowego nRF21

Schemat blokowy serca modułu, czyli układu nRF24L01 zaprezentowano na rysunku 4. Układ pracuje w paśmie ISM 2,4 – 2,5 GHz z modulacją GFSK. Jest tozmodyfikowana wersja modulacji FSK. W modulacji GFSK strumień danych wejściowych poddaje się filtrowaniu cyfrowemu przez filtr Gaussa (GFSK Filter).

Rysunek 4. Schemat blokowy układu nRF24L01

Układ zawiera kompletny tor radiowy z syntetyzatorem częstotliwości, wzmacniaczem częstotliwości pośredniej i wzmacniaczem antenowym. Może pełnić role nadajnika i odbiornika w trybie pracy half duplex. Dostępne pasmo radiowe podzielono na 125 kanałów. Czas przełączania pomiędzy kanałami jest krótszy niż 200 µs.

Dostępne są dwa tryby pracy: shock burst i bezpośredni. W trybie shock burst host (mikrokontroler) wpisuje wewnętrzny bufor FIFO o rozmiarze 256 bajtów z wybraną prędkością transmisji za pomocą interfejsu SPI. Po wysłaniu wszystkich danych do FIFO, logika sterująca inicjuje wysyłanie danych drogą radiową z prędkością 1 Mb/s lub 250 kbit/s. W trybie bezpośrednim dane są wysyłane z taką prędkością, z jaką host wysyła je do nRF24L01.

Jest również możliwość sprzętowego generowania wielomianu kontrolnego (CRC) w układzie nadajnika i sprawdzania poprawności transmisji na podstawie tego kodu w odbiorniku.

Moduły z układem nRF24L01 są dość zaawansowane technicznie i można je z powodzeniem stosować do poważniejszych zadań mimo braku wsparcia protokołów radiowych.

Proste zestawy z osobnym odbiornikiem i nadajnikiem

Na rynku istnieją też prostsze moduły pracujące w pasmach 433 MHz i 868 MHz. Najczęściej jest to komplet dwóch modułów: jeden jest nadajnikiem, a drugi odbiornikiem. To dość spore ograniczenie funkcjonalności, bo w takiej konfiguracji nie można zrealizować transmisji dwukierunkowej.

Przykład bardzo prostego zestawu nadajnik-odbiornik na pasmo 433 MHz pokazano na rysunku 5.

Rysunek 5. Zestaw nadajnik-odbiornik na pasmo 433 MHz

Zastosowano tu modulację ASK, czyli kluczowanie amplitudy. Takie rozwiązania są przeznaczone w zasadzie dla hobbystów i w takich zastosowaniach powinny się sprawdzić.

O autorze