【设计方案】基于iOS的智能家居安防系统移动端设计
基于iOS平台的设计与开发技术,在异构网络中实现一种智能家居报警系统,用以解决智能家居中的安防问题。在该安防系统中,信息采集端由ZigBee无线传感器节点(监控节点)以自组织方式构成,可采集监控区域的实时信息并将报警信息传递给服务器。基于iOS技术开发的移动客户端可帮助用户采取相应的报警处理和操作措施。
一、总体方案设计
总体设计方案如图1所示,该报警系统主要包括ZigBee数据采集端、报警管理服务器端、iOS移动客户端三个子系统。数据采集端通过串口与报警管理服务器端相连接,负责采集家居环境中的监控信息,并根据硬件智能控制机制采取相应报警操作。iOS移动客户端负责报警信息的推送以及报警操作的控制,通过WLAN/GPRS网络与报警管理服务器端相连接。报警管理服务器端负责转发和处理信息采集端发送的报警信息,以及响应移动客户端的操作信息。数据采集端和报警管理服务器端仅做简要介绍,本文将详细介绍基于iOS的移动客户端开发。
二、系统设计与实现
1、ZigBee数据采集端设计与实现
数据采集系统采用Zig-Bee无线节点采集并发出报警信息,利用人体热释电红外传感器(HC-SR501人体感应模块)实时感应人体入侵信息,利用门磁开关模块(KTMC8)感应门或窗的被动开启操作。该数据采集方案利用了ZigBee自组网无固定基础设施的优势以及多源传感器信息融合的特点,能够保证家庭环境信息感知的实时性与准确性。
2、报警管理服务器端设计与实现
报警管理服务器采用的是Tomcat8.0服务器。Tomcat8.0服务器是一种免费的开放源代码的Web应用服务器,运行时占用的系统资源小,扩展性好,适用于小型应用服务端。
3、iOS移动客户端软件设计与实现
移动客户端是基于iOS移动终端进行开发的,报警信息的发布可通过文字和图像等信息承载手段来实现。考虑到其他不利因素,如终端设备不稳定的网络速度和信息处理的载荷变化等,本文中基于iOS平台的智能家居报警系统采用文本信息推送的形式发布报警信息。终端收到推送消息后,提醒用户可在终端采取相应的报警操作,如开灯、拍照、拨打电话等。
(1)开发平台
iOS是由苹果公司开发的移动操作系统,主要应用对象为苹果公司出品的相关移动设备。该操作系统具有简单易用的界面、强大的功能以及超强的稳定性,据KantarWorldpanelComTech发布的全球智能手机季度销售报告显示,在2015年第二季度国内的移动终端设备领域,iOS设备占据了24.4%的份额,创历史新高,越来越多的移动端用户选择使用iOS设备。与Android平台相比,应用iOS系统的移动终端设备以视图优先为原则,使用较少的框架,保证了开发者对硬件最有效的使用。同时,iOS系统具有较高的安全性,所以这类设备的优势主要体现在良好的用户体验和较为安全的使用环境。iOS移动客户端的开发使用的是苹果公司提供的非开源集成开发环境Xcode6.1,编程语言采用的是Objective-C。智能家居报警程序的前期调试在Xcode模拟器上完成,后期测试与调试在真机上完成。
(2)软件主程序架构设计
首先进入移动端程序,用户需要登录对应账户。移动端通过WLAN/GPRS实时接收报警管理服务器端发送的报警消息,如有报警消息,用户可根据不同的报警消息采取相应的报警操作。如果当前报警操作已完成,则再次进入接收推送消息的状态。按照上述方式,程序循环执行,图2给出了软件主程序流程图。
(3)主界面设计
如图3所示,移动终端应用程序主界面包括监控区域、情景设置、监控详情和其它四个功能模块。
1.监控区域:删除或添加对指定房间的监控;
2.情景设置:对不同的监控区域设置不同的监控条件,包括离家、回家和休息三种监控状态设置。此外,用户也可以添加其他自定义的报警操作;
3.监控详情:以图片形式显示监控区域画面,用户基于此监控画面可采取人为报警操作;
4.其它:提供移动端程序的相关信息,如用户登录、关于软件、版本更新等功能。
(4)报警消息推送设计
该移动客户端使用iOS消息推送机制实现报警消息的推送,该消息推送机制是在应用程序APP、APP服务端(YourServer)与APNS(ApplePushNotificationService)服务器之间完成的。消息推送流程如图4所示,推送流程功能说明如下:
1.应用程序(APP)通过iOS系统向ApplePushNotificationService(APNS服务器)注册消息推送服务并申请DeviceToken(设备标识);
2.APNS服务器将DeviceToken发送给APP;
3.APP将DeviceToken发送给YourServer(APP服务端);
4.APP服务端向APNS服务器发送推送消息;
5.APNS服务器将推送消息发送给APP。移动端报警消息推送提示界面如图5所示。
(5)用户报警操作设计
用户报警操作界面如图6所示,当移动端设备收到APNS服务器发送来的推送消息后,用户根据推送消息及时采取相关报警操作,如点击“灯光”按钮,实现对监控区域灯光的开关控制功能。点击“拍照”按钮,实现拍照记录监控区域的功能。点击“报警电话”按钮,实现拨号报警功能。上述操作均在iOS移动客户端实现,用户通过操作移动端,经过报警管理服务器端将相关操作信息转发到数据采集端,最终数据采集端实现相应的操作,达到家庭环境智能家居安防的目的。
三、系统分析与测试
软件测试是程序开发的重要环节,同时也是保障应用程序正常运行的关键。本文开发的程序分别在XcodeSimulator(Xcode模拟器)和iOS真机设备两个平台进行了测试。包括延时测试和iOS设备兼容性测试两部分内容。
延时测试,包括入侵报警消息推送延时和安防操作延时,此处延时包括硬件延时和软件延时的总和。由测试统计结果可知,不同的延时均达到了系统的要求,延时测试结果如图7所示。iOS设备的兼容性测试包括该报警系统软件对当前国内iPhone主流机型的兼容性,经测试,该移动客户端能够兼容目前iPhone主流机型。iOS设备兼容性测试结果如表1所示。经过不断的测试与改进,智能家居报警系统的延时和设备兼容性均达到设计要求。
结 语
本文设计的基于iOS平台的人员入侵报警系统,着眼于智能家居安防的需求,可应用于多种不同的场景,如家庭、仓库、小型超市、个体商店等。结合ZigBee节点的无线组网优势,实现了不同监测区域的灵活布网。面向iOS移动客户端进行开发,使持有iOS设备的用户能够使用该系统,这将增加智能家居安防系统的目标用户。因此,该系统的设计,较好的适应了智能家居安防系统的需求,适应了智能家居行业的发展方向。未来工作将根据ZigBee无线网络的特点,进一步优化iOS移动终端的性能,增加更多的监控措施,帮助用户获得更完美的使用体验。