Этот пример пользуется Библиотекой Communications Toolbox™ для Протокола Bluetooth®, чтобы выполнить сквозную симуляцию Bluetooth низкой энергии (BLE) для различного физического уровня BLE (PHY) режимы передачи в присутствии модели пути потерь, нарушений радио-фронтенда (RF) и аддитивного белого Гауссова шума (AWGN). Результаты симуляции показывают ориентировочную стоимость частоты ошибок по битам (BER), потери пути и расстояния между передатчиком и приемником.
Технические требования Ядра 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.
Потеря пути или затухание пути являются снижением в плотности энергии данного сигнала, когда это распространяет с передатчика на приемник через пробел. Эта плотность снижения мощности происходит естественно по расстоянию и повлиялась препятствиями, существующими в среде, в которой передается сигнал. Потеря пути обычно описывается в децибелах (дБ) и вычисляется как:
.
В этом уравнении,
потеря пути в дБ.
переданная степень сигнала в дБ.
полученная степень сигнала в дБ.
Модели пути потерь описывают затухание сигнала между передатчиком и приемником на основе расстояния распространения и других параметров, таких как частота, длина волны, экспонента пути потерь и усиления антенны. Пример рассматривает эти модели пути потерь:
Потеря пути свободного пространства является затуханием силы сигнала между передатчиком и приемником вдоль пути к углу обзора (LoS) через свободное пространство (обычно воздух), исключая эффект препятствий в пути. Потеря пути свободного пространства вычисляется как:
.
В этом уравнении,
расстояние между передатчиком и приемником.
длина волны сигнала.
Модель пути логарифмического расстояния потерь отражает потерю пути, с которой сигнал сталкивается во внутренней среде, такой как создание. Это вычисляется как:
.
В этом уравнении,
потеря пути на ссылочном расстоянии .
расстояние между передатчиком и приемником.
ссылочное расстояние.
экспонента пути потерь.
Логарифмически нормальная модель затенения является расширением модели пути логарифмического расстояния потерь. В отличие от модели логарифмического расстояния, логарифмически нормальная модель затенения рассматривает то, что помеха окружающей среды может весьма отличаться в двух других местах, имеющих то же разделение приемника передатчика. Измерения показывают на любом расстоянии приемника передатчика, , потеря пути в конкретном местоположении обычно является случайным и распределенным журналом (в дБ) о среднем зависимом значении расстояния. Потеря пути вычисляется как:
.
В этом уравнении,
потеря пути на ссылочном расстоянии .
расстояние между передатчиком и приемником.
ссылочное расстояние.
экспонента пути потерь.
нормальная или Гауссова случайная переменная с нулевым средним значением, отражая затухание, вызванное плоским исчезновением.
Наземная модель отражения 2D луча является радио-моделью распространения, которая оценивает потерю пути между передатчиком и приемником путем рассмотрения этих двух компонентов сигнала: LoS и компонент отражаются от земли. Когда высоты антенны передатчика и приемника приблизительно подобны, и расстояние между антеннами является очень большим относительно высоты антенн, затем потеря пути вычисляется как:
.
Потеря пути в логарифмическом масштабе вычисляется как:
.
В этом уравнении,
расстояние между передатчиком и приемником.
продукт усилений антенны.
высота передатчика.
высота приемника.
Национальный институт стандартов и технологий (NIST) провел исследования для внутреннего к внутреннему, вне помещения к наружному, и вне помещения к внутренним путям к распространению и вывел эти уравнения для вычисления потери пути:
В этих уравнениях,
потеря пути на ссылочном расстоянии .
, экспоненты пути потерь.
расстояние между передатчиком и приемником.
ссылочное расстояние, принятое, чтобы быть 1 метр в симуляциях.
точка останова, откуда экспонента пути потерь настраивает к .
Пример рассматривает эти значения для различных сред.
Большинство этих измерений для задачи NIST PAP02 6 моделей канала было проведено с передатчиками и приемниками, расположенными в прихожих с расстояниями в пределах от от 5 м до 45 м.
Степень передачи является степенью сигнала радиочастоты, сгенерированного передатчиком. Увеличение степени передачи увеличивает вероятность, что сигнал может быть передан по более долгим расстояниям. Bluetooth поддерживает степень передачи от-20 dBm (0,01 мВт) к 20 dBm (100 мВт).
Усиление антенны является фактором, которым антенна улучшает общую излученную степень. Разработчики Bluetooth могут принять решение реализовать множество опций антенны. Bluetooth-устройства обычно достигают усиления антенны в диапазоне от-10 dBi до 10 dBi.
Сквозные симуляции BLE PHY оценивают BER и расстояние между передатчиком и приемником путем считания определенной модели пути потерь с нарушениями RF и AWGN добавленной к пакетам передачи.
Для данного набора параметров симуляции получите отношение сигнал-шум (SNR) в приемнике путем принятия фиксированной шумовой фигуры. Для полученного значения ОСШ включая потерю пути сгенерируйте форму волны BLE с помощью bleWaveformGenerator
функция. Исказите сгенерированную форму волны нарушениями RF и AWGN. Каждый пакет искажен этими нарушениями RF:
DC возмещен
Несущая частота возмещена
Фаза Carrier возмещена
Синхронизация дрейфа
Шумные пакеты обрабатываются через практический приемник BLE, который выполняет эти операции:
Автоматическое управление усилением (AGC)
Удаление DC
Несущая частота возместила коррекцию
Согласованная фильтрация
Пакетное обнаружение
Синхронизация выявления ошибок
Демодуляция и декодирование
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 с помощью нарушений RF, потери пути и AWGN.
Нарушения 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, которой повреждают.
% 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 в ослабленную форму волны 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 на основе полученного и битов передаваемых данных.
% 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 визуализируется при помощи спектра анализатор.
Пример использует эти функции помощника:
helperBluetoothEstimateDistance.m: Вычисляет расстояние между передатчиком и приемником на основе полученной потери пути и принятой среды.
helperBLEImpairmentsAddition.m: Добавляют нарушения RF к форме волны BLE.
helperBLEPracticalReceiver.m: Демодулирует и декодирует полученную форму волны BLE.
helperBLEReceiverInit.m: Инициализирует параметры приемника BLE.
helperBLEImpairmentsInit.m: Инициализирует параметры нарушения RF.
[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/.