理工男打造帝都89平智能家庭

 

毕业后的2016年年初,搬入新家,总算不用在出租屋里鬼混了,于是就想把之前童年的梦想:智能家居+家庭影院好好实现一下~ 相比帝都高昂的房价,这些东东还凑合玩得起,不过在有限预算下实现尽可能定制和强大的功能会更有意思。我yy了以下几个场景:

  • 每当下班回家,指纹解锁大门,家里温馨的灯光自动打开,天气热的话空调也会自动开启。第二天如果下雨,前一天晚上灯光还会自动提醒我带伞。

  • 即使出差在外地,我也能在宾馆里随时看家里电影,像访问本地硬盘一样读取家里文件,远程控制下载。

  • 对手机说“我要看电影!”就能关闭所有强光源,打开柔和的背景灯光,120寸的投影自动点亮,客厅窗帘关闭,家庭影院启动。然后手机还会推荐我哪些蓝光碟我还没看过。

整个户型为两室一厅,超长的客厅,集成了餐厅和阳台,严格来说这不是多么优秀的户型,可是预算有限木有办法。但好处是有一块特别巨大的白墙供我安装幕布,整体的家装以白色调为主,我们的智能家庭配置就都在这些基础之上进行。

智能家居

高端智能家居设备动辄成千上万,而且根本不开放编程接口,这必然是我不接受的,由于之前就有一套树莓派,功耗很低,用一根USB线供电就好,特别适合打造为中控。虽然我对小米手机等设备毫无好感,不过他家的智能家居物优价廉,还可以通过破解通信协议实现可编程控制,深得我意。

我购入了小米智能家居的大部分设备(温湿度,人体监测,智能开关,智能插线板,彩光灯泡和彩色灯带各一个),不过之前已经有三星空气净化器和净水器,我对扫地机器人也无太大好感,够用就好。所有这些成本不足1000元~

多功能网关(149元)是必须的,这样才能发挥所有设备的优势,并接入树莓派(279元)。而智能遥控器(79)更是良心之选,这种圆形设计能够控制身边的所有红外设备,因此改造成本很低。当然缺点很明显,就是只能控制而无反馈,你根本不知道空调或者电视到底开没开。

米家APP设计很简单,你能设置各种触发条件和情景模式,当进入卫生间时,人体传感器会检测到,之后照明会自动亮起。当想看电影或者打游戏时,只需要一个按键,之后窗帘关闭,投影打开,音响启动...

我把家里都换成了智能插线板(小米WIFI),平日离家除了路由器和树莓派之外都处于休眠状态,大大减少了待机功耗,当我回家之后这些插线板才自动开启,算下来一年能省好多电费~智能指纹锁是三星SHS-H705(亚马逊购入),我已经有四五次出门忘带钥匙了(ㄒoㄒ)

这些都是app的基本功能,稍微研究一下即可学会,只是这样就够了吗?这不能满足懒癌极客对智能设备的要求!iOS的语音唤醒让我印象深刻,我希望完全不动手,对着手机说“打开投影仪!“就能完成所有功能。所以我们就需要解决HomeKit和小米设备的互联互通。

网上类似的攻略不多,主要是用node.js实现的homebridge套件,以及专门用于小米智能家居的的homebridge-aqara插件。简单来说,Homebridge可以把各种智能设备模拟为满足iOS协议的设备,而后者则可通过TCP请求,访问和读写连接小米网关的各种硬件,这些都在GitHub上开放源代码。我在家里折腾了两个下午,才在树莓派上将所有插件安装完毕并成功运行,就像下面这个样子:

但是,这些插件的功能依然很弱,比如:

  • 无法一个命令同时控制多个设备
  • 不能实现”第二天下雨,则通过灯光颜色提醒我出门带伞“
  • 不能时刻记录我的习惯,实现更精确的数据分析

解决方法就是从小米的原生通信协议开始,修改homebridge源代码,,读取天气API获取天气预报数据,使用js注入的方式自定义逻辑。除此之外,我还会将所有家里行为数据的报表通过树莓派写入家里的MongoDB数据库,做之后的数据分析。看看几年下来我到底变懒没有。

离家之后,外网是无法通过树莓派直接控制家里设备的,这就需要做内网穿透,我不放心类似花生壳这类设备的安全性,因此就在阿里云主机上自己搭建了用go语言实现的ngrok反向代理,通过个人域名即可在任何地方管理家里的所有设备。某天晚上我在杭州宾馆闲来无事,还远程家里的树莓派暴力破解了邻居家的WIFI密码...

当然,不是所有时候都适合用语音,我在沙漠之鹰公众号上输入一串密码,即可切为管理员模式,通过自然语言就能与家里的设备交互,其中语义解析的部分用了之前编写的tnpy(也在GitHub上开源),超级方便。由于篇幅的关系,此处不展开。有兴趣的同学可以后台交流。

