В этом примере показано, как симулировать многопутевые исчезающие каналы, заданные для GSM/EDGE [1 2], CDMA [3] и беспроводные стандарты WiMAX [4]. Пример использует Рэлея и MIMO, исчезающий Система канала objects™ от Communications Toolbox™, чтобы симулировать и визуализировать каналы.
GSM (Глобальная Система для Мобильной связи) является глобальным стандартом для мобильной связи 2G. Многопутевой исчезающий канал для GSM был задан в [1 2] для различных коммуникационных сценариев включая сельскую местность (ПОТЯГИВАЮТСЯ), холмистый ландшафт (HTx), городской район (СМОКИНГ). Каждый сценарий был присвоен определенный профиль задержки степени (PDP) и Доплеровский спектр. В этом примере мы симулируем холмистый сценарий ландшафта (HTx) с 12 касаниями. Мы передаем модулируемые сигналы GMSK через исчезающий канал и давайте наблюдать его импульсную характеристику.
% Set random number generator for repeatability rng('default');
Создайте модулятор GMSK с помощью comm.GMSKModulator
объект и использование это, чтобы модулировать случайным образом сгенерированные биты. Этот объект состоит в том, чтобы проиллюстрировать, что модуляция GMSK используется в системе GSM.
gmskMod = comm.GMSKModulator( ... 'BitInput', true, ... 'SamplesPerSymbol', 8); % Modulate random bits using the GMSK object x = gmskMod(randi([0 1], 1e4, 1));
Примите мобильную скорость на уровне 120 км/ч. Вычислите эффект Доплера в несущей частоте 1,8 ГГц.
v = 120*1e3/3600; % Mobile speed (m/s) fc = 1.8e9; % Carrier frequency fd = v*fc/physconst('lightspeed'); % Maximum Doppler shift
Чтобы симулировать исчезающий канал для HTx, мы можем сконфигурировать comm.RayleighChannel
объект после спецификации PDP в [1 2]. В качестве альтернативы мы можем использовать stdchan
функция, чтобы создать желаемый comm.RayleighChannel
объект, учитывая сценарий ввел 'gsmHTx12c1'. Таким образом, мы не должны обращаться к [1 2] для PDP и Доплеровских технических требований спектра.
Rsym = 270.833e3; % GSM symbol rate Rsamp = gmskMod.SamplesPerSymbol * Rsym; % GSM sample rate gsmChan = stdchan('gsmHTx12c1', Rsamp, fd);
Мы включаем визуализацию импульсной характеристики для объекта канала и отправляем, GMSK модулировал данные через него. Можно заметить, что путь (касание) задержки длится более чем 5 выборок. Первые 7 и последние 5 касаний могут быть сгруппированы в два различных кластера. В этом смысле канал характеризует два доминирующих пути с передатчика на получатель с рассеиванием. Можно также заметить, что импульсная характеристика изменяется довольно быстро на этой мобильной скорости 120 км/ч.
gsmChan.Visualization = 'Impulse response';
gsmChan(x);
CDMA (Кодовое разделение Несколько доступ) является стандартом для мобильной связи 3G. Как GSM, многопутевой исчезающий канал для CDMA был задан в [3] для различных коммуникационных сценариев с различным PDPs и Доплеровскими спектрами. В этом примере мы симулируем типичный городской сценарий (СМОКИНГ) с низкой мобильной скоростью и визуализируем частотную характеристику канала. cdma2000ForwardReferenceChannels
и cdma2000ForwardWaveformGenerator
функции используются, чтобы сконфигурировать и симулировать форму волны CDMA 2000, которая впоследствии передается через исчезающий канал.
% Configure a CDMA waveform and change the packet length config = cdma2000ForwardReferenceChannels('ALL-RC3'); config.NumChips = 1e4; % Generate a waveform waveform = cdma2000ForwardWaveformGenerator(config);
Выведите частоту дискретизации канала из настройки формы волны. Если поле SpreadingRate является 'SR1', оно соответствует 1.2288 формам волны Макпс. Если это - 'SR3', это соответствует 3.6864 формам волны Макпс.
Rsprd = str2double(config.SpreadingRate(3)) * 1.2288e6; Rsamp = Rsprd * config.OversamplingRatio; % Assume a human walking speed which is about 5 km/h. Calculate the Doppler % shift at the carrier frequency of 1.9 GHz. v = 5*1e3/3600; % Mobile speed (m/s) fc = 1.9e9; % Carrier frequency fd = v*fc/physconst('lightspeed'); % Maximum Doppler shift
Снова, сконфигурируйте канал CDMA для СМОКИНГА с помощью stdchan
функция. Включите визуализацию частотной характеристики канала и передайте форму волны через него. Можно наблюдать очевидную селективность частоты канала. Частотная характеристика медленно варьируется на этой низкой мобильной скорости 5 км/ч.
cdmaChan = stdchan('cdmatux', Rsamp, fd); cdmaChan.Visualization = 'Frequency response'; y = cdmaChan(waveform);
WiMAX (IEEE® 802.16), модели канала [4] для фиксированных приложений беспроводной связи предложены для сценариев, где радиус ячейки меньше 10 км, направленные антенны в получателе, установлены under-the-eaves/windows или на крыше, и антенны базовой станции (BS) составляют 15 - 40 м в высоте. Модели канала включают набор моделей пути потерь включая затенение (пригородный, городской) и многопутевой исчезающей модели, которая описывает многопутевой профиль задержки, распределение K-фактора и Доплеровский спектр. Фактор сокращения усиления антенны, из-за использования направленных антенн, также характеризуется.
Этот пример использует MIMO многопутевая исчезающая Система канала object™ comm.MIMOChannel
с двумя антеннами передачи каждый получает антенну и округленную Доплеровскую структуру спектра. Модифицированные модели канала Временного Стэнфордского университета (SUI) состоят из набора 6 типичных каналов, используемых, чтобы симулировать модели канала IEEE 802.16 (более в частности 2 004 версии стандарта для фиксированных приложений беспроводной связи). Они предложены для сценария где: размер ячейки составляет 7 км, высота антенны BS составляет 30 м, получить высота антенны составляет 6 м, ширина луча антенны BS является 120 градусами, получить антенна является или всенаправленной или направленной (30 градусов), и только вертикальная поляризация используется.
Каждый изменил модель канала SUI, имеет три касания. Каждое касание характеризуется относительной задержкой (относительно первой задержки пути), относительная степень, K-фактор Rician и максимальный эффект Доплера. Два набора относительных степеней заданы для каждой модели канала: один для всенаправленной антенны, и один для 30 степени направленная антенна. Кроме того, для каждого набора относительных степеней, два различных K-фактора заданы, K-фактор для 90%-й зоны покрытия сотовой связи и K-фактор для 75%-й зоны покрытия сотовой связи. Следовательно, каждая из измененных моделей канала SUI 6 включает параметры для четырех отличных сценариев. Каждый изменил модель канала SUI, далее присвоен корреляция антенны, заданная как коэффициент корреляции конверта между сигналами, полученными в различных элементах антенны.
Код ниже создает MIMO, исчезающий Системный объект канала согласно модифицированной модели канала SUI-1 для всенаправленной антенны и 90%-й зоны покрытия сотовой связи.
Модель канала имеет 3 пути: первым путем является Rician, в то время как остающимися двумя является Рейли. Каждый путь имеет округленный Доплеровский спектр для своего рассеянного компонента: параметры столь же заданы в доплеровской ('Округленной') структуре. В то время как различные максимальные эффекты Доплера заданы для каждого пути в [4], мы используем максимальное значение эффектов Доплера для всех путей.
Мы используем 2 антенны передачи, и 1 получают антенну. Подобно Приложению B [4], коэффициент корреляции между двумя ссылками на каждый путь взят равный антенне пространственная корреляция. Коэффициент корреляции 0.7.
Частота дискретизации для системы WiMAX 1.429, 2.857, 5.714, 11.429 или 22,857 МГц. На таких уровнях с небольшим эффектом Доплера нам нужны много выборок и длинного времени симуляции, чтобы достаточно показать канал статистические характеристики. Избегать, чтобы, мы произвольно выбрали меньшую частоту дискретизации 0,1 МГц. Можно увеличить частоту дискретизации, Rsamp
, и количество выборок, Ns
, одновременно видеть подобные статистические результаты.
Rsamp = 0.1e6; Ns = 3e6; wimaxChan = comm.MIMOChannel( ... 'SampleRate', Rsamp, ... 'PathDelays', [0 0.4 0.9]*1e-6, ... 'AveragePathGains', [0 -15 -20], ... 'FadingDistribution', 'Rician', ... 'KFactor', 4, ... 'MaximumDopplerShift', .5, ... 'DopplerSpectrum', doppler('Rounded'), ... 'TransmitCorrelationMatrix', [1 0.7; 0.7 1], ... 'ReceiveCorrelationMatrix', 1, ... 'PathGainsOutputPort', true);
Код ниже симулирует модифицированную модель канала SUI-1 с модулируемым входом системы координат длинного QPSK.
Nt = size(wimaxChan.TransmitCorrelationMatrix, 1); x = pskmod(randi([0 3], Ns, Nt), 4); [~, g] = wimaxChan(x);
Доплеровский спектр 1-й ссылки второго пути оценен от усилений сложного контура и построен.
figure; win = hamming(Ns/5); Noverlap = Ns/10; pwelch(g(:,2,1),win,Noverlap,[],Rsamp,'centered') axis([-0.1/10 0.1/10 -80 10]); legend('Simulation');
Теоретический округленный Доплеровский спектр наложен на предполагаемом Доплеровском спектре. Мы наблюдаем хорошую подгонку между ними.
fd = wimaxChan.MaximumDopplerShift; f = -fd:0.01:fd; a = wimaxChan.DopplerSpectrum.Polynomial; % Parameters of the rounded Doppler spectrum Sd = 1/(2*fd*(a(1)+a(2)/3+a(3)/5))*(a(1)+a(2)*(f/fd).^2+a(3)*(f/fd).^4); Sd = Sd*10^(wimaxChan.AveragePathGains(2)/10); % Scaling by average path power hold on; plot(f(Sd>0)/1e3,10*log10(Sd(Sd>0)),'k--'); legend('Simulation','Theory');
Доплеровский спектр для 2-й ссылки 2-го пути также оценивается и по сравнению с теоретическим спектром. Мы также наблюдаем хорошую подгонку между ними.
figure; pwelch(g(:,2,2),win,Noverlap,[],Rsamp,'centered') axis([-0.1/10 0.1/10 -80 10]); legend('Simulation'); hold on; plot(f(Sd>0)/1e3,10*log10(Sd(Sd>0)),'k--'); legend('Simulation','Theory');
Для каждого пути мы строим исчезающие формы волны конверта обеих ссылок передачи. Мы можем наблюдать корреляцию между исчезающими конвертами.
figure; semilogy(abs(g(:,1,1)),'b'); hold on; grid on; semilogy(abs(g(:,1,2)),'r'); legend('First transmit link','Second transmit link'); title('Fading envelopes for two transmit links of Path 1'); figure; semilogy(abs(g(:,2,1)),'b'); hold on; grid on; semilogy(abs(g(:,2,2)),'r'); legend('First transmit link','Second transmit link'); title('Fading envelopes for two transmit links of Path 2'); figure; semilogy(abs(g(:,3,1)),'b'); hold on; grid on; semilogy(abs(g(:,3,2)),'r'); legend('First transmit link','Second transmit link'); title('Fading envelopes for two transmit links of Path 3');
Мы вычисляем пространственные корреляционные матрицы для каждого пути. Мы замечаем, что они показывают соответствие с теоретическими значениями Rt. Обратите внимание на то, что corrcoef
функциональная оценка может быть улучшена если Ns
увеличен.
TxCorrMatrixPath1 = corrcoef(g(:,1,1),g(:,1,2)).' TxCorrMatrixPath2 = corrcoef(g(:,2,1),g(:,2,2)).' TxCorrMatrixPath3 = corrcoef(g(:,3,1),g(:,3,2)).'
TxCorrMatrixPath1 = 1.0000 + 0.0000i 0.7537 + 0.0388i 0.7537 - 0.0388i 1.0000 + 0.0000i TxCorrMatrixPath2 = 1.0000 + 0.0000i 0.7605 + 0.2331i 0.7605 - 0.2331i 1.0000 + 0.0000i TxCorrMatrixPath3 = 1.0000 + 0.0000i 0.7113 + 0.1282i 0.7113 - 0.1282i 1.0000 + 0.0000i
3GPP TS 05.05 V8.20.0 (2005-11): Проект Партнерства третьего поколения; Technical Specification Group Радио GSM/EDGE Сеть Access™; Радио-передача и прием (Релиз 1999).
3GPP TS 45.005 V7.9.0 (2007-2): Проект Партнерства третьего поколения; Technical Specification Group Сеть радиодоступа GSM/EDGE; Радио-передача и прием (Релиз 7).
3GPP TR 25.943 V6.0.0 (2004-12): Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group; аспекты Развертывания (Релиз 6).
IEEE 802.16 Широкополосная Рабочая группа Беспроводного доступа, "Модели канала для фиксированных приложений беспроводной связи", IEEE 802.16a-03/01, 2003-06-27.