Планирование 5G фиксированной ссылки беспроводного доступа по местности

В этом примере показано, как планировать ссылку фиксированного беспроводного доступа (FWA) по местности с помощью 5G технологий. FWA является вариантом использования для 5G, чтобы разрешить широкополосное обслуживание в домах или на предприятиях, где кабельные услуги либо недоступны, либо недостаточно подходят. FWA соединяет базовую станцию с фиксированным беспроводным терминалом (FWT) пользователя [1]. На высоких частотах, требующихся для 5G, повреждений местности и пути, такие как листва и погода играют важную роль в определении успеха ссылки.

Пример создает базовую станцию и несколько узлов приемника в пригородном окружении, размещая антенны для достижения видимости линии визирования по промежуточной местности. Многопользовательская система с несколькими входами, несколькими выходами (MU-MIMO) с антеннами с высоким усилением разработана с использованием Antenna Toolbox™ и Phased Array System Toolbox™. Интенсивность сигнала в местах приемника оценивают для двух частот при наличии ослаблений потерь пути.

Создайте сайт базовой станции в полосе 28 ГГц

Создайте узел передатчика на Южной горе Унканоонук в Гоффстауне, штат Нью-Гемпшир, США. Гора является домом для нескольких передающих средств, которые обслуживают этот район. Определите сайт передатчика, чтобы представлять базовую станцию, передающую на 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 базовой станции

Спроектируйте антенную решетку 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

Создайте прямоугольный массив 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 ГГц

Диапазон 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

См. также

Для просмотра документации необходимо авторизоваться на сайте