通过主控模块实现手机进行车辆控制的方法及系统与流程

文档序号:29470767发布日期:2022-04-02 04:48阅读:426来源:国知局
通过主控模块实现手机进行车辆控制的方法及系统与流程

1.本发明涉及车辆智能控制技术领域,尤其是涉及一种通过主控模块实现手机进行车辆控制的方法及系统。


背景技术:

2.限于环境和资源的压力,电动车辆的发展受到国内外的普遍重视。电动车辆仅能利用电池作为提供电能的来源,一旦电池的电能耗尽,电动车辆也就会停下来且无法继续前进。纯电动车辆己经成为未来车辆发展的主要方向,与传统汽车有很大的差异。传统汽车大多是通过机械连接来实现驱动控制,电动车辆则是通过控制器实现电机驱动控制。相比而言,电动车辆的驱动控制方式具有更加灵活的特性。
3.随着手机的功能越来越强大,在日常生活中手机已经成为不可替代的存在,位置导航、音乐播放、移动支付、视频聊天、语音通话等也已成为出行中的必备应用。但在电动自行车、电动摩托车、电动三轮车、电动四轮车等低速电动车领域由于受限于使用场景和成本原因,仪表盘显示和车辆控制还是传统方式,无法同移动网络和常用应用进行联通,无法实现与车辆进行智能交互和控制,已经落后于时代的步伐。


技术实现要素:

