APP下载

应用微信小程序的智能工具柜设计

2022-07-20秦瑀

电子测试 2022年13期
关键词:电路工具程序

秦瑀

(1.柳州铁道职业技术学院 动力技术学院,广西柳州,545000;2.兰州交通大学 自动化与电气工程学院,甘肃兰州,730000)

0 引言

微信小程序具有简便快速的特点,使其成为了当下很受欢迎的开发语言之一。小程序中能够申请HTTPS 协定,比HTTP 协定更为安全可靠,因为数据信息都是通过加密协议传送的,因此能够提高应用的安全性。智能工具柜应用程序则以微信为主要开发和发布的平台,为实训室智能工具柜的开发提供了一个较好的解决方案[1]。

本研究运用STM32,结合微信中的小程序,设计了工具柜系统。这一系统的特点是:方便、简洁、智能化,与此同时,还可以进行再次开发。

1 项目简介

实训室智能工具柜系统的使用者能够借助微信等小程序来使用开启工具格口,并自行取用所需工具。同时后台能够记录借用人以及借用的设备、借用时间等,以完成对实训室工具的管理工作,具体项目内容包括:

(1)使用实训室智能工具柜的方式

用户需透过利用微信上的扫一扫功能,通过对柜上二维码扫描就可以进入微信小程序的主页,看到每种工具的剩余量,选择需要的工具和数量。

(2)用户登录权限要求

该智能工具柜用于校园实训室,管理人员能够设置权限,选定部分老师或其他指定人员能够取用,其他人无权限。

使用者可以通过微信小程序注册,但若是首次应用本操作系统,则微信小程序就必须切换到微信认证界面。当使用者单击权限按键后,使用者的个人信息将经由微信小程序传入后台java 代码,然后再经由java 将使用者的个人信息保存在数据库系统中,并给微信小程序返回下一个使用者的唯一标识。完成权限后就会切换到主页查询储物箱的个人信息,但如若二次使用本操作系统时,则必须径直跳转至主页,而无须认证或注册才能查询首页的个人信息记录。

(3)智能工具柜状态信息

完成授权并进入到主页之后,就可以直接展示所选择智能工具柜中的所有工具信息状况,用户可以依照自身情况,检索相关的关键词、分类,进而找到所需工具。界面能够展示工具的剩余数量、状况好坏等相关信息。

(4)工具的取用和归还

储物柜的每个小格子内放一件工具,当用户从主页查看智能工具柜状态信息后,就可以点击选定工具。智能工具柜的门锁自动开启,并提示用户及时取出东西。同时,后台将记录取用人的信息和联系方式,以及剩余柜中的工具数量,以便于工具的管理以及方便其他用户的使用。用户使用完毕后,将工具放回原有的格口并关闭,并通过界面点击归还,完成使用。

(5)提醒归还功能

使用者取用工具后进行使用,使用时间超过一定限额,则会通过小程序定时发送归还提醒,以免用户忘记归还。提醒时间可以由后台进行设定。

(6)工具的维护

用户在借用工具时,后台记录下使用取用人的个人信息以及取用的工具和取用时间,从而确定工具的去向,便于实训教师管理。使用人在使用过程中如果工具损坏,或者发现工具损坏,可以通过改程序进行报错,后台管理人员能够看到保修信息,及时进行工具维护[2]。

2 智能工具柜设计

智能工具柜设计上包括硬件和软件两部分。硬件方面运用的是STM32F103 单片式微机,结合电气锁、供电线路、GPRS模组等相关配置。软件方面运用微信中的小程序,与此同时,在云端建立相应的服务器,对产品进行研发、推广。学生或老师可以运用小程序,进行相关内容的查找。通过云服务器和智能工具柜可以进行即时的数据交互更新。

2.1 系统硬件设计方案

对于下位机系统而言,其硬件部分以STM32 内控体系为重点内容,进而使得信息得以传送、设备处于控制范围。在硬件部分的设计过程中,内容涵盖了处理器模块的单元化设计、硬件模块的选择、原理实施、构建硬件开发板。

