基于STM32单片机的智能婴儿床设计*
2021-10-11潘铭志陈嘉欣刘慧玲
潘铭志,陈嘉欣,刘慧玲
(晋中学院 机械系,山西 晋中 030619)
0 引言
近几年来,智能家居发展迅速,不论冰箱、空调还是门锁、窗帘,全都朝着智能化方向发展。其目的都是为了节省人力,而对于照顾婴儿这项工作,智能化产品在节省时间、减少精力耗费方面起到了关键作用。
本文主要介绍一种智能化的婴儿床,该产品以STM32单片机作为核心控制器,运用网络通信技术、机械制造技术、嵌入式开发技术,结合声音传感器、温湿度传感器以及步进电机,将传统婴儿床进行综合升级,实现了互连互通、以人为本的全新设计,并且配备安卓软件,保障育儿生活更加安全省心、智能便利。通过手机端可以控制婴儿床摇晃、调整婴儿床的姿势、检测婴儿是否小便,以及可以开启无需实时照看的睡眠模式。
1 总体设计
该智能婴儿床由机械部分和电路部分组成,主要以STM32F1单片机作为核心控制器,连接温湿度传感器和声音传感器,将数据采集后进行处理,并通过Wi-Fi模块发送至手机端,可检测婴儿小便、具有睡眠模式、能及时提醒监护人并反馈婴儿的一些实时状况。该婴儿床整体结构简单,采用步进电机、减速齿轮箱、传动轴实现摇篮功能,并且在已有婴儿床的基础上降低了床体重心和婴儿床的摆幅、增加了护栏高度、将床板边缘或者床板上空气流通口的边缘进行了光滑处理,在可摇摆、可通风的基础上增加了美观、安全系数高等优点。智能婴儿床的总体框图如图1所示。
图1 智能婴儿床的总体框图
2 系统设计
该系统分为电源模块、摇篮模块、调整座椅模块、检测模块、睡眠模块和小风扇等几个部分。
2.1 电源模块
电源模块采用LM2596可调电源模块,外接12 V锂电池。该模块可将电源转换为12 V以内的任意电压,STM32F1单片机连接5 V电源,温湿度传感器DHT11、声音传感器LM386连接5 V电源,步进电机驱动器TB6600连接12 V电源。该模块装有4个自恢复保险丝,可对过热、过流进行保护,且具有自动恢复的功能。此外还带有电源指示灯,若灯灭,说明负载有短路,可提醒及时拔掉电源。
2.2 摇篮模块
42步进电机与齿轮组中的主动轮连接进行动力传动,从动轮与传动轴连接,由传动轴连接床体。首先在单片机中设置好步进电机步数后,收到指令,步进电机开始转动,转子带动齿轮组运动,齿轮组带动传动轴运动,最后由传动轴带动床体进行单方向、小角度、低速度的摇摆。婴儿床两侧的传动轴与前、后两端床体中的轴承连接,增加了传动的稳定性。齿轮组为减速齿轮,传动比为0.8,过快的速度摇摆影响婴儿的身体健康,会造成不适感。步进电机驱动器采用TB6600,该驱动器可用拨码开关选择8挡电流,具有过热、过流短路保护功能,能够小噪声、低震动、高速地驱动电机。
在单片机中已设置好多种摇篮模式,根据调查,将单侧摇摆角度设置为13°,摇摆周期为3 s,是最适合2周岁以下的婴儿,不会对婴儿造成危害。监护人可以通过手机端并根据婴儿年龄的不同选择合适的模式。此处采用两个步进电机,分别与驱动器1和驱动器2连接,摇篮模块电路如图2所示。
图2 摇篮模块电路
2.3 调整座椅模块
该婴儿床的床位分为三部分,中间部分固定于床架,前、后两部分分别与一个转轴连接。使用联轴器将步进电机转子和转轴连接,转轴与床板连接,在另一侧转轴与轴承连接。利用单片机设置好步进电机步数,收到指令后,步进电机提供动力带动转轴运动,使床板开始旋转,此时可以通过手机端将床板固定在任意倾斜状态,由此完成从睡姿到坐姿的转换,同理,也可在休息时将床板恢复到水平状态。
此处采用两个步进电机,分别与驱动器3和驱动器4连接。调整座椅模块电路如图3所示。
图3 调整座椅模块电路
2.4 检测模块
将温湿度传感器DHT11与单片机连接,实时监测婴儿是否尿床,并进行判断。将温湿度传感器置于床板上,提前对其设置适当阈值,当婴儿尿床时,温度湿度超出传感器阈值,传感器会反馈到单片机,从而提醒监护人及时处理。
该数字温湿度传感器功耗极低,信号传输距离可达20 m以上,具有体积小、响应速度快、控制简单等特点。与单片机连接后,一直读取外界温湿度数据,若超过阈值,发生中断,将提示发送至手机端。温湿度传感器DHT11电路原理图如图4所示。
图4 DHT11电路原理图
2.5 睡眠模块
监护人可在婴儿入睡后开启睡眠模式,声音传感器LM386将监测婴儿睡醒后是否哭泣或拍打床体。声音传感器放置于床头,提前对其设置适当阈值,当婴幼儿睡醒后,若发出的声音超过传感器阈值,传感器会反馈到单片机,从而将提醒发送至手机端,防止婴儿在没有人监管的情况下发生危险。同时,监护人可提前设置好哭泣后是否自动开启摇篮模式,若检测到哭声,提醒监护人的同时也会开始摇晃婴儿床。
该声音传感器功耗低、谐波失真小,可检测的频段为50 Hz~20 kHz。婴儿的哭声可达到600 Hz~1 200 Hz左右,而环境中的噪声频率小于200 Hz,因此需在传感器前连接一个低频滤波器,防止环境噪声干扰声音传感器的正常工作,阻断400 Hz以下的声音。LM386的DATA接单片机的PB6引脚,该引脚为TIM4_CH1,利用中断对外界声音进行捕获,若产生一次上升沿,即捕获了一次外界高于400 Hz的声音。LM386的电路原理图如图5所示。
图5 LM386电路原理图
2.6 小风扇
使用电机马达带动两个小风扇,内置于婴儿床护栏的一侧,解决夏季炎热的问题,提升婴儿的舒适感,并且安装了风扇保护罩,避免对婴儿造成危险。电机使用L9110驱动器,该驱动器为两通道推挽式功率放大器件,TTL/CMOS输出电平兼容,可直接连CPU,并且利用PWM脉冲调制对电机进行调速。可通过手机端对转速进行设置,控制风力的强弱,满足不同年龄段婴儿的需要。小风扇模块电路如图6所示。
图6 小风扇模块电路
2.7 Wi-Fi模块
Wi-Fi模块采用ESP8266联网模块,该模块所发送的信号覆盖范围可达30 m。首先使用手机端发送指令给ESP8266,然后再将数据发送给单片机,单片机产生中断,并对比指令内容,执行相应操作,或发送数据给手机端。ESP8266电路原理图如图7所示。
图7 ESP8266电路原理图
3 软件设计
bool ESP8266_Link_Server(ENUM_NetPro_TypeDef enumE,char * ip,char * ComNum,ENUM_ID_NO_TypeDef id)
{
char cStr [100] ={ 0 },cCmd [120];
switch (enumE )
{
case enumTCP:
sprintf (cStr,"”%s”,”%s”,%s","TCP",ip,ComNum );
break;
case enumUDP:
sprintf (cStr,"”%s”,”%s”,%s","UDP",ip,ComNum );
break;
default:
break;
}
if (id <5 )
sprintf (cCmd,"AT+CIPSTART=%d,%s",id,cStr);
else
sprintf (cCmd,"AT+CIPSTART=%s",cStr );
return ESP8266_Send_AT_Cmd (cCmd,"OK","ALREAY CONNECT",4000 );
}
该模块最高传输速率可达72.2 Mb/s,能够满足手机端的传输要求。手机端为用户提供了4个模块的功能,界面如图8所示。
图8 手机端界面
指令中控制位不同,代表着不同的指令。控制位对应的功能如表1所示。
表1 控制位对应的功能
4 结语
本文设计了一款多功能婴儿床,在满足婴儿基本生活需求的同时,更多地减轻了监护人照顾婴儿时的工作量。该设计结构合理,获取外界信息能力强,监护人操作简单,符合未来婴儿床的发展趋势。