ESP32 ipref WiFi吞吐量测试

文章目录

  • ESP32 ipref WiFi吞吐量测试
    • 1. 前言
    • 2. 信号影响因素分析
    • 3. WiFi 性能测试
      • 3.1设备端操作, `ipref` 烧录
      • 3.2 电脑端操作,安装对应的 `ipref` 上位机
        • 3.2.1 windows 安装
        • 3.2.2 Linux安装
      • 3.3 吞吐量测试
        • 3.3.1 发送性能测试,设备端做客户端,电脑端做服务器
          • 3.3.1.1 UDP测试
          • 3.3.1.2 TCP测试
        • 3.3.2 接收性能测试,设备端做服务器,电脑端做客户端
        • 3.3.2.1 UDP测试
          • 3.3.2.2 TCP测试
    • 4. 总结
    • 5. 相关文章推荐

1. 前言

ESP32 作为一款当前市场占有率最高的物联网芯片之一,被应用在绝大多数需要使用到 WiFi 功能的物联网产品上。作为一款产品,产品的稳定性和高可靠性是一个优秀的产品必须重点关注的一个点,那么关于ESP32 这款IC的 WiFi 性能在我们的产品上具体怎么样我们又有什么样的办法?有怎样的指标来测试,来衡量呢?

本文将主要分享,关于如何配置 ESP32 使用 ipref 对其进行 WiFi 网络信号测试,废话不多说,我们直接开始吧!

2. 信号影响因素分析

ESP32 在产品整机中的信号质量主要受以下几大块影响:

  • ESP32模组(包括ESP32芯片、ESP32模组电路板)
  • 天线

在实际项目开发过程中,会有以下几种情况:

  • 直接使用ESP32模组方案:

    • 通常ESP32模组在出厂前,乐鑫都会对模组收发数据包进行检测,已保证生产出货的模组的性能满足要求;但是在实际项目中我们是需要将 ESP32 模组贴在我们自己设计的PCB板上的,那么PCB板上的走线对于ESP32的信号是可能存在影响的!通常我们不建议在ESP32模组下方走线,特别是高频信号线。
  • 仅购买ESP32芯片,自己绘制ESP32外围电路方案:
    • 由于使用ESP32模组,PCB大小受到限制或可扩展性相对直接使用芯片较弱,在一些产品上会选择由项目硬件工程师自行设计ESP32外围电路,那么此类PCB走线对于 WiFi 收发性能需要重点关注!

除了上述ESP32模组以外,天线对于ESP32的WiFi性能也是一个非常重要的变量,关于天线,也分为以下几种情况:

  • 直接使用PCB天线

    • 也就是把天线画在PCB板上,部分型号的ESP32模组就是这样弄的
  • 使用外置天线
    • 外置天线效果通常要强于PCB天线,不过也不是随便一根天线能插上去就行,天线也是个很复杂的东西,每种天线,其适配的频率/频段会不一样,因此你也才能看到有硬件工程师专门调天线!也才会来找到软件同事想办法弄本文的测试方法啦!因此天线是不能随便乱插的,插错了等同于没插!

以上就是对 ESP32 WiFi信号影响的所有硬件软件了,接下来让我们验证下你的设备WiFi性能的好坏吧!

3. WiFi 性能测试

3.1设备端操作, ipref 烧录

关于 ipref 官方提供了相关的测试程序,只需要大家自行下载编译并烧录即可。

  1. 已安装 ESP-IDF 编译环境的,可以在IDF目录下的例程内找到对应的程序,路径如下:~\esp-idf\examples\wifi\iperf

  2. 或者直接下载github上的程序,对应链接:iperf

  3. 拷贝例程至其他目录,不破坏 IDF 环境目录文件

  4. 进入 iperf 工程目录,在此目录下打开终端,运行 get_idf 加载IDF环境变量(注意,如果没有提前配置,输入此指令是无效的,请参阅:windows ESP32开发环境搭建 或 linux ESP32开发环境搭建)

  5. 直接输入 idf.py build 编译工程

  6. 输入 idf.py -p COM9 flash monitor 下载并开启监控,注意修改COM口为你自己电脑上的COM口;Linux环境为 idf.py -p /dev/ttyUSB0 flash monitor,也要修改为对应的USB口

  7. 下载完之后成功运行,串口会打印如下信息

  8. iperf 程序内开发了一个终端,通过此终端可完成ESP32 iperf 所需配置,输入 help 可查看所有的指令

  9. 输入 sta <wifi名> <wifi 密码> 连接 wifi

  10. 至此,ESP32设备端已配置完成,接下来先配置号上位机,之后再开始测试

3.2 电脑端操作,安装对应的 ipref 上位机