4.本发明提出一种通过主控模块实现手机进行车辆控制的方法及系统,以解决背景技术中的问题,通过手机代替仪表盘,来实现对车辆的控制。
5.本发明的技术方案是这样实现的:
6.通过主控模块实现手机进行车辆控制的方法,所述方法是通过增加主控模块实现手机对车辆的控制,用手机替代仪表盘实现车辆状态信息的显示,通过调用手机应用并整合车辆状态信息,实现车辆的智能控制与显示。
7.进一步优化技术方案,所述方法具体包括以下步骤:
8.s1、手机端打开app后开启蓝牙配对,配对成功后完成车辆通电并解锁;
9.s2、主控模块向手机app发送车辆的自检信息;
10.s3、app进入仪表盘界面后,将读取到的车辆状态信息进行显示;
11.s4、在app中打开导航后,进入导航界面将导航信息和仪表盘信息做整合显示,app调用第三方导航服务的api,根据电池的具体使用情况,通过当前电量,结合行驶过程中的电量损耗,根据导航服务中提供的2d/3d信息,实时计算耗电情况,针对剩余电量、导航剩余里程、车辆周边公共设施分布,对电动车续航状况做出判断并实时提醒驾驶员。
12.进一步优化技术方案,所述电动车续航状况包括电动车续航里程、能否到达目的地、建议选择休整地。
13.进一步优化技术方案,车辆正常行驶中,app通过调用的导航信息自动开启转向灯,调取手机光源感应器数据自动开启或关闭车灯。
14.进一步优化技术方案,通过调用手机应用并整合车辆状态信息,实现车辆的智能
控制与显示的具体步骤如下:
15.s10、获取android系统的网络通讯权限;
16.s20、通过app设置行程的起点和终点;
17.s30、连接bms,保持与bms的通信;
18.s40、调用bms通信接口,获取电池信息;
19.s50、设置地图服务“路径规划”接口参数,规划路线;
20.s60、通过地图服务“路径规划”接口回调,获取每条路线的具体路程、预计行程时间、拥堵状况信息;
21.s70、根据电动车满电续航里程、怠速耗电量、各条路线的总里程、总时间,计算当前电量是否需要中途充电及充电次数;
22.s80、根据步骤s70中的计算结果推荐路线,以最快速度抵达为最佳;
23.s90、选定具体路线后开始导航,电动车行进过程中,app实时与bms通信,获取并显示当前电池电量、预估剩余里程、剩余路程、行驶距离信息;
24.s10、若过程中需要对电动车进行充电,则到达充电站前提示,并导航至充电站;
25.s110、若需要多次充电,则重复步骤s90、步骤s10;
26.s120、抵达终点后,结束导航,并对此次行程信息进行总结。
27.通过主控模块实现手机进行车辆控制的系统,包括:
28.主控模块,用于将采集到的信息发送给手机,并根据手机发来的控制指令对车辆控制电路的状态进行更新,从而实现对车辆的实时控制;
29.手机,用于界面显示、提供移动网络和为系统提供本机的软硬件资源;
30.手机app,内部预置有与主控模块进行数据通讯的协议和命令,预置有状态信息展示和控制界面,并可调用本机相关应用的数据及接口进行组合展示和关联控制。
31.进一步优化技术方案,所述主控模块包括:
32.信号采集及控制电路,用于控制电机控制器接通或关闭电门,取消或启动电磁刹车,采集车速信号、灯光控制、音响控制、电器控制;
33.单片机,内部预置有控制策略、通讯协议及控制指令,通过控制与单片机相连接的外部电路,实现对控制信号和采集信号的收发;所述单片机把采集到的信息发送给手机,并根据手机发来的控制指令对控制电路的状态进行更新,实现对车辆的实时控制;
34.通讯电路,用于同手机和具有通讯功能的零部件进行数据通讯,实现控制命令和状态信息的收发;
35.云端服务器,用于对车辆状态信息进行存储和分析。
36.进一步优化技术方案,所述手机app定时将车辆的里程信息通过手机网络发送给云端服务器,根据故障码等级划分实时或定时将读取到的故障代码及车辆实时状态发送给云端服务器;所述云端服务器对车辆里程进行累加存储,根据行驶里程和故障代码为维修提醒及备件库存的调拨提供数据支撑。
37.进一步优化技术方案,通过所述云端服务器的支持,实现钥匙分享并对车辆的驾驶权限进行设置,还可进行实时位置、运行轨迹、车辆状态的查看。
38.采用了上述技术方案,本发明的有益效果为:
39.本发明根据电池的具体使用情况,通过当前电量,结合行驶过程中的电量损耗,根
据导航服务中提供的2d/3d等信息(剩余里程、上坡/下坡路程、拥堵状况、预计到达时间等),实时计算耗电情况,针对剩余电量、导航剩余里程、车辆周边公共设施分布,对电动车续航里程、能否到达目的地、建议选择休整地等做出辅助判断并实时提醒驾驶员。
40.本发明通过手机和云端服务器的加入,还可实现对锂电池运行状态实时监控、记录、运程诊断、固件升级等操作,提高锂电池在普及应用中的安全性,避免起火爆炸等恶性事故的发生。
附图说明
41.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
42.图1为本发明通过主控模块实现手机进行车辆控制的方法的流程图;
43.图2为本发明主控模块的部分电路图一;
44.图3为本发明主控模块的部分电路图二;
45.图4为本发明主控模块的部分电路图三;
46.图5为本发明主控模块的部分电路图四;
47.图6为本发明通过主控模块实现手机进行车辆控制的系统的can通讯电路图。
具体实施方式
48.下面将结合具体实施方案对本发明的技术方案进行清楚、完整的描述,但是本领域技术人员应当理解,下文所述的实施方案仅用于说明本发明,而不应视为限制本发明的范围。基于本发明中的实施方案,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方案,都属于本发明保护的范围。
49.通过主控模块实现手机进行车辆控制的系统,包括:主控模块、手机和手机app。
50.主控模块,用于将采集到的信息发送给手机,并根据手机发来的控制指令对车辆控制电路的状态进行更新,从而实现对车辆的实时控制。
51.主控模块包括:信号采集及控制电路、单片机、通讯电路、云端服务器。
52.信号采集及控制电路,用于控制电机控制器接通或关闭电门,取消或启动电磁刹车,采集车速信号、灯光控制、音响控制、电器控制。
53.单片机,内部预置有控制策略、通讯协议及控制指令,通过控制与单片机相连接的外部电路,实现对控制信号和采集信号的接收和发送。单片机把采集到的信息发送给手机,并根据手机发来的控制指令对控制电路的状态进行更新,实现对车辆的实时控制。
54.通讯电路,用于同手机和具有通讯功能的零部件进行数据通讯,实现控制命令和状态信息的收发。
55.云端服务器,用于对车辆状态信息进行存储和分析,对用户使用过程进行智能保障。
56.与电机控制器连接电路也可被通讯总线取代,由通讯总线与电机控制器相连,通过通讯协议及命令实现上述的信息采集和控制。
57.手机,用于界面显示、提供移动网络和为系统提供本机的软硬件资源,屏幕用于做仪表盘信息、导航信息、娱乐沟通信息的显示。
58.手机app,内部预置有与主控模块进行数据通讯的协议和命令,预置有状态信息展示和控制界面,并可调用本机相关应用的数据及接口进行组合展示和关联控制。
59.手机app定时将车辆的里程信息通过手机网络发送给云端服务器,根据故障码等级划分实时或定时将读取到的故障代码及车辆实时状态发送给云端服务器。
60.云端服务器对车辆里程进行累加存储,避免从车辆端对累计行驶里程的篡改;根据行驶里程和故障代码为维修提醒及备件库存的调拨提供数据支撑。当车辆发生紧急状况时,可以拨打预留的紧急电话;还可以通过云端服务器的支持,实现钥匙分享并对车辆的驾驶权限进行设置,还可进行实时位置、运行轨迹、车辆状态的查看。
61.本发明车辆需要通过蓝牙连接已绑定号码的手机进行驾驶,以手机充当车辆的电子钥匙,具体的过程如下:
62.1、初次使用本系统时,须在app中设置必要信息:主电子钥匙(车主手机号)。
63.2、以主电子钥匙连接车辆蓝牙,生成车辆id信息,关联车辆主要规格参数,如电池容量等,并在车辆内部写入相关信息。
64.3、可通过设置备用电子钥匙(他人手机号)的方式,借出车辆。
65.4、进行车辆驾驶时,驾驶员以电子钥匙蓝牙连接车辆。
66.5、若有网络,则连接云端服务器,通过初次使用时生成的车辆id校验,此电子钥匙能否开启当前车辆,若不能则提示主电子钥匙,有无权限者连接车辆。同时会更新车辆内部的存储信息。
67.6、若无网络,则通过车辆内部的存储信息进行校验,确认是否能开启车辆。
68.7、获取用户授权后,每次车辆启动至关闭,app生成一条使用记录,包括启动时间、关闭时间、行驶里程、耗电量、充电次数、行驶路径等,保存至云端服务器。
69.8、若以备用电子钥匙启动车辆,app会将车辆位置、电池电量等信息实时通报给主电子钥匙,主电子钥匙可通过app设置间隔时间,调整获取信息的频率,调整是否以位置信息绘制运行轨迹等。步骤8中的功能需要车辆具有nb或者4g的支持。
70.本发明在对车辆里程进行累加存储的过程如下:
71.1、若车辆本身具有记录行驶里程的功能,则直接获取车辆的行驶里程,并更新云端服务器上的记录;
72.2、若车辆里程有修改减少(本次行驶前,与上次行驶结束后的里程比较),则每次更新云端服务器记录时进行累加;
73.3、若车辆本身没有记录行驶里程的功能,则每次行驶结束后,app将本次行驶距离记录并写入车辆内部,若已有记录则累加并更新车辆内部信息,随后发送给云端服务器更新记录。
74.主控模块的构成及各部分的功能进行详细说明:
75.信号采集及控制电路可以是由ad采样、高低电位的输入输出电路构成,配合不带通讯功能的电机控制器使用,也可以是由can、485、lin构成,配合带通讯控制功能的控制器和锂电池使用,也可两种组合起来使用。
76.通讯电路用于同手机通讯,可以是蓝牙、nfc、wifi中的一种或多种组合。
77.单片机中预置有控制策略和通讯协议及控制指令,用于把采集到的信息发送给手机,并根据手机发来的控制指令对控制电路的状态进行更新从而实现对车辆的实时控制,单片机还对车辆的里程信息进行累加存储,并将故障码和里程信息发送给手机。
78.主控模块的电路图,可参见图1至图5:
79.如图2:p1接单片机的任意一个i/o引脚,此引脚根据单片机的控制策略做高或低电压输出,out1引脚为低电位控制输出端,此电路可搭建多个,用于分别控制车辆的快慢档位转换、低电位刹车控制、刹车灯控制。
80.图3:p2接单片机的任意一个i/o引脚,此引脚根据单片机的控制策略做高或低电压输出,out2引脚为高电位输出控制端,此电路可搭建多个,用于分别控制车辆的控制器电锁、喇叭、转向灯、车灯。
81.图4:in1接车速线,p3接单片机的任意一个i/o引脚,用于单片机通过采集到的频率信号计算车速和行驶里程。
82.图5:ad1接单片机的任意一个ad引脚,此引脚根据采集到的电压换算成相应的电压或电流值,用于电瓶电压和输出电流的检测,可用于计算剩余电量、续驶里程、过流报警、漏电流报警、高压报警、低压报警。
83.图6:can通讯电路,其中tx和rx接单片机的串口引脚。
84.通过主控模块实现手机进行车辆控制的方法,结合图1所示,该方法是通过增加主控模块实现手机对车辆的控制,用手机替代仪表盘实现车辆状态信息的显示,并增加与用户进行交互的功能,通过调用导航等手机应用并整合车辆状态信息,实现车辆的智能控制与显示。如智能控制车锁、智能或语音控制车辆、整合显示导航和车辆状态信息、音乐播放智能连接车辆音响等。
85.该方法具体包括以下步骤:
86.s1、手机端打开app后开启蓝牙配对,配对成功后完成车辆通电并解锁。
87.s2、配对成功后主控模块向手机app发送车辆的自检信息。
88.s3、把手机固定于手机座中并进行锁紧,并可接通充电线插头为手机充电。app进入仪表盘界面后,可将读取到的电池电量、车速、里程、骑行时间等信息显示于仪表盘界面中,并预留有导航、媒体、开关按钮,用于调取其他应用api,做车灯等的控制。
89.s4、在app中打开导航后,进入导航界面将导航信息和仪表盘信息做整合显示,app调用第三方导航服务的api,根据电池的具体使用情况,通过当前电量,结合行驶过程中的电量损耗,根据导航服务中提供的2d/3d信息(剩余里程、上坡/下坡路程、拥堵状况、预计到达时间等),实时计算耗电情况,针对剩余电量、导航剩余里程、车辆周边公共设施分布,对电动车续航状况做出辅助判断并实时提醒驾驶员。
90.电动车续航状况包括电动车续航里程、能否到达目的地、建议选择休整地。
91.车辆正常行驶中,app通过调用的导航信息自动开启转向灯,调取手机光源感应器数据自动开启或关闭车灯。
92.通过调用手机应用并整合车辆状态信息,实现车辆的智能控制与显示的具体步骤如下:
93.android app(后文以app代称)中集成高德地图api(后文以地图服务代称)。
94.s10、获取android系统的网络通讯权限;
95.s20、通过app设置行程的起点和终点;
96.s30、连接bms(电池管理系统),保持与bms的通信;
97.s40、调用bms通信接口,获取电池信息,包括但不限于:当前电量、电池温度;
98.s50、设置地图服务“路径规划”接口参数,规划路线;
99.s60、通过地图服务“路径规划”接口回调,获取每条路线的具体路程、预计行程时间、拥堵状况等信息;
100.s70、根据电动车满电续航里程、怠速耗电量(可能等待的红灯时间)、各条路线的总里程、总时间,计算当前电量是否需要中途充电及充电次数(导航过程中,途径点个数会有限制);
101.s80、根据步骤s70中的计算结果推荐路线,以最快速度抵达为最佳;
102.s90、选定具体路线后开始导航,电动车行进过程中,app实时与bms通信,获取并显示当前电池电量、预估剩余里程、剩余路程、行驶距离等信息;
103.s10、若过程中需要对电动车进行充电,则到达充电站前提示,并导航至充电站。充电过程中持续提示电池电量并预计充电结束时间、行程使用时间等,同时于app界面展示;
104.s110、若需要多次充电,则重复步骤s90、步骤s10;
105.s120、抵达终点后,结束导航,并对此次行程信息进行总结,包括但不限于:行驶里程、行程距离、充电次数、充电电量、行程用时、低速行驶距离、高速行驶距离、平均速度、速度中位数等。
106.本发明步骤s4中“针对剩余电量、导航剩余里程、车辆周边公共设施分布,对电动车续航状况做出辅助判断并实时提醒驾驶员”的具体方法如下:
107.s41、app导航过程中,获取地图服务的导航信息,包括但不限于当前道路名称、距离终点的时间和距离;
108.s42、app与bms通信,获取当前电池充放电信息,计算具体的耗电量;
109.s43、根据当前行驶距离计算平均耗电量,再由剩余的路程距离计算得出大概的消耗电量;
110.s44、比对当前剩余电量,得出续航里程;
111.s45、当电量小于预设警戒值,在app界面提示电量,并提示在路线规划中距下一个充电站的距离;
112.s46、进入到充电站后,通过地图服务搜索附近的公共、娱乐设施,并在app界面地图中标注;
113.s47、app与bms通信,获取相关充电信息,于app界面中显示充满电倒计时;
114.s48、充满电后,app界面展示消息,提醒用户开始下一段行程。
115.本发明步骤s4中计算耗电情况的具体方法为:
116.s410、电动车行驶过程中,app与bms实时通信,app调用bms通信接口,获取电池的实时信息;
117.s420、根据电池的充放电信息,计算出从开始导航起到当前为止的实际耗电量;
118.s430、app调用地图服务接口,获取电动车从开始导航到当前为止的行驶里程、所用时间等信息;
119.s440、综合步骤s420、步骤s430中获取的各项参数,计算电池平均每公里、平均每
分钟的耗电量;
120.s450、根据用户设置的展示方式(图表、文字描述等),步骤s440中的计算结果和电量信息实时更新显示到app界面。
121.下面对接入导航以及电量、路程预警等过程进行说明。
122.一、接入导航
123.移动设备中以android手机为例,接入第三方导航服务。电子地图作为基础服务,在资源允许的情况下不排除介入研发部分,成为服务提供商。第三方服务api以高德地图为例,接入过程如下:
124.1、获取key
125.创建应用:进入高德开放平台控制台,创建或选择应用。
126.获取sha1:以windows10为例,打开terminal定位至jdk的bin目录下,使用命令:
127.keytool-list-v-keystore[keystore文件路径]
[0128]
输入keystore密码,在输出信息中包含证书文件的sha1。
[0129]
添加新key:在选择的应用上点击“添加”按钮,在弹出框中依次输入key名称、选择绑定服务为“android平台sdk”、发布版安全码sha1、android应用包名。
[0130]
2、集成和部署
[0131]
从高德开放平台获取jar包、so库等相关资源,随后在android项目中添加对应jar包和so库,并配置依赖关系。
[0132]
3、定位权限配置
[0133]
《!
‑‑
允许访问网络,必选权限
‑‑

