Home Assistant 割草机启动全指南:深入解析 lawn_mower.start_mowing 动作

发布时间:2026/9/17 4:19:55
Home Assistant 割草机启动全指南:深入解析 lawn_mower.start_mowing 动作 Home Assistant 割草机启动全指南深入解析 lawn_mower.start_mowing 动作【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io本篇技术指南围绕 Home Assistant 中lawn_mower.start_mowing动作展开完整讲解如何在自动化automation与脚本script中启动或恢复机器割草机的割草任务涵盖 UI 可视化配置、YAML 字段参考、目标target选择机制与实战自动化示例并结合lawn_mower域的实体状态模型、相关触发器与条件帮助你构建可落地的割草自动化方案。lawn_mower 域与 start_mowing 动作概览Home Assistant 通过Lawn mower集成ha_domain: lawn_mower自 2023.9 版本引入见 source/_integrations/lawn_mower.markdown 的ha_release元数据将兼容的机器割草机接入智能家居体系用于监控割草机是否在割草、暂停、返回充电坞、已停靠或报错并围绕这些状态构建自动化。lawn_mower.start_mowing是这一域下的核心控制动作官方定义为启动或恢复割草机的割草任务Starts or resumes a lawn mowers mowing task典型使用场景包括按计划启动一次例行割草从暂停状态恢复被中断的割草任务。理解割草机实体的状态机要正确使用启动动作首先需要理解lawn_mower实体可能处于的状态来源source/_integrations/lawn_mower.markdown状态含义Mowing割草机正在割草Docked割草完成已停靠在充电坞Paused割草机曾处于活动状态现被暂停Returning割草机正在返回充电坞Error割草机活动期间遇到错误需要人工介入Unavailable实体当前不可用Unknown状态尚未可知start_mowing动作正是驱动实体从Docked、Paused等状态向Mowing状态迁移的入口而判断迁移是否生效可以结合lawn_mower.is_mowing条件与lawn_mower.started_mowing触发器详见下文联动体系。在 UI 中通过自动化或脚本启动割草如果你倾向于可视化构建Home Assistant 会在界面中逐步引导完成该动作的配置——选择目标、微调少量选项、保存即可无需编写 YAML见 actions/ui_header.md 的说明。操作步骤如下进入SettingsAutomations scenes。打开一个现有的自动化或脚本或选择Create automationCreate new automation。若创建的是新自动化在When部分添加一个触发器脚本不需要触发器它们由其他调用方触发运行。在Then do部分选择Add action。选择要控制的设备在By target下参见 Targets选择要启动的割草机。从该目标对应的动作列表中选择Start lawn mower。选择Save。界面中的可选参数该动作在 UI 中除目标target外没有其他额外选项。在 YAML 中使用 start_mowingYAML 中通过lawn_mower.start_mowing引用该动作。基本示例如下与 source/_actions/lawn_mower.start_mowing.markdown 中的示例一致action: lawn_mower.start_mowing target: entity_id: lawn_mower.backyard上述配置将启动lawn_mower.backyard的割草任务。YAML 字段参考字段类型必填说明actionstring是固定为lawn_mower.start_mowingtargetmap是动作的作用对象可指向实体、设备、区域、楼层或标签详见下文除 target 外该动作在 YAML 中也没有额外选项见 actions/yaml_header.md 对字段引用格式的说明。Targets动作的作用对象start_mowing动作必须指定 target。target 是动作的作用对象你可以将动作指向单个实体、设备、区域、楼层或标签Home Assistant 会对目标背后每一个匹配的lawn_mower实体执行该动作详细说明见 actions/targets.md实体Entity某一个具体的lawn_mower实体例如lawn_mower.living_room。设备Device某一设备所属的全部lawn_mower实体。区域Area某个房间或区域内的全部lawn_mower实体。楼层Floor某一楼层上的全部lawn_mower实体。标签Label共享某一标签的全部lawn_mower实体。你还可以在同一次动作中混合选择不同类型的 target。例如同时添加一个具体实体和一个区域动作会对两者一并执行。实战示例按计划定时启动割草官方文档给出了一个典型的定时启动自动化让割草机在设定时间自动开始工作例如在一个干燥的工作日早晨。触发器时间 09:00动作Start lawn mower目标Backyard mower对应完整 YAMLautomation: - alias: Start mowing in the morning triggers: - trigger: time at: 09:00:00 actions: - action: lawn_mower.start_mowing target: entity_id: lawn_mower.backyard若希望更进一步例如只有当天不下雨才启动可以在该自动化中加入天气类条件weather实体状态或condition: state后再执行动作使割草计划更贴合实际环境。与暂停、回坞及相关触发器/条件联动start_mowing并非孤立动作它与lawn_mower域下的其他动作、触发器、条件共同构成完整的割草自动化体系。文档 front matter 中声明了它的相关动作related_actionslawn_mower.pause暂停割草机当前任务例如在穿越草坪时短暂停止随后可用start_mowing恢复lawn_mower.dock将割草机送回充电坞例如下雨时提前结束作业。围绕状态变化Home Assistant 还提供了一系列触发器与条件见 source/_integrations/lawn_mower.markdown 的 triggers/conditions 引用触发器lawn_mower.started_mowing、lawn_mower.paused_mowing、lawn_mower.returned_to_dock、lawn_mower.errored、lawn_mower.started_returning条件lawn_mower.is_mowing、lawn_mower.is_paused、lawn_mower.is_docked、lawn_mower.is_returning、lawn_mower.is_encountering_an_error。例如用lawn_mower.started_mowing触发器在割草开始时通知家人来源source/_triggers/lawn_mower.started_mowing.markdownautomation: - alias: Notify when the mower starts triggers: - trigger: lawn_mower.started_mowing target: entity_id: lawn_mower.backyard actions: - action: notify.send_message target: entity_id: notify.my_device data: message: The backyard mower has started mowing.该触发器支持behavioreach/first/all默认each与for状态保持时长默认00:00:00两个可选参数同时需要注意只有实体从已知状态进入Mowing时才会触发若割草机从unavailable/unknown恢复则不会触发该触发器。这对于设计启动后确认是否真正开始工作的自动化很有参考价值。类似地在下雨场景中可组合lawn_mower.is_mowing条件与lawn_mower.dock动作实现下雨即回坞automation: - alias: Dock the mower when it starts raining triggers: - trigger: state entity_id: binary_sensor.rain_detected to: on conditions: - condition: lawn_mower.is_mowing target: entity_id: lawn_mower.backyard actions: - action: lawn_mower.dock target: entity_id: lawn_mower.backyard界面中的割草机控制在仪表盘上lawn_mower实体卡片会直接呈现常用的控制命令按钮方便不通过自动化也能手动启动或回坞割草机如下图所示图片来源source/images/dashboards/features/lawn_mower_commands.pngGood to know使用前提与注意事项并非所有割草机都支持该动作start_mowing只对支持启动割草任务的割草机生效。具体能力取决于底层割草机集成是否实现了对应的命令支持。从暂停恢复割草机被lawn_mower.pause暂停后可使用lawn_mower.start_mowing恢复其割草任务。结合状态验证由于动作本身无返回值校验建议在关键场景下结合lawn_mower.started_mowing触发器或lawn_mower.is_mowing条件来确认割草任务确实已启动。小结lawn_mower.start_mowing是 Home Assistant 割草机自动化的核心启动入口通过 UI 可视化配置或 YAML 直接引用均可使用其唯一必填参数是 target实体/设备/区域/楼层/标签。与lawn_mower.pause、lawn_mower.dock两个动作以及started_mowing等触发器、is_mowing等条件组合可以搭建出定时启动—暂停恢复—雨天回坞—完成通知的完整割草闭环。文档与相关实现均位于仓库 source/_actions 与 source/_integrations/lawn_mower.markdown 中可按需深入查阅。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考