锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

Home Assistant 家庭智能中心

时间:2023-09-05 03:07:00 内置多种智能传感器

简介

Home Assistant 是一个基于Python 开发的开源家庭自动化平台。可跟踪和控制家庭中的所有设备,实现自动化控制。 可完美运行Raspberry Pi。

简单介绍一下优点:

1完全本地化,不受服务器限制

2.苹果等各种平台和设备支持广泛的设备,全面开放HomeKit,博联

3.自定制开发,功能强大,可能性无限

4.用户基数大,教程资源丰富

缺点需要折腾,有问题需要自己解决。

2.安装,参考官网wWw.home-assistant.io,各种设备安装简单,树莓派、群辉

安装插件HACS

参考:

  • Home Assistant 中文网

引言

米家无疑是智能家居市场的垄断地位。但米家对空调控制的优化并不好。首先,每次打开空调,空调都是从 16° 不记得上次的温度了。米家智能中的温度风量只能二选一 16° 以及高速或其他温度和自动风速。就在一个月前,一直很稳定 Yeelight 突然抽气,无线开关开始失控。反复反馈失败后,被迫弃坑。你也受够了一成不变的米家吗?厌倦了多个 App 频繁切换?你不应该适应智能家居系统。现在,它甚至不需要太多 Linux基础,几串代码 DIY 智能家居控制系统最适合自己。

Homeassistant 能做什么

最早接触的 Homeassistnt (下简称HA)将米家设备接入 Homekit 用 Siri 和自动化管理设备。 HA 版本迭代,HA 越来越稳定和个性化。HA 不光是连接 Homekit 与智能家居的桥梁是管理中心,使家居更适合您的需求。

你有没有想过:

  • 开关电脑时,自动开关台灯和氛围灯。
  • 用 Siri 遥控家里所有的智能设备和空调。
  • 日历与灯光同步,不仅提醒你声音,还提醒你味道。
  • 在面板上直观地看到家里的温湿度,NAS 运行状态,明天安排,车辆定位。
  • 任何开关和设备状态都成为智能家居的一部分。

人工「智能」Siri 不能打开电脑,但可以打开「电恼」

如果你沉迷于更智能的家,更协调统一的管理,那么你必须尝试最新版本 Homeassistant 。下面,我将用实例演示 Homeassistant 安装部署。

安装 Homeassistant

事先准备

Nas 、软路由,树莓派,PC,Homeassistant 它可以安装在任何机器上。稳定是智能家居网关的关键。本文将安装覆盆子派。

硬件需求:

  • 树莓派(推荐4代) 2G)
  • 32G(或以上)SD卡
  • 网线

首先下载所需树莓派系统并用balenaEtcher刷入。拔出SD卡后插入电脑,在 root 根据目录创建的新文本文档更名为SSH。使用终端、 putty 连接树莓派,默认密码连接 raspberry(输入密码时不显示)。 Win 系统可使用finalshell查看当前网络下载速度的树莓派。

sudo timedatectl set-timezone 'Asia/Shanghai'

设置时区后,重新启动进入下一步。

一键安装

经过开发者和极客用户的不断努力,普通用户的入门门槛越来越低。本文的使用neroxps制作的一键安装脚本安装。该脚本集成 Docker 国内源和的安装和更换Hassio安装。

sudo -s
wget https://code.aliyun.com/neroxps/hassio_install/raw/master/install.sh chmod a x install.sh ./install.sh

回车后选择自己的设备。值得注意的是,由于国内网络的原因,下载速度会很慢或卡住。Ctrl C停止任务后再次操作脚本。此外,还可以在路由端添加代理规则,使下载更加顺畅。

官方文档安装方法的优点是更稳定。但由于国内网络的限制,安装方法可能会失败,无法安装插件。

安装完成后,即可通过http://树莓派IP:8123登录 HA 管理界面。

配置 Homeassistant

HA 设备的接入方式不是一键连接,需要在树莓派目录中\usr\share\hassio\homeassistant修改配置文件configuration.yaml

进入 HA 管理界面,点击侧栏Supervisor中的Add-on store,安装并启动File editor网页上可以对插件configuration.yaml直接编写文件。

以下将以案例的形式解释设备的接入。

Yeelight

以 Yeelight 以灯带为例(非原生 Homekit 设备)。HA 自动搜索配置不正确 Yeelight 因此,需要手动添加灯带。从路由器或 App 中获取设备的 IP 地址可无缝接入 HA。

