
•
普通钥匙开锁的安全、可靠性并不是很高,很多的新兴门锁已经广泛的应用到人们的生活中,这类技术安全可靠性比较高,但是成本也比较高,为了解决这个问题,提出了基于STM32的手机开锁系统,该技术是以STM32开发板为核心,通过手机Wi-Fi,手机APP发送指令给智能锁,智能锁的主控制器控制电机的运转,从而达到开锁的效果。
1 引言
锁具的诞生要追溯到我国公元前5000年到公元前2000年,当时人类使用绳索把门牢牢捆住,然后反复牢牢打结,开启的时候就用兽骨制成的“觿”,把绳结一层层挑开。到了公元前3000年,我国先民创造了木锁,这可以说是我国历史上最古老的锁具。随着时代的进步和社会生产力的提高,人们又创造出铜锁,铁锁、玉锁等其他材质的锁。为了顺应市场需求,门锁也在不断更新。很多的新兴门锁已经广泛的应用到人们的生活中,例如:刷卡、指纹、人脸识别等技术开锁,这类技术安全可靠性比较高,人类也不再依赖于钥匙作为唯一的。
2 功能与结构
智能锁的各个组成部件主要包括门锁控制芯片、Wi-Fi通信模块、锁舌驱动模块(电机模块)以及供电电路等模
3 硬件电路
3.1 STM32单片机
本次设计使用的S T M 32最小系统开发板是以STM32F103C8T6作为MCU,它是一款基于ARM的32位MCU,具有Flash,USB,CAN,七个16位的定时器,两个ADC和九个通信接口,具有三种低功耗模式。我们选最小系统板的主要原因是它的价格相对于其他开发板而言比较便宜,一块最小系统
开发板的零售价差不多为17元左右。
图2 STM32F103C8T6芯片封装图
3.2 ESP8266模块
ATK-ESP8266是一款性能较高的串口-无线模块,是由正点原子团队推出的。ATK-ESP8266模块依靠串口(TTL电平)与单片机通信,它内部装有TCP/IP协议栈,可以实现串口与Wi-Fi之间的通信。
ATK-ESP8266模块的串口是支持TTL信号的,不能直接接入232信号,它能兼容3.3V和5V单片机系统。该模块可以支
持三种工作模式:STA模式、AP模式和STA+AP模式。
图3 Wi-Fi模块原理图
3.3 ULN2003电机模块
本次设计中我们使用的电机驱动模块是ULN2003步进电机驱动板,是一款高耐压、大电流复合晶体管阵列系列产品。它具有电流增益高,工作电压高、温度范围宽、带负载能力强等特点。
对于电机的选择,我们选择了五线四相5V步进电机,它耗电较小,差不多200mA左右。相对来说很适合作为这次的
实验模块使用。
4 智能锁软件程序设计
该设计中,我们将Wi-Fi模块作为热点,所以Wi-Fi模块应工作在AP模式,我们应该将指令设置为:AT+CWMODE=2;当串口助手发送该指令后,Wi-Fi模块会返回一个应答信号
常州信息职业技术学院电子工程学院 李 征 王
丹
块。如图1所示。门锁控制芯片为STM32单片机,能够对智能锁设备各模块进行控制。Wi-Fi通信模块为ESP8266模块。单片机通过控制ESP8266模块实现智能锁与手机APP的互动。Wi-Fi通信模块可将门锁信息以文字或者照片的方式传送到手机终端,也可接收手机发来的短信并传给门锁控制芯片。智能锁通过电源适配器供电,在遇到楼栋停电等突发情况时,
会立即启动备用电源供电,维持智能锁的正常工作。
图1 系统设计框图
系统的总体方案是由一个STM32F103单片机核心电路、手机APP模块、Wi-FiESP8266模块、电机模块、电源模块五个部分组成。电源模块采用两个USB转TTL模块分别向单片机和电机提供3.3V和5V的电源,手机连接Wi-Fi模块的热点,APP通过Wi-Fi模块的向STM32单片机发送指令,STM32单片机再把指令转给电机驱动,从而控制电机的运转,实现手机开锁的功能。
• 171
•
OK。设置成了多连接模式,需要开启TCP服务器, void MotorCW(void)//顺时针转动{ uchar i; unsigned int j; for(j=0;j<255;j++) { for(i=0; i<4; i++) { Motor_control(phasecw[i]);//电机相序控制函数 delay_ms(4);//转速调节 } }} void MotorCCW(void)//逆时针转动{ uchar i; unsigned int j; for(j=0;j<255;j++) { for(i=0; i<4; i++) { 5 电机测试 电机模块的测试是用电机的驱动程序测试电机的好坏。在keil5编译环境中在电机驱动程序中把引脚配置一下,然后编译程序,下载程序。我们用杜邦线把电机驱动板上的IN1、IN2、IN3、IN4四个引脚分别接到STM32最小系统板上的A2、A3、A5、A7四个引脚上,然后OUT1-OUT4连5V步进电机的插口,驱动板的负极用杜邦线接到第一块USB转TTL模块的GND,5V接到第一块USB转TTL模块的5V 上。STM32的3V3和GND分别接在第二块USB转TTL模块的3.3V和GND引脚上。在保证接线正确的情况下,如果电机能按照代码功能正常运作,那么电机就是好的。 参考:刘火良,杨森编著.STM32库开发实战指南:基于STM32F103(第2版)[M].机械工业出版社,2017;荣峰,基于网络的门禁系统的设计[J].天津工业大学学报,2008(1):56-59;袁月,曾春平,马琨,等.基于无线WI-FI的智能家居灯光控制系统设计[J].软件,2019,40(8):203-207+215;张晓诺,基于Android的智能家居环境监测系统APP设计与实现[J].软件,2015,36(2):77-79;陈谧,智能家居的物联网技术及其应用[J].现代建筑电气,2014(2):47-49,63;韩晓英,张方樱,朱静基于STM32单片机的智能家居控制系统设计与实现[J]硅谷,2013,6(12)14-15;孙红波,STM32与嵌入式技术[M].北京:电子工业出版社,2006;张绮文,谢建雄,谢劲心,STM32嵌入式常用模块[M]北京:电子工业出版社,2007。 注:本文受2017年江苏省高等职业院校高水平骨干专业建设项目(计算机应用技术专业)资助。 引言:在大型工业建筑或民用建筑中,大型空调机组越来越多,用电功率也越来越大,利用变频调速电源来对大型空调机组的调速节能具有较重要意义,能够使空调机组绝大部分时间内处于高效运行状态。而对于变频调速电源来讲,开关器件的开关频率的提高、开关损耗的降低以及调制具体方法决定其性能好坏。IGBT 驱动电路简单,驱动功率小且开关频率高,能够采用多种调制方式,因此采用IGBT 构成的多电平变频器(特别是三电平逆变器)得到了广泛应用。 1 二极管中点箝位式三电平逆变器 二极管中点箝位式三电平三相半桥式逆变电路结构如图1所示。为方便,只画出了单相桥臂(U 相)。图中有四个IGBT 与反并联二极管构成开关器件。以电容C 1和C 2间点位作为参考零电位,当开关器件VT 1、VT 2导通,VT 3、VT 4关断时(此开关状态定义为“1”),U 相输出相对于参考零电位的电压为+U d /2;当开关器件VT 2、VT 3导通,VT 1、VT 4关断时(此开关状态定义为“0”),U 相输出相对于参考零电位的电压为0;当开关器件VT 3、VT 4导通,VT 1、VT 2关断时(此开关状态定义为“-1”),U 相输出相对于参考零电位的电压为-U d /2。通过三种开关状态使U 相输出三种电平(+U d /2、0、-U d /2)。实际上,U 相电压在输出三种电平时,由于电容C 1、C 2充放电的缘故,其大小会发生波动,造成电容电压不平衡,这样不但会影响输出电压大小,而且还会引入低次谐 波,影响电路正常工作,应采取措施大 大降低电容电压的不平衡度。 图1 二极管箝位式三电平逆变器结构图 2 三电平SVPWM控制技术 三电平SVPWM 控制技术实质上是由两电平SVPWM 控制技术发展而来的,将三相可能出现的开关状态组合全部考虑在内,可得到27个电压向量(限于篇幅,不再赘述)。对于多电平SVPWM 控制其构成所需电压矢量的方法与由两电平构成所需电压向量的方法 三电平SVPWM 空调机组变频调速电源研制 江西省交通设计研究院有限责任公司 聂振宇
