wifi模块哪种好(wifi开发模块学什么好)
【温馨提示】本文共有4547个字,预计阅读完需要12分钟,请仔细阅读哦!
物联网工控网关串口WiFi模块与串口转网口模块选型,下面一起来看看本站小编博晶网络给大家精心整理的答案,希望对您有帮助 伴随着物联网的发展,最初的两个机器之间通过硬件直接通信的物理层到通过硬件地址再局域网中进行通信的数据链路层已经远远不能满足于现代人们生活以及各行给业生产的需求。逐渐结合高性能,高质量的网络层和应用层。实现智能终端数据采集,数据传输,数据上传和无线上网,WiFi远程控制等功能。在物联网市场上,从成本,功耗,体积而言,无线物联网WiFi模块传输还是以串口WiFi模块为主。 串口WiFi模块是一种基于UART接口的嵌入式模块,它符合WiFi无线网络标准,内嵌于IEEE802.11协议栈和TCP/IP协议栈,可以实现用户串口或TTL电平数据到无线网络的转换。串口型WiFi模块的工作方式为传输式和命令式。 现在小编要谈的是多线程多处理的路由串口WiFi模块。随着对现场数据实时监测,远程控制,数据上传,视频传输,音频传输等需求量增大。路由串口WiFi模块逐渐被应用到各行各业。核心CPU带Linux系统,可同时处理多线程处理复杂指令,。有多路串行UART接口,传输指令的时多个指令同时发出,并快速地响应同时处理。 串口WiFi模块wifi开发模块学什么好1
带有核心CPU带有Linux系统多线程处理器的路由串口WiFi模块RMS7688A,兼容802.11b/g/n,是低成本,低功耗的无线AP解决方案,集成802.11n MAC/BB/PA/LAN, 带宽比较大,能同时运营比较复杂的指令。具备3路串口可以同时跟多个服务器对接,3路串口可以同时同一环境下快速地监测温度,速度,灯控等数据指令传输。在很大程度上提高效率,降低成本。RMS7688A串口转WiFi模块支持AP/AP client /路由器/中继模式,在IOT中被广泛应用。如:工业控制,远程监控,智能抄表,工控网关,WiFi转串口,WiFi转4G,4G转有线,串口转网口模块,4G转网口,无线路由交换机,串口服务器,串口转以太网,USB可以接USB摄像头进行图像传输,可以接U盘进行数据共享。UART可以接蓝牙模块,zigbee模块,ZWave模块,Lora模块,2.4G模块,433模块做成蓝牙网关,Zigbee网关等等。
WiFi模块开发板
wifi开发模块学什么好2
前 言
本文档主要介绍基于iMX6ULL开发板分享物联网模块开发案例,其中内容包括SDIO WIFI模块测试、STA模式测试、NB-IoT模块测试、Zigbee模块测试、LoRa模块测试和4G模块测试由于篇幅过长,案例分为上下两部分,欢迎各位感兴趣的用户查看更多。
适用开发环境:
Windows开发环境:Windows 7 64bit、Windows 10 64bit
虚拟机:VMware15.1.0
Linux开发环境:Ubuntu18.04.4 64bit
U-Boot:U-Boot-2020.04
Kernel:Linux-5.4.70
Linux SDK:5.4.70_2.3.0
本案例测试板卡为创龙科技的TLIMX6U-EVM,它是一款基于NXP i.MX 6ULL的ARM Cortex-A7高性能低功耗处理器设计的评估板,由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。
评估板接口资源丰富,引出双路网口、双路RS485、双路CAN、三路USB、多路DI/DO、LCD等接口,板载WIFI、Bluetooth模块,支持LoRa、NB-IoT、Zigbee、4G模块,可选配外壳直接应用于工业现场。
无特殊说明情况下,默认使用USB TO UART1作为调试串口,使用Linux系统启动卡(SD启动模式)启动系统,通过路由器与PC机进行网络连接。
SDIO WIFI模块测试
本案例使用SDIO WIFI模块型号为:RTL8189,请将SDIO WIFI模块插至评估板SDIO接口,如下图所示。
图 1
SDIO WIFI模块支持STA和AP模式,具体说明如下:
本案例测试程序位于产品资料“4-软件资料\Demo\module-demos\sdio_wifi_test\”目录下,具体说明如下。
表 1
bin
测试脚本、程序配置文件
driver
SDIO WIFI模块驱动
src
SDIO WIFI模块驱动源码
请将bin目录下所有文件和driver目录下8189fs.ko驱动文件拷贝至评估板文件系统任意相同路径下,并将SDIO WIFI模块正确连接至评估板SDIO接口。由于SDIO接口与Micro SD接口存在引脚复用关系,因此请务必将Linux系统启动卡从评估板Micro SD卡槽中取出。将评估板启动方式选择拨码开关拨为011000(1~6),此档位为NAND FLASH启动模式。
STA模式测试
进入评估板文件系统,在SDIO WIFI模块驱动8189fs.ko所在路径下,执行如下命令加载驱动。
Target# insmod 8189fs.ko
图 2
图 3
执行如下命令关闭其他网络和wpa_supplicant进程,仅保留WIFI网络。
Target# ifconfig eth0 down
Target# ifconfig eth3 down
Target# killall -9 wpa_supplicant
Target# ifconfig wlan0 up
Target# ifconfig
图 4
在wifi_setup.sh文件所在路径下执行如下命令,将评估板通过WIFI模块连接至路由器。"-i"指定WIFI名称,"-p"指定WIFI密码,请根据实际情况修改。
Target# ./wifi_setup.sh -i Tronlong-test -p omapl138
图 5
执行如下命令查看获取的IP地址,并通过ping命令测试评估板与PC机通信是否正常。192.168.1.100为PC机实际IP地址,请确保评估板与PC机在同一局域网内。
Target# ifconfig
Target# ping 192.168.1.100
图 6
在评估板文件系统执行如下命令,查看评估板IP地址,使用Iperf3工具测试评估板与PC机的网络通信带宽。
Target# ifconfig
Target# iperf3 -s
图 7
在Ubuntu系统执行如下命令测试网络通信带宽,192.168.1.103为评估板实际IP地址。测试完成后,Ubuntu和评估板均会打印测试结果。测试结果受网络环境影响,仅供参考。
Host# iperf3 -c 192.168.1.103 -i 1
图 8
图 9
AP模式测试
请重启评估板系统,在SDIO WIFI模块驱动8189fs.ko所在路径下执行如下命令加载驱动。
Target# insmod 8189fs.ko
图 10
图 11
执行如下命令关闭其他网络和wpa_supplicant进程,仅保留WIFI网络。
Target# ifconfig eth0 down
Target# ifconfig eth3 down
Target# killall -9 wpa_supplicant
Target# ifconfig wlan0 up
Target# ifconfig
图 12
在ap_setup.sh文件所在路径下执行如下命令,将SDIO WIFI模块设置为AP模式。
Target# ./ap_setup.sh
图 13
如启动AP功能过程中,出现如下问题,是由于random熵不够引起,需重启评估板,执行如下命令更换熵池,再重新测试。
Target# mv /dev/random /dev/random_ori
Target# ln -s /dev/urandom /dev/random
图 14
图 15
程序默认设置的WIFI名称为:rtl8188fs,密码为:88888888,可在rtl_hostapd_2G.conf配置文件内进行修改。
将具有WIFI功能的PC机(比如笔记本电脑或装有USB WIFI的台式电脑)连接至此无线局域网热点,并断开已有的有线网络连接。连接成功后,串口调试终端将会打印如下信息,显示Ubuntu已分配的IP地址。如使用虚拟机 + Ubuntu的开发方式,将会获取到两个IP地址,其中一个为Windows端IP地址,一个为Ubuntu端IP地址。
图 16
执行如下命令测试无线局域网设备之间网络连接是否正常。若出现连接超时或失败,可尝试关闭PC机防火墙后再次连接。
Target# ping 192.168.0.21 //192.168.0.21为Ubuntu端IP地址
图 17
在评估板文件系统执行如下命令,查看评估板IP地址并等待PC机连接。
Target# ifconfig
Target# iperf3 -s
图 18
在Ubuntu系统执行如下命令测试网络通信带宽,192.168.0.1为评估板实际IP地址。测试完成后,Ubuntu和评估板均会打印测试结果。测试结果受网络环境影响,仅供参考。
Host# iperf3 -c 192.168.0.1 -i 1
图 19
图 20
测试完成,请将评估板断电,拔出SDIO WIFI模块,将Linux系统启动卡插入Micro SD卡槽,启动方式选择拨码开关拨为010100(1~6) SD启动模式。
SDIO WIFI驱动编译
请将案例src目录下的驱动源码rtl8189FS.tar.gz拷贝至Ubuntu工作目录下,执行如下命令将源码压缩包解压至该目录下。
Host# tar -xf rtl8189FS.tar.gz
图 21
执行如下命令,进入驱动源码目录,修改顶层Makefile文件
Host# cd rtl8189FS/
Host# vim Makefile
图 22
Makefile文件内容请按如下说明进行修改。
KSRC = /home/tronlong/IMX6/Kernel/Linux-5.4.70 //指定内核源码实际路径
图 23
在驱动源码所在路径执行如下命令,使能SDK环境变量并编译SDIO WIFI驱动。
Host# source /home/tronlong/SDK/environment-setup-cortexa7t2hf-neon-poky-linux-gnueabi
Host# make
图 24
图 25
编译完成后,即可在当前路径下生成驱动镜像。
NB-IoT模块测试
本案例使用的NB-IoT模块型号为:亿佰特EA01-D,详细参考资料请查看产品资料“1-开箱必读\产品规格书\拓展模块规格书\”目录下的《EA01-D_Usermanual_CN_v1.1》文件。请将NB-IoT物联网卡插至NB-IoT模块Micro SIM卡槽,然后将模块插至评估板NB-IoT接口,将2.4G天线连接至模块天线接口,如下图所示。
备注:由于存在引脚复用关系,请勿同时将Zigbee、LoRa模块连接至评估板。
图 26
获取IMEI和IMSI
进入评估板文件系统,执行如下命令指定串口后台运行,用于接收模块信息。
Target# cat /dev/ttymxc5 &
Target# stty -F /dev/ttymxc5 -echo
图 27
执行如下命令,获取IMEI码和IMSI码。
Target# echo "AT+CGSN=1" > /dev/ttymxc5 //获取IMEI码
Target# echo "AT+CIMI" > /dev/ttymxc5 //获取IMSI码
图 28
本次获取的IMEI码为"864624050017021",获取的IMSI码为"460082267401907"。
创建云端NB-IoT设备
本次测试以中国移动NB-IoT物联网解决方案OneNET为例进行演示。请登录官方网站:open.iot.10086.cn,通过手机号进行注册账号并登录。
账号登录成功,进入如下界面,点击右上角“控制台”。
图 29
进入如下界面,点击左上角“切换至旧版”。
图 30
进入如下界面,进入“NB-IoT物联网套件”。
图 31
进入如下界面,点击“添加产品”。
图 32
进入如下界面,根据实际情况依次输入产品信息:产品名称、产品行业、产品类别,以及技术参数:联网方式选择"NB-IoT"、设备接入协议选择"LWM2M"、操作系统选择"Linux"、网络运营商选择“移动”。
图 33
产品添加完成后,弹出如下窗口,点击“立即添加设备”。
图 34
进入如下界面,点击“添加设备”。
图 35
进入如下界面,依次输入设备类型、设备名称、IMEI码和IMSI码,并开启自动订阅功能。
图 36
设备添加成功后,将会弹出如下窗口,请将设备ID:969146269和PSK码:8NKXxti2IS5WaDjW记录保存,用于后续测试,然后点击“知道了”按钮关闭窗口。
图 37
进入如下界面,可观察到目前设备处于离线状态,点击“详细”。
图 38
进入如下界面,点击“编辑”,在弹出的窗口输入自定义Auth_Code:Tronlong,然后点击确认关闭窗口。至此,云端NB-IoT设备创建完成。
图 39
图 40
图 41
创建通信套件实例
本章节主要演示NB-IoT模块的通信实例,详细参考资料请查看产品资料“6-开发参考资料\其他参考文档\”目录下的《EA01-S+3GPP和运营商云平台标准指令手册》文件。
生成配置参数
将产品资料“4-软件资料\Tools\Windows\”目录下的cfg_tool.zip和Sublime-Text-Build-3211_x64.zip压缩包拷贝至Windows非中文目录下并解压。
图 42
进入Sublime-Text-Build-3211_x64目录,双击sublime_text.exe程序进行安装。
图 43
进入cfg_tool目录,使用文本工具打开test.xml文件,
图 44
根据前面步骤获取的信息,修改AuthCode为Tronlong,修改PSK为8NKXxti2IS5WaDjW,如下图所示。
图 45
打开Windows命令行CMD,输入如下命令进入ctg_tool目录,生成配置文件。
CMD# cd /d E:\tools\cfg_tool\
CMD# cis_cgtool.exe test.xml out.bin
图 46
执行完成后,将会在ctg_tool目录下生成out.bin文件。
图 47
打开Sublime Text软件,将生成的out.bin文件拖入该软件打开,可看到设备配置参数以16进制显示。同时鼠标右击点击out.bin文件可查看该文件大小为93Byte。
图 48
图 49
创建实例
创建OneNET通信套件实例
测试命令为:echo AT+MIPLCREATE=<total size>,<config>,<index>,<currentsize>,<flag> > /dev/ttymxc5
参数解析:
<total size>:配置文件的总长度。即out.bin文件大小,本次测试文件为93Byte。
<config>:配置文件内容,16进制数的形式。
<index>:配置文件的序号。考虑到AT指令长度有限,一个完整的配置文件未必能在一条AT指令中发送完成,可将内容切分成多段。比如分为N段,则从前到后按照降序依次分配序号为N-1~0,按照从大到小序号的顺序每段调用一次AT指令。如当index为0时,意味着该条指令为最后一条配置消息。
<currentsize>:当前命令所包含的配置文件长度。本次测试为93Byte。
<flag>:消息标识,1:第一条消息,2:中间消息,0:最后一条消息。
进入评估板文件系统,在可执行程序所在目录下执行如下命令,返回OK表示创建成功。
Target# echo "AT+MIPLCREATE=93,13005df10003f2004f040011800005434d494f540000000000123138332e3233302e34302e33393a35363833002741757468436f64653a54726f6e6c6f6e673b50534b3a384e4b58787469324953355761446a573bf30008e400c80000,0,93,0" > /dev/ttymxc5
图 50
创建LwM2M协议实例
测试命令为:echo AT+MIPLADDOBJ=<ref>,<objectid>,<instancecount>,<instancebitmap>,<attributecount>,<actioncount> > /dev/ttymxc5
参数解析:
<ref>:基础通信套件的一个实例标识,类型为一个无符号整数。
<objectid>:对象ID。
<instancecount>:实例个数。
<instancebitmap>:实例位图,字符串格式,每一个字符表示为一个实例,其中1表示可用,0表示不可用。例如添加的Object有5个实例,其中1、3可用,则实例位图为00101。
<attributecount>:属性个数。
<actioncount>:操作个数。
在可执行程序所在目录下执行如下命令。
Target# echo AT+MIPLADDOBJ=0,3311,2,11,4,3 > /dev/ttymxc5
图 51
发送注册请求
测试命令为:ehco AT+MIPLOPEN=<ref>,<lifetime>,<timeout> > /dev/ttymxc5
<ref>:基础通信套件的一个实例标识,类型为一个无符号整数。
<lifetime>:生命周期,单位为秒。
<timeout>:注册的超时时长,单位为秒。
在可执行程序所在目录下执行如下命令。当通信无误时,将会返回OK,模块接下来开始上报状态事件,如下图所示。
Target# echo AT+MIPLOPEN=0,3000,30 > /dev/ttymxc5
图 52
状态事件信息说明如下。
+MIPLEVENT:0,1 //bootstrap启动
+MIPLEVENT:0,2 //bootstrap启动成功
+MIPLEVENT:0,4 //连接成功
+MIPLEVENT:0,6 //注册成功
实例注册成功后,NB-IoT模块将会上报Observe请求,其中上报请求中第二个参数为消息的ID,如下图所示。
图 53
每当模块上报一次Observe请求,请务必在5秒内执行如下命令进行验证,验证成功后,将会返回OK。如模块继续上报Observe请求,需继续执行命令验证,直至实例订阅成功,如下图所示。
Target# echo AT+MIPLOBSERVERSP=0,104148,1 > /dev/ttymxc5 //验证第一条请求
Target# echo AT+MIPLOBSERVERSP=0,169685,1 > /dev/ttymxc5 //验证第二条请求
图 54
同时,在云端设备管理界面,可观察到对应设备呈现自动订阅成功状态,至此,创建实例完成。
图 55 图 55
wifi开发模块学什么好3
通过使用物联网技术将家里的热水器改装成带物联网远程遥控功能,实现在回家前用手机远程控制热水器,回到家就能有热水使用。本篇则与大家分享基于安卓系统完成机智云APP的制作过程,DIY任务中手机APP部分。
DIY任务是只做了一个基于ESP8266的热水器控制器,前两篇介绍了总体方案设计、改装热水器、WIFI模块选型、三极管开关电路设计和整体组装等硬件内容,以及ESP8266模块中运行的软件,或者叫做驱动的制作过程。
前两篇内容:
使用ESP8266模块DIY一个热水器控制器(一):硬件篇
使用ESP8266模块DIY一个热水器控制器(二):ESP8266软件篇
在硬件连接完成、驱动加载进芯片之后,就需要制作手机APP来实现手机对控制器的操作了。
手机APP制作
手机APP的制作,需要一定的安卓编程基础,我擅长的是C,不会安卓。仅仅是凭借当年老师跟我们讲的“编程都是相通的”带给自己的勇气,实现了安卓程序的编译,完成基本的功能设计。
工具非常重要,我们所要做的控制器APP,只需要一个开关按钮,实现对物联网模块的控制就行了,所以能用现成的解决方案最好。好在机智云可以自动生成代码,能做的都做好了。
实现步骤
◆ 登录机智云开发平台:
物联网开发中心_智能硬件设备云服务接入平台_机智云
◆ 首先添加一个新的应用
◆ 定义一个名称
这是我们要控制的设备ID和SECRET。
◆ 选择安卓源代码
生成速度很快
生成的代码中,有AndroidStudio和Eclipse两种形式的代码。
推荐选择AndroidStudio。注意这个软件需要前期下载SDK,具体的下载方式请自行网络查询。这方面的知识属于本文之外的知识,为了保持文章脉络一致性,在此就不详细描述。如需博主帮助,请留言索取详细设置方式。
编译好的APP,安装到手机上之后的界面如下。这些视觉元素都是机智云自动生成好的。如果需要进行美化等等操作,也需要安卓编程的基础。在此就不详细描述了。
通过这个APP,就可以实现手机对家里热水器控制模块的控制了。手机无论在哪里,只要有网络,就能够实现对家里热水器的控制。
这个APP制作出来后,只能在一台手机上使用。这是它的一个缺点。所以还是需要做成多人可控的才行。
下一篇文章,将为大家分享为自己的热水器控制器模块制作一个唯一的二维码,通过扫描二维码实现多人对控制器均可控。
内容更新时间(UpDate): 2023年03月10日 星期五
版权保护: 【本文标题和链接】wifi模块哪种好(wifi开发模块学什么好) http://www.youmengdaxiazuofa.net/longxia8/85951.html
- 全部评论(0)