复制以下内容configuration.yaml中并更改 IP 地址。(注意yaml格式及缩进)

# 该方法不适用于支持 Homekit 设备 discovery:   ignore:     - yeelight yeelight:     devices:       192.168.1.110:         name: 灯带 1       192.168.2.111:         name: 灯带 2

配置-服务器控制重新启动后,您可以在主页上看到设备。

Broadlink博联全系列

博联接入 HA 以博联智能开关为例,

# 「switch:」只需填写一次 switch:   - platform: broadlink     host: IP地址 1     mac: MAC地址 1   - platform: broadlink     host: IP地址 2     mac: MAC地址 2

XIAOMI小米系列

与其他智能设备不同,小米设备不仅需要获得 IP 还需要获取设备地址API token

Token 获取方法有很多,这里介绍最简单的一种。SchumyHao1分享,下载 apk 在手机安装。在 app通用设置-网络信息设备可以在中间看到 token 。iOS 用户必须下载安卓模拟器操作。

以小米智能开关为例,

# 「switch:」只需填写一次 switch:   - platform: xiaomi_miio     host: IP 地址     token: TOKEN 码

需要使用小米智能网关key连接。或者使用以前的 App ,点击网关页面关于,多次点击插件版本位置开发者模式。局域网通信协议便可获取key

xiaomi_aqara:   discovery_retry: 10   gateways:     - key: 获取的密码

连接成功后,小米网关下的所有智能硬件将自动连接 HA 。

Homekit

设备连接 HA 后,可利用 HA 内置的 Homekit 插件将所有设备连接到家庭,使用 iPhone 统一控制configuration.yaml中写入:

homekit:     exclude_entities: #以下实体不在 Homekt 中显示 (非必填,格式展示请勿复制)
      - binary_sensor.switch_xxxxxx
      - binary_sensor.wall_switch_xxxxxx
      - ……

重启 HA ,在通知中可看到二维码和 8 位连接码,扫描或手动接入即可。原生 Homekit 设备需先在家庭 App 中移除, HA 会自动发现,输入 Homekit 设备 8 位连接码后即可接入 HA 。

更多设备的接入可在 官方整合文档 中查询。

至此,Homeassistant 的设备接入工作完成。

Homeassistant 自动化

接入 HA 的设备,无论是开关、传感器(温湿度等特殊除外)、日历等,一般表示为 on 和 off 两个状态,HA 监测设备状态、调用服务达到家居自动化目的。

HA 前端已集成了自动化配置界面,下面将演示基础的自动化配置流程。

Google 日历 中有活动时打开灯泡为例,

在 HA 管理界面, 配置 - 自动化 中,点击右下角 + 号创建新自动化。当有活动时,日历状态从 off 变为 on ,那么将调用 switch.turn_on 服务。

当然,用户也可直接编写 automations.yaml 文件,以 小米无线开关 为例,

- alias: 工作模式
  trigger:
    platform: event
    event_type: xiaomi_aqara.click  
    event_data:
      entity_id: binary_sensor.switch_xxxxxxxxxxx 
      click_type: single 
  action:
#打开电脑
    - service: switch.turn_on 
      entity_id: switch.mypc
#开灯并调到指定颜色
    - service: light.turn_on 
      data:
        entity_id: light.table_light
        brightness: 255
        rgb_color: [255, 145, 26]
#打开空调并调整到指定温度
    - service: climate.set_temperature
      data:
        entity_id: climate.bedroom
        temperature: 23
        hvac_mode: cool

保存后,在 服务器控制 中 重载自动化 1 即可,无需重启。

请在用户资料中开启高级模式

自动化保存后会以开关形式在 HA 和 Homekit 中显示,该开关也嵌套在新的自动化中。

课程表接入 HA ,在上课时开启房间最亮的灯,其效果不亚于上课睡觉时被点名回答问题。以至于我每次只能心惊胆战地睡觉。其次是启动电脑时开启一系列开关,HA 有自带集成 wake on lan 可 Ping 电脑,但是我总觉得不太安稳。我这里使用的是魔改的小米门窗传感器检测电脑电源状态。

Homeassistant 进阶

截至 0.109 版本,HA 可接入设备已经超过 1500 种。 PC 、 Synology 、特斯拉等都可以通过 HA 的内置插件直接连接。但是其他用户开发的自定义插件、主题、卡片还需手动添加。下面将举例演示如何在 HA 中安装自定义插件。

树莓派 Samba 安装与部署

安装 samba

sudo apt-get update
sudo apt-get install samba samba-common-bin

