-
2019-06-29 09:54:01
SimpleWiFi串口WiFi模块一键配置功能
概述
目前,在嵌入式领域,智能家居、智能工业、智能公交等等控制中,WiFi已经成为了一种普遍被采用的技术。
在智能工业控制,或者智能家居的主控系统中。单片机,成为了中控系统的控制中心。而,如果采用WiFi这种无线技术的话,大家普遍采取的方法是采用现有市面上的串口WiFi模块,或者串口转WiFi模块,也有称为UART WiFi模块的。SimpleWiFi串口WiFi模块即是一种支持一键配置的串口WiFi模块。
但,WiFi这种无线网络是需要配置才能够实用的。也就是说,如果使用WiFi网络,必须将网络的基本的信息。保存到串口WiFi模块,或者保存到串口转WiFi模块中。因为WiFi需要保存的参数是比较专业的。比如:SSID、加密类型等等,甚至还有要求使用BSSID绑定的功能。这些,专业的术语对于我们普通的家庭用户来讲,过于专业。尤其是随着智能家居的普及更是显得尤为突出。因为,对于大部分用户,还是仅仅会输入密码。其他的操作的话,就显得繁琐了。SimpleWiFI模块提供的这种一键配置的功能,可以使用户简单的完成上述操作。
原理
我们现简单介绍一下一键配置的基本原理:我们知道WiFi产品买到家里以后。产品对您家里面的无线网络的设置是一无所知的。比如,您家路由在几信道、什么加密模式、加密密码、甚至连叫什么名字都不知道。但,还要实现连接到家里面的无线网络,因此需要一种简单的方法。来得知家里路由器的一些信息。我们称这种无线的配置方法叫做一键配置。一键配置,其基本的工作原理是,模块在出厂值的时候,配置为类似蹭网卡的一种工作模式,串口WiFi模块在这种工作模式下,能够监听到环境中的所有的WiFi的数据传输。比如:我们可以让SimpleWiFi模块工作在监听模式下,那么此时模块就可以监听到空间中的所有的WiFi通讯。SimpleWiFi模块会根据监听到的WiFi通讯的帧,分析出无线路由器当前的工作信道、加密类型等必要的信息。然后,模块将这些必要的信息保存下来。这样就实现了一键配置的功能。
用户,在使用一键配置的方法的时候,只需要在智能手机,或者智能终端上面,输入密码这一项即可。其它的所有的参数都是一键配置软件和SimpleWiFi模块之间进行协商的过程。这样,大大减少了用户的配置过程,以及避免了用户接触专业术语的机会。仅仅告诉客户,我们的智能家居的产品,只需要您输入您家路由器的密码,然后,点击一个按键。这就是现在市面上所见到的被称之为串口WiFi一键配置的方法原理。
特性
一键配置,虽然看着简单实用。但是,也有其弊端。一键配置我们可以总结出下面几个特性:
1、配置方法简单‘易用。不需要接触专业的术语。
2、配置方法是可加密,不用担心路由器密码泄露。
3、比传统的软AP的配置方法,需要更长的配置时间,这个应该算是一种弊端。
4、一键配置可能会出现配置失败,由于模块工作在类似蹭网卡的一种模式,因此有可能失败。
实现
具体的实现过程是这样的:
首先:SimpleWiFi模块必须支持一种类似于蹭网卡的工作模式,这种模式下,串口WiFi模块可以将环境中的所有的WiFi通讯的过程进行监听。SimpleWiFi模块可以进入WiFi监听模式,此模式下模块可以进行WiFi数据的监听工作。
然后:智能手机或者智能的WiFi终端,将必要的信息发送到空中。这些必要的信息有以下这些:SSID(无线路由器名称)、加密类型、加密密钥等。
最后,SimpleWiFi模块在空中分析到自己所需要的信息后,就可以进行保存。
应用
我们可以看下面的这张示意图:
我们相信随着智能家居的逐渐普及,这种一键配置的方法会被广泛的采用的。因为,我们的客户肯定是五花八门的。有可能是年长的长辈、有可能是未成年的儿童,他们想使用这种智能家居的产品的话。我相信肯定会用到这种一键串口WiFi的配置方法的。
更多相关内容 -
串口转WIFI
2018-12-13 17:15:45WIFI转串口产品,包括WIFI核心模块、RS232/RS485/RS422转WIFI、以及带外壳的RS232/RS485无线串口服务器 -
69028+ESP32-CAM摄像头开发板+WiFi+蓝牙模块ESP32串口转WiFi物联网.zip
2021-01-08 17:47:4669028+ESP32-CAM摄像头开发板+WiFi+蓝牙模块ESP32串口转WiFi物联网.zip -
基于串口转wifi模块的单片机与安卓手机通讯.pdf
2021-07-12 21:04:22基于串口转wifi模块的单片机与安卓手机通讯.pdf -
ESP8266串口转wifi/wifi转串口模块
2020-07-13 20:43:13ESP8266串口转wifi透传模块(MS_Uart2Wifi) 简介 模块功能 模块使用步骤 效果展示 使用ESP8266开发板进行试验 简介 最近几天做了一个串口转wifi模块,平常我们使用单片机往往用串口通信或者通过串口在pc上显示...ESP8266串口转wifi透传模块(MS_Uart2Wifi)
简介
最近几天做了一个串口转wifi模块,平常我们使用单片机往往用串口通信或者通过串口在pc上显示数据。但当我们想通过通过wifi无线通信方式来进行通信时,我们可能就要使用ESP8266模块的AT指令集,然后就要又要加上一大波程序,又要下载啥的。当我们想要改变wifi模块要连接的无线网、密码、要连接的服务器端和端口时又要重新改一波程序然后再下载,很是麻烦。因此改了一下ESP8266 wifi模块的固件.大家只要通过手机app 设置一下,即可完成串口到wifi透传功能。
下面我所介绍的东西为串口转wifi模块(我称之为MS_Uart2Wifi),我会将程序开源,大家可以自行下载,使用的ESP8266的NOS_SDK3.03开发包。由于程序比较杂,我就不在这里详细介绍了,大家下载以后自行查看吧,我注释的比较详细,下载资源里还有个任务书上面也稍微介绍了一下。
*程序下载链接:程序下载链接
百度云配置app下载链接:配置app下载链接 提取码:vvpf
百度云串口助手和网络调试助手下载链接:串口助手和网络调试助手下载链接 提取码:8v3q
模块淘宝链接:淘宝模块连接
模块使用视频演示:B站模块使用演示视频链接
模块功能
①将MS_Uart2Wifi模块连接到目标设备上可实现串口转wifi透传功能。
②长按MS_Uart2Wifi模块上的配置按键三秒,MS_Uart2Wifi模块进入配置模式,配置指示灯常亮后,用户通过手机APP输入要wifi模块将要连接的路由器名称、密码以及电脑Server端的IP地址和端口还有透传时的串口波特率后,点击确定即可完成配置。
③模块信息重新配置后会默认重启,用户等待10秒左右模块会自动连接。
③当串口转wifi模块与服务器的连接断开后每隔6秒模块会自动重连。
④每次模块重启后默认是上次的配置信息,除非再次通过手机配置信息。图1 模块实物图 如图1为MS_Uart2Wifi模块的电路图,S1为配置按键,S2为模块复位按键,左边的VCC GND TX RX为串口接口。上面的TX GND GP0为固件烧录接口。D1为模块配置指示灯,配置的时候亮,工作的时候灭。
图2 模块使用系统框图
如图2为模块使用系统框图,串口转wifi模块连接到单片机,单片机通过串口与串口转wifi模块MS_Uart2Wifi进行通信。MS_Uart2Wifi模块收到数据后再以wifi的方式将数据上传到服务器端,当然服务器端可以是电脑也也可以是手机,但是要在同一个局域网下。如果就只有这些功能那我做的东西也就没太大意义了,这个项目的意义在于我们能够通过手机设置wifi模块要连接server的信息,时串口转wifi的适配性更强。
模块使用步骤
第一步:配置
给MS_Uart2Wifi模块供电,长按配置按键三秒,直到配置指示灯常亮。然后手机打开wifi连接名为MS_Uart2Wifi的wifi,打开配置APP,点击连接,输入配置信息点击发送即可。
第二步:建立服务端
将电脑连接到无线网,通过网络调试助手,建立TCP服务端。
第三步:等待连接成功
模块连接成功后会显示,"This is MS_Uart2Wifi"的字符串提示信息。这时候就完成了模块的配置,只需配置一次,然后你就可以串口发啥,网络调试助手就接收啥,网络调试助手发啥,模块就接收啥。效果展示
图3 配置app界面图 如图3为MS_Uart2Wifi模块的手机配置app界面,打开app后点击连接,连接成功后即输入配置信息然后点击发送,收到"YES"返回数据后即设置成功。
图4 模块开机连接成功打印信息 如果将usb转ttl模块的rx引脚接MS_Uart2Wifi的串口信息打印引脚(TX)即可接受到开机配置信息,配置信息如上图4所示。
图5 模块连接上后打印信息 当MS_Uart2Wifi连接到服务器以后会给服务器发送一段命令,“Hello,this is MS_Uart2Wifi”,当收到这些消息时代表模块连接成功。
图6 数据透传显示界面
自己测试设置模块的波特率为1382400也可以用(串口助手上限),大家如果有过有能力和需求也可以试试是否能通过这个模块传输图像,自测传输20kb没啥问题(通过定时1ms发送128个字节数据3s串口助手上面显示接收60000左右个数据,波特率1382400)。
使用ESP8266开发板进行试验
当然我一开始也是用esp8266开发板进行调试的,所以大家如果有esp8266的开发板那直接就把固件烧写进去然后重启就行了。我用的是下面这个esp8266开发板。
大家要做的电路连接就是把GPIO4->D2连接配置按键,GPIO5->D1连接配置至少灯。按键一端接D2引脚一端接地,指示灯正极接3V3电压,另一个引脚接D1,指示灯别忘记接电阻了不然会烧掉。再然后要做的就是烧写固件了。(固件程序上面是通过串口1打印信息,如果大家想改成串口0的话只要在user_init里改下
UART_SetPrintPort(1);//使用串口1作为信息输出引脚
这个函数就行了,把1改为0。
当然如果大家不想麻烦还是直接买我们做的模块吧,这样方便又简单,淘宝链接在上面。 -
串口WiFi 串口转WiFi UART WiFi UART转WiFi 一键配置的实现
2014-02-08 12:33:34本文件说明了应用到串口WiFi 串口转WiFi UART WiFi UART转WiFi领域的一键配置功能的实现方法。可以简单、易用的实现串口WiFi的参数配置。 -
esp8266串口转wifi app配置连接信息程序.7z
2020-07-13 20:40:22①将MS_Uart2Wifi模块连接到目标设备上可实现串口转wifi透传功能。 ②长按MS_Uart2Wifi模块上的配置按键三秒,MS_Uart2Wifi模块进入配置模式,配置指示灯常亮后,用户通过手机APP输入要wifi模块将要连接的路由器名称... -
串口转WIFI linux程序
2015-12-05 22:31:06串口转WIFI WIFI转串口 linux程序源码 -
【串口服务器】串口转WIFI
2021-10-11 22:43:33做工业互联网项目,难免会遇到通讯口转换的情况,比如智能仪表的RS-485需要转成以太网或WIFI才能与服务器通讯,方法也很简单,用串口服务器就能解决。 下面以有人的USR-W610为例来说明如何配置实现串口转WIFI的功能...做工业互联网项目,难免会遇到通讯口转换的情况,比如智能仪表的RS-485需要转成以太网或WIFI才能与服务器通讯,方法也很简单,用串口服务器就能解决。
下面以有人的USR-W610为例来说明如何配置实现串口转WIFI的功能。
TIPS:USR-W610的网页配置界面,每个配置项下面都有个“确定”按钮,每配置一个参数都要点击确定保存。全部配置OK后需要断电重启。- 用网线把笔记本电脑和USR-W610连接
- USR-W610默认IP:10.10.100.254,自己电脑设置个相同网段IP(比如:10.10.100.100)
- 打开浏览器,输入10.10.100.254,弹框要求输入账户密码,默认:admin,admin
- 进入网页配置界面,如下配置就好:
①设置工作模式,如下图:
②连接现场的WIFI信号,并固定IP信息:
搜索到目标wifi,应用,再输入密码。(注意:加密模式(Authentication)和加密算法(Encryption),要与现场的保持一致)
③设置串口参数:与串口设备保持一致;设置串口服务器的网络参数:按照自己要求设(server:串口服务器是server;)
-
ttl串口转WIFI模块.pdf
2019-09-05 21:02:44ttl串口转WIFI模块 -
多串口双串口2串口转WiFi模块同时多通道透传数据简介
2018-09-27 13:20:30SimpleWiFi串口转WiFi模块,支持3个UART接口。可以同时与多个后台服务器和手机保持长连接。同时,与多个后台服务器进行实时透传数据。 -
串口转wifi
2016-12-26 09:07:30好资料,请下载 -
串口WiFi 串口转WiFi UART WiFi SimpleWiFi一键配置功能.pdf
2019-06-29 09:48:50本文描述了在嵌入式WiFi模块中常常使用的一键配置的原理。市面上能见到的串口嵌入式WiFi的一键配置都是基于这个原理,只是大同小异而已。 -
[开源工具] 串口转wifi —— 两个串口之间通过网络进行通信
2021-07-14 20:12:51之前有个项目,要求无人机与地面站直接的通信由之前的数传改为wifi,搜了一圈,很多都属于手工调试,而且包含复杂的界面。然而实际上需求要求稳定,具有自动化。因此为了满足这个需求只能是自己开发一个软件。 在...之前有个项目,要求无人机与地面站直接的通信由之前的数传改为wifi,搜了一圈,很多都属于手工调试,而且包含复杂的界面。然而实际需求要求稳定,自动化。因此为了满足这个需求只能是自己开发一个小工具。
在当前项目背景下,要实现的需求如下图所示
实际上,正常的无人机与地面之间的通信用的是数传模块,无人机和地面站之间都是通过串口连接到这个模块上。模块和模块之间的通信利用远程无线电进行通信。
但是,在一些特殊场景中,比如不能用无线电台的地方,敏感区域等,就只能想办法用其他的手段实现无人机与地面站的通信,而利用网络通信就是一个非常有效的手段。
项目开源在Github,下载地址:https://github.com/Li-Zhaoxi/uart2net
如果两端都在Windows下,可以直接下载编译好的exe,下载地址:https://github.com/Li-Zhaoxi/uart2net/releases/tag/v0.1
1 应用前景
简单来说,串口转wifi干了什么事呢,就是将下图这个串口线,线的部分变成了无线网,或者局域网之间。
别看问题简单,应用的场景可多了:
- 局域网范围优势。拿校园网来说,校园网实际上是个超大规模的局域网,传输速度高达100MB/s,所以串口两端的设备都连上校园网,我可以在任何地方快速地控制设备。
- 局域网频段优势。数传模块的频段会有冲突,但网络不会,适用于大规模控制。
- 便宜。搞研究一般都在室内,有个路由器就够了(省下好几百数传模块的钱投资在头发上不香吗)。
- 应用范围广。可以远程调试串口,可以模拟任何两个串口之间的通信,省下一大堆串口线。
- 公网扩展。两个设备之间既然是利用网络通信就不仅仅局限于局域网,在无人机设备上插入SIM卡并不是什么难事,而且利用现在的5G技术,是可以快速传输无人机大量的图像数据的(5G尽管在民用上很贵,似乎不划算,但在工业圈非常重要,突破了网速限制,真的可以为所欲为)。
当然,缺点很明显,延迟会很高,受限于网络覆盖范围,如果需要野外大范围的飞行,还是得安装数传图传模块。
TB上是有卖串口转wifi的硬件,我这个是软件,跨平台,可以安装在x86平台,也可以安装在aarch64架构的嵌入式平台(比如jetson系列的嵌入式系统)。
2 使用说明
2.1 程序编译
改程序基于QT,所以无论在哪个平台,都要安装QT所支持的库。Windows下去下载exe安装包就行,Linux下用
apt-get install
命令是可以直接安装QT的。sudo apt-get install qt5-default sudo apt-get install libqt5serialport5-dev
WINDOWS 下的使用方法
- 使用QTCreator加载当前uart2net.pro文件
- 在release模式下编译。
- 找到release版本的exe,与uart2net.ini单独放进一个文件夹。
- 如果需要发布到别的电脑,按照《QT 发布release版本》的方法,补充对应的dll文件。
- 编译通过后,此工程可以删掉。
- 配置ini文件,双击exe即可执行。
Linux下的使用方法(包含嵌入式Linux)
- 下载代码
git clone https://github.com/Li-Zhaoxi/uart2net
- 进入文件路径
cd uart2net
- 输入
qmake uart2net.pro
- 编译
make all -j6
- 编译无错通过后,根据设备修改对应的ini文件。
- 输入
sudo ./uart2net
(串口读写必须是管理员权限,也可以用chmod改掉这个串口权限)
2.2 配置文件用法
配置文件可以用记事本打开,切记修改时候里面不能有中文:
- uart2net
- type:表示是服务端还是客户端,1表示服务端,2表示客户端
- heartbeattime:检测心跳,客户端必须设置(默认2000即可),否则无法检测断线并自动重连,服务器如果通信频繁可以设置0。(网络断开时候,程序是没法自动检测的,只能通过心跳)。
- RecordLog:默认0不要动,本意是想记录通信之间传递的数据(因为我实现一半时候觉得没必要)。
- showmessage:在控制台显示传递的数据,设置0就行。(因为设置1时候,满屏的二进制数,你也看不过来,前期自己调试用的)。
- serial-port
- **number **:串口号。windows下一般为 COM3 (3根据实际情况调整),Linux下一般为 /dev/ttyS3,后面的数字同样根据实际设备号调整。
- btl:串口波特率。
- TCP:
- hostip:服务端IP地址(仅用于客户端,但在服务端你不能删掉这行)。
- port:服务端端口号。
2.3 一些效果图
服务端,设备连接上之后会有显示,设备重连也会有显示。
客户端,最开始时候服务端还没开,一直在重连。
客户端,根据设置的心跳,2秒内没消息就重连。
3 总结
写这个小工具大概花了我2周左右的时间,主要就利用QT的串口和网络通信,并没有使用多高深的软件技术。后面移植到无人机系统中前前后后联调修了一堆bug,对于我来说,这个东西的最大价值也许就是其稳定性,在不断的调试中得到了最优版本。
在未来有需求的话也会对其进行进一步升级(毕竟这东西思想上容易,实际上调试巨麻烦),比如:
- 心跳包不再占用数据通信的socket,两端都可以检测对方是否还活着
- 现在是一对设备就创建一个服务端和客户端,后续也会升级为创建一个服务器,每个设备都是一个客户端(类似局域网聊天器那种)。
- 有效的记录Log。设备发生意外,后续检查时候可以通过日志查看最后发送消息。(如果追求数据完整性,就得进来个数据存一次,导致IO变多,如果满足缓存再存,设备出故障容易异常关机,导致数据丢失)。
这次公布的是稳定版本,当然后续要是自己碰到需要更高级的需求,自己也会升级下这个。
-
11、串口转Wifi说明书.zip
2020-02-15 09:45:00网上很难找的资料,关于串口转Wifi的哦,可以自己发烧。网上很难找的资料,关于串口转Wifi的哦,可以自己发烧 -
串口转WIFI的工作方式理解
2018-11-20 10:15:03串口WIFI模块是基于Uart接口的符合wifi无线网络标准的嵌入式模块,内置无线网络协议IEEE802.11协议栈以及TCP/IP协议栈,能够实现用户串口数据到无线网络之间的转换。通过串口WIFI,传统的串口设备也能轻松接入无线... -
LPB120串口转WiFi的实现
2018-07-17 10:46:47示例实现了串口转WiFi的整个工程代码,基于汉枫LPB120芯片实现,可以直接运行。 -
stm32103c8t6ESP8266串口转WIFI模块TCP服务器(STA模式)
2017-09-27 09:23:52stm32103c8t6ESP8266串口转WIFI模块TCP服务器(STA模式)单片机用两个串口分别给ESP8266发送数据和给电脑打印信息,方便调试和观测 -
串口转wifi-uart转wifi模块设置
2012-06-28 16:47:34低功耗,小体积 串口wifi模块。 电话:13439720658 QQ:554211685 WF-30-11N模块完全兼容IEEE802.11b\g\n协议,为任何具有串口的设备提供无线接入以太网的功能。此模块集成了MAC、基带处理器、具有运放的射频传输和... -
低功耗串口转wifi-串口wifi模块设置教程
2012-06-28 16:58:25低功耗,小体积 串口wifi模块。 WF-30-11N模块完全兼容IEEE802.11b\g\n协议,为任何具有串口的设备提供无线接入以太网的功能。此模块集成了MAC、基带处理器、具有运放的射频传输和天线接口。WLAN协议、网络协议栈... -
HLK-RM08K串口转WIFI模块资料包AD版参考设计原理图PCB+测试工具+技术文档资料.zip
2022-03-08 15:09:13HLK-RM08K串口转WIFI模块资料包AD版参考设计原理图PCB+测试工具+技术文档资料,可做为你的学习及设计参考。 -
基于ARM11平台的串口转WiFi_GPRS双网模块设计.pdf
2021-09-21 19:13:07基于ARM11平台的串口转WiFi_GPRS双网模块设计.pdf -
以SimpleWiFi串口转WiFi模块S2WM02为例说明ModbusTCP与ModbusRTU区别
2018-09-27 12:06:45以SimpleWiFi串口转WiFi模块S2WM02为例说明ModbusTCP与ModbusRTU区别,可以用来ModbusTCP与ModbusRTU协议转换开发指导。 -
基于ARM11平台的串口转WiFi/GPRS双网模块设计* (2013年)
2021-05-09 02:49:16提出了一种基于ARM11平台的双网模块设计,这种模块能够实现 RS232串行接口数据的迅速联网和实时转发,通信网络可以根据实际的需求进行WiFi网络和GPRS网络自动切换。串口终端采集到数据后,模块将数据传输到数据传输... -
串口转WIFI模块
2020-04-01 11:19:45串口转WIFI模块ZLSN7046T是上海卓岚生产的一款多功能wifi转串口模块。它能够将wifi信号转化为串口信号,且支持多种功能,邮票孔封装,体积小巧可以外置天线或者内置天线。ZLAN7046T支持一个UART TTL电平串口转WIFI,... -
ESP32-CAM摄像头开发板+WiFi+蓝牙模块ESP32串口转WiFi物联网.rar
2021-05-04 13:03:55本文是ESP32-CAM板+USBTLL下载器,使用Arduino IDE 1.87+esp32库来测试视频流抓拍、人脸识别和检测功能的视频流Web服务器搭建,提供详细实验步骤和完整代码。 -
ESP8266串口转wifi模块AT指令调试TCP通信
2020-02-28 17:25:43②安信可esp8266串口转wifi模块 ESP-01s 注意:接电源3.3v 要接V0口 软件:使用sscom4.2 需配置为如下图片: 注意选择发送新行 AT指令流程 1) 设置 wifi 模式: AT+CWMODE=3 //设置为 softAP+station 共存模式 ... -
嵌入式WIFI模块 串口转WIFI模块 操作演示教程
2011-12-16 17:31:52嵌入式WIFI模块 串口转WIFI模块 操作演示教程 嵌入式WIFI模块 串口转WIFI模块 操作演示教程