logo资料库

基于Android的校园安保巡查系统设计与实现.pdf

第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
资料共8页,全文预览结束
5 10 15 20 25 30 35 40 中国科技论文在线 基于 Android 的校园安保巡查系统设计与 http://www.paper.edu.cn 实现# 朱德雯,徐敬海** (南京工业大学测绘学院,南京 210009) 摘要:为满足保安巡查工作的需要,本文利用四层架构模式设计和开发了基于 Android 的校 园安保巡查系统。论述了该系统的工作原理、总体架构以及基于 Rest 的地图服务的发布, 结合巡查工作的特性,设计满足巡查工作要求的基础数据库;且实现了用户登录、地图浏览、 GPS 定位、巡查任务管理等功能。该系统提高了巡查工作效率,规范了巡查行为,为管理 决策提供及时的信息支持。 关键词:Android;移动 GIS;SQLite 数据库;GPS 定位 中图分类号:P208 Design and realization of school security inspections system based on Android ZHU DeWen, XU JingHai (Nan Jing University Of Technology, NanJing 210009) Abstract: In order to satisfy the need of security inspections work,this paper designs and develops school security inspections system based on Android and adopted four layer schema mode, the paper expounds the working principle of the system and the overall structure and based on the map service release, combined with the characteristics of inspections work, designed the foundation database to meet the inspections, and realize the user login, maps, GPS positioning, tour inspection mission management etc. Function. This system can improve the efficiency of the search, search behavior standard, for management decisions to provide timely information to support. Keywords: Android; mobile GIS; SQLite Database; GPS Location 0 引言 学校安全工作是全社会安全工作十分重要的组成部分。其直接关系到青少年学生的安 全、健康成长,以及千千万万个家庭的幸福安宁和社会稳定。1990 年世界卫生组织发布报 告,在世界大多数国家中,意外伤害是儿童青少年致伤、致残的最主要原因。据调查,1999 年至 2002 年间,北京市共发生学校赔偿经济损失的学生伤亡事故 360 余起,其中有一半以 上学校在处理事故时遇到困难,这再次给校园安保敲响了警钟,然而传统的校园安保需要投 入大量人力、物力、财力,不能进行科学的管理且各部门之间得不到良好沟通,遇到情况也 不能及时反馈,存在很多的弊端。 然而进入 21 世纪后,互联网技术的迅速普及使得 GIS 技术发生了质的变化,Internet 成 为 GIS 新的操作平台,Web GIS 即为 Internet 与 GIS 的结合的产物。当前,随着新技术和 硬件设备不断发展更新,应用领域日益广泛,人们对信息利用的要求也在不断的加深和拓宽, 无线通信技术和网络技术的快速发展,使 Internet 技术与无线通信技术、GIS 技术的结合成 为现实,形成了一种新技术——无线定位技术(Wireless Location Technology)[1],随之衍 基金项目:国家自然基金项目(40901272);国家科技支撑计划项目(2012BAK15B06) 作者简介:朱德雯,(1988-),女,硕士,主要研究方向:地理信息系统开发与应用。 通信联系人:徐敬海,(1977-),男,副教授,主要研究方向:空间技术减灾集成与工程应用研究。 E-mail: xu_jing_hai@163.com - 1 -
45 50 55 60 65 中国科技论文在线 http://www.paper.edu.cn 生出一种新的服务,即空间位置信息服务(LBS)。LBS 是当前移动 GIS 的主要应用方向 之一,它将通信技术与 GIS 技术进行整合,融合了移动通信与网络的技术,使移动 GIS 的 移动环境发生了极大的变化和改善,移动计算成为主流计算环境,并在辅助 GIS 野外工作 方面发挥巨大的作用。本文拟建立一个基于 Android 的统一的、覆盖全校的、实时动态的、 图文一体化的、可视化的巡查与管理的业务处理信息系统。 1 校园安保巡查系统工作原理 日常生活中我们随处可见物业等安保人员对特定的区域、楼宇、设备或货物进行定期或 不定期的安全巡查管理。巡查人员需要对重点部位、重要设备进行分类排查,查找安全隐患, 上报安防事故。在多样化的巡查环境下,安保巡查存在各种各样的问题。首先,旧式的巡查 管理制度都是通过巡查人员在巡查点记录本上签到的方式来对巡查人员进行管理。其次,以 往安保人员是通过双向对讲机,与值班室或其他安保人员进行呼叫求助。因此,在现代化技 术快速发展的情况下,建立一个实时动态可视化的安保系统是亟待解决的问题。 本系统的建立是用来维护校园安全,减少学生伤害事件的关键任务,由于一系列事件的 发生都是突然的,如何在短时间内发现安全隐患,并且在发现隐患后及时做出应对措施是校 园巡查的首要任务。基于 Android 的校园安保巡查系统的工作原理是:(1)组建一个由保 安员组成的安全巡查队伍,形成覆盖整个校园的安保网,平时应该对这些保安进行技术以及 突发事件处置知识的培训,让他们能够更好的完成安保工作。(2)指挥中心通过网络连接分 散在校园各个地区的保安的 android 设备,要求其做出相应的工作回应,时刻掌握每个保安 员的实时动态并且安排好保安的调派工作。(3)一旦校园某个地区发生突发事件,该地区 所在保安员迅速通过 GPS 连接向指挥中心发出位置数据,然后将情况通过影音文件等形式 收集上传到指挥中心服务器。(4)指挥中心工作人员根据上报的数据迅速制定处置方案并 通知到保安员进行实施,将损失减到最少。具体的流程图如图 1 所示: 保安员 收集 突发事件信息 位置数据 下达命令 上报数据 指挥中心 部署 处置对策 图 1 系统工作流程图 Fig. 1 workflow of the system - 2 -
中国科技论文在线 2 基于 Android 的校园安保巡查系统架构设计 http://www.paper.edu.cn 2.1 Android 简介 Android 是由谷歌(Google)和开放手机联盟(Open Handset Alliance)所支持的一个 手机软件开发平台。目前,联盟成员数量已经达到了 34 家, 其中包括手机制造商、手机 芯片厂商和移动运营商等几类。完全开源的特性不仅赢得了广大开发人员的青睐,也为 Android 系统赢得了全球智能手机市场的主导地位[2]。 Android 支持多种无线网络连接方式, 如 GPRS、Wi-Fi、蓝牙等。通过这些方式,Android 手机可以方便地通过无线网络通信,访问 Internet 和各种网络上的服务器。同时,Android 框架提供了对 HTTP 等通讯协议的支持。标准协议的使用,使得客户端与服务器之间的通 讯变得简洁又高效。 2.2 系统总体架构 Android 的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android 分为 四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和 Linux 核心层 [3]。Android 会同一系列核心应用程序包一起发布,该应用程序包包括 email 客户端,SMS 短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用 JAVA 语 言编写的。该系统依照 Android 传统的系统框架一样采用分层架构,由于该系统是基于 Android 的通过无线网定位技术实现的,称之为 eMobile,在它下面分为四层,分别为地图、 核心库、插件工厂以及全局配置,其中,第一层地图层主要用来获取服务器发布的地图,以 及地图的浏览,包括常规的放大、缩小、平移等,其次是地图的查询,包括图层信息查询、 属性查询等功能,最后在地图层可以实现地图的无线定位;第二层核心库中又包含了一些自 定义的组件、系统日志文件、硬件的抽象、SQLite 数据库以及网络通讯,所谓 Android 的硬 件抽象层,简单来说,就是对 Linux 内核驱动程序的封装,向上提供接口,屏蔽低层的实现 细节。也就是说,把对硬件的支持分成了两层,一层放在用户空间(User Space),一层放 在内核空间(Kernel Space),其中,硬件抽象层运行在用户空间,而 Linux 内核驱动程序 运行在内核空间;第三层插件工厂是用来存放业务插件的,这里包含本系统核心的模块校园 巡查模块,它又分为用户登录模块、巡查任务采集模块、巡查任务管理模块、巡查点管理模 块、数据上报模块;第四层是全局配置层,该层主要是加载插件工厂中的业务插件。具体的 架构如图 2 所示: 图 2 系统框架图 Fig. 2 frame of the system - 3 - 70 75 80 85 90 95
100 105 110 115 120 125 130 135 中国科技论文在线 3 系统数据结构 http://www.paper.edu.cn 针对校园区划的特殊性,考虑校园范围内各种地理信息资料不需要进行大量的数据计算 与存储,所以使用的是目前主流的嵌入式关系型 SQLite[4]数据库存储数据,SQLite 支持 NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和 BLOB(二进制对象)数据类 型,它支持的类型虽然只有五种,但实际上也接受 varchar(n)、char(n)、decimal(p,s) 等数据 类型,只不过在运算或保存时会转成对应的五种数据类型。SQLite 由以下几个组件组成: SQL 编译器、内核、后端以及附件。SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE), 使调试、修改和扩展 SQLite 的内核变得更加方便。 在本系统中,保安员是整个系统的核心成员,它是指挥中心与实际巡查地区信息的传送 带,因此保安人员的数据即是整个系统数据库的核心成分。他们的主要任务是收集巡查信息, 具体有:汇报当前所在位置、上报数据。 为了便于 Android 设备的操作,将位置信息集合在保安员属性数据中,数据的属性信息 包括:姓名(name)、巡查点(workpoint)、手机号码(mobilephone)、纬度(latitude) 和经度(longitude),如表 1 所示保安员属性设计表。姓名和巡查点主要用于指挥中心数据 查询;手机号码用于指挥中心联系到保安员并且互相协作;纬度和经度初始值都是 null。一 旦有突然事件发生时,保安员汇报当前位置及信息。 name … workpoint … latitude null longitude null 表 1 保安员属性表 Tab. 1 attribute table one of reporters mobilephone … 4 基于 REST 架构的地图数据的组织与发布 发布成地图服务是移动开发的最重要关键技术之一,它是一切移动开发和使用的基础。 数据只有被发布成服务,才能被在线浏览、查询和编辑。ArcGIS Server 提供的网络数据服 务类型有:地图服务、地理编码服务、地理数据服务、几何服务、地理处理服务、Globe 服 务、影响服务和搜索服务,涵盖的功能包括:要素访问、地理编码、地理数据、地理数据访 问、几何、地理处理、Globe、成像、JPIP、KML、制图、移动数据访问、网络分析、搜索、 WMS、WFS 和 WCS。其中 WMS、WFS 和 WCS 是 ArcGIS Server 支持的 OGC 标准服务[5]。 本系统仅要求选择移动数据访问(Mobile Data Access)功能,使地图具备地图服务和 移动使用能力,选用的是基于 REST[6]架构的地图服务端发布,REST 是一种面向资源(ROA) 的架构,这里的资源所指的不单是数据,而是数据和表现形式的组合。它以资源为研究对象, 通过划分资源、定义资源,然后用超媒体将资源串起来,提供客户所需求的服务,每个资源 必须用 URI 唯一标识。本文中的 WebGIS 专题数据服务端选用是 ArcGIS Server 9.3,其增 强了对 REST 地图服务的发布功能,并提供了功能强大的 REST API。地图服务发布过程可以 直接登录到 ArcGIS Server 服务上进行地图服务发布,也可以使用 ArcCatalog 客户端进行 地图发布。然后使用 WEB 浏览器及地址就可以轻松地访问 ArcGIS Server 发布的各种 REST 服 务资源,如地图、图像、数据以及 geometry、geoprocessing 服务等。ArcGIS Server 向 用户提供了创建,发布和提供 REST Web 服务的方式。用 ArcGIS API for Javascript 开发 的服务器端程序使用 Javascript 作为前端展现,后台连接 ArcGISServer REST Services, 当然 ArcGIS Server 可以安装在网络上的任何一台机器上面。ArcGIS Server REST API 使 - 4 -
中国科技论文在线 http://www.paper.edu.cn 用统一的访问接口(HTTP),所有的交互都通过 URL 来获得,使用 REST 服务端点必须知道它 表 示 服 务 器 目 录 (Servere Catalog) , 在 ArcGIS Server 中 , 该 端 点 默 认 的 URL 140 是:http:////services/,其中:http://是 ArcGIS Server 主 机 名 ; / 是 实 例 名 , 这 是 在 安 装 ArcGIS Serve 的 时 候 指 定 的 。默 认 是 “/arcgis/rest”;/services:表示 REST 服务端点。页面中将会看到根目录下所有的文件 夹。如图所示: 145 150 155 160 165 图 3 URL 交互地址 图 4 rest 根目录 Fig.3 URL interact Address Fig.4 the root of rest 地图服务发布后,当用户浏览不同比例尺下的地图信息时,整个地图就需要重新加载, 这样就需要大量时间。为了提高浏览速度,就需要对发布后的地图进行切片处理,即把发布 后的地图切成静态图片。地图的预生成一般将指定范围的地图按照指定尺寸(如 256,300 等)和指定格式(如 JPEG,PNG 等)切成若干行及列的正方形图片,切图所获得的地图切片 也叫瓦片(Tile),切图之前一般需要对某一范围的原始值进行修正,使其长高比为某一便 于切图的比例,然后从左上角开始对此固定范围进行切图,后续的不同等级地图之间采用四 叉树数据结构,第 level 级上的一张瓦片(Tile)到第 level +1 级将裂变成 4 张,这种结构有助 于切图和显示,但得出的地图没有固定的比例尺,比例尺随地理纵坐标变化,因此进行地理 量算时不是根据比例尺而是根据地理坐标直接计算,这里采用等距圆锥投影。 本系统采用了 ArcGIS Server 切片工具进行地图的切片,首先设定一个原点作为地图切 片的起始点(默认是(400,-400),这是个经纬度坐标,设这个值可以把其他地区的数据 连接进来,使不同服务的数据可以得到有效的拼接,以一定的规格(长宽为 2 的 n 次方的像 素)把地图切割成若干的小图片,并以科学命名的方式存贮到计算机磁盘。命名的规则是各 比例尺的图片放在名为 LXX 的文件夹里面,第一个比例尺的文件夹名为 L00,第二个比例 尺的问 L01,如此类推。比例尺文件夹目录下还会有 R 开头的文件夹,R 表示的 ROW,当 前比例尺的瓦片每一行对应一个文件夹。R 文件夹的命名方式是瓦片的行序列(用 rIndex 表示),把 rIndex 转为 8 位 16 进制,不足的在左边补 0,用代码公式表示 FolderName = "R"+rIndex.ToString("x").PadLeft(8, '0') 。R 文件夹里面保存的就是瓦片,瓦片的命名方式跟 R 文件夹的命名方式相似,以字母 C 开头,后面是瓦片在该行的列序号(用 cIndex)表示, 后 面 依 然 是 一 个 8 位 16 进 制 FileName = "C"+rIndex.ToString("x").PadLeft(8, '0')+ "."+format.ToString(),如图 5 所示: - 5 -
中国科技论文在线 http://www.paper.edu.cn 170 175 图 5 瓦片地图 Fig.5 Tile Map 5 系统功能的开发与实现 系统主要包括 9 个功能模块,这 9 个功能模块如图 6 所示 图 6 系统功能图 Fig.6 the function of system 5.1 GPS 定位及拍照上传功能的实现 180 移动定位[7]是指通过特定的定位技术来获取移动手机或终端用户的位置信息(经纬度坐 标),在电子地图上标出被定位对象的位置的技术或服务。 Android 提供的定位技术有两种,一种是基于 GPS 的定位,一种是基于移动运营网的基 站的定位。基于 GPS 的定位方式是利用手机上的 GPS 定位模块将自己的位置信号发送到定 位后台来实现移动手机定位的。基站定位则是利用基站对手机的距离的测算距离来确定手机 位置的。后者不需要手机具有 GPS 定位能力,但是精度很大程度依赖于基站的分布及覆盖 范围的大小,有时误差会超过一公里。为了精确得到巡查人员的位置坐标,本系统采用的是 GPS 定位来实现,在 Android 中封装了 GPS 相关的类进行 GPS 通讯和数据处理,调用相应 的函数接口便可与 GPS 通讯和处理、解析 NMEA 语句,提取所处位置的坐标信息,同时记 录设施相应的属性信息,这些定位服务的相关类基本上都在 location 包中。在 Android 中实 现 GPS 定位最主要的就是要通过 OnCreate 方法给定义的 LocationManager 进行赋值,然后 对其进行位置的监听直至用户停止定位。 并且通过本系统,保安员可以现场进行拍照,并将现场情况更加直观的反馈到指挥中心, 185 190 为作出更加准确的处置决策提供依据。 - 6 -
中国科技论文在线 http://www.paper.edu.cn 图 7 系统拍照功能 图 8 定位功能 Fig.7 camera function of system Fig.8 Location function 5.2 数据上报功能的实现 在巡查系统中,确保能够上传数据是关键,为保证服务器端工作人员能第一时间掌握巡 查情况,必须建立相关的通讯协议,而 HTTP 是目前在 Internet 上应用最为广泛的通信协议 之一,简单的说就是当客户端连接到网络后就可以使用 HTTP 协议进行与服务器的通信了 [8]。即,客户端通过 HTTP 协议向服务器发送 GET 请求,服务器接收后同样使用 HTTP 返 回用户端请求的数据。整个系统的通信协议由两部分构成, 分别是底层的 HTTP 网络协议 和上层的自定义通信协议。其中,通信协议定义了服务器与客户端的交互方式, 客户端按 照请求协议进行请求报文的组织, 服务器端则按照响应协议进行相应报文的组织。正是因 为有了统一的通信协议,客户端与服务器的会话得以进行,也使客户端跨平台成为可能[5]。 具体的联系关系如图所示 图 9 用户数据交互 图 10 数据上报 Fig.9 data interaction of users Fig.10 data reporting Android 中提供的 HttpURLConnection 和 HttpClient 接口可以用来开发 HTTP 程序。首 先需要明确的是,Http 通信中的 POST 和 GET 请求方式的不同。GET 可以获得静态页面, 也可以把参数放在 URL 字符串后面,传递给服务器。而 POST 方法的参数是放在 Http 请求 中。HttpURLConnection 是继承于 URLConnection 类,二者都是抽象类。其对象主要通过 URL 的 openConnection 方法获得。HttpURLConnection 默认使用 GET 方式,如果需要使用 POST 方式,则需要 setRequestMethod 设置;使用 Apache 提供的 HttpClient 接口同样可以进 - 7 - 195 200 205 210 215
220 225 230 中国科技论文在线 http://www.paper.edu.cn 行 HTTP 操作。对于 GET 和 POST 请求方法的操作有所不同,使用 POST 方法进行参数传 递时,需要使用 NameValuePair 来保存要传递的参数;另外,还需要设置所使用的字符集。 HttpClient 实际上是对 Java 提供方法的一些封装,在 HttpURLConnection 中的输入输出流操 作,在这个接口中被统一封装成了 HttpPost(HttpGet)和 HttpResponse,这样,就减少了操作 的繁琐性。另外,在使用 POST 方式进行传输时,需要进行字符编码。通过综合考虑,本系 统最终采用的交互方法是通过 HttpClient 来开发 HTTP 程序,从而实现客户端与服务器端的 数据交互。 6 结论 本系统是基于 Android 的一个校园安保巡查系统,它在服务器端采用基于 REST 架构技 术提供 GIS 服务,并且采用主流的切片技术完成了地图的快速浏览。系统主要集成了地图 浏览、查询、定位等功能,注重用户体验和个性化需求,能使保安随时随地巡查校园并反馈 给服务器端,服务端能够根据保安采集的信息做出应急对策,这样大大减少了人力、物力、 财力的投入,实现巡查工作流程的动态化、自动化、网络化、无纸化,增强各级部门之间以 及与其他业务之间的互动,提高巡查效率,规范巡查行为,为管理决策及时提供相关技术支 持。为全校逐步建立“天上看、地上查、网上管”的新型管理运行模式提供技术支撑。但是 还需要进一步深入开发,例如保安之间可以进一步互动,查询身边最近的保安所处位置等拓 展功能,增加系统的扩展性。 235 [参考文献] (References) [1] 卢亚辉,杨崇俊.基于 Web Services 的 Web GIS 系统研究[J].计算机工程与应用,2003,25:l5-19. [2] 差沙,地狱男爵.用 Android 开发手机应用[J].程序员,2008(1):56~ 61. [3] 姚尚朗,靳岩. Android 开发入门与实战[M].北京:人民邮电出版社, 2009. [4] 舒贤华. 基于 Android 平台的手机 Web 地图服务设计[D].大连海事大学硕士学位论文, 2009. [5] 邬伦,唐大仕,刘瑜.基于 Web Services 的分布式互操作 GIS[J].地理与地理信息科学,2003, 14(4): 28. [6] 许卓明,栗明,董逸生.基于 RPC 和基于 REST 的 Web 服务交互模型比较分析[J].计算机工程,2003, 29(20):6-8. [7] 公磊,周聪. 基于 Android 的移动终端应用程序开发与研究[J].计算机与现代化,2008(8):85~ 89. [8] 左鹏.分布式移动 GIS 的研究[D].河海大学:2004:15~35. 240 245 - 8 -
分享到:
收藏