3.2.1 windows 安装

  1. iperf 官网下载对应的上位机 iperf下载(点击跳转)
  2. 选择 iperf 2.0.9 版本,不要下载其他版本,特别是3.0以上版本,原因是不兼容!
  3. 下载解压,之后进入对应目录下,在此目录下打开 cmd 命令终端
  4. 输入iperf --help 可查看支持的指令

3.2.2 Linux安装

linux更简单啦,直接在终端敲以下命令

sudo apt-get update
sudo apt install iperf

我当前默认安装的就是2.0版本,大家自己安装的时候还是注意下,V3.0版本的可能不能使用!

3.3 吞吐量测试

WiFi吞吐量测试测试类型上分为发送和接收两种测试,接收性能好不代表发送性能好;此外在协议上又分为TCP和UDP两种,TCP是可靠的连接,UDP是广播方式,因此UDP有一定数量的丢包属于正常现象。

关于ESP32的 wifi 吞吐量测试,需要采用两台设备,在同一个网络下进行,可以是两台ESP32设备,也可以是一台电脑,一台ESP32,本文我们以一台电脑,一台ESP32为例进行说明,相信看完之后,两台ESP32的方案你也能轻松搞定!

接下来就开始吧!

3.3.1 发送性能测试,设备端做客户端,电脑端做服务器

3.3.1.1 UDP测试
  1. 我们首先进行UDP测试,电脑端开启服务器,在 cmd 终端输入: iperf -u -s -i 3(linux一样)
  • -u 参数:进行UDP测试,不加代表进行TCP
  • -s 参数:作为服务器
  • -i 3 参数:间隔3s打印一次测试结果,不加你在 cmd 终端就看不到任何过程数据
  1. 查看服务端的IP地址,也就是电脑的IP地址,win+r 之后输入 cmd打开新的终端,输入 ipconfig 查看ip信息;linux在终端输入 ifconfig 查看

  2. 设备端操作,发起UDP测试,输入以下指令:
  • iperf -u -c 192.168.1.54(服务器IP地址) -i 3 -t 30
  • -c 参数,作为客户端
  • 192.168.1.54 参数,设置服务器地址
  • -i 3参数,间隔3s打印一次数据
  • -t 30 总共进行30s测试
3.3.1.2 TCP测试
  1. 服务器配置,采用TCP方式,对应指令为:iperf -s -i 3,相比UDP测试,也就是省略了-u 参数,需要注意的是,iperf上位机2.0.9版本测试完成之后无法退出,我们直接关闭,重新打开就好了~
  2. 设备端配置,采用TCP方式,对应指令为:iperf -c 192.168.1.54(服务器IP地址) -i 3 -t 30,相比UDP测试,也是删掉 -u 参数
  3. 需要注意的是,相比UDP测试,在TCP测试中,我们发现没有了丢包率 Datagrams 这个参数了,这是由于TCP通讯是点对点稳定可靠传输,保证数据成功到达,100%成功率,TCP通讯测试时传输速度才是衡量指标!

3.3.2 接收性能测试,设备端做服务器,电脑端做客户端

3.3.2.1 UDP测试

  1. 修改服务器(ESP32)配置,输入指令:iperf -u -s -i 3
  2. 修改客户端(上位机)配置,输入指令:iperf -u -c 192.168.1.28 -i 3 -t 30,注意服务器ESP32的IP地址在串口上有打印
  3. 需要注意的是,ESP32作为UDP服务端的时候有超时设置,且时间不是很长,因此如果ESP32服务端开启后,长时间客服端没有接入是会自动关闭的!串口上会有以下提示,因此操作的时候需要注意!
  4. 测试结果如下:
3.3.2.2 TCP测试
  1. 修改服务器(ESP32)配置,输入指令:iperf -s -i 3
  2. 修改客户端(上位机)配置,输入指令:iperf -c 192.168.1.28 -i 3 -t 30,注意服务器ESP32的IP地址在串口上有打印
  3. 测试结果如下:

4. 总结

以上就是关于 ESP32 的 WiFi 吞吐量测试所有记录啦,有关问题,欢迎大家在评论区讨论!


创作不易,转载请注明出处!

关注、点赞+收藏,可快速查收博主有关分享!


5. 相关文章推荐

  • 1) ESP-IDF+PowerShell/Vscode windows ESP32开发环境搭建Windows版(点击跳转!!!)
  • 2) ESP-IDF + Vscode ESP32 开发环境搭建以及开发入门Linux版(点击跳转!!!)
  • 3) ESP32 OTA升级之HTTP OTA(点击跳转!!!)
  • 4) ESP32 bin文件生成及多个bin文件合并指南 (点击跳转!!!)
  • 5) ESP32 分区表(点击跳转!!!)
  • 6) ESP32 专栏(点击跳转!!!)

