802.11 генерации кадра "неисправность" OFDM

В этом примере показано, как сгенерировать пакеты, содержащие кадры "неисправность" MAC, подходящие для основополосной симуляции или беспроводной передачи с помощью платформы SDR.

Введение

Этот пример создает кадр "неисправность" IEEE® 802.11™ как описано в разделе 9.3.3.3 из [1]. Устройство WiFi может использоваться, чтобы просмотреть переданное использование пакета маяка оборудование SDR как показано на рисунке ниже.

Кадр "неисправность" является типом системы координат управления, он идентифицирует основную услугу установлена (BSS), сформированную многими 802,11 устройства. Точка доступа BSS периодически передает кадр-маяк, чтобы установить и настроить сеть. Кадр "неисправность" состоит из заголовка MAC, тела кадра "неисправность" и допустимой последовательности проверки системы координат (FCS). Тело кадра "неисправность" содержит информационные поля, который позволяет станциям сопоставлять с сетью. Кадр "неисправность" WLAN создается с помощью wlanMACFrame функция. Кадр "неисправность" закодирован и модулировал использование wlanWaveformGenerator функция, чтобы создать основополосный пакет маяка. В этом примере сгенерированная форма волны может быть:

  • Сохраненный в основополосном формате файла. Формат файла может использоваться с примером 802.11 Приемника Маяка OFDM с Собранными Данными, которые выполняют пакетное декодирование маяка и описывают обработку приемника.

  • Переданный беспроводной. Пакет маяка является upconverted для передачи RF с помощью Xilinx® Находящееся в Zynq Радио-оборудование SDR. Радио-оборудование позволяет форме волны быть переданной беспроводная.

Чтобы передать беспроводной маяк, Xilinx, находящийся в Zynq радио-пакет поддержки требуется. Это может быть установлено с помощью Add-On Explorer. Больше информации о платформах SDR может быть найдено здесь.

Setup в качестве примера

Пакет маяка может быть записан в основополосный файл и передал использование платформы SDR. Чтобы передать маяк с помощью платформы SDR устанавливает useSDR к истине. Чтобы записать в основополосный файл устанавливает saveToFile к истине.

useSDR = false;
saveToFile = false;

Создайте кадр "неисправность" IEEE 802.11

Пакеты маяка периодически передаются, как задано к Целевому времени передачи маяка (TBTT) в поле интервала маяка. Интервал маяка представляет количество Единиц измерения времени (TUs) между TBTT, где 1 TU представляет 1 024 микросекунды. Интервал маяка 100 TU приводит к 102,4 временным интервалам миллисекунд между последовательными маяками. Кадр "неисправность" сгенерирован с помощью wlanMACFrame функция. Эта функция использует объект wlanMACFrameConfig настройки системы координат MAC. Этот объект принимает wlanMACManagementConfig как свойство сконфигурировать тело кадра "неисправность".

SSID = 'TEST_BEACON'; % Network SSID
beaconInterval = 100; % In Time units (TU)
band = 5;             % Band, 5 or 2.4 GHz
chNum = 52;           % Channel number, corresponds to 5260MHz
bitsPerByte = 8;      % Number of bits in 1 byte

% Create Beacon frame-body configuration object
frameBodyConfig = wlanMACManagementConfig;
frameBodyConfig.BeaconInterval = beaconInterval;  % Beacon Interval in Time units (TUs)
frameBodyConfig.SSID = SSID;                      % SSID (Name of the network)
dsElementID = 3;                                  % DS Parameter IE element ID
dsInformation = dec2hex(chNum, 2);                % DS Parameter IE information
frameBodyConfig = frameBodyConfig.addIE(dsElementID, dsInformation);  % Add DS Parameter IE to the configuration

% Create Beacon frame configuration object
beaconFrameConfig = wlanMACFrameConfig('FrameType', 'Beacon');
beaconFrameConfig.ManagementConfig = frameBodyConfig;

% Generate Beacon frame bits
[beacon, mpduLength] = wlanMACFrame(beaconFrameConfig, 'OutputFormat', 'bits');

