『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 16189|回复: 53

[快速入门] 基于个人理解的新手向HA入门教程1-3

  [复制链接]

9

主题

92

帖子

851

积分

超级版主

Rank: 8Rank: 8

积分
851
金钱
744
HASS币
20
发表于 2022-10-9 22:16:11 | 显示全部楼层 |阅读模式
本帖最后由 SilverWolf 于 2022-10-10 11:12 编辑

目录:

灰色部分还在整理尽请期待
1.    集成与接入
2.    HomeKit
3.    动手搭建属于自己的Home Assistant界面
4.   关于homekit-infused 玩法
5.   待定...
前言
本文面向人群以入门至进阶为主。文章多以个人实践经验为主观判断。描述多少会欠缺一定专业性。
如果教程有错误,产生误导。欢迎大佬们指正。

在B站、瀚思彼岸站内教程有很多,个人推荐新手参照官方文档使用独立物理设备安装HomeAssistant OS (Supervised) 再此就不过多赘述了。
HomeAssistant官网:https://www.home-assistant.io/

装好HomeAssistant后你需要做的就是安装HACS商店

HACS商店是由社区维护的、面向HomeAssistant的扩展商店,在这里你可以使用HACS商店可以安装更多的自定义集成,以便接入更多你想要添加的设备。

关于HACS商店的安装教程在B站、瀚思彼岸有很多,随便搜搜或者看看官方文档,很容易。
HACS官网:https://hacs.xyz/

之后就可以添加你自己的配件啦。
通常情况下大部分设备你可以在Home Assistant的
图片1.png
以集成的方式将你的设备添加至Home Assistant当中。
图片2.png
例如使用Xiaomimiio以小米设备云的方式把米家智能设备接入Home Assistant……

因为每个人家中的设备都不同,所以集成的需求每个人都不一样。因此,你需要根据自己的需要选择对应的集成以及相应的接入方法。

以下我以本人所持有的设备进行列举
我的设备和接入方式清单
  
设备
  
接入方式
备注
BOSE Soundtouch
原生集成:Soundtouch

Sony国行电视85X95J
原生集成:Sony  bravia TV
  
原生集成:Android  TV
需要预先启用电视的adb调试。
LG ThinQ洗衣机
HACS集成  :
  
LGE  Devices SmartThinQ LGE

石头扫地机器人G10S
  
HACS集成:
  
Xiaomi  Cloud Map Extractor
详见扫地机器人接入
HomePod  mini
原生集成:Apple  TV

Windows  10 PC
原生集成+YAML配置:
  
TCMP(ping)接入sensor

Aqara  VRF空调控制器
原文:
  
bilibili.com/video/BV1Wu411r72g

YEELIGHT纤玉快装系列吸顶灯
原生集成:YEELIGHT

YEELIGHT易来浴霸S20
原生集成:YEELIGHT

Aqara网关及其设备
HACS集成:Aqara Bridge
需要注册Aqara  Developer。后面会提到
iPhone  13、Android手机
通过App  Store内“Home Assistant“App接入

另外附上由论坛@muxiachuixue提供的解决国内HACS商店访问不了或访问慢的解决方案。


以LG洗衣机为例

通过HACS你可以寻找是否有适用于你设备的集成。
图片3.png 图片4.png

成功下载后你需要重启Home Assistant

PS:所有的集成下载完毕后都需要进行重启。重启后你会在
图片5.png 图片6.png
中发现你的设备。

如果没有,你也可以点击右下角的“➕”手动通过集成的方式完成接入。
图片7.png 图片8.png

大多数设备都可以通过内置的集成或者HACS自定义集成完成接入,但也有部分情况,需要通过写入YAML来进行接入。
Home Assistant代码调试环境搭建
个人推荐在HomeAssistant加载项下安装Studio code server以便调试。

图片9.png
图片10.png

自定义添加实体
通过编辑configuration.yaml可以实现绝大多数自定义集成的安装以及深度自定义。
图片11.png

图示为自定义添加的mqtt传感器实体。

configuration.yaml
使用主从文件树结构来区分主次层级。具体使用方法参阅https://www.home-assistant.io/integrations/中对应的集成

