基于ESP8266微控制器的Wi-Fi网络扫描器

控制/MCU

1882人已加入

描述

ESP8266微控制器内置一个集成无线芯片,能够从Wi-Fi路由器接收无线信号。通过这项功能,我们可以制作各种电子设备,例如机器人控制器、互动游戏和智能玩具等。尽管这些功能非常有趣,但是您也可以制作一些比较实用的无线电设备,例如Wi-Fi网络热点扫描器。

图1.  Wi-Fi网络扫描器的概念图。

在本篇文章中,我们将主要介绍ESP8266微控制器的内部工作原理,以及如何仅使用几个现成的电子组件来制作一个简单的Wi-Fi网络扫描器。

所需的组件

●    ESP8266 Node MCU开发板

●    22K电阻

●    330欧电阻

●    红色LED灯

●    0 – 1mA模拟面板仪表

●    面包板

●    连接导线

在讨论项目制作之前,让我们快速回顾一下ESP8266微控制器的基础知识。

ESP8266微控制器

ESP8266微控制器是由Espressif Systems开发,它是一个32引脚四方无引线扁平封装(QFN)的Wi-Fi片上系统(SOC)。它集成了一个无线电路,该无线电路包括天线开关、功率放大器、低噪声接收器放大器、滤波器、电源管理模块和RF不平衡转换器(射频巴伦)。

射频不平衡转换器(RF balun)是一种电子组件,能够获取平衡信号并将其转换为不平衡信号。平衡信号具有相等的线路阻抗。不平衡的信号具有不相等的阻抗。射频不平衡转换器通过内部网络开关确保天线与射频发射器和接收器电路正常工作。

ESP8266的内核是Tensilica制造的32位微处理器。 Tensilica微处理器管理与ESP8266的电气接口配合使用所需的二进制数据和编码语言信息。此类电气接口包括通用输入/输出(GPIO)、通用异步接收器发送器(UART)、脉宽调制(PWM)、串行外设接口(SPI)和模数转换器(ADC)。借助这些接口,ESP8266可以连接至外部传感器、晶体管驱动的执行器、分立的LED和显示器(LCD、OLED和LED)。

此外,ESP8266微控制器还支持802.11 b / g / n和2.4 GHz工作频谱的Wi-Fi规范。除了支持各种电气接口之外,小型QFN封装的Wi-Fi SoC微控制器还可以在2.5V-3.6V的电压范围内工作。 SoC微控制器的平均工作电流为80毫安(mA)。图2展示了ESP8266系统框图架构。

图2.   ESP8266 SBD架构。

为了帮助开发无线传感器和控制应用的原型,ESP8266封装为小型PCB模块或双列直插(DIL)开发板。

图3.   ESP8266的原型:PCB模块和DIP开发板。

以下是其他参考信息,图4是ESP8266的电路原理图,图5是管脚图。

wi-fi

图4.   ESP8266 PCB模块电路原理图。

wi-fi

图5.   ESP8266引脚分布。

基本了解ESP8266之后,我们可以开始制作网络扫描仪了!

连线ESP82266 Wi-Fi网络扫扫描器电路

Wi-Fi网络扫描器可以从附近的路由器接收无线数据,并在监视器上显示其服务集标识符(SSID)内容数据。此类设备可用作故障诊断工具,以确定可疑路由器是否正在发送无线信号。

扫描仪的结构设计简单,仅需三个主要组件:ESP8266 Wi-Fi SoC微控制器、一个模拟仪表(安培表)和一个LED。

wi-fi

图6.  ESP8266 Wi-Fi网络扫描器系统框图。

扫描器通过在ESP8266上运行基于MicroPython的基本脚本来启动。一旦微控制器接收到路由器的SSID内容数据,模拟仪表就会摆动到预定角度。

模拟电流表的运动基于流过其内部线圈绕组的电流量。串联限流电阻用于为模拟仪表的指针运动建立足够的电流。分立的LED提供辅助的视觉指示器。

您可以使用本文开始时列出的组件来制作Wi-Fi网络扫描仪,并使用图7中所示的Fritzing创建的电气接线图来辅助接线。

图7.  ESP8266 WiFi网络扫描仪电气接线图。

LED的方向非常重要。您需要将组件放在面包板上,如图7所示,确保这些组件正常工作。

您可以使用模拟伏安毫安表(VOM)代替模拟面板仪表。可以使用图8所示的电路原理图。

图8.   ESP8266 WiFi网络扫描仪电路原理图。

以下是在一个电子项目实验室中使用复古的Radio Shack Science Fair 200的Wi-Fi网络扫描仪的示例。

图9.  Retro Electronics的Radio Shack科学博览会ESP8266 WiFi网络扫描仪。

您可以使用MicroPython编写扫描器的代码。扫描仪代码如图10所示。

图10. Wi-Fi网络扫描器MicroPython代码。

将代码上传到ESP8266的RAM中。运行该代码后,附近路由器的SSID内容数据将立即显示在您的开发系统的监视器上,并且模拟仪表将摆动至适当的读数水平。同样,板载和外部LED将同时点亮。您也可以修改MicroPython代码,将SSID内容数据记录到文件中。
编辑:hfy

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分