基于java的室内超大面积导航系统服务端设计

技术设计 · 2018/09/29
← 返回技术文章

编写目的本软件设计说明书是针对超大面积室内导航编写的. 计算机技术发展日新月异,在各行各业应用越来越广泛。在虹桥枢...

编写目的

本软件设计说明书是针对超大面积室内导航编写的. 计算机技术发展日新月异,在各行各业应用越来越广泛。在虹桥枢纽、大型展览会或者万达广场等,这种面积大,设计复杂、人流量巨大的室内,人们难免会找不到目的地路线,开发室内导航机器可以使人们出行、购物、闲逛更加方便,将人们从传统的导航方式中解脱出来,提高效率,也可以帮助人们了解室内环境的信息。

[[heading]]

[[/heading]]

二、整体的开发思路

用户输入目的地,机器开始导航

导航机器人前进时不断拍照

照片传送至后台处理

系统根据照片中特点判断机器人所在位置

系统根据用户输入的地方,为用户指出当前位置到目的地最近的一种路线

系统开发步骤:

  • 明确需求
  • 设计数据库
  • 设计技术框架
  • Java技术
  • 数据访问层
  • 操作顺序

系统启动

用户操作

后台操作

操作成功

三、设计需求

3.1项目要求概述:

系统记录有室内每一条路线,有路线拥堵或者其他意外可以新增和删改路线

用户可以输入地址或者目的地相关信息,系统会根据用户选择最优路线到达目的地

用户可以随时取消导航

导航完成机器会到指定位置

3.2 导航技术要求

  • 先进性:采用先进成熟的技术,确保系统的先进性、经济性和实用性。
  • 安全可靠。
  • 规范性:开发过程控制、开发技术、系统编码、文档应规范化,并遵循相应的国内外标准。开发结束时,提供必要的文档资料。
  • 可靠性:保证系统的可靠运行和在升级过程中的方便快捷。
  • 可扩充性:系统应当可以根据需求的变化,方便地进行功能的调整、增减,模块的升级和系统架构的逐步完善。提交相应的系统规范文档,应用单位能够进行必要的二次开发。
  • 可维护性:系统维护应当简单。

3.3 界面设计要求

(1)统一性原则

①界面风格统一

用相同方式展现相同类型的数据,如:日期类型

②交互风格统一

用相同方式完成相同类型的操作,如:录入日期

(2)美观性原则

界面美观大方

易用性原则

界面友好、操作方便:操作界面要直观、简单、贴近实际,操作过程应当尽量简化,符合实际过程。身份认证过程即要保证安全,也要尽量简化认证过程。

四、模块结构

整个系统分为三部分:定位模块、用户客户端以及后台的服务器模块。定位模块将位置信息传到后端服务器,后端服务器分析制定合适路线,如上图所示。服务器软件设计基于JAVA语言和MySQL数据库,主要用来接收、存储定位模块和用户客户端软件上传的数据,以及相应请求并向客户端推送数据。

[[heading]]

基于java的室内超大面积导航系统服务端设计

[[/heading]]

4.1定位模块及客户端模块

实时定位模块,客户端通过数据接收现成循环访问服务器,使用POST方式获取用户实时位置信息,然后解析数据,并在用户操作界面上显示。该部分可在地图界面上同时用户当前位置、目的地的位置,方便对比辨识。离开界面是关闭数据获取线程和定位功能,防止内存被占用。

4.2后台服务器

异常检测功能和数据获取是在后台Service中进行的,Service同样是每隔5min访问服务器一次,获取用户当前位置数据。如果偏离路线,则为异常状态,语音提示用户。

五、系统结构功能

5.1总体结构

总体类图

5.2系统架构

5.3系统操作流程

5.3.1系统启动

当用户进入室内时,用户有一个系统启动模块:在系统启动时,显示室内全景图、当前位置信息。系统启动后,提示输入目的地或者相关信息 。

5.3.2生成路线

在登陆这块模块后,用户输入目的地或者相关信息后,系统判断目的地是否存在,如果存在,输出最优路线并提示选择相应操作开始导航。如果商品不存在,则提示用户并且返回用户初始操作界面。我们以存在为例,用户在点击开始导航后,机器人会按照所生成的路线开始导航。在导航途中用户可以取消导航,机器返回初始位置以供其他用户使用。

5.3.3机器人导航过程

机器人成功开始导航后,选择最优路线前行,同时不断拍照给系统处理,系统根据照片特征(当前位置特征以及拍照角度等)确定机器人当前所在位置,并指导机器人移动。导航成功将显示提示信息。

5.3.4导航成功

用户成功导航后,机器人返回初始位置以供其他用户使用。

5.4系统操作流程框图

取消导航