项目介绍+设计思路
在卫生间布置多个由ESP32制作的功能模块,将所有功能单元整合在Home Assistant中,通过Home Assistant上的条件设置来实现场景判断,并执行相应自动化动作。当人进入卫生间并被其中一个人在传感器捕捉到后,服务器会配合其他多点分布的传感器完成场景判断(是如厕、洗手、或是洗澡),再进行对应场景的动作。比如,当有人进入卫生间时,打开主灯及镜前灯;如果检测到是在上厕所,可以播放一些舒缓的轻音乐,同时将镜前灯关闭等。
场景判断及执行这一系列动作需要多个位置的多个传感器和执行单元来协同完成,但在家中铺设大量的信号线不太现实,且这些信号线也不适合较长距离的传输,所以每个单一传感器或动作单元我们都可以用一个esp32主控来把它独立出来,全部接入wifi后再在home assistant服务器中进行整合,然后在服务器端进行条件判断与动作指令发送。
方案框图、原理图+Scheme-it工具介绍
先介绍一下Scheme-it,这是得捷发布的线上工具,使用浏览器登录就可以使用,无需下载任何软件。我们可以在上面绘制框图,流程图等图形,也可以进行原理图的设计。常用的电路符号在库中都有现成的,使用起来非常方便。如果要用一些特殊的芯片,自己绘制一下也非常简单。
绘制好的图可以很方便的在得捷社区中进行共享,并且得捷还提供了iframe的方式,可以将scheme it内嵌在自己的博客中,便于展示原理图设计过程。
本项目原理图与框图的分享链接:https://www.digikey.cn/schemeit/project/卫生间-ea6e7b4e7c3d4e5583a9e2f7bc7aeafb
项目框图如下:
该项目使用了三个独立模块,为了验证各系列的esp是否都可以丝滑的纳入系统中,我特别选用了三个不同的ESP芯片。其中人在传感器的模块是用来感应卫生间是否有人,如果有人,就可以触发比如开灯的操作;第二个传感器是激光传感器,可以用来安装在马桶附近,负责检测马桶上是否有人,以此来判断当前的场景到底是上厕所,还是仅仅洗手,以此触发不同的动作;第三个单元可以兼顾输入输出的功能,其中的按键可以作为手动控制输入,而LCD和喇叭可以作为输出单元使用,观察当前状态,并执行动作。
接下来是项目的原理图设计。在该项目中,仅ESP32-C3模块我们来自己制作,其余的单元大同小异,我计划直接购买成品开发板完成。
esp32-C3模块功能很多,在该项目中仅用作人在检测似乎有点浪费,因此本项目会按照开发板的目标来设计这个模块,争取还可以将它作为一块通用开发板使用。
首先我们看一下串口部分的设计,使用常见的CH343P和内置了限流电阻的二合一三极管,来尽可能节省开发板的面积。
接下来是MCU部分,这一部分比较简单,把所有引脚引出即可。
接下来是供电部分。供电采用SPX3819,和大多数LDO不同,这颗LDO多了一个bypass的引脚,可以通过外界一个小电容来达到更好的波纹抑制效果。
接下来是板载外设部分。首先是ESP家族必备的BOOT和RST按钮,用来在刷机时使用。注意这里C3有点特别,C3的BOOT是IO9,而不是其他ESP的IO0。另外,由于IO2和IO8也是启动引脚,在外设使用上会有一定限制,本着不浪费的原则,我们也可以给它们设计两个外设。其中IO2需要外接上拉,因此我们给他设计一个ADC的五向开关,IO8也需要上拉,我们设计一个WS2812编程灯珠。这样板载有简单的输入输出外设,一个标准开发板的结构就出来了。
最后一步,我们只需要把所有esp32C3的引脚引出,就算是大功告成。这里的引脚顺序和官方开发板完全一致,以确保做到最大兼容性,当然不要忘了,C3自带一个串口USB,我们可以把串口USB也一并引出。
方案中用到的规定厂商元器件介绍
该方案使用了ESP家族的多款芯片。由于硬件设计是基于ESP32-C3进行,因此在这里对C3进行以下介绍。
ESP32-C3芯片是一款32-bit RISC-V MCU,并集成了 2.4 GHz Wi-Fi & Bluetooth 5 (LE)
项目中实际使用的是ESP32-C3-MINI模块,该模块集成 ESP32-C3 芯片,RISC-V 32 位单核处理器,时钟频率高达 160 MHz。具备行业领先的低功耗性能和射频性能,内置 400 KB SRAM、384 KB ROM 存储空间,并支持多个外部 SPI、Dual SPI、Quad SPI、QPI flash。
同时,模块具备完善的安全机制:基于 RSA-3072 算法的安全启动、基于 AES-128-XTS 算法的 flash 加密、创新的数字签名和 HMAC 模块、支持加密算法的硬件加速器。并且还有丰富的通信接口及 GPIO 管脚,可支持多种场景及复杂的应用。
对本大赛的心得体会
借着本次大赛,可以把平时有些想法但却一直懒得动手的东西做出来,确实在过程中学到了很多东西,也体会了不少快乐。希望以后能有更多类似活动。