一种电动汽车基于车辆行驶里程换电池的计费方法及系统与流程

文档序号:21189691发布日期:2020-06-20 18:23阅读:290来源:国知局
一种电动汽车基于车辆行驶里程换电池的计费方法及系统与流程

本发明涉及电动汽车技术领域,尤其涉及一种电动汽车基于车辆行驶里程换电池的计费方法及系统。



背景技术:

已知国内电动汽车起步时间并不是很长,充换电式电动汽车又是新的商业模式,充换电站内的充换电业务需要有效的计费方法。目前,电动汽车的更换电池的计费方式主要为按次计费,按次计费只是根据不同车辆类型确定一个固定的换电费用,而实际上不同用户每次更换电池时,距离上次更换电池的车辆行驶里程以及本次更换电池的剩余电量差异较大。因此按次计费这种更换电池计费方式没有通过科学的计算,导致误差较大,无法满足人们的使用需求。综上所述,迫切必要对现有的按次计费的更换电池技术作出改进。



技术实现要素:

针对现有技术中缺陷,本发明提供了一种电动汽车基于车辆行驶里程换电池的计费方法及系统,其克服现有电动汽车更换电池按次计费方式的不足,提供一种更加精确的电动汽车更换电池计费方法及系统,更加能够满足使用者的需求。

为了实现上述目的,本发明所采取的技术方案是:

一种电动汽车基于车辆行驶里程换电池的计费方法,其包括如下步骤:

s1、构造数据库,根据用户信息表、车辆信息表、计费规则信息表、绑定信息表和换电记录信息表搭建数据库,所述数据库内置在服务器中;

s2、静态数据采集,通过服务器采集静态数据,静态数据包含用户信息表、车辆信息表、计费规则信息表、绑定信息表和换电记录信息表,对于采集的用户信息、车辆信息和计费规则信息为其绑定对应的用户绑定车辆,并对于服务器中计费规则信息和绑定信息进行设置,同时将上述信息保存到服务器的mysql数据库中;

s3、动态数据实时更新,用户绑定车辆会通过物联网车载终端和云监控系统实时与服务器进行通讯,服务器中接收到用户绑定车辆的实时数据保存到hbase数据库,同时将用户绑定车辆的实时数据同步到redis缓存中;

s4、数据处理,通过终端设备扫描用户车辆上的车牌信息,并与服务器进行联通,通过服务器计算出对应用户车辆更换电池计费金额;

s5、通知处理,将所述步骤s4中的计算出对应用户车辆更换电池计费金额反传输给终端设备。

进一步说,所述步骤s1中用户信息表包含用户编号和用户余额;所述车辆信息表包含车辆编号、车架号和车牌号;所述计费规则信息表包含计费规则编号、规则名称、规则类型、最小里程、最大里程、固定里程、里程单价、超出部分里程单价、最大金额、开始时刻和结束时刻;所述绑定信息表包含绑定编号、用户编号、车辆编号、计费规则编号、车辆初始总里程和创建时间,所述用户编号是从所述用户信息表中获取,所述车辆编号是从所述车辆信息表中获取,所述计费规则编号是从所述计费规则信息表中获取;所述换电记录信息表包含换电记录编号、换电记录流水号、绑定编号、车辆编号、用户编号、计费规则编号、车辆上次换电总里程、车辆本次换电总里程、车辆行驶里程和车辆换电金额,所述车辆编号是从所述车辆信息表中获取,所述用户编号是从所述用户信息表中获取,所述计费规则编号是从所述计费规则信息表中获取,所述换电记录信息表的绑定编号与所述绑定信息表的绑定编号相一致。

进一步说,所述步骤s1中所述车辆信息表进行实时更新,实时更新车辆信息表和换电记录信息表作为高速缓存数据库。

更进一步说,所述高速缓存数据库为redis缓存数据库。

进一步说,所述步骤s2中对于服务器中计费规则信息表和绑定信息表进行设置具体的为计费规则信息和车辆的初始总里程。