对于下位机系统而言,其软件部分主要涵盖了指令、验证、主程序、窗口模块、蓝牙模块等内容,进而使得小程序之间的数据,可以进行双向传递,对数据安全进行验证,同时保证硬件端,可以执行相关指令。就微信小程序设计情况而言,主要有小程序客户端、服务器端。先是在服务器端,构建、生成云服务器。之后,对相关的逻辑、概念进行设计,进而使得数据可以得到较快的更新、储存。因为用户在进入小程序的界面,所以,还需要对注册功能、设备的模块进行设计,进而使得学生或老师可以运用小程序,对工具进行选用。运用相关的实验体系,对其进行有效性测试,结果得出:在小程序智能基础上,构建的工具柜控制系统,达到了预期的目标,且可以稳定运行。此系统对实训室工具智能化、便捷化管理的研究具有一定价值[3]。

2.2 小程序基础架构分析

这一机制主要是以小程序作为基础,运用一种非接触式的智能模式,对其进行操作。所以,首先要对小程序进行一定的了解、掌控。对于小程序来说,其架构构成基础是MINA 其中的核心内容,同时与相关的即时响应信息,融合在一起。这一系统涵盖了逻辑层、视图层等两个主要内容。其架构可以同时满足数据、视图的更新、调整。如果视图需要更新时,那么便会对逻辑层数据进行相对应的更改,视图层内容,会依照相关信息,同步更新。其对应的框架是图1 的内容。

图1 小程序框架图

在框架图中我们可发现,视图层是由较多个Page 组成的,而对于不同的Page 而言,其涵盖了WXSS、WXML 两种文档,相关的开发内容,可以运用WXML,来对基本视图进行设置。运用WXSS,来对网布进行开发。在JavaScript 语言的辅助作用下,逻辑层会对逻辑处、相关接口,进行处理、调用。JSBridge会将逻辑层、视图层,进行紧密地相连,进而实现数据的交互作用。顾客可以在小程序中,看见相关操作,同时会进行触发。在这之后,在JSBridge 的作用下,把触发事件,传输到其逻辑层。逻辑层便会对API 接口进行调作,进而找到相应的逻辑函数,同时执行函数操作。在这之后,逻辑层便会得到所要的信息,同时对相关信息进行处理,再通过JSBridge,传递到视图层中,用户便会看到相应的信息答复、更新,这便是顾客与小程序之间的交互过程[4]。

2.3 系统硬件设计方案

硬件部分,应对小程序端发送的数据,进行接受,与上同时应依照相关数据,对控制指令进行实施。构建硬件平台时,应考虑其可靠性、稳定性。系统的硬件设计,涵盖了预留升级模块、核心模块、系统硬件三个部分,其结构设计为图2 中内容。主要有元器件、主控芯片的选择类型,通讯过程。MCU 主控芯片,运用ST 公司的STM32F407ZGT6,其性能较高;主控模块运用八位串行输入方式;74HC595 为并行输出芯片;检测模块是8 位并行输入,74HC165 为串行输出芯片;BLE 低功耗的蓝牙模块,作为无线通讯;CC2541 是主芯片。本体系中还具有GPRS 模块、232 串口设备,以此来作为预留升级的相应模块,为未来的系统升级奠定一定的基础。DB9 接口作为串口,方便以来的调试工作,MAX232 为电平转换芯片,用来作为以后在进行外接时的串口屏;运用SIM800A 驱动GPRS模块,对于数据的传送类型进行了拓展,为未来的服务,提供了坚实基础;除此之外,这一系统中,也留出了较多的扩充口,为未来系统的升级、功能的增加,提供便利[5]。

图2 硬件系统总体结构图

2.4 核心处理器模块

本设计运用STM32F407ZGT6,作为为重要的处理器模组,其基本原理中涵盖了:数据处理器晶片、外围高速度晶体振荡器集成电路(供给操作系统时钟频段)、外围低速晶振电路(为RTC 供给时钟频段)、开机选择复位集成电路、指示灯集成电路等。根据原理,可以看出:芯片的外部,接了两个时钟,这两个时钟在外接晶振方式下,进行连接,依照其频率情况,将两者分别规定为低速、高速时钟。外部的高速时钟,其电路由8MHz 高速晶振,来提供其时钟频率。外部的低速时钟,其电路运用32.768KHz 低速晶振,来提供RTC 供应频率;图中也体现了启动端的选择电路,引脚BOOTO,是以跳线的方式,还对选GND、VCC 进行选择的,进而得出系统所运用的适宜的启动方式。由于通常是在片上FLASH 启动,所以由BOOTO 接GND[6]。

