ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Home Assistant easyEnergy 用电价格获取动作(easyenergy.get_energy_usage_prices)完整实战指南

Home Assistant easyEnergy 用电价格获取动作(easyenergy.get_energy_usage_prices)完整实战指南 Home Assistant easyEnergy 用电价格获取动作easyenergy.get_energy_usage_prices完整实战指南【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io本篇技术指南以 Home Assistant 官方文档仓库中的 easyenergy.get_energy_usage_prices 动作文档 为核心结合 easyEnergy 集成文档 与仓库内的官方蓝图系统讲解如何通过该动作在自动化、脚本与模板传感器中获取 easyEnergy 的用电买入价格。阅读完本文你将掌握该动作在 UI 与 YAML 两种场景下的完整配置方法、全部参数语义、响应数据结构以及基于价格阈值实现低电价通知、智能电器调度和全包价all-in price计算的实际方案。一、动作概述与适用场景Get energy usage priceseasyenergy.get_energy_usage_prices是 easyEnergy 集成提供的三个价格查询动作之一用于从 easyEnergy 获取你使用买入电能的价格并以响应数据response data的形式返回。与之配套的另外两个动作是easyenergy.get_energy_return_prices获取你回馈卖出电能的价格easyenergy.get_gas_prices获取天然气的小时价格。该动作的典型应用场景包括在电价低谷时段自动启动洗碗机等高耗能设备、低电价时向手机推送通知、把当日电价渲染成仪表盘图表以及计算计入能源税与采购成本后的全包价。需要特别注意的是该动作不作用于任何实体entity。它没有 target而是通过选择 easyEnergy 的**配置条目Config entry**来确定数据来源这一点与大多数以实体为目标的 Home Assistant 动作有明显区别。二、通过 UI 创建动作自动化 / 脚本要在一个自动化或脚本中使用该动作按以下步骤操作进入Settings设置 Automations scenes自动化与场景。打开现有的自动化或脚本或者选择Create automation创建自动化 Create new automation创建新自动化。如果是新建自动化在When当...时部分添加一个触发器脚本无需触发器脚本在被其他自动化或场景调用时才执行。在Then do然后执行部分选择Add action添加动作。在搜索框中搜索并选择easyEnergy: Get energy usage prices。选择要使用的Config entry配置条目并根据需要设置其余选项。选择Save保存。动作创建完成后可以在Settings Tools Actions设置 工具 动作中打开开发者工具搜索该动作并直接Perform action执行动作进行验证无需编写任何 YAML 即可看到真实返回结果。UI 中的选项说明选项说明是否必填Config entry本次动作使用的 easyEnergy 配置条目是VAT included返回的价格是否已包含增值税VAT是Granularity电价的时间粒度可选每小时或每刻钟15 分钟否Price type价格类型可选市场价格market price或全包价格all-in price否Start取价的起始日期与时间省略时默认为今天否End取价的截止日期与时间省略时默认为今天否三、YAML 配置详解在 YAML 中该动作以easyenergy.get_energy_usage_prices引用。以下是文档中的基础示例action: easyenergy.get_energy_usage_prices data: config_entry: 013713c172577bada2874a32dbe44feb incl_vat: true response_variable: usage_prices该示例获取用电价格并把结果存入usage_prices响应变量中。config_entry中的字符串是 easyEnergy 集成配置条目的唯一标识符可在Settings Devices services easyEnergy的配置条目详情中查看。YAML 参数完整对照参数类型必填默认值说明config_entrystring是—本次动作使用的 easyEnergy 配置条目 IDincl_vatboolean是true返回的价格是否包含增值税granularitystring否hour电价时间粒度hour表示小时价quarter表示每刻钟价格price_typestring否market价格类型market表示裸市场价格invoice表示全包价含增值税及其他已并入的费用startdatetime否今天取价的起始日期与时间enddatetime否今天取价的截止日期与时间参数选取的实战建议granularity荷兰动态电价按小时或每 15 分钟发布。若需要更精细地追踪价格波动如判断一天中哪一刻钟最便宜使用quarter若仅关心小时级均值使用默认的hour即可。price_typemarket返回的是交易所层面的裸价格适合用于行情分析invoice返回的是 easyEnergy 计费口径的全包价格更适合直接与账单对比或驱动成本敏感型自动化。注意此处仅指 easyEnergy 计费数据中已包含的税费口径能源税与采购成本仍需要额外叠加详见本文第六节。start/end可以指定任意日期区间以回溯历史价格例如查询次日价格时同时传入start: 2023-12-10与end: 2023-12-10。在 YAML 中请对日期值加引号将其作为字符串处理避免被解析为其他类型。四、响应数据结构动作执行后响应数据是一个包含prices列表的映射mapping列表中的每一项包含两个字段timestamp字符串类型价格对应的时间戳格式为带 UTC 偏移的日期时间例如2023-12-09 03:00:0000:00price数字类型该时间点的电价单位为 EUR/kWh不含或含增值税取决于incl_vat。响应示例prices: - timestamp: 2023-12-09 03:00:0000:00 price: 0.08418 - timestamp: 2023-12-09 04:00:0000:00 price: 0.08758由于价格是按时间区间返回的列表可以在自动化中遍历prices找出最低价与对应时段也可以直接把整个列表写入模板传感器的属性供仪表盘图表渲染。五、在模板传感器中消费响应数据仓库中的 easyEnergy 集成文档 给出了一个非常实用的模板传感器示例每小时触发一次动作拉取当天以每刻钟为粒度的全包用电价格并把完整结果写入传感器属性供前端图表使用。使用时请把YOUR_CONFIG_ENTRY_ID替换为你的 easyEnergy 配置条目 IDtemplate: - triggers: - trigger: time_pattern minutes: 0 actions: - action: easyenergy.get_energy_usage_prices response_variable: prices data: config_entry: YOUR_CONFIG_ENTRY_ID incl_vat: true granularity: quarter price_type: invoice sensor: - name: Energy prices device_class: timestamp state: {{ now() }} attributes: prices: {{ prices }}该模板传感器通过time_pattern触发器在每小时整点执行一次动作用response_variable捕获响应再通过attributes暴露给前端。由于 easyEnergy 的电价在发布后通常不会再变化这种每小时刷新一次的策略与集成默认的 10 分钟轮询相比在保证数据新鲜度的同时显著减少了对 API 的调用频率。六、集成行为与价格口径关键前提理解该动作的返回数据需要先了解 easyEnergy 集成的整体行为。根据 easyEnergy 集成文档 中的说明轮询频率集成每 10 分钟轮询一次 easyEnergy API 更新数据。发布节奏次日电价与天然气价格每天发布对于已发布的价格可以通过动作配合start/end参数按日期获取。若动作无法取到某日尤其是次日价格通常是因为该日价格尚未发布应等待 easyEnergy 发布后再执行并将start与end设为同一天YYYY-MM-DD格式同时在 YAML 中给日期加引号保持字符串类型。传感器体系集成会为电和天然气分别建立传感器。对电能而言存在当前小时与下一小时市场价格、当日平均价、最低价、最高价、最高/最低价时刻、当前价相对最高价的百分比等实体其中用电usage侧还额外提供一个价格不高于当前价的小时数统计回电return侧则是价格不低于当前价的小时数。结合这些数据可以在一天中最便宜的几个小时切换设备运行。天然气特例动态天然气价格全天固定因此只创建当前小时与下一小时两个价格实体。价格口径重要限制传感器价格是含增值税的裸价格不包含能源税energy tax和采购成本purchase costs。集成本身没有配置项来叠加这两项费用因此文档明确建议通过模板传感器自行补充。计算全包价的官方蓝图仓库 blueprints/integrations/easyenergy 中提供了一份官方蓝图用于在当前小时用电价格基础上叠加能源税与采购成本得到最终的电费口径价格sensor: name: easyEnergy all-in current price unique_id: easyenergy_all_in_current_price icon: mdi:cash unit_of_measurement: €/kWh state_class: measurement state: {% set current_price states(price_sensor) | float(0) %} {{ (current_price energy_tax purchase_costs) | round(2) }}该蓝图的核心逻辑选择 easyEnergyEnergy market price - Usage设备上的Current hour传感器作为价格来源输入能源税EUR/kWh与采购成本EUR/kWh步进 0.001用 Jinja 把三者相加并保留两位小数。由于模板输出为测量类状态可以直接用于能量仪表盘的成本估算。七、低电价驱动的自动化蓝图仓库中还提供了两份基于价格传感器的自动化蓝图它们以价格跌破阈值为触发条件而不是在每个价格更新点都执行因此非常适合低电价时段的智能调度easyEnergy 低电价通知蓝图当用电价格跌破指定阈值EUR/kWh支持负值时向选定的notify实体发送包含当前电价的Low energy price通知。该自动化仅在价格跨越阈值下行时触发一次若在启用时价格已低于阈值不会立即触发。easyEnergy 低电价开关蓝图当价格跌破阈值时打开一个开关。文档特别提示对于洗碗机这类设备应选择能真正启动程序的开关仅接通电源不一定能开始洗涤周期并且价格回升后开关会保持打开状态。这两份蓝图在选择传感器时都要求使用Current hour用电价格传感器而非回电、天然气、下一小时或日汇总传感器阈值的价格口径与第六节一致含增值税、不含能源税与采购成本。八、注意事项与故障排查价格与账单不符Home Assistant 显示的价格往往低于能源公司账单价格原因是传感器价格未包含能源税与采购成本。此时应参考 全包价蓝图 创建模板传感器补齐差额。次日价格不可用多为目标日价格尚未发布。等待 easyEnergy 发布后以start/end均指向同一天YYYY-MM-DD需加引号的方式重新执行动作即可。动作与传感器的关系easyenergy.get_energy_usage_prices不依赖任何实体仅依赖配置条目因此在自动化中可以独立于传感器使用但它与集成创建的传感器共享同一数据源与价格口径取数结果应当一致。移除集成时该集成遵循标准的集成移除流程若使用了基于响应数据的模板传感器需要手动删除这些模板传感器参见 easyEnergy 集成文档 的Removing the integration一节。相关动作联动需要同时对比买入与卖出电价如判断自用还是回馈更划算时可与 easyenergy.get_energy_return_prices 配合使用需要天然气价格时参见 easyenergy.get_gas_prices。三个动作共享相同的config_entry选择方式与timestamp/price响应结构。九、小结easyenergy.get_energy_usage_prices是连接 easyEnergy 动态电价与 Home Assistant 自动化能力的核心入口。本文从 UI 配置、YAML 参数、响应数据结构到模板传感器与官方蓝图完整梳理了该动作的使用链路。关键要点可归纳为四条其一动作以配置条目而非实体为目标其二granularity、price_type、start/end组合决定了取数范围与口径其三响应数据为prices列表timestampprice可直接写入模板传感器属性供图表渲染其四返回价格不含能源税与采购成本面向账单对比时应叠加 全包价蓝图 中定义的额外费用。掌握这些细节后你便可以构建出电价低谷自动洗衣、低电价即时通知、当日电价可视化等一系列实用的动态电价自动化。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表