论文部分内容阅读
摘要:本文中设计开发的基于C/S模式的人员定位信息监控系统即是由监控端、被监控端和服务器端三部分构成的,集人员定位信息存储、显示、处理等功能实现对指定客户端进行定位,监控,历史轨迹管理的系统。本系统将人员当前坐标或历史轨迹等信息结合百度地图将直观、可视化的结果显示给用户,用户根据显示的人员位置信息进行监控,保护,管理被监控人员,具有一定的研究价值和现实意义。
关键词:人员定位 C/S模式 Android系统 百度地图
【分类号】:TP277
近些年儿童和老人等弱势群体的安全问题日益突出,尤其我国老年化日益严重,监护人如何保障孩子和老人的安全受到全社会关注。当前,手机得到普及,因此,如何利用手机实时监控和回溯孩子及老人历史移动轨迹,为这些弱势群体提供监控,保护他们的安全,是本论文研究的主要内容。[1]
本系统将在Android系统手机端,实现当前位置监控,历史轨迹浏览,轨迹动画回溯等功能,可以对被监控人员位置的实时掌控和动态分析。系统采取基站、Wi-Fi、GPS三种定位方法结合的方式,保证了定位数据的完整性和有效性。结合百度地图API接口,实现位置信息直观的显示,极大地方便了用户对被监控者位置信息和状态的管理和判断。因此,本系统对于特定人群的保护和监督,具有一定的使用价值。[2]
1 系统结构
整个定位监控系统的架构为C/S模式,服务器端的开发采用Windows+iis+Sql Server+ASP.NET MVC3的方案,手机部分则是采用Android系统平台,并且整合了百度地图接口,用于地图显示。系统结构分为被监控端、监控端和服务器端三个部分,如图1所示。被监控端将自己的经纬度坐标信息以一定的采样周期和传输周期上传至服务器;服务器端接受坐标信息后进行处理,并保存在数据库中。指定权限的监控端用户在登录后,从服务器数据库中获取指定用户的当前位置信息或历史位置轨迹,并在地图中查看。
2系统基本功能模块
2.1被监控端
被监控端为安装在被监控者手机中的一个后台程序。在被监控者开机后,程序将自动运行在手机后台。目前手机定位的方式主要有三种,第一种是GPS卫星定位,第二种是基站定位,第三种是Wi-Fi定位,其中GPS卫星定位的精确度最高,但是条件较高,能耗也比较高,而且GPS信号在室内几乎无法接收,因此當进入室内时或者无法获得GPS信号时将转为基站定位或Wi-Fi定位,根据基站或Wi-Fi定位获取相应的位置坐标。每隔一段时间,手机将根据网络状况选择合适的定位方式取得手机的位置信息,并将数据处理后发送到服务器。如果手机的网络状况不允许与服务器进行对话,则将手机的位置信息存在手机中,待手机网络状况恢复后再将位置信息打包传递给服务器。
2.1.1被监控端功能
被监控端程序除了具有基本的定位、存储以及与服务器端的交互功能以外,还具有以下功能
(1)静默安装
被监控端的安装方式采用静默安装的模式,安装时无需用户干预,直接安装在被监控端手机上,可以方便用户的使用也有利于系统的推广。
(2)隐式运行
被监控端程序通过开机广播机制唤醒service组件,运行于手机的后台,可以有效的避免因为错误操作而关闭程序,并且也保证了定位的完整性和有效性。[3]
(3)危险报警
当被监控者的安全受到侵害时,通过针对手机的特殊操作,如较长时间按住菜单键等。系统将自动向监控端发送带有报警标示以及位置信息的短信,监控端用户就可以及时的掌握当时情况以及联系相关人员处理突发情况,从而有效的保护被监控者,及时的控制突发事件的事态。
2.2服务器
服务器端的主要功能包括:通过管理员账户对监听手机和被监听手机实现增加、删除、修改、查找等管理操作;通过在线地图显示功能,可以在线查看监控端和被监控端手机的当前位置信息和历史轨迹坐标;服务器系统与手机(的通信接口实现,接受被监听手机的轨迹坐标并进行文件存储,与监听手机进行交互实现监听手机的登陆、获得监听列表、查看轨迹坐标等功能。
2.3监控端
监控端为安装在监控者手机上的安卓应用,用户通过申请相应服务并获取密码后就可以登录客户端程序进行使用。
2.3.1监控端界面设计
2.3.2监控端功能
(1)实时定位功能
使用监控端的用户通过这个模块,可以在地图中看到所有权限内用户的实时位置,位置由定位标识标出,并配有用户信息。监控者可以快捷的获取用户位置,进行实时监控。
(2)历史轨迹回放(动画回放,智能显示)
使用监控端的用户通过选择单一成员,并设置需要观察的时间段,就可以获取这一成员在一定时间内的历史轨迹,轨迹点由标识标出,并配有坐标以及事件信息。此外,该界面还提供了动画回访和智能显示功能,方便用户更直观更清晰的查询历史轨迹回放。
(3)被监控端参数设置
本模块的主要功能是针对某一被监控端的参数进行设置,参数主要包括采样周期和传输周期。采样周期指的是被监控端记录定位点的时间间隔,传输周期指的是被监控端向服务器传输坐标点数据包的时间间隔。通过这个模块可以根据需要控制坐标点的采样以及传输,保证了轨迹的针对性,相对节省了被监控终端的电量和流量。
(4)通讯录及信息备份
本模块可以将移动终端的通讯录和短信备份在服务器端,可以解决手机丢失或手机故障引起的通讯录及短信缺失等情况。[4]
(5)信息安全保护
被监控端软件可以远程清除手机信息,当手机丢失时,通过发送特定信息代码,移动终端可自动清除可能含有保密、隐私信息的通讯录和短信,从而保证了用户的信息安全。 3.数据采集处理利用流程
本系统是由定位数据作为支撑的,被监控端,监控端以及服务器端之间的数据传输方式是基于http协议和JSON数据传输的。其中,监控端向服务器端发送请求的方式是基于http协议的,而服务器将以JSON数据包的形式返回相应的数据,被监控端以http方式向服务器端发送位置数据,将系统的三个部分有机的结合在了一起,可以实时的进行数据交换。定位数据的表现形式也各有不同,如图所示。其中,被监控端通过功能模块采集定位信息,根据使用场所不同分为GPS定位信息,基站定位信息,Mac地址信息三种;服务器端将定位信息以经纬度信息和时间信息接受并储存在数据库中;监控端将服务器端传递的经纬度信息转化为百度地图坐标再结合时间信息显示在地图上,并加以标注。
4.系统实现的关键技术
4.1百度地图API
本系统中主要应用了两个百度地图的定位SDK和Android SDK。定位SDK是移动终端应用提供的一套简单易用的LBS定位服务接口,在被监控端中集成百度定位SDK,可以通过该接口想百度定位服务请求位置信息,该SDK的定位方式为混合定位,通过GPS定位、基站定位、Wi-Fi定位和传感器信息满足室内外等多种情况下的定位需求。Android SDK是应用于Android系统移动设备的地图应用,可以方便开发者访问百度地图服务,将与地图相关的信息直观的展示出来。[5]
4.2JSON数据传输
本系统中三个部分互相传输的通信模块考虑过多种数据格式,最终选用了JSON数据交互格式,JSON数据格式易于接受,易于代码编写,是一种轻量级的数据交换格式。JSON采用完全独立于各个语言的格式,可以作为比较理想的数据交换语言。JSON数据分位对象和数组两种结构,对象是一个无序的“‘名称/值’对”的集合,数组是值的有序集合。位置信息、时间信息以及用户信息通过JSON数据包的形式进行传递方便易行,也提高了编程和使用效率。[6]
4.3animation組件
Android系统中的简单动画设计主要是利用Animation框架进行,该框架开发简单,开发周期较短,比较适用于应用程序中用于展示的辅助动画的开发。Android系统中提供了两种Animation模式,Tween Animation和Frame Animation。本文中主要用到了Tween Animation中的Translate Animation,这个组件可以实现控件的平移。首先,将定位信息转化为屏幕坐标,再将坐标通过算法转化为平移方向,其次,将要平移的方向设置为队列,设置速度参数,再绑定监听器。实际应用时,当用户点击相应的按钮时,轨迹回放动画就可以播放了。[7]
5.结论
本文采用C/S架构,结合SQL数据库和百度地图API技术,在Android移动终端以及服务器上实现人员尤其是特殊群体的定位,监控,位置显示,并结合信息保护等相关功能。该系统经过实际测试,运行稳定,定位准确,通过三种定位方式的结合,可覆盖室内室外等不同环境,提高了定位信息采集的完整性。历史轨迹回放功能除了传统的位置显示外,还提供了动画方式展示,使得位置显示更加直观,方便用户使用。在保证隐私以及合法合规的前提下,用户可以在日常的手机终端上对被监控者进行定位、监控以及管理。当然,系统还有一些需要改进的地方,例如,可以对获取的定位数据进一步进行分析,在数据量足够大的情况下,可以针对一个群体,进行行为分析。随着数据量的增加,位置信息在数据库中的存储方式也是需要继续研究的方向之一。围绕百度地图也可以开发增加更多的功能,从而提高系统的实用性。
参考文献:
[1] 徐光侠, 封雷, 涂演, 等. 基于 Android 和 Google Maps 的生活辅助系统的设计与实现[J]. 重庆邮电大学学报 (自然科学版), 2012(2):242-247.
[2] 任齐. 基于 Android 的 LBS 应用研究[D]. 上海:华东师范大学, 2012.
[3] 朱桂英.Android开发应用从入门到精通[M].北京:中国铁道出版社,2011.
[4] 温敏, 艾丽蓉, 王志国.Android智能手机系统中文件实时监控的研究与实现[J].科学技术与工程,2009,9(1):1717-1719.
[5] 百度地图API.Android定位SDK V3.3[EB/OL]. http://developer.baidu.com/map/geosdk.htm,2013-2-27.
[6] 杨树林, 胡洁萍. JSON 数据交换格式及其在数据验证中的应用 [J]. 北京印刷学院学报, 2008, 16(4): 56-58.
[7] 文璨. Android平台网络电视机的桌面系统与功能模块的设计与实现[D]. 成都:电子科技大学,2012.
关键词:人员定位 C/S模式 Android系统 百度地图
【分类号】:TP277
近些年儿童和老人等弱势群体的安全问题日益突出,尤其我国老年化日益严重,监护人如何保障孩子和老人的安全受到全社会关注。当前,手机得到普及,因此,如何利用手机实时监控和回溯孩子及老人历史移动轨迹,为这些弱势群体提供监控,保护他们的安全,是本论文研究的主要内容。[1]
本系统将在Android系统手机端,实现当前位置监控,历史轨迹浏览,轨迹动画回溯等功能,可以对被监控人员位置的实时掌控和动态分析。系统采取基站、Wi-Fi、GPS三种定位方法结合的方式,保证了定位数据的完整性和有效性。结合百度地图API接口,实现位置信息直观的显示,极大地方便了用户对被监控者位置信息和状态的管理和判断。因此,本系统对于特定人群的保护和监督,具有一定的使用价值。[2]
1 系统结构
整个定位监控系统的架构为C/S模式,服务器端的开发采用Windows+iis+Sql Server+ASP.NET MVC3的方案,手机部分则是采用Android系统平台,并且整合了百度地图接口,用于地图显示。系统结构分为被监控端、监控端和服务器端三个部分,如图1所示。被监控端将自己的经纬度坐标信息以一定的采样周期和传输周期上传至服务器;服务器端接受坐标信息后进行处理,并保存在数据库中。指定权限的监控端用户在登录后,从服务器数据库中获取指定用户的当前位置信息或历史位置轨迹,并在地图中查看。
2系统基本功能模块
2.1被监控端
被监控端为安装在被监控者手机中的一个后台程序。在被监控者开机后,程序将自动运行在手机后台。目前手机定位的方式主要有三种,第一种是GPS卫星定位,第二种是基站定位,第三种是Wi-Fi定位,其中GPS卫星定位的精确度最高,但是条件较高,能耗也比较高,而且GPS信号在室内几乎无法接收,因此當进入室内时或者无法获得GPS信号时将转为基站定位或Wi-Fi定位,根据基站或Wi-Fi定位获取相应的位置坐标。每隔一段时间,手机将根据网络状况选择合适的定位方式取得手机的位置信息,并将数据处理后发送到服务器。如果手机的网络状况不允许与服务器进行对话,则将手机的位置信息存在手机中,待手机网络状况恢复后再将位置信息打包传递给服务器。
2.1.1被监控端功能
被监控端程序除了具有基本的定位、存储以及与服务器端的交互功能以外,还具有以下功能
(1)静默安装
被监控端的安装方式采用静默安装的模式,安装时无需用户干预,直接安装在被监控端手机上,可以方便用户的使用也有利于系统的推广。
(2)隐式运行
被监控端程序通过开机广播机制唤醒service组件,运行于手机的后台,可以有效的避免因为错误操作而关闭程序,并且也保证了定位的完整性和有效性。[3]
(3)危险报警
当被监控者的安全受到侵害时,通过针对手机的特殊操作,如较长时间按住菜单键等。系统将自动向监控端发送带有报警标示以及位置信息的短信,监控端用户就可以及时的掌握当时情况以及联系相关人员处理突发情况,从而有效的保护被监控者,及时的控制突发事件的事态。
2.2服务器
服务器端的主要功能包括:通过管理员账户对监听手机和被监听手机实现增加、删除、修改、查找等管理操作;通过在线地图显示功能,可以在线查看监控端和被监控端手机的当前位置信息和历史轨迹坐标;服务器系统与手机(的通信接口实现,接受被监听手机的轨迹坐标并进行文件存储,与监听手机进行交互实现监听手机的登陆、获得监听列表、查看轨迹坐标等功能。
2.3监控端
监控端为安装在监控者手机上的安卓应用,用户通过申请相应服务并获取密码后就可以登录客户端程序进行使用。
2.3.1监控端界面设计
2.3.2监控端功能
(1)实时定位功能
使用监控端的用户通过这个模块,可以在地图中看到所有权限内用户的实时位置,位置由定位标识标出,并配有用户信息。监控者可以快捷的获取用户位置,进行实时监控。
(2)历史轨迹回放(动画回放,智能显示)
使用监控端的用户通过选择单一成员,并设置需要观察的时间段,就可以获取这一成员在一定时间内的历史轨迹,轨迹点由标识标出,并配有坐标以及事件信息。此外,该界面还提供了动画回访和智能显示功能,方便用户更直观更清晰的查询历史轨迹回放。
(3)被监控端参数设置
本模块的主要功能是针对某一被监控端的参数进行设置,参数主要包括采样周期和传输周期。采样周期指的是被监控端记录定位点的时间间隔,传输周期指的是被监控端向服务器传输坐标点数据包的时间间隔。通过这个模块可以根据需要控制坐标点的采样以及传输,保证了轨迹的针对性,相对节省了被监控终端的电量和流量。
(4)通讯录及信息备份
本模块可以将移动终端的通讯录和短信备份在服务器端,可以解决手机丢失或手机故障引起的通讯录及短信缺失等情况。[4]
(5)信息安全保护
被监控端软件可以远程清除手机信息,当手机丢失时,通过发送特定信息代码,移动终端可自动清除可能含有保密、隐私信息的通讯录和短信,从而保证了用户的信息安全。 3.数据采集处理利用流程
本系统是由定位数据作为支撑的,被监控端,监控端以及服务器端之间的数据传输方式是基于http协议和JSON数据传输的。其中,监控端向服务器端发送请求的方式是基于http协议的,而服务器将以JSON数据包的形式返回相应的数据,被监控端以http方式向服务器端发送位置数据,将系统的三个部分有机的结合在了一起,可以实时的进行数据交换。定位数据的表现形式也各有不同,如图所示。其中,被监控端通过功能模块采集定位信息,根据使用场所不同分为GPS定位信息,基站定位信息,Mac地址信息三种;服务器端将定位信息以经纬度信息和时间信息接受并储存在数据库中;监控端将服务器端传递的经纬度信息转化为百度地图坐标再结合时间信息显示在地图上,并加以标注。
4.系统实现的关键技术
4.1百度地图API
本系统中主要应用了两个百度地图的定位SDK和Android SDK。定位SDK是移动终端应用提供的一套简单易用的LBS定位服务接口,在被监控端中集成百度定位SDK,可以通过该接口想百度定位服务请求位置信息,该SDK的定位方式为混合定位,通过GPS定位、基站定位、Wi-Fi定位和传感器信息满足室内外等多种情况下的定位需求。Android SDK是应用于Android系统移动设备的地图应用,可以方便开发者访问百度地图服务,将与地图相关的信息直观的展示出来。[5]
4.2JSON数据传输
本系统中三个部分互相传输的通信模块考虑过多种数据格式,最终选用了JSON数据交互格式,JSON数据格式易于接受,易于代码编写,是一种轻量级的数据交换格式。JSON采用完全独立于各个语言的格式,可以作为比较理想的数据交换语言。JSON数据分位对象和数组两种结构,对象是一个无序的“‘名称/值’对”的集合,数组是值的有序集合。位置信息、时间信息以及用户信息通过JSON数据包的形式进行传递方便易行,也提高了编程和使用效率。[6]
4.3animation組件
Android系统中的简单动画设计主要是利用Animation框架进行,该框架开发简单,开发周期较短,比较适用于应用程序中用于展示的辅助动画的开发。Android系统中提供了两种Animation模式,Tween Animation和Frame Animation。本文中主要用到了Tween Animation中的Translate Animation,这个组件可以实现控件的平移。首先,将定位信息转化为屏幕坐标,再将坐标通过算法转化为平移方向,其次,将要平移的方向设置为队列,设置速度参数,再绑定监听器。实际应用时,当用户点击相应的按钮时,轨迹回放动画就可以播放了。[7]
5.结论
本文采用C/S架构,结合SQL数据库和百度地图API技术,在Android移动终端以及服务器上实现人员尤其是特殊群体的定位,监控,位置显示,并结合信息保护等相关功能。该系统经过实际测试,运行稳定,定位准确,通过三种定位方式的结合,可覆盖室内室外等不同环境,提高了定位信息采集的完整性。历史轨迹回放功能除了传统的位置显示外,还提供了动画方式展示,使得位置显示更加直观,方便用户使用。在保证隐私以及合法合规的前提下,用户可以在日常的手机终端上对被监控者进行定位、监控以及管理。当然,系统还有一些需要改进的地方,例如,可以对获取的定位数据进一步进行分析,在数据量足够大的情况下,可以针对一个群体,进行行为分析。随着数据量的增加,位置信息在数据库中的存储方式也是需要继续研究的方向之一。围绕百度地图也可以开发增加更多的功能,从而提高系统的实用性。
参考文献:
[1] 徐光侠, 封雷, 涂演, 等. 基于 Android 和 Google Maps 的生活辅助系统的设计与实现[J]. 重庆邮电大学学报 (自然科学版), 2012(2):242-247.
[2] 任齐. 基于 Android 的 LBS 应用研究[D]. 上海:华东师范大学, 2012.
[3] 朱桂英.Android开发应用从入门到精通[M].北京:中国铁道出版社,2011.
[4] 温敏, 艾丽蓉, 王志国.Android智能手机系统中文件实时监控的研究与实现[J].科学技术与工程,2009,9(1):1717-1719.
[5] 百度地图API.Android定位SDK V3.3[EB/OL]. http://developer.baidu.com/map/geosdk.htm,2013-2-27.
[6] 杨树林, 胡洁萍. JSON 数据交换格式及其在数据验证中的应用 [J]. 北京印刷学院学报, 2008, 16(4): 56-58.
[7] 文璨. Android平台网络电视机的桌面系统与功能模块的设计与实现[D]. 成都:电子科技大学,2012.