2.5 控制模块

这一系统,运用74HC595 模块,对电磁锁进行管理,进而达到开柜的相关运算,74HC595 是具有八个串行式的进入、并行式出口的位移存储器。在其输出端,提供高电平、低电平、高阻抗输出模式。这一模块,具有一定的级联能力,模块中的级联输出引脚,连接了下一个595 芯片数据输入的引脚,这一功能,极大程度地对不同的设备进行相应对应的控制。这样的设计大幅度地降低了开发周期,与此同时,节约了成本。现阶段,74HC595 芯片的特点是:能耗低、体积小、稳定性强、经济实用、开发周期短,所以在不同的应用中,以嵌入式开发广为应用。

根据74HC595 芯片的引脚,并行输出相应信息,对8 个开锁模块进行驱动。若依照需要,对级联进行处理,那么便可以形成Nx8 位并行输出,进而对较多的电磁锁,实现相对应的符合逻辑的控制,所以便可以对较多的储物箱格进行分别对应的控制。锁的动作、驱动电路,运用光耦合器隔离,这是光媒介的一种电路信号传递方式。其特点是:体积小、成本低、稳定性强、隔离性好等,所以被广泛使用在不同的电路。在这样的方式下,驱动电路端的信号,会耦合到动作电路端,之后在三极管的电流作用下,达到功能放大效果,便会驱动电磁锁,最终,使得开锁实现。在控制模块中,锁的动作电路电压,大于驱动电路电压。但是,电路中的光耦能也会驱动电路电压,使其与动作电路电压,完全隔离开,进而使得高电压,不会窜入到控制芯片中,避免了控制芯片的破损,使得电路处于安全状态[7]。

2.6 系统软件设计方案

智能工具系统下位机部分,其功能的实现,不但要对其中的硬件部分,实施设计,与此同时,还应对其中的软件部分,进行设计、开发。系统的软件设计涵盖了:主控制器内设计、软件开发情况。后者明确运用Keil 公司的MDK5,为相应的开发环境,运用库函数,对程序进行开发。前者则是在STM32 主控制台内的编程,当设计控制台内编程时,运用依照功能分块的模式,使得不同的程序,均可以实现其功能,这其中涵盖了:蓝牙模块、主程序、串口模块等相关程序设计。图3为程序设计情况。

图3 系统软件设计方案

2.7 系统软件开发方式

软件开发方式主要的寄存器、库函数两种方式,它们的优、缺点,这间存在一定关系。开发库函数是,应把宏、函数等资源,进行分别对应的配置,开发工作者运用调用固件库中的函数,来对寄存器进行配置,最后再进行运算。寄存器开发方式:在功能寄存器中,输入相应的配置参数,尽管在编程过程中,代码所使用的空间不大,运行速度快,然而,其开发的周期较长,与此同时STM32 单片机,有可达到数百个寄存器。若为了熟练掌握不同的寄存器特点,应多次查看相关的芯片手册,如此才可以精准地对STM32 进行使用、配置。所以,这一体系运用的是库函数的开发法,在开发时便不用了解寄存器的配置方式,只要依照库函数的调用方式,来对STM32 的软件,进行相应的开发,这便可以降低其开发周期,使得代码的调试更为便捷,与此同时,也为未来的系统升级、功能增加等功能拓展奠定了一定的基础。图4 为寄存器、库函数的开发方式[8]。

图4 库函数与寄存器开发方式

3 结束语

本项目通过微信小程序相关软件技术与STM32 单片机和GPRS 通讯模块等硬件端设备相配合,设计了一款智能工具柜,为高职院校的实训室工具管理提出了一种现代化和信息化的解决方案。智能工具柜面向老师、学生等用户,操作更加便捷。对于实训教师或者管理员,该智能工具柜使得实训室工具管理更加智能、可靠。

猜你喜欢

电路工具程序
电路的保护
基于用户和电路的攻击识别方法
波比的工具
波比的工具
“简化法”巧解电路问题
给Windows添加程序快速切换栏
试论我国未决羁押程序的立法完善
准备工具:步骤:
“程序猿”的生活什么样
巧用求差法判断电路中物理量大小