收藏官网首页
查看: 2849|回复: 1

[分享] 融合STM32与机智云物联网:打造智能门锁新时代

681

主题

738

帖子

3万

积分

版主

Rank: 7Rank: 7Rank: 7

积分
36553
跳转到指定楼层
#
 楼主| 发表于 2024-3-22 17:08:22 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
免费使用STM32、APP自动代码生成工具
本帖最后由 Kara 于 2024-3-22 17:10 编辑

基于 STM32机智云智能门锁的设计与实现


摘要:为了提高门锁的安全性,基于STM32和机智云设计了一款新型智能门锁。该系统主要由STM32 主控制模块、数据存储器单元、矩阵键盘单元、TFT 液晶显示、手机APP 等模块组成,实现了一款拥有警报功能的控制系统。此外,结合日常生活的实用性,在此基础上增加手机无线远程解锁功能。


利用esp8266 无线传输模块将智能门锁与手机 APP 进行连接,并在同一局域网下, 机智云通过一键配置实现互通,并实时显示和控制开、关锁的状态。最终组成完整系统并完成了调试。


传统的锁具不仅不方便而且安全系数较低,而智能门锁由于隐私性高、编码量多、随机开锁成功率低、密码可随时变化等优点,满足了人们更高的需求。将移动互联网与无线通信结合起来的智能门锁系统,不仅易于操作,而且推动了人机交换的进程。

借助 STM32F103ZET6 单片机优异的实时性能、最大程度的集成整合、配置灵活、强大的编程和控制能力,设计了一种 STM32F103ZET6 为主控制器的智能门锁系统, 结合键盘模块、EEPROM 模块、TFT 彩屏模块和无线传输等**电路构建智能门锁管理体系。在此基础上增加手机无线远程解锁功能,利用 ESP8266 无线传输模块,通过云服务器将智能门锁设计与手机 APP 进行连接,并在同一局域网下机智云通过一键配置实现互通。此设计大大增加了实用性,而且有着更高的安全和可靠性。


1 系统硬件设计


单片机作为控制程序的主要组成部分,为了获得最佳的性价比并且需要联网功能,所以需要选择一个比较合理的单片机型号。又考虑到单片微型计算机的内存、操作速度、性能、I/O 端口、定时器、计数器和串行端口等。除抗干扰性、封装的形式、保密性能也存在一些基本要求,如优先中断源的数量、工作温度的范围、低电压的检测、时钟脉冲发生器微控制器和复位功能,还应考虑开发过程、开发工具、程序员、研究成本、开发人员的适应性、技术支持和服务等方面。


基于这些因素,选择 STM32 作为本设计的核心组件,使用灵活的设计、编程和多样端口 I/O,并控制它的准确性。使用外部 AT24C02 芯片存储密码并通过TFT 彩屏实现显示功能,利用无线传输将实物与机智云连接,在手机 APP 上显示是否处于正常状态和控制门锁开关。最后使用键盘通过输入密码来实现各个功能。系统整体框图见图 1。


图 1 系统整体框图



1.2 矩阵键盘模块


键盘是单片机非常重要的输入设备,分为独立按键和矩阵按键,因此,使用起来很方便。这个设计需要大量的按键,所以使用矩阵按钮来保存 I/O 线,当按下一个键时,通过某个侧引脚给出一个低电平,并且对整个引脚进行扫描,看它是否与原始赋值相同,并根据相应的算法确定密码(通过将值更改为初始值或根据结果)。键盘为 4×4 形式,按键包括数字 0~9,以及模式、改密、确认、取消、网络复位和消除警报 6 个应用按键。如果需要输入或更改密码,按下相应的按钮将会和单片机生成一个信号并执行相应的程序。


1.3显示模块


彩屏显示屏幕的像素点对应着 GRAM 的存储单元,对应于芯片内部有将数据从 GRAM 存储单元转换为 LCD 屏幕的控制信号,显示界面就是由这些具有一定的颜色及亮度的各点组成。普通 TFT 的响应时间约为 80 ms 的较高速度,视角通常高达 130 度左右,主要用于高品质产品,可以在屏幕上获得高速、高亮度和高对比度的信息。


