После того, как вы создаете необходимые объекты настройки, описанные в, Создают Объекты Настройки, можно использовать объекты сгенерировать желаемую форму волны формата WLAN.
IEEE® 802.11™ [1] стандарты задает модуль данных о протоколе процедуры соответствия физического уровня (PLCP) (PPDU) как модуль передачи на физическом уровне. Для подробного описания структур поля PPDU для каждого формата передачи см. Пакетную Структуру WLAN.
Формат HE PPDU
В HE существует четыре поддерживаемые режима передачи: отдельный пользователь, отдельный пользователь расширил область значений, основанную на триггере, и многопользовательскую.
Формат DMG PPDU
В DMG существует три физических уровня (PHY) поддерживаемые схемы модуляции: управляйте, один поставщик услуг и OFDM.
Формат S1G PPDU
В S1G существует три режима передачи: S1G_LONG, S1G_SHORT и S1G_1M. Каждый режим передачи имеет определенную структуру преамбулы PPDU.
VHT, HT и Формат non-HT PPDUs
VHT, HT и non-HT PPDU форматы состоят из преамбулы и полей данных.
Используйте функции WLAN Toolbox™, чтобы сгенерировать полную форму волны PPDU или отдельные формы волны поля PPDU.
Сгенерируйте полную форму волны PPDU с помощью функции wlanWaveformGenerator
, чтобы заполнить все поля PPDU (преамбула и данные) в одном вызове. wlanWaveformGenerator
принимает, что немного потока, объект настройки формата (wlanHESUConfig
, wlanHEMUConfig
, wlanDMGConfig
, wlanS1GConfig
wlanVHTConfig
, wlanHTConfig
или wlanNonHTConfig
) и пары Name,Value
конфигурирует форму волны.
Сгенерируйте HE, DMG, S1G, VHT, HT-mixed и формы волны формата non-HT. Отличайтесь параметры конфигурации и постройте формы волны, чтобы подсветить различия в формах волны и частотах дискретизации.
В каждом разделе этого примера, вас:
Создайте специфичный для формата объект настройки.
Создайте вектор информационных битов для пакетной полезной нагрузки данных. Внутренне, циклы функции wlanWaveformGeneration
через вектор битов как много раз по мере необходимости, чтобы сгенерировать конкретное количество пакетов.
Сгенерируйте специфичную для формата форму волны и постройте ее. Для графического вывода, потому что никакая фильтрация не применяется к форме волны и уровню сверхдискретизации, 1, установите уровень выборки, равный пропускной способности канала.
Сгенерируйте форму волны формата HE отдельного пользователя
Создайте объект настройки HE отдельного пользователя и форму волны. Используя пары Name,Value
, задайте 4 пакета и 15 микросекунд времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
hesu = wlanHESUConfig bits = [1;0;0;1;1]; hesuWaveform = wlanWaveformGenerator(bits,hesu, ... 'NumPackets',4,'IdleTime',15e-6);
hesu = wlanHESUConfig with properties: ChannelBandwidth: 'CBW20' ExtendedRange: 0 NumTransmitAntennas: 1 NumSpaceTimeStreams: 1 SpatialMapping: 'Direct' PreHESpatialMapping: 0 STBC: 0 MCS: 0 DCM: 0 ChannelCoding: 'LDPC' APEPLength: 100 GuardInterval: 3.2000 HELTFType: 4 UplinkIndication: 0 BSSColor: 0 SpatialReuse: 0 TXOPDuration: 127 HighDoppler: 0
Постройте форму волны формата HE отдельного пользователя, масштабируя ось X относительно пропускной способности канала.
fs = 20e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(hesuWaveform)-1]/fs)*1e6; plot(time,abs(hesuWaveform)) xlabel ('Time (microseconds)'); ylabel('Magnitude');
График показывает четыре пакета формата HE отдельного пользователя с каждым пакетом, разделенным на 15 микросекунд времени простоя.
Сгенерируйте многопользовательскую форму волны формата HE
Создайте многопользовательский объект настройки HE и форму волны. Используя пары Name,Value
, задайте 3 пакета и 30 микросекунд времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
hemu = wlanHEMUConfig(192) bits = [1;0;0;1;1]; hemuWaveform = wlanWaveformGenerator(bits,hemu, ... 'NumPackets',3,'IdleTime',30e-6);
hemu = wlanHEMUConfig with properties: RU: {[1x1 wlanHEMURU]} User: {[1x1 wlanHEMUUser]} NumTransmitAntennas: 1 STBC: 0 GuardInterval: 3.2000 HELTFType: 4 SIGBCompression: 1 SIGBMCS: 0 SIGBDCM: 0 UplinkIndication: 0 BSSColor: 0 SpatialReuse: 0 TXOPDuration: 127 HighDoppler: 0 Read-only properties: ChannelBandwidth: 'CBW20' AllocationIndex: 192
Постройте многопользовательскую форму волны формата HE, масштабируя ось X относительно пропускной способности канала.
fs = 20e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(hemuWaveform)-1]/fs)*1e6; plot(time,abs(hemuWaveform)) xlabel ('Time (microseconds)'); ylabel('Magnitude');
График показывает три многопользовательских пакета формата HE с каждым пакетом, разделенным на 30 микросекунд времени простоя.
Сгенерируйте форму волны формата DMG
Создайте объект настройки DMG и форму волны. Используя пары Name,Value
, присвойте 13 для MCS, который задает форму волны OFDM, 4 пакета, и 2 микросекунды времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
dmg = wlanDMGConfig('MCS',13) bits = [1;0;0;1;1]; dmgWaveform = wlanWaveformGenerator(bits,dmg, ... 'NumPackets',4,'IdleTime',2e-6);
dmg = wlanDMGConfig with properties: MCS: 13 TrainingLength: 0 TonePairingType: 'Static' PSDULength: 1000 ScramblerInitialization: 2 AggregatedMPDU: 0 LastRSSI: 0 Turnaround: 0
Постройте форму волны формата DMG, масштабируя ось X относительно пропускной способности канала.
fs = 2640e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(dmgWaveform)-1]/fs)*1e6; plot(time,abs(dmgWaveform)) xlabel ('Time (microseconds)'); ylabel('Magnitude');
График показывает четыре пакета формата DMG с каждым пакетом, разделенным на 2 микросекунды времени простоя.
Сгенерируйте форму волны формата S1G
Создайте объект настройки S1G и форму волны. Используя пары Name,Value
, задайте пропускную способность канала на 4 МГц, 3 пакета, и 15 микросекунд времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
s1g = wlanS1GConfig('ChannelBandwidth','CBW4') bits = [1;0;0;1;1]; s1gWaveform = wlanWaveformGenerator(bits,s1g, ... 'NumPackets',3,'IdleTime',15e-6);
s1g = wlanS1GConfig with properties: ChannelBandwidth: 'CBW4' Preamble: 'Short' NumUsers: 1 NumTransmitAntennas: 1 NumSpaceTimeStreams: 1 SpatialMapping: 'Direct' STBC: 0 MCS: 0 APEPLength: 256 GuardInterval: 'Long' PartialAID: 37 UplinkIndication: 0 Color: 0 TravelingPilots: 0 ResponseIndication: 'None' RecommendSmoothing: 1 Read-only properties: ChannelCoding: 'BCC' PSDULength: 261
Постройте форму волны формата S1G, масштабируя ось X относительно пропускной способности канала.
fs = 4e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(s1gWaveform)-1]/fs)*1e6; plot(time,abs(s1gWaveform)) xlabel ('Time (microseconds)'); ylabel('Magnitude');
График показывает три пакета формата S1G с каждым пакетом, разделенным на 15 микросекунд времени простоя.
Сгенерируйте форму волны формата VHT
Создайте объект настройки VHT и форму волны. Используя пары Name,Value
, задайте 5 пакетов и 20 микросекунд времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
vht = wlanVHTConfig bits = [1;0;0;1;1]; vhtWaveform = wlanWaveformGenerator(bits,vht, ... 'NumPackets',5,'IdleTime',20e-6);
vht = wlanVHTConfig with properties: ChannelBandwidth: 'CBW80' NumUsers: 1 NumTransmitAntennas: 1 NumSpaceTimeStreams: 1 SpatialMapping: 'Direct' STBC: 0 MCS: 0 ChannelCoding: 'BCC' APEPLength: 1024 GuardInterval: 'Long' GroupID: 63 PartialAID: 275 Read-only properties: PSDULength: 1035
Постройте форму волны формата VHT, масштабируя ось X относительно пропускной способности канала.
fs = 80e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(vhtWaveform)-1]/fs)*1e6; plot(time,abs(vhtWaveform)) xlabel ('Time (microseconds)'); ylabel('Magnitude');
График показывает пять пакетов формата VHT с каждым пакетом, разделенным на 20 микросекунд времени простоя.
Сгенерируйте форму волны формата HT
Создайте объект настройки HT и форму волны. Используя пары Name,Value
, задайте 5 пакетов и 30 микросекунд времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
ht = wlanHTConfig bits = [1;0;0;1;1]; htWaveform = wlanWaveformGenerator(bits,ht, ... 'NumPackets',5,'IdleTime',30e-6);
ht = wlanHTConfig with properties: ChannelBandwidth: 'CBW20' NumTransmitAntennas: 1 NumSpaceTimeStreams: 1 SpatialMapping: 'Direct' MCS: 0 GuardInterval: 'Long' ChannelCoding: 'BCC' PSDULength: 1024 AggregatedMPDU: 0 RecommendSmoothing: 1
Постройте форму волны формата HT, масштабируя ось X относительно пропускной способности канала.
fs = 20e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(htWaveform)-1]/fs)*1e6; plot(time,abs(htWaveform)) xlabel ('Time (microseconds)'); ylabel('Magnitude');
График показывает пять пакетов формата HT с 30 микросекундами времени простоя, разделяя каждый пакет.
Сгенерируйте формат Non-HT форма волны DSSS
Создайте настройку non-HT, возражают и генерируют формат non-HT форма волны DSSS со скоростью передачи данных на 2 Мбит/с. Используя пары Name,Value
, задайте 2 пакета и 5 микросекунд времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
nht = wlanNonHTConfig('Modulation','DSSS','DataRate','2Mbps') bits = [1;0;0;1;1]; nhtDSSSWaveform = wlanWaveformGenerator(bits,nht, ... 'NumPackets',2,'IdleTime',5e-6);
nht = wlanNonHTConfig with properties: Modulation: 'DSSS' DataRate: '2Mbps' Preamble: 'Long' LockedClocks: 1 PSDULength: 1000
Постройте Формат non-HT форма волны DSSS, масштабируя ось X относительно пропускной способности канала. Как задано в IEEE 802.11-2012, Раздел 17.1.1, пропускная способность канала составляет 11 МГц для DSSS.
fs = 11e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(nhtDSSSWaveform)-1]/fs)*1e6; plot(time,real(nhtDSSSWaveform),'.') xlabel ('Time (microseconds)'); ylabel('Re[nhtDSSSWaveform]'); axis([8190,8200,-1.1,1.1])
Демонстрационные значения в модуляции DSSS –1 или 1. График показывает действительные значения для раздела формы волны, которая включает заключительную часть первого пакета, период неактивности с 5 микросекундами и начало второго пакета для формата non-HT, DSSS модулировал форму волны.
Сгенерируйте формат Non-HT форма волны OFDM
Создайте объект настройки non-HT и форму волны. Используя пары Name,Value
, задайте 4 пакета и 45 микросекунд времени простоя. Отобразитесь настройка возражают и осматривают ее свойства и настройки.
nht = wlanNonHTConfig bits = [1;0;0;1;1]; nhtWaveform = wlanWaveformGenerator(bits,nht, ... 'NumPackets',4,'IdleTime',45e-6);
nht = wlanNonHTConfig with properties: Modulation: 'OFDM' ChannelBandwidth: 'CBW20' MCS: 0 PSDULength: 1000 NumTransmitAntennas: 1
Постройте формат non-HT форма волны OFDM, масштабируя ось X относительно пропускной способности канала.
fs = 20e6; % Set sampling frequency equal to the channel bandwidth time = ([0:length(nhtWaveform)-1]/fs)*1e6; plot(time,abs(nhtWaveform)) xlabel ('Time (microseconds)'); ylabel('Magnitude');
График показывает четыре формата non-HT, OFDM модулировал пакеты с 45 микросекундами времени простоя, разделяя каждый пакет.
Можно также создать VHT, HT или non-HT PPDU форма волны путем генерации и конкатенации форм волны для отдельных полей PPDU.
Формат PPDU | Отдельные полевые функции |
---|---|
VHT | wlanLSTF , wlanLLTF , wlanLSIG , wlanVHTSTF , wlanVHTLTF , wlanVHTSIGA , wlanVHTSIGB и wlanVHTData |
HT | wlanLSTF , wlanLLTF , wlanLSIG , wlanHTSTF , wlanHTLTF , wlanHTSIG и wlanHTData |
Non-HT для модуляции OFDM | wlanLSTF , wlanLLTF , wlanLSIG и wlanNonHTData |
При генерации отдельных форм волны поля PPDU, позволяет вам экспериментировать с отдельными полями, не генерируя целый PPDU.
Свойства wlanHTConfig | Свойства wlanNonHTConfig | Свойства wlanRecoveryConfig | Свойства wlanVHTConfig
[1] Станд. IEEE 802.11-2016 Адаптированных и переизданные с разрешением от IEEE. Авторское право IEEE 2016. Все права защищены.