このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
comm.Ray
説明
comm.Ray
オブジェクトには、RF 伝播光線のプロパティが用意されています。このオブジェクトには、ある点から別の点に伝播する電波 (これは光線として近似されます) に関する幾何学情報と電磁気情報が含まれています。
作成
通常は、関数 raytrace
を使用して comm.Ray
オブジェクトを作成します。
説明
は、既定の RF 伝播光線オブジェクトを作成します。ray
= comm.Ray
は、1 つ以上の名前と値のペアの引数を使用してプロパティを設定します。たとえば、ray
= comm.Ray(Name,Value
)comm.Ray("CoordinateSystem","Geographic","TransmitterLocation",[40.730610,-73.935242,0])
は、ニューヨーク市に送信機が配置された地理座標系を基準とする光線を作成します。
プロパティ
PathSpecification
— 伝播パスの指定方法
'Locations'
(既定値) | 'Delay and angles'
伝播パスの指定方法。次のいずれかの値に指定します。
'Locations'
— ウェイポイントの間の光線オブジェクト パスは、TransmitterLocation
プロパティ、ReceiverLocation
プロパティ、および必要に応じてInteractions
プロパティによる (x, y, z) 座標点として伝えられます。'Delay and angles'
— ウェイポイントの間の光線オブジェクト パスはPropagationDelay
プロパティ、AngleOfDeparture
プロパティ、およびAngleOfArrival
プロパティによって伝えられます。
データ型: char
| string
CoordinateSystem
— 座標系
'Cartesian'
(既定値) | 'Geographic'
座標系。'Cartesian'
または 'Geographic'
として指定します。CoordinateSystem
プロパティを 'Geographic'
に設定した場合、座標系は WGS-84 地球楕円体モデルを基準にして定義され、オブジェクトは送信機および受信機でのローカルの East-North-Up (ENU) 座標系を基準にして角度を定義します。
依存関係
このプロパティを有効にするには、PathSpecification
プロパティが 'Locations'
でなければなりません。
データ型: char
| string
SystemScale
— 直交座標系スケール
1
(既定値) | 正のスカラー
メートル単位の直交座標系スケール。正のスカラーとして指定します。
依存関係
このプロパティを有効にするには、PathSpecification
プロパティが 'Locations'
で、CoordinateSystem
プロパティが 'Cartesian'
でなければなりません。
データ型: double
TransmitterLocation
— 送信機の位置
[0;0;0]
(既定値) | 3 要素の数値列ベクトル
送信機の位置。座標の 3 要素の数値列ベクトルとして次のいずれかの形式で指定します。
[x; y; z] — この形式は、
CoordinateSystem
プロパティを'Cartesian'
に設定する場合に適用されます。オブジェクトは x、y、および z の範囲検証を実行しません。[latitude; longitude; height] — この形式は、
CoordinateSystem
プロパティを'Geographic'
に設定する場合に適用されます。latitude は範囲 [–90, 90] 内になければなりません。オブジェクトは longitude および height の範囲検証を実行しません。height は、世界測地系 1984 (WGS84) で定義されている楕円体を基準としています。
依存関係
このプロパティを有効にするには、PathSpecification
プロパティが 'Locations'
でなければなりません。
データ型: double
ReceiverLocation
— 受信機の位置
[10;10;10]
(既定値) | 3 要素の数値列ベクトル
受信機の位置。座標の 3 要素の数値列ベクトルとして次のいずれかの形式で指定します。
[x; y; z] — この形式は、
CoordinateSystem
プロパティを'Cartesian'
に設定する場合に適用されます。オブジェクトは x、y、および z の範囲検証を実行しません。[latitude; longitude; height] — この形式は、
CoordinateSystem
プロパティを'Geographic'
に設定する場合に適用されます。latitude は範囲 [–90, 90] 内になければなりません。オブジェクトは longitude および height の範囲検証を実行しません。height は、世界測地系 1984 (WGS84) で定義されている楕円体を基準としています。
依存関係
このプロパティを有効にするには、PathSpecification
プロパティが 'Locations'
でなければなりません。
データ型: double
LineOfSight
— 見通し線インジケーター
true
または 1
(既定値) | false
または 0
見通し線インジケーター。logical 1
(true
) または logical 0
(false
) として指定します。
値が
1
(true
) の場合、送信機から受信機への光線パスが障害物に妨げられていないことを意味します。値が
0
(false
) の場合、送信機から受信機へのパスが障害物に妨げられていることを意味します。
依存関係
このプロパティを有効にするには、PathSpecification
プロパティが 'Locations'
でなければなりません。
データ型: logical
Interactions
— 伝播パスに沿った光線-界面の相互作用
1 行 NI 列の構造体
伝播パスに沿った光線-界面の相互作用。これらのフィールドを含む 1 行 NI 列の構造体として指定します。NI は相互作用の数です。
Type
— 光線界面の相互作用のタイプ
'Reflection'
(既定値) | 'Diffraction'
光線界面の相互作用のタイプ。'Reflection'
または 'Diffraction'
として指定します。
データ型: char
| string
Location
— 光線界面の相互作用の位置
[10;10;0]
(既定値) | 3 行 1 列の数値ベクトル
光線界面の相互作用の位置。光線上の相互作用点の座標を含む 3 行 1 列の数値ベクトルとして指定します。
CoordinateSystem
プロパティが'Cartesian'
に設定されている場合、形式は [x; y; z] です。オブジェクトは x、y、および z の範囲検証を実行しません。CoordinateSystem
プロパティが'Geographic'
に設定されている場合、形式は [latitude; longitude; height] です。latitudeは [–90, 90] の範囲になければなりません。オブジェクトは longitude および height の範囲検証を実行しません。height は、世界測地系 1984 (WGS84) で定義されている楕円体を基準としています。
データ型: double
依存関係
このプロパティを有効にするには、PathSpecification
プロパティが 'Locations'
で、LineOfSight
プロパティが 0
(false
) でなければなりません。
データ型: struct
PropagationDelay
— 伝播遅延
5.7775e-08
(既定値) | 非負のスカラー
秒単位の伝播遅延。非負のスカラーとして指定します。既定値は、見通し内光線の TransmitterLocation
プロパティと ReceiverLocation
プロパティの既定値を使用して計算されます。
PathSpecification
プロパティを'Locations'
に設定した場合、このプロパティは読み取り専用になり、値はTransmitterLocation
、ReceiverLocation
、および必要に応じてInteractions
から導出されます。PathSpecification
プロパティを'Delay and angles'
に設定した場合、このプロパティは構成可能です。
データ型: double
PropagationDistance
— 伝播距離
17.3205
(既定値) | 非負のスカラー
この プロパティ は読み取り専用です。
メートル単位の伝播距離。非負のスカラーとして指定します。既定値は、見通し内光線の TransmitterLocation
プロパティと ReceiverLocation
プロパティの既定値を使用して計算されます。
PathSpecification
プロパティを'Locations'
に設定した場合、値はTransmitterLocation
、ReceiverLocation
、および必要に応じてInteractions
から導出されます。PathSpecification
プロパティを'Delay and angles'
に設定した場合、値はPropagationDelay
から導出されます。
データ型: double
AngleOfDeparture
— 発射角
[45; 35.2644]
(既定値) | [az; el] 形式の数値ベクトル
送信機から発射される光線の発射角 (度単位)。[az; el] 形式の数値ベクトルとして指定します。方位角 az は、正の x 軸から z 軸を中心に反時計回りに測定した値で、範囲 (–180, 180] 内でなければなりません。仰角 el は、xy 平面から測定した値で、範囲 [–90, 90] 内でなければなりません。既定値は、見通し内光線の TransmitterLocation
プロパティと ReceiverLocation
プロパティの既定値を使用して計算されます。
PathSpecification
プロパティを'Delay and angles'
に設定した場合、このプロパティは構成可能です。PathSpecification
プロパティを'Locations'
に設定した場合、このプロパティは読み取り専用になり、値はTransmitterLocation
、ReceiverLocation
、および必要に応じてInteractions
から導出されます。CoordinateSystem
が'Geographic'
に設定されている場合、角度は送信機でのローカルの East-North-Up (ENU) 座標系を基準にして定義されます。
データ型: double
AngleOfArrival
— 到来角
[-135; -35.2644]
(既定値) | [az; el] 形式の数値ベクトル
受信機に到達する光線の到来角 (度単位)。[az; el] 形式の数値ベクトルとして指定します。方位角 az は、正の x 軸から z 軸を中心に反時計回りに測定した値で、範囲 (–180, 180] 内でなければなりません。仰角 el は、xy 平面から測定した値で、範囲 [–90, 90] 内でなければなりません。既定値は、見通し内光線の TransmitterLocation
プロパティと ReceiverLocation
プロパティの既定値を使用して計算されます。
PathSpecification
プロパティを'Delay and angles'
に設定した場合、このプロパティは構成可能です。PathSpecification
プロパティを'Locations'
に設定した場合、このプロパティは読み取り専用になり、値はTransmitterLocation
、ReceiverLocation
、および必要に応じてInteractions
から導出されます。CoordinateSystem
が'Geographic'
に設定されている場合、角度は受信機でのローカルの East-North-Up (ENU) 座標系を基準にして定義されます。
データ型: double
NumInteractions
— 光線界面の相互作用の数
0
(既定値) | 非負の整数
この プロパティ は読み取り専用です。
送信機から受信機までの光線オブジェクトの光線界面の相互作用の数。非負の整数として指定します。値は LineOfSight
、および必要に応じて Interactions
から導出されます。
依存関係
このプロパティを有効にするには、PathSpecification
プロパティが 'Locations'
でなければなりません。
データ型: double
Frequency
— 信号周波数
1.9e+09
(既定値) | 正のスカラー
信号周波数 (Hz 単位)。正のスカラーとして指定します。
データ型: double
PathLossSource
— パス損失のソース
'Free space model'
(既定値) | 'Custom'
パス損失のソース。'Free space model'
または 'Custom'
として指定します。
データ型: char
| string
PathLoss
— パス損失
62.7941
(既定値) | 非負のスカラー
パス損失 (dB 単位)。非負のスカラーとして指定します。既定値は、見通し内光線の TransmitterLocation
プロパティと ReceiverLocation
プロパティの既定値を使用して計算されます。
PathLossSource
プロパティを'Free space model'
に設定した場合、PathLoss
プロパティは読み取り専用で、自由空間伝播モデルを使用してPropagationDistance
プロパティとFrequency
プロパティから導出されます。PathLossSource
プロパティを'Custom'
に設定した場合、幾何学的特性に関係なくPathLoss
プロパティを設定できます。
データ型: double
PhaseShift
— 位相シフト
4.8537
(既定値) | 数値スカラー
位相シフト (ラジアン単位)。数値スカラーとして指定します。既定値は、見通し内光線の TransmitterLocation
プロパティと ReceiverLocation
プロパティの既定値を使用して計算されます。
PathLossSource
プロパティを'Free space model'
に設定した場合、PhaseShift
プロパティは読み取り専用で、自由空間伝播モデルを使用してPropagationDistance
プロパティとFrequency
プロパティから導出されます。PathLossSource
プロパティを'Custom'
に設定した場合、幾何学的特性に関係なくPhaseShift
プロパティを設定できます。
データ型: double
オブジェクト関数
plot
(rays) | サイト ビューアーでの RF 伝播光線の表示 |
例
香港の 2 サイト間でのレイトレーシングの実行
香港でレイ トレーシングを実行し、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);
レイ トレーシング伝播モデルを作成します。MATLAB® は、RayTracing
オブジェクトを使用してこのモデルを表現します。最大 3
回の表面反射と最大 1
回のエッジ回折を伴うパスを検出するように、モデルを構成します。既定では、このモデルは Shooting and Bouncing Rays (SBR) 法を使用します。
pm = propagationModel("raytracing","MaxNumReflections",3,"MaxNumDiffractions",1);
レイ トレーシング解析を実行します。関数 raytrace
は、comm.Ray
オブジェクトを含む cell 配列を返します。既定では、レイ トレーシング モデルは最も強いパスより 40 デシベルを超えて弱い光線を破棄します。
rays = raytrace(tx,rx,pm)
rays = 1×1 cell array
{1×15 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.6360 Read-only properties: PropagationDelay: 4.6442e-07 PropagationDistance: 139.2294 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 0
3 番目の comm.Ray
オブジェクトのプロパティを表示します。LineOfSight
プロパティの値は 0
で、NumInteractions
プロパティの値は 2
です。この組み合わせは、光線と 2 つの界面の相互作用によってパスが定義されることを示しています。
rays{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.8000e+10 PathLossSource: 'Custom' PathLoss: 142.3763 PhaseShift: 0.7160 Read-only properties: PropagationDelay: 8.3065e-07 PropagationDistance: 249.0217 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 2
Interactions
プロパティのクエリを実行し、相互作用のタイプと位置を表示します。
rays{1}(3).Interactions(1)
ans = struct with fields:
Type: 'Diffraction'
Location: [3×1 double]
rays{1}(3).Interactions(2)
ans = struct with fields:
Type: 'Reflection'
Location: [3×1 double]
サイトとレイ トレーシング パスを可視化します。
show(tx) show(rx) plot(rays{1})
付録
[1] osm ファイルは、クラウドソーシングによる世界中の地図データへのアクセスを提供する https://www.openstreetmap.org からダウンロードされたものです。このデータは Open Data Commons Open Database License (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)
レイ トレーシング伝播モデルを作成します。MATLAB® は、RayTracing
オブジェクトを使用してこのモデルを表現します。既定では、このモデルは SBR 法を使用し、最大 2 回の反射を伴う伝播パスを計算します。
pm = propagationModel("raytracing");
レイ トレーシング解析を実行します。関数 raytrace
は、comm.Ray
オブジェクトを含む cell 配列を返します。
rays = raytrace(tx,rx,pm)
rays = 1×1 cell array
{1×3 comm.Ray}
最初の ray オブジェクトのプロパティを表示します。
rays{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: 92.7740 PhaseShift: 1.2933 Read-only properties: PropagationDelay: 5.7088e-07 PropagationDistance: 171.1462 AngleOfDeparture: [2×1 double] AngleOfArrival: [2×1 double] NumInteractions: 1
サイト ビューアーを閉じます。
close(viewer)
同じ建物、送信機サイト、受信機サイトを使用して、別のサイト ビューアーを作成します。次に、伝播パスを表示します。または、rays{1}(2)
のように、単一の ray オブジェクトを指定してパスを個別にプロットすることもできます。
siteviewer("Buildings","chicago.osm"); show(tx) show(rx) plot(rays{1},"Type","power", ... "TransmitterSite",tx,"ReceiverSite",rx)
付録
[1] osm ファイルは、クラウドソーシングによる世界中の地図データへのアクセスを提供する https://www.openstreetmap.org からダウンロードされたものです。このデータは Open Data Commons Open Database License (ODbL) https://opendatacommons.org/licenses/odbl/ によりライセンスされています。
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
バージョン履歴
R2020a で導入R2021b: ReflectionLocations
および NumReflections
プロパティは削除されました。
ReflectionLocations
および NumReflections
プロパティは削除されました。反射に対応するため、Interactions
プロパティで ReflectionLocations
プロパティを置き換え、NumInteractions
プロパティで NumReflections
プロパティを置き換えます。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)