朱 宁
(连云港市生产力促进局,江苏连云港 222006)
智能交通是将数据通信电子控制计算机处理等先进技术有效的综合运用于地面交通管理所建立的一种实时、准确、高效、大范围全方位发挥作用的交通运输管理系统。它是充分发挥现有交通基础设施潜力,提高运输效率,保障交通安全,缓解交通拥挤的有利措施。
近年来,我国城市中的交通堵塞、事故频繁和环境污染日益严重。面对这种交通状况和严峻挑战,各地政府投入了大量人力物力进行改善,如扩充道路、增加警力、加强行政管理等等,但效果均不尽如人意,一段时间后又会出现新的困扰,因此智能交通系统已经成为政府关心的焦点和专家关注的热点。
智能交通将有效地利用现有交通设施减少交通负荷,保证交通安全,提高运输效率,促进社会经济发展,提高人民生活质量,目前已成为交通管理手段的新发展方向。
本文阐述了基于Android系统的交通信息采集系统的设计和实现过程,并展示部分设计成果。
移动终端用户:移动终端用户为通过Android系统智能手机下载使用系统终端的用户。
停车场信息发布用户:经认证用户或合作用户如停车场经营者、商场、超市管理员,可以使用系统提供第三方开发API向系统提交可用停车位信息。
系统管理员:系统管理员可以使用后台管理系统,监控路况信息、发布紧急信息、发布系统通知等。
1.2.1 移动终端应用系统
(1)事件信息报送功能
用户能够输入描述、选择信息类型、事件影响范围、方向等向系统报送交通信息。可选的信息类型有:事故、施工、其它;可选的影响车道数有:一车道,两车道、三车道、四车道、全部;可选的方向有:向东、向南、向西、向北、双向。用户可以选择当前时间,也可以修改时间,作为报送时间。
GPS位置信息调用:用户通过使用移动设备的GPS功能,获取、报送实时GPS位置信息,也可以手动修改位置信息。
事件拍照:用户能够使用移动设备的摄像功能,拍摄事件现场图片,并作为附件加入要报送的信息之中。
(2)地图路况信息展示功能
用户可以在终端查看交通地图,所有的交通信息被加载显示在地图上。
GPS定位功能:利用手机自带GPS或者使用手机网络定位用户当前位置,加载周边信息。
当前交通路况显示:终端系统从后台服务器端获得当前交通路况信息,并以不同颜色绘制在地图上。
交通事件信息显示:终端系统接收到服务器端推送的交通事件信息,系统应能够以图标方式标记在地图上,点击图标可以查看详情。同时,每个交通事件具有一定的有效时间,在其有效时间结束后,该信息应该能够从地图上自动移除。
停车信息显示:系统能够将后台数据库中记录的公共停车场位置信息和用户好友私人停车位置信息加载并显示在终端地图上。
地图信息分层显示功能:系统地图支持信息分层显示,用户可以选择地图所加载的信息类型,以查看特定种类的信息。
(3)停车信息展示和查询功能
停车信息发布:用户可以发布停车信息,包括停车场名称、剩余停车位情况、收费等信息,并可以选择停车信息的类型是公共的(所有人可以)还是私人的(仅用户好友可见),根据类型不同提供必要的详情信息即可提交等待审核。
停车信息展示功能:系统支持两种停车信息展示方法:地图展示和列表展示。地图展示直接在路况地图上以图标方式标记位置,点击图标以查看详情;列表展示将所有信息以文字列表方式给出。每种方式均支持公共停车信息和私人停车信息的分别显示。
停车信息详情:公共停车位置信息应该包括停车场名称、地址、剩余停车位情况(有车位、车位紧张、无车位)、收费等信息。私人停车位置信息包括信息提供人,描述或说明。
停车信息查询:对于列表方式,用户可以以文字方式输入地理位置,系统搜索该地理位置周边的公共及私人停车信息,以分类列表方式显示结果。
1.2.2 后台管理系统
(1)事件信息接收和发送功能
数据接收及解析:后台系统能够自动监听并接收手机端报送的交通事件和停车场信息等,将封装在其中的信息解析并提取出来。
数据信息存储:系统将接收到的事件记录以一定规则存入到数据库中。
数据封装:系统按照一定标准,根据数据信息类型的不同,以不同方式封装,准备发送。
基于客户端请求的被动发送:系统能够根据接收到的客户端请求,将相关的返回信息通过网络发送到客户端。
主动信息推送:后台管理系统能够按照既定规则主动地将数据信息推送给客户端。
(2)事件信息处理功能
数据内容审核:系统支持对接收到的信息进行审核,过滤掉非法信息,可以进行增删改查等功能。
数据聚集:系统能够通把接收到的信息按照一定的标准,例如地点、时间、事件类型等进行聚集分类,可以通过人工方式或支持部分自动方式。
数据识别:对于重复报送的交通事件,系统通过人工或自动方式进行识别、匹配、过滤这些相同的数据报送,避免出现重复、冗余记录。
(3)实时路况数据叠加功能
实时数据更新:后台管理系统支持交通事件信息、服务信息、路况信息的实时更新,支持列表队列形式的数据管理模式,实时地将最新数据加入到待处理队列中。
地图匹配叠加:后台管理系统支持实时地、叠加地将接收到的事件信息、停车场信息匹配显示在监控地图中,便于管理。
系统总体目标主要是实现基于移动互联网的交通信息采集和应用功能,主要包括移动终端的应用系统和后台管理系统两大功能系统。其中,移动终端的应用系统主要完成事件信息报送功能、地图路况信息展示功能、停车信息展示和查询功能等;后台管理系统完成事件信息接收和发送功能、事件信息处理功能、实时路况数据叠加功能等。
根据需求分析,系统分为3部分:(1)移动终端应用子系统;(2)中心端服务子系统;(3)后台管理子系统。
系统通过接入层与操作系统、网络通信以及硬件设备进行交互,接入层的目的是向上层提供系统外部软件、硬件资源支持,在手机终端系统中,接入层负责管理系统与Android操作系统之间的交互,硬件方面负责调用系统网络通信设备,GPS设备以及手机的摄像头、语音接收和输出设备,从而为上层服务的调用提供支持。
数据层:负责对系统数据进行管理和存储。终端系统中,本层数据存储形式分为数据文件存储和数据库存储两类。其中,数据文件存储的内容包括系统配置文件和用户操作过程中产生的临时数据文件;数据库存储通过轻量级数据库技术对交通事件信息、交通服务信息和用户信息进行管理。
服务层:服务层独立出来置于底层数据层和接入层之上,用于提供与具体业务逻辑无关的基础支持资源、服务和接口。终端系统中,服务层包括系统通信服务、数据服务、图像获取服务、路况地图加载服务、GPS定位服务;除此之外,还包括了系统与第三方外部构件进行交互的接口服务,以及为系统运行提供支持的异常处理服务。
应用层:应用层提供了系统的核心业务逻辑功能,通过利用底层的服务相互组合、调用得以实现。终端系统中提供的业务应用功能包括:事件信息报送功能、事件信息展示和查询功能、地图路况信息展示功能、系统管理功能。每项功能中又包括了多个子功能,综合调用底层的各项服务,组合实现目标业务模型。
表示层:表示层负责将系统功能展示给用户,接收用户的输入信息和请求,显示运算和操作结果给用户,是用户与系统发生交互的媒介。终端系统中,表示层包括了系统单点登录、系统首页管理、系统界面个性化配置等功能,以及触摸界面交互和语音交互两种交互模式管理。
接入层:中心端服务子系统通过接入层与操作系统、网络通信以及硬件设备进行交互。与手机终端系统不同,中心端接入层负责管理系统与服务器Windows Server操作系统之间的交互,以及系统的网络通信。中心端的网络通信包括了与外部Internet进行的通信和组织内部的局域网络通信。
数据层:负责对中心端系统数据进行管理和存储。中心端系统集中存储了从各终端获取到的各类交通信息以及用户信息。中心端数据存储形式同样分为数据文件存储和数据库存储两类。其中,数据文件存储的内容包括系统配置数据和用户的个人信息数据文件;数据库存储使用SQL Server对信息进行存储,包括了交通事件信息数据库、交通服务信息数据库和用户信息数据库,此外还有用于系统管理和维护的系统配置管理信息数据库。
支撑层:支撑层用于提高跨领域的、业务无关的、通用的基础服务构件和框架系统。与服务层相比,支撑层更为独立,与系统业务关系更少,所以其可复用性更高,提供了针对某一技术的核心实施方法。中心端的支撑层包括:基于SOA的轻量级Web服务框架,提供了中心端所提供服务的规范和运行框架。数据对象访问框架,提供了中心端数据访问的解决方案,使系统能够高速处理大量数据,同时降低系统数据层与服务层的依赖性,便于数据的迁移、维护。互联网信息服务系统,提供了中心端系统运行环境。基于MQTT协议的信息主动推送框架,为中心端系统主动向终端系统推送数据提供了解决方案。
服务层:中心端服务层置于数据层和支撑层之上,提供了基础支持资源、服务和接口,为应用层提供数据处理、通信管理等功能。中心端系统中,服务层包括系统通信服务、数据访问服务、数据封装与解析服务、数据信息审核服务、数据信息识别服务、数据信息聚集服务。此外,还提供了外部数据接口服务,用于接收其他系统推送过来的数据。最后还有为系统运行提供支持的异常处理服务。
应用层:应用层提供了系统的核心业务逻辑功能,中心端系统中,业务逻辑功能以Web服务的形式进行包装,接收终端系统发送过来的请求并回应。中心端系统中提供的功能包括:交通事件信息接送和发送功能、用户信息服务,每项服务中包括了多个子功能。交通事件信息发送服务中,提供了基于客户端请求的被动发送功能和主动信息推送功能两种发送模式。
接入层:后台管理子系统通过接入层与操作系统、网络通信以及硬件设备进行交互。由于都是在组织内部局域网络中运行,运行环境基本相同,所以后台管理子系统接入层与中心端接入层功能相似,均包括与操作系统的交互以及与外部网络和内部网络的通信。
支撑层:后台管理子系统支撑层包括了.NET Framework 4.0开发框架,互联网信息服务系统,以及基于WPF技术的图形界面处理框架。此外,由于后台管理子系统主要用于管理中心端的数据信息,所以本地并没有数据层存储,而是在支撑层提供了远程数据对象访问框架,用于在局域网络中对远程的中心端数据进行访问。
服务层:后台管理子系统的服务层与中心端子系统相比,同样提供了系统通信服务、数据封装与解析服务,但是没有提供本地数据访问服务和相关数据处理服务。相反,后台子系统提供了实时数据更新服务和事件队列管理服务,用于数据的实时更新和处理。此外,后台子系统还提供了端口管理服务负责维护与中心端的连接端口,以及服务器状态监测服务,用于监测中心端系统的运行状态。后台子系统还提供了第三方数据接口服务,用于接收外部系统推送过来的数据,还有系统异常处理服务。
应用层:后台管理子系统应用层提供的业务功能主要集中于对中心端数据的监测和维护,具体功能包括:交通事件地图显示功能,交通事件信息数据管理,用户管理和系统管理。交通事件地图显示功能中,系统提供了实时数据显示和地图匹配功能,便于管理人员进行监控。
表示层:表示层负责将中心端数据监测信息展示给用户,提供一定的统计功能,并接收用户的维护操作和请求,显示运算和操作结果。后台管理子系统中,表示层包括了管理系统单点登录、地图实时更新、图形化数据显示等功能,并使用Ext JS用户界面和WPF图形界面与用户进行交互。
利用Android平台设计与实现的交通事件采集系统,能更方便的查新停车场信息,方便汽车驾驶员参考,这将丰富Android个性化应用。
[1]哈西米,克曼特内尼,麦克莱恩.精通 Android2[M].杨越,译.北京:人民邮电出版社,2010.
[2]刘正,陈强.基于Android的GPS应用中的研究与开发[J].中国西部科技,2010(9):15-16.
[3]公磊,周聪.基于Android的移动终端应用程序开发与研究[J].计算机与现代化,2008(8):86-89.
[4]姚昱旻,刘卫国.Android的架构与应用开发研究[J].计算机系统应用,2008(11):110-112.
[5]张立国,龚海平,王植萌.Android移动开发入门与进阶[M].北京:人民邮电出版社,2009.
[6]和凌志,郭世平.手机软件平台架构解析[M].北京:电子工业出版社,2009.