Сквозная симуляция BLE PHY Используя модель потери на пути, ухудшения RF и AWGN

Этот пример пользуется Библиотекой Communications Toolbox™ для Протокола Bluetooth®, чтобы выполнить сквозную симуляцию Bluetooth низкой энергии (BLE) для различного физического уровня BLE (PHY) режимы передачи в присутствии модели потери на пути, ухудшений радио-фронтенда (RF) и аддитивного белого Гауссова шума (AWGN). Результаты симуляции показывают ориентировочную стоимость частоты ошибок по битам (BER), потери на пути и расстояния между передатчиком и приемником.

Моделирование потери на пути в сети BLE

Технические требования Ядра Bluetooth [1] заданный Специальной группой (SIG) Bluetooth ввели BLE, чтобы включить ближнюю коммуникацию малой мощности. Устройства BLE действуют в глобально нелицензированной промышленной, научной, и медицинской полосе (ISM) в частотном диапазоне от 2,4 ГГц до 2,485 ГГц. BLE задает интервал канала 2 МГц, приводящих к 40 каналам RF. Видные приложения BLE включают услуги по определению направления и создание интеллектуальных решений для Интернета вещей (IoT) упростить домашнюю, коммерческую, и промышленную автоматизацию. Для получения дополнительной информации об услугах по определению направления в BLE, смотрите тему Местоположения и Определения направления Bluetooth.

За прошлые несколько лет было значительное увеличение разработки сетей BLE для множества сценариев варианта использования. Достигнуть высокой производительности и качества в сети BLE, изучая распространение сигнала BLE вдоль ссылки между передатчиком и приемником рекомендуется. Этот пример показывает сквозную симуляцию BLE, рассматривая эти факторы, которые влияют на распространение сигналов BLE вдоль линии связи между передатчиком и приемником.

  • Чувствительность приемника

  • Модель потери на пути

  • Передайте степень

  • Усиление антенны

Чувствительность приемника

Чувствительность приемника является мерой минимальной силы сигнала, в которой приемник может обнаружить, демодулировать и декодировать форму волны. Ссылочный уровень уязвимости, заданный в Технических требованиях Ядра Bluetooth [1], является-70 dBm. Однако фактический уровень уязвимости для приемника согласно Техническим требованиям Ядра Bluetooth [1] задан как уровень на входе приемника, для которого достигается BER, заданный в этой таблице.

Эта таблица показывает фактический уровень уязвимости приемника для данного режима передачи PHY.

Модель потери на пути

Затухание потери на пути или пути является снижением в плотности энергии данного сигнала, когда это распространяет с передатчика на приемник через пробел. Эта плотность снижения мощности происходит естественно по расстоянию и повлиялась препятствиями, существующими в среде, в которой передается сигнал. Потеря на пути обычно описывается в децибелах (дБ) и вычисляется как:

PLdB=Pt-Pr.

В этом уравнении,

  • PLdB потеря на пути в дБ.

  • Pt переданная степень сигнала в дБ.

  • Pr принимаемая мощность сигнала в дБ.

Модели потери на пути описывают затухание сигнала между передатчиком и приемником на основе расстояния распространения и других параметров, таких как частота, длина волны, экспонента потери на пути и усиления антенны. Пример рассматривает эти модели потери на пути:

  • Свободное пространство [3]

  • Логарифмическое расстояние [3]

  • Логарифмически нормальное затенение [3]

  • 2D излучите наземное отражение [3]

  • КАША NIST, с 02 задачами 6 [4]

Модель потери на пути свободного пространства

Потеря на пути свободного пространства является затуханием силы сигнала между передатчиком и приемником вдоль пути к углу обзора (LoS) через свободное пространство (обычно воздух), исключая эффект препятствий в пути. Потеря на пути свободного пространства вычисляется как:

PLdB=20log(4πdλ).

В этом уравнении,

  • d расстояние между передатчиком и приемником.

  • λ длина волны сигнала.

Модель потери на пути логарифмического расстояния

Модель потери на пути логарифмического расстояния отражает потерю на пути, с которой сигнал сталкивается во внутренней среде, такой как создание. Это вычисляется как:

PLdB=PL0+10γlog(dd0).

В этом уравнении,

  • PL0 потеря на пути на ссылочном расстоянии d0.

  • d расстояние между передатчиком и приемником.

  • d0 ссылочное расстояние.

  • γ экспонента потери на пути.

