您好,欢迎来到二三娱乐。
搜索
您的当前位置:首页基于stm32的智能家居设计原理(免费版)

基于stm32的智能家居设计原理(免费版)

来源:二三娱乐


设计了以STM32 单片机为核心的智能家居控制系统。该系统以语音识别技术和GSM 通信技术为基础,完成控制台、手持设备及门禁密码锁之间的通信, 实现对室内家居电器的远程控制。实验结果表明,该系统运行稳定,具有广泛的应用前景.

智能家居( 又称智能住宅) 是以住宅为平台, 兼备建筑、网络通信、信息家电、设备自动化,集系统、结构、服务、管理为一体的高效、舒适、安全、便利、环保的居住环境,是融合了自动化控制系统、计算机网络系统和网络通信技术于一体的家居控制系统。近年来,随着人们生活水平的提高以及计算机技术、通信技术和网络技术的发展, 智能家居逐渐成为未来家居生活的发展方向.因此在实现智能控制的同时,研制一个成本低、实用性强的智能家居系统便显得非常有必要。

本文以STM32 单片机为核心设计了一套智能家居控制系统。该系统以语音识别、GSM 通信等技术为基础,通过无线通信、串口通信对系统各部分进行串联,用户可通过门禁密码锁验证身份后进入智能家居系统, 利用总控制台设定室内家居的状态,亦可借助触屏手持设

备、GSM 手机等对室内家居进行手动或语音控制.

1 智能家居系统硬件平台

建立智能家居控制系统, 硬件是关键和基础,它对整个系统的稳定性、控制和反馈的准确性、节能性都有直接影响.本智能家居系统选用了以下硬件设备:

(1) STM32F103VET6 微处理器及STC12—C5A60S2 微处理器

系统中手持设备的微处理器选用STM32F103VET6 ,总控制台及门禁密码锁部分选用STC12C5A60S2。

STM32F103VET6 基于ARM Cortex M3 32 bit 的RISC内核, 工作频率最高可达72 MHz, 内置高速存储器(64 KB的闪存和20 KB 的SRAM), 丰富的增强I/O 端口和连接2 条APB 总线的外设。

STC12C5A60S2 是高速、低功耗、超强抗干扰的新一代8051 单片机, 指令代码完全兼容传统8051 .内部集成MAX810 专用复位电路、2 路PWM、8 路高速10 位A/D转换。

(2) 语音识别芯片LD3320

LD3320 芯片是一款语音识别专用芯片。该芯片集成了语音识别处理器和一些外部电路, 包括A/D、D/A转换器、麦克风接口、声音输出接口等。可以实现语音识别、声控及人机对话功能,并且可以任意动态编辑、识别关键词语列表。

(3) GSM 模块TC35

TC35 是一款双频900 MHz 、1 800 MHz 高度集成的GSM 模块, 具有性能稳定, 功耗低及易于集成的特点.

(4) 无线模块nRF24L01

nRF24L01 是一款新型单片射频收发器件, 工作于2。4 GHz~2.5 GHz ISM 频段之间。内置频率合成器、功率放大器、晶体振荡器及调制器等功能模块, 并融合了增强型

ShockBurst 技术,其中输出功率和通信频道可通过

程序进行配置。

(5) 3.2 英寸TFT 真彩触摸屏显示模块

该模块功耗低, 支持8 bit 、16 bit 总线接口, 模拟I/O控制, 彩屏模块上配置ADS7843 触摸控制器, 支持一个SD 卡(SPI 方式) , 支持一个SPI 的DATA Flash, 构成人机交互图形界面。

2 智能家居系统设计及实现

本智能家居系统主要包括手持设备、总控制台、门禁密码锁3 个部分。总体结构如图1 所示。

该系统通过微处理器完成整体的控制功能, 利用无线通信及串口通信对系统各部分进行串联。通过门禁密码锁部分完成身份认证功能,接收处理短信指令, 实现户外控制; 利用手持设备实现在室内任意地点的实时控制; 通过总控制台接收指令, 最终完成各项控制操作。

本智能家居系统的操作方式如下。

(1) 身份验证

门禁密码锁通过串口完成与控制台的通信, 设定密码存入STC12C5A60S2 单片机EEPROM,TFT 触摸屏显示人机界面。单片机获取输入信息, 进行比对处理后将结果传至控制台。

(2) 语音控制

语音信号通过语音设备输入,STM32F103VET6 单片机通过SPI 总线接收。单片机处理后通过SPI 传输指令至nRF24L01 无线模块。无线模块发送指令至总控制台,总控制台接收处理信息, 完成相应的控制步骤。

