基于STM32 的智能婴儿床系统设计

2023-11-20 11:00侯丽红
科学技术创新 2023年25期
关键词:婴儿床按键婴儿

侯丽红*

(郑州工业应用技术学院,河南 郑州)

引言

在当代社会,许多年轻父母由于工作繁忙,常常无法给予婴儿足够的关注和照顾。因此,他们需要一种能够自动监测婴儿状态并采取相应措施的智能婴儿床。而基于STM32 的智能婴儿床系统正是这样一款创新产品,它能够实时检测婴儿的哭声、尿液等信息,并根据这些信息自动执行相应的操作,例如播放音乐、摇动床铺等,从而帮助父母减轻压力,更好地照顾他们的婴儿[1]。

1 系统整体设计方案

本系统的核心部分是STM32F103C8T6 单片机,它与声音采集电路、尿液检测电路、按键电路、ULN2003 驱动电路、LED 指示灯控制电路、LCD1602液晶屏显示电路以及WT588D 语音播报电路相互配合,共同实现了整个系统的功能。整个系统通过STM32F103C8T6 单片机进行控制和管理,它可以接收来自传感器的数据,并根据预设的规则和算法做出相应的响应[2]。本系统具有两种工作模式,即自动模式和手动模式。在自动模式下,如果声音采集电路采集到婴儿哭闹的信号,可以通过ULN2003 驱动步进电机进行左右旋转,有效地模拟摇床的动作[3]。同时,系统还会播放适合婴儿的音乐,帮助安抚婴儿。音乐播放结束后,系统会自动停止运行。如果婴儿再次开始哭闹,系统会重新启动摇床和播放音乐的过程。在手动模式下,家长可以根据需要通过按键来开启或关闭步进电机。系统整体设计框图如图1 所示。

图1 系统整体设计框图

2 系统硬件设计

2.1 声音采集电路设计

声音采集电路主要由声音传感器和LM393 双电压比较器构成,用于检测婴儿是否在哭闹。声音传感器能够将婴儿的哭声转换成电信号,并将其输入到LM393 中。LM393 会将输入信号与预设的参考电压进行比较。当输入信号高于参考电压时,LM393 会输出高电平信号;反之,输出低电平信号。声音采集电路原理如图2 所示。

图2 声音采集电路原理

2.2 模拟摇床电路设计

本系统以步进电机的左右旋转来模拟摇床动作[4],选用的步进电机型号为28BYJ-48 型,它是一种四相八拍电机,工作电压为5 V。然而,由于STM32 单片机的输出口电流较小,无法直接驱动步进电机工作,因此,需要连接一个ULN2003 驱动芯片来实现电流放大的功能。ULN2003 是一种常见的步进电机驱动芯片,可用于驱动4 相、5 线和6 线步进电机。模拟摇床电路原理如图3 所示。

图3 模拟摇床电路原理

2.3 尿液检测电路设计

尿液检测电路主要是由水位传感器和LM393 双电压比较器构成,用来检测婴儿是否尿床。尿液检测电路原理如图4 所示,首先,水位传感器检测婴儿是否尿床;然后,将采集到的信号通过输出引脚DO 传送给LM393 的输入引脚3 进行处理;最后,LM393 的输出引脚OUT 将信号传送给STM32 单片机的引脚PB12 进行处理。当尿液浸入水位传感器时,水位上升,使得DO 值增大,而LM393 的引脚3 接收到DO值的变化后,输出一个电平信号,这个电平信号可以被后续电路所读取并进行处理。

图4 尿液检测电路原理

2.4 独立按键电路设计

本系统中用到了3 个独立按键,分别为K1、K2、K3。按键K1 用于模式的切换;按键K2 用于手动模式下开启步进电机左右旋转;按键K3 用于手动模式下关闭步进电机左右旋转。独立按键电路原理如图5 所示。

图5 独立按键电路原理

2.5 显示模块电路设计

本系统中显示模块选用的是LCD1602 液晶显示屏,它可以同时显示32 个字符[5]。它不仅可以显示当前系统是自动模式还是手动模式,而且可以显示摇床是开启状态还是关闭状态,方便用户进行操作和设置。显示模块电路原理如图6 所示。

图6 显示模块电路原理

2.6 语音播报电路设计