家庭影院

沙漠君是个特别喜欢宅在家里看电影的人,以前没有一大面墙供我安装投影幕布,这次有了足够的空间供我捯饬了。

投影仪使用了明基的W1070+, 1080P分辨率,2500流明,性价比较高,购入价6500左右,一年后价钱跌了1K,不过早买早享受嘛。虽然号称支持梯度矫正和侧投,但侧投效果很渣,画质影响很大,因此有条件一定要正面安装。

我在幕布上费了很多心思,因为母上不喜欢关灯拉窗帘看电视(估计没人喜欢),考虑过抗光幕,可是低端款的抗光幕就是七八千块钱,而且是一整块金属,电梯进不去,只能从外面用绳子吊上来,还要拆窗户,那画面简直累觉不爱。而且由于抗光幕的特性,对安装位置和观看角度都有需求。最后还是弃抗光幕选择了普通的增益框架白幕,价格2k左右。虽然晚上的观看效果出类拔萃,但是白天不拉窗帘则亮度感人,真是没有办法。

当时给我装投影的小哥说道,家庭影院的效果至少一半来自声音,因此他非常怂恿我换一套好的环绕音响系统。为了搭配整体的白色色调,且尽量不占面积,在预算之内可选并不多,于是就毅然选择了这款:

Sony BDV-N9200WL

JD平日价格6999,我在国庆优惠促销时6399购入。白色款自带灯光效果,会随着音乐一起摇摆。周五摇滚之夜听个DJ还是很带感的。音质可圈可点,由于低音炮的加入,低频渲染能力很强。但让我印象深刻的是它的高音,磁流体扬声器带来的人声相当干净。恕我没有太多接触过万元以上的箱子,这套系统对我来说已经够用。后置环绕音响的接线也完全不用考虑,索尼直接包含了无线音频套件,只是接收器体积感人。

为了渲染气氛,避免看电影时环境光太暗对眼睛造成伤害,我又在沙发后面安装了yeelight智能灯带,可以通过小米智能家居控制颜色和亮度。

由于没有布线,我也不想通过天花板走明线,所以投影仪和播放器之间是通过无线HDMI传送的,可选的设备并不多,我用的是

GUANYEE/冠艺,无线 1080P HDMI连接器,四进一出,1299。

除了刚启动时配对有些慢,显示效果与有线无异。

当然,还要有播放设备加持,XBox360+体感是研究生时候买的,现在除了极品飞车之外很少在用,PS4也有一票游戏碟。看电影主要使用索尼蓝光机,除了三四张蓝光正版铁盒电影之外,其他上百张蓝光碟都是淘宝款,价格超便宜!电影也需要从网上下载,我不太信任百度云和360云盘这种设备的安全性,因此自建NAS成了最好的选择,我使用树莓派作为家庭媒体核心,挂载2块2TB硬盘,通过阿里云代理到外网访问。

效果类似下面这样:

最爽的还是玩类似使命召唤这种FPS游戏,枪林弹雨在耳边清晰可辨,爆炸从低音炮里传出震得茶几直响,感觉甚爽!周五晚上早点回家,坐在沙发上来一瓶啤酒,看个枪战电影也是极好的。

结语

整个智能家庭从前到后折腾了接近一年的时间,成本非常低廉:

  • 小米智能设备,树莓派 约1500元
  • 投影仪,家庭影院,其他外设: 约16000元
  • PS4,XBOX,各类游戏碟: 约5000元
  • 智能门锁,智能马桶盖,空气净化器... (10000元所有)

所有设备的成本总和也就3W元左右,还不足北京一套房子首付的1/50,但是对生活幸福度的提升是巨大的。最重要的树莓派,这个如此便宜却功能强大的Linux系统扩展能力是无限的,我甚至还在上面跑了Python的数据分析服务,而你需要的仅仅是200多元和一条USB线!如果没有它,去买相应的智能设备,价格最少也在五位数以上。

绝大多数情况下,都能通过语音控制一切设备,通过联动实现各种丰富的场景,但这些还远未达到我心目中对”智能“的定义。心情好的时候是不是应该自动帮我放个音乐?是不是早上能帮我自动烤面包?是不是能随时告诉我今天穿什么衣服最合适?我妈说,懒死你得了。

有任何问题,随时留言交流~

作者:热情的沙漠 
出处:http://www.cnblogs.com/buptzym/ 
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

转载智能家居 作者:热情的沙漠 出处:http://www.cnblogs.com/buptzym/的更多相关文章

  1. 【智能家居篇】wifi在智能家居中的应用

    转载请注明出处:http://blog.csdn.net/Righthek 谢谢! 在设计智能家居系统方案时,一个很关键的point就是组网方式.组网方式关系到整个智能家居系统的稳定性.可扩展性.实时 ...

  2. Home Assistant + 树莓派:强大的智能家居系统 · 设备接入篇

    转载:Home Assistant + 树莓派:强大的智能家居系统 · 设备接入篇 目录 HASS 配置框架 主文件设置 Homebridge 设置 鹬蚌相争? 设备追踪设置 更新日志 作者的话 相信 ...

  3. Diy智能家居-1.基于esp8266的语音控制系统(开篇)

    目录Diy智能家居-1.基于esp8266的语音控制系统(开篇) https://blog.csdn.net/arno1988/article/details/82628589 Diy智能家居-2.基 ...

  4. 智能家居实践(番外篇)—— 接入 HomeKit 实现用 Siri 控制家电

    转载:智能家居实践(番外篇)—— 接入 HomeKit 实现用 Siri 控制家电 前面我写了一个系列共三篇的智能家居实践,用的是 Amazon Echo 实现语音控制,但是 Amazon Echo ...

  5. Home Assistant + 树莓派:强大的智能家居系统 · 安装篇

    Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 转载:Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 目录 1. 初始安装 3. Homebridg ...

  6. Android开发SDK接入机智云,智能家居实现APP远程控制多设备

    代码地址如下:http://www.demodashi.com/demo/12847.html 一.前言. 此框架只用了一周星期做了出来,因为对机智云的框架比较熟悉了 !期间SDK初始化出了问题,去咨 ...

  7. 【智能家居篇】wifi网络结构(上)

    转载请注明出处:http://blog.csdn.net/Righthek 谢谢! WIFI是什么.相信大家都知道,这里就不作说明了. 我们须要做的是深入了解其工作原理,包含软硬件.网络结构等.先说明 ...

  8. DIY智能家居——零基础入门篇

    概要 本文主要根据笔者从零开始接触硬件,以小白视角开启IoT探索,根据相关资料DIY一个温湿度传感器.后经过探索发现新大陆--Home Assistant&Homebridge,最终实现了一个 ...

  9. 使用Olami SDK 语音控制一个支持HomeKit的智能家居的iOS程序

    前言 HomeKit是苹果发布的智能家居平台.通过HomeKit组件,用户可以通过iphone.iPad和ipod Touch来控制智能灯泡,风扇.空调等支持HomeKit的智能家居,尤其是可以通过S ...

随机推荐

  1. SDRAM 之时序收敛(学习了特权老师)

    到现在我还是不太理解SDRAM的时序设置,但是可能蒙对了.(呵呵) 开发环境: quartus II 13.0   板子: DE2 EP2C35F672C6N 时序约束step 1:create cl ...

  2. babel-preset-latest使用介绍

    本文介绍babel中的babel-preset-latest插件 简介 该插件的作用是包含了每年的js代码转换规则 默认包含es2015,es2016,es2017,默认对这些代码都会进行转码,从而方 ...

  3. Python中常用模块一

    random模块 import random # 应用数学计算 print(random.random()) # 取随机小数 范围是 0-1之间 # 应用抽奖 , 彩票 print(random.ra ...

  4. Elasticsearch集群如何扩容机器?

    前提, Elasticsearch-2.4.3的3节点安装(多种方式图文详解)   比如,你已经成功搭建了3台机器的es集群,如我这里分别是192.168.80.10.192.168.80.11.19 ...

  5. Ant 执行 exec cmd.exe 时路径包含空格的问题

    需求描述 通过Ant脚本调用bat脚本 问题描述 bat脚本所在目录名称包含空格(space),cmd.exe调用时候报错The system cannot find the path specifi ...

  6. ThinkPHP5如何引用新建的配置文件?

    1.在Application文件夹下建立extra 文件夹,并把新建的配置文件(例如字典配置文件dictConfig.php等)放入此文件夹: 2.在代码中使用 Config::get("d ...

  7. Java虚拟机(二):垃圾回收算法

    一.介绍 GC(Garbage Collection),垃圾收集 Java中,GC的对象是堆空间和永久区 二.GC算法 1. 引用计数法 老牌垃圾回收算法 通过引用计算来回收垃圾 Java中未使用,使 ...

  8. 思考ASP.NET网站静态化的利与弊

    最近在思考网站要不要进行静态化的问题,在网上收集和整理了有关静态化利与弊的资料,于是写下此博文分享到网络上.由于本人是一名asp.net开发人员,所以本文的观点可能无法涉及到全部方面,但是比较注重于使 ...

  9. web服务器推送技术

    传统模式的 Web 系统以客户端发出请求.服务器端响应的方式工作.不能满足很多现实应用的需求,譬如: 监控系统:后台硬件温度.电压发生变化: 即时通信系统:其它用户登录.发送信息: 即时报价系统:后台 ...

  10. c++ 流状态

    这里是对cin中函数的作用的补充.