进一步说,所述步骤s3中用户绑定车辆会通过物联网车载终端和云监控系统实时与服务器进行实时通讯,且每十秒上报一次车辆的实时信息传输到服务器中。

进一步说,所述步骤s4中通过服务器计算出对应用户车辆更换电池计费金额步骤:

第一步,通过终端设备扫描用户车辆上的车牌信息,终端设备通过与服务器进行联通查询到车牌信息的绑定信息,车牌信息的绑定信息连通到对应用户车辆的用户信息表、车辆信息表和计费规则信息表,所述车辆信息表能展示到车辆实时信息,服务器计算出车辆上次换电总里程、车辆当前总里程、本次换电行驶里程和更换电池时间;

第二步,服务器根据上述第一步骤得出的辆上次换电总里程、车辆当前总里程和本次换电行驶里程和更换电池时间(更换电池时间的终端设备扫描用户车辆,联通服务器时服务器的系统时间)计算出正确的计费规则详细信息;

第三步,服务器中根据上述第二步骤得出的辆上次换电总里程、车辆当前总里程、本次换电行驶里程和正确的计费规则详细信息得出用户车辆的详细计算出换电计费金额。

进一步说,所述步骤s4中计算出对应用户车辆更换电池计费金额,同时得出对应用户车辆更新后的换电记录信息表,且对应用户车辆的换电记录信息表保存到服务器的数据库中,并删除换电记录信息表的缓存信息,将对应用户车辆更新后的换电记录信息表传输给终端设备。

进一步说,所述终端设备为智能手机或平板电脑或手持终端。

一种电动汽车基于车辆行驶里程换电池的计费系统,包括主机设备、运行机设备和终端设备;

所述主机设备为一台具有开发主机的pc机;

所述运行机设备包括三台安装有linuxcentos系统的pc机;

所述主机设备对所述运行机设备进行系统开发,所述运行机设备中对应含有服务器,每个所述服务器中具有运行线上算法系统和mysql、redis、hbase的服务器集群,所述运行机设备中服务器存储有静态数据和车辆的实时数据,所述终端设备扫描用户车辆上的车牌信息,并与所述运行机设备中服务器进行联通,通过所述运行机设备中服务器计算出对应用户车辆更换电池计费金额,所述运行机设备中计算出对应用户车辆更换电池计费金额传输给终端设备查看。

所述一台具有开发主机的pc机型号为intel(r)xeon(r)cpue5-2680v3@2.50ghz,且安装有window10操作系统。

所述三台安装有linuxcentos系统的pc机的型号均为intel(r)xeon(r)cpue5-2682v4@2.50ghz。

本发明的有益效果:与现有技术相比,本发明通过其克服现有电动汽车更换电池按次计费方式的不足,通过车辆行驶里程更换电池计费方法,从而使得计费更加精确和精准,更加有利于使用者计算方法,有利于用户消费者的安全消费,大大出现了不够精确而出现成本上升的问题,同时其本发明的系统较为简单,便于安装与使用,更加满足使用者的使用需求,也有利于减少使用者的使用成本。

附图说明

图1为本发明系统模块化结构图;

图2为本发明数据库表结构图;

图3为本发明数据采集流程图;

图4为本发明的时序图;

图5为本发明系统结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明了,下面通过附图及实施例,对本发明进行进一步详细说明。但是应该理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

参阅图1,如图所示,一种电动汽车基于车辆行驶里程换电池的计费方法,其包括如下步骤:

s1、构造数据库,根据用户信息表、车辆信息表、计费规则信息表、绑定信息表和换电记录信息表搭建数据库,数据库内置在服务器中;

s2、静态数据采集,通过服务器采集静态数据,静态数据包含用户信息表、车辆信息表、计费规则信息表、绑定信息表和换电记录信息表,对于采集的用户信息、车辆信息和计费规则信息为其绑定对应的用户绑定车辆,并对于服务器中计费规则信息和绑定信息进行设置,同时将上述信息保存到服务器的mysql数据库中;

