玩转树莓派:OpenHAB的入门(一)

简介: 如果你对那些仅仅只是为了控制一盏灯而不得不下载一个特定的App的智能家居感到厌烦,这里有个好消息:OpenHAB可以为你实现最灵活的控制智能家居,OpenHAB是一个成熟的,开源的家庭自动化平台,既可以运行不少软件,还无关乎协议,这意味着如今它可以连接到几乎市面上所有的家庭自动化硬件。

如果你对那些仅仅只是为了控制一盏灯而不得不下载一个特定的App的智能家居感到厌烦,这里有个好消息:OpenHAB可以为你实现最灵活的控制智能家居,OpenHAB是一个成熟的,开源的家庭自动化平台,既可以运行不少软件,还无关乎协议,这意味着如今它可以连接到几乎市面上所有的家庭自动化硬件。

在这里,我们将告诉你如何安装并启动免费的智能家居系统。

我们先使用树莓派2建立OpenHAB,本文涵盖了几个5个主题:

1、 在树莓派2上安装OpenHAB并运行,然后安装Demo House配置,检查核心系统的正常工作。
2、 如何为设备添加bindings和配置文件。本文将用Philips Hue做演示。
3、 启用远程访问和连接到IFTTT。
4、 使用蓝牙添加一个DIY的传感器,并介绍REST接口。
5、 配置OpenHAB移动应用程序。

前期准备

最起码,你需要一个树莓派,以及以太网或无线适配器(首选以太网)。需要注意的是OpenHAB在旧版本的树莓派上也一样运行,但有一个问题,就是处理速度较慢以及Z-Wave设备的使用问题。你需要升级到最新版本的树莓派然后添加Z-Wave。不过,如果没有Z-Wave的需求,你可以放心地忽略这个问题,并使用树莓派B或B+来制作,因为他们也可以工作。

OpenHAB的最新稳定版本是1.71版。 1.8版本预计不久更新,虽然可能会有出现更多的功能,但是不影响本文。本文并不兼容版本2

安装OpenHAB

首先我们安装通过命令行这样的老式方法来安装。

从最新的Raspbian SD image开始。插上你的网线,然后开机,通过SSH运行:

sudo raspi-config

扩展filesystem;然后从高级菜单将内存分割为16。完成后,重新启动,再完整地运行更新

sudo apt-get update
sudo apt-get upgrade

安装OpenHAB的更简单的方法是通过apt-get,但首先我们需要添加一个安全密钥和新的存储库:

wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' |sudo apt-key add -
echo "deb http://dl.bintray.com/openhab/apt-repo stable main" | sudo tee /etc/apt/sources.list.d/openhab.list
sudo apt-get update
sudo apt-get install openhab-runtime
sudo update-rc.d openhab defaults

奇怪的是,属于“root”的都被安装了。我们需要用下面的命令解决这个问题:

sudo chown -hR openhab:openhab /etc/openhab
sudo chown -hR openhab:openhab /usr/share/openhab

接下来,我们要安装Samba和共享配置和用户文件夹,这会更容易安装加载项并远程更改sitemap。

sudo apt-get install samba samba-common-bin
sudo nano /etc/samba/smb.conf

如果有需要可以更改工作组的名称,但是其他的需要wins support为yes:(你需要去掉注释,将no改为yes)

wins support = yes

然后将一下添加到共享定义部分(滚动至文件底部):

[OpenHAB Home]
 comment= OpenHAB Home
 path=/usr/share/openhab
 browseable=Yes
 writeable=Yes
 only guest=no
 create mask=0777
 directory mask=0777
 public=no[OpenHAB Config]
 comment= OpenHAB Site Config
 path=/etc/openhab
 browseable=Yes
 writeable=Yes
 only guest=no
 create mask=0777
 directory mask=0777
 public=no

保存并退出。最后我们需要设置一个Samba的密码

sudo smbpasswd -a openhab

openhab”作为密码只是为了方便使用,并不重要。

重新启动Samba(用sudo来重新启动)之后,测试是否可以访问共享驱动器。在Mac上它可能不会自动出现;但你可以使用Finder – > Go – > Connect to Server 和地址。

smb://openhab@raspberrypi.local

用户名openhab验证和你的密码,然后打开你的两个共享看看。你也可以在你的浏览器打开http://raspberrypi.local:8080 /,但你会遇到一个错误,因为我们还没有建立一个sitemap呢。

现在就来跟踪OpenHAB日志,以便留意出现的错误。

tail -f /var/log/openhab/openhab.log

安装Demo House

我们深入配置文件之前,先增加设备和bindings等;然后我们检查demo内容是否一切正常。你可以在OpenHAB.org的下载项中找到“Demo Setup”。

解压缩它后,出现两个文件夹:插件和配置。

使用网络共享,复制配置到OpenHAB的配置共享然后覆盖现有文件夹。复制插件到其他的OpenHAB Home share,再次覆盖现有文件夹。如果没有提示你覆盖东西,那么就是你做错了。打开raspberry.local:8080 / openhab.app?sitemap=demo查看demo。

这是基本的查看,OpenHAB的开源意味着我们可以安装一个可爱的主题或者完全不同的界面。现在,我们只需要知道它所有工作。需要注意的是,我们要的是sitemap。它不是网络或传感器的设备。它是自定义的。如果想要了解如何创建,打开上OpenHAB配置共享deedsitemaps/demo.sitemap文件。

这很困难,但在大多数情况下,你可以从其他例子复制粘贴代码段来创建自己的自定义界面。这里有所有可能的sitemap元素的技术概述,这些足以开始思考你要建立什么样的界面和你想要显示什么信息。

打开items / demo.items,这是你创建控制和定义传感器项目的路径。

相关文章
|
2月前
|
编译器 Linux C语言
【C++入门(上)】—— 我与C++的不解之缘(一)
【C++入门(上)】—— 我与C++的不解之缘(一)
|
2月前
|
分布式计算 Java 编译器
【C++入门(下)】—— 我与C++的不解之缘(二)
【C++入门(下)】—— 我与C++的不解之缘(二)
|
2月前
|
机器学习/深度学习 编译器 测试技术
【C++篇】启航——初识C++(上篇)
【C++篇】启航——初识C++(上篇)
|
2月前
|
存储 安全 编译器
【C++篇】启航——初识C++(下篇)
【C++篇】启航——初识C++(下篇)
|
弹性计算 Kubernetes 监控
冬季实战训练营-第一期-学习报告
冬季实战训练营-第一期-学习报告
129 0
冬季实战训练营-第一期-学习报告
|
算法 C++
深入浅出程序设计竞赛(基础篇)
本书从编程语言开始,以C++语言为基础讲解, 然后讲解了基础的算法开始,基本上常用的算法都介绍了, 还进行了基础的数学与数论知识。
1468 0
深入浅出程序设计竞赛(基础篇)
|
Web App开发 存储 缓存
身家过亿的帝都王子来到1024盛宴-小码农献上linux进阶知识点一篇
身家过亿的帝都王子来到1024盛宴-小码农献上linux进阶知识点一篇
134 0
身家过亿的帝都王子来到1024盛宴-小码农献上linux进阶知识点一篇
|
SQL 关系型数据库 MySQL
|
Linux 开发工具 数据安全/隐私保护
冬季实战训练营第二期 学习报告
学习Linux操作系统的命令
88 0
|
Linux
冬季实战第二期学习报告
有关 冬季实战第二期之 Linux操作系统实战入门的学习内容
122 0
下一篇
无影云桌面