基于STM32智能家居控制系统软件设计及实现

这篇具有很好参考价值的文章主要介绍了基于STM32智能家居控制系统软件设计及实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.1 系统流程图

智能家居控制系统的软件设计主要使用Keil uVision5进行STM32主烧录程序的编写,主程序完成的功能主要为接收并判断语音识别模块传过来的信息,然后根据满足条件的不同进行对应的操作。例如,当语音模块传过来的信息为“打开电视”时,STM32单片将使给8550一个低电平,这样继电器就打开了,继电器控制的电视开关也打开了,下图为详细的程序流程图。

stm32流程图,stm32,单片机,智能家居

 文章来源地址https://www.toymoban.com/news/detail-787243.html

1.2 步进电机程序设计

stm32流程图,stm32,单片机,智能家居

 

如图步进电机连接电路图,由于STM32接口不足以直接带动电机,所以通过ULN2003放大之后在连接到相对应的接口。既然知道了步进电机的原理,那么接下来就是如何让它动起来了。通过查询步进电机的芯片手册,找到该步进电机驱动的驱动方式,如下图。

stm32流程图,stm32,单片机,智能家居

1.3 单片机定时器程序

对于步进电机来讲,当外部脉冲频率变大时,其运行速度将成比例上升。这里的控制原理是根据外部中断的数量将其值放入存储区域。定时器通过不同的值,然后可以改变脉冲的间隔时间,从而有效地控制脉冲占空比,然后进而改变电机的转速[6]。

 1.4语音识别

 语音识别程序的编写是整个控制系统中最重要也是最困难的部分。语音识别的操作流程为:语音识别用初始化,之后将其写入识别列表,之后进行识别。此外,应该准备中断响应函数,之后将中断允许位开启。由于器件较少,所以连接方法使用最简单的SPI总线进行连接。SPI的效率非常出众,具有较高的同步性,并且在芯片的管脚上只占用四根线,如此不但减少了STM32引脚使用量,并且也能够使PCB布局更为合理,正是出于这种简单方便使用的特性,现如今越来越多的芯片集成了这种SPI通信协议[3]。首先需要对STM32的SPI接口进行定义及初始化。

stm32流程图,stm32,单片机,智能家居

 定义完之后就需要在程序编写对应的功能,当STM32收到来自LD3320的一条消息,进行判断,如果为关键词列表的某一条信息,那么就执行对应的操作。如果不是,那就什么都不做继续等待,直到等到处于关键词列表的消息来,在进行对应的操作。

stm32流程图,stm32,单片机,智能家居

读取 BA 寄存器的值,至此,一次识别ASR识别流程结束,读取ASR识别结果即可进行对应的判断及操作[10]。

现在市面上智能家居控制系统普遍采用智能移动终端设备进行控制家电的方法,手机上的应用程序起到的作用仅仅是发送一条信息,通过网络传输到云服务器上,其余的工作交给云服务器进行计算,然后将返回的值通过网络中继转发传送给家中正在使用的家电设备。至此,一次控制指令完成了。对于智能家居控制系统的发展,以后会各种控制方式相结合起来进行控制,演化到感应式控制(即可以对用户的具体状态进行准确的感知,并对设备展开科学的调节,从而实现无感化),之后实现系统自学习,提升系统的主动性是智能家居发展的主要方向,在当前来讲,诸多厂商通过多种方式对其进行具体实现,例如带着手环接近电视,电视会对个体的位置进行感应,如果用户与电视的距离太近,电视会减少屏幕亮度,从而对用户的视力进行良好的保护,在智能家居主动性提升之后,其智能的特点才会有所凸显。 

 

 

到了这里,关于基于STM32智能家居控制系统软件设计及实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包