基于树莓派构建强大的家用自动化系统

夏天最棒的事情莫过于在家里搞树莓派了,“派”上那一层冰激凌更为美味,尤其是能免费搞到的时候。Smartenit ZBPServer这个软件正是把你的树莓派变成“家庭辅助派”的那一层奶油,它是一个非常成熟的自动化网关,基于ZigBee,INSTEON和X10协议,可以管理家庭或者大型建筑内的自动化网络。在Smartenit提供的几种USB自动化接口中选择一种,就可以使用有巨大生态系统的很多自动化设备,包括光照,HVAC(采暖通风与空调),灌溉,家电控制,能源管理,水源管理等。

下文的“How To”部分教你如何把Smartenit软件装到树莓派上,并搞出些特殊的玩意儿。

所以抓起你的树莓派,兼容型Smartenit自动化控制接口,搭起一台ZBP服务器,就可以享受到一个强大又廉价的家庭自动化网关了。然后你就会觉得,家庭辅助派是最棒的了!

它是如何工作的

用户界面:安卓,iOS应用,桌面软件,或者用浏览器通过宽带连接到网关。

ZBP服务器增强网关: 装载了ZBP服务器固件的树莓派,通过ZigBee 和/或 INSTEON连接到设备的生态系统,再通过网络连接到用户。可以通过局域网访问也可以通过外网访问。ZBP服务器软件包含了一些设定,把网关变成了一个强大而灵活的自动化控制器。

自动化接口: 通过RF或电力线连接到自动化设备,通过USB连接到网关。接口可以是一个支持3种协议的设备,也可以只支持ZigBee或INSTEON。

设备的生态系统: 和ZigBee, INSTEON,X10兼容也就意味着草动系统,以及光,门,窗户,家用电器,洒水器,HVAC,炉子,水池等等的感应器可以在好几个制造商处买到。

技术细节

这部分是给极客们看的:

将Linux打造成强大的家用/建筑内用的自动化网关

ZBP服务器软件是一个Linux“间隔层”,可以实现并且管理多个自动化网络。服务器连接了低层(物理)接口和ZigBee,INSTEON以及X10网络,以及一些高层的用户应用,通常是一些web应用,手机应用或是桌面客户端。ZBP服务器把有着不同自动化协议的各种设备,抽象出了一个逻辑对象,从而简化了客户端应用。ZBP服务器监控并且控制各个结点,负责网络管理,自动化事件响应,场景生成和管理,所以客户端软件只要专注于图像界面的设计就可以了。

ZBP服务器可以处理一个典型的自动化应用中所需的一切功能。无论使用的协议是什么,结点数目是多少,使用了多少个自动化网络,结点,网络,系统,区域,事件,场景对象的信息都可以直接传递给客户端程序。服务器中包含了一个强大的事件引擎(Actions),让自动化事件的设置变得简单。给客户端的接口包括D-Bus(用于Linux进程间通信)和用于在安全TCP端口上通信的一系列XML及Google Protobuf。服务器中包含的驱动和协议支持Smartenit的ZBPLM,USB-CID和Smarthome的PLM(的所有版本)。

如何搭建

下文介绍如何把树莓派打造成强大的家用自动化网关,和我们生产的Harmony网关功能一样。就和做派一样简单!只要搞一个我们的接口,从我们的服务器上下载ZBP服务器软件并且安装,嘿!一个Harmony网关就建好了,还附加有树莓派的全部功能。

选择一个自动化接口

USB-CID: 支持带有家庭自动化控制的ZigBee Pro协议。

ZBPLM:支持带有家庭自动化控制的ZigBee Pro,INSTEON和X10协议。需要一个USB转DB9连接器。

EZIComm:支持INSTEON和X10协议。需要一个USB转DB9连接器。

在树莓派上安装ZBP服务器软件

请先确定ZigBee或INSTEON接口已经安装(连接)到了你的树莓派上面

第一步:打开SSH客户端,输入下文的命令;

第二步:打开软件源列表

pi@raspberrypi ~ $ sudo nano /etc/apt/sources.list

第三步:在列表最后加入下面一行

deb http://harmonygateway.com/repo/ZBPServer/debian/arm/RPi /

(译注:原文表达不确切,稍作修改)

第四步:更新软件源

pi@raspberrypi ~ $ sudo apt-get update

第五部:安装ZBP服务器

pi@raspberrypi ~ $ sudo apt-get install zbpserver

第六步:重启树莓派

pi@raspberrypi ~ $ sudo reboot

搭建好的树莓派网关和我们的Harmony网关的操作是相同的。

下载地址

TCP客户端API:用来和ZBP服务器通信的XML API

iSmartenit AIR:2013年2月更新 - Windows, Mac和Linux桌面的Harmony客户端。需要Adobe Air。

Debian安装包