Логарифмически нормальная модель потери на пути затенения

Логарифмически нормальная модель затенения является расширением модели потери на пути логарифмического расстояния. В отличие от модели логарифмического расстояния, логарифмически нормальная модель затенения рассматривает то, что помеха окружающей среды может весьма отличаться в двух других местах, имеющих то же разделение приемника передатчика. Измерения показывают на любом расстоянии приемника передатчика, d, потеря на пути в конкретном местоположении обычно является случайным и распределенным журналом (в дБ) о среднем зависимом значении расстояния. Потеря на пути вычисляется как:

PLdB(d)=PLdB(d0)+10γlog(dd0)+Xσ.

В этом уравнении,

  • PLdB(d0) потеря на пути на ссылочном расстоянии d0.

  • d расстояние между передатчиком и приемником.

  • d0 ссылочное расстояние.

  • γ экспонента потери на пути.

  • Xσ нормальная или Гауссова случайная переменная с нулевым средним значением, отражая затухание, вызванное плоским исчезновением.

2D излучите наземную модель отражения

Наземная модель отражения 2D луча является радио-моделью распространения, которая оценивает потерю на пути между передатчиком и приемником путем рассмотрения этих двух компонентов сигнала: LoS и компонент отражаются от земли. Когда высоты антенны передатчика и приемника приблизительно подобны, и расстояние между антеннами является очень большим относительно высоты антенн, затем потеря на пути вычисляется как:

PLlinearscale=Ght2hr2d4.

Потеря на пути в логарифмическом масштабе вычисляется как:

PLdB=40log10(d)-10log10(Ght2hr2).

В этом уравнении,

  • d расстояние между передатчиком и приемником.

  • G продукт усилений антенны.

  • ht высота передатчика.

  • hr высота приемника.

PAP02-задача NIST 6 моделей

Национальный институт стандартов и технологий (NIST) провел исследования для внутреннего к внутреннему, вне помещения к наружному, и вне помещения к внутренним путям к распространению и вывел эти уравнения для вычисления потери на пути:

PLd=PL0+10(n0)log10(dd0).                                                           fordd1PLd=PL0+10(n0)log10(dd0)+10(n1)log10(dd1).                 ford>d1

В этих уравнениях,

  • PL0 потеря на пути на ссылочном расстоянии d0.

  • n0,n1 экспоненты потери на пути.

  • d расстояние между передатчиком и приемником.

  • d0 ссылочное расстояние, принятое, чтобы быть 1 метр в симуляциях.

  • d1 точка останова, откуда экспонента потери на пути настраивает n0 к n1.

Пример рассматривает эти значения для различных сред.

Большинство этих измерений для задачи NIST PAP02 6 моделей канала было проведено с передатчиками и приемниками, расположенными в прихожих с расстояниями в пределах от от 5 м до 45 м.

Передайте степень

Степень передачи является степенью сигнала радиочастоты, сгенерированного передатчиком. Увеличение степени передачи увеличивает вероятность, что сигнал может быть передан по более долгим расстояниям. Bluetooth поддерживает степень передачи от-20 dBm (0,01 мВт) к 20 dBm (100 мВт).

Усиление антенны

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

Сквозная процедура симуляции BLE

Сквозные симуляции BLE PHY оценивают BER и расстояние между передатчиком и приемником путем считания определенной модели потери на пути с ухудшениями RF и AWGN добавленной к пакетам передачи.

Для данного набора параметров симуляции получите отношение сигнал-шум (SNR) в приемнике путем принятия фиксированной шумовой фигуры. Для полученного значения ОСШ включая потерю на пути сгенерируйте форму волны BLE с помощью bleWaveformGenerator функция. Исказите сгенерированную форму волны ухудшениями RF и AWGN. Каждый пакет искажен этими ухудшениями RF:

  • DC возмещен

  • Несущая частота возмещена

  • Фаза Carrier возмещена

  • Синхронизация дрейфа

Шумные пакеты обрабатываются через практический приемник BLE, который выполняет эти операции:

  1. Автоматическое управление усилением (AGC)

  2. Удаление DC

  3. Несущая частота возместила коррекцию

  4. Согласованная фильтрация

  5. Пакетное обнаружение

  6. Синхронизация выявления ошибок

  7. Демодуляция и декодирование

  8. De-отбеливание

