Home Assistant 中用 tado.add_meter_reading 动作向 Tado Energy IQ 提交燃气/电表读数
【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io
在 Home Assistant 的 Tado 集成中,tado.add_meter_reading动作用于把家用燃气表或电表的一次读数推送到 Tado Energy IQ 服务,从而在 Tado 端追踪能耗并核算供暖费用。本文完整覆盖该动作的 UI 配置步骤、YAML 写法与参数说明,并给出一个"每日定时提交燃气表读数"的自动化完整示例,读完后你可以直接在自己的 Home Assistant 中复现这条"传感器读数 → Tado 云"的能耗上报链路。
动作能做什么
Add meter reading(添加电表读数)动作会把一条电表读数发送到 Tado Energy IQ。Energy IQ 是 Tado 提供的能耗追踪功能,可以用来跟踪家庭能耗、掌握供暖成本的变化趋势。
一个典型用法是:编写一个自动化,定期(例如每天一次)读取家里的燃气表或电表传感器,然后把数值提交给 Tado。整条链路只涉及两个环节——Home Assistant 侧的能耗传感器(如sensor.gas_consumption)和 Tado 云端的 Energy IQ 账户,不需要在本地维护任何额外的数据库。
需要注意该动作的定位:它不支持 target(区域、设备、实体、标签都不需要也不可用)。与其他需要指定entity_id的动作不同,这个动作通过config_entry(Tado 配置条目)来定位提交目标,因为电表读数本身就是整个 Tado 家庭级别的账户数据,与某个具体实体无关。
从用户界面配置动作
如果你偏好可视化地搭建自动化和脚本,Home Assistant 的 UI 会逐步引导你完成该动作的配置,全程无需手写 YAML。
操作步骤如下:
- 前往Settings>Automations & scenes(设置 > 自动化与场景)。
- 打开一个已有的自动化或脚本,或选择Create automation>Create new automation(创建自动化 > 创建新自动化)。
- 如果是新建自动化,先在When(当)部分添加触发条件;脚本不需要触发条件,脚本是由其他流程调用时运行的。
- 在Then do(然后做)部分,点击Add action(添加动作)。
- 在搜索框中搜索并选择Tado: Add meter reading。
- 选择Config entry(配置条目),并填写Reading(读数)。
- 点击Save(保存)。
由于该动作不支持 target,在 UI 中不会提示你选择区域、设备、实体或标签。
UI 中的选项
| 选项 | 说明 | 是否必填 |
|---|---|---|
| Config entry | 要把电表读数添加到哪个 Tado 配置条目 | 是 |
| Reading | 电表读数,单位为 m³ 或 kWh,不能带小数 | 是 |
在 YAML 中调用
在 YAML 中,该动作的名称为tado.add_meter_reading。最基本的示例如下:
action: tado.add_meter_reading data: config_entry: ef2e84b3dfc0aee85ed44ac8e8038ccf reading: 1234关于config_entry的取值有一个实用技巧:先在 UI 中把该动作配置好,然后切换到 YAML 模式,直接读取系统生成的配置条目 ID 即可,无需到处翻找。
YAML 中的选项
| 选项 | 说明 | 类型 | 是否必填 |
|---|---|---|---|
config_entry | 要把电表读数添加到哪个 Tado 配置条目 | string | 是 |
reading | 电表读数,单位为 m³ 或 kWh,不能带小数 | integer | 是 |
两点值得留意:
reading的类型是integer,即整数。如果你的传感器以 m³ 计且读数带小数,提交前应做取整(如 Jinja 的| int过滤器),否则不符合参数要求。- 单位 m³ 或 kWh 由 Tado 账户侧的能耗类型决定,动作本身只负责把数值送上去。
实战示例:每日定时提交燃气表读数
下面这个自动化把燃气表读数在每天夜里提交到 Tado Energy IQ:
alias: "Submit daily gas reading to Tado" triggers: - trigger: time at: "00:00:00" actions: - action: tado.add_meter_reading data: config_entry: ef2e84b3dfc0aee85ed44ac8e8038ccf reading: "{{ states('sensor.gas_consumption') | int }}"示例中的reading使用模板{{ states('sensor.gas_consumption') | int }}:从sensor.gas_consumption实体读取当前累计值,并用| int取整后提交。你可以把传感器换成自己家中实际的电表/燃气表实体,把00:00:00换成合适的上报时刻。
与 Tado 集成的关系及注意事项
tado.add_meter_reading是 Tado 集成 提供的动作之一。了解底层集成对正确使用该动作很重要:
- 通信方式:Tado 是一个 Hub 类集成,通过 Tado 官方网站使用的非官方 API(Cloud Polling,云轮询)与 my.tado.com 通信。电表读数同样经由这条云端链路提交,因此需要 Home Assistant 能正常访问 Tado 云端。
- 认证方式:自 2025 年 3 月 21 日起,Tado 改用了"设备码"(Device Code)认证流程:集成发起设备码并在浏览器中引导你到 Tado 认证服务器确认、登录完成授权。若集成提示重新认证,按此流程操作即可。
- 限流风险:自 2026 年 1 月 1 日起,Tado 对 API 实行了基于每日配额的严格限流,且配额因订阅类型而异。若配额耗尽,集成可能认证失败或无法接收新数据,限流于每天 12:00(CET)重置。因此如果受限流影响,可考虑在 Tado 集成文档中说明的自定义轮询间隔(custom polling interval)基础上减少不必要的轮询,为提交读数这类写操作留出配额空间。
- 动作成熟度:从变更日志 core-2025.2 可以看到,该动作在 2025.2 版本中修复过文案的复数错误("Fix wrong plural on tado.add_meter_reading action"),说明它属于经过维护的正式动作而非实验性功能。
相关的 Tado 动作
该动作常与 Tado 集成提供的其他动作配合使用,例如把"每日提交能耗读数"与"按时段调节温度"放在同一个供暖管理自动化里:
- Set climate timer(
tado.set_climate_timer):让 Tado 温控实体(如暖气片阀门)在指定时长内加热到目标温度,相当于手动 boost,结束后恢复计划。 - Set water heater timer(
tado.set_water_heater_timer):对水加热器做类似的限时开关。 - Set climate temperature offset(
tado.set_climate_temperature_offset):校准 Tado 温控设备的温度偏差,可用一个位置更好的外部温度传感器来持续同步偏移量。
小结
tado.add_meter_reading是 Home Assistant 中把本地能耗传感器数据接入 Tado Energy IQ 的官方通道:参数只有两个——config_entry(string,必填)和reading(integer,单位 m³ 或 kWh 的整数读数,必填),且不带 target。推荐的做法是先在 UI 中配置好动作以获取配置条目 ID,再切到 YAML 模式,把reading替换为指向你家居能耗传感器的模板,配合time触发器即可搭建一条稳定的每日能耗上报自动化。
【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考