版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 本 科毕 业设 计( 论文 )基于地理位置的电动汽车充电桩信息分享平台的设计与实现Design and Implementation of Electric Car Charging PileInformation Sharing Platform Based on Geographical Position学院:软件学院 专业:软件工程 学生姓名:XXX学号:XXX指导教师:XXX北京交通大学2016 年 5 月 学士论文版权使用授权书本学士论文作者完全了解北京交通大学有关保留、使用学士论文的规定。特授权北 京交通大学可以将学士论文的全部或部分内容编入有关数据库进行检索,提供阅览服务, 并
2、采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。 (保密的学位论文在后适用本授权说明)学位论文作者签名:指导教师签名:签字日期:年月日签字日期:年月日 北京交通大学毕业设计(论文)中要中要摘要:近几年,我国新能源汽车产业呈现出了爆发式增长的态势。国家机关、各地方政 府也不断出台硬性指标帮助新能源汽车的推广,但并未达到预期的理想效果。通过对充电桩站点的实地调研和电动汽车司机的问卷调查,了解到他们最迫切的需求是“快速寻找到周围空闲的或者是排队人数较少的快速充电桩”。本文阐述的电动汽车充电桩信息分享系统,正是为解决这一需求而设计开发的。利用电动汽车司机这一群体,他们在充电的同时上报充电站点的
3、运营状况和电桩实时使用情况,分享给其他人。 本文阐述了充电桩信息分享系统的需求分析,概要设计,详细设计,以及编码的实现。系统包括三个模块:信息管理模块,核心功能模块,数据处理模块。信息管理模块又分为用户个人信息管理模块,用户上传信息管理模块,积分管理模块。核心功能模块又分为电桩查询模块,电桩空闲信息模块,新桩上报模块,电桩纠错模块。数据处理模块又分为电桩推荐策略模块,用户上报数据审核模块。系统服务器端采用 Java 实现,运用了 Spring 框架作为整个项目的支持。数据库采用了 MySQL 数据库。系统移动端采取了微信公众号+HTML5 页面的方式实现,并采用了异步请求等方式提高性能。笔者完
4、成了电动汽车充电桩信息分享系统的需求分析和架构设计,完成了其中信息管理模块与核心功能模块的概要设计、详细设计和编码实现部分,最后对系统进行了功能性测试和性能测试。 目前,电动汽车充电桩信息分享系统已成功上线,为广大电动汽车司机提供良好的 充电信息服务。 关键词:充电桩;空闲信息;HTML5;Spring i 北京交通大学毕业设计(论文)ABSTRACTABSTRACTABSTRACT:Chinas new energy vehicles industry today show explosive growth. Local governments are helping the promoti
5、on of new energy vehicles, but do not achieve the desired effect. By charging pile field research and questionnaire of electric car drivers learn that their most pressing need is quick to find idle fast charging pile. The electric car charging pile information-sharing platform which paper describes,
6、 is designed to address this need. Using electric car drivers, they can report the operational status of the charging point and the usage of pile in real-time while they are charging. Sharing information with others.Charging pile information sharing platform consists of three subsystems: information
7、 management subsystem, core function subsystem, data processing subsystem. Information management subsystem is divided into user information management module, user upload information management module, integration management module. Core function subsystem are divided into charging pile searching m
8、odule, idle pile module, new pile reporting module, electric pile correction module. Data processing subsystem is divided into electric pile recommend policy module, users report data auditing module. System server-side is Java implementation, using Spring framework to support entire project. Choosi
9、ng MySQL as database. Client side uses WeChat Official Accounts and HTML5, using an asynchronous request to enhance performance. The author completed requirements analysis and architecture design, and completed general design and detailed design of information management subsystem and the core funct
10、ions of subsystems, including coding and functional test, performance test.Now, Charging pile information sharing platform has been on-line, providing services fora majority of electric vehicle drivers.KEYWORDS:Charging pile; idle information; HTML5; Spring frameworkii 北京交通大学毕业设计(论文)目录目录中要IABSTRACTI
11、I目录11 绪论11.1 项目背景及意义11.1.1 项目背景11.1.2 项目意义11.2 项目的难点及特色21.2.1 项目难点21.2.2 项目特色31.3 本人主要工作31.4 项目的可行性分析31.4.1 方案可行性31.4.2 技术可行性41.5 论文组织结构42系统相关技术介绍52.1 HTML5 概述52.2 JSON 概述52.3 AJAX 技术概述62.4 SPRING 框架概述6充电桩信息分享系统需求分析83.1 充电桩信息分享系统整体功能概述83.2 充电桩信息分享系统功能性需求分析10...63.2.7用户个人信息
12、管理模块11信息审核管理模块11积分管理模块12电桩查询模块12电桩空闲信息上报模块13新桩上报模块14电桩信息纠错模块151 北京交通大学毕业设计(论文)目录3.2.8 数据审核模块163.2.9 充电点优先级计算模块163.3 非功能性需求163.4 本章小结17充电桩信息分享系统概要设计184.1 充电桩信息分享系统架构设计184.2 充电桩信息分享系统数据库设计204.3 本章小结22充电桩信息分享系统详细设计与实现235.1 个人信息管理模块的设计与实现235.1.1 个人信息模块235.1.2 积分管理模块265.2 电桩查询模块的设计与实现295.3 新桩上报模块的设计与实现38
13、5.4 电桩空闲信息上报模块的设计与实现425.5 本章小结44系统测试456.1 功能性测试用例设计456.2 性能测试用例设计476.3 本章小结49总结与展望504567参考文献51致附谢52录532 北京交通大学毕业设计(论文)正文1 绪论本章为绪论部分,主要介绍基于地理位置的电动汽车充电桩信息分享系统的项目背景、意义、开发的难点、项目的特色以及作者在开发中主要的工作,并且将阐述该系统的可行性分析以及本文的组织结构。 1.1 项目背景及意义本章将介绍项目的背景及意义,主要介绍该系统产生的背景以及该项目能产生的实际意义。 1.1.1 项目背景 随着新能源技术的发展和国家政策的大力扶持,我
14、国新能源汽车产业呈现爆发式增长态势。根据数据统计,2015 年我国新能源汽车的生产规模高达 38 万辆,同比增长了4 倍,在国内汽车产量的比重上升到 1.55%。2016 年 2 月,总理主持召开常务会议,连续发布了五项重要措施来鼓励国内新能源汽车产业的发展。 而与此同时,“政策热、市场冷”却成为当今国内新能源汽车发展情形的尴尬写照。虽然各示范城市地方财政对于新能源汽车有较大的补贴力度,国家机关、各地方政府也不断出台硬性指标帮助新能源汽车的推广,公共服务类及政府用车也正走向节能减排的道路,电动汽车需求量不断提高,但并未达到预期的理想效果。 通过到各个充电站点实地调研,并到电动汽车出租车公司访谈
15、了解到,当今限制电动汽车进一步发展的关键问题就是:充电相关配套设施建设严重不足,各厂商充电设备不兼容,充电桩运营管理混乱。充电桩布局不合理,部分地区充电困难。这些问题最终导致了电动汽车充电难,充电排队严重。许多消费者在有补贴,不需要摇号的情况下也不愿购买电动汽车。对运营类司机,每次长达两三个小时的排队充电时间更是严重影响 了他们的工作。 1.1.2 项目意义 通过对充电桩站点的实地调研和电动汽车司机的问卷调查,了解到当今电动汽车司机最迫切的需求是“快速寻找到附近空闲的或者是排队人数较少的快充电桩”。由于现在各个充电厂商之间接口并不兼容,暂时并没有一个电桩实时信息的统一平台。由于运营 1 北京交
16、通大学毕业设计(论文)正文类车辆的特点和续航里程的限制,他们充电时间较统一。为避免到站点后出现因“死桩”, “坏桩”等问题无法充电,又往往会选择几个固定的,较可靠的站点进行充电。这样导致许多站点人满为患,排队严重,而许多站点的资源又无法得到充分利用的情况。而这一切都是因为实时信息的缺失导致的。 本文阐述的电动汽车充电桩信息分享系统,正是为解决这一需求而设计开发的。利用对充电桩使用频率最高的群体:电动汽车出租车司机和快车(专车)司机。运营类司机每天的充电次数为 2-3 次,长时间的排队是他们无法接受的,他们在寻找充电桩时最关心的也是充电桩的实时信息,以此来选择合适的站点进行充电。另一方面,他们在
17、充电时能够获取所在站点的情况,可以上报充电点的运营状况和电桩实时使用情况。运营类司机作为信息的最大需求方,也是信息的提供方,利用自身作为信息传播源,也是信息的获取者。以现在的运营类电动汽车司机数量,也完全能够覆盖北京常用的充电站点。 加上平台鼓励性质的补贴措施,保证信息的流动性。 1.2 项目的难点及特色 本节主要介绍该系统在设计和开发过程中的难点,以及该系统所具有的特色。1.2.1 项目难点 移动端:(1) 对当前地理位置和周围电桩点的快速获取和处理:HTML5 页面获取用户地理位置时间较长,根据地理位置获取周围 POI 点和电桩点的时间也较长。在用户使用该系统时会给用户带来不够顺畅的用户体
18、验。在设计和开发阶段应该考虑如何优化这个过程。 (2) 对接入的百度地图的相关操作:包括拖拽定位,地图上绘制图标,气泡显示,地图点周围相关地标建筑的获取等。 服务器端:(1) 服务器端架构搭建:利用 Spring 框架来搭建问。 (2) 系统在开发时会尽量避免各个模块功能的耦合,遵循软件工程的原则,细化每一个模块的功能,为以后可能的功能扩展做准备。 (3) 用户在获取当前位置周围电桩点时,系统会有一个根据优先级的推荐策略。该优先级在项目冷启动时会有一个起始值,之后系统会分析用户在该充电点的使用状况和上传的数据不断自动更新优先级。 ,并保证客户端的正常访2 北京交通大学毕业设计(论文)正文1.2
19、.2 项目特色 (1) (2) (3) 性。 利用 Spring 框架来完成服务器的搭建 分析用户的使用行为不断进化优先级推荐策略 项目采用 Scrum 敏捷开发模式来推进系统的开发,注重开发的效率和迭代1.3 本人主要工作 作者参与整个项目的需求获取,系统设计与开发过程。并参与了产品的测试工作。需求分析阶段的主要工作为: (1) (2) (3) (4) (5) 电动汽车行业与市场的调研。相关人员的访谈与问卷调查。资料的收集,整理与分析。需求筛选与评审。 方案选择与可行性分析。 开发阶段的主要工作为:(1) (2) (3) (4) (5) (6) 参与系统的架构设计。系统数据库的设计 信息管理
20、模块的开发。充电桩查询模块开发。电桩实时信息模块开发。新桩上报模块开发。 1.4 项目的可行性分析 1.4.1 方案可行性 本项目采用 Scrum 敏捷开发模式进行开发,追求开发的效率与需求的迭代。这样能较快地进入市场,抢占先机,从用户的反馈意见中不断迭代需求,以此来不断更新产品, 提高客户满意度。敏捷开发也是现在互联网产品开发的主流选择。 鉴于产品受众(电动汽车司机)接触信息最直接与最频繁的方式是使用手机微信,故决定系统采用公众号+HTML5 页面的方式实现。优点是可以利用“微信”这个天然的入口,为产品推广提供巨大的便利,利于产品在电动司机群体里传播推广。并且利用公 3 北京交通大学毕业设计
21、(论文)正文众号进行二次开发,可以使用腾讯公司提供的一些现有框架,能更快速地进行开发。使用公众号的缺点是部分功能会受公众号自身的限制。为克服这一问题,讨论后决定系统 的具体功能以HTML5 页面方式开发展现。这样能最大自由度地定义自己的页面和功能。 1.4.2 技术可行性 系统移动端页面采用 HTML5 进行开发。主要看重 HTML5 对开发人员友好以及公众号对 HTML5 支持性较好的特点。另外为了系统将来有可能的功能拓展,HTML5 对多媒体元素(音频,视频)优秀的支持性也是选择的因素之一。 由于公众号默认采用的“腾讯地图”用户体验较差,故前端改为采用百度地图 API 实现系统相关的地图功
22、能。 服务器端采用 Java 语言进行开发,并使用 Spring 框架作为整个项目的支持。在前端使用 Ajax 作异步处理,提高系统的流畅度。 1.5 论文组织结构 本文共分为七章,具体结构如下: 第 1 章为绪论。包括项目的背景、开发意义、项目的重点、项目的特色以及项目的可行性分析。 第 2 章为系统开发中所用到的关键技术的介绍。其中包括 HTML5 概述、JSON 概述、Ajax 概述、Spring 框架概述。 第 3 章为系统的需求分析。主要介绍了系统的整体需求和各模块的功能需求,以及系统相关的非功能性需求。 第 4 章为系统的概要设计。主要介绍系统的架构设计,整体呈现系统的子系统构成与
23、它们之间的交互。以及系统的数据库设计。 第 6 章为系统的详细设计与实现。主要介绍了系统各个模块的设计与实现。第 6 章为系统的测试。对系统进行全面的衡量。 第7 章为总结与展望。该章对全文进行了总结,并对系统的进一步完善提出了展望。 4 北京交通大学毕业设计(论文)正文2 系统相关技术介绍本章将主要介绍系统在开发过程中所采用的相关技术,包括 HTML5 技术、JSON、Ajax 技术以及 Spring 框架。本章对上述技术的概念与优点进行介绍。 2.1 HTML5 概述HTML5 为 HTML 的第五次重大升级。通过近八年的努力,网联盟才最终制定完成了 HTML5 标准规范,并公开发布。HT
24、ML5 的设计目的就是为了在移动设备上支持多媒体,扩展 HTML 网页的功能。一些新的语法特征,如 video、audio 和 canvas 标记,它们的引进也是为了支持这些功能。 HTML5 允许开发者在移动端的浏览器内开发自己的应用。本文所阐述的电动汽车充电桩信息分享系统移动端也是利用了 HTML5 的这个特点来进行开发。HTML5 手机应用的最大优势就是可以直接在网页上对应用进行调试和修改。通过这样的方式,原先开发人员可能需要花费巨大的时间开发才能达到的效果,利用 HTML5 可以轻易调试和实现。现在来看,HTML5 很可能会是独立移动应用的终结者,带来一条新的发展道路。HTML5 还引
25、进了其他一些新的功能,比如可以真正改变用户与文档的交互方式。由于HTML5 技术将应用的功能直接加入了其内核,这将引导新一轮的移动技术潮流。 HTML5 的其他优点还包括以下几点: 1、提高了可用性,并改善了用户体验; 2、提供了有助于开发人员定义重要内容的新的标签; 3、开发人员可以利用 HTML5 给站点便捷地添加如视频和音频等多媒体元素; 4、HTML5 可以大量应用于移动应用程序或者游戏; 5、为网页提供优秀的可移植性。 2.2 JSON 概述JSON 是JavaScript 对象表示法,即 JavaScript Object Notation,它是一种轻量级的数据交换格式。JSON
26、采用完全独立于语言的文本格式,是理想的数据交换语言。 JSON 在易于机器解析和生成的同时,也有优秀的开发亲和性,易于开发者阅读和编写。它不依赖于语言,具有自我描述性,让开发者更加易于理解。 JSON 独立于语言与平台,一般使用 JavaScript 的语言结构来描述数据对象。JSON 有丰富的解析器以及 JSON 库,它们还支持许多不同的编程语言。JavaScript 程序还有丰富的内建函数,并可以使用内建 函数,用 JSON 数据来生成原生的 JavaScript 对象。 5 北京交通大学毕业设计(论文)正文2.3 AJAX 技术概述AJAX,即“Asynchronous JavaScri
27、pt And XML”(异步 JavaScript 和 XML),它是一种创建交互式网页应用的网页开发技术,用来快速创建动态网页的技术。 新,而不用耗费大量资源来重新加载整个网页。 当用户在普通网页上填写完表单数据,然后点击确认后进行提交时,系统会将整个表单数据提交给服务器,服务器将它转发给处理表单的脚本,并等待脚本执行完成后再进行全新的页面的执行。这个页面也许是输入数据选择的某些选项的页面,或者带有某些返回数据填充的新生成的新表单的新页面。用户则需要等待服务器上程序处理,以及等待返回新表单。这时候页面上无任何内容,必须等到服务器受到返回数据后再重新绘制页面。这会导致用户体验性较差,用户在等待
28、时得不到立即反馈。 Ajax 技术是由 JavaScript 对象中的 XMLHttpRequest 来进行核心支持。X M L H t t p R e q u e s t 是一种支持异步请求的技术。 Ajax 允许 在 Web 表单和服务器之间使用 JavaScript 技术,放置 XMLHttpRequest 对象。用户在表单上填写信息后,提交的数据会提交给一些 JavaScript 对象,接着 JavaScript 对象转而向服务器发送请求。这时用户页面上不会有任何影响。实际上,JavaScript 是在发送请求,用户不会了解到请求的发出。因为请求是异步发送的,JavaScript 对象
29、,用户,都不用去等待服务器的响应。用户会继续输入数据, 继续自己的操作, 正常使用系统。因此对用户来说, XMLHttpRequest 是非阻塞的。 完成这一系列的处理后,数据由服务器返回给 JavaScript。JavaScript 可以迅速更新表单数据,从用户的角度来看过程并没有耗费时间。这就是 XMLHttpRequest 的强大之 处。用户可以完全不用了解的处理细节与步骤,而享受敏捷响应的操作体验。 2.4 Spring 框架概述Spring 是一个由 Rod Johnson 创建的轻量级开源框架,旨在为企业复杂的应用开发提供一个优秀的解决方案。Spring 使用基本的 JavaBea
30、n 来完成以前 EJB 完成的工作。并且 Spring 的用途不仅限于服务器端的开发。因为 Spring 松耦合和可测试性的特点, Spring 可以用于任何 Java 应用中。 Spring 是一个轻量级容器框架,开发 Spring 的核心思想是控制反转,以及面向切面编程。它们的最大的目的就是使 J2EE 开发更加容易。Spring 框架中的对象不依赖于6 北京交通大学毕业设计(论文)正文Spring 的特定类,此外,Spring 在大小与开销两方面来说算一个轻量级,非侵入式的框架。 Spring 框架通过控制反转(IOC)来达到高内聚松耦合的特点。系统中不是对象在容器中寻找依赖,而是对象在
31、容器初始化时就主动将依赖传递给它,而不是等待请求, 对象的依赖在使用时会通过被动的方式传递进来。 Spring 框架支持面向切面编程(AOP),分离系统的业务逻辑,并对系统服务进行内聚性的开发。系统应用对象只关注它们自己的事务,业务逻辑。而其它的系统级关注点, 类似日志或事务支持,由其他 Spring 对象帮助完成。 Spring 对系统应用对象的配置和生命周期由框架通过容器机制来实现。在 bean 创建一个独立的实例或者每次需要时都生成一个新的实例时,由一个可配置原型实现。开发人员可以自己决定每个 bean 如何被创建。 7 北京交通大学毕业设计(论文)正文3 充电桩信息分享系统需求分析本章
32、将通过分析系统的功能与目标得到系统的整体需求,并对系统的业务流程进行说明。然后将根据系统的整体业务流程划分系统的功能模块,并对系统的各个模块进行详细的功能性需求分析。最后将对系统整体的非功能性需求进行分析。 3.1 充电桩信息分享系统整体功能概述 该系统为基于用户地理位置的充电桩实时信息分享系统,其主要功能为: 1. 用户可以查询到当前地理位置(或其他地点)附近的电动汽车充电桩分布情况和具体地点,以及了解充电站点的详细信息,包括充电桩数量,损毁情况,运营商等信息。而且还可以查看各个充电点的当前排队或空闲情况。系统还可以根据用户所选的地点进行导航。 2. 用户在充电点进行充电时可以上报当前站点的
33、运营信息和实时信息,如发现系统 提供数据与现实情况有不符时,可以进行更正操作。系统审核通过后会更新数据,并进行积分奖励。对系统未收录的电桩也可进行新桩上报。其功能流程如图 3-1 所示。 图 3-1 系统功能流程图 用户(电动汽车司机)既承担了分享者的角色,也是系统的使用者。分享者进行新桩上报,电桩纠错,实时信息上报等操作,数据提交给系统进行审核。审核通过后进过平台系统的业务逻辑处理进行数据存储。使用者进行电桩查询时向平台系统发送请求, 8 北京交通大学毕业设计(论文)正文系统再次通过内部的业务逻辑从数据存储模块中提取数据,然后返回给使用者。通过这一过程系统完成业务的处理。 用户在查询电桩时,
34、系统除了返回周围的电桩分布情况,显示在地图上,还会根据用户的地理位置或搜索的位置,根据周围的电桩的距离,运营情况,实时排队情况等信息进行一个优先级排序,并给予推荐,以列表的形式展示给用户。 用户在分享上传电桩信息时,系统会对信息进行审核,审核通过后才会对数据库数据进行修改。系统会对用户的分享操作进行积分奖励,用户可以在个人管理系统中看到自己的个人状态和上报审核处理状态。 整个系统业务的参与者为四个部分,分别为:充电桩信息分享平台系统,微信系统, 电动汽车司机,以及平台管理员。 充电桩信息分享系统是整个业务的核心,也是本文所阐述的对象。系统参与到业务的所有功能模块,提供业务逻辑的处理。系统也负责
35、通过用户的移动终端获取用户的地理位置,以及负责用户提交数据的审核。 微信系统负责获取用户的身份信息。因为充电桩信息分享系统的移动端是以“公众号为载体,HTML5 页面实现功能”的形式实现的,所以系统需要从用户登录的公众号中,即微信系统中,请求获取登录用户的个人信息。然后保存到系统数据库中,在系统个人信息管理模块使用。 电动汽车司机是整个系统业务的重要参与者,也是数据信息的驱动者。一方面,电动汽车司机作为信息的提供者参与到新桩上报,电桩纠错,空闲桩上报等功能中,为系统提供实时数据。另一方面,电动汽车司机作为信息的接收者,在汽车需要充电时使用系统的电桩查询功能,查询自己地理位置周围的充电桩分布情况
36、和充电站点实时信息。用户还参与到个人信息模块中,能够随时查看自己当前的积分情况,历史操作,上传记录,以及 当前的上传数据审核进度。 系统管理员主要参与到系统维护和系统数据审核模块中。为了控制用户上传数据的真实性,保证系统提供服务的准确性,系统必须对上传数据提供一个审核机制。系统会有一套审核算法来对数据的准确性进行控制,但类似新桩上报等数据量不大,但重要度较高的功能,除了系统对提交进行初审,还需要系统管理员进行人工审核,来保证数据的准确性。此外,管理员还会负责日常的系统维护。 系统的用例图如图 3-2 所示。 9 北京交通大学毕业设计(论文)正文图 3-2系统用例图3.2 充电桩信息分享系统功能
37、性需求分析根据系统的整体功能和业务流程,可以将该系统分为三个模块:1.信息管理模块:细分为用户个人信息管理模块,信息审核管理模块,积分管理模块核心功能模块:细分为电桩查询模块,电桩空闲信息模块,新桩上报模块,电桩纠错模块 数据处理模块:细分为电桩推荐策略模块,用户上报数据审核模块。 2.3.系统的功能模块分解如图 3-3 所示10身份与位置获取 个人信息管理 电桩查询 充电桩信息电动汽车司 平台机 电桩纠错 新桩上报 微信系统实时信息上报管理员数据审核与推荐 北京交通大学毕业设计(论文)正文图 3-3系统模块分解图 本节将依次介绍系统各模块的功能性需求,展现各个模块在系统中承担的业务功能, 以
38、及各个模块的业务流程。 3.2.1 用户个人信息管理模块 个人信息管理模块负责获取系统微信公众平台关注用户的基本信息,包括昵称、头像、性别、城市。以及记录用户的对系统的使用情况,包括电桩查询次数,空闲信息分享次数,电桩上报和纠错次数和审核通过次数等信息。 3.2.2 信息审核管理模块 用户上传信息管理模块负责记录跟踪用户上报新桩和电桩纠错的审核状态。会记录用户最近提交的上传信息的时间,次数,待审核的状态。以及历史上传电桩信息的数量, 审核通过以及未通过的数量。 11 北京交通大学毕业设计(论文)正文3.2.3 积分管理模块 积分管理模块负责根据用户对电动汽车信息分享系统的使用,以及信息分享的贡
39、献值来进行积分奖励操作。用户的积分奖励要经过数据审核模块对上传数据进行审核完成通过后才可以进行。 3.2.4 电桩查询模块 电桩查询模块负责实现用户查询当前(或其他指定地点)位置周围的电桩点,并显示电桩点图片,电桩数量,电桩健康状况,运营商等详细信息,以及当前充电点空闲情况等实时信息。用户还可以对选择的充电点进行导航。 默认情况下,系统显示用户当前地理位置周围的充电点。 该模块的流程图如图 3-4 所示: 移动端服务器端 开始HTML5页面获取用户地理位置是否获取成功是 否筛选电桩点优先级前五将推荐的电桩点以列表显示在地图下方点击查看详情或导航图 3-4电桩查询流程图12返回电桩点详细信息或进
40、行导航 将返回的5km内电桩点显示在地图上 查找该位置半径5km内的电桩点,并返回 提醒用户允许H5地理位置权限 北京交通大学毕业设计(论文)正文系统电桩查询模块主要提供两个功能:基于位置的电动汽车充电桩查询与充电桩推荐。系统除了给用户展现当前位置附近的电桩外,还会对这些电桩根据一系列参考值进行评分,给予用户推荐选择。电桩的推荐策略不是永远固定的,会根据用户的选择不断进行修正,进化出最贴合用户使用的策略算法。 用户在进入查询页面(即默认的当前位置电桩分布页面)后,还可以查询指定位置周围的充电站点分布情况。只需在地图上方的搜索框中输入地点关键字并选择地点,随后系统将返回选择地点的电桩分布。流程与
41、查询当前位置时相似。 3.2.5 电桩空闲信息上报模块 电桩空闲信息分享模块主要负责处理用户上报的电桩实时信息数据。 由于这个数据更新较快,强调实时性,所以省去了审查步骤。但会在数据审核模块会监控记录用户的行为,如检测发现恶意行为会扣掉其积分以及其他相应措施。 用户只能上报当前位置附近的电桩信息,不允许随意上报,保证信息的可靠性。模块功能的流程图 3-5 如下: 移动端服务器端 开始HTML5页面获取用户地理位置是否获取成功是否查找该位置半径1km内的电桩点,并返回选择电桩点,填写实时信息图 3-5电桩空闲上报流程图13服务器收到后修改数据库 将电桩点由近到远列表显示在地图下方 将返回的1km
42、内电桩点显示在地图上 提醒用户允许H5地理位置权限 北京交通大学毕业设计(论文)正文电桩空闲信息上报功能可以通过两个入口进行。一个是进入公众号后选择“空闲上报”按钮直接进入。另外用户可以在电桩详细页面的空闲信息栏直接修改。这是在分析用户的操作行为习惯后设计的。用户在充电前查询电桩,查看站点详细信息。到达该充 电站点后可以很方便地,根据实时状况,在该页面直接进行数据上报,分享信息。 3.2.6 新桩上报模块 新桩上报模块主要负责处理用户上传新增电桩的信息。 用户在实际充电过程中,如果发现当前电桩站点未收录到系统中,可以在系统中选择“新桩上报”,在地图上选取此站点所在的位置,填写充电站点相关的信息
43、,包括详细位置,快慢充桩数量, 可用的快慢充桩数量,运营商及其充电费用,停车费等信息。 新桩上报允许异地报桩,上报电桩的地址不一定要在当前地理位置。 系统会对用户上报的新桩信息进行审核,确保上报的新桩和数据库中的信息没有重复,以及信息的准确性。审核通过,信息确认有效后,会给用户相应的积分奖励。 该模块流程图 3-6 如下: 移动端服务器端开始HTML5页面获取用户地理位置 是否获取成功 是查找该位置周围的地标POI点 否是否搜索或移动图标到其 是他位置 图 3-6新桩上报流程图14提交到数据审查模块 填写充电点信息 用户选择返回的POI点作为电桩地址 提醒用户允许H5地理位置权限 北京交通大学
44、毕业设计(论文)正文系统在获取地理位置后,从数据库获取到地理位置周边的充电桩坐标,并显示在地图上,点击可以查看该充电桩的详细。获取上报地点周围充电桩的目的在于让用户确认要上报的充电站点并未收录在系统里,避免电桩的重复上报,提高上报的准确度。 当用户在地图上进行选择电桩地理位置的操作时,有两种方式进行位置选择。一是直接移动定位图标,将图标拖动到地图上要选取的位置。还可以拖动地图,图标自动移动到地图中心。这也是为了方便用户的操作,贴合现在主流的地图应用操作习惯,让用 户更自然地使用系统。 3.2.7 电桩信息纠错模块 用户在发现系统提供的充电站点信息与实际情况不符时,可以在“电桩纠错”中对信息进行
45、更新。系统审核通过后会对数据库中的数据进行更新。 该模块的流程图如图 3-7: 移动端服务器端开始HTML5页面获取用户地理位置 是否获取成功是否查找该位置半径1km内的电桩点,并返回 将电桩点根据距离列表显示在地图下方 选择电桩点,更改数据 图 3-7电桩纠错流程图15服务器收到后修改数据库 将返回的1km内电桩点显示在地图上 提醒用户允许H5地理位置权限 北京交通大学毕业设计(论文)正文电桩纠错模块主要负责接收用户提交的纠错信息,然后将数据提交给数据审核模块。审核通过后再对数据库相应数据进行修改。电桩信息纠错功能不允许用户进行异地操作, 只能对用户当前位置的电桩进行纠错。这符合用户的使用场
46、景,并控制了数据的准确度。 在电桩纠错模块,用户可以对站点的任何信息进行更正,并提交备注。包括充电站点详细地址,电桩快充电桩,慢充电桩的数量,可用快慢充的数量,运营商以及充电费用,停车费用等一系列信息,用户都可以提交更正。 与系统上报空闲信息模块相似,电桩纠错模块也有两个入口。用户可以在进入公众号后点击电桩纠错按钮直接进入电桩纠错页面。除此之外,系统在详细页面还提供一个轻量级的电桩纠错功能入口。用户可以在详细页面内直接更正充电站点的快慢充数量和 电桩健康状况(可用快慢充数量)。这也是为了方便用户的使用,贴近用户的操作习惯。 3.2.8 数据审核模块 该模块主要负责对用户上传信息进行审核,确定数
47、据的真实性 该模块负责审核的数据对象为新桩上报数据与电桩报错数据。该模块还会监控空闲电桩上报数据(不审核),通过算法判断用户近期有无违规情况。 数据审核的方式分两种,一种是人力去实际地点查看确定,然后在系统中确认;一种是系统通过算法,根据用户信用度,地点访问频率,站点上传信息的数量等参数来判断数据的可靠性。 3.2.9 充电点优先级计算模块 该模块主要负责对收录的充电点进行优先级评分,在用户查找电桩时给予推荐。 优先级评分是根据充电点的数量,地理位置,停车地点和费用,损毁情况,排队情 况等一系列指标进行评分。 由于前期并不知道用户最关注的点是什么(比如,用户是会选择一个停车费较贵的空闲点,还是
48、一个排队但免费停车的点充电),我们会给每个指标一个初始的权重,然后会监控用户的选择,用算法对权重进行不断的修改,使之不断贴近用户的选择,进化 出最适合用户的推荐策略。 3.3 非功能性需求非功能性需求,是指软件产品为满足用户业务需求而必须具有且除功能需求以外的特性。 16 北京交通大学毕业设计(论文)正文对于越复杂的系统,其非功能性需求越应该得到重视,因为其不仅面临系统内部数据量大的问题,还面临着由于用户数量大,从而并发量大的挑战,系统吞吐量大,操作流畅,才能给用户带来良好的体验,下面将从安全性、稳定性、可靠性、可用性、易用性和扩展性来介绍对充电桩信息分享系统的非功能性的要求 结合该系统的功能
49、特点,该系统需要具有以下非功能性需求,如表 3-8 所示。 表 3-8非功能性需求3.4 本章小结本章主要对基于地理位置的充电桩信息分享系统进行了需求分析。需求分析中对系统概况进行了介绍,系统地分析了系统的整体功能,并对系统从功能上进行了各个模块的划分,分别为信息管理模块、核心功能模块、数据分析模块,以及每个部分再细分的模块,并分别对这些模块功能进行了介绍与分析。本章也对系统所应该具有的非功能性需求进行了分析,包括兼容性、稳定性、可靠性、易用性和可扩展性。这些非功能特性 保证了系统的可用性与质量。 17非功能性需求详细要求兼容性能够兼容主流的手机屏幕大小,不出现排版错位的情况 稳定性用户在网络
50、信号不够好时也能保证较快地加载图片,快速获取地理位置,并加载出周边的电桩点,保证体验的流畅性 可靠性用户在上报或者查找信息时保证成功率和正确率 易用性页面布局合理、清晰,有工具条指引客户操作。 可扩展性系统可以支持不断接入的新业务,基本的代码框架能够满足新的功能开发。 北京交通大学毕业设计(论文)正文4 充电桩信息分享系统概要设计本章将介绍充电桩信息分享系统的架构设计,通过架构设计图来整体呈现系统的各个模块的构成,以及模块之间的交互;通过架构图阐明充电桩信息分享系统的架构设计, 并且借助 ER 图介绍充电桩信息分享系统的数据库设计。 4.1 充电桩信息分享系统架构设计充电桩信息分享系统由移动端
51、和微信服务接口帮助功能的实现。 服务器端组成。并调用外部的百度地图接口和充电桩信息分享系统的整体架构设计图如图 4-1 所示。 处理查询请求查找电桩 处理实时信息上传上报实时信息 数据库移动端(HTML5)电桩信息纠错 接收请求处理纠错请求上报新桩 数据审核个人信息查询 处理新桩请求处理个人信息请求用户个人信息获取推荐策略计算地理位置获取接入 System Boundary百度地图微信图 4-1 充电桩信息分享系统架构图 在功能模块(查询电桩,新桩上报,更新电桩信息),用户向服务器发送请求,请求数据发送到服务器后,服务器首先通过 HTML5 页面获取用户的地理位置,然后根据用户的请求类型和得到
52、的数据,进行相应的操作,然后读取或更新数据库,再将结果返回给移动端。 如果用户执行如上报的数据这样需要审核的操作,系统会将数据暂存起来,审核通 过后再进行相应修改操作。 18 北京交通大学毕业设计(论文)正文推荐策略模块负责对数据库中收录的充电点进行优先级评分,系统在用户查找电桩时会根据这些分值来给予推荐。 推荐策略模块优先级评分是根据充电点的数量,地理位置,停车地点和费用,损毁情况,排队情况等一系列指标进行评分,并监控用户的选择,用算法对权重进行不断的修改,使之不断贴近用户的选择,进化出最适合用户的推荐策略 系统在移动端会调用百度地图的接口来实现地图功能,以及用户的相关的地图操作。因为系统是
53、建立在腾讯微信公众号框架中的,所以还需要调用微信的相关接口,来获取用户的相关信息等内容。 系统分为四层架构,分别为表示层,逻辑控制层,数据控制层,数据存储层。表示层作为给用户展示的页面,逻辑控制层利用接口调用处理用户请求以及业务逻辑等系统操作。逻辑控制层里再通过接口访问数据模型层,该层再向下到达数据存储层,进行数据库处理。完成后再通过逻辑控制层的控制实现表示层,返回给用户。 分层架构降低了系统内模块的耦合度,使系统架构更加清晰。此外,还利用了 Spring 框架作为系统的支持,通过控制反转和依赖注入使得系统模块之间的依赖性降低,可扩展性得到提高。 系统分层架构图如图 4-2 所示 图 4-2系统分层架构图19表示层 数据存储层 ChargePointDB 存储平台数据 数据访问层 个人信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年河北省内外贸一体化综合服务平台启动:“1 2 N”体系深度解析
- 土地增值税的基本概念和特点
- 2026年网络安全培训课件
- 2026年水上安全警示培训
- 2026年实验室风险评估培训
- 2026年商场安全文化建设培训
- 疼痛评估:方法与技巧
- 2026年安徽省阜阳市临泉县第一次中考模拟试卷(一模)数学试题(含答案)
- 甲状腺术后患者生活质量评估与干预
- 护理风险责任界定
- 呼吸内科利用PDCA循环提高患者无创呼吸机有效使用率品管圈
- 肝硬化护理疑难病例讨论
- 失禁相关性皮炎与压力性损伤的区分鉴别
- 商业综合体节能降耗管理措施
- 数字人民币跨境结算机制-洞察阐释
- 股东内部承包经营利润分成合同
- 【大赛原创 请勿转载】《军神》+公开课一等奖创新教学设计
- 牛津树-自然拼读-等级2-level 2 -U1-Lesson2
- 弘法寺义工规章管理制度
- 大货车转租合同协议书
- T/ZJSEE 0016-2023高压电缆线路故障定位在线监测装置技术规范
评论
0/150
提交评论