В этом примере показано, как использовать трассировку лучей, чтобы анализировать линии связи и покрытие в городской среде. В примере:
Импортируйте и визуализируйте 3-D данные о созданиях в Средство просмотра Сайта
Задайте ретранслятор и соответствие модели распространения трассировки лучей 5G городской сценарий
Визуализируйте покрытие для городской среды
Анализируйте ссылку в не условия угла обзора
Постройте мощность приемника для точек вдоль маршрута
Оптимизируйте не ссылку угла обзора с помощью регулирования луча и Phased Array System Toolbox™
Этот пример дополнительно исследует удар параметров трассировки лучей, таких как количество отражений и материальных типов.
Импортируйте OpenStreetMap (.osm) файл, соответствующий Кенери Уорф в Лондоне, Великобритания. Файл был загружен с https://www.openstreetmap.org, который обеспечивает доступ к полученным толпой данным о карте во всем мире. Данные лицензируются под Открытыми Данными палата общин Открытая Лицензия Базы данных (ODbL), https://opendatacommons.org/licenses/odbl/. Информация о созданиях, содержавшая в файле OpenStreetMap, импортируется и визуализируется в Средстве просмотра Сайта.
viewer = siteviewer("Buildings","canarywharf.osm","Basemap","topographic");
Задайте ретранслятор, чтобы смоделировать маленький сценарий ячейки в плотной городской среде. Ретранслятор представляет базовую станцию, которая помещается в полюс около парка с целью обслуживания парковой зоны. Передатчик действует в несущей частоте 28 ГГц с 5 Вт степени и использует изотропную антенну по умолчанию.
tx = txsite("Name","Small cell transmitter", ... "Latitude",51.50375, ... "Longitude",-0.01843, ... "AntennaHeight",10, ... "TransmitterPower",5, ... "TransmitterFrequency",28e9); show(tx)
Создайте модель распространения трассировки лучей использование метода изображений. Эта модель распространения использует анализ трассировки лучей, чтобы вычислить пути к распространению и их соответствующие потери пути. Потеря пути вычисляется от потери свободного пространства, отражательной потери из-за материала и потери поляризации антенны. Анализ трассировки лучей использует метод изображений, который включает поверхностные отражения, но не включает эффекты от преломления, дифракции, рассеивания или передачи посредством созданий.
Установите MaxNumReflections
свойство к 0 для того, чтобы ограничить начальный анализ путями к распространению угла обзора только и установить материальные типы моделировать совершенное отражение.
rtpm = propagationModel("raytracing-image-method", ... "MaxNumReflections",0, ... "BuildingsMaterial","perfect-reflector", ... "TerrainMaterial","perfect-reflector");
Просмотрите соответствующую карту покрытия для максимальной области значений 250 метров от базовой станции. Карта покрытия показывает мощность приемника для приемника в каждом наземном местоположении, но не вычисляется для создания верхних частей или сторон.
coverage(tx,rtpm, ... "SignalStrengths",-120:-5, ... "MaxRange",250, ... "Resolution",3, ... "Transparency",0.6)
Карта покрытия для распространения угла обзора показывает затенение из-за преград. Задайте сайт приемника, чтобы смоделировать мобильный приемник в одном таком месте. Постройте путь угла обзора, который показывает блокирование.
rx = rxsite("Name","Small cell receiver", ... "Latitude",51.50216, ... "Longitude",-0.01769, ... "AntennaHeight",1); los(tx,rx)
Настройте модель распространения трассировки лучей, чтобы включать одно-отражательные пути и построить лучи. Результат показывает распространение сигнала вдоль одно-отражательного пути. Нанесенный на график путь может быть выбран, чтобы просмотреть соответствующие характеристики распространения, включая мощность приемника, фазовый переход, расстояние и углы отъезда и прибытия.
rtpm.MaxNumReflections = 1; clearMap(viewer) raytrace(tx,rx,rtpm)
Вычислите мощность приемника с помощью модели распространения, которая была ранее сконфигурирована, чтобы смоделировать совершенное отражение. Затем присвойте более реалистический материальный тип и повторно вычислите мощность приемника. Обновите лучи, показанные в Средстве просмотра Сайта. Использование реалистического существенного отражения приводит приблизительно к 8 дБ потерь мощности по сравнению с совершенным отражением.
ss = sigstrength(rx,tx,rtpm); disp("Received power using perfect reflection: " + ss + " dBm")
Received power using perfect reflection: -70.3925 dBm
rtpm.BuildingsMaterial = "concrete"; rtpm.TerrainMaterial = "concrete"; raytrace(tx,rx,rtpm) ss = sigstrength(rx,tx,rtpm); disp("Received power using concrete materials: " + ss + " dBm")
Received power using concrete materials: -78.9451 dBm
Добавьте погодные нарушения в модель распространения и повторно вычислите мощность приемника, которая приводит еще к 1,5 дБ потери.
rtPlusWeather = rtpm + propagationModel("gas") + propagationModel("rain"); raytrace(tx,rx,rtpm) ss = sigstrength(rx,tx,rtPlusWeather); disp("Received power including weather loss: " + ss + " dBm")
Received power including weather loss: -80.4625 dBm
Регенерируйте карту покрытия, но включайте одно-отражательные пути и погодные нарушения при помощи модели распространения, заданной выше. Загрузите и визуализируйте ранее сгенерированные результаты покрытия, потому что в противном случае анализ покрытия занял бы несколько минут, чтобы завершиться. Результирующая карта покрытия показывает мощность приемника в области вокруг не линии приемника сайта, анализируемого выше, но существуют все еще некоторые остающиеся области, где никакой сигнал, кажется, не достигает.
clearMap(viewer) % Load coverage results and plot. Coverage results were generated using % commented coverage call below, which takes several minutes to complete. show(tx) coverageResults = load("coverageSingleReflection.mat"); contour(coverageResults.pd, ... "Type","power", ... "Transparency",0.6) % coverage(tx,rtPlusWeather, ... % "SignalStrengths",-120:-5, ... % "MaxRange", 250, ... % "Resolution",2, ... % "Transparency",0.6);
Расширьте анализ "точка-точка", чтобы включать 2D отражательные пути. Визуализация показывает два кластера путей к распространению, и общая мощность приемника улучшена приблизительно на 3 дБ по сравнению с только рассмотрением одно-отражательных путей.
rtTwoReflections = propagationModel("raytracing-image-method", ... "MaxNumReflections",2, ... "BuildingsMaterial","concrete", ... "TerrainMaterial","concrete"); rtTwoRefPlusWeather = rtTwoReflections + propagationModel("gas") + propagationModel("rain"); ss = sigstrength(rx, tx, rtTwoRefPlusWeather); disp("Received power with two-reflection paths: " + ss + " dBm")
Received power with two-reflection paths: -77.1419 dBm
clearMap(viewer) raytrace(tx,rx,rtTwoRefPlusWeather)
Предыдущая карта покрытия, которая включала одно-отражательные пути, показала некоторые остающиеся отверстия в покрытии сигнала. Задайте несколько местоположений вдоль маршрута, который перемещается через два из отверстий в карте покрытия. Координаты для каждого местоположения были получены путем щелчка правой кнопкой по карте и выбора "Show location". Вычислите мощность приемника для каждого местоположения с помощью модели распространения трассировки лучей включая 2D отражательные пути. Этот анализ "точка-точка" показывает некоторую степень сигнала, достигающую тех местоположений.
Обратите внимание на то, что распространение максимум с двумя отражениями ограничивается анализом "точка-точка" и не доступно для карт покрытия из-за времени, требуемого сгенерировать результаты.
latlons = [51.502366 -0.017633; ... 51.502571 -0.017575; ... 51.502647 -0.017659; ... 51.502674 -0.017905; ... 51.502717 -0.018229; ... 51.502753 -0.018561; ... 51.502793 -0.018935; ... 51.502825 -0.019198; ... 51.502846 -0.019464; ... 51.502865 -0.019703; ... 51.502884 -0.019902; ... 51.502953 -0.020048; ... 51.503124 -0.019983; ... 51.503288 -0.019917; ... 51.503363 -0.020103; ... 51.503570 -0.020013; ... 51.503771 -0.019941; ... 51.504001 -0.019864; ... 51.504254 -0.019769; ... 51.504535 -0.019681]; lats = latlons(:,1); lons = latlons(:,2); rxs = rxsite("Name","Small cell receiver", ... "Latitude",lats, ... "Longitude",lons, ... "AntennaHeight",1); ss = sigstrength(rxs,tx,rtTwoRefPlusWeather);
Постройте степень в каждом местоположении на карте, с помощью "темной как улицы" основной карты, чтобы подчеркнуть данные. propagationData
объект используется, чтобы отобразить данные на графике, и этот объект мог также использоваться, чтобы отобразить на графике данные, импортированные из файлов измерений. Результирующий график показывает низкую мощность приемника в местоположениях, где нет ни угла обзора, ни одно-отражательного распространения.
clearMap(viewer) show(tx) viewer.Basemap = "streets-dark"; pd = propagationData(lats,lons,"ReceivedPower",ss); plot(pd,"Type","power")
Много современных систем связи используют методы, чтобы регулировать антенну передатчика, чтобы достигнуть оптимального качества ссылки. Этот раздел использует Phased Array System Toolbox™, чтобы оптимально регулировать луч, чтобы максимизировать мощность приемника для не ссылки угла обзора.
Задайте пользовательскую антенну из Отчета ITU-R M.2412 [1] для оценки технологий радио 5G. Создайте 8 8 универсальный прямоугольный массив из шаблона элемента, заданного в Разделе 8.5 из отчета, укажите ему юг и просмотрите диаграмму направленности.
tx.Antenna = helperM2412PhasedArray(tx.TransmitterFrequency);
tx.AntennaAngle = -90;
clearMap(viewer)
show(rx)
pattern(tx,"Transparency",0.6)
hide(tx)
Вызовите raytrace
с выходом, чтобы получить доступ к лучам, которые были вычислены. Возвращенный comm.Ray
объекты включают и геометрические и связанные с распространением характеристики каждого луча.
ray = raytrace(tx,rx,rtPlusWeather); disp(ray{1})
Ray with properties: PathSpecification: 'Locations' CoordinateSystem: 'Geographic' TransmitterLocation: [3×1 double] ReceiverLocation: [3×1 double] LineOfSight: 0 ReflectionLocations: [3×1 double] Frequency: 2.8000e+10 PathLossSource: 'Custom' PathLoss: 117.4522 PhaseShift: 4.0952 Read-only properties: PropagationDelay: 6.6488e-07 PropagationDistance: 199.3261 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumReflections: 1
Получите угол отъезда для одно-отражательного пути и примените этот угол, чтобы регулировать антенну в оптимальном направлении, чтобы достигнуть более высокой мощности приемника. Азимут угла отъезда возмещен физическим угловым азимутом антенны, чтобы преобразовать его в держащийся векторный азимут, заданный в системе локальной координаты антенны фазированной решетки.
aod = ray{1}.AngleOfDeparture;
steeringaz = wrapTo180(aod(1)-tx.AntennaAngle(1));
steeringVector = phased.SteeringVector("SensorArray",tx.Antenna);
sv = steeringVector(tx.TransmitterFrequency,[steeringaz;aod(2)]);
tx.Antenna.Taper = conj(sv);
Постройте диаграмму направленности, чтобы видеть, как энергия антенны направлена вдоль пути к распространению. Новая мощность приемника улучшена приблизительно на 20 дБ, соответствуя пиковому усилению антенны.
pattern(tx,"Transparency",0.6) raytrace(tx,rx,rtPlusWeather); hide(tx) ss = sigstrength(rx, tx, rtPlusWeather); disp("Received power with beam steering: " + ss + " dBm")
Received power with beam steering: -57.5028 dBm
Этот пример использовал трассировку лучей для ссылки и анализа покрытия в городской среде. Анализ показал следующие заключения:
Анализ трассировки лучей может использоваться, чтобы предсказать силу сигнала для не ссылки угла обзора, где отраженные пути к распространению существуют
Анализ с реалистическими материалами может оказать значительное влияние на расчетную потерю пути и мощность приемника
Анализ с более высоким количеством отражений заканчивается в увеличенное время вычисления, но показывает дополнительные области распространения сигнала
Использование направленной антенны с регулированием луча может значительно увеличить мощность приемника для приемников, даже если они находятся в не местоположения угла обзора
Этот пример анализировал мощность приемника и потерю пути для ссылок и покрытия. Чтобы видеть, как использовать трассировку лучей, чтобы сконфигурировать модель канала для симуляции уровня ссылки, смотрите, что Внутренняя Линия связи MIMO-OFDM использует Трассировку лучей (Communications Toolbox) пример, доступный в Communications Toolbox™.
[1] Сообщите о ITU-R M.2412, "Инструкции для оценки радио-интерфейсных технологий для IMT-2020", 2017. https://www.itu.int/pub/R-REP-M.2412