domoticz的实时监控和小米无线开关在domoticz中的应用

2017-05-11 18:54:55 62点赞 692收藏 53评论

首先非常感谢大家对我上一篇原创的支持,所以在篇头,先就上一篇文章中可能出现的问题做一些答复:

  1. 有些命令执行起来可能出现权限问题,这时候请在命令前添加"sudo "使用root权限对系统进行更改。

  2. spmini.py 无法执行,关于这个脚本,楼主也遇到过问题,首先是在命令行里执行 python spmini.py成功,但是domoticz里就是出错。后来使用 vi spmini.py查看才发现脚本里有一大堆蓝色的^M,把这些蓝色的字符删除就好。还有就是在命令行执行时发生语法错误,这时最好的办法就是不要使用nano命令,而是用vi命令来重新新建一个脚本,基本都能过。

本来想先说的是飞利浦livingcolors的接入,不过考虑到这灯的保有量实在不高,所以就先谈谈domoticz的一些设置吧。不知道按照上一篇文章一步步搭建成功的值友有多少,也不知道大家有没有遇到一个楼主碰到的问题,就是domoticz有时候会自己关掉……,这个发生的概率很不稳定,有时候两天好好的,有时候可能隔2个小时就没了。当然,手动重启下domoticz或直接重启树莓派就可以解决这问题。但是,楼主搞智能家居是为了让自己生活方便的,而不是在用语音呼唤你之后发现你没动静,除了先要自己去手动打开设备之后,还要去查你这破烂玩意究竟怎么了。智能家居是应该给生活带来便利的,事情你来伺候爷的,不是让爷来伺候你的。所以,我们首先要解决的是如何避免domoticz自己死掉。当然,下面的解决途径来自于domoticz官方WIKI(想来你们也是自己知道自己的应用也没有那么稳定是么……)

domoticz的实时监控和小米无线开关在domoticz中的应用

这里要请出的应用是MONIT,看图就知道了,这是一款看门狗似的应用,它的主要作用就是监测系统和系统内的进程,当发现系统负载过高时可以重启系统,或者发现监控的某一个进程失去响应时,可以重启该进程。下面我们来说说MONIT的安装和设置。

首先还是老样子,用putty登入树莓派

domoticz的实时监控和小米无线开关在domoticz中的应用

什么也别管,先更新一把源。(这一步在安装软件前都操作一把,能确保你安装的软件应用都是最新版的)

sudo apt-get update

然后就是安装MONIT,只要一条命令就好。不知道大家感觉到了没,虽然linux看起来简陋,但是基本上安装软件都非常方便。

sudo apt-get install monit

对,就这么一条命令,MONIT就在我们的树莓派里安装好了。接着我们就要对MONIT进行配置,命令如下:

sudo nano /etc/monit/monitrc

然后我们就打开了monitrc的配置文件:

domoticz的实时监控和小米无线开关在domoticz中的应用

set daemon 300的意思是每300秒检测一次进程,设的太短会加重系统负担,设的太长有没有意义,5分钟差不多是一个合适的值,这样的话,即使domoticz死掉了,最长5分钟也会重新启动。

with start delay 300的意思是系统启动后300秒后再开始监测,这个值主要是预防一开机就开始监控的话domoticz可能还没开始运行。配置文件很长,可以设置MONIT的服务端口,邮件服务器啥的,这些这儿就不说了,大家有兴趣可以自己研究。这里只说如何将domoticz添加进MONIT

domoticz的实时监控和小米无线开关在domoticz中的应用

如图:我们在文件的尾部添加进如下文本:

check process domoticz with pidfile /var/run/domoticz.pid
start program = "/etc/init.d/domoticz.sh start"
stop program = "/etc/init.d/domoticz.sh stop"
if failed
url http://127.0.0.1:8080/json.htm?type=command&param=getversion
and content = '"status" : "OK"'
for 2 cycles
then restart
if 5 restarts within 5 cycles then exec "/sbin/reboot"

然后Ctrl+X,按Y建保存之后就完成了。然后我们重启下MONIT服务,让配置生效

sudo service monit reload

然后我们在浏览器中输入树莓派的IP地址+:2812(默认端口号,可以在配置文件里修改)。例如楼主的机器就是http://192.168.10.24:2812/

domoticz的实时监控和小米无线开关在domoticz中的应用

这时候我们就能看到系统的运行状态和时间以及domoticz的运行状态(用户名密码使用树莓派的)。当然,但就用MONIT楼主觉得还不是很放心,因为树莓派上还装了很多其他的服务。而保持系统最稳定的方法无非是定时重启。所以我们下面要添加一个定时重启的功能,首先,我们要编写一个重启的脚本,这个脚本非常简单,就两行

我们现在想要存放脚本的目录里新建个叫reboot.sh的文件:

sudo nano reboot.sh

然后在脚本里添加如下内容:

#!/bin/bash

sudo reboot

然后Ctrl+X,按Y保存就好。

domoticz的实时监控和小米无线开关在domoticz中的应用

接着我们就要让这个脚本定时运行了,这里我们就用到了domoticz的事件触发器(EVENT)功能:

domoticz的实时监控和小米无线开关在domoticz中的应用

楼主设定的是每天凌晨3:30分重启系统,如果你觉得你的系统够稳定的话,也可以设定一个星期重启一次例如,每周一的凌晨3:30重启系统:

domoticz的实时监控和小米无线开关在domoticz中的应用

这个具体就看你自己高兴了。既然谈到了事件触发器,我们正好来说说如何用小米开关来控制非小米设备。

楼主一直觉得小米开关是一件非常巧妙的事情,它使得智能家居不那么智能的时候,我们可以有一种简单的方式来控制设备。例如楼主曾经写过一篇通过室内二氧化碳浓度来控制米皮新风的原创:

#十月霾伏#伪GEEK路线:依据二氧化碳浓度自动开关DIY小米新风的方法话说上一篇原创写到利用窗缝版米皮搭配小米净化器制作了临时性的新风系统供夜晚关闭门窗使用,对于室内的二氧化碳浓度祈祷的改善作用还是非常明显的,详见:#十月霾伏#小米空净秒变新风—低成本新风配件“米皮”详细测试#十月霾伏#小米空净秒变新风—低成本新风配件“米皮”详细测试......casatift| 95 评论135 收藏488查看详情

文中就是使用继电器来模拟人去按动小米开关来达到控制小米净化器的目的。而楼主也在床头贴了一个小米开关,通过对其双击,单击来控制网关灯和aqara墙壁开关的开合。毕竟开关就在手边,谁还会去打开手机,或是深井冰似的对着手机喊,嘿,SIRI是么,你这不是在秀智能家居,简直就是在秀智商啊。而楼主客厅的落地灯,也是用了一个无线开关贴在沙发边上,通过其控制小米智能插座的开关来实现的。这样省去了跑沙发边踩落地灯开关的麻烦,特别是现在客厅成了萌宝的天地,茶几被挪到了落地灯边上,根本就够不到开关了……。所以对于小米的无线开关,楼主真的是爱死了。而折腾出这么多,就是因为想用小米无线开关来控制博联的插座(家里有4个spmini2)。下面来说说实现过程:

首先是把小米开关添加到domoticz里。

domoticz的实时监控和小米无线开关在domoticz中的应用

我们可以看到,小米开关在domoticz的开关类型是一个selector类型的开关,也就是多段开关(注意,此类型开关不被homekit支持,我们也不需要他支持)。我们只要记住它的几种状态分别是:

domoticz的实时监控和小米无线开关在domoticz中的应用

然后我们就直接在房间区域里把它隐藏到$Hidden Devices里,这样在开关菜单里它就不会出现了。因为其只是起到一个桥接的作用,而被它控制的开关在domoticz里都有相应的开关,所以它完全没有显示的必要。

domoticz的实时监控和小米无线开关在domoticz中的应用

然后我们再次打开事件触发器,我们现在想要把它设置成单击开关,打开落地灯使用的博联插座。

因为刚开始的时候对if else if 的blocky的使用并没有掌握,所以把明明可以做成一个事件的联动做成了3个。后来也就懒得改了,大家将就着看:

domoticz的实时监控和小米无线开关在domoticz中的应用

第一第二条是当双击无线开关的时候,对博联插座进行开合操作,因为使用同一个动作来激发两种状态,所以之前要加个判断条件,判断现在插座的状态是开还是关。而最后一条是因为多段开关,如果触发了一个状态后,它就不会自己复位到off,然后根据设定的两条触发命令就会无止尽的开关。加了最后的复位事件,就是在感应到开关操作后,开关自动复位到OFF状态。

最后是想问问大家有没有人对livingcolors Gen2接入domoticz有需求,毕竟楼主觉得花千把块钱买这灯的人脑子一定被驴踢过(没错,说的就是我自己)。然后现在如果要把它接入domoticz的话,还需要一个HUE Bridge的网关,注意:Gen2有好多种版本,即使你有了网关也不一定能接入。楼主开始是在咸鱼上定了一个别人海淘套装单出的网关,要价298,不过隔了3天还没发货,结果看到狗东正好有货,而且只要199的时候,立马退了咸鱼,去狗东买了(当时天猫亚马逊最低大约是399)。

domoticz的实时监控和小米无线开关在domoticz中的应用

而现在狗东的价格已经变成了498:

【京东超市】飞利浦(PHILIPS)hue桥接器 hue go专用无线照明控制器 智能分段控制器498元京东直达链接

