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

 找回密码
 立即注册
查看: 7110|回复: 1

[基础教程] 送给同样是新手的朋友们, 核心:所有的设备通过ha接入hb

[复制链接]

2

主题

21

帖子

213

积分

论坛分享达人

积分
213
金钱
192
HASS币
0
发表于 2017-9-18 16:37:38 | 显示全部楼层 |阅读模式
本帖最后由 easycoco 于 2017-9-18 16:46 编辑

#本来想啰啰嗦嗦的讲讲自己改造智能家庭的详细过程, 但是怕各位觉得太啰嗦, 所以就简化一下, 讲讲重点吧.
#首先是安装, 我办公室是用树莓派, 家里是用黑群晖, 黑群晖是6.1系统. 全部是安装’hassbian’,内置’homeassistant’(以下简称HA). 再安装’homebridge’(以下简称HB)和homebridge的插件’homebridge-homeassistant’(以下简称HB-HA)

#+++++++++++分割线, 这是废话,不想看直接跳过++++++++++++++++
#再说说思路, 论坛教程很多, 但是每个人思路不一样. 首先要明确的一点, 智能家居, 我心中定义的智能家居应该是像<黑镜>中那个复制你思维的虚拟小人一样, 了解你的习惯, 以及当时的需求, 根据需要提前或及时的做出反应. 而现在的科技能力, 并不能真正意义上的”智能”控制所有需要的设备. 并且我并不认为用手机去遥控那一个个的设备可以称之为智能.
#所以结论就是只能通过各种传感器, 写入规则, 实际就是通过一些规则,被动的去控制一些用电器, 这虽然不叫智能, 但既然机器不能自主学习, 我们就人工的给机器学习吧. 虽然我是果粉, 但不得不承认, hb最终是通过home app作为控制终端. 而home app的自动化这块, 其实非常的简陋, 所以说, 最终我还是要选择用ha进行自动化以及别的一些东西, 进行被动响应式的控制.
#所有设备首先接入ha, ha再通过hb-ha的插件接入到hb里面, hb主要开关都要有, 但主要要在收藏部分显示几个最常用的.方便手动开关, 作为iphone用户, 你不得不说, 单纯从手动控制, 不会有哪个app的方便性超过home app.
#+++++++++++++++++++++++++++废话结束++++++++++++++++++++++++

#再次重申, 大原则是所有设备通过ha, 经由hb-ha,转换到hb. 手动控制用hb, 而自动化, 则用ha达成.

#安装: 我就说说要装啥, 至于安装教程, 各个大神已经有很多了, 我暂时在这篇里面不写具体安装的方法了.就讲讲装啥, 那个东西干嘛用的.安装教程可能考虑写一下. 但不在这篇写了.

#平台主体, 就两个平台.
#首先是ha,用途就不用说了, 相当于后台系统, 所有需要接入的设备都接入到ha.
#树莓派的话,刷hassbian系统就内置了, 不用再安装.群晖的docker的话, 直接搜索就好了.
#再来是hb,用途就是将所有设备显示到home.app
#树莓派和群晖, 都需要额外安装, 安装教程还是自己找或者等我之后写吧.

#插件:
#hb-ha: 安装在hb平台上. 安装教程还是自己找, 配置下面会讲到.
#小米: ha用于识别小米平台设备的插件, 最新版已经不用再安装啦, ha平台已经内置了.
#博联: ha用于识别博联的插件, 最新版的ha也是内置了.
#其他插件: 自己看ha的官方文档, 里面说明了支持的. 就是已经内置的.

#东西安装完成以后, 主要就是需要做两件事, 其实就是两个平台的配置文档, 这个作为重点:

#先从简单的说,homebridge的配置文件结构比较简单
#++++++++++++++++分割线, 下面是相关的config的配置内容及解释+++++++++++++++++++++++++
{
#这是一个开头, 意思是接下来是对"bridge"的配置
    "bridge": {
        #冒号之后的随便改, 就是这个"bridge"的名字
        "name": "Homebridge",
        #这个不清楚, 听说也是随意, 不过我都是用搭建服务用的设备的mac地址(就是黑裙的mac和树莓派的mac)
        "username": "00:27:0E:F8:14:39",
        #这就是端口, 也没改的必要
        "port": 51826,
        #这个是到时候匹配到ios的home的时候, 需要输入的类似于配对码的东西, 我就改成这样了,家里是001开头, 单位的002开头
        "pin": "001-01-001"
    },
#以下是要添加在homebridge中的设备需要添加的内容, 我就只添加hb-ha的插件.别的所有配件都经由ha传输到hb, 所以hb里面只陪着一个用于传输的组件.
    "platforms": [
  {
    #组件的名称, (这是组件的名字, 别改了系统看到这个名字, 才能对应去调用相关的文件和服务)
    "platform": "HomeAssistant",
    #这是组件的名字, 理论上也是随意, 不过不建议改, 因为反正也不显示这个.
    "name": "HomeAssistant",
    #这是要输入运行服务的机器的ip地址.所以理论上你可以一台机器跑ha, 一台机器跑hb, 虽然没意义.
    "host": "http://10.0.0.240:8123",
    #ha的http密码, 在ha的配置文件里面设置, 下面会讲到.
    "password": "Easy1.6180339",
    #支持的种类这里定义支持的种类, 可以把不要的删掉, 但我没删, 反正不想他显示在ha的文件里面去隐藏就好了.
    "supported_types": ["automation", "binary_sensor", "climate", "cover", "device_tracker", "fan", "group", "input_boolean", "light", "lock", "media_player", "remote", "scene", "sensor", "switch"],
    #这是设置ha中的配件,在hb中默认是否显示出来的, visible表示默认显示, 然后不要显示的配件, 就在ha中指定.
    "default_visibility": "visible"
  }
    ]
}

