Programming method and device of electronic control unit, electronic equipment and storage medium
By determining the programming order and priority of the electronic control unit in the automotive diagnostic device, the problem of low remote online programming efficiency is solved, and a more efficient and orderly programming process is achieved.
Patent Information
- Application Number
- CN202411319101.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-21
- Publication Date
- 2025-01-24
AI Technical Summary
Existing automotive diagnostic equipment is not efficient in remote online programming of electronic control units.
By determining the programming order of the electronic control unit that needs to be programmed, and conduct remote online programming operations in this order, use historical programming data to determine programming priority to improve programming efficiency.
Improve the remote online programming efficiency of the electronic control unit, avoid irregular programming operations and programming conflicts, and ensure the orderlyness and quality of the programming process.
Smart Images

Figure CN119356277A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of vehicle diagnosis, and in particular to a programming method, device, electronic equipment and storage medium for an electronic control unit. Background Art
[0002] The programming of electronic control units by automotive diagnostic equipment enables automakers to release software updates and fixes in a timely manner, which can solve some problems without replacing parts, such as adjusting parameter configurations, fixing software faults, etc., which can reduce maintenance costs.
[0003] Remote online programming eliminates the need to drive a vehicle to a specific repair station for car repair and upgrade, greatly saving time and cost. However, the efficiency of remote online programming of electronic control units by current automotive diagnostic equipment is not high. Summary of the invention
[0004] The embodiments of the present application provide a programming method, device, electronic device and storage medium for an electronic control unit. The programming order of the electronic control units that need to be programmed is determined, and then each electronic control unit is remotely programmed online according to the programming order to obtain multiple updated electronic control units, thereby improving the efficiency of remote online programming of the electronic control units.
[0005] In a first aspect, an embodiment of the present application provides a method for programming an electronic control unit, which is applied to a vehicle diagnostic device, and the method includes:
[0006] Acquire an electronic control unit that needs to be programmed in a target vehicle, and obtain a plurality of electronic control units;
[0007] Determine programming files corresponding to a plurality of electronic control units to obtain a plurality of programming files; each electronic control unit corresponds to a programming file;
[0008] Acquire historical programming data of a target vehicle within a preset time period to obtain target historical programming data;
[0009] Determine a programming priority corresponding to each electronic control unit in a plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities;
[0010] determining a programming order for the plurality of electronic control units based on a plurality of programming priorities;
[0011] Based on the programming sequence and multiple programming files, remote online programming operations are performed on multiple electronic control units in sequence to obtain multiple updated electronic control units.
[0012] In a second aspect, an embodiment of the present application provides a programming device for an electronic control unit, which is applied to a vehicle diagnostic device, and the device includes: an acquisition unit and a processing unit;
[0013] An acquisition unit, used for acquiring an electronic control unit in a target vehicle that needs to be programmed, to obtain a plurality of electronic control units;
[0014] A processing unit, used to determine programming files corresponding to a plurality of electronic control units, and obtain a plurality of programming files; each electronic control unit corresponds to a programming file;
[0015] Acquire historical programming data of a target vehicle within a preset time period to obtain target historical programming data;
[0016] Determine a programming priority corresponding to each electronic control unit in a plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities;
[0017] determining a programming order for the plurality of electronic control units based on a plurality of programming priorities;
[0018] Based on the programming sequence and multiple programming files, remote online programming operations are performed on multiple electronic control units in sequence to obtain multiple updated electronic control units.
[0019] In a third aspect, an embodiment of the present invention provides an electronic device, comprising: a processor and a memory, the processor being connected to the memory, the memory being used to store a computer program, and the processor being used to execute the computer program stored in the memory, so that the electronic device executes the method of the first aspect.
[0020] In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and the computer program enables a computer to execute the method of the first aspect.
[0021] In a fifth aspect, an embodiment of the present invention provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and is computer-operable to cause the computer to execute the method of the first aspect.
[0022] The implementation of the present invention has the following beneficial effects:
[0023] It can be seen that the programming method of the electronic control unit described in the embodiment of the present invention is applied to vehicle diagnostic equipment, firstly, the electronic control unit that needs to be programmed in the target vehicle is obtained to obtain multiple electronic control units, and then the programming files corresponding to the multiple electronic control units are determined to obtain multiple programming files, each electronic control unit corresponds to one programming file, and then the historical programming data of the target vehicle within a preset time period is obtained to obtain the target historical programming data, and then the programming priority corresponding to each electronic control unit in the multiple electronic control units is determined based on the target historical programming data to obtain multiple programming priorities, and the programming order of the multiple electronic control units is determined based on the multiple programming priorities, and finally, based on the programming order and the multiple programming files, remote online programming operations are performed on the multiple electronic control units in turn to obtain multiple updated electronic control units, thereby improving the efficiency of remote online programming of the electronic control units. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] In order to more clearly illustrate the technical solutions in the implementation methods of the present application or the background technology, the drawings required for use in the implementation methods of the present application or the background technology will be described below.
[0025] Figure 1 is a schematic diagram of a vehicle diagnostic system provided by an embodiment of the present application;
[0026] Figure 2 is a flow chart of a programming method for an electronic control unit provided in an embodiment of the present invention;
[0027] Figure 3 It is a structural schematic diagram of a programming device for an electronic control unit provided in an embodiment of the present application;
[0028] Figure 4 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0029] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the implementation mode of the present application will be clearly and completely described below in conjunction with the drawings in the implementation mode of the present application. Obviously, the described implementation mode is only a part of the implementation mode of the present application, not all the implementation modes. Based on the implementation mode in the present application, all other implementation modes obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.
[0030] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices.
[0031] Reference to "embodiment" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiment may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.
[0032] See also Figure 1 , Figure 1 1 is a schematic diagram of a vehicle diagnostic system provided in an embodiment of the present application. The vehicle diagnostic system 10 includes a target vehicle 101 and a vehicle diagnostic device 102 .
[0033] In this embodiment, the vehicle diagnostic device 102 obtains the electronic control unit that needs to be programmed in the target vehicle 101, obtains multiple electronic control units, and then determines the programming files corresponding to the multiple electronic control units to obtain multiple programming files, wherein each electronic control unit corresponds to a programming file. The vehicle diagnostic device 102 obtains the historical programming data of the target vehicle within a preset time period, obtains the target historical programming data, and then determines the programming priority corresponding to each electronic control unit in the multiple electronic control units based on the target historical programming data, obtains multiple programming priorities, and then determines the programming order of the multiple electronic control units based on the multiple programming priorities, and finally performs remote online programming operations on the multiple electronic control units in sequence based on the programming order and the multiple programming files, and obtains the updated multiple electronic control units. It can be seen that by analyzing the historical programming data of the target vehicle to determine the programming priority and programming order of the multiple electronic control units, irregular programming operations can be avoided, making the programming process more orderly. Performing remote online programming operations on multiple electronic control units in sequence according to the determined programming order can avoid confusion and conflicts that may be caused by programming multiple units at the same time. Determining programming priorities based on historical programming data means that programming operations for each electronic control unit are arranged in a more targeted manner. For those units that have had more problems in history or have a greater impact on vehicle performance, more attention and resources can be given to improve the quality of programming.
[0034] See also Figure 2 , Figure 2 1 is a flowchart of a method for programming an electronic control unit provided by an embodiment of the present invention. The method is applied to Figure 1 The vehicle diagnostic device shown includes but is not limited to the following steps:
[0035] S201: Acquire electronic control units that need to be programmed in a target vehicle to obtain a plurality of electronic control units.
[0036] In this embodiment, the vehicle diagnostic equipment can be connected to the online diagnostic platform via the Internet. The user can view the model and fault information of the target vehicle through the online diagnostic platform, and then send programming instructions. The vehicle diagnostic equipment obtains the electronic control unit that needs to be programmed in the target vehicle according to the programming instructions, and obtains multiple electronic control units.
[0037] It should be explained that there are many electronic control units in the target vehicle, including but not limited to the engine control unit, transmission control unit, brake control unit, body control unit, airbag control unit, and electronic stability control unit. The engine control unit is used to control the operating parameters of the engine, such as fuel injection amount, ignition timing, valve timing, etc. It receives various working status information of the engine, such as speed, temperature, pressure, etc. through sensors, and then calculates according to the preset algorithm and program, and issues control instructions to ensure that the engine operates in the best state. The transmission control unit is responsible for controlling the shift timing, shift logic and oil pressure of the automatic transmission. It can judge the current driving state according to information such as vehicle speed, engine speed, accelerator pedal position, and then decide when to shift gears to achieve a smooth and efficient shifting process. The brake control unit is used to control the vehicle's braking system, including the anti-lock braking system, electronic brake force distribution system, body stability control system, etc. It monitors the wheel speed, brake pressure and other information through sensors to prevent wheel locking and maintain vehicle stability and controllability during emergency braking or driving on slippery roads. The body control unit is used to manage various electronic devices and systems of the vehicle, such as lights, wipers, windows, door locks, air conditioning, etc. It receives signals from various switches and sensors, and then controls the corresponding actuators to operate. The airbag control unit is used to monitor the collision of the vehicle. When a collision is detected, it quickly triggers the deployment of the airbag to protect the lives of the driver and passengers. Through acceleration sensors, pressure sensors and other devices, it determines the intensity and direction of the collision, and then decides whether to trigger the airbag and which airbags to trigger. The electronic stability control unit monitors the driving status of the vehicle through sensors, such as vehicle speed, steering angle, yaw rate, etc. When the vehicle shows a tendency to lose control or skid, the electronic stability control unit will automatically brake a single wheel or adjust the output power of the engine to maintain the stability and controllability of the vehicle.
[0038] S202: Determine programming files corresponding to a plurality of electronic control units, and obtain a plurality of programming files.
[0039] In this embodiment, each electronic control unit corresponds to a programming file. Exemplarily, the target vehicle identification number of the target vehicle is obtained. Specifically, the vehicle identification number is a unique identifier for each vehicle, so by obtaining the target vehicle identification number of the target vehicle, the specific specifications and models of the vehicle can be accurately understood, and the specific programming file library to which the target vehicle belongs can also be determined, thereby ensuring that the obtained programming file fully matches the vehicle.
[0040] Exemplarily, the programming file library corresponding to the target vehicle is determined based on the target vehicle identification number to obtain the target programming file library, wherein the target programming file library is used to characterize the correspondence between the electronic control unit and the programming file. Specifically, the programming file library is a database storing programming files of various vehicle electronic control units. Different vehicle models, configurations and years may correspond to different programming files. The specific model, configuration and other information of the target vehicle can be determined by the vehicle identification number, so as to find the corresponding specific programming file library. After obtaining the target vehicle identification number, the system will use this target vehicle identification number as a query condition and search in the entire programming file database. By parsing the specific fields in the target vehicle identification number, the manufacturer, model, year, configuration and other information of the target vehicle can be determined, and then the corresponding programming file library can be found based on this information. This programming file library records the correspondence between each electronic control unit of the target vehicle and the programming file.
[0041] Exemplarily, multiple programming file identifiers corresponding to multiple electronic control units are obtained, wherein each electronic control unit corresponds to a programming file identifier. Specifically, the programming file identifier is a code or name used to uniquely identify each programming file. Each electronic control unit has a corresponding programming file identifier. Through this identifier, the corresponding programming file can be accurately found in the programming file library. The electronic control unit of the target vehicle can be connected through a vehicle diagnostic device to read the information of each electronic control unit, including the corresponding programming file identifier. Alternatively, in some vehicle maintenance management systems, after the information of the target vehicle is input, the system can automatically generate a programming file identifier list for each electronic control unit based on the vehicle model and configuration.
[0042] Exemplarily, programming files corresponding to multiple programming file identifiers in a programming file library are determined to obtain multiple programming files. Specifically, after obtaining the programming file identifiers of multiple electronic control units, a search is performed in a previously determined target programming file library, which stores a large number of programming files, each file corresponding to a specific programming file identifier. After determining the multiple programming files corresponding to multiple electronic control units in the target vehicle, these programming files will be used to perform programming operations on the corresponding electronic control units to achieve purposes such as updating, repairing faults or optimizing performance.
[0043] It can be seen that the specific programming file library is determined by the target vehicle identification number to ensure that the programming file fully matches the electronic control unit of the target vehicle. The target vehicle identification number can be used to quickly determine the target programming file library, reducing the time of blindly searching in a large number of programming files. When faced with programming files of many models and versions, the target vehicle identification number can be used to directly locate the file library related to the target vehicle, thereby improving the efficiency of finding programming files.
[0044] S203: Acquire historical programming data of the target vehicle within a preset time period to obtain target historical programming data.
[0045] In this embodiment, historical programming data will be stored in the electronic control unit of the target vehicle. The vehicle diagnostic equipment can directly access the internal memory of the electronic control unit through a specific communication protocol to read the historical programming data of the target vehicle. It can also search for the historical programming data of the target vehicle in the automobile maintenance database through a remote diagnostic platform to obtain the target historical programming data.
[0046] S204: Determine a programming priority corresponding to each electronic control unit in a plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities.
[0047] In this embodiment, the stability value corresponding to each electronic control unit in a plurality of electronic control units is first determined to obtain a plurality of target stability values. Taking the first electronic control unit as an example, the determination of the stability value corresponding to each electronic control unit in a plurality of electronic control units is explained, wherein the first electronic control unit is any one of the plurality of electronic control units.
[0048] Exemplarily, function upgrade frequency data, fault repair frequency data and software update frequency data corresponding to the first electronic control unit are obtained from the target historical programming data.
[0049] Exemplarily, fitting is performed according to the function upgrade frequency data to obtain a function upgrade frequency straight line. Specifically, after determining the function upgrade frequency data, a fitting method is used to fit the function upgrade frequency data. The fitting method may be a linear regression method or a polynomial fitting method. After the fitting is completed, the function upgrade frequency straight line can be obtained. The function upgrade frequency straight line obtained by the fitting method can highlight the changes in the function upgrade frequency concisely and intuitively.
[0050] Exemplarily, the slope corresponding to the function upgrade frequency line is determined to obtain the first slope. Specifically, any two points in the function upgrade frequency line are selected to calculate the slope corresponding to the function upgrade frequency line to obtain the first slope.
[0051] Exemplarily, fitting is performed based on the fault repair frequency data to obtain a fault repair frequency line. Specifically, after determining the fault repair frequency data, a fitting method is used to fit the fault repair frequency data. The fitting method may be a linear regression method or a polynomial fitting method. After the fitting is completed, the fault repair frequency line can be obtained. The fault repair frequency line obtained by the fitting method can highlight the changes in the fault repair frequency in a concise and intuitive manner.
[0052] Exemplarily, the slope corresponding to the fault repair frequency line is determined to obtain the second slope. Specifically, the slope corresponding to the fault repair frequency line is determined to obtain the second slope. Specifically, any two points in the fault repair frequency line are selected to calculate the slope corresponding to the fault repair frequency line to obtain the second slope.
[0053] Exemplarily, fitting is performed based on the software update frequency data to obtain a software update frequency line. Specifically, after determining the software update frequency data, a fitting method is used to fit the software update frequency data. The fitting method may be a linear regression method or a polynomial fitting method. After the fitting is completed, a software update frequency line can be obtained. The software update frequency line obtained by the fitting method can highlight the changes in the software update frequency in a concise and intuitive manner.
[0054] Exemplarily, the slope corresponding to the software update frequency line is determined to obtain the third slope. Specifically, the slope corresponding to the software update frequency line is determined to obtain the third slope. Specifically, by selecting any two points in the software update frequency line, the slope corresponding to the software update frequency line can be calculated to obtain the third slope.
[0055] Exemplarily, the target slope is determined based on the first slope, the second slope, and the third slope. Specifically, the first weight corresponding to the first slope, the second weight corresponding to the second slope, and the third weight corresponding to the third slope are first determined. This can be a preset mapping relationship between the slope and the weight. Based on the mapping relationship, the first reference weight corresponding to the first slope, the second reference weight corresponding to the second slope, and the third reference weight corresponding to the third slope can be determined. Then, the first reference weight, the second reference weight, and the third reference weight are adjusted using a proportional adjustment method so that the sum of the three adjusted weights is 1, thereby obtaining the first weight, the second weight, and the third weight, wherein the sum of the first weight, the second weight, and the third weight is 1.
[0056] Exemplarily, the reference slope is obtained by performing calculation based on the first weight, the second weight, the third weight, the first slope, the second slope, and the third slope. Specifically, the target adjustment coefficient is calculated according to the following formula:
[0057] F=a×α+b×β+c×ε
[0058] Among them, F is the reference slope, a is the first slope, b is the second slope, c is the third slope, α is the first weight, β is the second weight, and ε is the third weight.
[0059] Exemplarily, the usage time of the first electronic control unit is obtained to obtain the target usage time. Specifically, when the electronic control unit is just put into use, it may be unstable because it is in the running-in stage with other components of the vehicle. After a period of use and optimization, the electronic control unit enters the mid-term use, at which time its stability is usually high. At this stage, the electronic control unit has been fully run-in with other components of the vehicle, and the software has been updated and optimized many times. Most potential problems have been solved. When the electronic control unit enters the late stage of use, its stability will be significantly reduced. At this stage, the hardware of the electronic control unit may have been seriously aged, and the software may not be able to adapt to the changing vehicle operating environment and technical requirements, so it is necessary to consider the impact of the usage time of the electronic control unit on the stability of the electronic control unit.
[0060] Exemplarily, determining the first optimization factor corresponding to the target usage time may specifically be to pre-store a mapping relationship between preset usage time and optimization factor, and determining the first optimization factor corresponding to the target usage time based on the mapping relationship.
[0061] Exemplarily, the vehicle system corresponding to the first electronic control unit is determined to obtain the target vehicle system, the voltage fluctuation rate of the target vehicle system is acquired, and the target voltage fluctuation rate is obtained. Specifically, a high voltage fluctuation rate will cause various electronic components inside the electronic control unit to be subjected to greater voltage stress, and frequent voltage fluctuations may cause the electronic control unit to malfunction, thereby affecting the stability of the electronic control unit. Therefore, it is necessary to consider the impact of the voltage fluctuation rate of the vehicle system corresponding to the first electronic control unit on the stability of the electronic control unit.
[0062] Exemplarily, the second optimization factor corresponding to the target voltage fluctuation rate is determined. Specifically, a mapping relationship between a preset voltage fluctuation rate and an optimization factor may be pre-stored, and the second optimization factor corresponding to the target voltage fluctuation rate is determined based on the mapping relationship.
[0063] Exemplarily, the reference slope is optimized according to the first optimization factor and the second optimization factor to obtain the target slope. Specifically, the reference slope can be optimized according to the first optimization factor and the second optimization factor. The specific calculation formula is as follows:
[0064] Target slope = reference slope × (1 + first optimization factor) × (1 + second optimization factor);
[0065] The target slope can be obtained according to the above formula.
[0066] Exemplarily, the stability value corresponding to the target slope is determined to obtain the target stability value. Specifically, a reference stability value corresponding to the target slope is first determined. The mapping relationship between a preset slope and a stability value may be pre-stored, and the reference stability value corresponding to the target slope is determined based on the mapping relationship.
[0067] Exemplarily, historical stability values within a preset time period are obtained to obtain k historical stability values, where k is a positive integer, and each historical stability value corresponds to a stability value detection moment. Specifically, the historical stability value can be the stability value detection data recorded during a similar experiment or monitoring process within the previous preset time period.
[0068] Exemplarily, fitting is performed based on k historical stability values and corresponding stability value detection moments to obtain a target fitting straight line, wherein the horizontal axis of the target fitting straight line is time and the vertical axis is the historical stability value. Specifically, k historical stability values and corresponding stability value detection moments are used as data points for fitting. Fitting can be performed using a linear regression method or a polynomial fitting method. The purpose of fitting is to find a straight line that can better describe the trend of stability value changes over time. The horizontal axis of the obtained target fitting straight line is time, and the vertical axis is the historical error value.
[0069] Exemplarily, the slope corresponding to the target fitting line is obtained to obtain the fourth slope. Specifically, by arbitrarily selecting two points on the target fitting line, the slope corresponding to the target fitting line can be calculated to obtain the fourth slope.
[0070] Exemplarily, the target fine-tuning parameter corresponding to the fourth slope is determined. Specifically, a mapping relationship between a preset slope and a fine-tuning parameter may be pre-stored, and the target fine-tuning parameter corresponding to the fourth slope is determined based on the mapping relationship.
[0071] Exemplarily, the reference stability value is fine-tuned based on the target fine-tuning parameter to obtain the target stability value. Specifically, the reference stability value can be optimized according to the target fine-tuning parameter. The specific calculation formula is as follows:
[0072] Target stability value = reference stability value × (1 + target fine-tuning parameter);
[0073] The target stability value can be obtained according to the above formula.
[0074] It can be seen that by determining the reference stability value corresponding to the target slope, the influence of multiple factors such as the function upgrade frequency, fault repair frequency, software update frequency, usage time, and voltage fluctuation rate of the electronic control unit are introduced, so that the evaluation of the stability value is not only based on a single indicator, but a combination of multiple factors related to the performance and status of the electronic control unit, thereby more comprehensively and accurately reflecting the actual stability of the electronic control unit. The reference stability value is fine-tuned based on the target fine-tuning parameter to obtain the target stability value, realizing the dynamic adjustment of the stability of the electronic control unit. This dynamic adjustment can timely reflect the changes in the status of the electronic control unit, making the stability value more in line with the actual situation.
[0075] Exemplarily, the programming priorities of multiple electronic control units are determined based on multiple target stability values to obtain multiple programming priorities, wherein the smaller the stability value of the electronic control unit, the higher the programming priority of the electronic control unit. Specifically, the stability value of the first electronic unit is determined according to the above paradigm, and the stability value corresponding to each electronic control unit in the multiple electronic control units can also be determined in the same way to obtain multiple target stability values, and then the multiple target stability values are arranged from small to large according to their sizes, and then the programming priorities of the multiple electronic control units are determined in the order of arrangement to obtain multiple programming priorities.
[0076] It can be seen that by obtaining function upgrade frequency data, fault repair frequency data and software update frequency data, the operating status and requirements of the electronic control unit are reflected from different angles. These data are fitted to obtain the corresponding straight lines and determine the slopes. Then, the target slope is determined based on the three slopes. This process can transform complex multi-dimensional data into a representative value that comprehensively reflects the overall trend of the electronic control unit in terms of function upgrades, fault repairs and software updates. The stability value is determined based on the target slope. This stability value can be used as an important indicator to measure the stability and programming requirements of the electronic control unit. The smaller the stability value, the more unstable the state of the electronic control unit, and the higher the priority for programming.
[0077] S205: Determine a programming order of a plurality of electronic control units based on a plurality of programming priorities.
[0078] In this embodiment, the programming order of multiple electronic control units can be obtained by arranging the electronic control units with higher priority in the front among multiple programming priorities, and then arranging the electronic control units with lower priority in turn behind the electronic control units with higher priority.
[0079] S206: performing remote online programming operations on the multiple electronic control units in sequence based on the programming sequence and the multiple programming files to obtain multiple updated electronic control units.
[0080] In this embodiment, exemplarily, a reference electronic control unit among multiple electronic control units that currently needs to be remotely programmed is determined based on the programming sequence. Specifically, the electronic control units are remotely programmed in sequence according to the programming sequence, and the online programming operation is performed on only one electronic control unit at a time, and the electronic control unit that currently needs to be remotely programmed is used as the reference electronic control unit.
[0081] Exemplarily, a programming file corresponding to a reference electronic control unit is obtained from a plurality of programming files to obtain at least one programming file. Specifically, each electronic control unit has its own specific programming file, which is designed for the purpose of achieving functional upgrades, fault repairs or software updates of the electronic control unit. The programming file is usually provided by the vehicle manufacturer or a professional software developer, and is strictly tested and verified to ensure compatibility with the specific electronic control unit and normal operation. Once the reference electronic control unit is determined, it is necessary to find the programming file corresponding to the reference electronic control unit from the plurality of programming files, which can be achieved by querying the programming file database, matching according to the model and version information of the reference electronic control unit, etc.
[0082] Exemplarily, at least one programming file is classified to obtain at least one programming file block. Specifically, the purpose of classifying the at least one programming file is to better organize and manage programming files and improve the efficiency of downloading and programming. The programming files can be classified according to factors such as function, size, and importance. After classification, at least one programming file block is obtained, each of which has a specific function and purpose and can be downloaded and processed separately.
[0083] Exemplarily, at least one programming file block is downloaded to the reference electronic control unit through at least one download channel to obtain an electronic control unit after the reference electronic control unit is updated, wherein each download channel corresponds to a programming file block, specifically, each download channel corresponds to a programming file block, so that multiple channels can be used for downloading at the same time, thereby improving download speed and efficiency. It should be explained that at least one download channel includes n download channels, wherein n is an integer greater than 1, firstly, m download channels between the vehicle diagnostic device and the reference electronic control unit are determined, wherein m is an integer greater than n, then attribute information of each download channel in the m download channels is obtained, and then channel evaluation is performed on each download channel in the m download channels according to the m attribute information to obtain m channel evaluation values, and finally, a target channel evaluation value greater than a preset threshold value is selected from the m channel evaluation values, and the download channel corresponding to the target channel evaluation value is obtained to obtain n download channels. Determine multiple download channels between the vehicle diagnostic device and the reference electronic control unit, which provides more path options for downloading programming file blocks. Compared with a single channel, multiple channels can transmit data simultaneously, which greatly improves the download speed. By evaluating the attribute information of each download channel, it is possible to screen out channels with better quality, which have higher data transmission rates, lower error rates and more stable connections, thereby improving the overall download efficiency. For the selected download channel, corresponding parameter configuration is required, which includes setting network connection parameters, ensuring the compatibility of communication protocols, etc. If it is a wireless connection, it may also be necessary to enter a password, select a network frequency band, etc. Determine the correspondence between each download channel and a programming file block. This can be allocated according to factors such as the size, importance, and download priority of the programming file block. For example, larger file blocks can be allocated to download channels with faster transmission speeds, and critical file blocks can be allocated to more stable channels. Each download channel starts the download task at the same time and starts downloading the corresponding programming file block to the reference electronic control unit. During the download process, the download progress and status of each channel are monitored in real time to ensure that the download process proceeds smoothly. During the download process, various errors may occur, such as network interruption, file corruption, insufficient storage, etc. These errors need to be detected and handled in a timely manner to ensure the stability and reliability of the download process. After all programming file blocks are downloaded, each file block needs to be verified to ensure the integrity and correctness of the file.
[0084] It can be seen that determining the reference electronic control unit based on the programming sequence gives the programming work a clear goal and sequence, avoiding the confusion and inefficiency that may be caused by blindly selecting or performing programming operations in multiple electronic control units at the same time, and concentrating resources and energy on the units that most need programming, thereby improving the overall programming efficiency. Selecting the reference electronic control unit, determining the reference electronic control unit and obtaining its corresponding programming file ensures the pertinence of the programming operation, and only programming related to the reference electronic control unit is performed, reducing the risk of incorrect programming.
[0085] In summary, the implementation of the present invention has the following beneficial effects:
[0086] It can be seen that the programming method of the electronic control unit described in the embodiment of the present invention is applied to vehicle diagnostic equipment, firstly, the electronic control unit that needs to be programmed in the target vehicle is obtained to obtain multiple electronic control units, and then the programming files corresponding to the multiple electronic control units are determined to obtain multiple programming files, each electronic control unit corresponds to one programming file, and then the historical programming data of the target vehicle within a preset time period is obtained to obtain the target historical programming data, and then the programming priority corresponding to each electronic control unit in the multiple electronic control units is determined based on the target historical programming data to obtain multiple programming priorities, and the programming order of the multiple electronic control units is determined based on the multiple programming priorities, and finally, based on the programming order and the multiple programming files, remote online programming operations are performed on the multiple electronic control units in turn to obtain multiple updated electronic control units, thereby improving the efficiency of remote online programming of the electronic control units.
[0087] See also Figure 3 , Figure 3 It is a structural schematic diagram of a programming device for an electronic control unit provided in an embodiment of the present application, which is applied to vehicle diagnostic equipment. The programming device 300 for the electronic control unit includes: an acquisition unit 301 and a processing unit 302;
[0088] An acquisition unit 301 is used to acquire an electronic control unit in a target vehicle that needs to be programmed, and obtain a plurality of electronic control units;
[0089] The processing unit 302 is used to determine programming files corresponding to a plurality of electronic control units, and obtain a plurality of programming files; each electronic control unit corresponds to a programming file;
[0090] An acquisition unit 301 is used to acquire historical programming data of a target vehicle within a preset time period to obtain target historical programming data;
[0091] The processing unit 302 is used to determine the programming priority corresponding to each electronic control unit in the plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities;
[0092] determining a programming order for the plurality of electronic control units based on a plurality of programming priorities;
[0093] Based on the programming sequence and multiple programming files, remote online programming operations are performed on multiple electronic control units in sequence to obtain multiple updated electronic control units.
[0094] In some possible implementations, in determining the programming priority corresponding to each of the plurality of electronic control units based on the target historical programming data to obtain the plurality of programming priorities, the processing unit 302 is specifically configured to:
[0095] According to the determination method in the following steps S1-S4, the stability value corresponding to each electronic control unit in the multiple electronic control units is determined to obtain multiple target stability values, which is specifically the following steps:
[0096] S1. Acquire function upgrade frequency data, fault repair frequency data and software update frequency data corresponding to a first electronic control unit from target historical programming data; the first electronic control unit is any one of a plurality of electronic control units;
[0097] S2. Fitting is performed according to the function upgrade frequency data to obtain a function upgrade frequency straight line;
[0098] S3, determining a slope corresponding to a function upgrade frequency straight line to obtain a first slope;
[0099] S4. Fitting is performed according to the fault repair frequency data to obtain a fault repair frequency straight line;
[0100] S5. Determine the slope corresponding to the fault repair frequency straight line to obtain a second slope;
[0101] S6. Fitting is performed according to the software update frequency data to obtain a software update frequency straight line;
[0102] S7, determining a slope corresponding to the software update frequency straight line to obtain a third slope;
[0103] S8, determining a target slope based on the first slope, the second slope, and the third slope;
[0104] S9, determining a stability value corresponding to the target slope to obtain a target stability value;
[0105] The programming priorities of the multiple electronic control units are determined based on the multiple target stability values to obtain multiple programming priorities; the smaller the stability value of the electronic control unit is, the higher the programming priority of the electronic control unit is.
[0106] In some possible implementations, in determining the target slope based on the first slope, the second slope, and the third slope, the processing unit 302 is specifically configured to:
[0107] Determine a first weight corresponding to the first slope, a second weight corresponding to the second slope, and a third weight corresponding to the third slope;
[0108] Calculating based on the first weight, the second weight, the third weight, the first slope, the second slope, and the third slope to obtain a reference slope;
[0109] Obtaining the usage time of the first electronic control unit to obtain a target usage time;
[0110] Determine a first optimization factor corresponding to the target usage duration;
[0111] Determine a vehicle system corresponding to the first electronic control unit to obtain a target vehicle system;
[0112] Acquire the voltage fluctuation rate of the target vehicle system to obtain a target voltage fluctuation rate;
[0113] Determine a second optimization factor corresponding to the target voltage fluctuation rate;
[0114] The reference slope is optimized according to the first optimization factor and the second optimization factor to obtain a target slope.
[0115] In some possible implementations, in determining the stability value corresponding to the target slope and obtaining the target stability value, the processing unit 302 is specifically configured to:
[0116] Determine a reference stability value corresponding to a target slope;
[0117] Obtain historical stability values within a preset time period to obtain k historical stability values; k is a positive integer, and each historical stability value corresponds to a stability value detection moment;
[0118] According to k historical stability values and corresponding stability value detection moments, fitting is performed to obtain a target fitting straight line; the horizontal axis of the target fitting straight line is time and the vertical axis is the historical stability value;
[0119] Obtaining the slope corresponding to the target fitting straight line to obtain a fourth slope;
[0120] determining a target fine-tuning parameter corresponding to the fourth slope;
[0121] The reference stability value is fine-tuned based on the target fine-tuning parameter to obtain a target stability value.
[0122] In some possible implementations, in performing remote online programming operations on multiple electronic control units in sequence based on a programming sequence and multiple programming files to obtain multiple updated electronic control units, the processing unit 302 is specifically configured to:
[0123] determining, based on the programming sequence, a reference electronic control unit among the plurality of electronic control units that currently requires a remote online programming operation;
[0124] Acquire a programming file corresponding to a reference electronic control unit from a plurality of programming files to obtain at least one programming file;
[0125] Classifying at least one programming file to obtain at least one programming file block;
[0126] At least one programming file block is downloaded to a reference electronic control unit through at least one download channel to obtain an electronic control unit updated from the reference electronic control unit; each download channel corresponds to a programming file block.
[0127] In some possible implementations, the at least one download channel includes n download channels; n is an integer greater than 1; the processing unit 302 is specifically configured to:
[0128] Determine m download channels between the vehicle diagnostic device and the reference electronic control unit; m is an integer greater than n;
[0129] Obtaining attribute information of each of the m download channels, and obtaining m attribute information;
[0130] Perform channel evaluation on each of the m download channels according to the m attribute information to obtain m channel evaluation values;
[0131] A target channel evaluation value greater than a preset threshold value is selected from the m channel evaluation values, and a download channel corresponding to the target channel evaluation value is obtained to obtain n download channels.
[0132] In some possible implementations, in determining the programming files corresponding to the multiple electronic control units and obtaining the multiple programming files, the processing unit 302 is specifically configured to:
[0133] Obtaining a target vehicle identification number of a target vehicle;
[0134] Determine the programming file library corresponding to the target vehicle based on the target vehicle identification number to obtain the target programming file library; the target programming file library is used to characterize the corresponding relationship between the electronic control unit and the programming file;
[0135] Acquire multiple programming file identifiers corresponding to multiple electronic control units; each electronic control unit corresponds to a programming file identifier;
[0136] Determine programming files corresponding to multiple programming file identifiers in a programming file library to obtain multiple programming files.
[0137] See also Figure 4 , Figure 4 Schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. Figure 4 As shown, the electronic device 400 includes a transceiver 401, a processor 402 and a memory 403. They are connected via a bus 404. The memory 403 is used to store computer programs and data, and the transceiver 401 can transmit the data stored in the memory 403 to the processor 402. The above program includes instructions for executing the following steps:
[0138] Acquire an electronic control unit that needs to be programmed in a target vehicle, and obtain a plurality of electronic control units;
[0139] Determine programming files corresponding to a plurality of electronic control units to obtain a plurality of programming files; each electronic control unit corresponds to a programming file;
[0140] Acquire historical programming data of a target vehicle within a preset time period to obtain target historical programming data;
[0141] Determine a programming priority corresponding to each electronic control unit in a plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities;
[0142] determining a programming order for the plurality of electronic control units based on a plurality of programming priorities;
[0143] Based on the programming sequence and multiple programming files, remote online programming operations are performed on multiple electronic control units in sequence to obtain multiple updated electronic control units.
[0144] In some possible implementations, in terms of determining the programming priority corresponding to each of the plurality of electronic control units based on the target historical programming data to obtain the plurality of programming priorities, the program includes instructions for executing the following steps:
[0145] According to the determination method in the following steps S1-S4, the stability value corresponding to each electronic control unit in the multiple electronic control units is determined to obtain multiple target stability values, which is specifically the following steps:
[0146] S1. Acquire function upgrade frequency data, fault repair frequency data and software update frequency data corresponding to a first electronic control unit from target historical programming data; the first electronic control unit is any one of a plurality of electronic control units;
[0147] S2. Fitting is performed according to the function upgrade frequency data to obtain a function upgrade frequency straight line;
[0148] S3, determining a slope corresponding to a function upgrade frequency straight line to obtain a first slope;
[0149] S4. Fitting is performed according to the fault repair frequency data to obtain a fault repair frequency straight line;
[0150] S5. Determine the slope corresponding to the fault repair frequency straight line to obtain a second slope;
[0151] S6. Fitting is performed according to the software update frequency data to obtain a software update frequency straight line;
[0152] S7, determining a slope corresponding to the software update frequency straight line to obtain a third slope;
[0153] S8, determining a target slope based on the first slope, the second slope, and the third slope;
[0154] S9, determining a stability value corresponding to the target slope to obtain a target stability value;
[0155] The programming priorities of the multiple electronic control units are determined based on the multiple target stability values to obtain multiple programming priorities; the smaller the stability value of the electronic control unit is, the higher the programming priority of the electronic control unit is.
[0156] In some possible implementations, in terms of determining the target slope based on the first slope, the second slope, and the third slope, the program includes instructions for performing the following steps:
[0157] Determine a first weight corresponding to the first slope, a second weight corresponding to the second slope, and a third weight corresponding to the third slope;
[0158] Calculating based on the first weight, the second weight, the third weight, the first slope, the second slope, and the third slope to obtain a reference slope;
[0159] Obtaining the usage time of the first electronic control unit to obtain a target usage time;
[0160] Determine a first optimization factor corresponding to the target usage duration;
[0161] Determine a vehicle system corresponding to the first electronic control unit to obtain a target vehicle system;
[0162] Acquire the voltage fluctuation rate of the target vehicle system to obtain a target voltage fluctuation rate;
[0163] Determine a second optimization factor corresponding to the target voltage fluctuation rate;
[0164] The reference slope is optimized according to the first optimization factor and the second optimization factor to obtain a target slope.
[0165] In some possible implementations, in terms of determining the stability value corresponding to the target slope and obtaining the target stability value, the program includes instructions for executing the following steps:
[0166] Determine a reference stability value corresponding to a target slope;
[0167] Obtain historical stability values within a preset time period to obtain k historical stability values; k is a positive integer, and each historical stability value corresponds to a stability value detection moment;
[0168] According to k historical stability values and corresponding stability value detection moments, fitting is performed to obtain a target fitting straight line; the horizontal axis of the target fitting straight line is time and the vertical axis is the historical stability value;
[0169] Obtaining the slope corresponding to the target fitting straight line to obtain a fourth slope;
[0170] determining a target fine-tuning parameter corresponding to the fourth slope;
[0171] The reference stability value is fine-tuned based on the target fine-tuning parameter to obtain a target stability value.
[0172] In some possible implementations, in terms of performing remote online programming operations on multiple electronic control units in sequence based on a programming sequence and multiple programming files to obtain multiple updated electronic control units, the above program includes instructions for executing the following steps:
[0173] determining, based on the programming sequence, a reference electronic control unit among the plurality of electronic control units that currently requires a remote online programming operation;
[0174] Acquire a programming file corresponding to a reference electronic control unit from a plurality of programming files to obtain at least one programming file;
[0175] Classifying at least one programming file to obtain at least one programming file block;
[0176] At least one programming file block is downloaded to a reference electronic control unit through at least one download channel to obtain an electronic control unit updated from the reference electronic control unit; each download channel corresponds to a programming file block.
[0177] In some possible implementations, the at least one download channel includes n download channels; n is an integer greater than 1; and the program includes instructions for executing the following steps:
[0178] Determine m download channels between the vehicle diagnostic device and the reference electronic control unit; m is an integer greater than n;
[0179] Obtaining attribute information of each of the m download channels, and obtaining m attribute information;
[0180] Perform channel evaluation on each of the m download channels according to the m attribute information to obtain m channel evaluation values;
[0181] A target channel evaluation value greater than a preset threshold value is selected from the m channel evaluation values, and a download channel corresponding to the target channel evaluation value is obtained to obtain n download channels.
[0182] In some possible implementations, in terms of determining programming files corresponding to a plurality of electronic control units and obtaining a plurality of programming files, the above program includes instructions for executing the following steps:
[0183] Obtaining a target vehicle identification number of a target vehicle;
[0184] Determine the programming file library corresponding to the target vehicle based on the target vehicle identification number to obtain the target programming file library; the target programming file library is used to characterize the corresponding relationship between the electronic control unit and the programming file;
[0185] Acquire multiple programming file identifiers corresponding to multiple electronic control units; each electronic control unit corresponds to a programming file identifier;
[0186] Determine programming files corresponding to multiple programming file identifiers in a programming file library to obtain multiple programming files.
[0187] It should be understood that the electronic devices in this application may include smart phones (such as Android phones, iOS phones, Windows Phone phones, etc.), tablet computers, PDAs, laptops, mobile Internet devices MID (Mobile Internet Devices, MID for short) or wearable devices or servers, edge computing nodes, etc. The above electronic devices are only examples, not exhaustive, and include but are not limited to the above electronic devices.
[0188] The embodiment of the present application also provides a computer-readable storage medium, which stores a computer program. The computer program is executed by a processor to implement part or all of the steps of any electronic control unit programming method described in the above method embodiment.
[0189] The embodiment of the present application also provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute part or all of the steps of any electronic control unit programming method recorded in the above method embodiment.
[0190] It should be noted that, for the above-mentioned various method implementations, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the implementations described in the specification are all optional implementations, and the actions and modules involved are not necessarily required by this application.
[0191] In the above-mentioned embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0192] In the several embodiments provided in this application, it should be understood that the disclosed device can be implemented in other ways. For example, the device implementation described above is only schematic, such as the division of units, which is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of devices or units can be electrical or other forms.
[0193] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0194] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit may be implemented in the form of hardware or in the form of a software program module.
[0195] If the integrated unit is implemented in the form of a software program module and sold or used as an independent product, it can be stored in a computer-readable memory. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or all or part of the technical solution, can be embodied in the form of a software product, which is stored in a memory and includes several instructions for a computer device (which can be a personal computer, server or network device, etc.) to execute all or part of the steps of each implementation method of the present application. The aforementioned memory includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk and other media that can store program codes.
[0196] A person skilled in the art can understand that all or part of the steps in the various methods of the above-mentioned embodiments can be completed by instructing related hardware through a program, and the program can be stored in a computer-readable memory, and the memory can include: a flash drive, a read-only memory (English: Read-Only Memory, abbreviated as: ROM), a random access memory (English: Random Access Memory, abbreviated as: RAM), a magnetic disk or an optical disk, etc.
[0197] The above is a detailed introduction to the implementation methods of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above implementation methods is only used to help understand the method and core idea of the present application. At the same time, for general technical personnel in this field, according to the idea of the present application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.
Claims
1. A method for programming an electronic control unit, characterized in that: Used in vehicle diagnostic equipment, including: Acquire an electronic control unit that needs to be programmed in a target vehicle, and obtain a plurality of electronic control units; Determine programming files corresponding to the multiple electronic control units to obtain multiple programming files; each electronic control unit corresponds to one programming file; Acquire historical programming data of the target vehicle within a preset time period to obtain target historical programming data; Determine a programming priority corresponding to each of the plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities; determining a programming order for the plurality of electronic control units based on the plurality of programming priorities; Based on the programming sequence and the multiple programming files, remote online programming operations are sequentially performed on the multiple electronic control units to obtain updated multiple electronic control units.
2. The method according to claim 1, characterized in that The determining the programming priority corresponding to each of the plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities includes: According to the determination method in the following steps S1-S4, the stability value corresponding to each electronic control unit in the multiple electronic control units is determined to obtain multiple target stability values, which is specifically the following steps: S1, acquiring function upgrade frequency data, fault repair frequency data and software update frequency data corresponding to a first electronic control unit from the target historical programming data; the first electronic control unit is any one of the multiple electronic control units; S2. fitting the function upgrade frequency data to obtain a function upgrade frequency straight line; S3, determining a slope corresponding to the function upgrade frequency straight line to obtain a first slope; S4. Perform fitting according to the fault repair frequency data to obtain a fault repair frequency straight line; S5. Determine a slope corresponding to the fault repair frequency straight line to obtain a second slope; S6. Perform fitting according to the software update frequency data to obtain a software update frequency straight line; S7, determining a slope corresponding to the software update frequency straight line to obtain a third slope; S8, determining a target slope based on the first slope, the second slope, and the third slope; S9, determining a stability value corresponding to the target slope to obtain a target stability value; The programming priorities of the multiple electronic control units are determined based on the multiple target stability values to obtain multiple programming priorities; the smaller the stability value of the electronic control unit, the higher the programming priority of the electronic control unit.
3. The method according to claim 2, characterized in that The determining a target slope based on the first slope, the second slope, and the third slope comprises: Determine a first weight corresponding to the first slope, a second weight corresponding to the second slope, and a third weight corresponding to the third slope; Performing calculation based on the first weight, the second weight, the third weight, the first slope, the second slope, and the third slope to obtain a reference slope; Acquire the usage time of the first electronic control unit to obtain a target usage time; Determine a first optimization factor corresponding to the target usage time; Determine a vehicle system corresponding to the first electronic control unit to obtain a target vehicle system; Acquiring a voltage fluctuation rate of the target vehicle system to obtain a target voltage fluctuation rate; Determining a second optimization factor corresponding to the target voltage fluctuation rate; The reference slope is optimized according to the first optimization factor and the second optimization factor to obtain the target slope.
4. The method according to claim 2, characterized in that The step of determining the stability value corresponding to the target slope to obtain the target stability value includes: Determining a reference stability value corresponding to the target slope; Obtain historical stability values within a preset time period to obtain k historical stability values; k is a positive integer, and each historical stability value corresponds to a stability value detection moment; Fitting is performed according to the k historical stability values and the corresponding stability value detection moments to obtain a target fitting straight line; the horizontal axis of the target fitting straight line is time and the vertical axis is the historical stability value; Obtaining the slope corresponding to the target fitting straight line to obtain a fourth slope; determining a target fine-tuning parameter corresponding to the fourth slope; The reference stability value is fine-tuned based on the target fine-tuning parameter to obtain the target stability value.
5. The method according to any one of claims 1 to 4, characterized in that: The method of sequentially performing remote online programming operations on the multiple electronic control units based on the programming sequence and the multiple programming files to obtain the updated multiple electronic control units includes: Determining, based on the programming sequence, a reference electronic control unit among the plurality of electronic control units that currently requires a remote online programming operation; Acquire a programming file corresponding to the reference electronic control unit from the plurality of programming files to obtain at least one programming file; Classifying the at least one programming file to obtain at least one programming file block; The at least one programming file block is downloaded to the reference electronic control unit through at least one download channel to obtain an electronic control unit updated from the reference electronic control unit; each download channel corresponds to a programming file block.
6. The method according to claim 5, characterized in that The at least one download channel includes n download channels; n is an integer greater than 1; the method further comprises: Determining m download channels between the vehicle diagnostic device and the reference electronic control unit; m is an integer greater than n; Acquire the attribute information of each download channel in the m download channels to obtain m attribute information; Performing channel evaluation on each of the m download channels according to the m attribute information to obtain m channel evaluation values; A target channel evaluation value greater than a preset threshold value is selected from the m channel evaluation values, and a download channel corresponding to the target channel evaluation value is acquired to obtain the n download channels.
7. The method according to any one of claims 1 to 4, characterized in that: The step of determining programming files corresponding to the plurality of electronic control units to obtain a plurality of programming files comprises: Obtaining a target vehicle identification number of the target vehicle; Determine the programming file library corresponding to the target vehicle based on the target vehicle identification number to obtain a target programming file library; the target programming file library is used to characterize the corresponding relationship between the electronic control unit and the programming file; Acquire a plurality of programming file identifiers corresponding to the plurality of electronic control units; each electronic control unit corresponds to a programming file identifier; Determine programming files corresponding to the multiple programming file identifiers in the programming file library to obtain the multiple programming files.
8. A programming device for an electronic control unit, characterized in that: Applied to vehicle diagnostic equipment, the device comprises: an acquisition unit and a processing unit; The acquisition unit is used to acquire the electronic control units that need to be programmed in the target vehicle to obtain multiple electronic control units; The processing unit is used to determine the programming files corresponding to the multiple electronic control units to obtain multiple programming files; each electronic control unit corresponds to a programming file; The acquisition unit is used to acquire the historical programming data of the target vehicle within a preset time period to obtain the target historical programming data; The processing unit is used to determine the programming priority corresponding to each electronic control unit in the plurality of electronic control units based on the target historical programming data to obtain a plurality of programming priorities; determining a programming order for the plurality of electronic control units based on the plurality of programming priorities; Based on the programming sequence and the multiple programming files, remote online programming operations are sequentially performed on the multiple electronic control units to obtain updated multiple electronic control units.
9. A vehicle diagnostic device, characterized in that: The method comprises a processor, a memory, a communication interface and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the processor, and the one or more programs include instructions for executing the steps in the method described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is executed by a processor to implement the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Over-the-air (OTA) mobility services platform
CN110618671A
Automobile electronic control unit parallel flashing system and method
CN115904437A
ECU (Electronic Control Unit) upgrading method, device, equipment and medium
CN115934130A
Program rewriting device and program rewriting method
JP2016188022A
Cited By
Remote diagnosis method and device, electronic equipment and storage medium
CN120469394A