摘要:文章以基于微信小程序的物联网系统开发与应用为研究对象,首先对基于微信小程序的物联网系统开发与应用的优势进行了分析,随后从硬件设计出发,对基于微信小程序的物联网系统硬件模块设计进行了分析,最后分析了该系统的软件设计内容,并对其实用性进行了检测分析,旨在为相关研究提供参考。
关键词:微信小程序;物联网;系统开发;应用
中图法分类号:TP311文献标识码:A
Development and application of IoT system based on WeChat applet
CHEN Bo
(The First People's Hospital of Changzhou,Changzhou,Jiangsu 213004,China)
Abstract:The article takes the development and application of IoT system based on WeChat small program as the research object. Firstly, the advantages of developing and using IoT system based on WeChat small program are discussed and analyzed, then the hardware module design of IoT system based on WeChat small program is analyzed from hardware design, finally the software design content of the system is analyzed, and the practicality of which is tested and analyzed,hoping to provide some reference for related research.
Key words:WeChat applet,Internet of things,system development,application
在“互联网+”信息时代下,各种先进的信息技术不断涌现,各种通信 APP 也得到了广泛普及。其中,以微信为代表的通信 APP 已经成为“装机必备 APP”,为人们的生产生活带来了极大便利。因此,在物联网系统开发中,可以引入微信小程序,从而进一步简化物联网系统功能操作的难度,同时为物联网系统开发与应用创造更有利的条件,满足物联网运行稳定、便捷、安全的需求,促使物联网系统发挥出更大的价值。
1应用优势
以微信小程序为基础,加强物联网系统应用与开发,主要有如下优势:(1)局域网通信比较方便。物联网设备通常会通过 Wi?Fi 模块进行网络连接。在这一过程中,微信小程序会通过局域网、ZigBee 技术等满足物联网通信需要。基于此,物联网系统感知层通信调试难度将会大大降低;(2)后端开发更加容易。对微信小程序而言,后端开发有着非常低的成本,且实际开发效率也比较高。因此,可在官方后台 API 的帮助下直接与前端对接,减轻了开发者的开发工作压力,使其能专心进行核心业务开发[1]。这对物联网系统开发效率提升有着非常积极的影响;(3)应用结构统一。传统系统开发平台较为复杂,而以微信小程序为基础进行物联网系统开发,不仅可以满足功能开发需求,同时应用结构也更加统一。这为开发者进行权限、数据、存储等功能集中管理创造了非常有利的条件;(4)拥有非常完善的学习生态。对微信开发平台来说,本身配置了非常详细的开发文档,因此能够为开发者开发工作开展提供一定的指导,尤其是能够为开发者提供很多简单易懂的 API,有效推动开发工作顺利开展。并且,近年來微信小程序开发越来越流行,现存很多开源项目,能够为开发者提供帮助,降低了开发难度。
2硬件模块设计
基于微信小程序的物联网系统硬件框架如图1所示,硬件模块主要包括电源模块、控制模块和通信模块。
电源模块。在该模块中,采用了220V 电源适配器,电压为12V,通过 DC 电源插孔直接与电源模块连接。在模块之上,设计有两路 LED 指示灯,用于显示系统实际运行状态。比如,系统处于开机、开机等状态[2]。从电源输出来看,主要包括三种输出电压类型:一是12V 电压,通过插入 DC 电源,完成电压输入;二是5V 电压,通过电源芯片 NCP1117ST50T3G 输出;三是3.3V 电压,通过电源芯片 NCP1117ST33T3G 输出。同时,芯片的外围电路也比较简单,先完成两个电容(电容容量分别是10uf 与1uf)并联,即可实现对直流输入电压的滤波处理。在此基础上,再并联一个10uf 电容,即可确保电压输出的稳定性。
控制模块。在该模块中,采用了 ATMEGA328P 控制芯片。这种芯片最早源自于 AVR 开源硬件平台,在 Android 开发架构中也能进行应用。由于平台硬件开源,且 IDE 也比较便捷,因此降低了开发难度,开发人员无须关心底层控制逻辑,集中精力进行业务逻辑开发,可提高开发效率。
通信模块。在该通模块中,采用了贴片式 Wi?Fi 模组 ESPWROOM?02ESP,这一模组对其射频性能进行了调整,因此更能够满足物联网系统的生产需求。除此之外,该模块还有以下优势:(1)Wi?Fi 功能完善,且经过了官方认证,不仅可以独立应用,还能够搭配其他 MCU,自由组合应用。当模组独立应用时,可通过外接 flash 启动,同时在高速缓存器的帮助下,系统存储也能够得到有效优化;(2)该通信模块能够支持基础型结构网络。结合当前的无线网络标准,发射功率可以自由灵活控制,且整体功能较强,能够满足物联网系统运行各种网络连接需求;(3)该模块集成了32-Bit 内核处理器,因此有着非常强大的 CPU 处理能力,处理最高时钟频率能够达到160MHz,能够满足系统运行需求。不仅如此,该模块将绝大部分处理能力用于业务开发,优异的性能赋予其强大的数据处理能力,因此能够满足物联网系统功能运行要求。
3云服务搭建
在本次物联网系统开发过程中,还自建了云服务器,在这一过程中,采用了 CentOS7.264位操作系统。该系统在当前属于比较常用的主流服务器操作系统,且系统版本免费,可显著降低开发成本。同时,这一版本本身也比较稳定,更新的频率较低。因此,与普通的 Linux 系统相比,其更加稳定,运行也更加安全。此外,系统还有良好的兼容性,后续维护也比较方便。在启动云服务器实例后,可采用 WebShell 浏览方式,完成对云服务器的登录。在此基础上,还需要利用“阿帕奇(Apache)”完成云服务器 HTTP 服务的搭建。在这一过程中,需要先完成云服务器登录,然后采用 yum 命令,完成对阿帕奇服务的安装[3]。随后启动阿帕奇服务,将其功能纳入开机启动服务列表之中。最后依法炮制,采用 yum 命令,完成 MySQL,PHP 安装。通过采用上述方法,可以基本完成物联网系统云服务器搭建。在后续开发工作中,还需要做好 SQL 数据库、PHP 脚本开发等工作,针对阿帕奇,还应结合系统的实际需求,完成针对性网络服务设置工作。
4软件设计
物联网系统云端响应函数。在完成上述硬件内容设计后,需要进行微信小程序的引入,通过微信小程序完成对物联网系统功能的操作。为达到这一目的,需要立足系统,完成云端响应函数设计。在正常情况下,微信小程序会在微信客户端之上进行运行,系统软件运行流程如图2所示。因此,为了促使程序与物联网系统进行紧密连接,需要用到响应函数,完成程序内容与功能的调用。与此同时,还应注重做好外网设备的连接工作,通过调用域名与前端 IP 地址,及时响应云端程序服务,完成对物联网系统运行的控制。针对系统软件设计工作,必须提高对响应函数设计的重视,如此才能通过软件完成微信小程序功能的调用,确保程序与物联网系统产生功能性通信连接。
在物联网系统设计中,仅支持个人用户应用系统。在实际进行通信连接设计时,可以直接通过 Wi? Fi 局域网进行小程序通信。在微信小程序客户端也可以完成硬件配置工作,以调用域名与域值,从而在HTTPS 与 EWSS 端实现网络协议调度。在完成协议处理后,即可通过上述设计的云端自建服务器完成访问工作,实现程序到系统之间的通信。除此之外,还可以在云端响应函数中直接进行接口信息的整合,从而有效满足自建云端服务器与微信小程序之间的通信需求,确保小程序操作功能能够通过网络通信被物联网系统所接收,并及时进行响应。基于此,在构建微信小程序的过程中,可以选择引入 lamp 框架结构,实现对终端数据的同步处理。与此同时,还能够在 Web 应用中采用数据长连接方式完成连接请求的发送。最后,在微信小程序的云空间中借助函数调用功能,实现 API 调用。上述函数具体表示如下:
accountList =∑adapter(γ i )× n (1)
式(1)中,accountList 代表的是微信小程序云端调用清单,γ代表的是异步信息,i 代表的是在调用行为出现后函数计算实际迭代的次数,n 代表的是具体的调用信息量。在上述函数的指导下,可以在微信小程序中完成信息调用的操作,从而直接从物联网系统下的传感器中获得相关控制参数信息。
引入数据库完成物联网系统运行流程的规划。完成响应函数设计工作后,标志着微信小程序与物联网系统正式进行了通信响应连接。在此基础上,还需要将调用数据信息与前端数据进行融合,才能更好地推动物联网系统稳定、顺利运行。以物联网系统运行需求为依据,通过建立 SQL Server 数据库,统一对物联网系统的终端数据信息与微信小程序中的用户信息进行管理。其中,对于微信小程序的用户而言,可以结合不同的用户角色以及功能,完成对应的数据库表格建立,并以此为依据,完成数据库的构建。
在数据库中,除了主键以外,其他内容均采用 archar( n)方式进行定义。基于此,能够为后续数据库表格内容修改提供便利。在成功建立系统数据库后,还需要基于物联网系统软件运行过程完成数据库融合,并对物联网系统软件程序运行流程进行科学合理的规划。与此同时,在 services 服务中,还需要对数据信息进行封装处理。相关处理内容复杂,具体为系统内小程序信息增删改查等功能。在实际进行数据库运行调用时,应遵循以下流程:首先,执行 db.insert 程序,完成数据插入,即在数据库表格中,插入一条数据信息。然后,在执行使用 db.delete 程序,完成数据删除,即在数据库表格中,删除一条指令。采用上述方式,可以对物联网系统内信息进行处理,满足物联网系统的运行需求。
5实用性检测
在完成基于微信小程序的物联网系统硬件与软件设计后,为了对系统的功能实用性进行验证分析。本文提出了一种“黑白盒测试方法”,以对物联网系统运行进行检测。通过对比实验,测试计算机终端输入系统测试指令的有效性。在这一过程中,需要将系统中的传感器与主控板以及通信接口进行连接,同时注意保持连接的标准化。在此基础上,打开电源,实现对计算机的恒流供电。此时,整个物联网系统启动,且处于正常运行状态下。随后,即可对物联网系统运行的监控区域实施一定的干扰,用于检测系统功能是否运行正常。
在具体进行干扰时,可采用多种方法,如可以选择切断电路、关闭灯光等。此时,系统传感器感会自动感应功能覆盖区内的异常变化情况,随后会启动环境异常检测功能,通过传感器感知周围环境信息,并通过网络进行信息传输。如果物联网系统对环境检测识别不存在错误,物联网终端用户会将相应的信息字符串以二进位制数据的方式进行传输。此时,在局域网之内的计算机前端会接收到信息,微信小程序也会向用户发送异常消息提醒。每顺利执行1次上述操作,便表明物联网系统通过了上述实用性功能测试。
6总结
以微信小程序为基础的物联网系统设计与开发具有系统性和专业性,在实际进行设计时,应充分利用微信小程序进行物联网系统开发的优势,同时从系统的硬件设计、软件设计出发,完善系统架构,并从云端服务设计入手,赋予物联网系统良好的信息服务功能,从而满足物联网系统运行的需要。
参考文献:
[1]张辉,苑咏哲,王汶君.基于移动物联网的公交安全与智能系统[ J].电子设计工程,2020,28(9):37?40.
[2]顾新萍.基于微信小程序的智能家居控制系统设计与实现[ D ].青岛:青岛大学,2019.
[3]张瑞松,马志财.基于物联网的家庭智能气候站设计[ J].自动化仪表,2020,41(5):71?74.
作者簡介:
陈波(1989—),硕士,研究方向:数据库。