【五一创作】ESP32 ipref 吞吐量测试相关推荐

  1. 安信可ESP8266、ESP32、ESP32-S2、ESP32-C3模组的TCP_UDP吞吐量测试使用指导

    文章目录 前言 关于Jperf软件的使用方法(Window) ESP8266吞吐量测试 ESP32吞吐量测试 ESP32-S2吞吐量测试 ESP32-C3吞吐量测试 测试软件和测试固件下载 联系我们 ...

  2. 使用iperf进行设备吞吐量测试

    工作中遇到一个问题,使用netcat 测试设备wifi吞吐量感觉非常吃力,遂使用iperf进行吞吐量测试. 前提 设备嵌入小linux系统,不可内部编译的情况下,静态编译iperf可方便测试使用. 工 ...

  3. WiFi模块吞吐量测试

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.什么是Wi-Fi吞吐量 二.Wi-Fi吞吐量测试 1.硬件准备 2.软件准备 三.操作步骤 总结 前言 在WiFi ...

  4. ESP32 PM2.5测试

    ESP32 PM2.5测试 ESP32串口用法(UART) PM2.5测试 所选设备 接线说明 在STM32上测了,但是发现 ESP32和STM32的串口用法稍有区别,特此记录一下 ESP32串口用法 ...

  5. chariot iperf使用_ixchariot吞吐量测试

    1. 千兆网络 最近因为工作需要,想测试一下千兆网络的速度,主要是想测测网线的速度. 具体的测试计划不是很明确,找到IxChariot这个软件,简单测试了一下,得到以下测试结果.测试情况:1.网线小于 ...

  6. wifi吞吐量测试环境搭建和mifi的wifi吞吐量测试

    MIFI的wifi吞吐量测试 备注:使用的工具我将上传 准备工作: 1.安装jdk,下载安装包(根据电脑32or64bit):jdk7_64_win_jb51net.rar 2.安装jperf,下载安 ...

  7. 网络相关基础知识总结(一)吞吐量测试吞吐量与带宽区别

    一.概念 网络中的数据是由一个个数据包组成,防火墙对每个数据包的处理要耗费资源.吞吐量是指在没有帧丢失的情况下,设备能够接受的最大速率. 1.作用地位 网络吞吐量测试是网络维护和故障查找中最重要的手段 ...

  8. CC2640R2F BLE5.0 BLE吞吐量测试

    BLE吞吐量测试 介绍 本章分别测试了TI CC2640R2F LuanchPad和LECONIOT CC2640R2F Evaluation Board开发板吞吐量.我们提供了两个例程供大家参考测试 ...

  9. 思博伦Spirent TestCenter _上下行非对称吞吐量测试 _双极未来

    在RFC2544测试中,可使用不对称的上下游流量来对被测设备进行吞吐量,丢包率,时延的测试,对设备性能做出评估. 在广电领域,上下行不对称是一般现象,用户很少上传,但是需要下载很多视频到本地,所以,在 ...

最新文章

  1. 使用valgrind分析C程序调用线路图
  2. 密码学是如何保护区块链的
  3. 十大开源的.NET用户界面框架 让GUI设计不再犯难
  4. weblogic调优的经过
  5. Java-Runoob:Java Stream、File、IO
  6. react-native 安卓支持 gif动态图
  7. PHP小白学习日程之旅
  8. android json转字符串数组,转换字符串到json数组出错
  9. Linux下的一些简单网络配置命令介绍
  10. Spring的国际化(转载)
  11. android路由是什么意思,不能跑Android的路由不是好路由
  12. javascript window location
  13. LeetCode(606)——根据二叉树创建字符串(JavaScript)
  14. elasticsearch5.0.1集群排错的几个思路总结
  15. .NetCore + NSwag生成可交互API文档
  16. python 输出 2到n的素数 附源码 注释超详细。。。
  17. 框架实现修改功能的原理_从无到有RPC框架 - RPC原理及实现(文末还有开源的优秀RPC框架)...
  18. mysqlin查询的java写法_[转载]常用的shell脚本
  19. 如何进行坡度坡向分析教程
  20. 学科实践活动感悟50字_初中学科实践活动记录50字3篇

热门文章

  1. 场景判断方法expected_conditions
  2. js-cookie 关于js-cookie 什么是js-cookie js-cookie的使用
  3. 2022年危险化学品经营单位主要负责人复习题及答案
  4. [渝粤教育] 华中农业大学 经济学原理 参考 资料
  5. java textarea大小设置_给textarea增加长度的限制
  6. 梳理详细 vue中引入第三方字体图标库iconfont
  7. 人工智能写恋爱情话,省时不费脑,也用心(带教程)
  8. 【深入浅出 Yarn 架构与实现】1-2 搭建 Hadoop 源码阅读环境
  9. 探秘音乐疗法——基于音乐的喂养环境对小鼠肠道菌群影响的研究
  10. 多项式求逆与多项式除法/取模