Home Assistant 教程:自动化入门指南

导航至

在这篇文章中,我们将深入了解 Home Assistant,这是一个用于连接您家中智能设备的开源平台。我们将详细介绍 Home Assistant 的每个重要部分:仪表板、集成、插件、设备和实体、自动化、脚本和场景。此外,我们还将介绍如何设置 Home Assistant 并使用 Home Assistant 的图形用户界面创建自动化

Home Assistant 如何工作?

Home Assistant 是一个开源智能家居平台,可让您连接智能家居设备,例如电视、风扇、摄像头、恒温器、灯和传感器。作为用户,您可以使用 Home Assistant 用户友好的统一 Web 用户界面构建复杂的自动化。

使用 Home Assistant,您无需成为程序员或计算机科学家即可使设备与您的智能家居协同工作。您可以简单地构建和测试自动化,而无需编写一行代码。Home Assistant 也可以根据您愿意投入的时间变得非常复杂。

Home Assistant 的重要组成部分

Home Assistant 具有一些非常重要的功能,其中包括以下内容

  • 仪表板
  • 集成
  • 插件
  • 设备和实体
  • 自动化
  • 脚本
  • 场景

现在让我们仔细看看它们中的每一个。

Home Assistant 仪表板

安装并登录 Home Assistant 后,您首先看到的是仪表板。仪表板是 Home Assistant 中的一个页面,用于显示 Home Assistant 中可用的信息。您添加到 Home Assistant 的设备和服务越多,可用于显示的信息就越多。每当添加设备或服务时,Home Assistant 都会自动将其信息添加到默认仪表板。但是,如果您愿意,您可以控制并准确显示您想要的内容。

仪表板由卡片组成,这些卡片显示有关 Home Assistant 中的设备和服务的信息。这些卡片可以通过用户界面添加,也可以通过编辑 YAML 脚本添加。即使 Home Assistant 在很大程度上可以通过用户界面进行配置,您仍然会运行 YAML 脚本。因此,您必须正确理解它。

Home Assistant 集成

集成是可以在 Home Assistant 中安装的其他软件,允许它连接到不同的平台,从而引入数据和设备。安装集成后,来自这些集成的数据在 Home Assistant 中表示为设备和实体。目前,Home Assistant 中有 1000 多个内置集成,这些集成完全由 Home Assistant 社区支持。内置集成是 Home Assistant 直接支持的集成,它们通常在您的 Wi-Fi 网络上自动发现。对于自定义集成,还有一个 Home Assistant 社区商店,它可以作为集成本身安装,并允许您访问数千个此类自定义集成。

Home Assistant 插件

有时集成和插件会相互混淆,但我们应该将它们区分开来,因为它们实际上彼此不同。根据您的安装类型,您可能能够也可能无法安装插件。插件是与 Home Assistant 以及运行 Home Assistant 的任何硬件一起运行的应用程序。它们可以在 Home Assistant 中轻松快速地安装、配置和运行。

虽然集成仅将 Home Assistant 与许多应用程序、设备和服务连接起来,但插件提供了额外的功能。

插件的一个示例是 Z-Wave JS 服务器,它与 Home Assistant 一起运行,充当所有 Z-Wave 设备的服务器。然后,这些设备使用 Z-Wave JS 集成连接到 Home Assistant。其他示例是文件编辑器,它们允许您在 Home Assistant 中直接编辑 Home Assistant 配置文件。

Home Assistant 设备和实体

Home Assistant 中的实体表示系统中功能的逻辑分组。另一方面,设备表示通过集成连接到 Home Assistant 的物理设备。但是,可以独立添加实体,而无需将它们分组到设备中。它们不仅包括设备,还包括自动化、脚本和场景。例如,Home Assistant 中的 Philips Hue 运动传感器包括温度、照度、占用传感器和运动检测器,每个传感器都表示为设备分组中的单独实体。实体可以具有不同的类型,例如二进制传感器和运动传感器,并且表现出各种状态。例如,运动传感器在检测到运动时可能具有“开启”状态,而在未检测到运动时具有“关闭”状态。数值状态也是可能的,例如温度传感器的状态为 70°F。此外,实体可以具有属性,这些属性提供有关其状态的更多信息。

Home Assistant 自动化

自动化是使某些操作自动发生的过程。Home Assistant 中的自动化通常包括以下内容

  • 触发器:这是这些操作发生的提示。
  • 条件:这些是规定操作是否应该发生的规则。
  • 操作:这表示当自动化被触发时 Home Assistant 将执行的操作。

以下是一个简单自动化的示例。

像 Philips Hue 传感器这样的运动传感器设备具有运动传感器实体。当该实体打开(意味着有运动)时,它会触发一个自动化,从而打开灯。自动化有一个条件,即必须在晚上 8 点之后。因此,灯仅在夜间亮起。

Home Assistant 脚本

脚本与自动化类似,因为它们允许您按步骤顺序运行多个操作。这里的主要区别在于脚本没有触发器,这意味着它们无法自动运行。它们必须由自动化调用。例如,如果您有一系列想要在多个自动化中运行的操作,则可以创建一个脚本,并且每个自动化都可以调用该脚本。这样,如果需要更改操作,您只需更改一个脚本而不是两个自动化。在脚本中,如果需要,可以在步骤之间添加延迟。您还可以使用卡片从 Home Assistant 仪表板触发脚本。

投影仪设置就是一个脚本示例。我们选择将其作为脚本是因为,假设您有两种不同的方式来触发投影仪设置运行。首先,您想要使用仪表板按钮和一个任何人都可以按下的智能物理按钮来运行设置。现在,当您按下开始按钮时,它会触发自动化来调用投影仪设置脚本。此脚本会降低投影仪的屏幕,打开投影仪,并选择 HDMI 作为输入。

Home Assistant 场景

场景是一组实体的保存状态,可以用作 Home Assistant 自动化或脚本。例如,您可以设置两个不同的场景,一个用于早晨,一个用于晚上,这两个场景都具有特定的亮度和灯光颜色,然后您可以运行一个自动化,根据一天中的时间更改场景。这可能看起来像自动化或脚本可以完成场景可以完成的事情,因此没有必要设置场景。然而,与此相反,自动化和脚本用于操作,而场景用于设置实体的状态。自动化和脚本遵循顺序流程,如果未满足触发器,则可以中断,而场景则同时执行。

设置 Home Assistant

设置 Home Assistant 分为两个步骤

  • 安装
  • 初始设置向导

安装

在系统上设置 Home Assistant 的第一步是安装它。有多种方法可以在您的设备上启动并运行 Home Assistant,其中一些方法包括以下内容

要启动并运行 Home Assistant,您需要访问 Home Assistant 官方网站 www.home-assistant.io,然后按照为各个安装选项提供的说明,从安装选项列表中进行选择。

初始设置向导

在初始设置向导步骤中,您需要填写空白字段(名称、用户名、密码),输入您的详细信息以创建帐户。填写完您的详细信息后,您现在可以点击“创建帐户”。您可以在下面看到详细信息。Home Assistant 初始设置向导

下一页显示字段和选项,供您设置您的住宅名称、位置和单位系统。您可以使用地图手动获取您首选的位置,也可以通过点击“检测”选项简单地检测您的位置。此外,还需要根据您的位置设置时区、货币和单位系统。之后,点击“下一步”。您可以在下面的图片中看到详细信息。为您的 Home Assistant 设置名称、位置和单位系统

下一个屏幕询问您是否愿意与 Home Assistant 共享任何数据。这完全由您自己决定。之后,点击“下一步”。您可以在下面看到详细信息。与 Home Assistant 共享数据