#如此, 整个"hb"本体+"hb-ha"插件的配置文件, 就写完了, 基本上, 这个就不用去更改了.

#++++++++++++++++++分割线,下面就是ha相关的配置++++++++++++++++++++++

#这个跟上面的bridge一样, 表示这是对ha系统本身的一些相关的设置
homeassistant:
  # 这是系统里面对自己家的名字, 就像网站的标题
  name: EZ's home
  # 运行这个系统所在建筑的位置,有看到说越精确越好(就是小数点之后的数位), 不过我只设置了这么几位, 因为够了.
  latitude: 30.2936
  longitude: 120.1614
  # 这里设置海拔高度, 单位是米. 说明文件说这个数据影响到天气日出
  elevation: 69
  # 单位设置, 公制是metric,英制是imperial
  unit_system: metric
  # 设置时区,在这里查询: [url=http://en.wikipedia.org/wiki/List_of_tz_database_time_zones]http://en.wikipedia.org/wiki/List_of_tz_database_time_zones[/url]
  time_zone: Asia/Shanghai
  #设备中文名称, 叹号之后的意思是说, 相关的设置在customize.yaml文件中, 这样可以保持主文件简洁
  customize: !include customize.yaml

# 在网页界面的首页显示简介(那一大段E文)
introduction:

# 启用前端(意思就是网页端)
frontend:

# Enables configuration UI这个我也不知道, 没动.
config:
#这里是关于http相关的设置, 我就打开了密码, 因为要配合hb-ha的设置里面的密码.
http:
  # Uncomment this to add a password (recommended!)
   api_password: Easy1.6180339
  # Uncomment this if you are using SSL/TLS, running in Docker container, etc.
  # base_url: example.duckdns.org:8123

# 检查是不是有公开的更新(下面的英文说明我就不改中文了.)
# Note: This component will send some information about your system to
# the developers to assist with development of Home Assistant.
# For more information, please see:
# [url=https://home-assistant.io/blog/2016/10/25/explaining-the-updater/]https://home-assistant.io/blog/2016/10/25/explaining-the-updater/[/url]
updater:
  # 第三行的那个是一个附加选项, 具体作用我不知道, 反正是可选, 我就没开启.
  # Optional, allows Home Assistant developers to focus on popular components.
  # include_used_components: true

# 有新设备时自动添加.
discovery:

# 允许您在启用的浏览器中从前端发出语音命令
conversation:

# 打开设备的状态历史记录.
history:

# 在logbook中查看所有事件.
logbook:

# 追踪太阳的时间, 日出日落
sun:

# 初始文件中, 这里是yr, 应该是默认的天气传感器, 但是既然是传感器, 我就把他和设备名称汉化一样, 放在单独的一个文件, 保持主文件的整齐.
sensor: !include sensor.yaml

# Text to speech 这个好像就是tts的服务器啥的,所有主配置文件内, 我只准备保留各种服务器和各种bridge
tts:
  - platform: google

# 用小米网关的, 就添加这部分.别的都别改了, mac改成小米网关的mac地址, key就是通讯密码
xiaomi:
  gateways:
   - mac: 286C0785971D
     key: epep6y2gg6t88mk1


#组相关的设置, 在文件groups.yaml,另个, 所有相关的设置要单独提取到一个外部文件, 就这样冒号后面加上"!include+空格+文件名.yaml"
group: !include groups.yaml
#自动化相关的配置
automation: !include automations.yaml
#这个我也不知道.
script: !include scripts.yaml


所以接下来, 基本的配置就完了, 下次再讲一下, 关于用sonoff的刷固件,接传感器, 以及添加到ha里面要怎么做

另外我自己也有一些问题, ha的配置文件配置当中, 有一些前面带一个-, 不知道是什么意思, 反正作为新人, 先照着做就行了, 希望有高手给帮忙讲解一下

评分

参与人数 2金钱 +10 收起 理由
+ 6 严重支持!
lidicn + 4

查看全部评分

回复

使用道具 举报

2

主题

160

帖子

2560

积分

金牌会员

Rank: 6Rank: 6

积分
2560
金钱
2400
HASS币
0
发表于 2017-9-18 17:16:54 | 显示全部楼层
注释很清楚,支持一下
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-1 13:28 , Processed in 0.052146 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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