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

本文详细介绍了基于RT-Thread的智能家居助手系统,包括其硬件组成(如AB32VG1、ART-Pi和语音识别芯片ASR-ONE),软件架构(音乐播放、智能控制和环境监测功能),以及语音和网络应用的交互方式。通过演示效果展示了系统的实际操作和云端服务。
摘要由CSDN通过智能技术生成

一、项目简介

智能家居助手主要基于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编程与网关通信。应用软件的功能和语音交互的功能差不多,开发的目的是为用户提供更多的选择,方便用户使用。

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

代码地址:

https://gitee.com/ouxiaolong/Smart_Home_Assistant.git

四、演示效果

演示截图如下:

云端信息:

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
作者:annysky 概述智能家居是目前最火热的应用方向,基于对物联网和智能家居的热衷和喜爱,以自己小屋为实际应用模板,将智能家居的设想变为现实状态。本智能家居应用平台基于STM32H7和STM32F4为主芯片进行设计,分为主控平台和网关平台。主控平台以ART-PI开发板为核心,主要任务是查询网关平台的数据信息、查询和设置参数、与云平台进行交互等;网关平台以STM32F407为核心,主要任务是采集数据和分析处理数据、并将主控平台下发的指令进行分析处理后来控制终端,该平台目前采集4路温湿度、1路电量、1路甲醛、1路PM2.5、2路烟雾报警、1路水浸报警、2路门锁状态的数据,输出控制1路加热和散热,通过CAN通讯与主控平台进行联络,并且使用屏进行显示各个状态,还可以使用WLAN与Onenet进行数据交互。后续根据需要在CAN网络上增加设备或模块(智能窗帘、CAN温湿度传感器、智能继电器、门禁系统、摄像头等),能够监测和控制终端产品。 开发环境硬件: (1)主控:ART-PI(STM32H750XB),ART-PI-DOCK扩展板(含屏) (2)网关:WT-19S42(STM32F407VGT6) (3)RT-Thread版本:RT-Thread V 4.0.3 (4)开发工具及版本:MDK 5.27,CANTest,XCOM V2.0,VGUS2020,DGUS_V759-t5l RT-Thread使用情况概述(1)内核部分:调度器,信号量,消息队列,libcpu/BSP。 调度器:创建多个线程来实现不同的工作。 信号量:用来同步线程。 消息队列:用来实现线程之间传递的数据。 libcpu/BSP:外设CAN驱动、UART驱动。 (2)组件部分:CAN框架,UART框架, CAN框架:使用FDCAN2框架来与网关平台进行数据交互,上层代码可以提高代码的可重用性。 UART框:使用UART框架来与ART-PI-DOCK扩展板进行数据交互。 (3)软件包部分: cJSON:C语言实现的极简的解析 JSON 格式的软件包。 WebNet软件包:由RT-Thread 自主研发的,基于 HTTP 协议的 Web 服务器实现,它不仅提供设备与 HTTP Client 通讯的基本功能,而且支持多种模块功能扩展,且资源占用少、可裁剪性强,充分满足开发者对嵌入式设备服务器的功能需求。 Onenet: RT-Thread 针对 OneNET 平台连接做的的适配,通过这个软件包,可以让设备在 RT-Thread 上非常方便的连接 OneNet 平台,完成数据的发送、接收、设备的注册和控制等功能。 硬件框架总方案原理图 智能家居应用平台方案原理图如图1所示,主要由两部分组成(目前状态,后续根据实际应用情况进行扩展),分别是主控平台和网关平台。 图1总方案原理图 主控平台: 主控平台的硬件分为两部分。一是ART-PI开发板,是由RT-Thread 设计的开源硬件,核心芯片是STM32H750XB,主频最高达480M,支持超低功耗。开发板板载功能众多,标配 TYPE-C 接口,板载 WIFI, 蓝牙配网,还有 LCD(RGB888),SDRAM, TF-Card, USB-OTG等应有尽有。 另外一部分是ART-PI-DOCK扩展板:根据ART-PI开发板的扩展接口自主设计的ART-PI-DOCK扩展板。主要的功能是通讯和人机交互,不参与对外设传感器或者模块的控制和信号采集(除光敏和温湿度)。板子主要包含以下几种功能: (1)2路CAN通讯 (2)1路485通讯; (3)1路232通讯; (4)1路TTL通讯; (5)1路WLAN网络通讯; (6)CAN匹配电阻设置; (7)主机ID设置; (8)1路温湿度传感器; (9)1路光敏传感器; (10)1路锂电池充电管理模块接口; (11)1路外设5V输入接口; (12)1路串口屏接口; (13)1路TFT液晶屏接口。 扩展板涵盖的功能非常全面,包含了目前应该最广泛的几种通讯方式和人机交互方式(可选),可适应不同应用场景。 图2 ART-PI-DOCK原理框图 网关平台 网关核心芯片是STM32F407VGT6,1024k Flash,192KB SRAM,工作频率为168 MHz。基于STM32F407强大的功能,在设计网关平台时,使用了符合IEEE 1588 v2标准要求的以太网MAC10/100,并使用了高达6个USART设备。另外使用了1路CAN,4路串行设备,12路开关量输入,8路开关量输出,各个接口均进行了标识。 图3网关平台原理框图 软件框架说明图4 主控平台软件流程图 图5 网关平台软件流程图 本项目采用的是主控与网关两个平台,主控平台完成对网关平台数据的处理显示,并对网关平台的参数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

芯动大师

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

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

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

打赏作者

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

抵扣说明:

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

余额充值