未来智讯 > 智能家居论文 > 基于Android的智能家居客户端设计

基于Android的智能家居客户端设计

发布时间:2018-12-14 01:06:04 文章来源:未来智讯    
    基于Android的智能家居客户端设计作者: 李官敏 金俊秀   在智能家居系统中,为满足用户在户内外方便地实现家居抑制的功能,本文以Android手机操作系统为平台,设计和实现了通过智能手机进行家居抑制的客户端软件。该客户端软件主要由基础功能模块、通讯模块、数据库模块和日志更新模块组成。经测试,该客户端操作大略、快捷,能正确地实现家居中的家电抑制及安防监视等功能。
  Android智能家居客户端
  1引言
  智能家居以住宅为平台,通过网络技能、自动抑制技能、计算机技能将家居生活环境中的各种设备连接起来,实现家居生活环境的智能化抑制,为用户提供一个更加人性和智能化的居住环境[1]。
  本文旨在设计基于Android平台的智能家居远程客户端软件,该客户端具有易维护性、可扩展性和平安性的诸多优点。相比于传统的电话抑制,它解决了被控设备单一,无实时监控的问题;相比于Web页面抑制,它能快速刷新页面,提高了事务效率。
  2智能家居系统整体构架
  在基础的智能家居抑制系统中,主要包括Android手机客户端、网关和家用设备三局部。Android手机客户端通过触屏来实现与用户的交互,网关负责将客户端的指令发送给家用设备,并将设备状态信息反馈给手机。在一些远程抑制系统中还包含了服务器,它可利用不同网络和客户端、网关连接,主要负责信息的转发。由此可见,手机客户端是智能家居系统中的不可缺少的一局部。智能家居系统的整体结构示意图如图1所示。
  3客户端软件设计
  客户端软件的功能需求便是能满足客户的需求,将生活中切实的需要和软件的设计联合起来。因此本客户端软件充分考虑前后台的基础操作,将功能划分为四局部,由基础功能模块、通讯模块、数据库模块和日志更新模块组成。基础功能模块主要包括了用户的注册管理、火灾煤气泄漏的监测、对家电的实时抑制和实时的视频显示功能。日志更新模块包括了日志记录的查询和软件的版本更新。客户端的功能划分图如图2所示。
  3.1基础功能模块
  (1)用户管理
  出于平安性的考虑,用户在登陆前需要通过身份信息的验证。在初始界面中用户输入用户名和密码,通过网络远程登录智能家居主机。最初,软件会验证用户名、密码是否为空;其次,软件验证输入内容的格式和字符的准确性;再次,软件识别输入的内容与智能家居主机所认证的用户信息进行对比;最终,软件记录认证后的用户验证信息,加密存储到客户端中,方便用户再次登录。如果信息通过验证,则用户登录智能家居主机并建立稳定、可靠的通讯。
  (2)环境监测
  环境抑制模块主要用于家居环境的实时显示,通过烟雾、温度、振动、红外传感器定时采集室内环境信息并进行显示。由于环境监测模块不过对传递数据进行分析及展示,因此并不依赖于用户的操作。这局部代码选取Android中的Service组件准时地更新数据信息,这样在用户进行其他操作时,它仍可自行运行,降低了运行时资源管理器终止的可能性。
  (3)家电抑制
  智能家居客户端最重要的设置是家庭电器的集中抑制。由于常见的家用电器种类和数量都对照多,因此本客户端软件选取根据房间独立显示的方法。当用户选择某一房间后,用户界面会跳转至房间的电器列表。当点击选择某一特定电器时,会进入电器设置页面,对电器进行操作。家电抑制界面运行效果图如图3所示。
  (4)实时监控
  实时监控模块使用MediaPlayer类和SurfaceView来实现视频的播放,当没有视频时显示“视频不存在”字样。SurfaceView能够直接从内存的硬件接口取得图像数据。因为所有的绘图事务必须得在Surface被创建之后才能起初,而在Surface被销毁之前必须结束,因此在实现过程中需要注意代码的边界重写问题。
  3.2通讯模块
  本客户端使用Android的Socket通讯机制与网关服务器进行连接,选取基于TCP/IP网络协议的传输方式。Socket通讯分为服务器端和客户端两方。服务器端会根据IP地址和指定的端口号建立ServerSocket,并调用accept函数侦听客户端的接入。在客户端,最初要建立Socket类并对其设置连接时限;其次,如果服务器已经开启侦听,双方则可建立连接;最终通过数据流进行数据的传输。因为如果将发送和接收过程放在同一个线程中运行,可能会导致程序崩溃。因此本客户端的发送和接受过程选取两个线程进行处理。
  3.3数据库模块
  本客户端选取Android自带的轻量级关系型数据库SQLite,它占用内存小,支持SQL的所有操作。SQLite数据库主要用于用户登录信息、设备操作情况、报警信息的数据存储,客户端会在数据库中创建相应的数据表并进行数据库的操作。
  3.4日志更新模块
  日志更新模块包括记录查询和软件更新。记录查询模块主要记录了用户的基本操作、发送以及接收指令的时间和内容。软件更新是对旧版本的一种升级方式,如可实现新增功能模块或对bug进行批改等功能。
  4结语
  本文设计了基于Android平台的智能家居客户端软件,对客户端的基础功能模块、通讯模块、数据库模块、日志更新模块进行了设计与实现。并将在Eclipse中开发的应用程序安装到Android手机中,在实验室环境中对各功能进行实验测试。测试结果证明各功能均达到要求,本客户端具较好的通用性,并且移植方便,易于扩展,具有辽阔的应用前景。
  参考文献:
  [1]王朝华,陈德艳,黄国宏等.基于Android的智能家居系统的研讨与实现[J].计算机技能与发展,2012,6(22):225-228.
  [2]Gavalas Damianos,Economou Daphne. Development platforms for mobile applications:status and trends[J].IEEE Software,2011.28(1):77-86.
转载请注明来源。原文地址:https://www.7428.cn/page/2018/1214/54667/
 与本篇相关的热门内容: