FastBond2阶段1-基于Node-Red与ESP32C3智能家居系统的框图设计
在Raspberry 4B上搭建Node-Red环境,设计一个简易的智能家居中控平台,在个人云服务器上搭建MQTT消息服务,ESP32C3作为各个功能的硬件节点,通过智能家居中控平台实现对各个节点的监测与控制。
标签
Funpack活动
工控小弟
更新2023-09-01
823

一、项目思路      

      现在物联网技术发展已经非常成熟,小到一个远程遥控灯,大到工业现场设备,都在使用物联网的相关技术。今天,我将从零搭建属于自己的物联网生态,从云服务到边缘硬件都可以定制开发,硬件节点也可以根据需求灵活拓展。

      初期规划设计的功能主要有家庭环境监测、远程开关控制、智能调光与功率监测三种基础功能,使用到的硬件主要有DHT11、ESP32、继电器、Raspberry 4B、路由器等。然后使用 Scheme-it 软件,绘制功能方框原理图,Scheme - it 包含大量示例,通过 Design Starters(设计启动器)选项卡即可访问。Scheme-it 用户界面有一个大型的中央工作区,工作区上方的任务栏上有一目了然的按钮。通过右上角的“帮助”下拉菜单,可即时访问主题帮助页面,其中包含完整目录。此外,还能借助此菜单访问 DigiKey 技术论坛上的 Scheme-it 页面,该页面含有大量常见问题和回复。Scheme-it 的元器件库包括 700 多个常用原理图符号,其显示在左侧滚动框中,以及一个用于创建自定义元器件符号的符号编辑器。此外,还能导入和使用来自近 200 万个 Ultra Librarian 电路模型的符号,而这些模型可从内置 DigiKey 目录链接获得。要从滚动框中添加绘图符号,只需将选定的元器件从原理图符号列表拖到工作区的所需位置。右键单击所选元器件,即可提供相关链接以供在 DigiKey 目录中搜索元器件类型。

FkckfqRe6q1h4us7KKtCyPY_p_qw

图1 Scheme-it 绘制功能框图

二、硬件选择      

       接下来是各个节点的硬件设计,使用ESP32S3或者ESP32C3作为各个功能节点的主控制器,ESP32-S3 是一款集成 2.4 GHz Wi-Fi 和 Bluetooth 5 (LE) 的 MCU 芯片,支持远距离模式 (Long Range)。ESP32-S3 搭载 Xtensa® 32 位 LX7 双核处理器,主频高达 240 MHz,内置 512 KB SRAM (TCM),具有 45 个可编程 GPIO 管脚和丰富的通信接口。ESP32-S3 支持更大容量的高速 Octal SPI flash 和片外 RAM,支持用户配置数据缓存与指令缓存。ESP32-S3 集成 2.4 GHz Wi-Fi (802.11 b/g/n),支持 40 MHz 带宽;其低功耗蓝牙子系统支持 Bluetooth 5 (LE) 和 Bluetooth Mesh,可通过 Coded PHY 与广播扩展实现远距离通信。它还支持 2 Mbps PHY,用于提高传输速度和数据吞吐量。ESP32-S3 的 Wi-Fi 和 Bluetooth LE 射频性能优越,在高温下也能稳定工作。ESP32-S3 拥有 45 个可编程 GPIO 以及 SPI、I2S、I2C、PWM、RMT、ADC、UART、SD/MMC 主机控制器和 TWAITM 控制器等常用外设接口。其中的 14 个 GPIO 可被配置为 HMI 交互的电容触摸输入端。此外,ESP32-S3 搭载了超低功耗协处理器 (ULP),支持多种低功耗模式,广泛适用于各类低功耗应用场景。而且,ESP32-S3 MCU 增加了用于加速神经网络计算和信号处理等工作的向量指令 (vector instructions)。AI 开发者们通过 ESP-DSP 和 ESP-NN 库使用这些向量指令,可以实现高性能的图像识别、语音唤醒和识别等应用。ESP-WHO 和 ESP-Skainet 也将支持此功能。

FhK3e7zr3zuI_uQNsqcEqGQgWS1R

