admin 管理员组文章数量: 887018
本项目仅使用一发一收,使用台式机发射信号,带有搭建5300网卡的3根天线的台式机采集数据,两部台式机都购买的mini主机搭建5300网卡
准备工作
1、5300网卡2个(半高)
2、一台台式机(采集数据)、一台台式机发射数据,monitor模式下 (因为看到说AP模式下采集数据不太稳定 所以最后选择用monitor模式)
3、主机搭建ubuntu系统
4、CSI Tool配置
5、MATLAB用于处理数据
具体流程
1、购买带有天线的5300网卡(半高卡适合笔记本,全高卡适合台式电脑),利用无线网卡外置天线构成天线阵列,用于接收无线信道数据并传给搭建5300网卡的电脑上。
2、系统搭建
1、打开mini主机。将原来的网卡替换为5300网卡
2、利用Utralso实现U盘刻录,然后装Ubuntu.最后利用easyBCD制作U盘启动,
新手安装 Ubuntu 操作系统步骤教程_ubuntu安装-CSDN博客
Win7下安装Ubuntu(双硬盘)的简要步骤-CSDN博客
3、按F11进入Ubuntu安装,接下来就可以按照安装流程一步一步来,我们的mini主机内存很小,只有10个G,分盘的时候/boot分了200M,/home分了7G,/..分了8G,/swap分了2G。(后来发现实在不行 又重新买了256G的主机 给D盘分配了50G用于装Ubuntu系统)
安装Ubuntu系统,本人所用系统为ubuntu14.04.1。可以参考知乎讲的双系统搭建方式,即在真机上搭建Ubuntu,如果使用虚拟机搭建最终会接收不到数据
在Windows7基础上安装Ubuntu系统,实现双系统操作 - 知乎 (zhihu)
Windows+Ubuntu20.04双系统安装教程 - 知乎 (zhihu)https://zhuanlan.zhihu/p/363640824#:~:text=Windows%2BUbuntu20.04%E5%8F%8C%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B%201%201.%20%E4%B8%BA%E4%BB%80%E4%B9%88%E9%80%89%E6%8B%A9Ubuntu20.04%20%E4%B9%8B%E5%89%8D%E4%BD%BF%E7%94%A8centos%EF%BC%8C%E4%BD%86%E6%98%AFcentos8.x%E5%B7%B2%E7%BB%8F%E4%B8%8D%E5%86%8D%E7%BB%B4%E6%8A%A4%EF%BC%8C%E7%BB%BC%E5%90%88%E5%85%B6%E4%BB%96%E4%B8%80%E4%BA%9B%E5%8E%9F%E5%9B%A0%E9%80%89%E6%8B%A9Ubuntu%EF%BC%8C%E8%80%8C%E4%B8%94%E8%BF%99%E4%B8%AA%E5%8F%91%E8%A1%8C%E7%89%88%E6%9C%AC%E4%BC%9A%E7%BB%B4%E6%8A%A45%E5%B9%B4%EF%BC%88%E5%85%B7%E4%BD%93%E5%88%B0%E5%93%AA%E4%B8%80%E5%B9%B4%E5%BF%98%E8%AE%B0%E4%BA%86%EF%BC%89%EF%BC%8C%E5%BE%88%E5%A4%9A%E9%9C%80%E8%A6%81%E7%94%A8%E5%88%B0%E7%9A%84%E8%BD%AF%E4%BB%B6%E4%B9%9F%E4%BC%9A%E4%B8%80%E7%9B%B4%E6%94%AF%E6%8C%81%E3%80%82%202%202.%20%E6%88%91%E7%9A%84%E7%94%B5%E8%84%91%E9%85%8D%E7%BD%AE,...%207%20%E4%BA%8C%E3%80%81%E4%B8%BAUbuntu%E5%88%86%E9%85%8D%E7%A3%81%E7%9B%98%E7%A9%BA%E9%97%B4%20%E6%88%91%E4%BB%AC%E9%9C%80%E8%A6%81%E5%9C%A8%E5%9B%BA%E6%80%81%E7%A1%AC%E7%9B%98%EF%BC%88%E4%B9%9F%E5%B0%B1%E6%98%AF%E7%B3%BB%E7%BB%9F%E7%9B%98%EF%BC%89%E5%88%86%E5%87%BA300M-500M%E7%9A%84%E7%A9%BA%E9%97%B4%E7%94%A8%E4%BA%8EUbuntu%E7%9A%84%2Fboot%E5%88%86%E5%8C%BA%E6%9D%A5%E4%BD%9C%E4%B8%BA%E5%90%AF%E5%8A%A8%E5%BC%95%E5%AF%BC%E6%96%87%E4%BB%B6%EF%BC%88%E5%90%A6%E5%88%99%E6%97%A0%E6%B3%95%E5%90%AF%E5%8A%A8Ubuntu%EF%BC%8C%E5%85%B7%E4%BD%93%E5%8E%9F%E5%9B%A0%E7%99%BE%E5%BA%A6%EF%BC%89%EF%BC%8C%E5%8F%A6%E5%A4%96%E5%A6%82%E6%9E%9C%E5%9B%BA%E6%80%81%E7%A1%AC%E7%9B%98%E5%85%85%E8%B6%B3%E5%8F%AF%E4%BB%A5%E9%A2%84%E7%95%99%E5%A4%84%2FSWAP%E5%88%86%E5%8C%BA%E7%9A%84%E7%A9%BA%E9%97%B4%E3%80%82%20...%208%20%E4%B8%89%E3%80%81%E5%AE%89%E8%A3%85Ubuntu%20%E6%9B%B4%E5%A4%9A%E9%A1%B9%E7%9B%AE
注意:CSI Tool适用于版本内核3.2 ( Ubuntu 12.04) 至 4.2 (Ubuntu 14.04.4)之间的Ubuntu系统
3、配置5300环境,安装编译CSI tool内核
2021/12/14---搭建5300网卡获取csi数据_5300网卡采集csi_城猪猪的博客-CSDN博客
CSI Tools 工具的安装 Intel 5300 + Ubuntu14.04_华为云 intel5300安装-CSDN博客
(1)在克隆内核git clone https://github/dhalperi/linux-80211n-csitool.git时可以下载速度很慢选择此方式[原创]Linux 802.11n CSI tool安装教程(亲测可用)_sciincx 802.11n-CSDN博客,这样下载的intel-5300-csi-github-master.tar.gz是一个精简版的内核
(2)如果一定要使用git clone https://github/dhalperi/linux-80211n-csitool-supplementary.git,但一直出现问题,是网络的问题,有以下两种方案:
1)重复执行下面的4行代码,下面克隆的时候也可能克隆不了 也执行这些步奏即可
git config --golbal http.postBuffer 30M(30M可以更改为其他的如:500M等等反正多试试)
git config --global --unset http.proxy
git config --global --unset https.proxy
git clone https://github/dhalperi/linux-80211n-csitool-supplementary.git
2)直接复制链接从github官网把需要拷贝的所有文件下载下来,创建一个linux-80211n-csitool-supplementary文件夹保存这些文件即可。
(2)在执行sudo apt-get install libpcap-dev时发现下载不了,可以在软件更新器中找到Ubuntu ,切换清华源到国内源。
4、获取CSI数据:AP模式和Monitor模式,本人使用Monitor模式
(1)AP模式:一台主机(安装Intel 5300网卡)+一个没有密码的路由器
操作流程:主机连接没有密码的路由器。主机ping路由器(在虚拟机中使用命令Ctrl+Alt+T打开一个终端,另开一个终端Ctrl+Shift+R,执行 ping 192.168.1.1 -i 0.2
,其中ip地址是路由器网关,0.2为发包间隔)。查看是否有输出,有则成功,ctrl+c停止收发,打开新的终端,cd到netlink文件夹,看到csi.dat数据,保存数据,下一次收发会清空上次的数据。
(2)Monitor模式:2台主机(安装Intel 5300网卡)
第二篇博主写的很好,主要参照他的方案进行:
Monitor模式和AP模式下获取WiFi的CSI信号_激活wificsi的原理-CSDN博客
Linux CSI Tool 完整使用说明(一发一收,monitor模式)(权威版 已成功测试)_csitool-CSDN博客
但在运行中还是遇到以下几个问题,将解决方案提供出来供大家参考
(1)一定按照moniter流程进行,即先初始化脚本moniter.sh,inject.sh.然后将接收端弄好,最后再发送端发射数据。接收端生成文件命名为test.dat
sudo ../netlink/log_to_file test.dat
(2)在初始化过程中执行接收端脚本sudo bash ./monitor.sh wlan0 64 HT20时,出现WLAN0:获取接口标志时出错:没有那个设备。但是我iwconfig时,是有wlan0的:替换掉moniter.sh中的代码,改为:
moniter.sh
#!/usr/bin/sudo /bin/bash
sudo modprobe -r iwlwifi mac80211
sudo modprobe iwlwifi connector_log=0x1
sudo service network-manager stop
SLEEP_TIME=2
WLAN_INTERFACE=$1
if [ "$#" -ne 3 ]; then
echo "Going to use default settings!"
chn=64
bw=HT20
else
chn=$2
bw=$3
fi
sleep $SLEEP_TIME
ifconfig $WLAN_INTERFACE 2>/dev/null 1>/dev/null
while [ $? -ne 0 ]
do
ifconfig $WLAN_INTERFACE 2>/dev/null 1>/dev/null
done
sleep $SLEEP_TIME
echo "Add monitor mon0....."
iw dev $WLAN_INTERFACE interface add mon0 type monitor
sleep $SLEEP_TIME
echo "Bringing $WLAN_INTERFACE down....."
ifconfig $WLAN_INTERFACE down
while [ $? -ne 0 ]
do
ifconfig $WLAN_INTERFACE down
done
sleep $SLEEP_TIME
echo "Bringing mon0 up....."
ifconfig mon0 up
while [ $? -ne 0 ]
do
ifconfig mon0 up
done
sleep $SLEEP_TIME
echo "Set channel $chn $bw....."
iw mon0 set channel $chn $bw
这样就能成功获取到数据啦!!!
5、在netlink文件夹下可以看到新生成的test.dat文件,
1、将获得 test.dat和linux-80211n-csitool-supplementary文件夹下的matlab 文件一起copy到windows10下,随便放在哪都可
2、然后打开window10下的MATLAB程序,转到保存linux-80211n-csitool-supplementary/matlab的地址下
3、在命令行中输入指令,主要就是为了调用read_bf_file文件,解析.dat文件
csi_trace = read_bf_file('test.dat'); //test.dat是自己保存的文件名。
4、打开工作区的csi_trae,就能看到接收到的CSI数据的具体构成啦
版权声明:本文标题:202310.9-台式机搭建5300网卡收集csi数据 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1729037087h1309891.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论