例:(本人自学的,如有错误望指正程序员和老鸟轻喷
sensor:                         #主层级(例如这里就是指配置传感器sensor)
  - platform: template          #第二层级,通常在configuration.yaml里为platform(接入方法,具体使用什么需要根据文档(后期看需求看要不要汉化一篇HA官方的传感器文档以供参考))
    sensors:                    #第二层级
      Ping_tracker:          #第三层级
        friendly_name: "Ping_tracker"            #第四层级
        value_template: "{{ '在家' if is_state('device_tracker.mix2', 'home') else '离线' }}"     #第四层级


HomeKit

Q: 什么是原生HomeKit?

A:  可以在Apple家庭App中直接添加的设备是原生HomeKit支持的设备。通常在你所购买的产品中有如下标记的为原生HomeKit设备

HK.jpg

Q:  HomeKit集成能做什么
A:  HomeKit集成可以以在Apple家庭App中添加桥接器设备的方式将已经接入Home Assistant的实体接入进Apple家庭app,随后便可使用Apple家庭App或Siri来控制HomeAssistant中的设备了。

Q: 为什么我在有原生支持HomeKit设备的情况下还要使用Home Assistant进行接入?
A:  1.你的手机不是iPhone,但需要使用智能控制你的HomeKit认证设备;但你又不想使用你手机品牌自带的家庭智能中枢App或智能家居厂商的App来控制。
     2.通常智能家居厂商所给你提供的app中仅支持你编辑最简单的自动化逻辑(当……发生时,就做……)。而这对于我全屋智能的需求来说是远远不够的。除此之外,设备接入HOMEKIT之后,不支持删除或隐藏现有实体(设备),并且HomeKit截至目前所支持的种类稀少。例如扫地机器人等设备在HomeKit中并没有相对成熟的设备卡。其次,如果未来我不再使用iPhone,全家原生接入HomeKit的设备对我来说是一个 拖累,我不能在脱离Apple生态的情况下控制设备,而先将设备接入HA再通过桥接器接入HomeKit的方法可以完美避免HomeKit生态对于人的约束。 因此,我的方法以HomeAssistant界面为主,HomeKit和Siri作为辅助功能为我的主要用法。

图片12.jpg (某品牌自动化页面)



Homekit的两种配置方式
Homekit的配置方式大体可分为两种。一种可以通过UI以界面的方式进行homekit配置。
{图}
另一种则以在configuration.yaml文件中写入Homekit所对应的相关配置参数。为主。



为方便英语不好的朋友使用,也可以参阅由我的好友ssapiel001基于官方文档人工翻译的文件。

列举一些简单的例子

设备:
  
灯类
  
Light
  
吸顶灯X3  
  
light.mainlight_1
  
light.mainlight_2
  
light.lightbulb_3  (实体ID)
  
筒灯X3
  
light.lightbulb_1
  
light.lightbulb_2
  
light.lightbulb_3
  
台灯X1
  
light.lightbulb_4
  
灯带X1
  
light.lightbulb_5
开关
  
Switch
开关1
  
switch.miswitch_1
  
开关2
  
switch.miswitch_2
风扇
  
Fan
风扇1
  
fan.xiaomifan_1
温控器(空调)
  
Climate
空调1
  
climate.kong_tiao_1

可以以如下方式写(仅供学习理解,不要照抄。按自己的设备需求写入)
homekit:                             #声明作为Homekit的配置文件
  - filter:                          #筛选要从主页工具包中包含/排除的实体。不做修改
    include_domains:                 #包含的域(所要包含的同一类别所有设备)
      - alarm_control_panel        #包含所有的报警器
      - light                      #包含所有的灯
      - media_player               #包含所有的播放器
    include_entity_globs:            #包含除*号外名称相同的设备
      - light.lightbulb_*          #包含所有实体id带有light.lightbulb_的设备
    include_entities:                #包含单一设备
      - fan.xiaomifan_1            #包含实体id为fan.xiaomifan_1的设备
    exclude_entities:                #排除项
      - light.lightbulb_4          #包含实体id为light.lightbulb_4的设备
    exclude_entity_globs:            #排除同类项
      - climate.kong_tiao_*        #排除所有实体id带有climate.kong_tiao_的设备
    #以下部分通常用不到,但在你需要自定义配置设备时需要使用
    entity_config:                   #实体配置
      alarm_control_panel.home:      #实体ID
        code: 1234                   #实体配置内容,参阅Homekit文档。

#Homekit的一个桥接器最大可容纳150个实体。如果你有更多的设备要接入可使用下面的参数添加更多桥接器 

  - name: HASS Bridge 2              #名称随便起(英文就行,注意非法字符)
    port: 21065                      #端口号,不重就行
    filter: 
      include_domains:
        - light
动手搭建属于自己的Home Assistant界面

仪表盘Dashboard
主要的前端仪表板系统被称为lovelace,它提供不同的卡片(Card)来显示信息和控制设备。卡可以显示由连接的设备提供的信息或控制资源(灯、空调和其他设备)。界面设计语言基于 Material Design 。
可以使用原始配置编辑器进行整张页面的编辑。原始配置编辑器通过修改底层 YAML 代码进行自定义界面设计。
图9.png
图6.png

首先你需要先创建一张空白的仪表盘(Dashboard)
图4.png
配置——仪表盘——➕添加仪表盘
图3.png
图2.png
在这里你可以设置仪表盘的名称图标。
这里的图标使用的为Google的MDI图标
输入对应的图标ID选用喜欢的图标。

图1.png
图5.png
通过使用HA官方的卡或通过HACS下载“前端”来获得新的卡片样式。通过组合不同的卡片样式来获得你想要的效果。
每张卡片的使用方式可通过阅读作者文档得知。
图7.png

图8.png
附上我自己写的易来浴霸卡片作为参考。
如果你想更多的了解卡片的用途及写法,可以查看你所下载卡的原作者readme文档。
type: custom:simple-thermostat                  #卡片类型
entity: climate.yeelink_v6_7b00_ptc_bath_heater #实体ID
header:                                         #开头部分
  name: 客卫浴霸                                 #大标题
  icon: mdi:radiator                            #图标
  toggle:                                       #触发
    entity: light.yeelink_v6_7b00_light         #触发的实体ID
    name: 客卫灯                                 #名称
layout:                                         #布局
  mode:                                         #模式
    icons: true                                 #是否显示图标 true是/false否
    headings: true                              #是否显示开头部分
control:                                        #控制部分
  hvac:                                         #温控器配置部分
    'off':                                      
      name: null
    heat:
      name: null
      icon: mdi:white-balance-sunny
    dry:
      name: null
      icon: mdi:water
    fan_only:
      name: null
      icon: mdi:fan
  preset:
    Ventilate:
      name: 换气
      icon: mdi:repeat
    Quick Heat:
      name: 快热
      icon: mdi:weather-sunny
    Defog:
      name: 除雾
      icon: mdi:heat-wave
    Quick Defog:
      name: 快速除雾
      icon: mdi:heat-wave
    'off':
      name: 关
  fan:                                           #风扇控制部分
    low:
      name: 低
      icon: mdi:fan-speed-1
    high:
      name: 高
      icon: mdi:fan-speed-2
我个人并没有使用HA原生的仪表盘作为我的个人界面。相比HA原生,有一个更加强大的界面值得你去了解。
来自github上jimz011大神的界面homekit-infused
我会在下章更新

评分

参与人数 7金钱 +50 HASS币 +20 收起 理由
razor + 2 感谢楼主分享!
jow672 + 5 感谢楼主分享!
relliky + 6 墙都不扶,就服楼主!
jpcugv + 10 高手,这是高手!
+ 20 + 20 感谢楼主分享!
qqkj + 5 膜拜大神!
ssapiel001 + 2 高手,这是高手!

查看全部评分

回复

使用道具 举报

2

主题

9

帖子

232

积分

版主

Rank: 7Rank: 7Rank: 7

积分
232
金钱
213
HASS币
20
发表于 2022-10-9 22:21:44 | 显示全部楼层
前排学习
回复

使用道具 举报

2

主题

53

帖子

642

积分

高级会员

Rank: 4

积分
642
金钱
589
HASS币
0
发表于 2022-10-10 00:32:09 | 显示全部楼层
学习学习
回复

使用道具 举报

16

主题

234

帖子

1463

积分

金牌会员

Rank: 6Rank: 6

积分
1463
金钱
1229
HASS币
0
发表于 2022-10-10 00:53:25 | 显示全部楼层
新手迷茫
回复

使用道具 举报

7

主题

95

帖子

710

积分

高级会员

Rank: 4

积分
710
金钱
615
HASS币
0
发表于 2022-10-10 03:21:00 | 显示全部楼层
非常好教程!楼主和楼主的基友 出的都是精品帖啊!!
期待后续更多的好帖!
回复

使用道具 举报

7

主题

95

帖子

710

积分

高级会员

Rank: 4

积分
710
金钱
615
HASS币
0
发表于 2022-10-10 03:36:45 | 显示全部楼层
楼主的Windows  10 PC  原生集成接入??想问下用的是哪个集成?找了半天没有发现。
回复

使用道具 举报

0

主题

77

帖子

924

积分

高级会员

Rank: 4

积分
924
金钱
847
HASS币
0
发表于 2022-10-10 08:58:03 | 显示全部楼层
感谢分享;插眼学习
回复

使用道具 举报

9

主题

92

帖子

851

积分

超级版主

Rank: 8Rank: 8

积分
851
金钱
744
HASS币
20
 楼主| 发表于 2022-10-10 10:59:47 | 显示全部楼层
qqkj 发表于 2022-10-10 03:21
非常好教程!楼主和楼主的基友 出的都是精品帖啊!!
期待后续更多的好帖! ...

感谢支持,后期帖子再整理中。我和朋友商量着尽可能减少术语多用通俗易懂的语言写后续教程。
回复

使用道具 举报

9

主题

92

帖子

851

积分

超级版主

Rank: 8Rank: 8

积分
851
金钱
744
HASS币
20
 楼主| 发表于 2022-10-10 11:01:25 | 显示全部楼层
qqkj 发表于 2022-10-10 03:36
楼主的Windows  10 PC  原生集成接入??想问下用的是哪个集成?找了半天没有发现。 ...

PC不是原生集成接入的,是写的自定义传感器,通过ping方法获取状态。通过HTTP或MCU控制关机,通过网络唤醒WOL控制开机。
回复

使用道具 举报

109

主题

1577

帖子

4984

积分

元老级技术达人

积分
4984
金钱
3402
HASS币
30
发表于 2022-10-10 11:41:02 | 显示全部楼层
SilverWolf 发表于 2022-10-10 11:01
PC不是原生集成接入的,是写的自定义传感器,通过ping方法获取状态。通过HTTP或MCU控制关机,通过网络唤 ...

网络唤醒WOL  pc开机, pc是要有线连接才可以把,笔记本是无线上网的,不知道行不行,有没有参考代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-27 10:25 , Processed in 0.077966 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表