(3 )TFT 触摸屏控制

触摸屏操作产生电平信号, 经过转换后通过串行总线传输至STM32F103VET6 单片机接受处理。

(4) 短信控制

GSM 模块接收短信, 经STC12C5A60S2 单片机读取后, 通过串口传输发送指令至总控制台等候处理。

(5 ) 总控制台操作控制

TFT 触摸屏显示人机界面。STC12C5A60S2 单片机获取操作信息并作出相应处理。

3 智能家居系统软件设计

整个智能家居系统以STM32 微处理器为控制核心,使用C 语言编写。智能家居系统的软件可分为手持设备、总控制台以及门禁密码锁3 个部分, 主要由底层驱动程序、系统主程序、显示子程序、无线通信子程序、语音识别子程序及GSM 子程序等部分组成。手持设备的软件控制流程如图2 所示。总控制台的软件控制流程如图3 所示.门禁密码锁的人机界面软件控制流程如图4所示.

3.1 语言模块软件设计

语音识别是本系统的重要功能之一。语音识别程序的设计, 参考了LD332X 开发手册, 采用中断方式工作, 其操作顺序如下:

(1 ) 初始化

在初始化程序里, 主要完成软复位、模式设定、时钟频率设定、FIFO 设定等程序设置.

(2 ) 建立识别列表

识别列表在LD3320 中建立, 规则是每个识别条目为标准普通话的汉语拼音( 小写), 每两个字(汉语拼音)之间用一个空格间隔。每个识别条目对应一个特定的编号(1 个字节) , 不同的识别条目的编号可以相同, 且不用连续,但数值要小于256 (00H~FFH) .LD3320 最多支持50 个识别条目。

(3 ) 开始识别

设置相关的寄存器, 开始语音识别。在LD3320 芯片正式开始识别之前设置当前状态( 例如:LD_ASR_RUNING状态或者LD_ASR_FOUNDOK 状态)。ADC 通道为麦克风输入通道,ADC 增益即麦克风音量,可设定值00H~7FH.本系统采用40H~6FH 的设定值。设定值过大容易造成识别启动过于敏感, 产生误识别;设定值过小则需要近距离说话才能启动识别功能。

(4) 响应中断

麦克风采集到声音后, 将产生一个中断信号。中断程序根据寄存器的值分析结果, 通过读取BA 寄存器的值获取候选答案个数; 读取C5 寄存器里的值, 获取最正确答案的对应编码。

3.2 无线模块软件设计

nRF24L01 无线传输程序的设计采用增强型的ShockBurstTM 模式下工作.典型的双向链接为:发送方要求终端设备在接收到数据后有应答信号, 以便于发送方检测有无数据丢失.一旦数据丢失, 则通过重新发送功能恢复丢失的数据。

发射数据: 设置nRF24L01 为发射模式; 将地址TX_ADDR 和数据TX_PID 按照时序由SPI 口写入

nRF24L01 缓存区,TX_PLD 在CSN 为低时连续写入,TX_ADDR 在发射时写入一次;CE 置为高电平并保持10μs ,延迟130 μs 后发射数据; 开启自动应答,nRF24L01在发射数据后立即进入接收模式, 接收应答信号。如果收到应答, 则认为此次通信成功,TX_DS 置高, 清除TX_PID; 若未收到应答, 则自动重新发射该数据。

接收数据: 设置nRF24L01 为接收模式, 延迟130 μs后进入接收状态等待数据。当检测到有效数据时, 存储数据包,同时进入发射状态回传应答信号.

3。3 GSM 模块软件设计

TC35 模块采用AT 贺氏指令。单片机可以通过正确的AT 指令对TC35 模块进行初始化和短消息的接收发送。对短消息的控制有Block 模式、PDU 模式和Text 模式。使用Block 模式需要手机生产厂家提供驱动支持.目前PDU 模式已取代Block 模式, 而Text 模式不支持中文,因此本系统使用PDU 模式进行短消息的接收和发送。

本文设计了一个基于STM32 的智能家居控制系统。由STM32 及STC12C5A60S2 微处理器完成整体控制功能,通过移动手持设备、总控制台及门禁密码锁系统3部分实现人机界面在家居系统的智能化应用, 以期达到人机交流的最优化;该系统具备识别性好、安全性高、节能环保、易控制、抗干扰及成本低等优点。系统实验阶段运行良好,其实验成果将为家居系统智能化的进一步推广应用提供新的方向。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- yule263.com 版权所有 湘ICP备2023023988号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务