当前位置:论文网 > 论文宝库 > 信息科技类 > 软件开发论文 > 正文

探析实时公交行驶状况查询系统的实现与设计

来源:UC论文网2016-01-02 21:27

摘要:

摘 要 :为了让乘客更快捷地抵达目的地,笔者开发出一款可以应用于各种智能移动终端的实时公交行驶状况查询系统。该系统借助百度地图Java Script API软件平台架构,并通过移动客户

 

摘 要:为了让乘客更快捷地抵达目的地,笔者开发出一款可以应用于各种智能移动终端的实时公交行驶状况查询系统。该系统借助百度地图Java Script API软件平台架构,并通过移动客户端地理位置采集,以求即时显示公交运行状态,使用者可以实时规划最佳交通路线方式,实现高效、快速出行的目的。

关键词:Java Script;公交行驶状况;百度地图;Web
 

  人们对公交工具的路线,预计到达时间,途中路况等信息十分关心。一款能实时反应路况信息,预计到达时间,同时根据路况规划最优方案的软件,将给绿色出行带来极大地便利。

  1 需求描述

  该系统主要实现用户通过智能终端查询搜索出行方案规划,并对出行进行合理的安排。软件应能够根据起始坐标,乘客预期到达目的地时间,结合所经过的道路的通行情况,车辆行进速度情况,发车间隔等参数得出最优的出行方案,综合考虑后给出的乘客合理化建议,有效的保证出行。

  2 需求分析

  通过分析上述功能,我们设计了6个表,用于记录基本日期、城市、公交、发车时间、发车间隔、形成轨迹记录数据。通过如下方法实现系统功能。数据库视图,见图1。

  

  2.1 发车时间

  根据用户输入的路线Bus Num和定位的城市的City Num,由这两属性作为判断条件,获取城市公交运营时间City Bus Service Time表和公交时间间隔Bus Time Interval表中相应的数据。通过City Bus Service Time表和Bus Time Interval表中的外键日期类型Data TypeId来关联日期类型Data Type表进行判断是否是节假日,再根据Data TypeId的数值获取City Bus Service Time表中对应的该车首班时间First Bus Time和末班时间Last Bus Time的数据,和Bus Time Interval表中的对应时间间隔Time Interval,得出具体查询路线的运行中的一般数据。

  2.2 公交车实时定位

  在移动客户端的数据采集时时发送到City Bus Trace Log表。用户输入的路线Bus Num和定位的城市City Num,选择的方向direction(A上行D下行)由这三属性作为判断条件,获取相应的线路各个站点坐标(LAT,LNG),结合用户定位获得的坐标(LAT,LNG),遍历计算相应线路上所有车站的坐标与用户定位坐标之间的距离并排序,返回给用户距离用户当前所在位置最近的该公交线路的站点。

  2.3 线路路况查询

  该功能的实现需要用到数据库中的City Bus表,从这个表中进行数据的获取。根据用户输入的线路Bus Num,行驶的方向direction(A上行,D下行)和定位的城市City Num,获取公交线路上的各个站点名称。通过记录在City Bus Trace Log的公交实时数据,计算出经过该路线的公交车时间与路程,得出平均速度。

  2.4 预计时间查询

  根据用户输入的路线Bus Num和定位的城市City Num,选择的方向direction(A上行 D下行)由这三属性作为判断条件,获取相应的线路各个站点坐标(LAT,LNG),结合用户定位获得的坐标(LAT,LNG),遍历计算相应线路上所有车站的坐标与用户定位坐标之间的距离并排序,返回给用户距离用户当前所在位置最近的该公交线路的站点。

  根据先前获得的用户应该去往的公交站点,选择的方向direction(A上行 D下行)并结合City Bus Trace Log表中反馈的实时的公交坐标(LAT,LNG),遍历计算该路线所有公交车的实时坐标与用户所在站点坐标之间的距离,返回给用户距离最近的公交车的位置。根据公交车平均速度,计算该路公交车到达用户所在站点的预计时间。

  2.5 实时公交线路推荐

  该功能的实现需要用到数据库中的City Bus表,从这个表中进行数据的获取。根据用户所输入的目的地destination,结合定位的用户所在站点坐标(LAT,LNG)及定位的城市City Num。从City Bus表中搜索出所有经过目的地的公交线路Bus Num,再从这些公交线路里搜索出经过距离用户定位所在地最近的公交站点。从获得的公交线路Bus Num中,比较每条线路从用户所在站点到达目的地站点的行程距离和时间。此处的行程距离是每相邻两站间距离的叠加,根据相邻站间的距离并结合路况计算,累加时间。比较不同线路到达目的地的时间和行程距离,返回给用户所需时间最短和行程距离最短的公交线路Bus Num,以及所需的时间Estimate Time和行程距离Distance。

  3 系统界面设计

  本项目中,采用HTML5,CCS3设计网站的UI界面,这样能够实现多平台访问,适应性强。使用Java Script作为客户端编程的语言,通过Ajax方法调用数据。在地图显示上采用百度地图Java Script API地图控件。

  在界面布局上,力求做到科学合理人性化,并且要易于操作,突出显示重要的信息。实际完成中使用Jquery.Mobile-1.3.1.min.css(完成移动客户端界面布局样式表)和Jquery.Mobile-1.3.1.min.js(移动客户端程序JS库)完成用户界面,通过调用这两个文件中的方法生成统一的用户界面,并且会自动调整用户界面中各个标记的样式,达到户界面制作的可靠性、简单性、易学习和方便使用。

  服务器程序可使用C#提供的对数据库访问的接口,进行对数据库的所有访问。我们的客户端与服务器端采用SOAP协议进行数据传输。通过Java Script的XMLHttp Request对象进行数据访问。采用的方法为使用jquery-1.9.1.js封装的Ajax方法进行数据读取。

  4 系统功能实现

  Web客户端通过Ajax方法,调用网络服务器端Web Service方法,以Soap协议将数据通过网络送到WEB服务器,并等待接收服务器返回的信息。接收到返回信息后随即调用客户端响应模块,对信息进行处理,产生相应的输出。

  本次设计采用分层式结构。分层式结构可以使得开发人员的分工更加明确。系统的信息处理需要保存在数据库,对数据库进行操作是系统最基本的功能。数据转化、数据访问和数据库操作。作为信息服务的逻辑请求(例如选择、更新或删除)转换为数据兼容的语言(如SQL),执行某些API。系统运行时的界面截图,见图2~3。

  

  5 结 语

  本系统的开发仅仅是一个初步尝试,虽然实现了公交查询,并解决了一些实际问题,但还有很多值得深入研究的地方,包括系统的优化,为用户提供更多的功能选项及系统安全性的研究与开发等,需要在今后的工作中继续完善。


核心期刊推荐