您好,欢迎访问三七文档
USRP实例构建本部分教授如何配置和使用USRP构建简单的通信链路。具体为不断的发射基本的正弦波信号,然后接收该信号,观测接收到的正弦信号波形,使用相关工具进行频谱检测分析,最后再分别查看经IQ分离后的信号波形。下面先了解NIUSRP使用前必须进行配置的函数模块功能和相应的各项配置参数,以便能合理正确的使用该设备;之候我们给出了由NIUSRP作为收发设备的正弦信号收发链路的详细构建过程。首先确认已经安装了niUSRP120(即USRP驱动程序V1.2),在电脑的开始菜单中打开NationalInstruments=NI-USRP=NI-USRPConfigurationUtility,查看USRP的IP地址,然后将与USRP相连的电脑IP地址设置为192.168.0.xxx.(即与USRP在同一网段中)。1.NIUSRP配置模块介绍NIUSRP配置模块通常放置于“仪器I/O=仪器驱动=NI-USRP=TX/RX”模版中,如下列出一些了常用的模块。niUSRPInitiateVIniUSRPOpenTX/RXSessionVIniUSRPConfigureSignalVIniUSRPCloseSessionVIniUSRPFetchRxData(poly)VIniUSRPWriteTxData(poly)VIniUSRPAbortVI在调制=模拟=Utilities模版中具有一些工具包,本实验中用到的一个频谱检测VI如下:niUSRPEXSpectralMonitoring(Interactive)VI注意:在上机培训之前,务必在给出的路径中查找到以上一些VIs,搞清楚它们的功能和管脚配置等信息2.正弦信号收发器构建步骤2.1构建正弦信号发射器创建一个空白VI,在框图窗口中构建如图1所示的发送电路图,要用到与硬件NIUSRP应用相关的模块为niUSRPOpenTXSession.vi,niUSRPConfigureSignal.vi,niUSRPWriteTxData(poly).vi,niUSRPCloseSession.vi(1)在niUSRPOpenTXSession.vi模块的设备名端口点击鼠标右键,在弹出的窗口中选择创建=控制,在前面板中创建了一个对应的区域,可以键入NIUSRP设备名(注:根据自已桌面的USRP标示设置)(2)在niUSRPConfigureSignalVI的IQrate,carrierfrequency和gain端口分别点击鼠标右键,在弹出的窗口中选择创建=控制,从而在前面板产生对应的控制区域(3)单击和选择菜单命令Window=ShowFrontPanel打开前面板窗口,在IQrate,carrierfrequency和gain输入配置区域输入如下指定的数据:Carrierfrequency=2.4GHz(注:根据自已桌面的USRP上标示的频点值而变)IQrate(samples/s)=400kGain(dB)=20Waveformsize=10000Activeantenna=TX1(4)点击选择菜单命令Window=ShowBlockDiagram打开框图窗口,点击鼠标右键从相应的模版中选择niUSRPWriteTXData(Poly).vi模块放置在窗口中,在其下拉菜单中选择CDB(5)然后再从模版编程=结构中选择while循环,将while循环框包围niUSRPWriteTXData(Poly)VI(6)在while循环的循环条件端口点击鼠标右键,在弹出的快捷菜单中选择创建=控制,从而在VI前面板中创建了一个STOP按钮(7)将niUSRPCloseSessionVI放置在前面板中,在它的错误输出端口点击鼠标右键,在弹出的菜单中选择创建=指示器,从而在前面板中创建了一个错误指示器(8)在框图窗口中点击鼠标右键,选择编程=数组=初始化数组,在初始化数组函数的元素输入端口点击鼠标右键,选择创建=常数,双击该常数,将其改变为常数1(9)在初始化数组的维数大小输入端单击鼠标右键,选择创建=控制,在前面板创建一个维数大小的输入控件(10)将初始化数组的输出端与niUSRPWriteTXData(poly)VI模块的数据输入端相连。因为发射器发送的是载波频率的正弦波信号,因此只要将一个常数作为基带信号送给NIUSRP即可完成该功能(11)最后,将while循环的STOP按钮与niUSRPWriteTXData(poly)VI的endofdata?输入端相连,控制结束发送数据。2.2构建正弦信号接收器2.2.1NI-USRP接收器接收所发射的正弦信号,利用VI的频谱分析工具niUSRPEXSpectralMonitoring(Interactive)VI进行频谱分析,检测所发射的正弦信号。打开该工具前面板,设置与相连的硬件USRP相关的参数,即USRPIPAddress((注:根据自已相邻桌面的USRP标示设置)CarrierFreqency=2.4GHz(注:根据自已桌面的USRP上标示的频点值而变)IQSamplingRate[s/sec]=400kAcqDuration[sec]=50m点击Reconfigure按钮,使得参数改变生效2.2.2采用Labview实用工具库中的函数获取接收的IQ信号实/虚部分量,可以分别得到接收信号的同相和正交分量,在绘图工具中进行观测,接收器框图如图3所示,具体步骤如下:(1)在框图窗口中放置与接收USRP相关的配置函数niUSRPOpenRXSession.vi、niUSRPConfigureSignal.vi及niUSRPInitiate.vi,按照图3所示的顺序连接。其中niUSRPConfigureSignalVI的输入参数设置如下:CarrierFrequency={2.4001GHz@transmitter}and{2.4GHz@receiver}(注:根据自已桌面的USRP上标示的频点值而变)IQrate=800kNumberofsamples=10000Activeantenna=RX2(2)在框图窗口中打开while循环,然后在其中打开niUSRPFetchRxData(poly).vi连续获取接收的数据(3)在while循环中打开GetComplexIQComponent.vi,它的输出包括了提取的IQ波形的实部和虚部成分(4)在前面板中打开两个波形图绘制工具WaveformGraph.vi,在框图窗口中将对应的波形图图标放置在while循环框中(5)将提取的IQ波形的实部和虚部成分分别与波形绘制工具的输入端相连(6)打开niUSRPAbort.vi和niUSRPCloseSession.vi,按图3所示连接同时运行所创建的正弦信号发射和接收器,观察接收信号的同相和正交分量的波形。图1.正弦信号产生VI框图图2.正弦信号产生VI前面板图3.连续的IQ接收VI3.发送模块(top_tx.vi)和接收模块(top_rx.vi)中用到的USRP相关VITXRF_init.vi-用合适的RF参数对USRP发送部分初始化TXRF_send.vi-执行发送操作(即发送复波形),以及关闭USRP发送部分RXRF_init.vi-用合适的RF参数对USRP接收部分初始化RXRF_config.vi-对RF接收部分的相关参数进行配置RXRF_recv.vi-获得复波形RXRF_close.vi-关闭USRP接收部分
本文标题:USRP实例构建
链接地址:https://www.777doc.com/doc-4933575 .html