标题 | 基于Wi-Fi的多路二维码读取系统设计 |
范文 | 周炜杰 周媛 余佳琦 杨岭玉
摘? 要:以ATMEGA16A单片机、ESP8266 Wi-Fi模块为核心,设计并制作基于Wi-Fi的多路二维码读取系统,实现无线化的数据接收与发送。通过多个二维码扫描仪获得相关数据并发送信息给服务器,服务器接收数据并导入数据库。数据读取与存储和整合过程为自动化操作。系统配有简洁易用的客户端,用户可通过客户端操作,实时获取信息。 关键词:单片机;Wi-Fi;二维码;物联网;数据库 中图分类号:TP274 文献标志码:A? ? ? ?文章编号:2095-2945(2020)35-0027-02 Abstract: With ATMEGA16A single-chip computer and ESP8266 Wi-Fi module as the core, a multi-channel two-dimensional code reading system based on Wi-Fi is designed and manufactured to achieve wireless data reception and transmission. The related data is obtained through multiple two-dimensional code scanners and sent information to the server, which receives the data and imports it into the database. Data reading and storage and integration processes are automated. The system is equipped with a simple and easy-to-use client, through which users can obtain information in real time. Keywords: single-chip computer; Wi-Fi; two-dimensional code; internet of things; database 引言 近幾年来,随着互联网的发展,在多数领域中有线连接的方式已经不能满足科技高速发展的要求,无线通信的方式正进入到我们生活中的各个领域[1]。它与有线连接方式相比,具有全天候在线,不受传输线材约束的优点。二维码作为一种新的信息承载者有着数据量大、应用方便、纠错能力强等特点[2]。本文设计了一个以ATmega16A单片机和ESP8266 Wi-Fi模块为主要功能器件的多路二维码读取系统。 1 系统总体设计 本系统主要实现两个功能:接收读取二维码数据和发送数据到服务器。整个基于Wi-Fi的多路二维码读取系统的系统架构如图1所示。多路二维码读取系统的具体工作过程如下:Wi-Fi模块接收二维码扫描器的数据,并发送当前状态给单片机,单片机监测Wi-Fi模块的状态,并发送相应控制命令,使其进入对应的工作模式。处于Wi-Fi信号范围内的Wi-Fi模块再通过无线局域网把数据发送给服务器。服务器接收到数据后,会把数据导入数据库,实现数据的管理、整合。客户端服务器还会根据当前Wi-Fi模块的连接状态,显示相应信息给用户,如果连接异常,对应的警示灯就会亮起。 2 系统硬件设计 系统的硬件设计主要可以分为三个部分:单片机及其外围控制电路,ESP8266 Wi-Fi模块、二维码数据接收电路。 2.1 单片机及其外围电路 本设计选用高性能、低功耗的8位单片机——ATmega16A。该芯片为系统提供可靠控制与强大数据处理能力。单片机及其外围电路包括ATmega16A最小系统、继电器、状态指示灯。主要功能实现部分,单片机的两个串行通信接口和Wi-Fi模块对应相连,通过发送AT指令来配置Wi-Fi模块,实现连接Wi-Fi、进入透传模式、发送数据等功能。状态指示部分两个高亮LED通过串联一个限流电阻后与单片机的PA0、PA1口相连。在Wi-Fi模块搜索到无线AP后并连接上服务器后,会返回给单片机一个指令,通过校验返回指令末位的“OK”二字的ASCII码,来判断Wi-Fi模块是否顺利连接上服务器。如果连接上服务器,指示灯变绿表示工作正常,主程序的流程图如图2所示。 2.2 ESP8266 Wi-Fi模块 目前,市面上可供选择的Wi-Fi模块有很多,在权衡设计成本和可靠性后,选择ALIENTEK公司出品的一款串口转无线模块。通过ATK-ESP8266模块,传统的串口设备只需要简单的串口配置,就可以方便快捷的通过Wi-Fi传输数据[3]。而且ATK-ESP8266模块也支持串行接口,电源电压可以匹配3.3伏特和5伏特单片微型计算机系统,可以很方便的和单片机进行连接。模块支持串口转Wi-Fi STA、串口转AP和Wi-Fi STA+Wi-Fi AP的模式,从而可以高效的构建串口——Wi-Fi数据传输方案。本设计中利用单片机发送AT指令配置Wi-Fi模块。 在实际调试中,发现单片机的RXD和TXD并联Wi-Fi模块的数据通路后可能会无法正常工作,于是加入1路继电器模块JQC-3FF来控制单片机的RXD,TXD与Wi-Fi模块的数据线的通断。JQC-3FF有受控侧和控制侧,控制侧由单片机控制,低电压低电流;受控侧接入高电压,高电流。控制侧的三个端口分别接VCC,GND,单片机的PC0口,PC0作为控制信号的输入端。受控侧COM口并联接在Wi-Fi模块的RXD口,NO口接在单片机的TXD。每当接通电源时,配置PC0口输出高电平,导通RXD与TXD。当单片机收到Wi-Fi模块回传Wi-Fi连接成功指令后,立即配置PC0口输出低电平,断开COM与NC之间的连接,即断开单片机的TXD与Wi-Fi模块的RXD的连接。 2.3 二维码数据接收电路 二维码扫码器通过九针串口与Wi-Fi模块和单片机连接。由于扫码器和单片机提供的信号电平与RS232的标准不同,因此电平转换应通过MAX232的芯片进行。扫码器扫描到的二维码数据通过电平转换芯片MAX232转换后,送入Wi-Fi模块,并经内部微处理器处理后,发送给服务器。 在实际测试中,发现MAX32对电源十分敏感,一旦电源电压不稳定,大概率导致MAX232芯片发热严重,从而无法和Wi-Fi模块和单片机通信,因此需要先经稳压后再给MAX232和本系统供电。 3 客户端软件设计 本设计的服务器客户端是用Visual Studio2019开发的。Client/Server是一种数据库的结构,本设计的系统是使用这种数据库结构将多个数据转发模块作为客户端连接到PC端的服务器[4]。活动数据对象(ADO)可以对数据库进行访问,是一种自动化接口技术,ADO技术创建数据库的使用程序速度非常快,也是最節省网络流量的一种数据库访问技术,并且能为数据库提供质量高的接口[5]。Wi-Fi模块与计算机通信是依赖于TCP/IP协议,端口配置文件通过改写文本文档“port”来实现,每次软件运行前会读取文档中的端口号,因此可以同时配置连接不同端口号的设备。设备上线后,显示绿灯,离线显示红灯。软件主面板会显示设备的具体信息,包括端口号、IP地址。数据被接收后,会自动导入到数据库,对数据分组显示。客户端界面如图3所示。 4 结论 本系统在设计前期进行了充分的理论研究;验证了其可行性后,设计并实现了基于Wi-Fi的多路二维码读取系统。整机在运行过程中,能正常处理数据并实时同步到服务器,可靠性高。本设计利用低功耗的单片机和Wi-Fi模块,提供了一种新型物联网设计方案,非常适合移动应用场景下的多路二维码读取。同时,因其硬件成本的低廉而具有很高的性价比。若能够在本系统的基础上,稍加扩展,便可组成覆盖面积广、超多路并行传输的二维码读取网络。 参考文献: [1]王燕.基于Wi-Fi模块的多路灯光控制系统开发[J].电子世界,2015,479(17):186-188. [2]陈守喆.基于二维码的信息管理系统[D].华南理工大学,2016. [3]邱宏斌.一种基于ESP8266模块的物联网设计思路[J].电子世界,2017,000(007):157-157. [4]罗亚非.基于TCP的Socket多线程通信[J].电脑知识与技术,2009,5(3):563-565. [5]徐枫,马国之,刘良旭.基于ADO技术的数据库访问研究与实现[J].计算机工程与设计,2004(01):107-110. |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。