智能窗帘控制器:语音识别、可根据光线强弱自动开合窗帘

您所在的位置:网站首页 电动开合窗帘需要几个电机组成 智能窗帘控制器:语音识别、可根据光线强弱自动开合窗帘

智能窗帘控制器:语音识别、可根据光线强弱自动开合窗帘

2024-01-12 13:54| 来源: 网络整理| 查看: 265

图1 系统硬件框图

2 系统硬件电路设计

2.1 语音识别模块

语音识别模块核心芯片采用LD3320芯片,是一种非特定人“语音识别”专用芯片。语音信号为模拟量信号,需嵌入在芯片内部A/D和D/A接口将语音模拟信号转换为数字信号,操作者无需提前经过语音训练,识别的关键语句如“开窗”指令以字符串的形式存入芯片中,识别的过程就是将操作者的语音与关键语句进行比较,若匹配,则执行相应控制功能。LD3320语音识别模块硬件电路如图2所示。

图2 语音识别模块电路

2.2 光控模块

利用光控模块,用户可以根据日常需求自行设定室内光照度,通过光敏电阻实时监测室外光照度,单片机控制窗帘开合实现室内恒照度控制。窗帘实现光照度自动控制,天亮窗帘自动打开,室外光照度超过3000lx自动关闭,天黑窗帘自动关闭。光敏电阻监测到的光照度数据为4~20mA电流模拟量信号,需经过A/D模数转换后输出数字量信号给单片机。

A/D转换器的功能是进行模数转换,把LD3320语音芯片接收到的模拟信号转换成数字信号输出至ST89C52。为确保A/D转换的精度和速度,A/D转换位数与整个智能窗帘控制系统测量控制的范围和精度有关。本系统中采用8位A/D转换器ADC0832芯片。整个光控模块硬件电路如图3所示。

图3 光控模块电路

2.3 步进电动机驱动模块

系统采用28BYJ-48型四相八拍步进电动机控制窗帘的开合,力矩较大、带负载能力强、控制精度高。单片机控制步进电动机驱动模块给电动机输入一系列脉冲信号,控制电动机连续转动,带动窗帘在轨道上移动。

步进电动机的转速、停止的位置取决于输入脉冲信号的频率和脉冲数,单片机控制发送一系列脉冲至步进电动机驱动模块,当步进驱动器接收到一个脉冲信号时,它就驱动步进电动机按设定的方向转动一个“步距角”0.62°,通过输出连续脉冲信号控制窗帘的连续移动。

步进电动机的工作峰值电流大范围为2.6~7A,若通过下拉电阻或三极管驱动产生的转矩小难以带动窗帘开合,通常需要专用驱动芯片驱动才能正常工作,本系统采用ULN2003专用驱动芯片驱动步进电动机。步进电动机驱动模块硬件电路如图4所示。

图4 步进电动机驱动模块电路

单片机原理及应用 ¥43.86 购买

2.4 LCD显示模块

LCD显示模块采用LCD1602芯片,该模块用来实时显示室外光照度数据及窗帘工作状态。由于STC89C52单片机P0口带负载能力较差,故需先接10K上拉电阻排,再连接芯片LCD1602的DB1—DB7口作为数据输入输出端,传输光照度数据及窗帘开合状态指令。单片机P2.7数据端口接显示屏芯片LCD1602的使能端EN,P2.5口接液晶显示的RS数据指令选通端,LCD1602的5脚R/W读写选通接单片机P2.6。并用电位器RV2用来调节LCD1602的亮度,LCD显示模块硬件电路如图5所示。

图5 LCD显示模块电路

3 系统软件设计

3.1 主控模块流程设计

软件程序采用C语言编写,为了便于修改和调试,采用模块化设计,编程语言的开发工具用Keil C编程软件。系统主程序的流程图如图6所示。

系统首先上电复位完成对单片机、传感器、各端口模块初始化和Y值及Y值优先级设置,其中Y=3的优先级小于Y=1或Y=2。然后单片机根据接收到的外界信息的类型,进行相应的数据分析和处理后,通过电动机控制器控制步进电动机完成对窗帘的控制。

图6 主程序流程图

若Y=2有开合窗帘语音信号输入,则子程序驱动LD3320非特定人“语音识别”专用芯片,执行语音识别子程序,等待控制窗帘开合的语的输入。当LD3320接收到“开关窗”语音信号时,先对语音信号进行分析提取语音特征值,并与芯片中预存的开关窗控制关键字符比较,若匹配,则驱动步进电动机控制窗帘的开合。

若Y=3需执行光控子程序,则光敏电阻实时监测室外光照强度是否大于3000lx,若条件符合,则步进电动机正向转动,控制窗帘开起,直至碰到限位开关停止转动。在条件要求不符合时,返回到子程序入口重新初始化。检测窗帘开合状态,在打开状态下,光敏电阻检测到室外光照强度小于500lx时,控制步进电动机反转实现窗帘闭合。

显示子程序,当LCD1602芯片的读写选通端RW为低电平时,执行写操作;当数据指令选通端RS端工作状态为高电平时,选择指令寄存器;使能端EN为下降沿信号,显示数据被送到ST89C52单片机P2.0-P2.7口,LCD执行数据指令,判断数据指令是否执行完毕,若完毕,则在液晶屏显示光照度数据及窗帘开合状态,子程序退出。否则,返回到数据指令选择寄存器继续循环重复执行之前步骤。

3.2 系统仿真

利用Proteus软件进行系统仿真,根据智能窗帘控制系统的原理图,把相应的元件在库编辑器中找出来,然后进行绘制。电路图画好后再选择KEIL中已经编译好的*.hex文件,点击运行按钮,仿真结果如图7所示。

图7 系统仿真图

结论

在整个系统设计过程中,光控模块实时检测室外光照度数据传送至单片机,STC89C52作为主控芯片通过步进电动机驱动模块控制步进电动机正反转从而实现窗帘的开合,并通过LCD液晶显示屏显示光照度和温度。在实现光照度自动控制基础上,同时又添加了语音控制和按键控制功能,使智能窗帘的控制更加完善,更加人性化。

手把手教你学51单片机——C语言版(配光盘) ¥44 购买 返回搜狐,查看更多



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3