步骤1:收集零件
为此,我正在使用:
raspberry pi 2 model b运行raspbian
带wifi分析器应用程序的智能手机
u-verse 2线网关
linksys wap300n无线接入点
注意:
用黑桃括起来的文本(例如♣replace-this♣)应替换为实际值。当然,除去黑桃。
测量内容始终包含在附录中。
步骤2:设置无线访问点
图像:在智能手机上运行的应用wifi analyzer的屏幕截图。
wifi analyzer
确保您的无线访问点(ap)受到邻居的干扰最小。
在智能手机上加载wi-fi分析器应用程序。
确保您的wi-fi频道与邻居的wi-fi频道不同。
默认情况下,大多数isp在通道1上设置其用户。
如果可能,请将您的ap置于不同于邻居的通道上。
使用奇数编号的信道。
设置无线接入点
确保正确设置了ap。我的isp提供商的网关具有内置的802.11b/g ap,我为18mbps的连接付费。我禁用了网关的ap,并向我的网络添加了802.11n ap。 802.11n ap具有以下设置:
2.4 ghz(禁用5ghz)
网络模式=混合
网络名称(ssid)=:
通道宽度=自动(20mhz或40mhz)
通道= 1
ssid广播=启用
安全模式= wpa2(不‘
第3步:这全与功耗有关
2.4ghz与raspberry pi配合使用效果最好。
h2》
图片:电源适配器和raspberry pi引脚
电源适配器
高质量的电源适配器是rpi正常运行的基础。
我有5个电源适配器,这些电源适配器包含在raspberry pi入门套件中。 5个适配器中的2个提供一致的5v。
添加到raspberry pi的任何设备都使用电源。因此,usb设备或hdmi监视器可以使raspberry pi达到次佳的性能。
根据http://nordicgroup.us/rpi/power/:
“ raspberry pi在4.75v以下开始不稳定运行”
[您必须有一个电源,在5.2v(12瓦)下输出]“ 2.4a”。额外的0.2v减轻了电缆和raspberry pi板上电压降的影响。”
根据http://elinux.org/rpi_hardware来测量电压:
使用万用表设置为20伏直流电(或20v =)
测量从pin#02直流电源5v到pin#06接地的电压
电压应介于4.75和5.25伏特。
推荐的电源适配器和电缆:
5.2v 2.1a usb电源适配器,来自亚马逊$ 5.99
micro来自亚马逊的usb至usb电缆3英尺$ 4.69
测量:
适配器的传输带宽,可提供正确的电压
12.2 mbps
提供4.75v或更低电压的适配器的传输带宽:
7.66 mbps
第4步:选择适配器
图片:iperf3,每个适配器上的间隔为1000。 x轴为mbps,y轴为该带宽内的测量计数。
选择适配器
设备可以宣传为802.11n,但不能在raspberry pi上达到11n的带宽速率。列出设备的传输速率会产生误导。而是测量实际带宽。
wi-fi芯片组的多个方面都会对带宽产生负面影响。
realtek率先开发了软调制解调器;降低了以太网的成本,同时将处理从以太网芯片组转移到主机处理器。在pc或macbook上,cpu经常处于空闲状态,这是一个很棒的功能,并且可以节省金钱。但是,在raspberry pi上,将处理任务转移到arm会对wifi带宽和应用程序性能产生负面影响。
我的大多数应用程序不需要高wifi带宽。某些需要高wifi带宽的应用程序是media server,nas和基于raspberry pi的pc。
一些通用规则:
当前的适配器必须本地支持版本的raspbian。
检查是否有人使适配器能够工作,或者已知适配器有问题。
首先查看以下链接:http://elinux.org/rpi_usb_wi-fi_adapters。
必须由raspberry pi模型支持适配器二手(raspberry pi 2 model b)
测量性能
我将在购买适配器时测量更多的适配器。为了获得最佳性能(最好的带宽放在首位):
熊猫300mbps无线n usb适配器
edimax ew-7811un 150mbps 11n wi-fi usb适配器
wi-pi raspberry pi 802.11n无线适配器
tp-link tl-wn725n无线n纳米usb适配器150mbps
rt5370
》 panda设备只有拇指驱动器的大小,并且可能不会像较小的加密狗那样将大量的处理任务分担给cpu。
步骤5:最小设置
图像:以最小设置(蓝色)运行iperf3 100间隔的结果,然后使用推荐的设置(红色)再次运行。 x轴为mbps,y轴为该带宽内的测量计数。
最小设置与我建议的设置之间的差异并不明显。我选择了一个设置,该设置比最小设置要复杂一些,但是测量结果不支持此选择(请参见图片)。
只要您没有电源问题,您的网关支持dhcp,您的适配器在raspbian中具有驱动程序支持,那么这是使wifi正常工作的最小设置:
/etc/network/interfaces
如果您有wpa_supplicant.conf文件,请将其重命名。
运行命令:
$ sudo nano /etc/network/interfaces
,然后编辑以仅包含:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid “♣your-ssid♣”
wpa-psk “♣your-pass-phrase《♣”
ctrl-o写入文件
enter确认写入
ctrl-x退出nano编辑器
步骤6:/etc/network/interfaces
图片:使用“ iface eth0 inet dhcp”(蓝色),然后再使用“#iface”运行iperf3 100个间隔的结果eth0 inet dhcp”(红色)。 x轴为mbps,y轴为该带宽内的测量计数。
/etc/network/interfaces
/etc/network/interfaces文件中的每个参数均已测量。
此文件必须正确,否则wifi无法正常工作。
登录树莓派并运行命令:
$ sudo nano /etc/network/interfaces
编辑文件为:
# interfaces(5) file used by ifup(8) and ifdown(8)
# please note that this file is written to be used with dhcpd
# for static ip, consult /etc/dhcpcd.conf and ’man dhcpcd.conf‘
# include files from /etc/network/interfaces.d:
# source-directory /etc/network/interfaces.d
# commented parameters were used in measurements
# all comments can be removed
# replace spades (♣) and text enclosed in ♣replace-this♣ with actual value
# loopback interface
# loopback is used for tools to talk to themselves on the rpi
auto lo
iface lo inet loopback
# ethernet interface
# leave ethernet interface - may be needed for cable connection in the future
iface eth0 inet dhcp
# wireless adapter
# use only one group of settings at a time - either rt5370 or wipi
# rt5370 settings:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
# use wpa-ssid and wpa-psk or wpa_supplicant, but not both
# wpa-ssid “♣your-ssid♣”
# wpa-psk “♣your-pass-phrase♣”
# use wpa-conf instead of wpa-roam
# using wpa-roam without correct wpa_roam.conf causes issues
# for example, on reboot wpa-roam can default to ipv6 and wifi stops
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
#
# turning power management off reduces dropped packets
wireless-power off
# wipi settings:
# auto wlan0
# iface wlan0 inet dhcp
# wpa-ssid “♣your-ssid♣”
# wpa-psk “♣your-pass-phrase♣”
# default interface
# iface default inet dhcp
ctrl-o写入文件
enter确认写入
ctrl-x退出纳米编辑器
第7步:/etc/wpa_supplicant/wpa_supplicant.conf
图片:以每间隔100个间隔运行iperf3的结果生成密钥,而是使用密码短语。 x轴为mbps,y轴为该带宽中的测量计数。
预生成的密钥
创建预生成的psk密钥。登录到raspberry pi并运行以下命令:
$ wpa_passphrase ♣your-ssid♣ ♣your-pass-phrase♣
输出:
network={
ssid=“♣your-ssid♣”
psk=♣your-pre-generated-key♣
}
/etc/wpa_supplicant/wpa_supplicant.conf
已测量/etc/network/interfaces文件中的每个参数。
wpa_supplicant.conf文件必须正确,否则wifi无法正常工作。
登录树莓派并运行以下命令:
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
编辑文件如下所示:
ctrl_interface=dir=/var/run/wpa_supplicant group=netdev
update_config=1
network={
ssid=“♣your-ssid♣”
# use a pre-generated key
psk=♣your-pre-generated-key♣
# if creating a standard image for many projects, then use pass phrase
# instead of generated key
# a generated key depends on the raspberry pi’s mac
# psk=“♣your-pass-phrase♣”
# specify for clarity
key_mgmt=wpa_psk
proto=rsn
# ccmp is the correct encryption to use for wpa-psk
# the wi-fi alliance requires 802.11n transmissions use wpa2 and ccmp
pairwise=ccmp
group=ccmp
}
ctrl-o写入文件
enter确认写入
ctrl-x退出nano编辑器
步骤8:testwifi.sh
图片:显示微波炉运行时的传输速率下降。
testwifi.sh
在我的第一个raspberry pi项目中,该pi会间歇性地失去连接并且无法恢复。当时,我没有意识到电源适配器的重要性。如果出现任何问题,我写了此脚本来还原wifi。
登录到raspberry pi并运行以下命令:
$ sudo nano /usr/local/bin/testwifi.sh
编辑文件,如下所示:
!/bin/bash
# router ip address
testip=♣u-verse-gateway-ip-address♣
counter=0
while true; do
# ping the router
ping -c1 ${testip} 》 /dev/null
if [ $? != 0 ]
then
# try a couple of times before restarting, pings can get lost
if [ “$counter -lt 3 ]
then
counter=$((counter+1))
logger ”testwifi.sh: wifi seems down, sleeping“
sleep 2
else
logger ”testwifi.sh: wifi seems down, restarting“
sudo /sbin/ifdown --force wlan0
sleep 10
sudo /sbin/ifup wlan0
exit 0
fi
else
logger ”testwifi.sh: wifi seems fine“
exit 0
fi
done
exit 0
ctrl-o写入文件
enter确认写入
ctrl-x退出nano编辑器
使文件可执行:
$ sudo chmod ug+x /usr/local/bin/testwifi.sh
或
$ sudo chmod 0755 /usr/local/bin/testwifi.sh
创建一个crontab条目以定期运行脚本:
$ sudo crontab –e
,并使它看起来像:
# run every 2 minutes:
*/2 * * * * /usr/local/bin/testwifi.sh 》》 /var/log/syslog
ctrl-写入文件
enter确认写入
ctrl-x退出nano编辑器
您已完成!
第9步:附录测量
图片:显示是否带有wpa_supplicant.conf
测量
基本的测量方法是:
重复并完善直到测量准确且容易报告的
将micro sd卡刷新到noobs
应用设置更改以使raspberry pi处于已知的良好状态
在笔记本电脑上将iperf3作为服务器运行
为每个测量重复以下步骤:
重新启动(raspberry pi)rpi
,无需更改即可运行iperf3作为rpi上的客户端
进行一次更改并重新启动rpi
运行iperf3作为rpi上的客户端
删除更改
将iperf3结果复制并粘贴到excel中
在没有结果更改的情况下绘制结果excel
在测量过程中,我将microsd卡刷新了五次。
大多数测量100个间隔。某些测量值为1000。需要更精确的数据时,需要更多的间隔。例如,当比较适配器时。
分析包括使用2 sigma测试计算平均值,最小值,最大值和标准偏差以及显着性。所有的iperf3结果都将转换为mbps(m位/秒)
测量结果会四舍五入以适合1mbps的bin并进行计数。四舍五入消除了一些准确性,但是使绘制图形的结果更易于解释。
两个结果(有或无变化)都以图形表示:y轴=计数,x轴= mbps。
步骤10:附录iperf3
图片:显示了通过无线访问点运行iperf3的两个macbook pro之间的带宽。
iperf3
iperf3是用于测量带宽的命令行速度测试工具。
测量两台笔记本电脑(pc或macbooks)之间的带宽。此度量为您的网络上可实现的最高带宽建立了基线。使用网络外部的iperf3服务器可能会导致测量差异,这些差异超出了您的控制范围。
所有其他测量都是在笔记本电脑和raspberry pi之间进行的。这种方法隔离了raspberry pi上显示对带宽有影响的更改。
期望raspberry pi和pc之间的带宽小于两台pc之间的带宽。
安装iperf3:
打开一个终端窗口。
下载并在两台笔记本电脑/台式机上安装iperf3。 (我使用的是macbook pro,但它也可以在pc上使用)
http://macappstore.org/iperf3/
查找macbook的ip地址,该ip地址将用作iperf3服务器
$ ifconfig | grep ”inet 192.168“
inet 192.168.1.76
ssh并登录到raspberry pi
$ ssh pi@♣raspberry-pi-ip-address♣
在raspberry pi上安装iperf3
$ sudo apt-get install iperf3
使用perf3进行测量:
要进行测量,请从raspberry pi到macbook运行iperf3
打开终端窗口并启动iperf3服务器正在运行:
$ iperf3 -s
打开第二个终端窗口,登录raspberry pi并运行:
$ iperf3 -c 192.168.1.76 -r -b 0 -i1 -t 100
选项说明($ man iperf3):
-r在反向模式下运行perf
-bn = 0将带宽设置为无限制,否则n = bandwidth-不需要
-i1暂停n秒带宽报告之间的间隔-不需要
-t 100将间隔数设置为100
步骤11:附录ccmp
图像:带有和不带有ccmp
ccmp是wpa2标准所使用的标准加密协议,比wpa的wep协议和tkip协议更有效。这里真的没有选择。使用ccmp。
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
network={
ssid=♣your-ssid♣
psk=♣your-pre-generated-key♣
# only have one of measurement 1, 2 or 3
# measurement 1
# pairwise=ccmp
# group=ccmp
# measurement 2
# pairwise=ccmp
# group=ccmp
# measurement 3
pairwise=ccmp tkip
group=ccmp tkip
}
步骤12:附录key_mgmt和proto
图片:使用和不包含key_mgmt和 proto
使用和不使用key_mgmt和proto进行测量。
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
network={
wpa-ssid=”♣your-ssid♣“
wpa-psk=”♣your-generated-psk♣“
# only include measurement 1 or 2, but no both
# measurement 1
# key_mgmt=wpa-psk
# proto=rsn
# measurement 2
key_mgmt=wpa-psk
proto=rsn
pairwise=ccmp
group=ccmp
}
步骤13:附录环回接口
图像:带和不带环回接口
带和不带环回接口的测量。
loopback被raspberry pi上的各种应用程序用来与自己对话。因此,我不会进行此更改。
$ sudo nano /etc/network/interfaces # measurement 1
auto lo
iface lo inet loopback
# measurement 2
# auto lo
# iface lo inet loopback
步骤14:附录默认界面
图像:带有和不带有默认界面的
带有和不带有默认界面的测量。
$ sudo nano /etc/network/interfaces # measurement 1
iface default inet dhcp
# measurement 2
# iface default inet dhcp
第15步:使用和不使用gui的附录
图片:使用和不使用gui
使用和不使用测量gui。删除gui会在micro sd卡上释放大约2gb的空间。
要删除gui,请执行以下操作:
$ sudo apt-get --purge remove ‘x11-*’
$ sudo apt-get --purge auto remove
$ sudo reboot $ sudo raspi-config
高级选项
memory_split:
raspberry pi的ram有限。 ram在中央处理器(cpu)和图形处理器(gpu)之间共享。 raspbian wheezy为gpu提供了64mb的ram。删除gui可以为运行在cpu上的应用程序释放此ram。之后运行raspi-config应该显示分配给gpu的0mb。
在raspi-config中设置后,此命令将显示分配给gpu的内存:
$ cat /boot/config.txt
gpu_mem=0
奥地利的电子零部件在国际市场拥有很强的竞争力
【新专利介绍】一种新型水表控制系统
变频器及PLC系统在热力站控制中的应用
微芯电容传感和3D手势方案打进欧美日韩汽车市场
导航及通信设备企业北方导航发布2022第一季度报告
如何为RT5370 USB WiFi适配器提供最佳性能的设置
爱立信任命艾华信为新技术总监
IEPE震动传感器高速同步以太网数据采集卡
背靠大树的T3出行会成为下一个滴滴吗?
燧原科技获2023第十八届“中国芯”最高奖
三大运营商2017年10月1日起全面取消国内长途和漫游费
华为135W快充充电器已入网
什么叫做A/D转换器?
HP幻系列模块化电脑评测 必将掀起一阵商务电脑的革命
三星Galaxy Note 10将会运行安卓10.0系统拥有512GB和256GB版本
Apollo开发者社区对于开发者的影响到底体现在哪些方面?
华为Mate40系列搭载EMUI11,隐私安全更安心!
ICME 2021|高性能、保护隐私的下一代生物识别之路
华为云安全拒绝网页篡改,保障网络安稳运行
风光高压变频器的调试步骤