搭建个人智能家居 5 -DHT11温湿度测量
上一篇文章我们添加了第二个外设“RGB灯”,今天继续添加第三个外设,用来测环境温湿度的“DHT11温湿度传感器”。
搭建个人智能家居 5 -DHT11温湿度测量
前言
上一篇文章我们添加了第二个外设“RGB灯”,今天继续添加第三个外设,用来测环境温湿度的“DHT11温湿度传感器”。
前文回顾:
搭建个人智能家居 开篇(搭建Home Assistant)
搭建个人智能家居 2 -安装ESPHome
搭建个人智能家居 3 -第一个设备“点灯”
搭建个人智能家居 4 -WS2812B-RGB灯
说明
本次添加外设会接着前面文章创建的Demo,在yaml文件里继续添加DHT11温湿度传感器相应的驱动代码。会用到DHT11温湿度传感器一个和5v电源一个。
本次依然分成两步:
第一步是ESPHome编写yaml文件并烧录到ESP32开发板
第二步是HomeAssistant添加控制组件
ESPHome
打开上一篇文章里新建的工程,找到工程的存放位置,然后在存放工程的文件夹输入启动esphome的指令(可参考“搭建个人智能家居 2 -安装ESPHome”):
esphome dashboard xxx/ /*xxx用你创建的工程文件夹名字替代,前面文章篇创建的名字为LED*/
启动完成后在浏览器输入下面网址进入esphome的控制页面。
http://localhost:6052/
/*或者*/
http://0.0.0.0:6052/
进入esphome的控制页面后,继续编辑前面文章创建的工程。
在Light组件外设代码后面,插入本次添加的DHT11温湿度传感器外设的代码。
前两篇文章添加的外设都是Light组件下的设备,本次添加的DHT11温湿度传感器不属于Light组件,它属于传感器sensor组件,dht平台的传感器。代码如下:
#DHT11
sensor: //调用sensor组件
- platform: dht //dht传感器平台
pin: GPIO5 //使用ESP32的IO5引脚
temperature: //温度备注名称
name: "Current temperature" //随意,在HomeAssistant的实体窗口中会显示出来
humidity: //湿度备注名称
name:"Current humidity" //随意,在HomeAssistant的实体窗口中会显示出来
model: DHT11 //使用DHT11模型(和初始化有关)
update_interval: 10s //间隔10s读取一次温湿度数据
yaml工程中添加的所以外设代码整合
captive_portal:
#Bin_LED
light:
- platform: binary
name: "led"
output: bin_led
#WS2812_RGB
- platform: neopixelbus
type: GRB
variant: WS2812
pin: GPIO4
num_leds: 25
name: "RGB_LED"
output:
- id: bin_led
platform: gpio
pin: GPIO2
#DHT11
sensor:
- platform: dht
pin: GPIO5
temperature:
name: "Current temperature"
humidity:
name: "Current humidity"
model: DHT11
update_interval: 10s
编译生成固件
下载保存生成的固件后用flash download tools烧录
烧录完成后,打开串助手固件的运行情况,wifi是否连接成功。
HomeAssistant
启动HomeAssistant,启动HomeAssistant的步骤不做赘述(可参考“搭建个人智能家居 开篇(搭建Home Assistant)”)
启动完后在浏览器打开启动页面里的IPv4的地址,进入HomeAssistan控制面板,由于前面文章已经在HomeAssistant里面添加了这个ESPhome设备,本文只是在这个设备上添加了一个实体,所以进入HomeAssistant控制页面后不需要重新添加设备、实体等操作就会自动刷新出这一次新增的温湿度传感器实体。
DHT11温湿度传感器添加完成。
移动端安装了HomeAssistant的APP通过局域网登录电脑端注册时的账号也是可以控制的,感兴趣的可以去试一下。
更多推荐
所有评论(0)