搭建个人智能家居 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通过局域网登录电脑端注册时的账号也是可以控制的,感兴趣的可以去试一下。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