基于RT-Thread的智能家居助手

一、项目简介

智能家居助手主要基于RT-Thread开发的,该系统主要分为语音子系统,环境监测子系统,智能控制子系统,智能网关子系统,音乐播放器,云端以及应用软件七大部分。语音子系统可通过语音进行人机交互来控制家电设备。环境监测子系统为智能家居提供环境信息输入,实时监测室内的环境信息。智能控制子系统为智能家居提供控制接口,用户可根据实际需求来控制家电设备。

智能网关是整个系统的核心和枢纽,为整个智能家居提供网络,同时与云平台进行交互,不断更新室内信息,实时将数据上传至云端,用户就能在远程进行查室内的各种环境信息,实时掌握家中的最新动态。音乐播放器为用户提供音乐服务。云端部分为智能家居系统云服务,提供输出存储与分析服务。应用软件和语音子系统是等效的,方便用户使用。

二、硬件组成

1.AB32VG1

AB32VG1开发板是以中科蓝讯(Bluetrum)公司推出的基于RISC-V架构的高配置芯片AB5301A为核心所组成的。

板载资源:

CPU: AB5301A;( LQFP48 封装,主频 120M,片上集成 RAM 192K, flash 8 Mbit, ADCPWM, USB, UART, IIC 等资源)

搭载蓝牙模块,FM 模块,一路 TF Card 接口,一路 USB 接口,一路 IIC 接口,一路音频接口(美标 CTIA),六路 ADC 输入引脚端子引出,六路 PWM 输出引脚端子引出,一个全彩 LED 灯模块, 一个电源指示灯, 三个烧录指示灯,一个 IRDA(红外接收端口),一个 Reset 按键, 三个功能按键(通用版为两个功能按键)

板子规格尺寸: 6cm*9cm

I/O 口通过 2.54MM 标准间距引出, 同时兼容 Arduino Uno 扩展接口, 方便二次开发板上所有的硬件特性能快速帮助评估 AB5301A 所有外设和衍生开发新的应用。

2.ART-Pi

ART-Pi 是 RT-Thread 官方推出一款具有高度可扩展性的硬件,能很好的满足绝大多数开发人员的 DIY 想法,其具备性能强大的主控,实用的外设,丰富的扩展接口,是学习、开发、DIY 的不二之选。

3.TWen-ASR-ONE(语音识别)

ASR-ONE是一颗专用于语音处理的人工智能芯片, 可广泛应用于家电、 家居、 照明、 玩具等产品领域, 实现语音交互及控制。开发板板载一颗 RGB 灯,引出 26 个 IO,外接喇叭和麦克风,用于快速验证语音产品功能。

ASR-ONE内置自主研发的脑神经网络处理器BNPU, 支持200条命令词以内的本地语音识别, 内置CPU核和高性能低功耗Audio Codec模块, 集成多路UART、 IIC、 PWM、 GPIO等外围控制接口, 可以开发各类高性价比单芯片智能语音产品方案。

三、软件说明

系统整体架构如图所示。

该系统主要包含三大核心功能:音乐播放、智能控制、环境监测。

该系统两种交互方式:语音交互、网络(应用软件)。

1 核心功能

第一部分:音乐播放

音乐播放是本项目的一大功能,主要由AB32VG1开发板实现,板载由SD卡接口,将音乐存入SD卡,板子上电初始化完成后,即可通过语音、网络控制音乐的播放,当然,也可使用板载的按键控制,同时根据音乐的大小通过PWM控制RGB灯,可以说,非常炫酷。音乐播放提供开始、停止、暂停、恢复播放、上/下一首、增加/减小音量服务,同时还可自动扫描SD卡的歌曲,可循环播放音乐,提供多种控制方式,非常方便。

音乐播放的主要流程如下所示。

第二部分:智能控制

该智能家居助手还能控制家电设备,本项目通过控制PWM控制室内的小夜灯,另外通过电机正反转来模拟控制窗帘的开启与关闭,当然,用户可根据实际需要增加更多的家电设备。


第三部分:环境监测

ART-Pi智能网关上电之后完成板级初始化,接着初始化传感器,就会定时采集环境信息,在连接网络和云端后,就会定时向云端发送数据。同时建立本地服务,当有客户端接入网络,也会定时向客户端发送环境信息。

云端得到相应的数据后,绘制室内的温湿度曲线,也可实时查看当前的温湿度信息。

另外,为了保证数据传输的可靠性,设计了简单的数据传输协议保证数据的可靠交互。

环境监测的流程图如下所示。

2 交互方式

第一部分:语音交互

语音模块上电之后完成板级初始化,初始化完成后有提示音即可,就可通过语音进行信息交互,比如开关灯,音乐播放等交互。

语音交互流程如下图所示。

第二部分:应用软件(网络)

应用软件是基于PyQT5开发,可在Windows、Linux、MacOS平台运行,通过socket编程与网关通信。应用软件的功能和语音交互的功能差不多,开发的目的是为用户提供更多的选择,方便用户使用。

用户使用应用软件的流程如下:

代码地址:

gitee.com/ouxiaolong/...

四、演示效果

演示截图如下:

云端信息:

相关推荐
wclass-zhengge23 分钟前
架构篇(04理解架构的演进)
架构
TaoYuan__1 小时前
机器学习的常用算法
人工智能·算法·机器学习
槿花Hibiscus1 小时前
C++基础:Pimpl设计模式的实现
c++·设计模式
用户40547878374822 小时前
深度学习笔记 - 使用YOLOv5中的c3模块进行天气识别
算法
吾与谁归in2 小时前
【C#设计模式(4)——构建者模式(Builder Pattern)】
设计模式·c#·建造者模式
shinelord明2 小时前
【再谈设计模式】建造者模式~对象构建的指挥家
开发语言·数据结构·设计模式
十七算法实验室2 小时前
Matlab实现麻雀优化算法优化随机森林算法模型 (SSA-RF)(附源码)
算法·决策树·随机森林·机器学习·支持向量机·matlab·启发式算法
黑不拉几的小白兔2 小时前
PTA部分题目C++重练
开发语言·c++·算法
迷迭所归处2 小时前
动态规划 —— dp 问题-买卖股票的最佳时机IV
算法·动态规划
chordful2 小时前
Leetcode热题100-32 最长有效括号
c++·算法·leetcode·动态规划