[0134]
《uses-permission android:name="android.permission.internet"/》
[0135]
《!
‑‑
允许获取精确位置,实时导航为必选
‑‑

[0136]
《uses-permission android:name="android.permission.access_fine_location"/》
[0137]
《!
‑‑
允许获取粗略位置,实时导航为必选
‑‑

[0138]
《uses-permissionandroid:name="android.permission.access_coarse_location"/》
[0139]
《!
‑‑
允许获取设备和运营商信息,用于问题排查和网络定位(无gps情况下的定位),若需网络定位功能则必选
‑‑

[0140]
《uses-permission android:name="android.permission.read_phone_state"/》
[0141]
《!
‑‑
允许获取网络状态,用于网络定位(无gps情况下的定位),若需网络定位功能则必选
‑‑

[0142]
《uses-permission android:name="android.permission.access_network_state"/》
[0143]
《!
‑‑
允许获取wifi网络信息,用于网络定位(无gps情况下的定位),若需网络定位功能则必选
‑‑

[0144]
《uses-permission android:name="android.permission.access_wifi_state"/》
[0145]
《!
‑‑
允许获取wifi状态改变,用于网络定位(无gps情况下的定位),若需网络定位功能则必选
‑‑

[0146]
《uses-permission android:name="android.permission.change_wifi_state"/》
[0147]
《!
‑‑
后台获取位置信息,若需后台定位或持续导航则必选
‑‑

