当前位置: 首页 > 专利查询>常州工学院专利>正文

一种基于USRP的虚拟仿真系统及其方法技术方案

技术编号:16720136 阅读:19 留言:0更新日期:2017-12-05 17:40
一种基于USRP的虚拟仿真系统及其方法,包括USRP,所述USRP通过以太网与主机计算机PC相连接;所述主机计算机PC中包括LabVIEW软件平台和NI USRP软件套件,所述NI USRP软件套件在LabVIEW中增加了NI‑USRP驱动程序,所述LabVIEW软件平台中的程序通过NI‑USRP驱动程序与所述USRP进行交互;所述LabVIEW软件平台中的程序包括虚拟仿真程序;所述虚拟仿真程序包括虚拟仿真认知网络模块。有效避免了现有技术中缺少虚拟仿真手段、尤其是发射虚拟信号的办法来实现SU信号对PU信号的避让效果的缺陷。

A virtual simulation system based on USRP and its method

A virtual simulation system and method based on USRP, including USRP, the USRP is connected via Ethernet and PC host computer; the host computer in PC LabVIEW software platform and NI USRP software suite, the NI USRP software suite is added in LabVIEW NI USRP driver, the LabVIEW software platform programs interact through the NI USRP driver with the USRP; the LabVIEW software platform program including virtual simulation program; the virtual simulation program includes virtual cognitive network simulation module. It effectively avoids the lack of virtual simulation means in the existing technology, especially the method of transmitting virtual signal to realize the defect of the SU signal's avoidance effect on the PU signal.

【技术实现步骤摘要】
一种基于USRP的虚拟仿真系统及其方法
本专利技术涉及认知网络与5G关键
,具体涉及一种基于USRP的虚拟仿真系统及其方法。
技术介绍
软件无线电是一种可以用软件操控的无线电,它兼容不同的模式,可以直接在硬件平台上实现产品的更新换代,节约了产品更新换代的成本。认知无线电是在软件无线电的基础上发展而来的,可以自适应周围环境,提高频谱利用率,并避免对主用户PU的干扰。此外,由于认知无线电在5G中的应用是新兴技术,目前的研究基本局限于理论分析,缺少虚拟仿真手段,尤其是模拟发射虚拟信号的办法来实现SU信号对PU信号的干扰避让效果。
技术实现思路
为解决上述问题,本专利技术提供了一种基于USRP的虚拟仿真系统及其方法,有效避免了现有技术中缺少虚拟仿真手段、尤其是模拟发射虚拟信号的办法来实现SU信号对PU信号干扰避让效果的缺陷。为了克服现有技术中的不足,本专利技术提供了一种基于USRP的虚拟仿真系统及其方法的解决方案,具体如下:一种基于USRP的虚拟仿真系统,包括USRP,所述USRP通过以太网与主机计算机PC相连接;所述主机计算机PC中包括LabVIEW软件平台和NIUSRP软件套件,所述NIUSRP软件套件在LabVIEW中增加了NI-USRP驱动程序,所述LabVIEW软件平台中的程序通过NI-USRP驱动程序与所述USRP进行交互;所述LabVIEW软件平台中的程序包括虚拟仿真程序;所述虚拟仿真程序包括虚拟仿真认知网络模块。进一步地,所述USRP为NIUSRP,所述NIUSRP通过千兆以太网与主机计算机PC相连接。进一步地,所述主机计算机PC中还能够引用MATLABscript以此来实现LabVIEW与MATLAB的联调。进一步地,所述NI-USRP驱动程序包括八个函数,所述八个函数分别为9.niUSRP打开Rx会话VI,即niUSRPOpenRxSessionVI;10.niUSRP配置信号VI,即niUSRPConfigureVI;11.niUSRP初始化VI,即niUSRPInitiateVI;12.niUSRP打开Tx会话VI,即niUSRPOpenTxSessionVI;13.niUSRP提取接收数据VI,即niUSRPFetchRxDataVI;14.niUSRP发射数据VI,即niUSRPWriteTxDataVI);15.终止VI,即niUSRPAbortVI;16.关闭VI,即niUSRPCloseSessionVI;其中1-4中的VI实现配置功能,5-6中的VI实现读写功能,7-8中的VI实现结束功能。进一步地,所述基于USRP的虚拟仿真系统的方法,包括:通过LabVIEW发射虚拟信号的办法来实现SU信号对PU信号的避让效果,这种虚拟仿真的方法不再使用USRP收发信号,所述虚拟仿真程序中的虚拟仿真认知网络模块所处理的对象是一段可以控制的虚拟频谱,在虚拟频谱中,所述虚拟仿真程序中的虚拟仿真认知网络模块可以使由混合单频与波形信号函数产生PU信号随机出现,可以通过LabVIEW前面板,显示同时包含PU信号和SU信号的频谱图,检测SU对PU的避让效果,所述虚拟仿真认知网络模块中包括计算判决门限模块、能量检测模块以及发射虚拟信号模块。进一步地,所述计算判决门限模块是根据公式(1)来推导出门限值,Q(.)是正态分布尾部概率函数,所述计算判决门限模块包括计算门限设置信息的子VI、计算判决门限的子VI、MATLAB节点的程序和外围程序,所述计算门限设置信息的子VI对同一波段的频谱数据进行10次取样,将这10组取样处理结果的中位数作为输出,所述计算门限设置信息的子VI的输入端有三个参数,所述三个参数分别为待处理的功率密度谱的波形数据,待检测数据的起始频率和待检测数据的截止频率,而所述计算门限设置信息的子VI的输出端是一个簇集合,包括两个参数,该两个参数分别是整个波形数据的数组长度的一半N/2和信号的噪声功率σ2,把该两个参数代入公式(1)就能计算出对应于虚警概率的门限值λf,而在外围程序中,设置了1个全局变量cishu,还有2个局部变量Pnz和门限设置信息;cishu用于记录所述计算门限设置信息的子VI运行的次数;门限设置信息为前10次取样计算结果的中位数,如果取样次数不到10次,门限设置信息为每次取样后的计算结果;如果取样次数超过10次,门限设置信息与取样10次门限设置信息相同,另外还设置了局部变量数组形式的变量Pnz,Pnz负责把每次外围程序的运行结果存储下来,等到对频谱数据取样10次时,外围程序计算Pnz数组中数据的中位数,所述外围程序的具体流程如下:步骤1-1:获取全局变量cishu的值。在所述外围程序刚开始时,把cishu设置成1;步骤1-2:判断cishu是否小于11,如果小于11,执行步骤1-3;如果不小于11,执行步骤1-5;步骤1-3:把频谱数据段的数据送入MATLAB节点,利用MATLAB工具处理数据,把一次运算的结果依次存到局部变量数组Pnz中,在MATLAB节点里,程序会判断是否程序已经执行了10次,如果执行了10次,则会把10次数据的中位数作为门限设置信息的局部变量,并将该局部变量作为程序输出值;步骤1-4:全局变量cishu自加1赋给全局变量cishu;步骤1-5:获取步骤1-3中的门限设置信息,并将其作为程序输出值;所述MATLAB节点的程序计算指定频谱内的噪声功率和整个波形数据的长度的一半,取10次计算结果的中位数作为输出结果,所述MATLAB节点的输入端参数及作用如下:所述MATLAB节点的输入端参数包括:起始频率f1和截止频率f2,用于确定频谱范围;全局变量cishu,用于记录所述计算门限设置信息的子VI运行的次数;局部变量Pnz,用于存储前10次的计算结果;功率谱密度,所述功率谱密度是波形数据格式,包括三个参数f0,df,magnitude,分别表示波形的起始频率、频率间隔以及对应频率点的功率密度;所述MATLAB节点的输出端的参数及其含义如下:Pn是程序运行10次得到的噪声功率的中位数;M是波形数据长度的一半;局部变量Pnz用于把计算结果写入数组,以待MATLAB节点的程序再次运行时可以从中读取数据;所述MATLAB节点的程序的流程如下所示:步骤2-1:根据公式(2)计算出起始频率和截止频率各自在数组magnitude中对应的下标n1和n2,为了确保n1和n2是整数,使用round(n)函数对公式(2)运算的结果进行四舍五入处理,其中n为n1或者n2,f为f1或者f2:n=(f-f0)/df(2)步骤2-2:设置当起始频率在数组magnitude中对应的下标n1为0时,强制把该n1的值调整为1;步骤2-3:计算n1到n2的数据点的个数N,作为指定频率段数组的长度;计算出输入数组magnitude的长度值的一半赋值给M作为输出;步骤2-4:把波形幅度信息S中下标从n1到n2的元素值,用公式(3)进行计算,并把结果赋给新数组x,其中数组x的下标从1开始,长度为N:Pn=10^(Pn(dB)/10)(3)其中Pn(dB)表示用分贝dB值表示的噪声功率;步骤2-5:高斯噪声信号的能量在频域内的表达式为公式(4)所示:利用高斯噪声信号的功率谱均值P(f)是一个固定值,可本文档来自技高网...
一种基于USRP的虚拟仿真系统及其方法

【技术保护点】
一种基于USRP的虚拟仿真系统,其特征在于,包括USRP,所述USRP通过以太网与主机计算机PC相连接;所述主机计算机PC中包括LabVIEW软件平台和NI USRP软件套件,所述NI USRP软件套件在LabVIEW中增加了NI‑USRP驱动程序,所述LabVIEW软件平台中的程序通过NI‑USRP驱动程序与所述USRP进行交互;所述LabVIEW软件平台中的程序包括虚拟仿真程序;所述虚拟仿真程序包括虚拟仿真认知网络模块。

【技术特征摘要】
1.一种基于USRP的虚拟仿真系统,其特征在于,包括USRP,所述USRP通过以太网与主机计算机PC相连接;所述主机计算机PC中包括LabVIEW软件平台和NIUSRP软件套件,所述NIUSRP软件套件在LabVIEW中增加了NI-USRP驱动程序,所述LabVIEW软件平台中的程序通过NI-USRP驱动程序与所述USRP进行交互;所述LabVIEW软件平台中的程序包括虚拟仿真程序;所述虚拟仿真程序包括虚拟仿真认知网络模块。2.根据权利要求1所述的基于USRP的虚拟仿真系统,其特征在于,所述USRP为NIUSRP,所述NIUSRP通过千兆以太网与主机计算机PC相连接。3.根据权利要求1所述的基于USRP的虚拟仿真系统,其特征在于,所述主机计算机PC中还能够引用MATLABscript以此来实现LabVIEW与MATLAB的联调。4.根据权利要求1所述的基于USRP的虚拟仿真系统,其特征在于,所述NI-USRP驱动程序包括八个函数,所述八个函数分别为1.niUSRP打开Rx会话VI,即niUSRPOpenRxSessionVI;2.niUSRP配置信号VI,即niUSRPConfigureVI;3.niUSRP初始化VI,即niUSRPInitiateVI;4.niUSRP打开Tx会话VI,即niUSRPOpenTxSessionVI;5.niUSRP提取接收数据VI,即niUSRPFetchRxDataVI;6.niUSRP发射数据VI,即niUSRPWriteTxDataVI);7.终止VI,即niUSRPAbortVI;8.关闭VI,即niUSRPCloseSessionVI;其中1-4中的VI实现配置功能,5-6中的VI实现读写功能,7-8中的VI实现结束功能。5.根据权利要求1所述的基于USRP的虚拟仿真系统的方法,其特征在于,包括:通过LabVIEW发射虚拟信号的办法来实现SU信号对PU信号的避让效果,这种虚拟仿真的方法不再使用USRP收发信号,所述虚拟仿真程序中的虚拟仿真认知网络模块所处理的对象是一段可以控制的虚拟频谱,在虚拟频谱中,所述虚拟仿真程序中的虚拟仿真认知网络模块可以使由混合单频与波形信号函数产生PU信号随机出现,可以通过LabVIEW前面板,显示同时包含PU信号和SU信号的频谱图,检测SU对PU的避让效果,所述虚拟仿真认知网络模块中包括计算判决门限模块、能量检测模块以及发射虚拟信号模块。6.根据权利要求5所述的基于USRP的虚拟仿真系统的方法,其特征在于,所述计算判决门限模块是根据公式(1)来推导出门限值,Q(.)是正态分布尾部概率函数,所述计算判决门限模块包括计算门限设置信息的子VI、计算判决门限的子VI、MATLAB节点的程序和外围程序,所述计算门限设置信息的子VI对同一波段的频谱数据进行10次取样,将这10组取样处理结果的中位数作为输出,所述计算门限设置信息的子VI的输入端有三个参数,所述三个参数分别为待处理的功率密度谱的波形数据,待检测数据的起始频率和待检测数据的截止频率,而所述计算门限设置信息的子VI的输出端是一个簇集合,包括两个参数,该两个参数分别是整个波形数据的数组长度的一半N/2和信号的噪声功率σ2,把该两个参数代入公式(1)就能计算出对应于虚警概率的门限值λf,而在外围程序中,设置了1个全局变量cishu,还有2个局部变量Pnz和门限设置信息;cishu用于记录所述计算门限设置信息的子VI运行的次数;门限设置信息为前10次取样计算结果的中位数,如果取样次数不到10次,门限设置信息为每次取样后的计算结果;如果取样次数超过10次,门限设置信息与取样10次门限设置信息相同,另外还设置了局部变量数组形式的变量Pnz,Pnz负责把每次外围程序的运行结果存储下来,等到对频谱数据取样10次时,外围程序计算Pnz数组中数据的中位数,所述外围程序的具体流程如下:步骤1-1:获取全局变量cishu的值。在所述外围程序刚开始时,把cishu设置成1;步骤1-2:判断cishu是否小于11,如果小于11,执行步骤1-3;如果不小于11,执行步骤1-5;步骤1-3:把频谱数据段的数据送入MATLAB节点,利用MATLAB工具处理数据,把一次运算的结果依次存到局部变量数组Pnz中,在MATLAB节点里,程序会判断是否程序已经执行了10次,如果执行了10次,则会把10次数据的中位数作为门限设置信息的局部变量,并将该局部变量作为程序输出值;步骤1-4:全局变量cishu自加1赋给全局变量cishu;步骤1-5:获取步骤1-3中的门限设置信息,并将其作为程序输出值;所述MATLAB节点的程序计算指定频谱内的噪声功率和整个波形数据的长度的一半,取10次计算结果的中位数作为输出结果,所述MATLAB节点的输入端参数及作用如下:所述MATLAB节点的输入端参数包括:起始频率f1和截止频率f2,用于确定频谱范围;全局变量cishu,用于记录所述计算门限设置信息的子VI运行的次数;局部变量Pnz,用于存储前10次的计算结果;功率谱密度,所述功率谱密度是波形数据格式,包括三个参数f0,df,magnitude,分别表示波形的起始频率、频率间隔以及对应频率点的功率密度;所述MATLAB节点的输出端的参数及其含义如下:Pn是程序运行10次得到的噪声功率的中位数;M是波形数据长度的一半;局部变量Pnz用于把计算结果写入数组,以待MATLAB节点的程序再次运行时可以从中读取数据;所述MATLAB节点的程序的流程如下所示:步骤2-1:根据公式(2)计算出起始频率和截止频率各自在数组magnitude中对应的下标n1和n2,为了确保n1和n2是整数,使用round(n)函数对公式(2)运算的结果进行四舍五入处理,其中n为n1或者n2,f为f1或者f2:n=(f-f0)/df(2)步骤2-2:设置当起始频率在数组magnitude中对应的下标n1为0时,强制把该n1的值调整为1;步骤2-3:计算n1到n2的数据点的个数N,作为指定频率段数组的长度;计算出输入数组magnitude的长度值的一半赋值给M作为输出;步骤2-4:把波形幅度信息S中下标从n1到n2的元素值,用公式(3)进行计算,并把结果赋给新数组x,其中数组x的下标从1开始,长度为N:Pn=10^(Pn(dB)/10)(3)其中Pn(dB)表示用分贝dB值表示的噪声功率;步骤2-5:高斯噪声信号的能量在频域内的表达式为公式(4)所示:利用高斯噪声信号的功率谱均值P(f)是一个固定值,先求特定频段的均值P(f)df,然后以此均值P(f)df乘以频谱图数据的点数,求取整个频段的噪声功率P(t);步骤2-6:把Pn赋值给数组局部变量Pnz,数组的下标设置为程序运行的次数,也就是全局变量cishu;步骤2-7:根据全局变量cishu判断所述MATLAB节点的程序是否运行了10次,如果全局变量cishu等于10,执行步骤2-8,否则执行步骤2-9;步骤2-8:求取数组局部变量Pnz的中位数,把结果赋值给数组局部变量Pnz,并把Pnz作为输出,执行步骤2-9;步骤2-9:全局变量cishu自加1,表示程序已经完成了一次计算Pn,cishu是一个全局变量,在主程序初始运行时,默认值为1;再利用公式(1)计算判决门限T,所述计算判决门限的子VI根据输入参数计算出能量检测的门限值,而其输入参数包括门限设置信息和虚警概率,所述门限设置信息从计算门限设置信息的子VI中获取,虚警概率代表把噪声信号误当作PU信号的概率,可以手动设置,默认情况下为0.1,所述计算判决门限的子VI的输出结果为检测门限值T;而所述计算判决门限的子VI包括MATLAB节点的数据处理程序,所述MATLAB节点的数据处理程序的数据处理流程如下:步骤3-1:根据公式(1)可以计算出虚警概率pf所对应的门限值Tn,也就是λf,MATLAB节点的数据处理程序中包括qfuncinv()函数,其是MATLAB中的封装函数,能够实现Q-1()的功能;步骤3-2:因为功率谱密度的数据的单位是分贝,所以还需要把Tn的单位转换成dB,转换公式为公式(30)所示,公式(5)中的T(dB)表示单位为dB的检测门限值:T(dB)...

【专利技术属性】
技术研发人员:崔翠梅杨德智金石汪一鸣蔡纪鹤裴彤
申请(专利权)人:常州工学院
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1