Визуализируйте карту покрытия антенны и линии связи

В этом примере показано, как вычислить и визуализировать силу сигнала между передатчиком и несколькими приемниками. Визуализация включает карту покрытия области и окрашенные линии связи. Пример также показывает выбор направленной антенны для того, чтобы достигнуть линии связи с определенным местоположением.

Задайте ретранслятор

% Define transmitter site at MathWorks (3 Apple Hill Dr, Natick, MA)
fq = 6e9; % 6 GHz
tx = txsite("Name","MathWorks", ...
    "Latitude",42.3001, ...
    "Longitude",-71.3504, ...
    "Antenna",design(dipole,fq), ...
    "AntennaHeight",60, ...        % Units: meters
    "TransmitterFrequency",fq, ... % Units: Hz
    "TransmitterPower",15);        % Units: Watts

Задайте сайты приемника

% Define receiver sites in several surrounding towns and cities
rxNames = [...
   "Boston, MA","Lexington, MA","Concord, MA","Marlborough, MA", ...
   "Hopkinton, MA","Holliston, MA","Foxborough, MA","Quincy, MA"];

rxLocations = [...
   42.3601 -71.0589; ... % Boston
   42.4430 -71.2290; ... % Lexington
   42.4604 -71.3489; ... % Concord
   42.3459 -71.5523; ... % Marlborough
   42.2287 -71.5226; ... % Hopkinton
   42.2001 -71.4245; ... % Holliston
   42.0654 -71.2478; ... % Foxborough
   42.2529 -71.0023];    % Quincy

% Define receiver sensitivity. Sensitivity is the minimum signal strength in
% power that is necessary for the receiver to accurately detect the signal.
rxSensitivity = -90; % Units: dBm

rxs = rxsite("Name",rxNames, ...
    "Latitude",rxLocations(:,1), ...
    "Longitude",rxLocations(:,2), ...
    "Antenna",design(dipole,tx.TransmitterFrequency), ...
    "ReceiverSensitivity",rxSensitivity); % Units: dBm

Покажите сайты на карте

Покажите сайты передатчика и приемника на карте. По маркерам сайта можно кликнуть, чтобы отобразить информацию о сайте.

viewer = siteviewer;
show(tx)
show(rxs)

Настройте средство просмотра сайта

Установите формирование изображений карты с помощью Basemap свойство. В качестве альтернативы откройте средство выбора формирования изображений карты в Средстве просмотра Сайта путем нажатия второй кнопки справа. Выберите "OpenStreetMap", чтобы видеть улицы и метки на карте. Вращайте представление, чтобы показать служебную перспективу.

viewer.Basemap = "openstreetmap";

Отобразите Идеализированную Карту Покрытия с помощью Дипольной Антенны

Отобразите карту покрытия. Карта покрытия показывает географическую область, где приемник получит хороший прием, который является, где переданная сила сигнала соответствует или превышает приемник "s чувствительность. Переданная сила сигнала в степени (dBm) вычисляется с помощью модели распространения свободного пространства, которая игнорирует ландшафт, препятствия и атмосферные эффекты. В результате карта покрытия показывает идеализированную зону охвата в отсутствие любых ухудшений потери на пути вне потери свободного пространства.

coverage(tx,"freespace", ...
    "SignalStrengths",rxSensitivity)

Постройте Линии связи с помощью Дипольной Антенны

Постройте линии связи на карте. Красные ссылки появляются, где приемник находится вне зоны покрытия, и зеленые ссылки появляются, где приемник в зоне покрытия. Соединитесь по линиям можно кликнуть, чтобы отобразить статистику ссылки. Чтобы контрастировать цвета зоны покрытия и успешных ссылок, задайте цвет успешных ссылок как темно-зеленый.

sc = [0 0.3 0];
link(rxs,tx,"freespace","SuccessColor",sc)

Используйте модель распространения дождя

Обновите карту покрытия, и соединяется, чтобы включать потерю на пути, подлежащую выплате литься дождем. Обратите внимание на то, что Бостон, MA больше не в зоне покрытия.

coverage(tx,"rain","SignalStrengths", rxSensitivity)
link(rxs,tx,"rain","SuccessColor",sc)

Задайте направленную антенну

Дипольный передатчик антенны приводит к нескольким сайтам приемника за пределами зоны покрытия, включая приемник в Бостоне, MA. Теперь примите, что требование передатчика должно достигнуть линии связи с Бостоном. Задайте направленную антенну, которая может увеличить усиление антенны в том направлении.

% Define Yagi-Uda antenna designed for transmitter frequency
yagiAnt = design(yagiUda,tx.TransmitterFrequency);

% Tilt antenna to direct radiation in XY-plane (i.e. geographic azimuth)
yagiAnt.Tilt = 90;
yagiAnt.TiltAxis = "y";

f = figure;

% Show directivity pattern
patternAzimuth(yagiAnt,tx.TransmitterFrequency)

%Close the previous figure
if (isvalid(f))
    close(f);
end

Отобразите Карту Покрытия с помощью Антенны Яги-Uda

Обновите карту покрытия и ссылки. Бостон теперь в зоне покрытия, но линии связи с приемниками в других направлениях потеряны.

% Update transmitter antenna
tx.Antenna = yagiAnt;

% Point main beam toward Boston, MA by assigning azimuth angle between 
% transmitter location and Boston receiver location
tx.AntennaAngle = angle(tx, rxs(1));

% Update visualizations, using "rain" propagation model
coverage(tx,"rain","SignalStrengths",rxSensitivity)
link(rxs,tx,"rain","SuccessColor",sc)

Отобразите Очерченную Карту Покрытия с помощью Нескольких Сильных мест Сигнала

Когда одна сила сигнала задана, карта покрытия зеленая для зоны обслуживания. Задайте несколько сильных мест сигнала, чтобы сгенерировать карту покрытия с контурами для различных уровней сигнала.

% Define signal strengths from sensitivity to -60 dB
sigStrengths = rxSensitivity:5:-60;

% Update coverage map
coverage(tx,"rain","SignalStrengths",sigStrengths)

Смотрите также

Функции

Объекты

Похожие темы