[0148]
《uses-permission android:name="android.permission.access_background_location"/》
[0149]
《!
‑‑
用于申请调用a-gps模块,卫星定位加速
‑‑

[0150]
《uses-permission android:name="android.permission.access_location_extra_commands"/》
[0151]
《!
‑‑
允许写入扩展存储,用于写入缓存定位数据
‑‑

[0152]
《uses-permission android:name="android.permission.write_external_storage"/》
[0153]
《!
‑‑
用于用户链接蓝牙时,在导航组件页面的蓝牙连接提醒,建立链接后开发者可选用蓝牙通道进行tts播报
‑‑

[0154]
《uses-permission android:name="android.permission.bluetooth"/》
[0155]
《!
‑‑
用与导航状态中保持屏幕常亮
‑‑

[0156]
《uses-permission android:name="android.permission.wake_lock"/》
[0157]
《!
‑‑
允许写设备缓存,用于问题排查
‑‑

[0158]
《uses-permission android:name="android.permission.write_settings"/》
[0159]
《!
‑‑
允许读设备等信息,用于问题排查
‑‑

[0160]
《uses-permissionandroid:name="android.permission.read_external_storage"/》
[0161]
4、配置key
[0162]
androidmanifest.xml文件中,application标签下添加meta-data标签引入高德key:
[0163][0164]
声明高德定位service组件:
[0165]
《service android:name="com.amap.api.location.apsservice"/》
[0166]
5、路线规划
[0167]
根据出发地、目的地、途经地以及路径策略设置,量身定制出行方案。同时可结合实时交通,帮助用户绕开拥堵路段,提供更贴心、更人性化的驾驶出行体验。
[0168]
·
amapnavi
[0169]
此类是导航功能管理类,提供路线规划、行前选路、导航中重算等方法。它是一个单例,通过getinstance方法获取该单例,通过destroy方法来销毁该单例。
[0170]
·
amapnavilistener
[0171]
此类是导航事件信息与数据协议类,提供算路导航过程中的事件(如:路径规划成功/失败、tts字符串、gps信号弱、到达目的地等)以及实时数据(如:诱导信息naviinfo、定位信息、电子眼信息等)回调接口。
[0172]
6、开始导航
[0173]
实时导航,是通过连续的定位信息来驱动的导航,应用于实际的导航过程。在路线规划成功后,才可以开始导航。
[0174]
·
初始化导航并监听回调
[0175]
/**
[0176]
*创建一个amapnavi导航对象。
[0177]
*
[0178]
*@param context对应的context
[0179]
*@return导航对象(单例)。
[0180]
*/
[0181]
public synchronized static amapnavi getinstance(context context)
[0182]
/**
[0183]
*添加导航事件回调监听。
[0184]
*
[0185]
*@param navilistener导航回调监听
[0186]
*@since 1.7.0
[0187]
*/
[0188]
@override
[0189]
public void addamapnavilistener(amapnavilistener navilistener)
[0190]
·
规划路线
[0191]
/**
[0192]
*驾车poi算路
[0193]
*《p》
[0194]
*该方法可以避免到达点问题导致的绕路,地铁等多出口类poi,也会导航到多个出口。
[0195]
*注意:navipoi对象中,优先使用poi id进行算路,失败则使用经纬度进行算路。
[0196]
*《/p》
[0197]
*
[0198]
*@param frompoi起点poi{@link com.amap.api.navi.model.navipoi},若传入无效起点则使用当前位置
[0199]
*@param topoi终点poi{@link com.amap.api.navi.model.navipoi}
[0200]
*@param waypoints途经点poi{@link com.amap.api.navi.model.navipoi}
[0201]
*@param strategy导航策略{@link com.amap.api.navi.enums.pathplanningstrategy}
[0202]
*@return发起算路是否成功
[0203]
*@since 6.6.0
[0204]
*/
[0205]
@override public boolean calculatedriveroute(navipoi frompoi,navipoi topoi,list《navipoi》waypoints,int strategy)
[0206]
·
接收算路回调
[0207]
/**
[0208]
*路线规划成功回调,包括算路、导航中偏航、用户改变算路策略、行程点等触发的重算,具体算路结果可以通过{@link com.amap.api.navi.model.amapcalcrouteresult}获取
[0209]
*可以通过calcrouteresult获取算路错误码、算路类型以及路线id
[0210]
*@param routeresult{@link com.amap.api.navi.model.amapcalcrouteresult}
[0211]
*@since 6.1.0
[0212]
*/
[0213]
void oncalculateroutesuccess(amapcalcrouteresult routeresult);
[0214]
/**
[0215]
*路线规划失败回调,包括算路、导航中偏航、用户改变算路策略、行程点等触发的重算,具体算路结果可以通过{@link com.amap.api.navi.model.amapcalcrouteresult}获取
[0216]
*可以通过calcrouteresult获取算路错误码、算路类型以及路线id
[0217]
*@param routeresult{@link com.amap.api.navi.model.amapcalcrouteresult}
[0218]
*@since 6.1.0
[0219]
*/
[0220]
void oncalculateroutefailure(amapcalcrouteresult routeresult);
[0221]
·
算路成功后开始导航
[0222]
二、电量、路程预警
[0223]
通过蓝牙、nfc等协议与车载硬件部分通讯,以蓝牙为例:
[0224]
·
建立通讯连接
[0225]
根据android以下api
[0226]
android.bluetooth.bluetoothadapter
[0227]
android.bluetooth.bluetoothsocket
[0228]
android.bluetooth.bluetoothdevice
[0229]
java.io.inputstream
[0230]
java.io.outputstream
[0231]
首先在android activity组件中声明相关蓝牙广播并注册:
[0232]
[0233][0234]
确认选择的设备并开始建立通讯连接:
[0235][0236]
·
信息交互
[0237]
依据数据协议,通过相应的api获取电动车行驶中的各种信息
[0238]
java.io.outputstream
[0239]
public void write(byte[]b)throws ioexception;
[0240]
java.io.inputstream
[0241]
public int read(byte[]b)throws ioexception
[0242]
本发明根据电池的具体使用情况,通过当前电量,结合行驶过程中的电量损耗,根
据导航服务中提供的2d/3d等信息(剩余里程、上坡/下坡路程、拥堵状况、预计到达时间等),实时计算耗电情况,针对剩余电量、导航剩余里程、车辆周边公共设施分布,对电动车续航里程、能否到达目的地、建议选择休整地等做出辅助判断并实时提醒驾驶员。
[0243]
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1