基于stm32智能语音电梯消毒系统

这次来分享个最近做的项目,stm32智能语音电梯消毒系统

功能说明:在电梯,房间,客道区域内,检测到人,则执行相关动作!例如继电器开关灯,喷洒酒精等行为。手机app/微信小程序可以控制需要执行的动作

效果演示视频👇

智能消毒演示视频

硬件材料:

  1. SU-03T离线语音模块

  1. HC-SR501人体红外传感器

  1. OLED(IIC)屏幕

  1. 喷雾模块

  1. DHT11温湿度传感器

  1. 水位传感器

  1. esp-01s,WiFi模块

  1. stm32f103c8t6最小系统板

  1. 然后自己画一块电路板,下面附上原理图(一共2部分,其中包括充电电路,放电保护,升压电路 ,如果自己不需要锂电池供电,那么就不需要了,其他模块的排母)

软件准备:

  1. keil5

  1. 微信开发者工具(二选一)

  1. Android Studio(二选一)

  1. 串口助手(好调试信息)

注:我这里2种都会分享出来。


软件开发步骤:我会将每个模块都驱动一次,最后整合成在一起

1.HC-SR501人体红外传感器驱动

说明:我把传感器密封在盒子里面时,一直都是电平,当我打开时,是电平(检测到人),说明符合我们的预期,那么,这个模块就算驱动完成!这里的结果是这样的,当检测到人=1时,会延续3-5秒钟为0,然后又为1(前提是还能检测到人),这个根据你拧这个有关。

2.水位传感器模块

本设计使用的水位传感器,主要的原理是采用了三极管电流放大的经典特性,在水位高度到达一定的程度,三极管的基极和电源的正极形成回路时,三极管的基极和发射极的回路上就会形成电流,这个电路在回路中是有一定的值的,那么,三极管的集电极和发射极的区域内也会形成具有一定值的电流的放大倍数。所以,回路中的电流就会流过发射极的电阻从而形成特俗的电压,主控MCU就可以利用AD模数转换器来获取该点的电位,通过电压分压的计算方式,可以算出具体的电压值。

该传感器利用与该系统相邻的5条赤脚电缆启动。在每两条地线之间交叉插入一条感知线,5条地线和5条感知线。传感器连接在1兆欧的电极电阻上。将感知线拉到一滴水或水平面与感知线接地为止。理论上,该传感器将输出0-1024之间的模拟信号,但由于pcb的线幅增大,可以使用480到710之间。由于传感器的设计并没有完全浸泡在水中,所以请注意只将露出的pcb的线接触到水。传感器的输出电压为0-4.2v,因此,如果需要低/高标识,可以作为数字输入使用。传感器的实物图如下。

大白话:其实就是通过AD模数转换成电压值,再通过计算,显示水位而已,没啥难度的。下面是我的代码

在主函数直接调用,然后在OLED显示就行了

我们来看下效果,是不是很简单

3.温湿度传感器这里我就不重复说了,因为我之前有写过文章,不清楚的朋友可以→OLED显示温湿度

4.stm32通过ESP8266连接onenet

这部分内容,我也是写过文章的,不懂的可以看→👉stm32连接onenet👈

到这里,大家应该可以看出,我做的项目都是承上启下的,把之前学过的东西整合在一起成为一个项目。👋

5.消毒操作的实现

这里使用的是雾化片来代替喷雾,雾化片我是在网上买的,雾化片的摸鱼如下图(没有打广告哈,这个店铺不是我的👀)买最便宜的就行了,我们到时候要拆下来,用它的正负极就行了,因为只有这样,才能实现IO口来控制设备,不然没办法控制,当然,加继电器就行了,但是太麻烦了,同时也不美观,毕竟我们是要画PCB板子的。😁

实物图

在这里说明一下,这个雾化片的工作电压,电流要高一点才能驱动,如果直接接3.3V的电压,是没办法工作的,所以电路图这里就是利用了3.3v升压到5v,从而通过IO口来控制5v的开关,因为喷雾模块电路需要5V供电,所以只有用一个三极管放大电流来作为一个开关

这样是最妥当的。然后,后面就类似点灯一样的操作,给高电平,就喷雾,低电平就停止喷雾。

代码就这样写:因为我用的是PB12嘛

高电平=开启喷雾

低电平=关闭喷雾

这里其实就是和点灯一模一样。好了,我们可以手动的开启/关闭喷雾,后面就是根据标志位来让他自动的开启和关闭了。

上面已经驱动好红外人体感应了,只需要在主函数这样写,注释写的很详细啦😊

6.OLED显示

OLED用于显示传感器的数值和一些信息

  1. 显示设备正常启动,下面是实物效果图。有提示文字

2.联网成功后显示界面的效果图

7.SU-03T离线语音模块驱动

这个是一个模块,我们只需要在模块的官网配置好信息参数就行,下面会给出步骤,现在这里说下总体思路:在官网配置好后,语音模块会根据你的命令,从而给一个引脚高低电平(怎么知道是高还是低呢?这个是在官网配置的,后面会说,不要着急),stm32在主循里面,一直判断某个引脚是否为高低电平,从而执行相应的功能。

7.1SU-03T 官网配置

首先打开官网👉 智能公元官网👈

右上角自行注册登录。

根据我的步骤来

这些自己定义就好

然后就发布版本

7.2将固件烧录到语音模块里面

我最下面的百度网盘会提供固件烧录软件,大家不要慌张!先看看它长什么样

