基于stm32的智能门锁开发日记(一)

基于stm32的智能门锁开发日记(一)

(一)需求分析,设计思路以及4G模块测试



前言

        虽然我有出门带钥匙的习惯,但是很多人估计还是喜欢不带钥匙直接出门吧,就像我的舍友们,他们就经常出门不带钥匙,我们宿舍的门钥匙也是一直插在锁眼里的,这样并不是很安全,于是我就打算设计一个基于stm32的宿舍智能锁,通过某些识别手段,类似指纹识别,人脸识别一类的,来实现智能开锁,正好我是学通信工程的,这不就专业对口了。


一、需求分析

        首先,指纹识别,这是最基础的功能,一定要有,密码开锁,也是不可或缺的,万一手上沾水了呢,指纹识别针对湿手可靠性可没有那么高。
        然后,人脸识别,这个稍微复杂一些,但是呢,比较巧的一点是,我正好是我们学校RoboMaster战队的成员,接触过OpenCV,在OpenCV contrib库中包含了一些人脸识别算法,LBPH非常适合我的需求,但是人脸识别对算力的要求比较高,用单片机来跑这个多少有些难为他了,于是我打算用树莓派来实现人脸识别。如果使用,树莓派这个项目的成本就偏高了,可以在日后有机会的时候加上。
        与此同时,我还想添加通过网络远程开锁,远程下发临时密码这样的功能,而我们的校园网需要登录认证,所以用esp32做主控或者esp8266串口联网的方案就被排除了,只能使用4G网络模组来实现联网。
        智能锁的开锁功能,可以依靠舵机实现,用舵机拉动门锁的开关,从内侧开门,不会对学校本来的门锁造成损伤,非常符合我的需求。

二、硬件选型

1.主控芯片

主控芯片我选了STM32G431CBU6,主要原因是这个芯片uart多,支持USB,并且是QFN的封装,比LQFP封装的那些好焊接太多了。
在这里插入图片描述

2.指纹模块

指纹模块我选择的是海凌科的PFM383F模块,二十块包邮的价格还要什么自行车。
在这里插入图片描述

3.网络模块

网络模块我用了合宙的air780E 4G Cat.1模块这个模块是移芯618平台,理论上效果应该不会差(当然也有个原因就是这个模块蛮便宜的hhh),但是使用这个模块,天线就需要自己设计了,我直接选了CrossAir的L01贴片天线,这是一个4G全网通的天线,对PCB的设计要求也不算高,照着要求画出来信号就不差了。
在这里插入图片描述

 

 

 
当时我还挺怕我这天线设计翻车,因为阻抗不匹配直接没信号来着,没想到这信号居然这么好,与此同时同一位置我手机的信号强度是-59dbm(切换到4G),虽然我知道不能这么比就是了。

信号强度
串口查询信号质量

 
合宙技术手册

三、硬件设计

PCB设计我是使用嘉立创EDA专业版画的,感谢JLC的免费打样,让我这项目很快的就落地了。
先放两张图在这里,我这个设计不是很完美,也不知道会不会出问题,等我这个项目最终完成以后再开源硬件电路的文件吧,供电用XT30这个老毛病了,鉴定为打RM打的
电路图

焊接好的PCB
PS:有一个去耦电容忘了焊了,不过本身3.3V就是LDO出来的,也没接什么会产生高频噪声的元件,问题不大。
PS2:DCDC有点麻烦,正好手头有一堆之前项目剩下的ams1117-3.3就随手多贴了几个。。合宙那个模块峰值电流有点大就多贴几个并联供电了。

四、网络测试

在手头的服务器上跑了一个TCP服务端的程序,然后用经典的at指令控制air780e连接服务器,测试还蛮成功的。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值