Сквозная цепь в качестве примера получена в итоге в этих блок-схемах

BER получен путем сравнения переданных и восстановленных битов данных.

Проверяйте на установку пакета поддержки

Проверяйте, установлена ли 'Библиотека Communications Toolbox для пакета поддержки' Протокола Bluetooth или нет.

commSupportPackageCheck('BLUETOOTH');

Сконфигурируйте параметры симуляции

В этом примере, расстоянии между передатчиком и приемником оценивается на основе среды и уровней мощности сигнала в передатчике и приемнике.

Сконфигурируйте параметры, связанные с линией связи между передатчиком и приемником

pathLossModel = 'Free space';          % Path loss model
rxSensitivity = -70 ; % Receiver sensitivity in dBm
txPower = 0;          % Transmit power in dBm
txAntennaGain = 0;    % Transmitter antenna gain in dB
rxAntennaGain = 0;    % Receiver antenna gain in dB
linkMargin = 15;                              % Link margin(dB) assumed in the simulation

Сконфигурируйте параметры для генерации сигналов

samplesPerSymbol = 8;                 % Samples per symbol
dataLen = 254;  % Data length in bytes
phyMode = 'LE1M';       % PHY transmission mode

% Default access address for periodic advertising channels
accessAdd = [0 1 1 0 1 0 1 1 0 1 1 1 1 1 0 1 1 0 0 1 0 0 0 1 0 1 1 1 0 0 0 1]';

% Random data bits generation
txBits = randi ([0 1], dataLen*8,1,'int8');

% Random channel index
chanIndex =37;
ФК = (2*chanIndex+2402) *1e6; % Center frequency in Hz

% Generate BLE waveform
txWaveform = bleWaveformGenerator (txBits,'Mode', phyMode,...
                    'SamplesPerSymbol', samplesPerSymbol,...
                    'ChannelIndex', chanIndex,...
                    'AccessAddress', accessAdd);

Сконфигурируйте шумовую и степень сигнала в приемнике

Уровень шума приемника симулирован с тепловым шумом. Высота уровня шума определяет ОСШ в приемнике. Шумовая фигура приемника определяет уровень уровня шума.

NF = 6;            % Noise figure (dB)
T = 290;           % Ambient temperature (K)
dBm2dBFactor = 30; % Factor for converting dBm to dB

% Symbol rate based on the PHY transmission mode
symbolRate = 1e6; 
if strcmp(phyMode,'LE2M')
    symbolRate = 2e6;
end
BW = samplesPerSymbol*symbolRate; % Bandwidth (Hz)
k = 1.3806e-23;                   % Boltzmann constant (J/K)
noiseFloor = 10*log10(k*T*BW)+NF; % Nosie floor in dB

% Measure signal power at the receiver based on the receiver sensitivity and
% assumed link margin
measuredPowerVector = rxSensitivity - dBm2dBFactor+linkMargin;
snrdB = measuredPowerVector - noiseFloor; % SNR in dB

Исказите форму волны BLE

Исказите сгенерированную форму волны BLE с помощью ухудшений RF, потери на пути и AWGN.

Добавьте ухудшения RF

Ухудшения RF сгенерированы случайным образом и добавлены к форме волны BLE.

% Create and configure the System objects for impairments
initImp = helperBLEImpairmentsInit(phyMode,samplesPerSymbol);

% Configure RF impairments
initImp.pfo.FrequencyOffset = 5800; % Frequency offset in Hz
initImp.pfo.PhaseOffset = 5;         % Phase offset in degrees
initoff = 0.15*samplesPerSymbol; % Static timing offset
stepsize = 20*1e-6;              % Timing drift in ppm, Max range is +/- 50 ppm
initImp.vdelay = (initoff:stepsize:initoff+stepsize* (длина (txWaveform)-1))';
initImp.dc = 20; % Percentage related to maximum amplitude value

% Pass generated BLE waveform through RF impairments
txImpairedWfm = helperBLEImpairmentsAddition (txWaveform, initImp);

Ослабленная поврежденная форма волны BLE

Получите значение потери на пути и ослабьте форму волны BLE, которой повреждают.

% Obtain the path loss value in dB
pldB = txPower-dBm2dBFactor+rxAntennaGain+txAntennaGain-measuredPowerVector;
plLinear = 10^(pldB/20); % Convert from dB to linear scale

