В этом примере показано, как планировать ссылку фиксированного беспроводного доступа (FWA) по местности с помощью 5G технологий. FWA является вариантом использования для 5G, чтобы разрешить широкополосное обслуживание в домах или на предприятиях, где кабельные услуги либо недоступны, либо недостаточно подходят. FWA соединяет базовую станцию с фиксированным беспроводным терминалом (FWT) пользователя [1]. На высоких частотах, требующихся для 5G, повреждений местности и пути, такие как листва и погода играют важную роль в определении успеха ссылки.
Пример создает базовую станцию и несколько узлов приемника в пригородном окружении, размещая антенны для достижения видимости линии визирования по промежуточной местности. Многопользовательская система с несколькими входами, несколькими выходами (MU-MIMO) с антеннами с высоким усилением разработана с использованием Antenna Toolbox™ и Phased Array System Toolbox™. Интенсивность сигнала в местах приемника оценивают для двух частот при наличии ослаблений потерь пути.
Создайте узел передатчика на Южной горе Унканоонук в Гоффстауне, штат Нью-Гемпшир, США. Гора является домом для нескольких передающих средств, которые обслуживают этот район. Определите сайт передатчика, чтобы представлять базовую станцию, передающую на 28 ГГц с 1 Вт степени. Отобразите сайт в Средство Просмотра и поверните вид, чтобы визуализировать сайт с окружающей местностью.
fq = 28e9; % 28 GHz tx = txsite("Name","South Uncanoonuc (BS)", ... "Latitude",42.983723, ... "Longitude",-71.587173, ... "TransmitterPower",1, ... "TransmitterFrequency",fq); show(tx)
Создать три приемника сайта в районе и показать сайты на карте. Каждый узел приемника представляет сайт, где размещен фиксированный беспроводной терминал пользователя.
rxBedford = rxsite("Name","Bedford Town Center", ... "Latitude",42.946193, ... "Longitude",-71.516234); rxStA = rxsite("Name","St. Anselm College", ... "Latitude",42.987386, ... "Longitude",-71.507475); rxGPD = rxsite("Name","Goffstown Police Dept", ... "Latitude",43.009335, ... "Longitude",-71.539083); rxs = [rxBedford, rxStA, rxGPD]; show(rxs)
Задачей для 5G связи является достижение успешной ссылки в присутствии местности и других препятствий, поскольку потери распространения растут на высокой частоте. Видимый путь визирования требуется для оптимальных условий распространения. В загородном окружении, рассматриваемой здесь, местность является доминирующим препятствием для достижения видимости линии видимости. Постройте графики путей распространения линии визирования между базовой станцией и узлами приемника. Расчет линии видимости включает рельеф местности, но не содержит других препятствий и обнаруживает препятствие линии видимости с двумя из трех мест приемника.
los(tx,rxs)
Отрегулируйте высоты антенны в порядок для достижения видимости линии визирования.
% Place antennas on structures at receiver sites. Assume 6 m utility poles for Bedford % and St. Anselm sites, and 15 m antenna pole at Goffstown Police Department. rxBedford.AntennaHeight = 6; rxStA.AntennaHeight = 6; rxGPD.AntennaHeight = 15; % Increase height of antenna at base station until line-of-sight is achieved with all receiver sites tx.AntennaHeight = 10; while ~all(los(tx,rxs)) tx.AntennaHeight = tx.AntennaHeight + 5; end % Display line-of-sight los(tx,rxs) disp("Antenna height required for line-of-sight: " + tx.AntennaHeight + " m")
Antenna height required for line-of-sight: 70 m
Спроектируйте антенную решетку 8 на 12 из скрещенных дипольных антенных элементов, чтобы сгенерировать сильно директивный луч. Эта система реализует концепцию 5G с использованием MU-MIMO [1]. Постройте график диаграммы направленности излучения на карте с помощью ориентации антенны по умолчанию так, чтобы антенная решетка была физически ориентирована в восточном направлении.
% Design reflector-backed crossed dipole antenna txElement = reflectorCrossedDipoleElement(fq); % Define array size ntxrow = 8; ntxcol = 12; % Define element spacing lambda = physconst("lightspeed")/fq; drow = lambda/2; dcol = lambda/2; % Create 8-by-12 antenna array tx.Antenna = phased.URA("Size",[ntxrow ntxcol], ... "Element",txElement, ... "ElementSpacing",[drow dcol]); % Plot pattern on the map pattern(tx)
Создайте прямоугольный массив 3 на 3 из вертикального дипольного антенного элемента с поддержкой рефлектора. В каждом узле приемника наведите массив на базовую станцию и постройте график диаграммы направленности излучения на карте.
rxElement = reflectorDipoleElement(fq); % Define array size nrxrow = 3; nrxcol = 3; % Define element spacing lambda = physconst("lightspeed")/fq; drow = lambda/2; dcol = lambda/2; % Create antenna array rxarray = phased.URA("Size",[nrxrow nrxcol], ... "Element",rxElement, ... "ElementSpacing",[drow dcol]); % Assign array to each receiver site and point toward base station for rx = rxs rx.Antenna = rxarray; rx.AntennaAngle = angle(rx, tx); pattern(rx,fq) end
Используйте модель распространения свободного пространства, чтобы вычислить мощность принимаемого сигнала для каждого сайта приемника. Для каждого участка управляйте лучом базовой станции, чтобы оптимизировать направленность для ссылки. Благоприятные условия, принятые свободным пространством, выдают сильные сигналы в местах приемника, принимая чувствительность приемника -84 дБм [2].
steeringVector = phased.SteeringVector("SensorArray",tx.Antenna); for rx = rxs % Compute steering vector for receiver site [az,el] = angle(tx,rx); sv = steeringVector(fq,[az;el]); % Update base station radiation pattern tx.Antenna.Taper = conj(sv); pattern(tx) % Compute signal strength (dBm) ss = sigstrength(rx,tx,"freespace"); disp("Signal strength at " + rx.Name + ":") disp(ss + " dBm") end
Signal strength at Bedford Town Center:
-69.6736 dBm
Signal strength at St. Anselm College:
-68.0434 dBm
Signal strength at Goffstown Police Dept:
-66.3294 dBm
Вместо направления луча антенны базовой станции в каждый узел приемника, в свою очередь, сгенерируйте один луч, который может одновременно передавать во все узлы приемника. Один луч генерирует лепестки излучения к трем участкам приемника. Сила сигнала падает в каждом месте приемника с одновременной передачей, но все еще соответствует чувствительности приемника.
steeringVector = phased.SteeringVector("SensorArray",tx.Antenna); % Compute steering vector for receiver site [az,el] = angle(tx,rxs); sv = steeringVector(fq,[az el]'); % Update base station radiation pattern tx.Antenna.Taper = conj(sum(sv,2)); pattern(tx) % Compute signal strength (dBm) for rx = rxs ss = sigstrength(rx,tx,"freespace"); disp("Signal strength at " + rx.Name + ":") disp(ss + " dBm") end
Signal strength at Bedford Town Center:
-75.2902 dBm
Signal strength at St. Anselm College:
-72.2959 dBm
Signal strength at Goffstown Police Dept:
-72.0308 dBm
Дополнительное ослабление сигнала происходит из-за листвы и погоды. Используйте модель Вайсбергера [3], чтобы оценить потери пути из-за листвы, и используйте модели распространения газа и дождя, чтобы оценить силу сигнала из-за погоды. При наличии ослаблений потерь пути расчетная сила сигнала становится слабой и падает ниже чувствительности приемника -84 дБм.
% Assume that propagation path travels through 25 m of foliage foliageDepth = 25; L = 1.33*((fq/1e9)^0.284)*foliageDepth^0.588; % Weissberger model for d > 14 disp("Path loss due to foliage: " + L + " dB")
Path loss due to foliage: 22.7422 dB
% Assign foliage loss as static SystemLoss on each receiver site for rx = rxs rx.SystemLoss = L; end % Compute signal strength with foliage loss for rx = rxs rx.SystemLoss = L; ss = sigstrength(rx,tx,"freespace"); disp("Signal strength at " + rx.Name + ":") disp(ss + " dBm") end
Signal strength at Bedford Town Center:
-98.0325 dBm
Signal strength at St. Anselm College:
-95.0381 dBm
Signal strength at Goffstown Police Dept:
-94.7731 dBm
% Compute signal strength including propagation through gas and rain. Use % the "+" operator to add the propagation models to create a composite % model including both atmospheric effects. weatherpm = propagationModel("gas") + propagationModel("rain"); for rx = rxs ss = sigstrength(rx,tx,weatherpm); disp("Signal strength at " + rx.Name + ":") disp(ss + " dBm") end
Signal strength at Bedford Town Center:
-114.4904 dBm
Signal strength at St. Anselm College:
-110.4517 dBm
Signal strength at Goffstown Police Dept:
-107.3223 dBm
Диапазон 3,5 ГГц является заметной полосой, рассматриваемой для 5G радио [1]. Перепроектируйте систему MU-MIMO на эту более низкую частоту, чтобы достичь более благоприятных потерь пути и достичь необходимого уровня сигнала.
fq = 3.5e9; % 3.5 GHz % Create antenna array for base station lambda = physconst("lightspeed")/fq; drow = lambda/2; dcol = lambda/2; tx.TransmitterFrequency = fq; tx.Antenna = phased.URA("Size",[ntxrow ntxcol], ... "Element",reflectorCrossedDipoleElement(fq), ... "ElementSpacing",[drow dcol]); % Create antenna array for receiver sites lambda = physconst("lightspeed")/fq; drow = lambda/2; dcol = lambda/2; rxarray = phased.URA("Size",[nrxrow nrxcol], ... "Element",reflectorDipoleElement(fq), ... "ElementSpacing",[drow dcol], ... "ArrayNormal","x"); for rx = rxs rx.Antenna = rxarray; end
В дополнение к вычислению уровня сигнала на каждом сайте приемника сгенерируйте карту покрытия с помощью модели распространения Лонгли-Райса с ухудшениями погоды. Модель Лонгли-Райса, которая также известна как Нерегулярная модель местности (ITM), оценивает потери пути на основе дифракции и других потерь, полученных из местности. Модель Longley-Rice действительна от 20 МГ ц до 20 ГГ ц и поэтому доступна для 3,5 ГГ ц, но не для 28 ГГ ц.
% Compute steering vector for receiver site steeringVector = phased.SteeringVector("SensorArray",tx.Antenna); [az,el] = angle(tx,rxs); sv = steeringVector(fq,[az el]'); % Update base station radiation pattern tx.Antenna.Taper = conj(sum(sv,2)); pattern(tx,'Size',4000) % Recompute loss due to foliage L = 1.33*((fq/1e9)^0.284)*foliageDepth^0.588; % Weissberger model for d > 14 % Assign foliage loss as static SystemLoss on each receiver site for rx = rxs rx.SystemLoss = L; end disp("Path loss due to foliage: " + L + " dB")
Path loss due to foliage: 12.5996 dB
% Add weather-based path loss to the Longley-Rice propagation model pm = propagationModel('longley-rice') + weatherpm; % Compute receiver gain from peak antenna gain and system loss G = pattern(rxarray, fq); rxGain = max(G(:)) - L; coverage(tx, ... 'PropagationModel',pm, ... 'ReceiverGain',rxGain, ... 'ReceiverAntennaHeight',6, ... 'SignalStrengths',-84:-50) % Compute signal strength with foliage loss and weather for rx = rxs ss = sigstrength(rx,tx,pm); disp("Signal strength at " + rx.Name + ":") disp(ss + " dBm") end
Signal strength at Bedford Town Center:
-69.9055 dBm
Signal strength at St. Anselm College:
-66.8931 dBm
Signal strength at Goffstown Police Dept:
-66.6076 dBm
Этот пример показов, как планировать фиксированную ссылку беспроводного доступа по местности с помощью 5G технологий в многопользовательском пригородном сценарии. В то время как распространение линии визирования достигается по местности, нарушения потерь пути делают несущую частоту 28 ГГц непригодной для ссылок, несмотря на использование антенн с высоким усилением и формирования луча. Только добавление потерь листвы снижает силу сигнала ниже чувствительности приемника -84 дБм, а сложение потерь погоды значительно снижает его дальше. Более низкая частота 3,5 ГГц требуется для достижения успешных ссылок на рассматриваемых здесь многокилометровых областях значений. В результате этот пример иллюстрирует чувствительность частот несущей с высоким 5G к общим ослаблениям потерь пути.
[1] Ericsson Technology Review, Фиксированный беспроводной доступ в массовой шкале с 5G, Anders Furuskär, Kim Laraqui, Sibel Tombaz, Ala Nazari, Björn Skubic, Elmar Trojer, Декабрь, 2016
[2] Microvave Journal, Pre-5G и 5G: Будет ли работа MmWave Link?, Andreas Roessler, декабрь, 2017
[3] Джон Сейболд, введение в распространение РФ, Уайли, 2005
function element = reflectorCrossedDipoleElement(fq, showAntenna) %reflectorCrossedDipoleElement Design reflector-backed crossed dipole antenna element if nargin < 2 showAntenna = false; end lambda = physconst("lightspeed")/fq; offset = lambda/50; gndspacing = lambda/4; gndLength = lambda; gndWidth = lambda; % Design crossed dipole elements d1 = design(dipole,fq); d1.Tilt = [90,-45]; d1.TiltAxis = ["y","z"]; d2 = copy(d1); d2.Tilt = 45; d2.TiltAxis = "x"; % Design reflector r = design(reflector,fq); r.Exciter = d1; r.GroundPlaneLength = gndLength; r.GroundPlaneWidth = gndWidth; r.Spacing = gndspacing; r.Tilt = 90; r.TiltAxis = "y"; if showAntenna show(r) end % Form the crossed dipole backed by reflector refarray = conformalArray; refarray.ElementPosition(1,:) = [gndspacing 0 0]; refarray.ElementPosition(2,:) = [gndspacing+offset 0 0]; refarray.Element = {r, d2}; refarray.Reference = "feed"; refarray.PhaseShift = [0 90]; if showAntenna show(refarray); view(65,20) end % Create custom antenna element from pattern [g,az,el] = pattern(refarray,fq); element = phased.CustomAntennaElement; element.AzimuthAngles = az; element.ElevationAngles = el; element.MagnitudePattern = g; element.PhasePattern = zeros(size(g)); end function element = reflectorDipoleElement(fq) %reflectorDipoleElement Design reflector-backed dipole antenna element % Design reflector and exciter, which is vertical dipole by default element = design(reflector,fq); element.Exciter = design(element.Exciter,fq); % Tilt antenna element to radiate in xy-plane, with boresight along x-axis element.Tilt = 90; element.TiltAxis = "y"; element.Exciter.Tilt = 90; element.Exciter.TiltAxis = "y"; end