Создайте луч распространения RF
comm.Ray
объект является контейнерным объектом для свойств луча распространения. Объект содержит геометрическую и электромагнитную информацию распространения радиоволны от одной точки до другой точки на пробеле.
Обычно вы создаете comm.Ray
объекты при помощи raytrace
функция.
создает объект луча, который инициализирует свойства для луча распространения.ray
= comm.Ray
свойства наборов с помощью одного или нескольких аргументов пары "имя-значение". Заключите каждое имя свойства в кавычки. Например, ray
= comm.Ray(Name,Value
)comm.Ray('CoordinateSystem','Geographic','TransmitterLocation',[40.730610,-73.935242,0])
задает географическую систему координат и передатчик, расположенный в Нью-Йорке.
PathSpecification
— Метод спецификации пути к распространению'Locations'
(значение по умолчанию) | 'Delay and angles'
Метод спецификации пути к распространению в виде одного из этих значений.
'Locations'
— Контур объектов луча между waypoints передается как (x, y, z) координатные точки TransmitterLocation
, ReceiverLocation
, и, если применимо, ReflectorLocations
свойства.
'Delay and angles'
— Контур объектов луча между waypoints передается PropagationDelay
, AngleOfDeparture
, и AngleOfArrival
свойства.
Типы данных: char |
string
CoordinateSystem
— Система координат'Cartesian'
(значение по умолчанию) | 'Geographic'
Система координат в виде 'Cartesian'
или 'Geographic'
. Когда вы устанавливаете CoordinateSystem
свойство к 'Geographic'
, система координат задана относительно Наземной модели эллипсоида WGS-84, и объект задает углы относительно локальной системы координат "восточного севера" (ENU) в передатчике и приемнике.
Чтобы включить это свойство, установите PathSpecification
свойство к 'Locations'
.
Типы данных: char |
string
SystemScale
— Шкала декартовой системы координат
(значение по умолчанию) | положительная скалярная величинаШкала декартовой системы координат в метрах в виде положительной скалярной величины.
Чтобы включить это свойство, установите PathSpecification
свойство к 'Locations'
и CoordinateSystem
свойство к 'Cartesian'
.
Типы данных: double
TransmitterLocation
— Местоположение передатчика
(значение по умолчанию) | трехэлементный числовой вектор-столбецМестоположение передатчика в виде трехэлементного числового вектор-столбца координат в одной из следующих форм.
x, y ; z] — Эта форма применяется, когда вы устанавливаете CoordinateSystem
свойство к 'Cartesian'
. Объект не выполняет валидацию области значений для x, y и z.
[latitude; longitude; height] — Эта форма применяется, когда вы устанавливаете CoordinateSystem
свойство к 'Geographic'
. latitude должен быть в области значений [–90, 90]. Объект не выполняет валидацию области значений для longitude и height. на height ссылаются к эллипсоиду, заданному Мировой Геодезической Системой 1 984 (WGS84).
Чтобы включить это свойство, установите PathSpecification
свойство к 'Locations'
.
Типы данных: double
ReceiverLocation
— Местоположение приемника
(значение по умолчанию) | трехэлементный числовой вектор-столбецМестоположение приемника в виде трехэлементного числового вектор-столбца координат в одной из следующих форм.
x, y ; z] — Эта форма применяется, когда вы устанавливаете CoordinateSystem
свойство к 'Cartesian'
. Объект не выполняет валидацию области значений для x, y и z.
[latitude; longitude; height] — Эта форма применяется, когда вы устанавливаете CoordinateSystem
свойство к 'Geographic'
. latitude должен быть в области значений [–90, 90]. Объект не выполняет валидацию области значений для longitude и height. на height ссылаются к эллипсоиду, заданному Мировой Геодезической Системой 1 984 (WGS84).
Чтобы включить это свойство, установите PathSpecification
свойство к 'Locations'
.
Типы данных: double
LineOfSight
— Угол обзораtrue
или 1
(значение по умолчанию) | false
или 0
Угол обзора в виде логического значения 1
TRUE
) или 0
ложь
) указать, является ли луч лучом угла обзора.
Чтобы включить это свойство, установите PathSpecification
свойство к 'Locations'
.
Типы данных: логический
Interactions
— Поверхностные лучом взаимодействияПоверхностные лучом взаимодействия вдоль пути к распространению в виде 1 NI структурой, содержащей эти поля. N я - количество взаимодействий.
Type
— Тип поверхностного лучом взаимодействия'Reflection'
(значение по умолчанию) | 'Diffraction'
Тип поверхностного лучом взаимодействия в виде 'Reflection'
или 'Diffraction'
.
Типы данных: char |
string
Location
местоположение
(значение по умолчанию) | числовой вектор 3 на 1Местоположение в виде числового вектора 3 на 1, содержащего координаты одной точки столкновения на луче.
Когда CoordinateSystem
свойство установлено в 'Cartesian'
, формой является [x; y; z. Объект не выполняет валидацию области значений для x, y и z.
Когда CoordinateSystem
свойство установлено в 'Geographic'
, формой является [latitude; longitude; высота. latitude должен быть в области значений [–90, 90]. Объект не выполняет валидацию области значений для longitude и height. на height ссылаются к эллипсоиду, заданному Мировой Геодезической Системой 1 984 (WGS84).
Типы данных: double
Чтобы включить это свойство, установите PathSpecification
свойство к 'Locations'
и LineOfSight
свойство к 0
ложь
).
Типы данных: struct
PropagationDelay
— Задержка распространения5.7775e-08
| неотрицательный скалярЗадержка распространения в секундах в виде неотрицательного скаляра. Значение по умолчанию вычисляется с помощью значений по умолчанию TransmitterLocation
и ReceiverLocation
свойства для луча угла обзора.
Когда вы устанавливаете PathSpecification
свойство к 'Locations'
, это свойство только для чтения, и значение получено на TransmitterLocation
, ReceiverLocation
и, если применимо, Interactions
.
Когда вы устанавливаете PathSpecification
свойство к 'Delay and angles'
, это свойство конфигурируемо.
Типы данных: double
PropagationDistance
— Расстояние распространения
| неотрицательный скалярЭто свойство доступно только для чтения.
Расстояние распространения в метрах в виде неотрицательного скаляра. Значение по умолчанию вычисляется с помощью значений по умолчанию TransmitterLocation
и ReceiverLocation
свойства для луча угла обзора.
Когда вы устанавливаете PathSpecification
свойство к 'Locations'
, значение получено на TransmitterLocation
, ReceiverLocation
и, если применимо, Interactions
.
Когда вы устанавливаете PathSpecification
свойство к 'Delay and angles'
, значение получено на PropagationDelay
.
Типы данных: double
AngleOfDeparture
— Угол отъезда
| числовой вектор из формы [az; el]Угол отъезда в градусах луча в передатчике в виде числового вектора из формы [az; el]. Угол азимута, az, измеряется от положительной оси X против часовой стрелки и должен быть в области значений (–180, 180]. Угол возвышения, el, измеряется от x-y плоскости и должен быть в области значений [–90, 90]. Значение по умолчанию вычисляется с помощью значений по умолчанию TransmitterLocation
и ReceiverLocation
свойства для луча угла обзора.
Когда вы устанавливаете PathSpecification
свойство к 'Delay and angles'
, это свойство конфигурируемо.
Когда вы устанавливаете PathSpecification
свойство к 'Locations'
, это свойство только для чтения, и значение получено на TransmitterLocation
, ReceiverLocation
и, если применимо, Interactions
.
Когда CoordinateSystem
установлен в 'Geographic'
, углы заданы со ссылкой на локальную систему координат "восточного севера" (ENU) в передатчике.
Типы данных: double
AngleOfArrival
— Угол прибытия
| числовой вектор из формы [az; el]Угол прибытия в градусах луча в приемнике в виде числового вектора из формы [az; el]. Угол азимута, az, измеряется от положительной оси X против часовой стрелки и должен быть в области значений (–180, 180]. Угол возвышения, el, измеряется от x-y плоскости и должен быть в области значений [–90, 90]. Значение по умолчанию вычисляется с помощью значений по умолчанию TransmitterLocation
и ReceiverLocation
свойства для луча угла обзора.
Когда вы устанавливаете PathSpecification
свойство к 'Delay and angles'
, это свойство конфигурируемо.
Когда вы устанавливаете PathSpecification
свойство к 'Locations'
, это свойство только для чтения, и значение получено на TransmitterLocation
, ReceiverLocation
и, если применимо, Interactions
.
Когда CoordinateSystem
установлен в 'Geographic'
, углы заданы со ссылкой на локальную систему координат "восточного севера" (ENU) в приемнике.
Типы данных: double
NumInteractions
— Количество поверхностных лучом взаимодействий
(значение по умолчанию) | неотрицательное целое числоЭто свойство доступно только для чтения.
Количество поверхностных лучом взаимодействий для луча возражает от передатчика к приемнику в виде неотрицательного целого числа. Значение получено на LineOfSight
и, если применимо, Interactions
.
Чтобы включить это свойство, установите PathSpecification
свойство к 'Locations'
.
Типы данных: double
Frequency
— Частота сигнала1.9e+09
(значение по умолчанию) | положительная скалярная величинаЧастота сигнала в Гц в виде положительной скалярной величины.
Типы данных: double
PathLossSource
— Источник потери на пути'Free space model'
(значение по умолчанию) | 'Custom'
Источник потери на пути в виде 'Free space model'
или 'Custom'
.
Типы данных: char |
string
PathLoss
— Потеря на пути
| неотрицательный скалярПотеря на пути в дБ в виде неотрицательного скаляра. Значение по умолчанию вычисляется с помощью значений по умолчанию TransmitterLocation
и ReceiverLocation
свойства для луча угла обзора.
Когда вы устанавливаете PathLossSource
свойство к 'Free space model'
, PathLoss
свойство только для чтения и выведено из PropagationDistance
и Frequency
свойства при помощи модели распространения свободного пространства.
Когда вы устанавливаете PathLossSource
свойство к 'Custom'
, можно установить PathLoss
свойство, независимое от геометрических свойств.
Типы данных: double
PhaseShift
— Сдвиг фазы
| числовой скалярФаза переключает радианы на нижний регистр в виде числового скаляра. Значение по умолчанию вычисляется с помощью значений по умолчанию TransmitterLocation
и ReceiverLocation
свойства для луча угла обзора.
Когда вы устанавливаете PathLossSource
свойство к 'Free space model'
, PhaseShift
свойство только для чтения и выведено из PropagationDistance
и Frequency
свойства при помощи модели распространения свободного пространства.
Когда вы устанавливаете PathLossSource
свойство к 'Custom'
, можно установить PhaseShift
свойство, независимое от геометрических свойств.
Типы данных: double
plot (rays) | Отобразите лучи распространения RF в Средстве просмотра Сайта |
Выполните трассировку лучей между двумя сайтами в Гонконге, генерируя массив ячеек, содержащий comm.Ray
объекты. comm.Ray
объекты содержат геометрическую и электромагнитную информацию для путей к распространению радиоволны от ретранслятора до сайта приемника.
Создайте карту Средства просмотра Сайта, загрузив создание данных для Гонконга. Для получения дополнительной информации о osm файле, см. [1].
viewer = siteviewer('Buildings','hongkong.osm');
Задайте сайты передатчика и приемника.
tx = txsite('Latitude',22.2789,'Longitude',114.1625, ... 'AntennaHeight',10,'TransmitterPower',5, ... 'TransmitterFrequency',28e9); rx = rxsite('Latitude',22.2799,'Longitude',114.1617, ... 'AntennaHeight',1); show(tx); show(rx);
Задайте модель распространения трассировки лучей, которая использует метод SBR максимум с тремя отражениями.
pm = propagationModel('raytracing', ... 'Method','sbr', ... 'MaxNumReflections',3);
Выполните трассировку лучей между сайтами, генерируя comm.Ray
объекты в массиве ячеек. Для заданных сайтов передатчика и приемника, выполняя результаты трассировки лучей в массиве ячеек 1 на 1, содержащем три объекта луча подряд вектор.
rays = raytrace(tx,rx,pm)
rays = 1×1 cell array
{1×13 comm.Ray}
Отобразите свойства первого comm.Ray
объект. LineOfSight
значением свойства является 1
, и NumInteractions
значением свойства является 0
. Эта комбинация указывает, что луч задает путь угла обзора.
rays{1}(1)
ans = Ray with properties: PathSpecification: 'Locations' CoordinateSystem: 'Geographic' TransmitterLocation: [3×1 double] ReceiverLocation: [3×1 double] LineOfSight: 1 Frequency: 2.8000e+10 PathLossSource: 'Custom' PathLoss: 104.2656 PhaseShift: 4.6406 Read-only properties: PropagationDelay: 4.6442e-07 PropagationDistance: 139.2294 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 0
Отобразите свойства второго и трети comm.Ray
объекты. LineOfSight
значениями свойств является 0
, и NumInteractions
значения свойств больше 0
. Эта комбинация указывает, что лучи задают отраженные пути.
rays{1}(2)
ans = Ray with properties: PathSpecification: 'Locations' CoordinateSystem: 'Geographic' TransmitterLocation: [3×1 double] ReceiverLocation: [3×1 double] LineOfSight: 0 Interactions: [1×1 struct] Frequency: 2.8000e+10 PathLossSource: 'Custom' PathLoss: 106.2236 PhaseShift: 0.0788 Read-only properties: PropagationDelay: 4.6492e-07 PropagationDistance: 139.3787 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 1
rays{1}(3)
ans = Ray with properties: PathSpecification: 'Locations' CoordinateSystem: 'Geographic' TransmitterLocation: [3×1 double] ReceiverLocation: [3×1 double] LineOfSight: 0 Interactions: [1×1 struct] Frequency: 2.8000e+10 PathLossSource: 'Custom' PathLoss: 120.0733 PhaseShift: 4.9316 Read-only properties: PropagationDelay: 1.1327e-06 PropagationDistance: 339.5744 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 1
Визуализируйте результаты трассировки лучей.
plot(rays{1});
Приложение
[1] osm файл загружается с https://www.openstreetmap.org, который обеспечивает доступ к полученным толпой данным о карте во всем мире. Данные лицензируются под Открытыми Данными палата общин Открытая Лицензия Базы данных (ODbL), https://opendatacommons.org/licenses/odbl/.
Возвратите результаты трассировки лучей в comm.Ray
объекты и график пути к распространению луча после перезапуска карты Средства просмотра Сайта.
Создайте карту Средства просмотра Сайта, загрузив создание данных для Чикаго. Для получения дополнительной информации о osm файле, см. [1].
viewer = siteviewer('Buildings','chicago.osm');
Создайте ретранслятор на одном создании и сайт приемника на другом создании. Используйте los
функционируйте, чтобы показать путь к углу обзора между сайтами передатчика и приемника.
tx = txsite( ... 'Latitude',41.8800, ... 'Longitude',-87.6295, ... 'TransmitterFrequency',2.5e9); rx = rxsite( ... 'Latitude',41.881352, ... 'Longitude',-87.629771, ... 'AntennaHeight',30); los(tx,rx);
Выполните трассировку лучей максимум для двух отражений. Для заданной настройки трассировка лучей возвращает массив ячеек, содержащий объекты луча. Закройте карту Средства просмотра Сайта.
pm = propagationModel( ... 'raytracing', ... 'Method','sbr', ... 'MaxNumReflections',2); rays = raytrace(tx,rx,pm)
rays = 1×1 cell array
{1×3 comm.Ray}
rays{1}(1,1)
ans = Ray with properties: PathSpecification: 'Locations' CoordinateSystem: 'Geographic' TransmitterLocation: [3×1 double] ReceiverLocation: [3×1 double] LineOfSight: 0 Interactions: [1×1 struct] Frequency: 2.5000e+09 PathLossSource: 'Custom' PathLoss: 94.1067 PhaseShift: 1.1472 Read-only properties: PropagationDelay: 5.7089e-07 PropagationDistance: 171.1479 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 1
rays{1}(1,2)
ans = Ray with properties: PathSpecification: 'Locations' CoordinateSystem: 'Geographic' TransmitterLocation: [3×1 double] ReceiverLocation: [3×1 double] LineOfSight: 0 Interactions: [1×2 struct] Frequency: 2.5000e+09 PathLossSource: 'Custom' PathLoss: 101.8769 PhaseShift: 2.8594 Read-only properties: PropagationDelay: 5.9279e-07 PropagationDistance: 177.7143 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 2
rays{1}(1,3)
ans = Ray with properties: PathSpecification: 'Locations' CoordinateSystem: 'Geographic' TransmitterLocation: [3×1 double] ReceiverLocation: [3×1 double] LineOfSight: 0 Interactions: [1×2 struct] Frequency: 2.5000e+09 PathLossSource: 'Custom' PathLoss: 99.1597 PhaseShift: 4.6635 Read-only properties: PropagationDelay: 6.3790e-07 PropagationDistance: 191.2388 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 2
close(viewer);
Можно построить лучи, не выполняя трассировку лучей снова. Создайте другую карту Средства просмотра Сайта с теми же созданиями. Покажите сайты передатчика и приемника. Используя ранее возвращенный массив ячеек объектов луча, постройте отраженные лучи между ретранслятором и сайтом приемника. Функция построения графика может построить путь для объектов луча коллективно или индивидуально. Например, чтобы построить лучи для единственного второго объекта луча, задайте rays{1}(1,2)
. График этого рисунка все пути для всех объектов луча.
siteviewer('Buildings','chicago.osm'); los(tx,rx); plot(rays{:},'Type','power', ... 'TransmitterSite',tx,'ReceiverSite',rx);
Приложение
[1] osm файл загружается с https://www.openstreetmap.org, который обеспечивает доступ к полученным толпой данным о карте во всем мире. Данные лицензируются под Открытыми Данными палата общин Открытая Лицензия Базы данных (ODbL), https://opendatacommons.org/licenses/odbl/.
ReflectionLocations
и NumReflections
свойства были удаленыОшибки, запускающиеся в R2021b
ReflectionLocations
и NumReflections
свойства были удалены. Чтобы вместить отражения, используйте Interactions
свойство заменить ReflectionLocations
свойство и использование NumInteractions
свойство заменить NumReflections
свойство.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.