本文来自 @店长大人 投稿。
树莓派4是开源硬件,Home assistant 是开源软件。当 Home assistant 遇上树莓派,强大的开源物联网互联平台让你体会科技带来的极度满足感。
本文介绍如何利用你手中的树莓派打造一个物联网平台,实现微信小程序远程控制管理,打开你的树莓派摄像头。
材料清单
- 树莓派—我用的是最新的树莓派4-2G版,性能强大,但是耗电恐怖,电源必须3A,不建议无散热裸跑。
- 树莓派CSI摄像头,USB也可以啦,只是后面的配置需要修改下。
Let’s go!
一、Home assistant 安装
根据HA官方和@cxlwill大神的推荐,树莓派安装HA有4种方式。由于本人极度喜欢简单系统,所以采用的是Hassbian无界面镜像安装。
镜像地址:https://github.com/home-assistant/pi-gen/releases/tag/v1.6.1
其他方式请移步以下网站参阅:
https://home-assistant.cc/installation/raspberrypi/
https://www.home-assistant.io/hassio/installation/
将系统烧录到SD卡后,如果不方便给树莓派接网线,还想启SSH服务的话,接入wifi,可以先将SD卡插在电脑上,在SD卡根目录下建立名为SSH的空文件夹,并且建立名为wpa_supplicant.conf的文件,在里面添加下面代码:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev network={ ssid="你家里的WIFI名" psk="WIFI密码" }
然后把SD卡插入树莓派,开机。耐心等15-20分钟左右,然后用你的浏览器访问http://“树莓派ip”:8123 即可访问到Home assistant,当当当!!!如下图:
在这里,你需要先设置下你的账号和密码。设置好了,登录即可。
二、配置你的树莓派摄像头,实现在HA中访问
此处以树莓派自带的CSI摄像头为例:
首先通过SSH连接树莓派或者直接在树莓派界面环境中运行命令行。
输入 sudo raspi-config 回车
选择:Interfacing Options>Camera>YES
打开树莓派摄像头服务。
回到Home assistant 主页,左侧选择开发者工具,在右侧发现Home assistant的配置文件路径,接下来我们开始配置HA的组件。
根据配置文件地址,在命令行终端中修改HA的配置文件。
sudo nano /home/homeassistant/.homeassistant/configuration.yaml
在文件最后添加如下代码:
camera: - platform: rpi_camera name: pi_camera
如图
然后ctrl+x >Y保存退出
修改好了配置文件,返回HA主页, 每次修改了配置以后,我们都要先检查下配置有没有问题,然后再重启HA服务器。步骤如下:
在HA主页左侧点击标签 “配置“,在右侧选择”服务器控制“,点击“检查配置”,等配置有效后,即可点击重启服务器,然后等半分钟左右,刷新即可。
接下来,进行摄像头添加,在HA中,每一个接入的设备或者服务叫做实体。配置好新的设备后,需要手动添加进入概览页面才可以。
点击左侧“概览”标签,页面右上角点击三个点的那个更多图标,选择配置UI进入页面编辑。
选择右下角加号图标,在出现的许多标签中选择“实体“,填写标题后,在下拉菜单中选择你的摄像头,名字为:camera.pi_camera,点击保存。回到HA首页,此时如果运气好的话,你就可以在概览页面看到你的摄像头了。
三、使用微信小程序绑定HA,实现远程访问
感谢国内大神Hawk开发的Molohub微信小程序,让HA不再需要各种复杂的内网穿透,映射,就可以远程访问。项目地址如下:
https://github.com/haoctopus/molohub
1、使用以下代码一键安装:
curl --silent --show-error --retry 5 https://raw.githubusercontent.com/haoctopus/molohub/master/auto_install.py | sudo python
安装完成后,重启HA服务。
2、点击访问https://www.molo.cn/,选择微信登录。添加小程序后,在HA主页的左下角通知中点击wechat,找到设备二维码,在小程序中扫描,即可按操作绑定你的HA。
然后你就可以在你的微信小程序中访问到你的HA了。建立绑定关系以后,无论你的树莓派ip地址如何变化,你都可以用手机控制你的智能家居了。Cool!
四、更多
HA目前支持接近2000种设备的接入。具体操作方法可以参考官方的组件配置说明。
其中包括了树莓派本身的GPIO控制功能,可以使用它来控制本地的LED灯开关。正巧我手中有个HA支持的小米的花花草草检测仪,是通过蓝牙接入的。经过配置,它已经完全在HA中显示了。请见下图
我在HA配置中新添加的代码:
sensor: - platform: miflora mac: 'xx:xx:xx:xx:xx:xx' //此处是花花草草检测仪的MAC地址 name: Flower 1 force_update: true median: 3 monitored_conditions: - moisture - light - temperature - conductivity - battery