语音播报电路主要由WT588D 语音芯片和扬声器构成。WT588D 语音芯片是一款高品质语音控制芯片,通过外挂存储器将编译好的语音工程烧写到存储器中,即可控制语音的播放。扬声器则是用于将电信号转换为声音的设备,在智能婴儿床系统设计中,扬声器的质量对整体声音效果至关重要。语音播报电路原理如图7 所示,图中STM32 单片机通过引脚PB9与WT588D 语音芯片连接建立通信,向WT588D 语音芯片发送控制指令和语音数据,而WT588D 语音芯片接收到控制命令和语音数据后,会进行解码并播放。如果水位传感器检测到婴儿尿床,将会进行语音播报。

图7 语音播报电路原理

2.7 LED 指示灯控制电路设计

如果水位传感器检测到婴儿尿床,LED 指示灯亮,发出红色的光,提醒家长及时更换尿不湿,保证婴儿的健康和舒适度。LED 指示灯控制电路原理如图8所示,只需STM32 单片机发送高电平信号便可触发LED 指示灯亮。

图8 LED 指示灯控制电路原理

3 系统软件设计

程序开始运行时,首先对系统进行初始化,初始化的内容包括延时函数、按键、LED 指示灯、语音播报模块、电机等GPIO 的初始化。同时,初始化LCD1602液晶显示屏,显示当前状态和模式。在主程序的主循环中,通过keyscan()函数检测按键输入,实现自动模式和手动模式的切换。当处于自动模式时,通过变量Voice 检测哭声是否持续,如果持续时间超过20 ms,则设置DJ_TIME 为60 ms, 表示电机开启时间为1 min,并将openFlag 设置为1,表示电机开启,同时播放歌曲。当处于手动模式时,可以通过KEY2 和KEY3按键控制电机的开启和关闭。TIM2 定时器每隔1 ms产生一次中断,用于检测DJ_TIME 是否减少到0。当DJ_TIME 减少到0 时,表示电机开启时间已到,关闭电机。同时,更新LCD1602 显示屏上的状态信息。通过检测湿度值(变量ShiDu),当湿度超过一定阈值时,点亮LED 灯并播报提示音。当openFlag 为1 时,表示电机开启,通过motoRotate()函数控制电机的旋转。当openFlag 为0 时,表示电机关闭,调用MotorStop()函数停止电机。

4 系统测试

本研究在智能婴儿床系统硬件和软件完成的基础上对智能婴儿床系统进行了功能测试,测试过程为:

(1) 给系统上电,按下自锁开关SWITCH 进行复位,此时系统处于自动模式,步进电机处于关闭状态。当系统处于自动模式时,测试人员对着系统假装哭闹,如果声音传感器检测到哭闹声,则会触发步进电机控制模块,使步进电机进行左右旋转,模拟摇床。同时,启动语音播报模块播放音乐“小星星”。当音乐播放结束后,停止步进电机和音乐播放,等待下一次声音检测。如果再次检测到哭闹声,重复上述过程。

(2) 待音乐播放结束,按下按键K1,此时系统处于手动模式,步进电机处于关闭状态。当系统处于手动模式时,按下按键K2 可以启动步进电机左右旋转;按下按键K3 可以关闭步进电机左右旋转。家长可以根据实际情况需要调整系统的工作模式。

(3) 系统无论是处于自动模式还是手动模式,都可以检测婴儿是否尿床。当水位传感器检测到婴儿尿床时,系统中的LED 指示灯亮,并启动语音播报模块,提醒家长“请注意:宝贝需要更换尿不湿”。

测试结果表明,该系统具有较高的稳定性和可靠性,可以满足年轻父母的需求。

结束语

本研究设计的智能婴儿床系统通过模拟摇床的功能,可以帮助婴儿更快地入睡,提高睡眠质量。同时,在自动模式下播放音乐,有助于婴儿放松心情,更容易进入深度睡眠。除此之外,该系统还具有智能化管理和可扩展性的特点,有助于提高婴儿和家长的生活质量和便利性。因此,本设计的研究可以为未来智能家居的发展提供有益的参考价值和借鉴。

猜你喜欢
婴儿床按键婴儿
基于AHP-TRIZ的智能婴儿床专利规避创新设计
基于有限状态机的按键检测程序设计
An old red sofa
Surrounded by brothers
便携婴儿床
纵向发展 应对“婴儿潮”
一种多方向导光按键结构设计
婴儿房
婴儿为何会发笑?
婴儿的救赎