s3、动态数据实时更新,用户绑定车辆会通过物联网车载终端和云监控系统实时与服务器进行通讯,服务器中接收到用户绑定车辆的实时数据保存到hbase数据库,同时将用户绑定车辆的实时数据同步到redis缓存中;

s4、数据处理,通过终端设备扫描用户车辆上的车牌信息,并与服务器进行联通,通过服务器计算出对应用户车辆更换电池计费金额;

s5、通知处理,将步骤s4中的计算出对应用户车辆更换电池计费金额反传输给终端设备,将计算出用户车辆更换电池计费金额的换电记录保存到数据库中,并删除换电记录缓存信息,换电记录也会传输给终端设备。

具体的步骤s1中,用户信息表包含用户编号和用户余额;所述车辆信息表包含车辆编号、车架号和车牌号;所述计费规则信息表包含计费规则编号、规则名称、规则类型、最小里程、最大里程、固定里程、里程单价、超出部分里程单价、最大金额、开始时刻和结束时刻;所述绑定信息表包含绑定编号、用户编号、车辆编号、计费规则编号、车辆初始总里程和创建时间,所述用户编号是从所述用户信息表中获取,所述车辆编号是从所述车辆信息表中获取,所述计费规则编号是从所述计费规则信息表中获取;所述换电记录信息表包含换电记录编号、换电记录流水号、绑定编号、车辆编号、用户编号、计费规则编号、车辆上次换电总里程、车辆本次换电总里程、车辆行驶里程和车辆换电金额,所述车辆编号是从所述车辆信息表中获取,所述用户编号是从所述用户信息表中获取,所述计费规则编号是从所述计费规则信息表中获取,所述换电记录信息表的绑定编号与所述绑定信息表的绑定编号相一致。对于绑定编号的绑定意思就是代表了司机和车辆之间的关联关系,通过绑定编号可以找到唯一的一个绑定信息,通过绑定信息中的司机编号和车辆编号,可以找到司机和车辆的详细信息。换电记录信息表意思就是记录一个司机去一个换电站给一辆车换电的计费过程,所述绑定信息表与换电记录信息表是一一对应的。

具体的步骤s1中,车辆信息表进行实时更新,实时更新车辆信息表和换电记录信息表作为高速缓存数据库。高速缓存数据库为redis缓存数据库。

具体的步骤s2中,对于服务器中计费规则信息表和绑定信息表进行设置具体的为计费规则信息和车辆的初始总里程。

具体的步骤s3中,用户绑定车辆会通过物联网车载终端和云监控系统实时与服务器进行实时通讯,且每十秒上报一次车辆的实时信息传输到服务器中。

具体的步骤s4中,通过服务器计算出对应用户车辆更换电池计费金额步骤:

第一步,通过终端设备扫描用户车辆上的车牌信息,终端设备通过与服务器进行联通查询到车牌信息的绑定信息,对于获取车牌信息的绑定信息以用户车辆上车牌号为条件,在mysql数据库以车辆编号为条件内关联车辆信息表和绑定信息表,从而能够查询到车牌信息的绑定信息,车牌信息的绑定信息连通到对应用户车辆的用户信息表、车辆信息表和计费规则信息表,车辆信息表能展示到车辆实时信息,如以[car_info_车牌号]为key,在redis缓存中查询到车辆实时信息,获取车辆当前里程,服务器计算出车辆上次换电总里程、车辆当前总里程、本次换电行驶里程和更换电池时间,使用绑定信息表的创建时间和车辆信息表的车牌号去查询该车辆的换电时间大于绑定信息表的创建时间的最新一条换电记录,若查询到一条换电记录,则返回该换电记录的车辆本次换电总里程,若换电记录不存在,则返回绑定信息表中的车辆初始里程;创建待处理换电记录信息,首先生成换电记录流水号,如用yyyymmddhhmmss格式的系统时间字符串和长度为5的随机字符串拼接,生成换电记录唯一流水号,然后生成换电记录信息,用以上计算出的车辆当前总里程与车辆上次换电总里程相减得到车辆行驶里程,创建换电记录对象,将换电记录流水号、用户编号、车辆编号、绑定编号、规则编号、车辆上次换电总里程、车辆本次换电总里程、车辆行驶里程,状态值、创建时间值设置到对象中,将数据保存到redis缓存中,并同步到mysql数据库中;