嗯,花498再买个这玩意,脑子肯定被驴踢了不止一次,哈哈哈。如果有人有需要请评论留言。楼主会再写一篇(步骤实在太复杂,毕竟livingcolors不属于Hue系列)。


展开 收起
53评论

  • 精彩
  • 最新
  • 原来也经常死机,贴了散热片,改用2.5a电源适配器供电就再也没有死机了。

    校验提示文案

    提交
    你这个是树莓派死 基本就是供电不足造成的 线短些也会有改进

    校验提示文案

    提交
    收起所有回复
  • 能不能从布线说起,准备装修,需要知道怎么布线预留什么

    校验提示文案

    提交
    其实并无太大区别 主要是灯路 单火线开关比较贵 单开179 双开199没有三开选择 但是如果布线用零火线 那么线材成本会高些 而且未来不能替换成普通开关 还有就是有线网口每个房间保证一个吧

    校验提示文案

    提交
    收起所有回复
  • 用楼主上篇方法连上小米网关,无奈智能控制开关和识别传感器,报警开关打不开。只能等小米开放接口了。

    校验提示文案

    提交
    报警开关是通过在domoticz建立场景 触发传感器后让网关发声来实现的 其实小米的警戒也是一样的 只是他事先建好了这个联动

    校验提示文案

    提交
    收起所有回复
  • 设备越来越智能了,人缺越来越懒了 [棒棒哒]

    校验提示文案

    提交
    懒人推动科技发展和进步

    校验提示文案

    提交
    收起所有回复
  • 这个没基础的应该完全看不懂吧

    校验提示文案

    提交
    基本上不需要真的全部理解,只要照着做就行,看起来复杂,操作起来基本上是复制粘贴

    校验提示文案

    提交
    收起所有回复
  • 感觉这种敲命令才能实现的智能,后期得不断的投入精力维护设备本身

    校验提示文案

    提交
    只有添加设备时候需要你登录下,目前我基本上都是语音控制了,连app都不开了……

    校验提示文案

    提交
    收起所有回复
  • 借地咨询楼主个事,意大利转接头是两头还是三头的呢~

    校验提示文案

    提交
    一般转接头都是两头的

    校验提示文案

    提交
    收起所有回复
  • 问一下楼主,我想实现要控开关的话是不是一个小米网关就搞定了?例如:在阳台上遥控烧一杯热水(假设水已经接好,我家也够大。。。)各个开关和网关直接是wifi通信的么?

    校验提示文案

    提交
    具体要看开关类型啥的 小米网关是接小米zigbee设备用的 如果都是Wi-Fi设备的话 并不需要小米网关

    校验提示文案

    提交
    收起所有回复
  • @casatift 求教,为什么我安装的Domoticz无法保存成中文模式

    校验提示文案

    提交
    location 填上经纬度

    校验提示文案

    提交
    收起所有回复
  • 有办法接入阿里的智能设备吗?尝试过抓包,但是HTTPS加密的。。。没搞定。。

    校验提示文案

    提交
    这个似乎有人在做。但是我没有相关设备 所以不太关注 最坏的结局是用一台安卓机做中转来实现

    校验提示文案

    提交
    安卓系统中转如何实现?

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 零基础是指手上什么都没有,从头买,没有树莓派和Linux系统,不是编程知识零基础,是不是?楼主?

    校验提示文案

    提交
    可是我就是没有编程知识做起的啊

    校验提示文案

    提交
    收起所有回复
  • 我有三个网关,但是只能控制一个网关下面的设备,其余网关下面的设备只能查看状态,无法进行控制,楼主有遇到过吗

    校验提示文案

    提交
    domoticz么?domoticz只支持单网关

    校验提示文案

    提交
    好的了解,谢谢!

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 那啥 楼主有没好的论坛 学习的推荐下啊 这个不像ha没找到好的论坛什么之类的

    校验提示文案

    提交
    有个中文论坛,找到论坛可以加入组织

    校验提示文案

    提交
    叫什么 大神有没有群

    校验提示文案

    提交
    收起所有回复
  • 零基础???小白得吓死。

    校验提示文案

    提交
  • 零基础完全看不懂啊。

    校验提示文案

    提交
  • 什么是零基础?码农起步?楼主这完全是挖坑等人跳,只适合技术宅研究交流吧。

    校验提示文案

    提交
  • 消灭0回复! [邪恶]

    校验提示文案

    提交
  • 好高端的样子

    校验提示文案

    提交
  • 原来domoticz也经常死机,树莓派换了外壳,贴了散热片(温度从57降到42左右),将原来的山寨1a手机充电线换成淘宝买的2.5a带开关供电插头就没有出现无故死机了。

    校验提示文案

    提交
  • 没有一定计算机理论功底应该会阅读困难吧。这篇适合答疑解惑的

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
692
扫一下,分享更方便,购买更轻松