现在,下一个屏幕显示我们可以导入到 Home Assistant 中的许多设备。您可以选择立即设置这些设备,也可以稍后设置。最后,点击“完成”。您可以在下面的图片中看到详细信息。Home Assistant 设备和服务

太棒了!我们现在可以看到我们的 Home Assistant 仪表板了!Home Assistant GUI

在 Home Assistant 中设置自动化

在 Home Assistant 中配置自动化有两种方法。您可以使用 Home Assistant 用户界面中的内置自动化编辑器,也可以在 YAML 脚本中手动编写自动化。在这篇文章中,我们将使用 Home Assistant 中的内置自动化编辑器。

以下步骤向您展示如何构建一个基本自动化,该自动化在前门打开时发送一个简单的通知。

自动化和场景

  • 您可以在设置下找到自动化编辑器,在设置下,您将找到自动化和场景。现在当设置打开时,点击自动化和场景

  • 点击右下角的创建自动化

  • 现在您可以选择使用蓝图或从空自动化开始。选择从空自动化开始,因为我们的目标是创建一个新的自动化。

  • 现在您有了自动化的三个部分:触发器条件操作,这些部分在文章前面已定义。现在选择触发器下的+ 添加触发器以添加触发器。

触发器

  • 对于触发器,您将在其下看到许多触发器选项可供选择,我们将使用状态。现在从列表中选择状态。在 实体 的空白处,键入 Front Door。在搜索结果中,选择您的前门实体。在中,分别用关闭打开填写空白。现在我们已经完成了触发器,接下来是添加条件。现在选择条件下的+ 添加条件。您可以在下面看到详细信息。

条件

  • 条件下,您将找到一个选项列表供您选择。这些条件中的任何一个都需要为真,自动化才能继续。由于在我们的例子中,我们仅发送通知,因此我们将确保自动化仅在人们离开时发生。因此,我们将使用太阳作为该上下文的代理。对于条件,我们将使用选项列表中的状态。现在我们将分别用 SunAbove Horizon 填写实体和状态的空白。请记住,只有当这些条件为真时,自动化才会继续。现在让我们继续进行操作,因为我们已经完成了条件。现在选择操作下的+ 添加操作。您可以在下面看到详细信息。

操作

  • 操作下,您将找到一个选项列表供您选择。现在我们将选择调用服务。要填写服务的空白,请在搜索栏中键入 mobile(因为我们打算使用移动应用程序接收通知)。遗憾的是,您可能在搜索结果中找不到通知服务。但是,然后从搜索结果中选择任何名称中带有“mobile_app”的服务。此外,既然您已经做出了选择,系统将提示您可以使用的其他属性。重要的是要注意,没有复选框的选项是强制性的,而带有复选框的选项是可选的。让我们选中消息选项,并为其分配标签前门已打开。您可以在下面的图片中看到详细信息。

  • 现在,如果我们愿意,我们可以选中标题,为其提供标题门通知。最后,点击保存。

太棒了!该过程已完成。因此,每当有人打开前门时,您都会收到如下通知:

摘要

Home Assistant 使​​用户能够自动化和控制家用电器,如摄像头、恒温器、照明和传感器。要使 Home Assistant 软件在您的系统上启动并运行,您必须为您的安装选择最方便的选项。Home Assistant 官方网站上提供了安装选项列表以及在您的系统上成功安装 Home Assistant 的必要步骤。完成安装后,您应该使用初始设置向导设置您的个人 Home Assistant 以连接您的智能家居设备。您可以使用 Home Assistant 中的 GUI 功能创建自动化,您需要在其中设置触发器、条件和操作,这些是自动化成功运行的必要功能。

这篇文章由 Theophilus Onyejiaku 撰写。Theophilus 拥有超过 5 年的数据科学家和机器学习工程师经验。他在数据科学、机器学习、计算机视觉、深度学习、对象检测、模型开发和部署领域积累了专业知识。他撰写了 660 多篇关于上述领域、Python 编程、数据分析等的文章。