图2 ESP32-S3-WROOM-2模组

      环境监测主要监测室内的温度、湿度,这里使用DHT11,DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最佳选择。产品为4针单排引脚封装,连接方便。

FqOeLF3UCxWkOUT5jwtuDzIqWFXQ

图3 DHT11模组

      在智能调光与功率监测功能实现过程,需要进行电流电压采集,电压采集使用分压电路即可,所以,电流采集使用的是AD8418B,AD8418A是一款高压、高分辨率分流放大器。设定初始增益为20 V/V,在整个温度范围内的最大增益误差为±0.15%。缓冲输出电压可以直接与任何典型转换器连接。AD8418A在输入共模电压处于−2 V至+70 V范围时,具有出色的输入共模抑制性能;它能够在分流电阻上进行双向电流的测量,适合各种汽车和工业应用,包括电机控制、电源管理和电磁阀控制等。在−40°C至+150°C的整个温度范围内,AD8418A都能提供极佳的性能。它采用零漂移内核,在整个工作温度范围和共模电压范围内,失调漂移典型值为0.1 μV/°C。AD8418A通过汽车应用认证。该器件集成EMI滤波器和专利电路,在脉冲宽度调制(PWM)类输入共模电压下具有高输出精度。输入失调电压的典型值为±100 μV。AD8418A提供8引脚MSOP和SOIC两种封装。

FqtQ64YfOEgkot_0LAAUiTQk2J8z

图4 AD8418A模组

      然后是部署服务硬件选择,这里我选择使用树莓派4B进行搭建,树莓派4B是一款小型、低功耗的单板计算机,是Raspberry Pi系列产品中最新的一款,搭载了博通BCM2711处理器,拥有四个Cortex-A72 CPU核心,此外,它还配备了1GB、2GB或4GB的LPDDR4SDRAM,可根据需求选择不同容量的内存,我的这块树莓派4B是在得捷电子购买的2GB版本,性能基本够用,而且生态丰富。

Fpb6xYY_KFpC7l258pdH91am4rPh

图5 Raspberry Pi 4B开发板

 三、软件环境部署       

      接下来是MQTT消息服务器搭建, MQTT消息服务器有很多,例如:Eclipse Mosquitto、EMQX、HiveMQ等。我选择使用EMQX,EMQX具有高性能、高可靠性和分布式特性,它支持数百万级别的连接和百万级别的消息处理,适用于大规模物联网和实时数据处理等应用,我们可以在本地部署,也可以在云服务器部署,我有一台云服务器,所以就在云服务器中部署,本地部署和云服务器中部署的区别就是本地部署只能在局域网内使用,而云服务器中部署没有网络限制,功能都是一样的,想体验云服务器的小伙伴可以去白嫖,很多厂商都推出了白嫖一年或者1个月的服务,这里不在赘述。

      接下来就是Node-Red环境搭建,Node-RED是一款流程编程工具,它可以帮助开发人员快速搭建物联网应用程序和自动化工作流程。Node-RED提供了一个基于Web的可视化编程环境,可以轻松地创建、测试和部署各种流程。Node-RED的运行时引擎则是一个轻量级的Node.js应用程序,可以运行在各种平台上,例如树莓派、云服务器、PC等。它可以执行流程,处理消息和连接各种设备和服务。像我这种小白,非常适合使用它,安装部署也比较简单,我们进入node-Red官网,找到树莓派部署文档,复制页面的指令到树莓派终端,等待安装完成,安装完成后,会进入配置按照提示,配置用户及密码,其他选项默认即可,然后配置开机自启,在浏览器中输入IP及端口,进入后就是编辑界面,Node-Red编程就是拖功能块,非常简单。

      最后就是需要利用已经搭建好的环境,设计一个简易的智能家居中控平台,用来控制这些规划好的功能,阶段一规划的功能就是这些,这些功能的实现过程在阶段二的总结中再进行说明。

 

 

附件下载
捕获.PNG
团队介绍
工控小弟,一名电子DIY创客!
评论
0 / 100
查看更多
目录
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号