Сквозная симуляция 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);

Этот пример демонстрирует сквозную симуляцию 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/.

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