实验三 OPNET Modeler无线建模.docx
- 文档编号:9123416
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:19
- 大小:205.05KB
实验三 OPNET Modeler无线建模.docx
《实验三 OPNET Modeler无线建模.docx》由会员分享,可在线阅读,更多相关《实验三 OPNET Modeler无线建模.docx(19页珍藏版)》请在冰点文库上搜索。
实验三OPNETModeler无线建模
实验三OPNETModeler无线建模
一、导读
随着无线网络的不断发展,对于无线网络领域的研究也越来越多。
OPNET专门提供了无线模块用于仿真各种无线网络,如无线局域网(WLAN)、蜂窝移动网、卫星通信网等。
二、无线建模概述
1、无线通信基础
无线模型是建立在广播介质上的,无线节点以及无线子网在仿真中都可以移动,因此建立一个无线网络不能单纯地仿照固定节点和有线链路,还需要了解一些必要的无线网络概念。
1)无线链路
无线链路与总线链路类似,也是通过广播的方式来发送包的。
但不同于点到点链路,无线链路并没有静态的表示形式,也就是说,在网络模型中无线链路是不可见的,它是在仿真中动态建立的。
无线链路可存在于任何无线收信机-发信机信道之间,其建立依赖于多种仿真参数,如频带、调制类型、发信机功率、移动对象的举例以及天线方向等。
2)连通性
由于无线通信采用广播方式,并且依赖于动态变化的参数,因而收/发信机管道必须确定发信机信道和每个收信机信道之间传输的连通性。
影响收/发信机管道网络级特征的因素有源和目的节点的位置、节点间的距离以及源到目的节点的无线信号传播的方向。
这些与位置相关的参数对于移动节点或卫星节点来说,在仿真过程中都有可能发生改变。
3)仿真效率
在无线网络仿真中需要进行大量的计算,比如OPNET需要为每个传输的包测试可能的发信机-收信机连接,并且频繁地验算移动站点的位置。
因此无线仿真相当耗时,不过无线模块提供了多种减少仿真时间的方法。
2、无线对象
无线对象包括无线链路、移动站点和卫星站点。
1)无线子网
无线模块在OPNET的标准模型库中加入了两类子网:
移动子网和卫星子网,它们可包含固定节点和移动节点。
子网又可嵌套其他固定子网或移动子网。
例如,表示空间站的卫星子网可能嵌套固定子网(如局域网)、移动子网(如携带各种通信设备的宇航员)、固定节点(如无线收/发信机)、移动节点(如便携式电脑)。
在仿真中,可通过三种方式来改变移动子网的位置:
预定义的轨迹段(TrajectorySegment)、矢量轨迹或直接改变子网的位置属性。
如果指定了轨迹段,则子网将在仿真中自动更新其位置。
移动子网的典型应用为那些随着时间改变其整体位置的网络,如潜水艇、轮船或飞机。
在仿真中,卫星子网可沿着为其指定的轨道运行,并随时间改变其位置。
由于移动子网和卫星子网都是相对于地球移动的,因而子网内外的对象不能通过点到点或总线链路进行链接。
2)无线通信节点
无线模块在OPNET的标准模型库中加入了两类通信节点:
移动节点和卫星节点,它们都与固定的通信节点类似,但可在仿真中改变其位置。
移动节点可沿着预定义的轨迹运行,也可按照节点进程的安排移动,而卫星节点只能沿着指定的轨道移动。
移动节点用于模拟那些随时间而改变位置的网络元素,如汽车、飞机和轮船。
在仿真中,移动节点也可通过三种方式来改变其位置:
轨迹段、矢量轨迹或直接改变节点的位置属性。
如果指定了轨迹段,节点就可在仿真中自动更新其位置。
卫星节点用于模拟随时间而改变位置的卫星对象,它沿着为其指定的轨道绕地球移动。
如果子网包含已指定轨道的卫星节点,那么父级子网的位置和大小不会影响卫星的轨道路径。
这与固定节点和移动节点不同,固定节点和位置节点的位置定义都是与它们的父级子网相关联的。
由于移动节点和卫星节点都是相对于地球移动的,因而它们不能通过点到点或总线链路连接。
3)无线通信链路
无线链路并不通过对象来表示,而是由仿真内核动态确定的。
模型中的所有节点可根据动态确立的链路来进行通信。
无线收/发信机在无线链路的确立上扮演着重要的角色。
不同于点到点链路和总线链路,无线链路无法通过属性值来确定管道阶段,因此无线收/发信机确定适当的管道阶段值,并通过计算来确定包是否被成功接收及何时接收。
默认收/发信机管道将计算目的节点是否在源节点的视距范围内,因此站点的位置是无线链路的主要决定因素。
视距是与站点和地球的相对位置有关的。
若地球位于两个站点之间,那么站点就被关闭并停止对无线链路的计算;若不在两个站点之间,那么链路关闭,可继续计算链路。
若采用地形建模,那么链路关闭将会受到除地球曲率外的多种地形特征的影响,如山丘等。
站点间的相对位置决定了无线信号的传播延时和路径损耗。
默认收/发信机计算从源站点到目的站点传播的无线信号的传播延时。
收/发信机管道同样可模拟无线信号传播过程中的衰减,路经损耗是与距离的平方成反比的。
若采用地形建模,大气和地形都将对传播和路径损耗产生影响。
4)无线域
仿真内核必须对无线链路上传送的每个包进行大量的计算,而无线域提供了一种方法来减少计算量,从而减少了无线仿真运行的时间。
无线域定义了一个矩形区域,并划分为多个逻辑栅格簇。
簇表示一个包含具有相同特征的节点的区域。
无线域选择性地保留无线管道的计算结果,用于将来相同簇之间通信时使用。
可保留的结果有:
信道匹配(ChannelMatch)、链路关闭(Closure)、传播时延(PropagationDelay)、路径损耗(PathLoss)。
三、实验内容
本例程中,将利用Modeler和无线建模来创建一个无线网络,并观察在动态网络拓扑中,接收节点处的无线噪声所造成的接收信号的变化。
在本实验中,除了将用到移动干扰节点外,还将用到新的链路类型——无线链路和新的节点类型——移动节点。
可以利用天线编辑器来创建定向天线模型,定义移动节点的轨迹并执行参数仿真。
干扰将降低无线网络的信噪比,而不同类型的天线(如定向天线)可提高网络的SNR。
例程将设计一个简单的无线网络,其中包括一个移动干扰节点和两个固定通信节点,然后指出固定节点在采用等向天线和定向天线时网络SNR的不同。
四、实验步骤
1、天线模式编辑器
本例程将创建一个新的天线模式,即在一个方向上增益大约为200dB,而在其他所有方向上均为0dB,这是一个完全的定向天线。
执行File->New…命令,从下拉列表中选择AntennaPattern,单击“OK”,出现天线模式编辑器,如图1所示。
图1天线模式编辑器
在本例程中,可以采用默认的theta划分(72),此时采样点的最大theta值为355°。
可以指定theta值为0°-355°,增益等于200dB的采样点。
在图形面板中任意指定两个采样点,将自动在所有采样点间线形插入增益值。
因此,只需指定0°和355°两个采样点。
按照以下步骤将当前设置调整为5°(=360/72):
1)在graphpanel中右击,从工作区弹出的菜单中选择SetPhiPlane,将出现一个度数选项菜单,如图2所示。
图2PhiPlane对话框
2)在菜单中选择5.0deg,图形面板如图3所示:
图3未指定样点的图形面板
接下来设置纵坐标范围:
Ø单击工具栏按钮
,设置纵坐标的上限。
在文本框中输入201,单击“OK”;
Ø单击工具栏按钮
,设置纵坐标的下限。
在文本框中输入199,单击“OK”。
这时图形面板显示了新的纵坐标范围,可以更加方便地输入精确的期望增益值。
完成了图形面板的设置后,接着制定phi=5°的采样点。
在0°、200dB处和355°、200dB处分别单击,在这两点间便自动设置了全部采样点,如图4所示。
图4指定采样点
在图形面板中定义了点后,3D的发射视图变成圆锥形,如图5所示,phi为5°-10°,theta为0°-360°。
图53D发射图
既然已经将增益值指定为phi=5°,那么需要将slice设置更改为0°,再来设置增益和采样点,可仿照以上步骤进行如下设置:
1)在图形面板中右击,从工作区弹出的菜单中选择DecreasePhiPlane,这时phi值从5°变为0°;
2)将纵坐标上限设为201,下限设为199;
3)在图形面板的0°、200dB处和355°、200dB处分别单击;
4)单击工具栏按钮
,对整个模式的3D增益函数进行归一化;
5)执行File->Save命令,将天线模式命名为mrt_cone,然后关闭天线模式编辑器
2、建立指向处理器
天线指向处理器将计算发信机模块的位置,并设置天线模块的目标属性。
它只接收开始仿真中断,因此可单独设为非强制状态。
1)执行File->New…命令,从下拉列表中选择ProcessModel,并单击“OK”,将出现进程模型编辑器;
2)单击工具栏按钮,在工具窗口中放置一个状态;
3)在新建的状态上右击,在弹出菜单中选择SetName,将状态命名为point。
接着按照以下步骤向进程模型倒入代码:
1)双击point状态的上部,打开输入执行块;
2)执行File->Import…命令,选择文件C:
\ProgramFiles\OPNET\10.0.A\models\std\tutorial_ref\modeler\mrt_ex,并保存设置。
接下来需要修改进程属性:
1)执行Interfaces->ProcessInterfaces命令,弹出进程接口对话框;
2)将begsimintrpt属性的初始值更改为enabled;
3)将所有属性的状态设为hidden。
单击“OK”,保存所有设置
最后,编译进程模型:
1)单击工具栏按钮,编译进程。
当出现提示时,将模型命名为mrt_rx_point,单击“Save”按钮;
2)进程模型编译完成后,关闭编译对话框和进程编译器。
3、创建节点模型
构建无线网络模型需要三个节点:
发信机节点、收信机节点和干扰节点。
3.1发信机节点
发信机节点由包产生器模块、无线发信机模块和天线模块组成。
包产生器每秒钟产生一个1024bit的包。
包产生完毕后,通过包流传到无线发信机模块,然后发信机模块完全利用信道带宽,以1024b/s的速率将包发送到信道。
然后包通过另一包流传到天线模块。
天线模块采用等向天线模式(默认值),在空间各个方向上都采用统一的传输增益。
按照以下步骤来创建发信机节点模型:
1)执行File->New…命令,在下拉列表中选择NodeModel,单击“OK”,出现节点模型编辑器;
2)利用工具栏按钮,按图6所示创建模块和包流,并为其命名
图6发信机节点模型
3)将tx_gen处理器的processmodel属性设置为simple_source
为运行参数化仿真,必须提升信道的power属性,便于在仿真运行期间对其进行修改:
1)在radio_tx节点上右击,从弹出的菜单中选择EditAttributes。
单击channel属性的Value域,如图7所示将弹出channel的复合属性对话框;
图7发信机属性对话框
2)在channel的复合属性对话框中单击“power”属性的值,然后单击“Promote”按钮,最后单击“OK”,关闭对话框,如图8所示。
图8提升power属性
接下来定义节点模型的接口属性:
1)执行Interfaces->NodeInterfaces命令,将弹出节点接口对话框;
2)在NodeTypes表中,将mobile和satellite类型的Supported值改为no;
3)在Attributes表中,将altitude的初始值改为0.003;
4)除了将属性radio_tx.channel[0].power的状态设为promoted外,其余属性的状态均设为hidden,如图9所示。
图9完成设置的节点接口对话框
5)根据需要可为该节点添加注释,以便将来参考。
最后节点的接口对话框应如图9所示。
单击“OK”。
执行File->Save命令,保存节点模型,并命名为mrt_tx
3.2干扰节点
网络干扰节点将无线噪声引入网络。
与固定发信机节点一样,干扰节点也由包产生器模块、无线发信机模块和天线模块组成。
二者在信道功率和信号调制方面不同,这种不同使得干扰节点将包作为噪声传给收信机。
下面通过复制发信机节点模型(mrt_tx)来创建干扰节点。
1)打开mrt_tx节点模型;
2)在radio_tx对象上右击,在弹出的菜单中选择“EditAttribute”,将modulation属性改为jammod;
3)单击“OK”,关闭radio_tx属性对话框;
4)执行Interfaces->NodeInterfaces命令,将mobile类型的Supported值改为yes,fixed类型的Supported值改为no;将注释改为描述干扰节点;
5)单击“OK”,关闭节点接口对话框;
6)执行File->SaveAs命令,保存文件并命名为mrt_jam
3.3收信机节点
收信机节点由天线模块、无线收信机模块、接收处理器模块和指向处理器模块组成。
按照以下步骤创建收信机节点:
1)执行Edit->ClearModel命令;
2)按照图10所示创建模块和包流,并命名;
图10收信机节点
3)在rx_point上右击,弹出属性对话框。
将processmodel属性值设为mrt_rx_point,单击“OK”,关闭对话框;
4)在radio_rx上右击,弹出属性对话框。
将errormodel属性值设为dra_error_all_stats,单击“OK”,关闭对话框;
5)在ant_rx上右击,弹出属性对话框。
右击左列的pattern属性,在弹出的菜单中单击PromoteAttributetoHigherLevel,这时右列的相应值变为promoted。
单击“OK”,关闭对话框;
6)执行Interfaces->NodeInterfaces命令;
7)在NodeType表中,将mobile和satellite类型的Supported值改为no。
将altitude属性的值改为0.003。
除了将属性ant_rx.pattern的状态设为promoted外,其余属性的状态均设为hidden;
8)单击“OK”。
执行File->SaveAs…命令,保存节点模型,并命名为mrt_rx。
关闭节点编辑器。
4、创建网络模型
完成了所有节点和进程模型的创建后,就可以创建网络模型了。
1)执行File->New…命令,选择Project,并单击“OK”;
2)将项目命名为mrt_net,场景命名为antenna_test;
3)按照表1所示进行向导设置:
表1启动向导
对话框名称
值
InitialTopology
默认值:
Createemptyscenario
ChooseNetworkScale
Enterprise(选择Usemetricunits复选框)
EnterpriseSizingMethod
Specifysize
SpecifySize
10km×10km
SelectTechnologies
None
Revies
检查各个值,然后单击“Finish”
4)在对象调色板中单击ConfigurePatette…,清除(Clear)调色板,然后单击“NodeModel”按钮,添加节点模型mrt_jam、mrt_rx和mrt_tx,将调色板另存为mrt_palette;
5)单击“OK”,关闭配置调色板对话框,然后按照图11所示构建网络
图11网络拓扑
6)对于每个节点,分别右击,在弹出的快捷菜单中选择AdvancedEditAttribute,查看高级属性对话框;按图设置名称;编辑每个节点的Xposition和Yposition属性(tx(3,3);rx(4,3);jam(0.5,2.5))
7)关闭对象调色板。
网络模型采用轨迹来指定节点的移动。
轨迹属性的值是在项目编辑器中创建的ASCII文本文件的名称。
文件内容说明了移动节点在仿真中的时间和位置。
定义了网络模型后,必须为移动干扰节点指定轨迹:
1)执行Topology->DefineTrajectory…命令
2)在定义轨迹对话框中,按照图12所示进行属性设置(Trajectorytype:
Fixedinterval;Altitude:
0.003kilometer(s);Timestep:
0h7m0s),然后单击“DefinePath”按钮。
图12定义轨迹对话框
单击“DefinePath”按钮后,对话框消失,鼠标在项目编辑器上将出现一条斜线,可按照以下步骤来描绘移动节点的轨迹:
1)在jam节点的边缘单击,作为轨迹的开始
2)在网格的(7.5,2.5)位置处单击
3)右击结束轨迹
4)在保存轨迹对话框中将轨迹命名为mrt,单击“OK”
最后将刚才创建的轨迹分配给jam节点:
1)在jam节点上右击,在弹出的快捷菜单中选择EditAttribute
2)将trajectory属性改为mrt
3)单击“OK”,关闭对话框,这时在项目编辑器中出现绿色的箭头表示的轨迹
4)在绿线上右击,在弹出的快捷菜单中选择EditTrajectory,将弹出编辑轨迹对话框。
按如图13所示设置X和Y值,单击“OK”,退出对话框并保存项目(覆盖原有文件)。
图13编辑轨迹信息
5、收集统计量并运行仿真
在此模型中,关注的是不同天线模式对网络中接收节点的影响。
可以通过配置仿真序列编辑器来自动改变属性,而不必为每个仿真都在节点级改变天线模式属性。
可以在项目编辑器中为仿真收集无线收信机信道统计量。
这些统计量包括误比特率(BER)和吞吐率(packets/sec)。
包的吞吐率表示了收信机信道每秒成功接收的包的个数的平均值。
只有当包的BER低于无线收信机模块的ECC门限值时,才会产生新的统计量采样值。
由于本例程中无线收信机模块使用的门限值为0.0errors/bit,因而只有没有任何比特错误的包才会接收。
按照以下步骤来收集误比特率和吞吐量统计量:
1)在rx节点对象上右击,在弹出的快捷菜单中选择ChooseIndividualDESStatistics
2)选择统计量ModuleStatistics->radio_rx.channel[0]->radioreceiver->biterrorrate和ModuleStatistics->radio_rx.channel[0]->radioreceiver->throughout(packets/sec)
3)在biterrorrate统计量上右击,在弹出的快捷菜单中选择ChangeCollectionMode
4)在捕获模式对话框中选中“Advanced”复选框
5)将Capturemode设为glitchremoval,单击“OK”
接着按照以下步骤设置吞吐量统计量的收集模式:
1)在throughput(packets/sec)统计量上右击,在弹出的快捷菜单中选择ChangeCollectionMode
2)在捕获模式对话框中选中“Advanced”复选框
3)将Capturemode设为bucket,将Bucketmode设为sum/time
4)单击Every…seconds,将采样频率设为10s。
注意不要选中Reset复选框
5)单击“OK”,关闭捕获模式对话框。
再单击“OK”,关闭选择结果对话框
收集完统计量后就可以进行仿真配置:
1)执行DES->Configure/RunDiscreteEventSimulation(Advanced)命令,打开仿真序列编辑器
2)在仿真集
上右击,在弹出的快捷菜单中选择EditAttribute
3)单击“ObjectAttribute”标签并选择“ObjectAttributes”选项卡,在此选项卡中单击“Add…”按钮,弹出添加属性对话框
4)单击Add列的三个未决属性,如图14所示,选择完毕后单击“OK”
图14添加属性对话框
这些属性将提升到节点编辑器。
由于提升属性的时候没有分配值,因而现在必须为其赋值。
按照以下步骤为ant_rx.pattern属性添加值(如图15所示):
图15添加提升属性的值
1)单击选中“ant_rx.pattern”属性,单击“SetMultipleValues…”按钮
2)在属性对话框中单击“Value”的第一个单元,选择isotropic,移到下一行,选择mrt_cone,单击“OK”
3)将jam.radio_tx.channel[0].power属性设为20
4)将tx.radio_tx.channel[0].power属性设为1
添加完属性值后如图15所示。
注意,此时Numberofruninset的值为2,这是因为此时ant_rx.pattern属性有两个可能的值,因此将采用两个不同的属性值,运行两个独立的仿真。
当运行多个仿真时,若想存储每个仿真的结果,则必须选中“Savevectorfileforeachruninset”复选框,如图16所示。
图16选中“Savevectorfileforeachruninset”复选框
除此以外,还需要修改仿真的Seed、Duration和更新间隔:
1)单击“Common”标签,并选择“Common”选项卡
2)在“Common”选项卡中将Seed设为50;将Duration设为420seconds;将Updateinterval设为100
3)完成设置后,单击“Apply”,关闭仿真序列对话框,保存仿真集
4)在项目编辑器中选择Edit->Preferences;输入repositories,单击“Find”;检查Value单元值为(),删除相关条目
5)单击“OK”,关闭对话框
6)运行仿真
7)运行完两个仿真后,关闭仿真序列编辑器
6、查看结果
运行完仿真后,就可以查看误比特率和包吞吐率结果了。
1)执行File->New…命令,选择AnalysisConfiguration,单击“OK”
2)单击工具栏按钮
,可以看到有两个结果:
mrt_net-antenna_test-1和mrt_net-antenna_test-2,分别为等向天线模式和锥形天线模式仿真的结果。
3)展开mrt_net-antenna_test-1,选择biterrorrate,单击“Show”按钮,将出现等向天线的误比特率,如图17所示
图17等向天线的误比特率
正如预期的一样,等向天线模式图反映了收信机节点的误比特率随着干扰节点与收信机节点间距离的减少而增加。
当干扰节点和收信机节点间距离最小时,误比特率达到最大值,大约为0.32。
等向收信机天线在整个仿真中都收到干扰节点的干扰。
4)取消mrt_net-antenna_test-1的biterrorrate,选择mrt_net-antenna_test-2的biterrorrate,单击“Show”按钮,将出现定向天线的另一个误比特率,如图18所示
图18定向天线的误比特率
定向天线模式图同样也反映了收信机节点的误比特率随着干扰节点与收信机节点间距离的减少而增加。
但是在大约一分钟后,干扰天线和收信机天线间的方向矢量不再与收信机天线最大增益的方向一致,因此收信机节点停止接收干扰节点的干扰,收信机的误比特率降为0,从而显著减少了从固定发信机节点处收到的包。
下面来查看包的吞吐率。
1)关闭误比特率图表,取消选择查看结果对话框中误比特率的统计量
2)选择mrt_net-antenna_test-1和mrt_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验三 OPNET Modeler无线建模 实验 Modeler 无线 建模