第二步,服务器根据上述第一步骤得出的辆上次换电总里程、车辆当前总里程和本次换电行驶里程和更换电池时间(更换电池时间的终端设备扫描用户车辆,联通服务器时服务器的系统时间)计算出正确的计费规则详细信息,首先确认车辆本次换电总里程,将上一步生成的换电记录信息返回给终端设备,终端设备确认车辆本次换电总里程,若有误差,则以车辆仪表里程为准修改车辆本次换电总里程,提交换电记录流水号和车辆本次换电总里程,调用运行线上算法,对于运行线上算法原理:为了更加科学的计算换电计费金额,由于不同类型车辆的最大行驶里程和电量的使用情况不同,不同地域不同时段的电费标准不同,根据不同里程范围和不同时刻设置了不同的计费规则内容,则需要根据本次换电行驶里程和换电记录创建时间从多条计费规则中计算出本次换电的使用的一条计费规则,根据计算出的一条计费规则所设置的计费方式计算出本次换电金额。①更新换电记录信息,以[exchange_record_换电记录流水号]为key,从redis缓存中获取换电记录信息,若上传的车辆本次换电总里程与缓存中的不相同,则根据缓存中的车辆上次换电总里程和上传的车辆本次换电总里程,重新计算车辆行驶里程,并将信息更新到缓存和mysql数据库中;②查询多条计费规则信息,根据换电记录中的计费规则编号,查询返回多条计费规则信息;③获取一条本次换电使用的计费规则信息(首先根据时间范围过滤掉不符合条件的计费规则,如使用for循环语句遍历全部计费规则,将不符合开始时刻小于等于换电记录创建时刻且结束时刻大于换电记录创建时刻的计费规则过滤掉;然后根据里程范围过滤掉不符合条件的计费规则,如使用for循环语句遍历全部计费规则,将不符合最小里程小于等于车辆行驶里程且最大里程大于车辆行驶里程的计费规则过滤掉);④计算本次换电金额,通过以上获取的换电记录信息和计费规则信息,计算换电金额,根据不同的里程类型,可能获取到不同类型的计费规则,其中以阶梯类型规则为例:

阶梯类型计费规则包括:最小里程:0公里;固定里程:100公里;最大里程:100000公里;里程单价:a元/公里;超出部分里程单价:b元/公里;最大金额:n元;

若a车型的最大行驶里程为x(x<100000)公里,则当车辆行驶里程为y公里时,根据计费规则:

a若车辆行驶里程y小于100公里,以固定里程100计费:换电金额=100*a

b若车辆行驶里程y大于等于100公里且小于x公里时,以实际车辆行驶里程y计费:换电金额=100*a+(y-100)*b

c若车辆行驶里程y大于x公里时,以最大金额计费:换电金额=n;第三步,服务器中根据上述第二步骤得出的辆上次换电总里程、车辆当前总里程、本次换电行驶里程和正确的计费规则详细信息得出用户车辆的详细计算出换电计费金额。

具体步骤s4中,计算出对应用户车辆更换电池计费金额,同时得出对应用户车辆更新后的换电记录信息表,且对应用户车辆的换电记录信息表保存到服务器的数据库中,并删除换电记录信息表的缓存信息,将对应用户车辆更新后的换电记录信息表传输给终端设备。

具体的终端设备为智能手机或平板电脑或手持终端。

实施例

如图1所示,一种电动汽车基于车辆行驶里程换电池的计费方法,其包括如下步骤:

s1、构造数据库(服务器中构造数据库),如图2所示,根据用户信息表(用户信息表包含用户编号和用户余额)、车辆信息表(车辆信息表包含车辆编号、车架号和车牌号)、计费规则信息表(计费规则信息表包含计费规则编号、规则名称、规则类型、最小里程、最大里程、固定里程、里程单价、超出部分里程单价、最大金额、开始时刻和结束时刻)、绑定信息表(绑定信息表包含绑定编号、用户编号、车辆编号、计费规则编号、车辆初始总里程和创建时间,用户编号是从用户信息表中获取,车辆编号是从车辆信息表中获取,计费规则编号是从计费规则信息表中获取)和换电记录信息表(换电记录信息表包含换电记录编号、换电记录流水号、绑定编号、车辆编号、用户编号、计费规则编号、车辆上次换电总里程、车辆本次换电总里程、车辆行驶里程和车辆换电金额,车辆编号是从车辆信息表中获取,用户编号是从用户信息表中获取,计费规则编号是从计费规则信息表中获取,所述换电记录信息表的绑定编号与所述绑定信息表的绑定编号相一致)搭建数据库,其数据库mysql中设计五个表结构:users、carinfo、exchangerule、bindinfo、exchangerecord,其中users为用户信息表,carinfo为车辆信息表,exchangerule为计费规则信息表,bindinfo为绑定信息表,exchangerecord为换电记录信息表,数据库内置在服务器中。对于车辆信息表进行实时更新,实时更新车辆信息表和换电记录信息表作为高速缓存数据库,高速缓存数据库为redis缓存数据库,redis缓存数据库中设计了两个缓存数据类型,如以[car_info_车牌号]为key,车辆最新上报数据信息为value,以哈希(hash)方式存储,包含的是车牌号、车架号、电量、经度、纬度和总里程作为车辆实时信息缓存数据,以[exchange_record_换电记录流水号]为key,换电记录信息为value,以哈希(hash)方式存储,field与换电记录信息数据库表结构相同;

s2,在换电站开始换电营业之前,首先需要通过管理平台采集静态数据,然后传输给服务器存储,将需要换电的司机信息存储到users表中,车辆信息存储到carinfo表中,计费规则信息存储到exchangerule表中,给用户分配车辆和计费规则存储到bindinfo表中,同时预存储车牌号的车辆通过物联网车载终端和云监控系统实时通讯,每十秒上报一次车辆实时信息到服务器,并将车辆实时数据保存到hbase数据库表中,同时将车辆实时信息同步到redis缓存中,数据采集流程如图3所示,用户层的浏览器传输给基础设施层的互联网,基础设施层的互联网传输给应用层的管理服务平台,应用层的管理服务平台传输给数据仓库层,用户层的车载终端传输给基础设施层的物联网,基础设施层的物联网传输给应用层的云监控平台,应用层的云监控平台传输给数据仓库层,数据仓库层有三个数据库(mysql数据库、redis缓存和hbase数据库)。对于采集的用户信息、车辆信息和计费规则信息为其绑定对应的用户绑定车辆,并对于服务器中计费规则信息和绑定信息进行设置,同时将上述信息保存到服务器的mysql数据库中,用户绑定车辆会通过物联网车载终端和云监控系统实时与服务器进行通讯,服务器中接收到用户绑定车辆的实时数据保存到hbase数据库,同时将用户绑定车辆的实时数据同步到redis缓存中;

s3、数据处理,通过终端设备扫描用户车辆上的车牌信息,并与服务器进行联通,通过服务器计算出对应用户车辆更换电池计费金额,例如假设用户到换电站换电,首先由站点管理员使用终端设备(管理员app)扫描换电车牌号,并将扫描的车牌号使用carnumber参数名称上传到服务器,使carinfo和bindinfo数据库表关联,查询车牌号等于carnumber的绑定信息。设置lasttotalmile为车辆上次换电总里程,将绑定信息表中的初始里程赋值给lasttotalmile。使carinfo和exchangerecord数据库表关联,查询换电时间大于绑定信息表的创建时间且车牌号等于carnumber的换电记录,以换电记录时间降序排序,若查询结果不为空,返回第一条换电记录,将换电记录的车辆本次换电总里程赋值给lasttotalmile。设置totalmile为车辆本次换电总里程,以car_info_[carnumber]为key,在缓存中获取到车辆当前里程,并赋值给totalmile。设置travelmile为车辆行驶里程,travelmile=totalmile–lasttotalmile。关键代码如下:

用yyyymmddhhmmss格式的系统时间字符串和长度为5的随机字符串拼接,生成换电记录唯一流水号,关键代码如下:

创建换电记录对象,将换电记录流水号、用户编号、车辆编号、绑定编号、规则编号、车辆上次换电总里程、车辆本次换电总里程、车辆行驶里程,状态值、创建时间值设置到对象中,将数据保存到redis缓存中,并同步到mysql数据库中。将生成的换电记录信息表传输给终端设备(管理员app),终端设备经过管理员确认车辆本次换电总里程,若有误差,则以车辆仪表里程为准修改车辆本次换电总里程,提交换电记录流水号和车辆本次换电总里程,调用运行线上算法。其中运行线上算法基于里程的换电计费算法主要包括:filterexchangerule函数,calculationexchangefare函数。filterexchangerule函数主要负责过滤掉不符合条件的计费规则,并返回一条最新的符合条件的计费规则。calculationexchangefare函数主要负责使用filterexchangerule返回的计费规则计算换电金额。

实现里程计费算法的关键代码如下:

实现filterexchangerule函数的关键代码如下:

实现calculationexchangefare函数的代码如下:

s4、通知处理,将步骤s3中的计算出对应用户车辆更换电池计费金额反传输给终端设备,将计算出用户车辆更换电池计费金额的换电记录保存到数据库中,并删除换电记录缓存信息,换电记录也会传输给终端设备。

如图4所示,本发明管理员通过终端设备扫描车牌,终端设备想云计算系统(服务器)发起数据预处理请求,终端设备通过与服务器中mysql数据库进行联通查询到车牌信息的绑定信息(根据车牌查询绑定信息),然后返回给云计算系统,云计算系统根据绑定创建时间、车牌号查询换电记录与mysql数据库连通,从而进行调取到云计算系统,云计算系统计算车辆上次换电总里程换电,云计算系统将车辆查询车辆实时信息同步到redis缓存中,然后又返回给云计算系统,云计算系统也能够计算出车辆行驶里程,车辆行驶里程也会返回给终端设备,终端设备可进行确认里程信息,云计算系统也会保存换电记录给mysql数据库,同时也会同步到redis缓存中。管理员通过终端设备提交里程信息请求给云计算系统,云计算系统从redis缓存中调取查询换电记录信息,redis缓存返还给云计算系统,云计算系统从mysql数据库中查询计费规则和保存换电记录,云计算系统会调用filterexchangerule函数,返回一条符合条件计费规则,同时云计算系统也会调用calculationexchangefare函数计费规则,云计算系统会删除换电记录缓存,最终通过云计算系统的计算传输给终端设备。

一种电动汽车基于车辆行驶里程换电池的计费系统,包括主机设备1、运行机设备2和终端设备3;主机设备1为一台具有开发主机的pc机,一台具有开发主机的pc机型号为intel(r)xeon(r)cpue5-2680v3@2.50ghz,且安装有window10操作系统;运行机设备2包括三台安装有linuxcentos系统的pc机,三台安装有linuxcentos系统的pc机的型号均为intel(r)xeon(r)cpue5-2682v4@2.50ghz;主机设备1对运行机设备2进行系统开发,运行机设备2中对应含有服务器,每个服务器中具有运行线上算法系统和mysql、redis、hbase的服务器集群,运行机设备2中服务器存储有静态数据和车辆的实时数据,终端设备3扫描用户车辆上的车牌信息,并与运行机设备2中服务器进行联通,通过运行机设备2中服务器计算出对应用户车辆更换电池计费金额,运行机设备2中计算出对应用户车辆更换电池计费金额传输给终端设备查看。

需要说明的是,尽管在本文中已经对上述各实施例进行了描述,但并非因此限制本发明的专利保护范围。因此,基于本发明的创新理念,对本文所述实施例进行的变更和修改,或利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接地将以上技术方案运用在其他相关的技术领域,均包括在本发明专利的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1