文章目录

注:本文内容的准确性仅限于笔者写该篇文章时的情况,不保证后续与实际项目代码一致。实时内容还请关注Github项目托管页面:https://github.com/GenialX/hestia-server

树莓派,一个五脏俱全,集几乎所有功能于一身的微型计算器。大约一两月之前,屈屈300百大洋收入囊中。

入手之后,出于对自动化的兴趣,慢慢地研究如何实现室内家电的智能自动化控制。在断断续续地,不断地摸索之后,有了若干想实现的点子,迄今为止也有所实践。

点子

  • 利用红外线传感器智能控制空调、电视等基于红外遥控的家电设备;
  • 智能控制家中的灯泡设备(部分基于网络协议);

方案

硬件

首先,除了树莓派之外,还需要如下硬件:

  • 移动端设备 Android手机一台(iPhone手机当然也没问题,但是本案例中只基于Android手机做了实现)
  • 外网可直接访问的服务器一台(本案例使用阿里云服务器)
  • 基于树莓派(点我购买)的传感器若干
  • 基于光敏电阻的光线传感器一个

软件

此外,本案例同样需要如下软件环境的支持(注:如果您完全不懂软件,且不愿意为实现本案例的结果而学习软件知识,那么下面的需要软件知识的相关内容可以不用深究):

  • 主要涉及的编程语言:Java(Server & Android)、Python
  • 基于Linux系统的公网服务器
  • 基于Android O系统的移动设备(笔者亲测小米Mix 2有效)
  • 基于raspberry系统的树莓派

架构

系统大致分为三部分

  • 服务端
    • Hestia Server 部署在公网服务器中的项目
  • 客服端
    • Hestia RPi 部署在树莓派中的项目
    • Hestia Android 部署在安卓手机移动设备中的项目

各部分的主要用途

  • Hestia Server 用于连接、监控其他客服端,传输命令信息
  • Hestia RPi 用于接受服务端信息、控制传感器等设备
  • Hestia Android 用于发送当前地理位置信息
整体系统架构
Hestia Server 系统架构
Hestia RPi 系统流程
Hestia RPi 系统流程

项目

Hestia Server https://github.com/GenialX/hestia-server

Hestia RPi https://github.com/GenialX/hestia-rpi

Hestia Android https://github.com/GenialX/hestia-android

Hestia iOS https://github.com/GenialX/hestia-ios

实现功能

  • 实时监控主人的地理位置,并将位置信息推送到主人的移动端设备
    • 通过GPS实时将当前的经纬度信息发送给服务器
  • 在主人离家或回家时,智能控制灯泡的开关
    • 基于移动设备的位置信息与室内光线传感器的信息来智能控制室内宜家灯泡的开关,对室内灯泡的控制是基于tcp协议的

总结

未完待续…

历史

  • 11/22/17:首次发表
  • 4/13/18:修改
  • 5/15/18:增加Hestia RPi系统架构图

文章来源:胡小旭 => [开发中]基于树莓派的智能家居项目的设想与实现 Hestia

相关文章:Android O后台持续获取地理位置的简单调研过程

Share:

3 comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.