% Calculate center frequency for the given band and channel number
fc = helperWLANChannelFrequency(chNum, band);

Создайте пакет маяка IEEE 802.11

Пакет маяка синтезируется с помощью wlanWaveformGenerator с объектом настройки формата non-HT. В этом примере объект сконфигурирован, чтобы сгенерировать пакет маяка пропускной способности на 20 МГц, 1 антенны передачи и уровня BPSK 1/2 (MCS 0).

cfgNonHT = wlanNonHTConfig;           % Create a wlanNonHTConfig object
cfgNonHT.PSDULength = mpduLength;     % Set the PSDU length in bytes

% The idle time is the length in seconds of an idle period after each
% generated packet. The idle time is set to the beacon interval.
txWaveform = wlanWaveformGenerator(beacon, cfgNonHT, 'IdleTime', beaconInterval*1024e-6);
Rs = wlanSampleRate(cfgNonHT);           % Get the input sampling rate

Сохраните форму волны в файл

Этот раздел сохраняет форму волны в основополосном файле с помощью comm.BasebandFileWriter.

if saveToFile
    % The waveform is stored in a baseband file
    BBW = comm.BasebandFileWriter('nonHTBeaconPacket.bb', Rs, fc); %#ok<UNRCH>
    BBW(txWaveform);
    release(BBW);
end

Для получения информации об автоматическом обнаружении и синхронизации формы волны, сохраненной в основополосном формате файла, см. 802.11 Приемника Маяка OFDM с Собранными Данными.

Передача с устройством SDR

Этот раздел демонстрирует передачу пакета маяка беспроводное использование устройства SDR.

if useSDR
    % The SDR platform used must support |transmitRepeat|. Valid platforms
    % are 'AD936x', 'E3xx', and 'Pluto'.
    sdrPlatform = 'AD936x'; %#ok<UNRCH>
    tx = sdrtx(sdrPlatform);
    osf = 2; % OverSampling factor
    tx.BasebandSampleRate = Rs*osf;
    % The center frequency is set to the corresponding channel number
    tx.CenterFrequency = fc;
end

Усиление передатчика tx.Gain параметр управляет усилителем мощности в радио. Этот параметр используется, чтобы повредить качество формы волны, можно изменить этот параметр, чтобы уменьшать качество передачи и повредить сигнал. Им предлагают значения, в зависимости от вашей настройки антенны, вам, вероятно, придется настроить эти значения. Предложенные значения:

  1. Установите на 0 для увеличенного усиления (0dB)

  2. Установите на-10 для усиления по умолчанию (-10dB)

  3. Установите на-20 для уменьшаемого усиления (-20dB)

transmitRepeat функционируйте передает основополосную форму волны платформе SDR и хранит выборки сигнала в аппаратной памяти. Пример затем неоднократно передает эту форму волны, беспроводную, пока метод релиза объекта передачи не называется. Сообщения отображены в командном окне, чтобы подтвердить, что передача запустилась успешно.

if useSDR
    % Set transmit gain
    tx.Gain = 0;  %#ok<UNRCH>
    % Resample transmit waveform
    txWaveform = resample(txWaveform, osf, 1);
    % Transmit over-the-air
    transmitRepeat(tx, txWaveform);
end

Заключение и дальнейшее исследование

Этот пример продемонстрировал, как сгенерировать пакет маяка для стандарта IEEE 802.11. Wi-Fi™ устройство может использоваться, чтобы просмотреть переданное использование пакета маяка оборудование SDR. В качестве альтернативы сохраненный основополосный пакет маяка может быть обработан, чтобы восстановить переданную информацию с помощью примера 802.11 Приемника Маяка OFDM с Собранными Данными.

Приложение

Этот пример использует следующую функцию помощника:

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

  1. Станд. IEEE 802.11™-2016 Стандарт IEEE для Информационных технологий - Телекоммуникаций и обмена информацией между системами - Локальными сетями и городскими компьютерными сетями - Конкретными требованиями - Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования.