智能家居之旅(13):传感器采集主板

2024-09-05 14:19:56 浏览数 (1)

项目想法

之前做了两个 HomeAssistant 受控设备,特别是交流通断器,它能够真正地控制家里的电器电源。在 HomeAssistant 的自动化当中,你可以设置定时开启、定时关闭等功能。 但是想要做更加智能化的功能的话,就需要用传感器。

  • 比如小夜灯要智能化起来时,需要光照传感器检测光强度来决定是否开启,或者还需要人体传感器检测有人才开启。
  • 比如空调控制时,可以利用温度传感器,检测室温来决定制冷还是制热

等等诸如此类智能控制,都需要传感器的参与才能实现智能化。

所以今天这个项目就是一个:基于 Ai-WB2 模组实现的 HomeAssistant 传感器采集器

目标传感器

针对目前的传感器类型,根据接口类型分类,大致有这么几个品类:

  • 串口:RS485 传感器
  • I2C: 数字传感器,如 SHT30 温湿度传感器
  • IO:二进制传感器,只输出高低电平的
  • 单总线:典型 18B20 温度传感器

供电方式

计划采用锂电池供电方式,设计充电电路。这样一来,RS480 传感器就不打算接入了,因为这类型的传感器一般是 12V 供电,使用电池供电的话,需要额外的升压电路,而且功耗也高。传感器采集器只能接入 I2C、IO、单总线接口的传感器了,而且充电接口的话,就用 Type-C 吧! 从而就要衍生出一些电路:

电池供电电路

充电电路采用的 IC 是 IP3506。

锂电池保护电路

既然使用的是锂电池,肯定要用保护电路,当然也可以不焊,然后使用那种自带保护板的电池。

电池电量采集电路

一般是读取电池的电压来实现电池的容量检测,使用 ADC 就行:

低功耗稳压电路

因为用了电池供电,所以稳压电路的稳压器不能用太高功耗的,1mA 的静态电流都很大了。所以不能用 1117 这个 LDO,我找到了一个静态电流只有 8uA 的 LDO:WL6026。 8uA 的功耗能够提供最高 250mA 的输出,满足 Ai-WB2 的日常使用了。

功能计划

供电说完了,现在讲讲功能计划:

  • 主控模组:Ai-WB2-12F
  • 板载温湿度传感器
  • 支持安信可 IOT 小程序配网
  • 定时上传温湿度数据
  • 引出 I2C、IO 检测、IO 单总线接口,2.54Pin 脚
  • 即时检测按键,按下可以立即检测数据
  • 采集完成立即深度休眠,提高续航

低功耗软件实现流程

头疼的来了,Ai-WB2 这款模组没有低功耗的保活连接,这就以为不可能一直连接着 WiFi,而且只有深度休眠才能保障电池的续航。幸好 Ai-WB2 是支持 RTC 唤醒的,因此,我们只能做定时检测,而且不能频繁,因为连接 WiFi 和发布消息都需要很高的功耗。

好了,画原理图去咯。感觉这个要搞好久呢

翻车了,Ai-WB2 根本不支持 RTC 的深睡自动唤醒,换 Ai-M62 咯~

0 人点赞