主要内容

光线跟踪

显示或计算射频传播射线

描述

光线跟踪函数通过使用由定义的曲面几何来绘制或计算传播路径“地图”财产。每个绘制的传播路径都根据路径上的接收功率(dBm)或路径损耗(dB)用颜色编码。光线追踪分析包括表面反射,但不包括衍射、折射或散射的影响。此功能的操作频率从100 MHz到100 GHz。有关更多信息,请参见选择传播模型

例子

光线跟踪(tx处方显示从发射机站点(tx)传送至接收地点(处方)在当前网站查看器中使用射击和反弹射线(SBR)方法,最多有两个反射。

例子

光线跟踪(tx处方propmodel显示从发射机站点(tx)传送至接收地点(处方),基于指定的传播模型。要输入建筑和地形材料来计算路径损失,创建射线追踪的使用propagationModel功能,并设置属性以指定建筑材料。

光线跟踪(___名称,值显示带有由一个或多个名称-值对指定的附加选项的传播路径。

射线=光线跟踪(___返回传入的传播路径射线

例子

全部折叠

用SBR方法进行射线追踪分析,显示芝加哥的反射传播路径

芝加哥的发射场观测器。有关osm文件的更多信息,请参见[1]

观众= siteviewer (“建筑”“chicago.osm”);

在一幢建筑物上建立一个发射台,在另一幢建筑物附近建立一个接收器。

tx = txsite (“人肉搜索”, 41.8800,...“经”, -87.6295,...“TransmitterFrequency”, 2.5 e9);显示(tx) rx = rxsite(“人肉搜索”, 41.8813452,...“经”, -87.629771,...“AntennaHeight”, 30);显示(rx)

显示视线受阻。

洛杉矶(tx, rx)

显示反射传播路径使用光线追踪多达两个反射。

光线跟踪(tx, rx)

附录

[1] osm文件下载路径https://www.openstreetmap.org该网站提供了世界各地的众包地图数据。数据是在开放数据共享开放数据库许可证(ODbL)下许可的,https://opendatacommons.org/licenses/odbl/

芝加哥的发射场观测器。有关osm文件的更多信息,请参见[1]

观众= siteviewer (“建筑”“chicago.osm”);

在建筑物上创建一个发射机站点。

tx = txsite (“纬度”, 41.8800,...“经”, -87.6295,...“TransmitterFrequency”, 2.5 e9);

在另一栋建筑附近建立一个接收点。

rx = rxsite (“纬度”, 41.881352,...“经”, -87.629771,...“AntennaHeight”, 30);

利用射线追踪传播模型计算信号强度。默认情况下,光线追踪模型使用SBR方法,并执行视线和双反射分析。

点= propagationModel (“射线”);ssTwoReflections = sigstrength (rx, tx, pm)
ssTwoReflections = -52.4056

绘制多达两个反射的SBR的传播路径。

光线跟踪(tx, rx点)

通过分析最多两个反射来计算信号强度,其中总接收功率是所有传播路径的累积功率

点。米一个xNumReflections=5; ssFiveReflections = sigstrength(rx,tx,pm)
ssFiveReflections = -51.8927

观察材料的效果,用完美的反射器代替默认的混凝土材料。

点。BuildingsMaterial =“perfect-reflector”;ssPerfect = sigstrength (rx, tx, pm)
ssPerfect = -38.8614

绘制多达五个反射的SBR的传播路径。

光线跟踪(tx, rx点)

附录

[1] osm文件下载路径https://www.openstreetmap.org该网站提供了世界各地的众包地图数据。数据是在开放数据共享开放数据库许可证(ODbL)下许可的,https://opendatacommons.org/licenses/odbl/

由于香港的物质反射和大气造成的路径损耗。配置射线追踪,使用发射-弹跳-射线(SBR)方法多达5个反射。

在香港的发射场观看建筑物。有关osm文件的更多信息,请参见[1]

观众= siteviewer (“建筑”“hongkong.osm”);

定义发射机和接收机位置,以模拟高密度城市环境中的小小区场景。

tx = txsite (“名称”“小细胞发射机”...“人肉搜索”, 22.2789,...“经”, 114.1625,...“AntennaHeight”10...“TransmitterPower”5,...“TransmitterFrequency”, 28日e9);rx = rxsite (“名称”“小细胞接收器”...“人肉搜索”, 22.2799,...“经”, 114.1617,...“AntennaHeight”1);

创建一个光线追踪传播模型,完美的反射多达5个反射。指定光线追踪方法为拍摄和反射光线(SBR)。

点= propagationModel (“射线”...“方法”“sbr”...“AngularSeparation”“低”...“MaxNumReflections”5,...“BuildingsMaterial”“perfect-reflector”...“TerrainMaterial”“perfect-reflector”);

可视化传播路径并计算相应的路径损耗。

光线跟踪(tx, rx,点,“类型”“pathloss”) rayperfect=raytrace (tx,rx,pm,“类型”“pathloss”);plPerfect = [raysPerfect{1}。PathLoss]
plPerfect =1×15104.2656 104.2744 112.0095 109.3152 112.0156 112.0375 112.4436 109.3198 112.0406 112.0406 112.4444 112.4444 117.7513 117.7524 117.7638

通过在传播模型中设置建筑和地形材料类型,配置材料反射损耗后,重新计算和可视化传播路径。第一个值不变,因为它对应于视线传播路径。

点。BuildingsMaterial =“玻璃”;点。TerrainMaterial =“具体”;光线跟踪(tx, rx,点,“类型”“pathloss”raysMtrls = raytrace(tx,rx,pm,“类型”“pathloss”);plMtrls = [raysMtrls{1}。PathLoss]
plMtrls =1×15104.2656 106.2892 119.3577 121.5813 122.2841 121.4389 127.0060 122.4593 122.7023 122.6987 127.3370 127.4155 139.1007 139.6483 153.4364

通过添加大气传播模型,重新计算和可视化带有大气损失的传播路径。

pm = pm +传播模型(“雨”) + propagationModel (“气”);光线跟踪(tx, rx,点,“类型”“pathloss”射线大气=射线跟踪(tx,rx,pm,“类型”“pathloss”);plAtmospheric = [raysAtmospheric{1}。PathLoss]
plAtmospheric =1×15105.3245 107.3489 121.9430 123.4767 124.8711 124.0280 129.7238 124.3558 125.2929 125.2895 130.0563 130.1335 143.0839 143.6316 157.4224

附录

[1] osm文件下载路径https://www.openstreetmap.org该网站提供了世界各地的众包地图数据。数据是在开放数据共享开放数据库许可证(ODbL)下许可的,https://opendatacommons.org/licenses/odbl/

这个例子展示了如何:

  • 缩放STL文件,使模型使用米的单位。

  • 在“站点查看器”中查看缩放模型。

  • 使用射线追踪来计算和显示从发射机到接收机的传播路径。

当笛卡儿txsiterxsite目标需要以米为单位的位置坐标,STL文件可能使用其他单位。如果STL文件不使用度量,则必须在将模型导入Site Viewer之前缩放模型。

读取STL文件作为三角测量对象。这个档案模拟了一个有一张桌子和四把椅子的小会议室。

TR = stlread (“conferenceroom.stl”);

缩放坐标并创建一个新的三角测量对象。对于本例,假设STL单位与米的换算系数为0.9

规模= 0.9;scaledPts = TR.Points *量表;TR_scaled =三角(TR.ConnectivityList scaledPts);

查看新三角测量对象使用站点查看器。或者,您可以保存新文件三角测量对象作为STL文件使用stlwrite函数。

观众= siteviewer (“SceneModel”, TR_scaled);

创建并显示靠近墙壁的发射机位置和桌子下的接收器位置。使用米为单位的笛卡尔坐标指定位置。

tx = txsite (“笛卡儿”...“AntennaPosition”, (-1.25;-1.25;1.9),...“TransmitterFrequency”, 2.8 e9);显示(tx,“ShowAntennaHeight”rx = rxsite(“笛卡儿”...“AntennaPosition”, (0.3;0.2;0.5]);显示(rx,“ShowAntennaHeight”假)

通过左键单击平移,通过右击或使用滚动轮缩放,通过单击中间按钮并拖动或按下旋转可视化Ctrl左键点击和拖动。

为笛卡尔坐标创建一个射线追踪传播模型。指定光线追踪方法为拍摄和反射光线(SBR)。计算光线的波长2反射。设置表面材料为木材。

点= propagationModel (“射线”...“CoordinateSystem”“笛卡儿”...“方法”“sbr”...“MaxNumReflections”2,...“SurfaceMaterial”“木”);

计算传播路径并将结果作为comm.Ray对象。提取并绘制光线。

r =光线跟踪(tx, rx点);r = {1};图(右)

通过点击它来查看射线的信息。

输入参数

全部折叠

发射机位置,指定为txsite对象或数组txsite对象。如果将接收站点指定为阵列,则绘制从每个发射机到每个接收站点的传播路径。

接收器位置,指定为rxsite对象或数组rxsite对象。如果将发射机站点指定为阵列,则绘制从每个发射机站点到每个接收站点的传播路径。

属性创建的传播模型,指定为字符向量、字符串或射线跟踪传播模型propagationModel函数。默认值是射线追踪的,使用SBR方法的射线追踪传播模型,最大反射数设置为2

要指定计算不同数量反射的光线追踪传播模型,请创建射线追踪对象的propagationModel函数,并设置MaxNumReflections财产。

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“类型”、“力量”

要绘制的数量的类型,指定为逗号分隔的对,由“类型”“权力”dBm或“pathloss”在dB。

当你指定“权力”在美国,每条路径都根据沿途接收到的功率用颜色编码。当你指定“pathloss”,每条路径都根据路径上的路径损耗用颜色编码。

采用Friis方程计算接收功率:

P r x P t x + G t x + G r x l l t x l r x

地点:

  • P处方是沿着路径接收的能量。

  • Ptx是tx.TransmitterPower中定义的发射功率。

  • Gtx为tx在偏离角(AoD)方向的天线增益。

  • G处方为rx在到达角方向上的天线增益。

  • l为沿路径计算的路径损耗。

  • ltx是tx.SystemLoss中定义的发射机系统损失。

  • l处方是rx.SystemLoss中定义的接收机的系统损失。

数据类型:字符

射线追踪分析的传播模型类型,指定为逗号分隔对,由“PropagationModel”射线追踪的或者一个射线追踪传播模型propagationModel函数。如果您指定射线追踪的,那么光线跟踪函数通过使用多达2个反射的SBR方法计算射线跟踪传播模型对象配置的传播路径

要使用图像方法执行光线追踪分析,请指定使用propagationModel函数。这段代码展示了如何创建使用映像方法的传播模型。

点= propagationModel (射线追踪的“方法”“图像”);

有关图像和SBR方法之间的区别,请参见选择传播模型

数据类型:字符

颜色映射的颜色限制,指定为逗号分隔对,由“ColorLimits”以及形式为[min max]的两元素数字行向量。颜色限制的单位和默认值取决于“类型”参数:

  • “权力”—单位为“dBm”,默认值为-120年[5]

  • “pathloss”—单位为dB,默认值为[45 160]

颜色限制指示映射到颜色映射中的第一个和最后一个颜色的值。不绘制值低于最小颜色限制的传播路径。

数据类型:

用于着色传播路径的颜色映射,指定为逗号分隔对,由“Colormap”和一个预定义的颜色地图名称或-by-3数组的RGB(红,蓝,绿)三元组定义个人色彩。

数据类型:字符|

在地图上显示颜色图例,指定为逗号分隔对,由“ShowLegend”真正的

数据类型:逻辑

用于可视化或地面数据的地图,指定为siteviewer对象,三角测量对象、字符串标量或字符向量。有效值和默认值取决于坐标系统。

坐标系统 有效的映射值 默认映射值
“地理”
  • 一个siteviewer对象一个

  • 如果使用输出参数调用函数,则为地形名称。有效的地形名称有“没有”“gmted2010”,或自定义地形数据的名称addCustomTerrain

  • 当前的siteviewer对象或新的siteviewer对象,如果没有打开。

  • “gmted2010”,如果函数被调用时带有输出。

笛卡儿的
  • “没有”

  • 一个siteviewer对象。

  • STL文件的名称。

  • 一个三角测量对象。

  • “没有”

一个对齐边界和区域标签是数据供应商提供的特性的一种表示,并不意味着MathWorks认可®

数据类型:字符|字符串

输出参数

全部折叠

射线配置,返回为——- - - - - -N单元阵列,发射点的数量是多少N为接收站点的数量。每个单元格元素是的行向量comm.Ray对象表示在相应的发射端和接收端之间发现的所有射线。在每个行向量中comm.Ray具有相同发射器到接收器交互类型的对象被分组在一起,分组按字母顺序排序,然后按反射次数升序。在每一组中,射线都是通过增加传播距离来排序的。

兼容性的考虑

全部展开

不建议从R2021b开始

行为在R2021b中改变

介绍了R2019b