《转》【笔记3】获取csi文件,并用MATLAB处理

转自:http://blog.csdn.net/sodleave/article/details/44455903

利用MATLAB对csi数据进行分析与获取,参照网站 http://dhalperi.github.io/linux-80211n-csitool/faq.html 的第二部分 How do I process CSI with MATLAB or Octave?以下过程全在MATLAB中进行。


首先是包含csi数据的文件存放位置,参考前面的install instruction。新版的安装指南:linux-80211n-csitool-supplementary/netlink/目录下的csi.dat ;旧版的安装指南:linux-80211n-csitool-supplementary/netlink目录下的tmp.dat。将该文件拷到win 7能识别的地方,我们在win 7中用MATLAB对该文件进行操作。

示例中的csi文件是log.all_csi.6.7.6,以后替换为tmp.dat或csi.dat即可。

先将MATLAB目录转到linux-80211n-csitool-supplementary/matlab , 在命令窗口输入:csi_trace = read_bf_file('sample_data/log.all_csi.6.7.6'); 发现read_bfee出错。原因是网站只提供了32位(.mexw32)版本的read_bfee,而我的电脑是win7 64位的。要想利用read_bfee函数需要自己生成64位(.mexw64)版的。这里涉及到MATLAB与c联合编程的问题。

环境:MATLAB 2010b(更新的版本也行) ,visual studio 2010 (用VC 6.0会不兼容,不建议使用)

进行相关配置后输入:(参考网站; http://blog.sina.com.cn/s/blog_468651400100coas.html )

mex -setup    .....用于c编译器的选择,选择vs2010即可

..... .... 一些默认的设置(该部分若不清楚,百度“如何生成mex文件”即可)

mex read_bfee.c

最后生成read_bfee.mexw64

注意该部分会遇到编译不通过的情况,是由于vs 2010要求的语法格式与网站中的read_bfee.c有所不同。用codeblocks等gcc编译器就不会出现问题(但MATLAB与gcc编译器的绑定有些麻烦,不予考虑)(vs2010中不允许在程序主体部分再定义变量,所以将read_bfee.c中所有变量的定义移到函数开始阶段。即需要在程序的首部把该定义的变量都定义了)

附上编译出错的图片:



将read_bfee.c稍作更改再编译,最后成功生成read_bfee.mexw64文件,以后可以直接调用read_bfee.



后续的操作按照网站中的来,我利用同学的小型Tp-link路由器得到数据;

csi_entry =

   timestamp_low: 1.0139e+009

      bfee_count: 2

              Nrx: 3

              Ntx: 1

          rssi_a: 39

          rssi_b: 28

          rssi_c: 12

           noise: -85

              agc: 20

            perm: [1 2 3]

            rate: 2311

             csi: [1x3x30 double]


生成的图形:



Q&A:换一个路由器测得Ntx不为1,此时再用网站中的squeeze等作图会出错,关于Ntx的定义还不是很明确。

猜想:Ntx相当于发送天线的个数,Nrx相当于接收天线的个数。

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值