一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种控制器刷写方法及装置与流程

2021-10-12 13:32:00 来源:中国专利 TAG:控制器 装置 车辆 控制 方法


1.本技术涉及车辆控制技术领域,尤其涉及一种控制器刷写方法及装置。


背景技术:

2.随着经济的高速发展,汽车的使用率越来越高。整车的各个控制器作为汽车的核心部件,更是汽车必不可少的重要组成部分。为了能够提高汽车的驾驶动力性、舒适性、经济性以及娱乐性,越来越多的不同类型的控制器被加入到汽车当中。
3.目前,不同配置的汽车上的整车控制器所匹配的程序不同,在进行整车控制器的程序刷写时,针对不同车型配置,须刷写不同的程序。现有的控制器刷写方法通常是通过特定控制器的专用上位机与控制器一对一连接后单独进行刷写,即,需要根据特定的控制器、控制器局域网络(controller area network,简称can)设备、通信协议来开发上位机刷写软件,刷写效率低下且大量浪费人力成本。
4.因此,如何利用更先进的方法,实现对整车的各个控制器的简便、快速刷写,已成为亟待解决的问题。


技术实现要素:

5.本技术实施例的主要目的在于提供一种控制器刷写方法及装置,能够提高整车控制器的刷写效率,降低刷写成本。
6.本技术实施例提供了一种控制器刷写方法,包括:
7.获取目标控制器的刷写请求;
8.向数据库管理模块发送所述刷写请求,以便所述数据库管理模块根据所述刷写请求从服务器获取所述目标控制器的刷写软件;
9.从所述数据库管理模块处获取所述目标控制器的刷写软件;
10.利用所述刷写软件,对所述目标控制器进行刷写。
11.可选的,所述服务器中预先存储有各种类型控制器的软件和标定文件,以及各种类型控制器的软件编译系统。
12.可选的,所述数据库管理模块用于管理和存储各种类型控制器的刷写软件的版本信息和车辆的车型信息。
13.可选的,所述向数据库管理模块发送所述刷写请求,以便所述数据库管理模块根据所述刷写请求从服务器获取所述目标控制器的刷写软件,包括:
14.向数据库管理模块发送所述刷写请求,以便所述数据库管理模块将所述刷写请求发送至控制器软件释放模块;
15.利用所述控制器软件释放模块对所述刷写请求进行解析,得到解析结果;
16.将所述解析结果发送至编译指令生成模块,以便所述编译指令生成模块生成指令信息,并将所述指令信息发送至所述服务器;
17.利用所述服务器中预先存储的各种类型控制器的软件和标定文件以及各种类型
控制器的软件编译系统,根据所述指令信息,确定所述目标控制器的刷写软件,并将所述刷写软件发送至所述控制器软件释放模块;
18.通过所述控制器软件释放模块将所述刷写软件发送至数据库管理模块。
19.可选的,所述利用所述刷写软件,对所述目标控制器进行刷写,包括:
20.对所述刷写软件进行解析,得到二进制bin文件和所述目标控制器的刷写指令;
21.将所述bin文件数据和刷写指令封装成控制器局域网络can通信报文;
22.调用can设备,将所述can通信报文发送至所述目标控制器中,实现对所述目标控制器的刷写。
23.本技术实施例还提供了一种控制器刷写装置,包括:控制器刷写上位机和数据块管理模块;
24.所述控制器刷写上位机,用于获取目标控制器的刷写请求;向所述数据库管理模块发送所述刷写请求;从所述数据库管理模块处获取所述目标控制器的刷写软件;利用所述刷写软件,对所述目标控制器进行刷写;
25.所述数据块管理模块,用于根据所述刷写请求从服务器中获取所述目标控制器的刷写软件。
26.可选的,所述服务器中预先存储有各种类型控制器的软件和标定文件,以及各种类型控制器的软件编译系统。
27.可选的,所述数据库管理模块还用于管理和存储各种类型控制器的刷写软件的版本信息和车辆的车型信息。
28.可选的,所述装置还包括:控制器软件释放模块和编译指令生成模块;
29.所述数据库管理模块,用于将所述刷写请求发送至所述控制器软件释放模块;
30.所述控制器软件释放模块,用于对所述刷写请求进行解析,得到解析结果;并将所述解析结果发送至所述编译指令生成模块;
31.所述编译指令生成模块,用于根据所述解析结果,生成指令信息,并将所述指令信息发送至所述服务器;
32.所述服务器,用于利用预先存储的各种类型控制器的软件和标定文件以及各种类型控制器的软件编译系统,根据所述指令信息,确定所述目标控制器的刷写软件,并将所述刷写软件发送至所述控制器软件释放模块;
33.所述控制器软件释放模块,还用于将所述刷写软件发送至所述数据库管理模块。
34.可选的,所述控制器刷写上位机还用于:
35.对所述刷写软件进行解析,得到二进制bin文件和所述目标控制器的刷写指令;将所述bin文件数据和刷写指令封装成控制器局域网络can通信报文;调用can设备,将所述can通信报文发送至所述目标控制器中,实现对所述目标控制器的刷写。
36.本技术实施例提供的一种控制器刷写方法及装置,控制器刷写上位机在获取到目标控制器的刷写请求后,可以先向数据库管理模块发送该刷写请求,以便数据库管理模块根据该刷写请求从服务器中获取目标控制器的刷写软件,然后,控制器刷写上位机可以从数据库管理模块获取目标控制器的刷写软件,进而可以利用该刷写软件对目标控制器进行刷写,可见,本技术实施例利用数据库技术实现了仅利用一个控制器刷写上位机就能够刷写整车的各个控制器,不再需要对每个控制器单独进行刷写,从而能够降低人力成本和硬
management system,简称bms)、车身控制模块(body control module,简称bcm)、自动变速箱控制单元(transmission control unit,简称tcu)等。
54.s102:向数据库管理模块发送刷写请求,以便数据库管理模块根据刷写请求从服务器获取目标控制器的刷写软件。
55.在本实施例中,通过步骤s101获取到目标控制器的刷写请求后,可以将该刷写请求发送至数据库管理模块,以便数据库管理模块可以根据该刷写请求从服务器中预先存储的各种类型控制器的软件和标定文件以及各种类型控制器的软件编译系统处获取目标控制器的刷写软件。
56.其中,数据库管理模块用于管理和存储各种类型控制器的刷写软件的版本信息和车辆的车型信息。具体来讲,在开发控制器软件的过程中,对各个验证阶段的问题进行有效跟踪和验证是非常重要的,为此,本技术实施例采用数据库管理模块来实现对各种类型控制器的刷写软件的版本管理,如图2所示,数据库管理模块中存储有车型信息、can设备信息、应用软件、控制器配置信息、控制器刷写指令信息、软件发布的日志信息、实车验证问题日志等。
57.这样,用户只需输入包含车型信息的刷写请求后,就可以从数据库管理模块快速获取目标控制器的刷写软件和相关问题日志等信息,进而还可以对该刷写软件进行问题追踪、日志记录等操作,方便软件开发人员和标定人员对目标控制器的问题进行验证与跟踪,提高工作效率。
58.在本技术实施例的一种可能的实现方式中,本步骤s102的具体实现过程可以包括下述步骤a1-a5:
59.步骤a1:向数据库管理模块发送刷写请求,以便数据库管理模块将刷写请求发送至控制器软件释放模块。
60.在本实现方式中,为了提高整车控制器的刷写效率,降低刷写成本,在获取到目标控制器的刷写请求后,可以将该刷写请求发送至数据库管理模块,以便数据库管理模块将该刷写请求发送至控制器软件释放模块。
61.步骤a2:利用控制器软件释放模块对刷写请求进行解析,得到解析结果。
62.通过步骤a1将刷写请求发送至控制器软件释放模块后,可以利用控制器软件释放模块对刷写请求进行解析,识别出可以从服务器中直接获取的刷写软件,以及需要进行代码更新(重新编译)的刷写软件。
63.步骤a3:将解析结果发送至编译指令生成模块,以便编译指令生成模块生成指令信息,并将指令信息发送至服务器。
64.通过步骤a2得到解析结果中指出的需要进行代码更新的刷写软件后,可以将该解析结果发送至编译指令生成模块,以便编译指令生成模块生成指令信息,并将该指令信息发送至服务器。
65.其中,将编译指令生成模块在接收到解析结果后,会根据该解析结果,生成服务器中各种类型控制器的软件和标定文件与编译系统能够识别的指令信息,主要包括待编译软件的控制器信息、版本信息、可选配的功能模块信息、标定文件信息等,并将该指令信息发送至服务器中相应的软件仓库与编译系统。编译指令生成模块生成指令信息具体实现过程如图3所示。
66.步骤a4:利用服务器中预先存储的各种类型控制器的软件和标定文件以及各种类型控制器的软件编译系统,根据指令信息,确定目标控制器的刷写软件,并将所述刷写软件发送至控制器软件释放模块。
67.通过步骤a3将将指令信息发送至服务器后,进一步可以利用服务器中预先存储的各种类型控制器的软件和标定文件以及各种类型控制器的软件编译系统,根据该指令信息进行代码自动化编译,以确定目标控制器的刷写软件,并将该刷写软件发送至控制器软件释放模块。
68.具体来讲,如图4所示,本技术实施例在服务器主机中预先存储有各种类型控制器的软件和标定文件,并安装有各个控制器的软件编译系统,在接收到编译指令生成模块发送的指令信息后,进一步可以根据该指令信息通过编写编译脚本或者搭建jenkins系统来实现完全自动化地软件编译功能。以确定出目标控制器的刷写软件,并将该刷写软件发送至控制器软件释放模块。需要说明的是,目标控制器的刷写软件需要在实验室hil台架验证通过以后,才能将其释放到软件仓库中,并对每一软件版本进行详细注释,主要包括本次更新的功能、解决的问题等,便于后续工作人员查看日志并针对性地进行验证。
69.步骤a5:通过控制器软件释放模块将刷写软件发送至数据库管理模块。
70.具体来讲,控制器软件释放模块在获取到目标控制器的刷写软件后,可以对该刷写软件的版本信息、生成时间、适配的控制器硬件型号、适用车型等信息进行标注和管理后,将其发送至数据库管理模块进行存储及后续处理。
71.s103:从数据库管理模块处获取目标控制器的刷写软件。
72.在本实施例中,通过步骤s102向数据库管理模块发送刷写请求后,可以从数据库管理模块处获取目标控制器的刷写软件,其中,数据库管理模块中获取目标控制的刷写软件的实现过程可参见上述步骤a1-a5描述的内容,在此不再赘述。
73.s104:利用刷写软件,对目标控制器进行刷写。
74.在本实施例中,通过步骤s103从数据库管理模块处获取目标控制器的刷写软件后,可以对该刷写软件进行解析,并根据解析结果生成对应的can通信报文,用以对目标控制器进行刷写。
75.在本技术实施例的一种可能的实现方式中,本步骤s104的具体实现过程可以包括下述步骤b1-b3:
76.步骤b1:对刷写软件进行解析,得到二进制bin文件和目标控制器的刷写指令。
77.在本实现方式中,如图5所示,控制器刷写上位机在获取到目标控制器的刷写软件后,并不能直接将其发送至目标控制器进行刷写,而是需要先利用刷写软件解析模块对该刷写软件进行解析,以得到最终刷写到控制器存储单元中的bin文件。以及解析控制器刷写指令配置文件得到的目标控制器的刷写指令(或指令集)。
78.步骤b2:将bin文件数据和刷写指令封装成控制器局域网络can通信报文
79.在本实现方式中,通过步骤b1得到bin文件和刷写指令集后,如图5所示,进一步可以将bin文件数据和刷写指令集打包盒封装成can通信报文,用于执行后续步骤b3。
80.步骤b3:调用can设备,将can通信报文发送至所述目标控制器中,实现对所述目标控制器的刷写。
81.在本实现方式中,通过步骤b2将bin文件数据和刷写指令集打包、封装成can通信
报文后,进一步需要先调用与控制器刷写上位机相互连接的can设备,如图5所示,然后将封装好的can通信报文通过该can设备发送到车辆的目标控制器中,以实现对目标控制器的刷写。
82.可以理解的是,本技术实施例中的控制器刷写上位机可以是安装在任一终端设备(如手机、平板电脑等)中的上位机软件,只要保证该终端设备能够连接网络,即可采用本实施例的刷写方法,通过网络从数据库管理模块下载到目标控制器的刷写软件。
83.这样,通过一个数据库和安装有控制器刷写上位机软件的终端设备即可实现对整车的各个控制器进行刷写,从而能够节约人力成本和硬件成本,其中,通过与各个控制器软件的编译系统相互通信,还能实时触发编译系统来编译各个控制器的最新软件,以便高效快速地验证软件功能。同时,本技术实施例还可以利用数据库管理模块对各个控制器刷写软件的进行问题追踪、日志记录等操作,方便软件开发人员和标定人员对目标控制器刷写软件的各个版本的问题进行验证与跟踪等操作,提高工作效率。
84.综上,本技术实施例提供的一种控制器刷写方法,控制器刷写上位机在获取到目标控制器的刷写请求后,可以先向数据库管理模块发送该刷写请求,以便数据库管理模块根据该刷写请求从服务器中获取目标控制器的刷写软件,然后,控制器刷写上位机可以从数据库管理模块获取目标控制器的刷写软件,进而可以利用该刷写软件对目标控制器进行刷写,可见,本技术实施例利用数据库技术实现了仅利用一个控制器刷写上位机就能够刷写整车的各个控制器,不再需要对每个控制器单独进行刷写,从而能够降低人力成本和硬件成本,提高整车控制器的刷写效率。
85.上述实施例详细叙述了本技术方法的技术方案,相应地,本技术还提供了一种控制器刷写装置,下面对该装置进行介绍。
86.参见图6,为本实施例提供的一种控制器刷写装置600的组成示意图,该装置600包括:控制器刷写上位机601和数据块管理模块602;
87.所述控制器刷写上位机601,用于获取目标控制器的刷写请求;向所述数据库管理模块602发送所述刷写请求;从所述数据库管理模块处获取所述目标控制器的刷写软件;利用所述刷写软件,对所述目标控制器进行刷写;
88.所述数据块管理模块602,用于根据所述刷写请求从服务器中获取所述目标控制器的刷写软件。
89.在本实施例的一种实现方式中,所述服务器中预先存储有各种类型控制器的软件和标定文件,以及各种类型控制器的软件编译系统。
90.在本实施例的一种实现方式中,所述数据库管理模块602还用于管理和存储各种类型控制器的刷写软件的版本信息和车辆的车型信息。
91.在本实施例的一种实现方式中,所述装置还包括:控制器软件释放模块和编译指令生成模块;
92.所述数据库管理模块602,用于将所述刷写请求发送至所述控制器软件释放模块;
93.所述控制器软件释放模块,用于对所述刷写请求进行解析,得到解析结果;并将所述解析结果发送至所述编译指令生成模块;
94.所述编译指令生成模块,用于根据所述解析结果,生成指令信息,并将所述指令信息发送至所述服务器;
95.所述服务器,用于利用预先存储的各种类型控制器的软件和标定文件以及各种类型控制器的软件编译系统,根据所述指令信息,确定所述目标控制器的刷写软件,并将所述刷写软件发送至所述控制器软件释放模块;
96.所述控制器软件释放模块,还用于将所述刷写软件发送至所述数据库管理模块602。
97.在本实施例的一种实现方式中,所述控制器刷写上位机601还用于:
98.对所述刷写软件进行解析,得到二进制bin文件和所述目标控制器的刷写指令;将所述bin文件数据和刷写指令封装成控制器局域网络can通信报文;调用can设备,将所述can通信报文发送至所述目标控制器中,实现对所述目标控制器的刷写。
99.这样,本技术实施例提供的一种控制器刷写装置,控制器刷写上位机在获取到目标控制器的刷写请求后,可以先向数据库管理模块发送该刷写请求,以便数据库管理模块根据该刷写请求从服务器中获取目标控制器的刷写软件,然后,控制器刷写上位机可以从数据库管理模块获取目标控制器的刷写软件,进而可以利用该刷写软件对目标控制器进行刷写,可见,本技术实施例利用数据库技术实现了仅利用一个控制器刷写上位机就能够刷写整车的各个控制器,不再需要对每个控制器单独进行刷写,从而能够降低人力成本和硬件成本,提高整车控制器的刷写效率。
100.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本技术各个实施例或者实施例的某些部分所述的方法。
101.需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
102.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
103.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