当光源照耀时,光源向上经由过程下偏光板,液晶分子指导光芒,经由过程遮光和透光达到测绘工具。因为TFT 彩屏具有很大的数据库,所以传统的单片机满足不了更新界面时刷新数据的速度,因此有越来越多的工程师把它设计到产品中去。本设计采用的 ILI9341 通过配置引脚和控制信号线就可以使芯片工作在需要的模式,芯片使用 8080 接口或者 SPI 接口与 MCU 进行通讯。


1.4无线传输模块


无线传输模块采用 ESP8266WIFI 模块,ESP8266 有着同类产品所没有的高配置和兼容性,它配置的Flash 为 4 MB,内存为 80 KB。支持的方式有 AT 指令、C、Python、Javascript 和 Lua 等。而且ESP8266模块自带总线拓展与外设等接口,利用该性能将系统与手机 APP 进行联合就可以达到人机交流的目的。该模块原理见图 2。


1.5存储模块


EEPROM 模块的 IIC 总线由单片机控制,挂在 IIC 总线上的设备可以很多个,每个有独立的地址,但单片机发送指定的地址之后,该地址的对应设备就会向单片机发送一个应答信号运行该系统。


该设计使用的是 AT24C02 芯片,用于存储数据和特定的一些任务、寻找指令和接收发送数据。AT24C02 是一个2 K 位串行的 CMOS E2PROM,采用两线串行总线与STM32进行交流。AT24C02 的页面写入缓冲区为 16 字节, 该芯片仅利用 IIC 总线接口提供写保护。电源关闭装置的功能是在电源开启时存储当前设定的价格信息。AT24C02原理见图



1.6 智能锁模块


电磁锁设计与具有电磁效应的电磁设计相同。当电流通过时,电磁铁就会产生强大的拉力,把拉动的铁片吸到门锁上就达到锁门的目的。只要一个微小的电流可以产生很大的磁力,正确关掉电源之后,电磁锁失去吸收力,就可以打开。

继电器是由电从而达到控制的一种装置,控制系统与受控系统之间存在着相互作用的关系,在系统中相当于一个开关的存在。在正常状态下,公共端与常闭端相接,当密码输入正确,将会导通,继电器使能端将有电流通过,公共端就会与常开端连接,从而达到一个“开关”的目的。因此,它在诸如自动调谐、保护和转换方案等电路中发挥作用。继电器原理见图 4



2 系统软件设计


本系统用C 语言编写,主要由智能锁模块、显示模块、无线传输模块、矩阵键盘模块以及密码验证和密码更改这几部分的设计组成。智能门锁整体流程见图 5。


2.1 智能锁模块程序设计

        
微控制器接受输入代码后并将其与EEPROM 中存储的密码进行比较。如果密码正确,继电器公共端与常开端保持连接状态,电磁驱动器生效,锁簧收缩开锁;如果密码不正确,继电器处于常闭状态,锁将不会打开。


2.2 显示模块程序设计


显示模块主要负责显示WiFi 连接、输入密码、更改密码和开关锁等实时状态。它具有丰富多样的接口、编程方便、易于扩展等良好的性能,同时在内部设有特定的驱动,并且驱动 IC 自己集成显示缓存,不需要外部显示缓存,此设计选用的是 ILI9341 驱动芯片。该系统对硬件层的配置主要是对 STM32 的 I/O 端口的输入/输出和相关的寄存器进行设置,显示驱动是向 TFT 彩屏发送数据、控制指令和简单的画点等函数。



2.3 无线传输模块程序设计

ESP8266 是一款超低功耗 UART-WiFi 传输模块,通过将物理设备连接至无线网络上进行 Internet 或LAN 通信,从而提供网络连接。该模块有STA 模式、AP 模式和STA+AP 模式3种模式。