% Attenuate BLE waveform
attenWaveform  = txImpairedWfm./plLinear;

Добавьте AWGN

Добавьте AWGN в ослабленную форму волны BLE.

% Add WGN to the attenuated BLE waveform
rxWaveform = awgn(attenWaveform,snrdB,'measured');

Результаты симуляции

Оцените и отобразите BER и расстояние между передатчиком и приемником путем обработки искаженной формы волны BLE через практический приемник.

Обработка приемника

Чтобы получить биты данных, передайте ослабленную, AWGN-искаженную форму волны BLE через практический приемник.

% Create and configure the receiver System objects 
initRxParams = helperBLEReceiverInit(phyMode,samplesPerSymbol,accessAdd);

% Recover data bits using practical receiver
[rxBits,accessAddress] = helperBLEPracticalReceiver(rxWaveform,initRxParams,chanIndex);

Оцените BER

Оцените значение BER на основе полученного и битов передаваемых данных.

% Obtain BER by comparing the transmitted and recovered bits
ber = [];
if(length(txBits) == length(rxBits))
    ber = (sum(xor(txBits,rxBits))/length(txBits));
end

Оцените расстояние

Оцените расстояние между передатчиком и приемником.

% Estimate the distance between the transmitter and the receiver based on the path loss value and the environment
if any(strcmp(pathLossModel,{'Free space','Log distance','Log normal shadowing'})) 
    
    % Center frequency is required only for these path loss models
    distance = helperBluetoothEstimateDistance(pathLossModel,pldB,fc);
else
    distance = helperBluetoothEstimateDistance(pathLossModel,pldB);  
end

Отображение результатов

Отобразите предполагаемые результаты и постройте спектр переданной и полученной формы волны BLE.

% Display estimated BER and distance between the transmitter and the receiver.
disp(['Input configuration: ', newline , '    PHY transmission mode: ', phyMode,....
    newline,'    Path loss model: ', pathLossModel]);
Input configuration: 
    PHY transmission mode: LE1M
    Path loss model: Free space
disp(['Estimated outputs: ', newline , '    Path loss : ', num2str(pldB), ' dB'....
    newline,'    Distance between the transmitter and receiver: ', num2str(distance), ' m', newline, ...
    '    BER: ', num2str(ber)]);
Estimated outputs: 
    Path loss : 55 dB
    Distance between the transmitter and receiver: 5.422 m
    BER: 0
% Plot the spectrum of the transmitted and received BLE waveform
specAnalyzer = dsp.SpectrumAnalyzer('NumInputPorts',2,'SampleRate',symbolRate*samplesPerSymbol,...
    'Title','Spectrum of Transmitted and Received BLE Signals',...
   'ShowLegend',true,'ChannelNames',{'Transmitted BLE signal','Received BLE signal'});
specAnalyzer(txWaveform,rxWaveform);
release(specAnalyzer);

Figure Spectrum Analyzer contains an axes object and other objects of type uiflowcontainer, uimenu, uitoolbar. The axes object with title Spectrum of Transmitted and Received BLE Signals contains 2 objects of type line. These objects represent Transmitted BLE signal, Received BLE signal.

Этот пример демонстрирует сквозную симуляцию BLE для различных режимов передачи PHY путем рассмотрения модели потери на пути, ухудшений RF и AWGN. Полученные результаты симуляции отображают потерю на пути, оцененное расстояние между передатчиком и приемником и BER. Спектр переданной и полученной формы волны BLE визуализируется при помощи спектра анализатор.

Приложение

Пример использует эти функции помощника:

Выбранная библиография

[1] Специальная группа (SIG) Bluetooth. "Спецификация Ядра Bluetooth". Версия 5.2. https://www.bluetooth.com.

[2] Модели Потери на пути, Используемые в Средстве оценки Области значений Bluetooth. Специальная группа (SIG) Bluetooth. https://www.bluetooth.com.

[3] Rappaport, Теодор. Радиосвязь – принципы и практика. Prentice Hall, 1996.

[4] Приоритетный План действий 2 Панели Функциональной совместимости Интеллектуальной сети NIST: Инструкции для Оценки Беспроводных Стандартов для Приложений Интеллектуальной сети. Национальный институт стандартов и технологий, американское Министерство торговли, 2014, https://nvlpubs.nist.gov/.

Для просмотра документации необходимо авторизоваться на сайте