基于树莓派的智能家庭网关开发学生:邱志豪李伟煌庄小英任恒庆韦宇翔指导教师:刘持标2015.08.20·提纲1、项目简介2、项目开发的背景及意义3、项目所要实现的具体目标4、项目所实现的具体结果5、结论·项目简介(1)•利用树莓派、Web服务器、Android客户端实现简单的可控制的智能家庭网关。•项目设计把传感器、继电器、红外模块等硬件和树莓派结合起来,制作了一个智能家庭网关。我们将家庭监测和电器控制的相关代码直接写入树莓派中,使得树莓派能够很好的获取并及时处理各种监控数据。同时,依靠所制作的智能网关,我们开发了智能家居监控平台,通过该平台的服务器和客户端,可实现家庭的远程监控。·项目简介(2)•项目设计在树莓派的基础上,结合传感器和Android手机,实时监控家庭环境。•继电器控制模块、红外学习模块、温湿度收集模块、红外人体感应模块。•树莓派、继电器、传感器、Web服务器、Android客户端·提纲1、项目摘要2、项目开发的背景及意义3、项目所要实现的具体目标4、项目所实现的具体结果5、结论·项目开发的背景及意义•如今社会智能家居的使用越来越广泛,网关是智能家居重要的一个组成部分。•智能网关集成了设备控制以及网络传输,智能网关收集数据,传输数据,以及处理数据,通过一个人简单的网关设备可以替代许多复杂的设备以及繁琐的操作。从而使得智能家居更加简便、功能更加完善以及节约成本。•树莓派相当于一台小型计算机,他对于传统网关具有更加强大的功能·项目开发的背景及意义•家庭安防是现代社会的一个重要组成部分,树莓派上加上各种传感器能够实现各种监控。•继电器和传感器以及树莓派结合实现各种设备的自动控制•树莓派加上红外接受和发射模块能够摆脱传统遥控器,实现智能控制·提纲1、项目摘要2、项目开发的背景及意义3、项目所要实现的具体目标4、项目所实现的具体结果5、结论·主要功能实现•温湿度读取:使用DTH11温湿度传感器实时的接收家庭中的温湿度,在超过一定的限度后发出警报并打开继电器从而实现自动控制。•红外人体和继电器:红外人体传感器感应路过的人并打开继电器。•继电器的开关:书写继电器控制能够实时的显示开关,并配合上红外人体感应传感器,当有人通过的时候将自动打开继电器·主要功能实现•红外学习模块:学习红外设备发出的红外信号,在需要的时候进行发送。•Android控制端:通过Android控制端发送指令到Web服务器从而实现对树莓派网关的控制。用到的主要开发环境Java开发环境:JavaDevelopmentKitWeb开发环境:MyEclipseAndroid开发环境:AndroidSDK树莓派开发环境:python数据库服务器:MysqlWeb服务器:ApacheTomcat采用的框架:struct2+hibernate+spring·系统结构演示示意图基于树莓派的智能家庭网关拓扑图树莓派智能网关温湿度传感器红外学习模块红外人体感应继电器Web服务器数据库服务器手机客户端·Web端和Android功能分析图基于树莓派的智能家庭网关Web服务器手机客户端继电器控制客户登录温湿度读取折线图显示红外学习模块红外发射模块继电器控制客户登录温湿控制折线图表红外学习红外发射Web端和Android端的功能分析图·系统数据库设计数据库设计包含3张表:t_loginuser、T_redstudy、t_RhTmpdata。t_loginuser字段包括:name(用户名)、password(登录密码)、permission(用户权限)用于用户的登录验证。T_redstudy字段包括:Attribute(所属用户)、Name(红外信号名字)、Parameter(红外代号)、Time(学习的时间)、Des(红外信号的描述)用于对红外学习模块的学习和发射。t_RhTmpdata字段包括:Rh(温度数据)、Tmp(湿度数据)、Inserttime(数据插入时间)用于保存红外信号·Android客户端登陆界面功能界面2、成功后是一个简单的功能选择界面通过按钮进行选择1、输入用户名(name)密码(password)连接的ip进行登录·Android手机继电器控制模块温湿度数据显示·Android手机发射相对应的红外信号学习新的红外信号·Web系统-登录页面输入正确的用户名和密码即可进行登录·Web系统查看用户·Web系统-继电器控制开关灯成功后界面将会有成功或者失败的提示·已学习的红外信号输入相对应的红外信号代号可进行发射操作·Web温湿度折线图显示温湿度的折线数据显示,通过滚动条的选择可以改变选择的时间段·提纲1、项目摘要2、项目开发的背景及意义3、项目所要实现的具体目标4、项目所实现的具体结果5、结论·结论本项目开发了一套基于树莓派的智能家庭网关,实现了实时监听家庭环境、自动控制设备点灯以及其他开关、通过红外的学习和发射来实现远程遥控、以及手机Android端来进行远程控制。再项目设计中从分应用了平时学习到的知识,通过也自学了一些新的知识,与现实生活仅仅结合,学以致用。谢谢!请各位老师批评指正!