Home Assistant中使用MQTT传感器的示例配置

Home Assistant中使用MQTT传感器的示例配置缩略图

Home Assistant使用MQTT消息负载作为传感器值。如果在这个消息中使用了RETAIN标志,传感器将立即接收到具有上次已知值的更新。否则,初始状态将未定义。

Home Assistant中使用MQTT传感器的示例配置概述

要在您的安装中使用MQTT传感器,请将以下内容添加到您的configuration.yaml文件中:

# 示例 configuration.yaml 条目
sensor:
  - platform: mqtt
    state_topic: "home/bedroom/temperature"

配置变量:

  • state_topic(必填):订阅以接收传感器值的MQTT主题。
  • name(可选):传感器的名称。默认为'MQTT Sensor'。
  • qos(可选):状态主题的最大QoS级别。默认值为0。
  • unit_of_measurement(可选):定义传感器的测量单位(如果有的话)。
  • expire_after(可选):定义值在多少秒后过期(如果不进行更新)。默认为0(永不过期)。
  • value_template(可选):定义从负载中提取值的模板。

示例:

在这个部分中,您将找到一些关于如何使用此传感器的实际示例。

获取电池电量:
如果您使用Owntracks并启用电池电量报告,那么您可以使用MQTT传感器来跟踪电池电量。Owntracks的常规MQTT消息如下所示:

owntracks/tablet/tablet {"_type":"location","lon":7.21,"t":"u","batt":92,"tst":144995643,"tid":"ta","acc":27,"lat":46.12}

unit_of_measure

因此,从负载中提取电池电量的关键是:

# 示例配置:获取电池电量的MQTT传感器

sensor:
  - platform: mqtt              # 使用MQTT传感器平台
    state_topic: "owntracks/tablet/tablet"  # 订阅MQTT主题以接收传感器值
    name: "平板电池"             # 传感器的名称
    unit_of_measurement: "%"     # 传感器值的单位(百分比)
    value_template: '{{ value_json.batt }}'  # 使用模板从负载中提取电池电量值

获取温度和湿度:
如果您使用DHT传感器和NodeMCU板(esp8266),您可以使用MQTT传感器来检索温度和湿度。您可以在此处找到代码示例。该示例生成的MQTT消息如下所示:

office/sensor1
{
"temperature": 23.20,
"humidity": 43.70
}

然后,使用以下配置示例从负载中提取数据:

# 示例配置:获取温度和湿度的MQTT传感器

sensor:
  - platform: mqtt              # 使用MQTT传感器平台
    state_topic: 'office/sensor1'  # 订阅MQTT主题以接收温度传感器值
    name: '温度传感器'          # 传感器的名称
    unit_of_measurement: '°C'   # 传感器值的单位(摄氏度)
    value_template: '{{ value_json.temperature }}'  # 使用模板从负载中提取温度值

  - platform: mqtt              # 使用MQTT传感器平台
    state_topic: 'office/sensor1'  # 订阅MQTT主题以接收湿度传感器值
    name: '湿度传感器'          # 传感器的名称
    unit_of_measurement: '%'    # 传感器值的单位(百分比)
    value_template: '{{ value_json.humidity }}'     # 使用模板从负载中提取湿度值
技术术语(共 5 个)—— 点击展开
MQTT轻量级物联网消息传输协议,基于发布/订阅模式,适合低带宽不稳定网络
QoS服务质量等级,0 最多一次 / 1 至少一次 / 2 恰好一次
TopicMQTT 主题,消息路由的层级字符串,支持通配符 + 与 #
订阅客户端向 Broker 注册感兴趣的主题以接收消息
传感器将物理量转换为电信号的检测装置
来源/工具信息 —— 点击展开
来源 MQTT中文网(mqtt.cn) —— 国内领先的MQTT通信协议技术社区 分类 Home Assistant 字数 1446 字 · 阅读约 4 分钟 更新 2023-09-11 永久链接 https://www.mqtt.cn/593.html
推荐工具:MQTT调试助手 微信小程序
MQTT中文网官方推出的MQTT调试工具,支持 MQTT 3.1.1/5.0 实时连接调试、主题订阅、消息收发监控与报文分析。 无需安装,微信搜索「MQTT调试助手」即可使用。 电脑端入口:https://www.mqtt.cn/mqtttool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 mqtt.cn
相关标签
📝 作者声明
本文由 MQTT中文网技术团队 原创撰写,内容基于实际项目案例与技术文档,力求为读者提供准确、实用的参考信息。
把这篇资料用于真实项目?

进入工具中心进行报文解析、CRC 校验和设备调试,或提交需求获取选型与接入建议。

owntracks/table

工程师会员

把这篇文章变成可执行的调试资料

开通后可使用高级报文解析、资料包下载、代码示例、工程案例和优先技术支持,适合真实项目交付。

高级工具不限次
资料包与代码包
完整工程案例库
优先技术支持入口