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

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

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

% 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";

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

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

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

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

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

link(rxs,tx,'freespace')

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

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

coverage(tx,'rain','SignalStrengths', rxSensitivity)
link(rxs,tx,'rain')

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

Дипольный передатчик антенны приводит к нескольким сайтам получателя за пределами зоны покрытия, включая получатель в Бостоне, 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')

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

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

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

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

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