
- 基于ESP32+ASRPRO的智能家居助手设计与实现
随着科技的不断进步,物联网(IoT)技术正在迅速改变我们的生活和工作方式。为了利用这一趋势,我开发了"基于ESP32+ASRPRO的智能家居助手设计与实现",旨在通过连接设备和数据,实现更智能化、更方便的生活。
"基于ESP32+ASRPRO的智能家居助手设计与实现"的主要目标是:
- 实现设备远程监测与管理
- 全天候数据监测
- 增强用户设备控制体验
设备层:
使用ESP32作为主控制器,ASRPRO作为语音识别设备,DHT11作为温湿度数据检测设备
网络层:
- 设备与服务器通过MQTT、WiFi连接
- 设备与设备之间通过WiFi、蓝牙(可选)连接
数据层:
- 数据主要通过主控制器进行处理并上传阿里云服务器
应用层:
[描述最终用户如何与系统交互,如手机应用、网页界面等]
- 使用1.8寸TFT屏幕显示数据以及交互信息
- 使用阿里云物联网平台开发的程序可在手机、网页、电脑端进行设备控制及数据查看
- 可通过阿里云服务器对数据进行监控、修改
- 本地通过语音控制其他设备以及获取其他设备信息
-
数据监测: 通过板载DHT11传感器实时采集温湿度数据,并在显示屏显示。
-
远程控制: 用户可以通过手机或电脑远程控制设备。
-
语音控制: 通过ASRPRO模块用户可以在本地通过语音控制设备。
-
警报和通知: 在检测到异常情况时,板载蜂鸣器会自动发送警报通知用户。
-
功能拓展:分别预留ESP32、ASRPRO的IO*2并用2.0mm间距3Pin接口引出用于功能拓展
通信协议:
采用的通信协议:
- MQTT :设备与服务器间的数据传输
- HTTP/HTTPS :实时网络时间获取
- UDP:各设备之前的数据传输
硬件:
模块
- 主控制器:ESP32
- 语音识别模块:ASRPRO
- 温湿度传感器:DHT11
- 报警器:12095蜂鸣器
- 数据显示器:1.8寸TFT屏幕
- 状态指示器:LED灯若干
外壳设计


PCB设计
PCB设计使用嘉立创EDA完成
原理图
PCB

3D模型预览

软件:
- 开发语言和框架:基于Arduino IDE(ESP32)以及天问 BLOCK(ASRPRO)使用C/C++进行开发
- 控制程序基于阿里云物联网平台进行开发
控制程序-控制界面

控制程序-数据监测界面

ESP32代码
- 长代码警告!(后续会进行封装)
显示部分代码可参考Arduino平台基于GFX库的滚动字幕消息显示UI设计(定时器实现刷新)
阿里云平台SDK相关代码参考使用ESP-01S与阿里云物联网平台服务器的连接与配置(温湿度检测)
ASRPRO代码
智能家居:
配合其他设备实现家庭设备的智能化管理,如照明、温控等。
已完成部分功能以及测试,包括但不限于:
- 本地语音控制
- 控制程序开发
- 手机、电脑网页端控制
- 阿里云物联网平台后台控制
- 设备间通信及控制
- 温湿度数据获取、显示以及上传
- 网络实时时间获取及显示
- 语音报时
后续进行完善及补充,后续将在立创开源社区进行软硬件开源,后续以开源社区更新为准,此博客不实时更新
点击前往立创开源社区查看:智能家居助手