配置 samba

sudo nano /etc/samba/smb.conf

将以下内容(注意格式)添加到文件最下方,Ctrl+X 退出并 Y 保存文件。

[Hass]
    comment = Homeassistant
    valid users = pi,root
    path = /usr/share/hassio
    browseable = yes
    writable = yes

重启 samba 服务

sudo samba restart

添加登录账户并创建密码。

sudo smbpasswd -a pi

修改文件权限

sudo chmod 777 -R /usr/share/hassio

在访达或此电脑中输入 //树莓派IP 以账户名 pi 访问 \hass\homeassistant 配置文件。

插件安装

由于 HA 没有内置红外码库,用户想要遥控空调,只能自行学码或者安装插件。

下面演示 SmartIR 空调遥控插件的安装流程。

  • \homeassistant 下 创建新文件夹 custom_components
  • 下载 插件,将压缩包中 smartir 文件夹拖入\homeassistant\custom_components 中 。

custom_components文件夹需自行创建

  • 在 configuration.yaml 中写入:
#博联红外遥控器
smartir:
switch:
  - platform: broadlink
    host: 192.168.10.10          
    mac: '00:00:00:00:00:00'     
climate:
  - platform: smartir
    name: Office AC               
    unique_id: office_ac          
    device_code: 1000       #参照插件目录获取空调代号
    controller_data: 192.168.10.10       #博联RM IP地址
    temperature_sensor: sensor.temperature  #温湿度传感器在 HA 中的ID名
    humidity_sensor: sensor.humidity
    power_sensor: binary_sensor.ac_power

重启 HA 后可见空调控制面板。

更多插件可访问 官方论坛 。

官方插件市场 HACS

Add-store 是功能性插件下载中心, HACS 则是自定义 UI 的下载中心。

HACS 本质上是插件,安装方式同上方。 下载 解压后将整个 hacs 文件夹拖入 custom_components 后重启即可完成安装。

之后在 配置 右下角 + 号中搜索 「hacs」。

Github 个人访问令牌请从 这里 创建。无需勾选其他选项,创建完成后复制粘贴即可完成配置。

HACS 中包含了用户制作的卡片样式,主题等,可一键安装。主题安装后,可在用户资料中更改。卡片需自行配置。

下面以 button-card 为例,在 HACS PLUGINS 中选择自己想要的卡片下载安装后,点击 ADD TO LOVELACE 按钮。

在  概览 右上角  配置UI 中添加 水平堆叠 卡片,将卡片依次加入。

type: 'custom:button-card'   #卡片类型(必填)
entity: switch.tai_deng  #设备ID (必填)
icon: 'mdi:desk-lamp'  #图标
size: null  #根据需要配置
styles:  
  name:
    - font-size: 13px
    - align-self: middle

官方提供了部分图标,可在 这里 选取。用户也可将自行制作的图标放在  \homeassistant\www 下,用 entity_picture: /local/xxx.png 调取。推荐在 配置 - 自定义 中进行全局更改

Homeassistant × 屏幕

树莓派上连接一块触屏,登陆 HA 管理界面,就可以直接控制家里的智能设备。

但这个方法有许多不足。大多小尺寸触摸屏(10 寸以下)非独立供电,无法自动化熄屏。DIY的小屏幕虽然可以通过连接智能开关熄屏,但是触控质量参差不齐,不建议大家踩坑。秉持「万物都应自动化」原则,我淘了一块亚马逊平板,1920*1200 的分辨率,价值 300 元。大家也可以选择手边的闲置安卓平板。

HA 提供 App ,需在 Google Play 上下载,若无此条件也可直接使用浏览器、将网页打包成 app或使用 APKPure 下载替代 App。值得注意的是,老旧安卓系统内「WebView」版本过低 时会导致自定义UI显示错误。需在 Google Play 上更新 WebView 版本。

安卓系统开发者模式中有「充电不关闭屏幕」选项,但是依旧会降低屏幕亮度。如有需要可下载app Tasker ,创建充电常量,断电熄屏任务。将充电线插在智能开关上,创建自动化便可在指定时间,或随智能灯泡开关屏幕。

我将只把最常用的开关放在了首页,其他是天气、温度、课程表、汽车状态等信息,尽量做到简单。

至于为什么要把车辆保养状态这种没用的信息放进去,仅仅是我觉得「把汽车接入智能家居」这件事太酷了。

最后,官方文档、官方论坛、瀚思彼岸、ioBroker将会帮到你很多。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章