在设计中用 AP 模式就可以实现此功能,需用到指令:


1.设置 wifi 模式:AT+CWMODE=2
2.重启生效:AT+RST
3.启动多连接:AT+CIPMUX=1
4.建立 server:AT+CIPSERVER=1


2.4 矩阵键盘模块程序设计

键盘选用的是 4×4 矩阵键盘,通过编程分别赋值给不同信息,从数值 0~9 中,任意选取 6 位数字作为输入密码,主要通过扫描的原理来判断按键有无闭合及其位置信息,当按下一个键时,通过某个侧引脚给出一个低电平,并且对整个引脚进行扫描,看它是否与原始赋值相同,并根据相应的算法确定密钥有着实现复位、模式、更改密码和确认等功能。

2.5 密码验证和密码更改程序设计


当输入密码正确时,密码验证成功,成功开锁。输入密码失败超过3次,将会发出报警。用户需要更改密码时,需先输入原始密码,确认后输入 2 次要改的密码。


2.6 手机APP

机智云是AIoT开发及云服务平台,工业物联网平台及解决方案商,国家高新技术企业,国家级特色专业型工业互联网平台,工信部第五批服务型制造示范平台,广东省专精特新中小企业、广东省“上云上平台”应用服务平台供应商、广东省服务型制造示范平台。

机智云聚焦物联网、云计算、大数据、人工智能等新一代信息技术,立足制造企业设备智能化、场景数智化需求,基于机智云AIoT底层技术,通过研发自主可控的工业基础软件,构建AIoT工业互联网平台及“软件+硬件+算法+服务”一站式软硬件解决方案,打通产品从设计研发、生产经营到售后运维的全流程数据,实现设备全生命周期数字化管理,有效帮助传统制造企业低成本、高效率实现数字化转型、智能化改造。


机智云主要产品涵括机智云工业物联网平台、工业 DTU、工业网关、边缘服务器、IoT AI 质检设备、企业 APP 及 SaaS 系统、企业私有云等。产品及服务具有开放性强、关键技术领先、行业通用性广、技术门槛低、实施成本低、实施效率快等显著优势。机智云服务覆盖全球200+国家/区域。行业主要覆盖纺织、家电、水产养殖、轻工、电子、电力、热力和燃气、农业、机械等多个细分领域、形成多个行业解决方案。


3 系统调试


对系统结构分析之后,选取一个最适合的方案,并完成硬件的设计,之后完成编程与系统调试,先调试单独模块,最后级联调试,利用 Altium Designer 10 软件,对电路进行规则检查。软件方面用编程软件 Keil,在检查程序没有语法错误后,生成 hex 文件,烧录到单片机中。当用户试图打开一个锁时,必须先通过提供的键盘输入正确的密码。当输入密码不正确时,将通过手机 APP 发生警报,并在 TFT 彩屏上显示错误。下位机整体实物见图 6。



4 结语


本文主要借助 STM32 和机智云设计了一款新型智能门锁。此设计中主要采用 STM32 单片机为主控模块,运用 AT24C02存储芯片、ESP8266WiFi、TFT 彩屏、4×4 矩阵键盘、继电器和电磁锁等**电路。矩阵键盘作为输入,任意 6 位数字作为密码,用 C 语言编写主控单元的控制程序和EEPROM 读写程序相结合, 设计出一款不仅拥有警报功能还可以用手机控制的智能门锁系统。



增加了手机远程控制的功能,利用无线传输功能,可将电子锁与手机 APP 机智云进行连接,并在机智云上实时显示是否处于正常的状态和控制开、关锁。其利用 ESP8266 无线传输模块,通过云服务器将智能门锁设计与手机 APP 进行连接,并在同一局域网下机智云通过一键配置实现互通,当机智云发出信号时将会传输到 ESP8266 芯片,再通过芯片传送至STM32 单片机,执行相应的操作。结果表明,该设计可以实现且达到了设计要求。



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表