用树莓派构建家庭智能家居控制中心

        一直以来对手机上安装的10来个智能家居控制APP耿耿于怀,虽然后来尽量在米家购买终端设备,但还是有不少设备不能纳管,特别是自己平常用Raspberry、Arduino、ESP8266等DIY的设备,更需要一个集成环境进行控制,于是趁元旦假期花了1整天时间搞了个项目集成,基本构建起以树莓派为中心的家庭智能家居控制中心。本来也可以依托群辉NAS来构建,无奈我这款使用了5年的群辉DS416play配置偏低,而且还承担着家庭私有云的重任,只有另辟蹊径。

        主要思路是以Home Assistant为中心,分别集成小米智能硬件管理平台和苹果智能家居平台(Home Kit),将现有智能设备接入,再集成轻量级的消息发布/订阅传输协议MQTT,实现DIY设备传感器与服务端之间的通信,同时将这些设备纳入Home Assistant管理。具体操作如下:

一、给树莓派安装Home Assistant

二、Home Assistant集成Xiaomi MIoT、添加米家设备

三、Home Assistant集成HomeKit

四、Home Assistant集成MQTT

一、树莓派安装Home Assistant

1、格式化SD卡(提前准备1张32G高速卡),下载Balena Etcher烧录软件(https://www.balena.io/etcher),可根据操作系统(Windows/macOS/Linux)选择下载需要的版本。

用树莓派构建家庭智能家居控制中心_第1张图片

 2、下载镜像文件(https://github.com/home-assistant/operating-system/releases,根据树莓派版本选择适合的镜像文件,我选了https://github.com/home-assistant/operating-system/releases/download/7.0.rc1/haos_rpi4-64-7.0.rc1.img.xz)到本地。

3、启动Balena Etcher烧录软件,选择镜像文件(也可以选择在线安装),选择SD 卡,点击 Flash,开始烧录。

用树莓派构建家庭智能家居控制中心_第2张图片

4、烧录需要十几分钟,中途可能 Windows 会弹出来格式化 SD 卡弹窗,不能点。等待烧录完成后显示以下界面,即可弹出 SD 卡。

用树莓派构建家庭智能家居控制中心_第3张图片

5、将烧录好的SD卡插入树莓派,用网线连接到路由器,插电开机。

6、等待几分钟打开浏览器输入homeassistant.local:8123,如果一切正常的话就能进入HomeAssistant。首次打开HomeAssistant网址需要初始化,提示等待 20 分钟,实际可能需要等待好几个小时(我实际耗时5.5小时),直到出现创建账户界面。

用树莓派构建家庭智能家居控制中心_第4张图片

7、输入名称、用户名和密码,然后单击“创建帐户”。此帐户将是管理员,并且始终能够更改所有内容(一定要记住该帐户信息)。

用树莓派构建家庭智能家居控制中心_第5张图片

 8、 接下来,可以输入家的名称,并设置你的位置和系统单位。单击“自动检测”查找您的位置,并根据该位置设置时区和系统单位。如果您不想发送位置,可以手动设置这些值。完成后,单击“下一步”。

用树莓派构建家庭智能家居控制中心_第6张图片

 9、此时Home Assistant将显示它在网络上发现的所有设备,你也可以稍后手动添加设备。最后单击“完成”。

用树莓派构建家庭智能家居控制中心_第7张图片

 10、现在,您会进入Home Assistant web界面,此屏幕将显示所有设备。

用树莓派构建家庭智能家居控制中心_第8张图片

参考文档:

玩转HA 篇一:智能家居第一步,在树莓派上 4B 上安装 HomeAssistant(2022 版)_智能家居_什么值得买

二、Home Assistant集成Xiaomi MIoT、添加米家设备

1、进入“配置”——“加载项”“商店”——安装“SSH & Web Terminal”。

用树莓派构建家庭智能家居控制中心_第9张图片

 2、选择“开发者工具”——“重新启动”Home Assistant。

用树莓派构建家庭智能家居控制中心_第10张图片

 3、在“SSH & Web Terminal”配置中设置“在侧边栏显示”,并在“配置”页面设置Home Assistant用户名、密码。

用树莓派构建家庭智能家居控制中心_第11张图片

 4、选择左侧边栏“Terminal”进入命令行模式。

用树莓派构建家庭智能家居控制中心_第12张图片

5、输入:“wget -q -O - https://ghproxy.com/raw.githubusercontent.com/al-one/hass-xiaomi-miot/master/install.sh | HUB_DOMAIN=ghproxy.com/github.com ARCHIVE_TAG=latest bash -”,完成安装。

6、选择“开发者工具”——“重新启动”Home Assistant。

7、“配置”——“设备服务”——“添加集成”——搜索选择“Xiaomi Miot Auto”。

用树莓派构建家庭智能家居控制中心_第13张图片

 8、选择“账号集成”——“下一步”。

用树莓派构建家庭智能家居控制中心_第14张图片

 9、输入小米账号、密码、云服务器,然后“提交”。

用树莓派构建家庭智能家居控制中心_第15张图片

 10、设置用“包含”“排除”方式选择入网设备。

 11、确认完成后集成页面显示Xiaomi设备。

用树莓派构建家庭智能家居控制中心_第16张图片

参考文档:

小米MIoT设备接入HomeAssistant通用插件教程 - 知乎

Xiaomi MIoT for Home Assistant- github

 

三、Home Assistant集成HomeKit

1、在“配置”——“集成”中,点击右下角的添加集成,搜索 HomeKit,出现Apple,选择后出现列表,然后再选择 HomeKit。

用树莓派构建家庭智能家居控制中心_第17张图片

 2、这时,Home Assistant 会提示我们“选择要包含的域”。其实这句话的意思是,要将什么类型的设备添加到 HomeKit 中。这里建议添加基本的灯、开关、风扇、传感器和空调即可,其他设备如果你有则可后期按需添加(如窗帘、加湿器等)。在选择时,不要勾选所有选项,因为 HomeKit 所支持的设备类型相比米家和Home Assistant来说都非常少,所以如果你全部勾选,接下来你就会发现自己的家庭 App 中被映射多了一堆未知的设备按钮。

用树莓派构建家庭智能家居控制中心_第18张图片

 3、接下来开始设备与HomeKit配对。

用树莓派构建家庭智能家居控制中心_第19张图片

 用树莓派构建家庭智能家居控制中心_第20张图片

  4、完成后,电脑上的操作就全部结束了,HomeAssistant 就会在左侧的“通知”界面下显示HomeKit的配对码。在iPhone或iPad上打开家庭App,扫描这个二维码,上面这些选定的米家的设备就会添加到 HomeKit 中。

用树莓派构建家庭智能家居控制中心_第21张图片用树莓派构建家庭智能家居控制中心_第22张图片

参考文档:

不写一行代码,轻松将米家智能家居接入 HomeKit - 少数派

四、Home Assistant集成MQTT

1、给Home Assistant安装MQTT服务器

在Home Assistant侧边栏点击“配置”菜单,选择“加载项”进入加载项管理页面,点击屏幕右下角“加载项商店”,搜索或直接选择“Mosquitto broker”

用树莓派构建家庭智能家居控制中心_第23张图片

进入Mosquitto broker安装页面后点击“安装”按钮。等安装完成后,按下图打开前两个选项,然后点击启动(原来安装的按键位置)。

 用树莓派构建家庭智能家居控制中心_第24张图片

 2、给Home Assistant添加MQTT集成

配置——>集成——>点击右下角“+添加集成”——>搜索MQTT——>选择第一项“MQTT”

用树莓派构建家庭智能家居控制中心_第25张图片  用树莓派构建家庭智能家居控制中心_第26张图片

 分别设置MQTT服务器IP地址(与Home Assistan同IP)、服务器端口、用户名、密码等,其他可使用缺省选项,点击“下一步”,然后“提交”。

用树莓派构建家庭智能家居控制中心_第27张图片

 3、测试MQTT

测试是否配置成功,配置——>集成——>MQTT下的选项

用树莓派构建家庭智能家居控制中心_第28张图片

 订阅主题Power/switch,发布消息On到主题 Power/switch上,监听主题Power/switch,打开监听,选择“发送”,监听显示收到信息。

后续我将在DIY实际应用中介绍如何向MQTT集成添加实例,详见

(ESP8266通过MQTT接入Home Assistant实践_qq_31400983的博客-CSDN博客)

参考文档:

Home Assistant集成外部MQTT服务_花陌黎呀的博客-CSDN博客_homeassistant mqtt

以上步骤完成后,基本大功告成!

用树莓派构建家庭智能家居控制中心_第29张图片

用树莓派构建家庭智能家居控制中心_第30张图片

 用树莓派构建家庭智能家居控制中心_第31张图片

你可能感兴趣的:(智能家居,python)