花小钱办大事 篇五:智能家居DIY老司机手把手带你搞定智能音箱接入
前言
17年三月份,打着让熊孩子听儿歌的旗号,义正言辞的买下来叮咚智能音箱(新东方泡泡版)
语音识别很准确,熊孩子都学会了自己点儿歌了,最近随着智能音箱大热,叮咚、小爱同学、天猫精灵、小度音箱等热度很高,深度学习算法随着样本数的丰富多样,也越来越贴近生活。
作为智能家居中的一份子,智能音箱的加入可以使人机交互上升一个层次,本次分享下如何将叮咚音箱d接入HA(当然其他几个也有,但我没设备,也就暂时不表)
音箱的接入
声明
首先申明,本编文章基于树莓派搭建的hassbian系统,对于dockers搭建的,原理都是一致的,只是有部分命令不同。而如何搭建hassbian系统及相关环境,详情可以参照本系统文章前几篇。
接入原理
现在随着智能家居各个品牌的扩展,米家、lifesmart、Broadlink也都家喻户晓,智能音箱各家也都通过不同的平台提供一家或者多家的接入,比如叮咚就支持京东微联、美的、米家智米等设备。
hassbian作为开放的平台,很遗憾,暂时没有哪一家智能音箱提供官方的接入,但是我们不妨碍我们可以曲线救国啊 ,飞利浦HUE作为智能灯泡,玩出了多彩可控智能,国内外很多的大大小小产品也都兼容飞利浦HUE平台,所以可以通过安装ha-bridge插件或者改版的hue插件实现,然后通过HA的api来模拟飞利浦hue灯,曲线实现叮咚控制。所以只要支持接入飞利浦HUE的设备也都可以接入HA设备了。
着重说明下两种接入方法的区别:
ha-bridge插件和hue改版插件安装过程无太大差别,工作量差不多。不存在难易,只是配置不一样,按需选择吧。
1、ha-bridge插件需要在ha-bridge插件配置页面逐个添加并命名,这样方便自由指定接入(对于不想一次性全部接入HA设备的比较适用),而且有单独的配置UI,对于新手较为友好。
2、改版HUE插件,安装好后,需要在HA主配置文件中配置hue平台接入,默认为一次性全部接入,接入设备名称默认为HA配置的每个设备的别名(就是每个设备的friendname)的对应配置文件中,每个开关灯等变量需要在之前都手动配置相应的中文名(就是HA配置文件中的friendname字段)
而小爱音箱就比较多了,具体看手头上有什么设备,既可以基于红外设备、也可以通过空调伴侣、或者通过灯的亮度这些来间接的将小爱同学接入HomeAssistant,而我比较推荐直接通过小爱的官方开发者平台来通过自定义技能将小爱接入HA。but,这三种技能都不算小白入门(要么受限于设备,要么得搭建平台,而且部分技能小米不开放,还不是那么方便),所以有兴趣的可以评论,我看情况再写一篇 。
叮咚音箱的接入(ha-bridge插件)
为了把homeassistant里面的开关灯控制模拟成飞利浦的灯, 我们需要先安装HaBridge插件,然后在Bridge里面添加设备,通过插件将我们自己的设备模拟成音箱可识别的HUE灯泡,来实现叮咚的语音和场景化控制。
安装插件前需要明确habridge插件默认运行端口为80,所以最好安装过程中不要更改默认端口,否则会导致后期音箱死活连接不上habridge网桥。
下面开始step by step教程
1、首先去habridge的插件页去下载最新版本的插件(最新版为ha-bridge-5.2.1.jar)
2、打开putty程序,连接你的HA,首先安装habridge所需的jdk环境,具体的忘记了怎么连的可以参照系列文章篇二的 系统环境配置部分,命令参照如下逐行输入回车即可完成jdk环境的安装。
sudo apt-get update
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install oracle-java8-installer
3、然后就是安装habridge插件,你可以尝试用如下命令在线下载(如果不行就手动下载后将ha-bridge-5.2.1.jar复制进根目录habridge文件夹即可)
cd ~
mkdir habridge
cd habridge
wget https://github.com/bwssytems/ha-bridge/releases/download/v5.2.1/ha-bridge-5.2.1.jar
4、设置habrige插件的自动启动
sudo
nano
/etc/systemd/system/habridge
.service
然后将如下内容复制黏贴进去,记得修改192.168.10.13改为你树莓派的ip,/home/pi/habridge修改为你自己建立的目录(如果你都是按照我前几篇一样过来就可以不用改,只改ip即可),ctrl+x, y保存后退出即可。
[Unit]
Description=HA Bridge
Wants=network.target
After=network.target
[Service]
Type=simple
WorkingDirectory=/home/pi/habridge
ExecStart=/usr/bin/java -jar -Dserver.port=80 -Dserver.ip=192.168.10.13 -Dconfig.file=/home/pi/habridge/data/habridge.config /home/pi/habridge/ha-bridge-5.2.1.jar
[Install]
WantedBy=multi-user.target
然后再运行以下脚本就可以使自动启动生效并启动habridge插件了
sudo systemctl daemon-reload
sudo systemctl enable habridge.service
sudo systemctl start habridge.service
5、然后等待一会儿待服务启动后,habridge插件就会在树莓派80端口启动服务,在浏览器中打开插件所在地址(具体ip和ha一样,只是端口不同,譬如192.168.10.13:80),这样就可以进入配置页设置habridge了。
6、首先点击home页的bridge control,下拉,找到HomeAssistant Names and IP Addresses,输入你的HA相关信息,然后点上面绿色的save按钮,会保存并自动重启habridge。
7、重启habridge后再次进入,会发现出来一个叫HomeAssistant Devices的选项,里面会列出来HA里面所有已经接入的设备。
8、然后在列表中选择你所想添加到叮咚音箱的设备,然后点后面的build item,在name处,写上你想让叮咚识别的中文设备名称(中文!中文!记住中文!当然你英文好也可以填英文,这个是语音的触发词),然后点击add bridge device就可以了。
9、然后就会在bridge devices界面出来你所添加的设备,可以按test on和test off按钮,来测试是否能正常开、关设备。如果都ok了,记住你的取好的那些名字,然后就可以移到叮咚音箱app操作了。
10、打开叮咚音箱app后,点首页的智能家居,然后点右上角的+号,选择最下面的添加飞利浦hue智能灯,这时会自动检测habridge网桥,并添加网桥。
网桥添加成功后,刚刚添加的所有设备就都成功显示了。
叮咚音箱的接入(改版HUE插件)
HA的官方HUE插件通过模拟hue桥来支持Amazon Echo和Google Home,但是不支持叮咚音箱,所以有国内大神charleyzhu(熟悉的都知道和风天气、悟空遥控等也都是这位大神)在官方的基础上添加了叮咚的支持。有兴趣的可以参看项目GitHub地址。
下面开始step by step教程
1、首先当然是下载插件啦。
使用putty等工具用pi用户登录ssh,新建个目录(我为了方便直接命名为DingDong),然后定位到此目录下下载改版的hue插件。
cd ~
sudo mkdir -p DingDong
cd Dingdong
sudo git clone https://github.com/charleyzhu/HomeAssistant_Components.git
2、然后创建自定义插件目录(也就是 custom_components 目录),将下载的改版插件emulated_hue_charley 目录拷贝到 新建的custom_components下。
sudo mkdir -p /home/homeassistant/.homeassistant/custom_components/
sudo cp ~/DingDong/HomeAssistant_Components/service/emulated_hue_charley/ /home/homeassistant/.homeassistant/custom_components/ -r
这样插件就安装完成了。
3、为了防止服务启动80端口的报错,需要获取 python 软连接的位置(这个每个人的位置不一定一样,如果都是按照我之前几篇里面的来的,就和我的一直,自己需要注意下路径)。
readlink -f /srv/homeassistant/bin/python3
我获取的真实路径是
/usr/bin/python3.5
如果不一样的记得下面的这条命令需要改为与自己获取的路径一样的!!!
3、然后就是对python增加相应权限,记得将/
usr
/
bin
/
python
3.5
改为上一步中获取的对应路径!!!
sudo setcap 'cap_net_bind_service
=
+
ep'
/
usr
/
bin
/
python
3.5
4、这样插件就安装结束了,去HA页面重新启动 home assisstant 服务,或者直接命令行敲sudo reboot重启树莓派。
5、接下来就是在HA平台里面直接配置HUE的接入了。
直接打开HA的配置文件 configuration.yaml(看到这的同学应该也都知道文件在哪儿了吧,如果还不知道,可以去温习本系列的第一篇),自己选个自己看着开心的位置,按照如下格式添加改版HUE插件(记得严格按照yaml语法添加,注意缩进及层级关系)。
emulated_hue_charley:
listen_port: 80
type: dingdong
auto_link: true
6、这样保存好后,去HA配置界面检查yaml文件有无语法错误,没有的话,就直接重新启动 home assisstant 服务。
7、HA正常启动了,就打开叮咚App,智能家居—右上角 + 号—选择 添加飞利浦Hue 智能灯添加飞利浦设备。
只要叮咚和HA在一个网络中,一会会就搜寻添加成功了。
这样就开心的叮咚唤醒享受吧
老规矩,老铁们有啥交流的,咱们评论见 ~
uufoly
校验提示文案
呦哈
校验提示文案
wondercoming
校验提示文案
值友1385526567
校验提示文案
值友1385526567
校验提示文案
wondercoming
校验提示文案
uufoly
校验提示文案
呦哈
校验提示文案