论文部分内容阅读
摘 要:互联网的出现加速了智能锁的升级,本项目针对老式外装门锁加装无线解锁模块实现远程开锁。本文介绍如何以手机为客户端,结合blinker和Arduino软件以及机械解锁模块实现远程控制解锁,减少更换锁产生的成本,方便实用,无需钥匙,解决忘带钥匙的烦恼。本项目开发内容包含无线控制模块与基座模块,通过无线控制模块作为移动端的信号接受点,收到开锁指令后判断,如果命令合法則将指令通过继电器传送给基座中的马达完成转动,最终实现门锁的开启。
关键词:机械门锁 远程控制 解锁模块
Development and Design of Remote Unlocking Module based on Mechanical Door Lock
Lu Jiandong Yan Jingfeng
Abstract:The emergence of internet has accelerated the upgrade of smart locks. This project is aimed at retrofitting a wireless unlocking module for old exterior door locks to realize remote unlocking. This article introduces how to use the mobile phone as the client, combined with blinker and Arduino software and mechanical unlocking module to realize remote control unlocking, reducing the cost of changing the lock, and solving the trouble of forgetting bringing the key. The development content of this project includes a wireless control module and a base module. The wireless control module is used as the signal receiving point of the mobile terminal. After receiving the unlock command, it is judged. If the command is legal, the command is transmitted to the motor in the base to complete the rotation and realize the opening of the door lock.
Key words:mechanical door lock, remote control, unlocking module
近年来,伴随着互联网的普及,带动了物联网的发展,传统的机械锁经过再次升级成为智能锁,能实现更多的解锁方式如远程解锁、指纹解锁、人脸解锁等等。但在经历机械锁到智能锁的切换时,必然会带来一段较长的过渡期,目前全国传统的老式机械锁保有量还十分巨大,如果需要更换成智能锁,存在以下缺点:
1)机械锁更换成智能锁将会带来额外成本支出,传统机械锁和智能锁的价格差别一般在5-10倍左右。
2)更换为智能锁工序也较为繁琐。
因此,本项目基于市面上常见的老式机械锁为研究对象,开发一款简易的通用型无线解锁模块,能在不更换机械锁的前提下,实现远程手机控制解锁。
1 系统实现
本设计的远程解锁模块的结构设计框如图1所示。手机客户端作为命令发送的起点,通过服务器连接无线控制模块,控制基座模块的运行,最终实现解锁功能。
2 手机客户端
采用市面上主流产品点灯科技(blinker),它是一套专业且易用物联网解决方案。跨硬件、跨平台的物联网解决方案,提供APP端、设备端、服务器端支持,使用公有云服务进行数据传输存储。Blinker常见支持蓝牙 、 WiFi 等通讯方式,理论上只要是支持蓝牙或者WiFi的设备,都可以使用blinker连接。此处我们只运用其中Wifi控制功能。
在blinker中新增开锁设备[1]名称,确定产品密钥,将产品密钥通过烧录写进Esp8266芯片中进行识别关联。再对该设备进行开锁页面设置,设置常见开关按钮,并调用Monitor模块对芯片状态进行监控。最后在总页面中能查看设备当前状态,确认是否离线。
3 无线控制模块
无线控制模块[2]由一款Esp 8266芯片,一块5V供电模块,一个继电器,一个马达,若干杜邦线等共同组成。选用一款Esp8266是一款集成了Wifi功能的MCU开发板,可以直接连接wifi,开发环境多元化,也是表较受欢迎的物联网芯片。配套继电器,将电信号ESP8266芯片中的电信号通过继电器转换成电路的开闭。电源模块,提供该控制中心的电源。马达,根据电路中的供电信用提供旋转动力,用以开锁。
ESP 8266芯片采用Arduino语言[3]进行编写脚本,Arduino使用C/C++编写程序,虽然C++兼容C语言,但这是两种语言,C语言是一种面向过程的编程语言,C++是一种面向对象的编程语言。早期的Arduino核心库使用C语言编写,后来引进了面向对象的思想,目前最新的Arduino核心库采用C与C++混合编写而成。
程序主要包含以下核心内容:
#define BLINKER_WIFI 1.
//表示通过wifi接入 #include <Blinker.h>
//点灯科技的核心库
char auth[] = "c21239998e60";
//设备的密钥
char ssid[] = "TP-LINK_A319";
char pswd[] = "xxxxxxxxx";
// wifi 的SSID和密码,
BlinkerButton Button1(BUTTON_1);
//手机点击按钮后,触发这个函数工作
void setup() {
Serial.begin(115200);
//设置波特率115200
Blinker.begin(auth, ssid, pswd); //连接wifi
Button1.attach(button1_callback);
通过烧录器将函数写入Esp8266芯片中,实现Blinker与控制模块进行匹配绑定。手机APP控制ESP8266芯片(已接入wifi),由8266芯片控制继电器的开关,最后控制电机的运转。
搭建远程解锁模块如下:
4 基座模块设计
本文以老式门锁为例子。内部采用横向开锁设置,左右滑动开关即可打开锁舌,将电机的旋转运动转化为直线运动带动开关的横向运动即可打开门[4]。锁舌横向有效位移为14mm,因此设置电机的有效行程为14mm能有效保证锁舌开启和关闭。如下图4所示
解锁模块设计如图5,马达通过继电器控制闭合,带动圆盘的旋转,由圆盘上的圆柱带动横轴的左右位移,最终推动门的开闭。
通过硬件的测试,基于blinker软件可实现远程手机APP解锁传统机械锁,在不更换原机械锁的结构基础上加装解锁模块实现最终的解锁操作。在一定范围内能实现远距离的开关锁,保护了个人财产和增加了便利性和经济性。
5 结语
本系统针对传统机械锁远程解锁问题,以手机为客户端,以无线通信技术为传输手段,机械装置控制锁具的开关,方便实用,无需钥匙,提高开锁的便捷性,可运用到市面常见的老式机械门锁。同时不需要更换原先的机械锁,可以大幅度節约成本。后续基于当前功能还可自主开发附加功能如报警、远程门锁监控功能等,也为后续的开发设计打下了良好的基础。
基金项目:台州职业技术学院2021年校级大学生科技创新项目(项目编号:2021DKC28)。
参考文献:
[1]杨世恩. 智能电子门禁系统研究与设计[J].通信技术,2011(5):24-26.
[2]徐正科,陈杰,佟安.基于树莓派+Arduino实现简易智能模块化门锁[J] .计算机产品与流通,2018(12):109.
[3]孙宏明. Android 手机程序设计,App Widget 常驻程序.中国水利水电出版社,2012.
[4]王元峰,曾惜. 面向专用配网设施的智能锁控管理及APP应用[J].信息与电脑(理论版),2019,47(2): 105-106,109.
关键词:机械门锁 远程控制 解锁模块
Development and Design of Remote Unlocking Module based on Mechanical Door Lock
Lu Jiandong Yan Jingfeng
Abstract:The emergence of internet has accelerated the upgrade of smart locks. This project is aimed at retrofitting a wireless unlocking module for old exterior door locks to realize remote unlocking. This article introduces how to use the mobile phone as the client, combined with blinker and Arduino software and mechanical unlocking module to realize remote control unlocking, reducing the cost of changing the lock, and solving the trouble of forgetting bringing the key. The development content of this project includes a wireless control module and a base module. The wireless control module is used as the signal receiving point of the mobile terminal. After receiving the unlock command, it is judged. If the command is legal, the command is transmitted to the motor in the base to complete the rotation and realize the opening of the door lock.
Key words:mechanical door lock, remote control, unlocking module
近年来,伴随着互联网的普及,带动了物联网的发展,传统的机械锁经过再次升级成为智能锁,能实现更多的解锁方式如远程解锁、指纹解锁、人脸解锁等等。但在经历机械锁到智能锁的切换时,必然会带来一段较长的过渡期,目前全国传统的老式机械锁保有量还十分巨大,如果需要更换成智能锁,存在以下缺点:
1)机械锁更换成智能锁将会带来额外成本支出,传统机械锁和智能锁的价格差别一般在5-10倍左右。
2)更换为智能锁工序也较为繁琐。
因此,本项目基于市面上常见的老式机械锁为研究对象,开发一款简易的通用型无线解锁模块,能在不更换机械锁的前提下,实现远程手机控制解锁。
1 系统实现
本设计的远程解锁模块的结构设计框如图1所示。手机客户端作为命令发送的起点,通过服务器连接无线控制模块,控制基座模块的运行,最终实现解锁功能。
2 手机客户端
采用市面上主流产品点灯科技(blinker),它是一套专业且易用物联网解决方案。跨硬件、跨平台的物联网解决方案,提供APP端、设备端、服务器端支持,使用公有云服务进行数据传输存储。Blinker常见支持蓝牙 、 WiFi 等通讯方式,理论上只要是支持蓝牙或者WiFi的设备,都可以使用blinker连接。此处我们只运用其中Wifi控制功能。
在blinker中新增开锁设备[1]名称,确定产品密钥,将产品密钥通过烧录写进Esp8266芯片中进行识别关联。再对该设备进行开锁页面设置,设置常见开关按钮,并调用Monitor模块对芯片状态进行监控。最后在总页面中能查看设备当前状态,确认是否离线。
3 无线控制模块
无线控制模块[2]由一款Esp 8266芯片,一块5V供电模块,一个继电器,一个马达,若干杜邦线等共同组成。选用一款Esp8266是一款集成了Wifi功能的MCU开发板,可以直接连接wifi,开发环境多元化,也是表较受欢迎的物联网芯片。配套继电器,将电信号ESP8266芯片中的电信号通过继电器转换成电路的开闭。电源模块,提供该控制中心的电源。马达,根据电路中的供电信用提供旋转动力,用以开锁。
ESP 8266芯片采用Arduino语言[3]进行编写脚本,Arduino使用C/C++编写程序,虽然C++兼容C语言,但这是两种语言,C语言是一种面向过程的编程语言,C++是一种面向对象的编程语言。早期的Arduino核心库使用C语言编写,后来引进了面向对象的思想,目前最新的Arduino核心库采用C与C++混合编写而成。
程序主要包含以下核心内容:
#define BLINKER_WIFI 1.
//表示通过wifi接入 #include <Blinker.h>
//点灯科技的核心库
char auth[] = "c21239998e60";
//设备的密钥
char ssid[] = "TP-LINK_A319";
char pswd[] = "xxxxxxxxx";
// wifi 的SSID和密码,
BlinkerButton Button1(BUTTON_1);
//手机点击按钮后,触发这个函数工作
void setup() {
Serial.begin(115200);
//设置波特率115200
Blinker.begin(auth, ssid, pswd); //连接wifi
Button1.attach(button1_callback);
通过烧录器将函数写入Esp8266芯片中,实现Blinker与控制模块进行匹配绑定。手机APP控制ESP8266芯片(已接入wifi),由8266芯片控制继电器的开关,最后控制电机的运转。
搭建远程解锁模块如下:
4 基座模块设计
本文以老式门锁为例子。内部采用横向开锁设置,左右滑动开关即可打开锁舌,将电机的旋转运动转化为直线运动带动开关的横向运动即可打开门[4]。锁舌横向有效位移为14mm,因此设置电机的有效行程为14mm能有效保证锁舌开启和关闭。如下图4所示
解锁模块设计如图5,马达通过继电器控制闭合,带动圆盘的旋转,由圆盘上的圆柱带动横轴的左右位移,最终推动门的开闭。
通过硬件的测试,基于blinker软件可实现远程手机APP解锁传统机械锁,在不更换原机械锁的结构基础上加装解锁模块实现最终的解锁操作。在一定范围内能实现远距离的开关锁,保护了个人财产和增加了便利性和经济性。
5 结语
本系统针对传统机械锁远程解锁问题,以手机为客户端,以无线通信技术为传输手段,机械装置控制锁具的开关,方便实用,无需钥匙,提高开锁的便捷性,可运用到市面常见的老式机械门锁。同时不需要更换原先的机械锁,可以大幅度節约成本。后续基于当前功能还可自主开发附加功能如报警、远程门锁监控功能等,也为后续的开发设计打下了良好的基础。
基金项目:台州职业技术学院2021年校级大学生科技创新项目(项目编号:2021DKC28)。
参考文献:
[1]杨世恩. 智能电子门禁系统研究与设计[J].通信技术,2011(5):24-26.
[2]徐正科,陈杰,佟安.基于树莓派+Arduino实现简易智能模块化门锁[J] .计算机产品与流通,2018(12):109.
[3]孙宏明. Android 手机程序设计,App Widget 常驻程序.中国水利水电出版社,2012.
[4]王元峰,曾惜. 面向专用配网设施的智能锁控管理及APP应用[J].信息与电脑(理论版),2019,47(2): 105-106,109.