最后就等待烧录成功就好啦。

8.STM32判断语音模块引脚的高低电平

主函数的代码这样写

只需要在while(1)里面一直判断和语音模块连接引脚的电平,就可以执行自己要自行的功能啦,到此为止,就实现了语音控制的功能啦,如果你做的是别的项目,可以依此类推,语音控制舵机,电机之类的。

9.微信小程序获取数据和下发命令

这部分我也是有写过文章的,这里不重复撰写传送门👉微信小程序获取数据和下发控制命令👈

所以我的铁粉应该都知道,我做的项目都是通过一个个小技术整合成一个完整项目的。

效果图如下

追加:微信小程序的代码还是贴一贴吧,怕大家看不懂,看不懂的都可以私信我(前提是一键三连哈😁

10.整体框图和设计流程

整体框图

软件设计流程图

总结:总的原理图,我已经在最上面发出来了,如果不会接线的可以去看看。

这是最近做的一个毕业设计,分享一下给大家,如果对大家有帮忙那么最好不过,共勉!😁

  • 10
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 14
    评论
### 回答1: STM32雾化片自动扫频原理是通过使用STM32微控制器来控制雾化片的工作方式。雾化片是一种用于产生雾化液体的装置,它可以将液体快速转化为细小的颗粒,从而形成雾气。自动扫频是一种控制方法,可以使雾化片在不同频率上工作,从而产生不同粒度和浓度的雾化。 STM32微控制器通过控制电路和软件实现自动扫频功能。它可以根据不同的要求和设定参数,将控制信号发送到雾化片的驱动电路。这些控制信号可以包括频率和占空比等参数。 在雾化片工作时,STM32微控制器会根据预先设定的扫频范围和步进值来改变驱动信号的频率。这种扫频的方式可以使雾化片在不同的频率上工作,从而产生不同粒度的雾化。通过改变驱动信号的占空比,可以调节雾化片产生的雾化液体的浓度。 在实现自动扫频的过程中,STM32微控制器还可以配备传感器来监测雾化片产生的雾化效果。这些传感器可以测量雾化液体的粒度和浓度,并将信息反馈给控制器。根据传感器的反馈信息,控制器可以调整驱动信号的频率和占空比,以实现雾化效果的优化和稳定。 综上所述,STM32微控制器通过控制电路和软件实现雾化片的自动扫频功能。它可以根据预设的参数改变驱动信号的频率和占空比,从而实现不同粒度和浓度的雾化效果。传感器的反馈信息可以帮助控制器优化和稳定雾化效果。 ### 回答2: STM32 雾化片自动扫频原理是指通过STM32微控制器控制雾化片的工作频率,在一定范围内自动扫描频率,实现雾化片的自动调节和优化。 在工作过程中,STM32微控制器通过PWM(脉宽调制)控制电路来控制雾化片的工作频率。通过改变PWM信号的占空比,即高电平时间与总周期时间的比例,来控制雾化片的工作频率。当PWM信号的占空比增大时,雾化片的工作频率也随之增大;当PWM信号的占空比减小时,雾化片的工作频率也随之减小。 而自动扫频原理是通过程序控制STM32微控制器的PWM信号,使其在一定范围内进行自动调节。具体操作是通过设定一个初始频率和一个结束频率,并设定一个步进值,然后不断地增加或减小PWM信号的占空比,使得雾化片的工作频率在设定的范围内逐渐改变。当雾化片工作频率达到设定的结束频率时,会重新回到初始频率,并继续进行下一轮的自动扫频。 通过这种自动扫频的原理,可以使雾化片在一定范围内自动调节频率,以优化雾化效果和雾化速度。例如,在雾化纳米颗粒的过程中,对不同颗粒大小需要不同的雾化频率,通过自动扫频可以精确地调节雾化片的工作频率,以获得更好的雾化效果。 总结来说,STM32雾化片的自动扫频原理是通过控制PWM信号的占空比,在设定的范围内不断调节雾化片的工作频率,以实现雾化效果的优化。 ### 回答3: STM32是一种嵌入式微控制器,通过其带有的特定功能和算法,可以实现雾化片的自动扫频原理。 雾化片是一种常用于雾化器中的装置,用于将液体转化为细小的液滴。雾化器通常用于医疗、农业和工业领域,如喷雾器和雾化疗法等。 雾化片的自动扫频原理基于STM32微控制器的能力来控制电机的运动。首先,STM32通过脉宽调制(PWM)输出信号来控制电机的速度和方向。这可以让电机以可控的方式旋转。 其次,STM32还通过内置的定时器来生成一个固定频率和变化占空比的信号。这个信号被用作PWM信号的参考。通过改变定时器的参数和配置,我们可以实现自动扫频功能。 在自动扫频的过程中,STM32会逐步改变PWM信号的频率和占空比,从而改变电机的转速和转向。这样可以实现雾化片的自动扫频,即雾化片的振动频率会随着时间的推移不断变化。 通过这种自动扫频的方式,雾化片可以获得更好的雾化效果。因为雾化液滴的大小和分布对不同应用具有重要影响,通过自动扫频可以改变液滴的尺寸和分布,以适应不同的需求。 总的来说,STM32通过PWM调整电机的运动,利用内部定时器生成参考信号,实现雾化片的自动扫频原理,以达到更好的雾化效果。这是一种高效、灵活且可靠的解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

挨踢玩家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值