В этом примере показано, как сгенерировать пакеты, содержащие кадры "неисправность" 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 может быть найдено здесь.
Пакет маяка может быть записан в основополосный файл и передал использование платформы SDR. Чтобы передать маяк с помощью платформы SDR устанавливает useSDR
к истине. Чтобы записать в основополосный файл устанавливает saveToFile
к истине.
useSDR = false; saveToFile = false;
Пакеты маяка периодически передаются, как задано к Целевому времени передачи маяка (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);
Сверхдискретизированный пакет маяка синтезируется с помощью wlanWaveformGenerator
с объектом настройки формата non-HT. В этом примере объект сконфигурирован, чтобы сгенерировать пакет маяка полосы пропускания на 20 МГц, 1 передающей антенны и уровня BPSK 1/2 (MCS 0). Время простоя является длиной в секундах периода неактивности после каждого сгенерированного пакета. Время простоя установлено в интервал маяка.
cfgNonHT = wlanNonHTConfig; % Create a wlanNonHTConfig object cfgNonHT.PSDULength = mpduLength; % PSDU length in bytes osf = 2; % Oversampling factor txWaveform = wlanWaveformGenerator(beacon, cfgNonHT, 'OversamplingFactor', osf, 'IdleTime', beaconInterval*1024e-6); Rs = wlanSampleRate(cfgNonHT, 'OversamplingFactor', osf); % Get the 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.
if useSDR % The SDR platform used must support transmitRepeat. Valid platforms % are 'AD936x' or 'FMCOMMS5'. sdrPlatform = 'AD936x'; %#ok<UNRCH> tx = sdrtx(sdrPlatform); tx.BasebandSampleRate = Rs; % The center frequency is set to the corresponding channel number tx.CenterFrequency = fc; end
Усиление передатчика tx.Gain
параметр управляет усилителем мощности в радио. Этот параметр используется, чтобы повредить качество формы волны, можно изменить этот параметр, чтобы уменьшать качество передачи и повредить сигнал. Им предлагают значения, в зависимости от вашей настройки антенны, вам, вероятно, придется настроить эти значения. Предложенные значения:
Установите на 0 для увеличенного усиления (0dB)
Установите на-10 для усиления по умолчанию (-10dB)
Установите на-20 для уменьшаемого усиления (-20dB)
transmitRepeat
функционируйте передает основополосную форму волны платформе SDR и хранит выборки сигнала в аппаратной памяти. Пример затем неоднократно передает эту форму волны, беспроводную, пока метод релиза объекта передачи не называется. Сообщения отображены в командном окне, чтобы подтвердить, что передача запустилась успешно.
if useSDR % Set transmit gain tx.Gain = 0; %#ok<UNRCH> % Transmit over-the-air transmitRepeat(tx, txWaveform); end
Этот пример продемонстрировал, как сгенерировать пакет маяка для стандарта IEEE 802.11. Wi-Fi™ устройство может использоваться, чтобы просмотреть переданное использование пакета маяка оборудование SDR. В качестве альтернативы сохраненный основополосный пакет маяка может быть обработан, чтобы восстановить переданную информацию с помощью примера 802.11 Приемника Маяка OFDM с Собранными Данными.
Связанные примеры:
Станд. IEEE 802.11™-2016 Стандарт IEEE для Информационных технологий - Телекоммуникаций и обмена информацией между системами - Локальными сетями и городскими компьютерными сетями - Конкретными требованиями - Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования.