本文详细介绍了使用 MATLAB 连接 NI USRP 的方法。我的设备是USRP-2942。
1、首先,在MATLAB中下载Communications Toolbox Support Package for USRP Radio 这个工具包,下载时好像需要fq。
2、设备连接到电脑,将电脑端的IPv4地址修改为 192.168.10.1,子网掩码为255.255.255.0,如下图所示。
执行了以上两步之后,可以通过ping 命令来检测设备的连通性。但此时还不能使用MATLAB进行连接。
在MATLAB中使用 findsdru 命令,可能会出现如下图所示的错误信息。
3、重点来了。
NI USRP支持两种驱动,一种是NI-USRP,适用于LabView。另一种是UHD,也正是MATLAB、GNU Radio等需要的。
MATLAB默认只支持基于Ettus的无线电设备,然而我们可以通过更新NI USRP设备的固件为 Ettus UHD固件,这样NI USRP就可以等效为一个基于Ettus的无线电设备,并且可以被MATLAB查找到。
4、以下为解决方案
- 用管理员权限打开命令窗,输入命令 uhd_image_loader --args=“type=x300,addr=192.168.10.2,fpga=HG” 等待下载完成。
- 用网线连接设备之后,输入命令
uhd_image_loader --args=“type=x300,addr=192.168.10.2” --fpga-path="<path_to_images>/usrp_x310_fpga_HG.bit" , 将<path_to_images>替换为上一步下载的文件路径(注意:修改路径的“\”为“/”)。我的下载路径为C:\Program Files\UHD\share\uhd\images
然后就是等待固件更新过程。
5、最后,我们再次回到MATLAB中,输入findsdru,此时,MATLAB已经能够成功查询到NI USRP设备。
|
请发表评论