A method, device, vehicle fault detector, and medium for diagnosing automotive faults.

By acquiring vehicle model and mileage, utilizing historical databases and quantity ratios to prioritize the detection of high-probability faults, and combining this with 3D model annotation, the problem of time-consuming ECU detection in existing technologies has been solved, achieving efficient and accurate vehicle fault diagnosis.

CN116909258BActive Publication Date: 2026-01-30AUTOPHIX TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311085727.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-25
Publication Date
2026-01-30
Estimated Expiration
2043-08-25

AI Technical Summary

Technical Problem

In existing automotive fault diagnosis methods, the testing process for electronic control units (ECUs) is time-consuming, resulting in low testing efficiency.

Method used

By obtaining the model and mileage of the vehicle to be tested, the target mileage range is determined. Target vehicles with similar conditions are searched from the historical database. Based on the proportion of fault codes and historical information of the target vehicles, ECUs with high probability of failure are prioritized for testing, and the fault location is marked using a 3D model.

Benefits of technology

It improves the efficiency and accuracy of vehicle fault detection, allowing users to intuitively see the location of the fault and reducing the time required to sequentially test each ECU.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116909258B_ABST
    Figure CN116909258B_ABST
Patent Text Reader

Abstract

This application relates to a method, apparatus, and vehicle fault detector and medium for diagnosing automotive faults. It pertains to the field of automotive testing. The method includes obtaining the model and mileage of the vehicle to be tested; determining a target mileage interval from at least one preset mileage interval; searching a historical database for the target vehicle and its first fault code based on the model and target mileage interval; determining the proportion of each first fault code based on the number of target vehicles and the frequency of each first fault code; if a target first fault code exists, testing the ECU corresponding to the target first fault code in the vehicle to be tested; obtaining the test result; and outputting the test result. This application improves the efficiency of automotive fault detection.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of vehicle inspection, and in particular to a method, apparatus, vehicle fault detection instrument and medium for vehicle fault diagnosis. Background Technology

[0002] With the development of the automotive industry, the structure of automobiles has become increasingly complex. The application of various electronic units has led to a higher degree of automation in automobiles, making it more difficult to troubleshoot automobile faults. As a result, automobile fault diagnosis devices are being used more and more widely.

[0003] Currently, each electronic control unit (ECU) has a corresponding fault code. When performing vehicle fault diagnosis, the vehicle fault diagnosis equipment usually tests each ECU in turn during maintenance and repair. Therefore, the testing process takes a long time to find out the vehicle's fault, resulting in low testing efficiency. Summary of the Invention

[0004] To improve the efficiency of vehicle fault detection, this application provides a vehicle fault diagnosis method, device, vehicle fault detector, and storage medium.

[0005] Firstly, this application provides a method for diagnosing automotive faults, employing the following technical solution:

[0006] A method for diagnosing automotive faults, comprising:

[0007] Obtain the model and mileage of the vehicle to be tested;

[0008] Determine the target mileage range containing the driving mileage from at least one preset mileage range;

[0009] Based on the model number and the target mileage range, the target vehicle and the first fault code of the target vehicle are searched from the historical database. The model number and target mileage range of the target vehicle are the same as those of the vehicle to be tested.

[0010] The percentage of each first fault code is determined based on the number of target vehicles and the number of times each first fault code appears;

[0011] If a target first fault code exists, the ECU corresponding to the target first fault code in the vehicle to be tested is tested to obtain the test result. The target first fault code is the first fault code whose quantity reaches a preset percentage.

[0012] Output the detection results.

[0013] By adopting the above technical solution, the model and mileage of the vehicle to be tested are obtained, and the target mileage range is determined based on the mileage. This allows for the search of target vehicles with similar vehicle conditions from the historical database. Testing the vehicle to be tested based on the fault codes that have appeared in target vehicles with similar conditions is faster and more accurate. Each target vehicle corresponds to a first fault code that has appeared. Therefore, based on the number of target vehicles and the frequency of each first fault code, the proportion of each first fault code is determined. Using the proportion to represent the probability of each first fault code appearing is more accurate. If the proportion of first fault codes reaches a preset percentage, it indicates that the first fault code has appeared frequently and is highly likely to appear in the vehicle to be tested. Therefore, if a target first fault code that reaches the preset percentage exists, the ECU corresponding to the target first fault code on the vehicle to be tested is tested. This is more efficient and accurate than testing each ECU on the vehicle to be tested sequentially.

[0014] In another possible implementation, the detection of the ECU in the vehicle to be tested corresponding to the target first fault code includes:

[0015] Obtain the historical inspection information and current time of the vehicle to be inspected. The historical inspection information includes the historical fault codes of the vehicle to be inspected and the inspection time corresponding to each historical fault code.

[0016] Based on the historical detection time and the current time, the detection interval for each historical fault code is determined;

[0017] Determine whether the detection interval for each historical fault code has reached the corresponding preset interval.

[0018] If there are historical fault codes whose detection interval duration has not reached the preset interval duration, the historical fault codes that have not reached the preset interval duration are deleted, and a second fault code is obtained.

[0019] Based on the first fault code, the second fault code, and the deleted historical fault codes, a target first fault code is determined. The target first fault code is all the fault codes in the first fault code and the second fault code except for the deleted historical fault codes.

[0020] The ECU corresponding to the first fault code of the vehicle under test is tested.

[0021] By adopting the above technical solution, the historical fault codes of the vehicle under test, the detection time corresponding to each historical fault code, and the current time are obtained. The detection interval for each historical fault code is determined. Since the reasonable safe service life of the ECUs corresponding to each historical fault code is inconsistent, a preset interval for each historical fault code is determined. If the detection interval for each historical fault code does not reach the corresponding preset interval, it means that the ECU corresponding to the historical fault code has been replaced and is within the reasonable safe service life. Therefore, it is not necessary to prioritize the detection of this ECU. The historical fault codes that have not reached the preset interval are deleted, and a second fault code is obtained. Based on the first fault code, the second fault code, and the deleted historical fault code, the target first fault code is determined. The ECU corresponding to the target first fault code of the vehicle under test is then detected, thereby improving the efficiency of fault detection of the vehicle under test.

[0022] In another possible implementation, the step of detecting the ECU in the vehicle to be tested that corresponds to the target first fault code further includes:

[0023] Obtain the number of repairs required for the ECU corresponding to the first fault code in the target vehicle;

[0024] The percentage of repair visits is determined based on the number of times the ECU is inspected and the number of target vehicles.

[0025] Based on the quantity ratio, the repair frequency ratio, and their respective weights, a score is calculated for each first fault code;

[0026] The scores are sorted from largest to smallest to obtain the sorting result;

[0027] Based on the sorting results, the ECU corresponding to the first fault code of the vehicle to be tested is detected.

[0028] By adopting the above technical solution, the percentage of repairs in the target vehicle represents the probability of the first fault occurring in the target vehicle. The repair frequency of the ECU corresponding to the first fault code in the target vehicle and the number of target vehicles are obtained. The percentage of repairs is calculated based on the number of ECU checks and the number of target vehicles. Since both the quantity percentage and the percentage of repairs are factors affecting the probability of each first fault code occurring in the target vehicle, a score for each first fault code is calculated based on the quantity percentage, the percentage of repairs, and their respective weights. The higher the score, the higher the probability of the ECU corresponding to the first fault code failing. The scores of each first fault code are sorted from largest to smallest to obtain a ranking result. Based on the ranking result, the ECU corresponding to the first fault code of the vehicle under test is tested, thereby quickly identifying faults with a high probability of failure in the vehicle under test, further improving the efficiency of fault detection in the vehicle under test.

[0029] In another possible implementation, the method further includes determining the target first fault code:

[0030] Obtain the historical navigation routes of the vehicle to be detected and the target vehicle;

[0031] The first driving condition of the vehicle under test is determined based on the historical navigation route record of the vehicle under test.

[0032] The second road condition for each target vehicle is determined based on its historical navigation route.

[0033] Determine whether a target second road condition exists, wherein the target second road condition is the second road condition that is consistent with the first road condition among all second road conditions;

[0034] If a target second driving condition exists, then the first fault code of the target vehicle corresponding to the target second driving condition is determined as the target first fault code.

[0035] By adopting the above technical solution, since different road conditions may have different effects on the vehicle under test, in order to accurately determine the possible faults of the vehicle under test, the historical navigation routes of the vehicle under test and the target vehicle are obtained. Based on the historical navigation route records of the vehicle under test, the first road condition of the vehicle under test is determined, and based on the historical navigation routes of the target vehicles, the second road condition of each target vehicle is determined. It is then determined whether there is a second road condition that is consistent with the first road condition. If so, it means that the second road condition of the target vehicle is consistent with the first target road condition of the vehicle under test, and the fault that occurs in the target vehicle may also occur in the vehicle under test. In this case, the first fault code of the target vehicle corresponding to the second target road condition is determined as the first fault code, thereby simply and conveniently determining the possible faults of the vehicle under test.

[0036] In another possible implementation, determining the first road condition of the vehicle under test based on its historical navigation route record, and determining the second road condition of each target vehicle based on its historical navigation route, includes:

[0037] Based on each historical navigation route of the vehicle to be detected, determine the total length of the first road segment corresponding to each of the multiple preset road levels;

[0038] The preset road grade corresponding to the total length of the first road segment with the longest total length is determined as the first driving road condition of the vehicle to be tested.

[0039] Based on each historical navigation route of each target vehicle, determine the total length of the second road segment corresponding to each of the multiple preset road levels for each target vehicle;

[0040] The preset road grade corresponding to the longest second road segment is determined as the second driving condition for each target vehicle.

[0041] By adopting the above technical solution, the preset road level corresponding to the first road segment with the longest total length is the road level corresponding to the road frequently traveled by the vehicle under test. Therefore, the preset road level is determined as the first driving condition of the vehicle under test, so as to more accurately represent the first driving condition. The preset road level corresponding to the second road segment with the longest total length is the road level corresponding to the road frequently traveled by the target vehicle. Therefore, the road is determined as the second driving condition of the target vehicle, so as to more accurately represent the second driving condition.

[0042] In another possible implementation, the method further includes determining the target first fault code:

[0043] Based on each historical navigation route of the vehicle to be detected, determine the total length of the first road segment corresponding to each of the multiple preset road levels;

[0044] A first bar chart is generated based on the total length of the first road segment corresponding to each of the multiple preset road levels;

[0045] Based on each historical navigation route of each target vehicle, determine the total length of the second road segment corresponding to each of the multiple preset road levels for each target vehicle;

[0046] A second bar chart for each target vehicle is generated based on the total length of the second road segment corresponding to each of the multiple preset road levels.

[0047] Calculate the similarity between the first bar chart and the second bar chart for each target vehicle;

[0048] If a target histogram exists, the first fault code of the target vehicle corresponding to the target histogram is determined as the target first fault code. The target histogram is the histogram among all the second histograms that has a high similarity to the first histogram.

[0049] By adopting the above technical solution, a preset road level is used to represent different road conditions. The total length of the first road segment under each preset road level can be determined based on the historical navigation route of the vehicle to be tested. Similarly, the total length of the second road segment under each preset road level can be determined based on the historical navigation route of the target vehicle. A first bar chart is generated based on the total length of the first road segment, and a second bar chart is generated based on the total length of the second road segment. The similarity between the first bar chart and each second bar chart is calculated, which makes it easier to determine whether there is a second bar chart that is close to the first bar chart. This makes it easier to find a target vehicle with similar driving conditions to the vehicle to be tested, and thus more accurately identify the first fault code of the target vehicle as the target first fault code.

[0050] In another possible implementation, if a fault code is present in the detection result, the method further includes:

[0051] Obtain a 3D model of the vehicle to be detected;

[0052] Based on the detection results, the ECU corresponding to the fault code is marked in the vehicle model being tested to obtain the marked 3D model;

[0053] Output the annotated 3D model.

[0054] By adopting the above technical solution, since the 3D model can display the internal structure of the vehicle under test, the 3D model of the vehicle under test can be obtained. Based on the test results, the ECU that has malfunctioned can be marked in the 3D model of the vehicle under test, so that users can intuitively see the location of the malfunction in the vehicle under test.

[0055] Secondly, this application provides an automotive fault diagnosis device, which adopts the following technical solution:

[0056] A vehicle fault diagnosis device, comprising:

[0057] The acquisition module is used to obtain the model and mileage of the vehicle to be tested;

[0058] An interval determination module is used to determine the target mileage interval where the driving mileage is located from at least one preset mileage interval;

[0059] The vehicle search module is used to search for a target vehicle and the first fault code of the target vehicle from a historical database based on the model and the target mileage range. The model and target mileage range of the target vehicle are the same as those of the vehicle to be detected.

[0060] The percentage determination module is used to determine the percentage of each first fault code based on the number of target vehicles and the number of times each first fault code appears.

[0061] The detection module is used to detect the ECU in the vehicle to be tested that corresponds to the target first fault code if a target first fault code exists, and to obtain the detection result. The target first fault code is a first fault code whose number reaches a preset percentage.

[0062] The output module is used to output the detection results.

[0063] By adopting the above technical solution, the acquisition module obtains the model and mileage of the vehicle to be tested, and the interval determination module determines the target mileage interval based on the mileage. This enables the vehicle search module to find target vehicles with similar vehicle conditions from the historical database. The detection of the vehicle to be tested is faster and more accurate based on the fault codes that have appeared in the target vehicles with similar conditions. Each target vehicle corresponds to a first fault code that has appeared. Therefore, the proportion determination module determines the proportion of each first fault code based on the number of target vehicles and the number of times each first fault code has appeared. The proportion of the first fault code is used to more accurately represent the probability of each first fault code appearing. If the proportion of the first fault code reaches the preset proportion, it means that the first fault code has appeared more often and is more likely to appear in the vehicle to be tested. Therefore, if there is a target first fault code that reaches the preset proportion, the detection module will detect the ECU on the vehicle to be tested that corresponds to the target first fault code. The output module outputs the detection results. This is more efficient and accurate than detecting each ECU on the vehicle to be tested sequentially.

[0064] In another possible implementation, when the detection module detects the ECU in the vehicle under test that corresponds to the target first fault code, it is specifically used for:

[0065] Obtain the historical inspection information and current time of the vehicle to be inspected. The historical inspection information includes the historical fault codes of the vehicle to be inspected and the inspection time corresponding to each historical fault code.

[0066] Based on the historical detection time and the current time, the detection interval for each historical fault code is determined;

[0067] Determine whether the detection interval for each historical fault code has reached the corresponding preset interval.

[0068] If there are historical fault codes whose detection interval duration has not reached the preset interval duration, the historical fault codes that have not reached the preset interval duration are deleted, and a second fault code is obtained.

[0069] Based on the first fault code, the second fault code, and the deleted historical fault codes, a target first fault code is determined. The target first fault code is all the fault codes in the first fault code and the second fault code except for the deleted historical fault codes.

[0070] The ECU corresponding to the first fault code of the vehicle under test is tested.

[0071] In another possible implementation, when the detection module detects the ECU in the vehicle under test that corresponds to the target first fault code, it is specifically used for:

[0072] Obtain the number of repairs required for the ECU corresponding to the first fault code in the target vehicle;

[0073] The percentage of repair visits is determined based on the number of times the ECU is inspected and the number of target vehicles.

[0074] Based on the quantity ratio, the repair frequency ratio, and their respective weights, a score is calculated for each first fault code;

[0075] The scores are sorted from largest to smallest to obtain the sorting result;

[0076] Based on the sorting results, the ECU corresponding to the first fault code of the vehicle to be tested is detected.

[0077] In another possible implementation, the apparatus further includes, in determining the target first fault code:

[0078] The route acquisition module is used to acquire the historical navigation routes of the vehicle to be detected and the target vehicle.

[0079] The first road condition determination module is used to determine the first driving road condition of the vehicle under test based on the historical navigation route record of the vehicle under test.

[0080] The second road condition determination module is used to determine the second driving road condition for each target vehicle based on the historical navigation route of the target vehicle.

[0081] The road condition judgment module is used to determine whether there is a target second road condition, wherein the target second road condition is the second road condition that is consistent with the first road condition among all second road conditions;

[0082] The first fault code determination module is used to determine the first fault code of the target vehicle corresponding to the target second driving condition as the target first fault code if a target second driving condition exists.

[0083] In another possible implementation, the first traffic condition determination module determines the first traffic condition of the vehicle to be detected based on the historical navigation route record of the vehicle to be detected, and the second traffic condition determination module, when determining the second traffic condition of each target vehicle based on the historical navigation route of the target vehicles, is specifically used for:

[0084] Based on each historical navigation route of the vehicle to be detected, determine the total length of the first road segment corresponding to each of the multiple preset road levels;

[0085] The preset road grade corresponding to the total length of the first road segment with the longest total length is determined as the first driving road condition of the vehicle to be tested.

[0086] Based on each historical navigation route of each target vehicle, determine the total length of the second road segment corresponding to each of the multiple preset road levels for each target vehicle;

[0087] The preset road grade corresponding to the longest second road segment is determined as the second driving condition for each target vehicle.

[0088] In another possible implementation, the apparatus further includes, in determining the target first fault code:

[0089] The first road segment determination module is used to determine the total length of the first road segment corresponding to each of the preset road levels based on each historical navigation route of the vehicle to be detected.

[0090] The first generation module is used to generate a first bar chart based on the total length of the first road segment corresponding to each of the multiple preset road levels;

[0091] The second segment determination module is used to determine the total length of the second segment corresponding to each target vehicle under multiple preset road levels based on each historical navigation route of each target vehicle.

[0092] The second generation module is used to generate a second bar chart for each target vehicle based on the total length of the second road segment corresponding to each of the multiple preset road levels.

[0093] The calculation module is used to calculate the similarity between the first bar chart and the second bar chart of each target vehicle;

[0094] The second fault code determination module, if a target histogram exists, determines the first fault code of the target vehicle corresponding to the target histogram as the target first fault code. The target histogram is the histogram in all the second histograms that has a high similarity to the first histogram.

[0095] In another possible implementation, if a fault code is present in the detection result, the device further includes:

[0096] Obtain a 3D model of the vehicle to be detected;

[0097] Based on the detection results, the ECU corresponding to the fault code is marked in the vehicle model being tested to obtain the marked 3D model;

[0098] Output the annotated 3D model.

[0099] Thirdly, this application provides a vehicle fault detection instrument, which adopts the following technical solution:

[0100] A vehicle fault detector, comprising:

[0101] At least one processor;

[0102] Memory;

[0103] At least one application, wherein the at least one application is stored in memory and configured to be executed by at least one processor, the at least one configuration being for: executing an automotive fault diagnosis method as shown in any possible implementation of the first aspect.

[0104] Fourthly, this application provides a computer-readable storage medium, which adopts the following technical solution:

[0105] A computer-readable storage medium that, when the computer program is executed in a computer, causes the computer to perform a vehicle fault diagnosis method as described in any one of the first aspects.

[0106] In summary, this application includes at least one of the following beneficial technical effects:

[0107] 1. Obtain the model and mileage of the vehicle to be tested. Determine the target mileage range based on the mileage, so that target vehicles with similar conditions to the vehicle to be tested can be found from the historical database. It is faster and more accurate to test the vehicle to be tested based on the fault codes that have appeared in the target vehicles with similar conditions. Each target vehicle has a corresponding first fault code. Therefore, based on the number of target vehicles and the frequency of each first fault code, determine the proportion of each first fault code. Using the proportion of the proportion to represent the probability of each first fault code is more accurate. If the proportion of the first fault code reaches the preset proportion, it means that the first fault code has appeared more often and is more likely to appear in the vehicle to be tested. Therefore, if there is a target first fault code that reaches the preset proportion, the ECU corresponding to the target first fault code on the vehicle to be tested is tested. This is more efficient and accurate than testing each ECU on the vehicle to be tested sequentially.

[0108] 2. Since a 3D model can display the internal structure of the vehicle under test, a 3D model of the vehicle under test is obtained. Based on the test results, the ECU that has malfunctioned is marked in the 3D model of the vehicle under test, so that users can intuitively see the location of the malfunction in the vehicle under test. Attached Figure Description

[0109] Figure 1 This is a flowchart illustrating a vehicle fault diagnosis method in an embodiment of this application.

[0110] Figure 2 This is a schematic diagram illustrating the process of detecting the ECU corresponding to the target first fault code in a vehicle fault diagnosis method according to an embodiment of this application.

[0111] Figure 3 This is a schematic diagram illustrating another process for detecting the ECU corresponding to the target first fault code in a vehicle fault diagnosis method according to an embodiment of this application.

[0112] Figure 4 This is a flowchart illustrating the process of determining a target first fault code in a vehicle fault diagnosis method according to an embodiment of this application.

[0113] Figure 5 This is a schematic flowchart of an automotive fault diagnosis device according to an embodiment of this application.

[0114] Figure 6 This is a schematic diagram of the structure of a vehicle fault detector according to an embodiment of this application. Detailed Implementation

[0115] The present application will be further described in detail below with reference to the accompanying drawings.

[0116] After reading this specification, those skilled in the art may make modifications to this embodiment without contributing any inventive step, but such modifications are protected by patent law as long as they fall within the scope of the claims of this application.

[0117] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0118] Furthermore, the term "and / or" in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this article, unless otherwise specified, generally indicates that the preceding and following related objects have an "or" relationship.

[0119] The embodiments of this application will now be described in further detail with reference to the accompanying drawings.

[0120] This application provides a vehicle fault diagnosis method, executed by a vehicle fault detection instrument, such as... Figure 1 As shown, the method includes steps S101, S102, S103, S104, S105, and S106, wherein,

[0121] Step S101: Obtain the model and mileage of the vehicle to be tested.

[0122] In this embodiment, the vehicle fault detector is equipped with an interface for connecting to the vehicle under test. The protocol of this interface is consistent with the protocol of the interface on the vehicle under test, which will not be elaborated further in this embodiment. In use, the interface of the fault detector is connected to the interface of the vehicle under test, and power is turned on to obtain the model and mileage of the vehicle under test. For example, the model of the vehicle under test is "Model A" and its mileage is 13,000 km.

[0123] Step S102: Determine the target mileage range from at least one preset mileage range.

[0124] In this embodiment of the application, the vehicle fault detector has multiple preset mileage intervals. For example, there are three preset mileage intervals: [0km, 5000km], [5001km, 10000km], and [10001km, 15000km]. The vehicle fault detector obtains the mileage of the vehicle to be tested and thus determines the preset mileage interval in which the mileage of the vehicle to be tested is located, i.e., the target mileage interval. Taking step S101 as an example, since the mileage of the vehicle to be tested is 13000km, the target mileage interval corresponding to the vehicle to be tested is [10001km, 15000km].

[0125] Step S103: Based on the model and target mileage range, search the historical database for the target vehicle and the first fault code that occurred on the target vehicle.

[0126] The target vehicle's model and target mileage range are the same as those of the vehicle to be tested.

[0127] In this embodiment, to accurately identify potential faults in the vehicle under test, a target vehicle with a similar condition is searched from the historical database. This target vehicle shares the same model and mileage as the vehicle under test, indicating a similar condition. Therefore, the target vehicle is searched from the historical database, which records vehicles of different brands, models, and mileages, along with their respective fault codes. It should be noted that each vehicle has a target mileage range corresponding to its mileage. The fault detector searches the historical database for a target vehicle with the same model and target mileage range as the vehicle under test, along with the target vehicle's first fault code. Taking step S102 as an example, assuming that in the historical data... Vehicle 1 is model "Model A", with a mileage of 12,000 km and a target mileage range of [10,001 km, 15,000 km]. The first fault codes it has encountered are P0108, P0111, P0120, and P0113. Vehicle 2 is model "Model B", with a mileage of 6,000 km and a target mileage range of [5,001 km, 10,000 km]. The first fault codes it has encountered are P0107, P0116, P0120, P0113, and P0109. Since the model and target mileage range of Vehicle 1 are consistent with those of the vehicle to be tested, Vehicle 1 is identified as the target vehicle, and the first fault codes of the target vehicle are identified as P0108, P0111, P0120, and P0113.

[0128] Step S104: Determine the percentage of each first fault code based on the number of target vehicles and the number of times each first fault code appears.

[0129] In this embodiment of the application, the quantity percentage represents the probability of each first fault code appearing in the target vehicle. In order to accurately determine the probability of the first fault code appearing, the vehicle fault detector calculates the quantity percentage based on the number of target vehicles and the number of times each first fault code appears. Assuming that the number of target vehicles of model A is 100, P0108 appears 60 times, P0111 appears 30 times, P0120 appears 80 times and P0113 appears 20 times. Therefore, the quantity percentage of P0108 is 3 / 5, the quantity percentage of P0111 is 3 / 10, the quantity percentage of P0120 is 4 / 5 and the quantity percentage of P0113 is 1 / 5.

[0130] Step S105: If a target first fault code exists, the ECU corresponding to the target first fault code in the vehicle to be tested is tested to obtain the test result.

[0131] Among them, the first fault code is the first fault code whose quantity reaches the preset percentage.

[0132] In this embodiment, the quantity percentage represents the probability of each first fault code appearing in all target vehicles. A preset percentage is set to accurately determine whether a target first fault code exists in the vehicle under test. If the quantity percentage of the first fault code is less than the preset percentage, it indicates that the ECU corresponding to the fault code is less likely to malfunction, and therefore, the ECU does not need to be prioritized for testing. If the quantity percentage of the first fault code is greater than or equal to the preset percentage, it indicates that the ECU corresponding to the fault code is more likely to malfunction, and the fault code is identified as the target first fault code. The vehicle fault detector then tests the ECU corresponding to the target first fault code in the vehicle under test to obtain the test results. As a result, assuming the preset ratio is 2 / 5, taking step S104 as an example, P0108, P0111, and P0120 all reach the preset ratio. Therefore, P0108, P0111, and P0120 are all target first fault codes. The vehicle fault detector checks the ECUs corresponding to P0108, P0111, and P0120 in the vehicle under test to determine the faults that are most likely to occur in the vehicle under test. By checking the faults that are most likely to occur in the vehicle under test, the faults in the vehicle under test can be quickly obtained, thereby reducing the need to check each ECU sequentially, which would take a long time to find the faults in the vehicle under test and reduce the detection efficiency.

[0133] Step S106: Output the detection results.

[0134] In this embodiment, the detection results can be displayed on the screen of the vehicle fault detector. In this embodiment, no specific limitation is made. The output of the detection results allows the user to intuitively see the fault of the vehicle to be tested.

[0135] In one possible implementation of this application embodiment, step S105 involves detecting the ECU in the vehicle to be tested that corresponds to the target first fault code, such as... Figure 2 As shown, the steps include: S1, S2, S3, S4, S5, and S6, wherein...

[0136] Step S1: Obtain the historical detection information and current time of the vehicle to be detected.

[0137] The historical inspection information includes the historical fault codes of the vehicle to be inspected and the inspection time corresponding to each historical fault code.

[0138] In this embodiment, historical detection information can be stored in the vehicle's infotainment system. The vehicle fault detector connects to the vehicle to obtain its historical detection information. The vehicle fault detector obtains the current time through its built-in clock system. For example, the current time obtained by the vehicle fault detector is 10:00 on June 7, 2023. The historical fault codes of the vehicle to be tested are P0111, P0107, P0108, and P0120. Among them, the detection time corresponding to P0111 is March 7, 2021, the detection time corresponding to P0107 is July 15, 2022, the detection time corresponding to P0108 is January 8, 2023, and the detection time corresponding to P0120 is March 7, 2020.

[0139] Step S2: Determine the detection interval for each historical fault code based on the historical detection time and the current time.

[0140] In this embodiment of the application, the current time is subtracted from the historical detection time of each fault code to determine the detection time interval from each historical fault code to the current time. Taking step S1 as an example, the current time is 10:00 on June 7, 2023. The detection interval of P0111 is 27 months, the detection interval of P0107 is 11 months, the detection interval of P0108 is 5 months, and the detection interval of P0121 is 39 months.

[0141] Step S3: Determine whether the detection interval for each historical fault code has reached the corresponding preset interval.

[0142] In this embodiment of the application, since the ECU corresponding to each historical fault code is different, and the reasonable safe service life of each ECU is also different, the possibility of the ECU failing within the reasonable safe service life is relatively small. Therefore, in order to accurately determine whether the ECU corresponding to the historical fault code is likely to fail, the preset interval length of the historical fault code corresponding to each ECU is determined according to the reasonable safe service life of each ECU. For example, the preset interval length of P0111 is 18 months, the preset interval length of P0107 is 12 months, the preset interval length of P0108 is 6 months, and the preset interval length of P0121 is 24 months.

[0143] In another implementation, to save computation time, the reasonable safe service life of the ECU corresponding to each historical fault code can be compared, and the shortest reasonable safe service life can be selected to represent the reasonable safe service life of all ECUs, i.e., the preset interval length. In this embodiment, the setting method of the preset interval length is not specifically limited. Assuming that the reasonable safe service life of the ECU corresponding to P0108 among P0111, P0107, P0108 and P0121 is the shortest, i.e., 5 months, the preset interval length is 5 months.

[0144] Step S4: If there is a historical fault code whose detection interval duration has not reached the preset interval duration, delete the historical fault code that has not reached the preset interval duration and obtain the second fault code.

[0145] In this embodiment, the vehicle fault detector compares the detection interval of each historical fault code with a preset interval. If the detection interval reaches the preset interval, which is equal to or greater than the reasonable safe service life of the ECU corresponding to the historical fault code, it indicates that the ECU is likely to be damaged. Therefore, the ECU corresponding to the fault code needs to be tested. However, the ECU corresponding to the historical fault code that has not reached the preset interval is still within the reasonable safe service life and is less likely to fail. Therefore, the ECU does not need to be tested. Thus, the vehicle fault detector deletes the historical fault codes that have not reached the preset interval. Taking steps S2 and S3 as examples, the detection intervals of P0107 and P0108 have not reached the preset interval. Therefore, P0107 and P0108 are deleted from the historical fault codes, resulting in the second fault codes, namely P0111 and P0121.

[0146] Step S5: Determine the target first fault code based on the first fault code, the second fault code, and the deleted historical fault codes.

[0147] Among them, the target first fault code is all the fault codes in the first fault code and the second fault code except for the deleted historical fault codes.

[0148] In this embodiment, the ECU corresponding to the deleted historical fault code is the ECU that was replaced in the vehicle under test and is within a reasonable safe service life. Therefore, the possibility of a fault is relatively small and it does not need to be tested first. The first fault code is the fault code that is consistent with the model and mileage range of the vehicle under test. That is to say, the fault codes that the vehicle under test may have in this model and mileage range. The second fault code is the historical fault code of the vehicle under test. Therefore, in order to more accurately determine the fault codes that the vehicle under test is more likely to have, fault codes are added and / or deleted based on the first fault code, the second fault code and the deleted historical fault code to determine the target first fault code. Taking steps S4 and S103 as examples, the first fault codes are P0108, P0111, P0120 and P0113, the second fault codes are P0111 and P0121, the deleted historical fault codes are P0107 and P0108, and the target first fault codes are P0111, P0120, P0113 and P0121.

[0149] Step S6: Detect the ECU corresponding to the first fault code of the target vehicle.

[0150] In this embodiment of the application, the target first fault code is a fault code that is highly likely to cause a fault in the vehicle under test. Taking step S5 as an example, the vehicle fault detector determines that the target first fault codes are P0111, P0120, P0113 and P0121. Therefore, the vehicle fault detector will detect the ECUs corresponding to P0111, P0120, P0113 and P0121 in the vehicle under test, thereby quickly determining the fault codes that are highly likely to cause a fault in the vehicle under test, and thus detecting the ECUs corresponding to the target first fault codes in the vehicle under test, thereby improving the detection efficiency of faults that are highly likely to cause a fault in the vehicle under test.

[0151] In one possible implementation of this application embodiment, step S105 involves detecting the ECU in the vehicle to be tested that corresponds to the target first fault code, such as... Figure 3 As shown, it also includes steps S7, S8, S9, S10, and S11, wherein,

[0152] Step S7: Obtain the number of repairs required for the ECU corresponding to the first fault code in the target vehicle.

[0153] In this embodiment, the historical database in the vehicle fault detector records the fault codes that have appeared for each target vehicle and the repair records of the ECU corresponding to each fault code. Therefore, the number of repairs of the ECU corresponding to the first fault code in the target vehicle is obtained from the historical database. This embodiment does not make specific limitations. Assuming that there are a total of 100 target vehicles of model A, and the fault code in each vehicle has been repaired once, then the number of repairs of the ECU corresponding to P0108 in the target vehicle of model A is 60, the number of repairs of the ECU corresponding to P0111 is 40, the number of repairs of the ECU corresponding to P0120 is 45, and the number of repairs of the ECU corresponding to P0113 is 90.

[0154] Step S8: Determine the percentage of repair visits based on the number of ECU checks and the number of target vehicles.

[0155] In this embodiment of the application, since the proportion of repair times is different, the probability of ECU failure is different. Therefore, in order to accurately determine the probability of ECU failure corresponding to each first fault code, the proportion of repair times is calculated based on the number of ECU inspections and the number of target vehicles. Taking steps S7 and S104 as examples, the number of target vehicles 1 is 100, the proportion of repair times for P0108 is 3 / 5, the proportion of repair times for P0111 is 4 / 10, the proportion of repair times for P0120 is 9 / 20, and the proportion of repair times for P0113 is 9 / 10.

[0156] Step S9: Calculate the score for each first fault code based on the proportion of quantity, the proportion of repair frequency, and their respective weights.

[0157] In this embodiment, both the quantity percentage and the repair frequency percentage are factors influencing the probability of each first fault code in the target vehicle malfunctioning. A higher quantity percentage indicates a greater probability of the ECU corresponding to the first fault code malfunctioning, and a higher repair frequency percentage indicates a greater probability of the ECU corresponding to the first fault code malfunctioning. To accurately determine the probability of the ECU corresponding to each first fault code malfunctioning, a score for each first fault code is calculated based on the quantity percentage, the repair frequency percentage, and their respective weights. The weights are determined based on the quantity percentage and the repair frequency percentage. The importance of the percentage of numbers is not specifically limited in this application. Assuming that the weight of the percentage of numbers is 0.4 and the weight of the percentage of repair times is 0.6, taking steps S8 and S104 as examples, the score of P0108 is 3 / 5×0.4+3 / 5×0.6=0.6, the score of P0111 is 3 / 10×0.4+4 / 10×0.6=0.36, the score of P0120 is 4 / 5×0.4+9 / 20×0.6=0.59, and the score of P0113 is 1 / 5×0.4+9 / 10×0.6=0.62.

[0158] Step S10: Sort the scores from largest to smallest to obtain the sorting result.

[0159] In this embodiment, after calculating the score of each first fault code in step S9, the vehicle fault detector sorts the scores of each first fault code from largest to smallest to obtain a sorting result. It should be noted that the score represents the probability that the ECU corresponding to the first fault code is faulty; that is, the higher the score, the higher the probability that the ECU corresponding to the first fault code is faulty, and therefore the higher the probability that the ECU corresponding to the first fault code in the vehicle under test is faulty. Taking step S9 as an example, the sorting result of the first fault codes is P0113>P0108>P0120>P0111.

[0160] Step S11: Based on the sorting results, detect the ECU corresponding to the first fault code of the vehicle to be tested.

[0161] In this embodiment of the application, since the higher the score of the first fault code, the higher the probability that the ECU corresponding to the first fault code is faulty, the ECU corresponding to the first fault code of the vehicle to be tested is tested according to the sorting result in step S10, so as to prioritize the detection of the first fault code with a high score, thereby quickly determining the fault in the vehicle to be tested, and further improving the efficiency of fault detection of the vehicle to be tested.

[0162] In one possible implementation of this application embodiment, step S105 determines the target first fault code, such as... Figure 4 As shown, the method further includes steps S12, S13, S14, S15, and S16, wherein step S12 can be executed after step S103.

[0163] Step S12: Obtain the historical navigation routes of the vehicle to be detected and the target vehicle.

[0164] In this embodiment of the application, the historical navigation route of the vehicle to be tested records all the driving routes of the vehicle. The road conditions corresponding to each driving route may be the same or different. Therefore, the road conditions that the vehicle to be tested frequently travels can be determined based on all the historical navigation routes. The vehicle fault detector obtains the historical navigation route of the vehicle to be tested, and the historical navigation information of the target vehicle is obtained through a historical database.

[0165] Step S13: Determine the first driving conditions of the vehicle to be detected based on its historical navigation route.

[0166] In this embodiment, different road conditions will have different effects on the vehicle under test. For example, uneven road surfaces and gravel roads may cause the vehicle to vibrate and bump. Long-term driving on such roads will cause the ECU of the vehicle under test to malfunction. Therefore, in order to quickly determine the fault of the vehicle under test and thus determine the first driving road condition of the vehicle under test, the vehicle fault detector accesses the navigation system of the vehicle under test, records the historical navigation route of the vehicle under test, and analyzes the data in the historical navigation route to accurately determine the first driving road condition of the vehicle under test.

[0167] Step S14: Determine the second driving conditions for each target vehicle based on its historical navigation route.

[0168] In this embodiment of the application, since different historical navigation routes represent different road conditions, and different road conditions have different effects on the target vehicle, in order to facilitate the user to determine the target vehicle with the same road conditions as the vehicle to be detected based on the fault of the target vehicle, the vehicle fault detector obtains the navigation system of the target vehicle from the historical database, determines the historical navigation route of the target vehicle, analyzes the historical navigation route, and determines the second driving road condition of the target vehicle.

[0169] Step S15: Determine if the target second driving condition exists.

[0170] The target second driving condition is the second driving condition that is consistent with the first driving condition among all second driving conditions.

[0171] In this embodiment of the application, since the first driving road condition represents the road condition that the vehicle under test frequently travels, and the second driving road condition represents the driving road condition of the target vehicle, in order to accurately find the target vehicle with the same road condition as the vehicle under test, it is determined from all the second driving road conditions whether there is a second driving road condition that is consistent with the first driving road condition, i.e., the target second driving road condition, so as to conveniently and quickly find the target vehicle with the same driving road condition as the vehicle under test from all the target vehicles.

[0172] Step S16: If a target second driving condition exists, the first fault code of the target vehicle corresponding to the target second driving condition is determined as the target first fault code.

[0173] In this embodiment of the application, if the second driving condition of the target vehicle is consistent with the first target driving condition of the vehicle to be tested, it means that the fault that occurs in the target vehicle may also occur in the vehicle to be tested. Therefore, the first fault code of the target vehicle corresponding to the second target driving condition is determined as the first target fault code, thereby easily and conveniently determining the fault that may occur in the vehicle to be tested.

[0174] One possible implementation of this application embodiment includes steps S13 and S14, in which the first driving condition of the vehicle to be detected is determined based on the historical navigation route record of the vehicle to be detected, and the second driving condition of each target vehicle is determined based on the historical navigation route of the target vehicles. This includes steps Sa1, Sa2, Sa3, and Sa4.

[0175] Step Sa1: Based on each historical navigation route of the vehicle to be detected, determine the total length of the first segment corresponding to each of the multiple preset road levels.

[0176] In this embodiment, since each historical navigation route of each vehicle to be tested contains multiple road segments with different road conditions, each road segment is divided according to multiple preset road levels. For example, the preset road levels are highways, national highways, provincial highways, and rural roads. Highways, national highways, and provincial highways are defined as smooth roads, while rural roads are defined as gravel roads. The total length of the first road segment is calculated based on the length of the road segments of multiple preset road levels in each historical navigation route. The obtained historical navigation route 1 of the vehicle to be tested is from City A to City B, with a total length of 310km. Among them, the total length of highways is 140km, the total length of national highways is 90km, the total length of provincial highways is 50km, and the total length of rural roads is 30km. The historical navigation route 2 is from City C to City D, with a total length of 618km. Among them, the total length of highways is 300km, the total length of national highways is 150km, the total length of provincial highways is 100km, and the total length of rural roads is 68km.

[0177] Step Sa2: Determine the preset road grade corresponding to the total length of the first road segment with the longest total length as the first driving road condition for the vehicle to be tested.

[0178] In this embodiment, the historical navigation routes of the vehicle under test may be consistent or inconsistent. Each historical navigation route corresponds to multiple preset road levels. Since the road conditions corresponding to the preset road level of the longest first road segment are the road conditions frequently traveled by the vehicle under test, in order to accurately determine the first road condition of the vehicle under test, the first road segments corresponding to multiple preset road levels in each historical navigation route of the vehicle under test are summed to obtain the total length of the first road segment. The longer the total length of the first road segment, the more frequently the vehicle under test travels on that road. The road level corresponding to the longest road segment is determined as the first driving condition for the vehicle under test. Taking step Sa1 as an example, the first total length of the expressway is 140+300=440km, the first total length of the national highway is 90+150=240km, the first total length of the provincial highway is 50+100=150km, and the first total length of the rural road is 30+68=98km. Among them, the first total length of the vehicle under test is the longest on the expressway, which is 440km. Therefore, the first driving condition of the vehicle under test is a flat road.

[0179] Step Sa3: Based on each historical navigation route of each target vehicle, determine the total length of the second road segment corresponding to each of the multiple preset road levels for each target vehicle.

[0180] In this embodiment, the specific implementation method for determining the total length of the second road segment of the target vehicle can be the same as the implementation method for determining the total length of the first road segment of the vehicle to be detected, which will not be elaborated in this embodiment. It is assumed that the preset road grades are highways, national highways, provincial highways and rural roads, where highways, national highways and provincial highways are flat roads and rural roads are gravel roads. The historical navigation route 1 of the target vehicle 1 is from Changsha to Chongqing, with a total length of 893km, of which the total length of highways is 390km, the total length of national highways is 245km, the total length of provincial highways is 179km and the total length of rural roads is 79km. The historical navigation route 2 is from Xiangtan City to Hengyang City, with a total length of 147km, of which the total length of highways is 65km, the total length of national highways is 40km, the total length of provincial highways is 30km and the total length of rural roads is 12km.

[0181] Step Sa4: Determine the preset road level corresponding to the total length of the second road segment with the longest total length as the second driving condition for each target vehicle.

[0182] In this embodiment, the specific implementation of determining the second driving condition can be achieved through the implementation of the first driving condition described above, which will not be repeated in this embodiment. Taking step Sa3 as an example, the first total length of the expressway is 390+65=455km, the first total length of the national highway is 245+40=285km, the first total length of the provincial highway is 179+30=209km, and the first total length of the rural road is 79+12=91km. Among them, the first total length of the target vehicle traveling on the expressway is the longest, which is 455km. Therefore, the first driving condition of the target vehicle is a flat road.

[0183] One possible implementation of this application embodiment, determining a target first fault code, further includes steps S107, S108, S109, S110, S111, and S112, wherein step S107 can be executed after step S103.

[0184] Step S107: Based on each historical navigation route of the vehicle to be detected, determine the total length of the first road segment corresponding to each of the multiple preset road levels.

[0185] In this embodiment of the application, since each historical navigation route of the vehicle to be detected represents the length of the first segment of multiple preset roads in a single trip of the vehicle to be detected, in order to accurately determine the total length of the first road of the vehicle to be detected, the first segments corresponding to multiple preset road levels in each historical navigation route of the vehicle to be detected are summed to obtain the total length of the first segment corresponding to each of the multiple preset road levels. Taking step Sa2 as an example, the first total length of the expressway is 140+300=440km, the first total length of the national highway is 90+150=240km, the first total length of the provincial highway is 50+100=150km, and the first total length of the rural road is 30+68=98km.

[0186] Step S108: Generate a first bar chart based on the total length of the first road segment corresponding to each of the multiple preset road levels.

[0187] In this embodiment, a coordinate system is established regarding preset road grades and the total length of the first road segment. The X-axis represents the preset road grade, and the Y-axis represents the total length of the first road segment corresponding to each of the multiple preset road grades. The different total lengths of the first road segments corresponding to different preset road grades are labeled with the Y-axis to obtain the first bar chart. For example, taking step S107, the preset road grades, namely expressways, national highways, provincial highways, and rural roads, are labeled on the X-axis. Then, the total lengths of the first road segments corresponding to each preset road grade, namely 440km, 240km, 150km, and 98km, are sequentially labeled with the preset road grades and marked with the corresponding lengths on the Y-axis to draw the first bar chart.

[0188] Step S109: Based on each historical navigation route of each target vehicle, determine the total length of the second road segment corresponding to each of the multiple preset road levels for each target vehicle.

[0189] In this embodiment of the application, since each historical navigation route of the target vehicle represents the length of the second segment of multiple preset roads in a single trip of the target vehicle, in order to accurately determine the total length of the second road corresponding to each of the multiple preset road levels of the target vehicle, the second segments corresponding to the multiple preset road levels in each historical navigation route of the target vehicle are summed to obtain the total length of the second segment corresponding to each of the multiple preset road levels. Taking step Sa4 as an example, the first total length of the target vehicle 1 on the expressway is 390+65=455km, the first total length of the national highway is 245+40=285km, the first total length of the provincial highway is 179+30=209km, and the first total length of the rural road is 79+12=91km.

[0190] Step S110: Generate a second bar chart for each target vehicle based on the total length of the second road segment corresponding to each of the multiple preset road levels.

[0191] In this embodiment, the implementation of the second bar chart is the same as that of the first bar chart in the above embodiment, and will not be repeated here. For example, taking step S109, the preset road grades, namely expressways, national highways, provincial highways, and rural roads, are marked on the X-axis. Then, the total lengths of the first road segments corresponding to each preset road grade, namely 455km, 285km, 209km, and 91km, are sequentially mapped to the preset road grades and marked on the corresponding lengths on the Y-axis to draw the second bar chart.

[0192] Step S111: Calculate the similarity between the first bar chart and the second bar chart of each target vehicle.

[0193] In this embodiment, when calculating the similarity between the first bar chart and the second bar chart of each target vehicle, the correlation coefficient can be used, or the cosine similarity can be used. That is, the first bar chart and the second bar chart are represented as vectors respectively, and the similarity between the first bar chart and the second bar chart is characterized by calculating the cosine distance between the vectors. The similarity can also be calculated by Euclidean distance. This embodiment does not make specific limitations.

[0194] Step S112: If a target histogram exists, the first fault code of the target vehicle corresponding to the target histogram is determined as the target first fault code. The target histogram is the histogram in all the second histograms that has a high similarity to the first histogram.

[0195] In this embodiment of the application, taking steps S109 and S110 as examples, it is assumed that the first bar chart of the vehicle to be tested is similar to the second bar chart of the target vehicle 1, indicating that the total length of the second road segment traveled by the target vehicle 1 is highly similar to the total length of the first road segment traveled by the vehicle to be tested. Then, the second bar chart of the target vehicle 1 is determined as the target bar chart. The higher the similarity between the first bar chart and the second bar chart, the higher the similarity between the faults of the vehicle to be tested and the target vehicle. That is to say, the faults that occur in the target vehicle 1 may also occur in the vehicle to be tested. Therefore, the first fault code in the target vehicle 1 is determined as the target fault code, thereby conveniently and quickly identifying the faults that are more likely to occur in the vehicle to be tested.

[0196] In one possible implementation of this application embodiment, if a fault code is present in the detection result, the method further includes: steps S113, S114, and S115, wherein step S113 can be executed after step S106.

[0197] Step S113: Obtain the 3D model of the vehicle to be inspected.

[0198] In this embodiment of the application, the vehicle fault detector accesses a 3D model database and searches for a 3D model of the vehicle to be detected that matches the vehicle model in the database, thereby obtaining a 3D model of the vehicle to be detected.

[0199] Step S114: Based on the detection results, mark the ECU corresponding to the fault code in the vehicle model to obtain the marked 3D model;

[0200] In this embodiment of the application, the ECU corresponding to the target first fault code is obtained according to the detection result. Since the position of each ECU in the vehicle to be tested is fixed, the ECU that has the fault is marked in the three-dimensional model of the vehicle to be tested according to the three-dimensional model of the vehicle to be tested.

[0201] Step S115: Output the annotated 3D model.

[0202] In this embodiment of the application, the annotated 3D model is displayed on the screen of the vehicle fault detector, so that the user can intuitively see the fault location of the vehicle to be tested.

[0203] The above embodiments describe a method for diagnosing automotive faults from the perspective of process flow. The following embodiments describe an automotive fault diagnosis device from the perspective of virtual modules or virtual units. For details, please refer to the following embodiments.

[0204] This application provides an automotive fault diagnosis device 20, such as... Figure 5 As shown, the vehicle fault diagnosis device 20 may specifically include:

[0205] The acquisition module 201 is used to acquire the model and mileage of the vehicle to be tested;

[0206] The interval determination module 202 is used to determine the target mileage interval from at least one preset mileage interval;

[0207] The vehicle search module 203 is used to search for the target vehicle and the first fault code of the target vehicle from the historical database according to the model and target mileage range. The model and target mileage range of the target vehicle are the same as those of the vehicle to be tested.

[0208] The percentage determination module 204 is used to determine the percentage of each first fault code based on the number of target vehicles and the number of times each first fault code appears.

[0209] The detection module 205 is used to detect the ECU in the vehicle to be tested that corresponds to the target first fault code if a target first fault code exists, and obtain the detection result. The target first fault code is the first fault code whose number reaches a preset percentage.

[0210] Output module 206 is used to output the detection results.

[0211] By adopting the above technical solution, the acquisition module 201 acquires the model and mileage of the vehicle to be tested, and the interval determination module 202 determines the target mileage interval based on the mileage. This enables the vehicle search module 203 to find target vehicles with similar vehicle conditions from the historical database. The detection of the vehicle to be tested is faster and more accurate based on the fault codes that have appeared in the target vehicles with similar vehicle conditions. Each target vehicle corresponds to a first fault code that has appeared. Therefore, the proportion determination module 204 determines the proportion of each first fault code based on the number of target vehicles and the number of times each first fault code has appeared. The proportion of each first fault code is used to more accurately represent the probability of each first fault code appearing. If the proportion of the first fault code reaches the preset proportion, it means that the first fault code has appeared more often and is more likely to appear in the vehicle to be tested. Therefore, if there is a target first fault code that reaches the preset proportion, the detection module 205 will detect the ECU on the vehicle to be tested that corresponds to the target first fault code, and the output module 206 will output the detection results. This is more efficient and accurate than detecting each ECU on the vehicle to be tested sequentially.

[0212] In another possible implementation, when the detection module 205 detects the ECU in the vehicle to be tested that corresponds to the target first fault code, it is specifically used for:

[0213] Obtain the historical inspection information and current time of the vehicle to be inspected. The historical inspection information includes the historical fault codes of the vehicle to be inspected and the inspection time corresponding to each historical fault code.

[0214] Based on the historical detection time and the current time, determine the detection interval for each historical fault code;

[0215] Determine whether the detection interval for each historical fault code has reached the corresponding preset interval.

[0216] If there are historical fault codes whose detection interval duration has not reached the preset interval duration, the historical fault codes that have not reached the preset interval duration will be deleted, and a second fault code will be obtained.

[0217] Based on the first fault code, the second fault code, and the deleted historical fault codes, determine the target first fault code. The target first fault code is all the fault codes in the first and second fault codes except for the deleted historical fault codes.

[0218] The ECU corresponding to the first fault code of the target vehicle is then tested.

[0219] In another possible implementation, when the detection module 205 detects the ECU in the vehicle to be tested that corresponds to the target first fault code, it is specifically used for:

[0220] Obtain the number of repairs required for the ECU corresponding to the first fault code in the target vehicle;

[0221] The percentage of repair visits is determined based on the number of ECU checks and the number of target vehicles.

[0222] Based on the proportion of quantity, the proportion of repair frequency, and their respective weights, the score for each first fault code is calculated;

[0223] Sort the scores from largest to smallest to obtain the sorting results;

[0224] Based on the sorting results, the ECU corresponding to the first fault code of the vehicle to be tested is detected.

[0225] In another possible implementation, to determine the target first fault code, device 20 further includes:

[0226] The route acquisition module is used to acquire the historical navigation routes of the vehicle to be detected and the target vehicle.

[0227] The first road condition determination module is used to determine the first driving road condition of the vehicle under test based on the historical navigation route record of the vehicle under test.

[0228] The second road condition determination module is used to determine the second driving road condition for each target vehicle based on the target vehicle's historical navigation route.

[0229] The road condition judgment module is used to determine whether there is a target second road condition. The target second road condition is the second road condition that is consistent with the first road condition among all second road conditions.

[0230] The first fault code determination module is used to determine the first fault code of the target vehicle corresponding to the target second driving condition as the target first fault code if the target second driving condition exists.

[0231] In another possible implementation, the first traffic condition determination module determines the first traffic condition of the vehicle to be detected based on its historical navigation route record, and the second traffic condition determination module, when determining the second traffic condition of each target vehicle based on its historical navigation route, is specifically used for:

[0232] Based on each historical navigation route of the vehicle to be detected, determine the total length of the first segment corresponding to each of the multiple preset road levels;

[0233] The preset road grade corresponding to the longest first road segment is determined as the first driving road condition for the vehicle to be tested.

[0234] Based on each historical navigation route of each target vehicle, determine the total length of the second road segment corresponding to each of the multiple preset road levels for each target vehicle;

[0235] The preset road grade corresponding to the longest second road segment is determined as the second driving condition for each target vehicle.

[0236] In another possible implementation, to determine the target first fault code, device 20 further includes:

[0237] The first segment determination module is used to determine the total length of the first segment corresponding to each of the multiple preset road levels based on each historical navigation route of the vehicle to be detected.

[0238] The first generation module is used to generate a first bar chart based on the total length of the first road segment corresponding to each of multiple preset road levels.

[0239] The second segment determination module is used to determine the total length of the second segment corresponding to each target vehicle under multiple preset road levels based on each historical navigation route of each target vehicle.

[0240] The second generation module is used to generate a second bar chart for each target vehicle based on the total length of the second road segment corresponding to each of the multiple preset road levels.

[0241] The calculation module is used to calculate the similarity between the first bar chart and the second bar chart of each target vehicle;

[0242] The second fault code determination module, if a target histogram exists, determines the first fault code of the target vehicle corresponding to the target histogram as the target first fault code. The target histogram is the histogram in the second histogram that has a high similarity to the first histogram.

[0243] In another possible implementation, if a fault code is found in the detection result, device 20 further includes:

[0244] Obtain a 3D model of the vehicle to be inspected;

[0245] Based on the detection results, the ECU corresponding to the fault code is marked in the vehicle model to obtain the marked 3D model;

[0246] Output the annotated 3D model.

[0247] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the automotive fault diagnosis device 20 described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0248] This application provides a vehicle fault detection instrument, such as... Figure 6 As shown, Figure 6 The vehicle fault detector 30 shown includes a processor 301 and a memory 303. The processor 301 and the memory 303 are connected, for example, via a bus 302. Optionally, the vehicle fault detector 30 may also include a transceiver 304. It should be noted that in practical applications, the transceiver 304 is not limited to one type, and the structure of this vehicle fault detector 30 does not constitute a limitation on the embodiments of this application.

[0249] Processor 301 may be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or other programmable logic devices, transistor logic devices, hardware ECUs, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 301 may also be a combination that implements computational functions, such as including one or more microprocessor combinations, a combination of a DSP and a microprocessor, etc.

[0250] Bus 302 may include a pathway for transmitting information between the aforementioned components. Bus 302 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. Bus 302 can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 6 The symbol is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0251] The memory 303 may be a ROM (Read Only Memory) or other type of static storage device capable of storing static information and instructions, RAM (Random Access Memory) or other type of dynamic storage device capable of storing information and instructions, or an EEPROM (Electrically Erasable Programmable Read Only Memory), CD-ROM (Compact Disc Read Only Memory) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto.

[0252] The memory 303 is used to store application code that executes the solution of this application, and its execution is controlled by the processor 301. The processor 301 is used to execute the application code stored in the memory 303 to implement the content shown in the foregoing method embodiments.

[0253] Figure 6 The vehicle fault detector shown is merely an example and should not impose any limitations on the functionality or usage duration of the embodiments of this application.

[0254] This application provides a computer-readable storage medium storing a computer program that, when run on a computer, enables the computer to execute the corresponding content in the aforementioned method embodiments. Compared with related technologies, this application obtains the model and mileage of the vehicle to be tested, determines a target mileage range based on the mileage, and thus can find target vehicles with similar vehicle conditions from a historical database. Testing the vehicle to be tested based on fault codes that have appeared in target vehicles with similar conditions is faster and more accurate. Each target vehicle corresponds to a first fault code that has appeared. Therefore, based on the number of target vehicles and the frequency of each first fault code, the proportion of each first fault code is determined. Using the proportion to characterize the probability of each first fault code appearing is more accurate. If the proportion of first fault codes reaches a preset proportion, it indicates that the first fault code has appeared more frequently and is more likely to appear in the vehicle to be tested. Therefore, if there is a target first fault code that reaches the preset proportion, the ECU corresponding to the target first fault code on the vehicle to be tested is tested, which is more efficient and accurate than testing each ECU on the vehicle to be tested sequentially.

[0255] It should be understood that although the steps in the flowcharts of the accompanying figures are shown sequentially as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the accompanying figures may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.

[0256] The above are only some embodiments of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.

Claims

1. An automobile trouble diagnosis method characterized by comprising: The method comprises the following steps: acquiring the model and the driving mileage of a vehicle to be detected; determining a target mileage interval in which the driving mileage is located from at least one preset mileage interval; searching for a target vehicle and a first fault code of the target vehicle from a historical database according to the model and the target mileage interval, the model and the target mileage interval of the target vehicle being the same as those of the vehicle to be detected; determining the proportion of the number of each first fault code according to the number of target vehicles and the number of occurrences of each first fault code; if there is a target first fault code, detecting an ECU corresponding to the target first fault code in the vehicle to be detected to obtain a detection result, the target first fault code being a first fault code whose proportion of number reaches a preset proportion; outputting the detection result; determining the target first fault code, the method further comprising the following steps: acquiring the historical navigation route of the vehicle to be detected and the historical navigation route of the target vehicle; determining a first driving road condition of the vehicle to be detected based on the historical navigation route record of the vehicle to be detected; determining a second driving road condition of each target vehicle based on the historical navigation route of the target vehicle; determining whether there is a target second driving road condition, the target second driving road condition being a second driving road condition consistent with the first driving road condition among all second driving road conditions; if there is a target second driving road condition, determining the first fault code of the target vehicle corresponding to the target second driving road condition as the target first fault code; determining the total length of a first road section corresponding to each preset road level based on each historical navigation route of the vehicle to be detected; generating a first column chart based on the total length of the first road section corresponding to each preset road level; determining the total length of a second road section corresponding to each preset road level of each target vehicle based on each historical navigation route of each target vehicle; generating a second column chart of each target vehicle based on the total length of the second road section corresponding to each preset road level of each target vehicle; calculating the similarity between the first column chart and the second column chart of each target vehicle; if there is a target column chart, determining the first fault code of the target vehicle corresponding to the target column chart as the target first fault code, the target column chart being a column chart with high similarity to the first column chart among all second column charts.

2. The method of diagnosing a fault of an automobile according to claim 1, wherein The detection of the ECU corresponding to the target first fault code in the vehicle to be detected comprises the following steps: acquiring the historical detection information of the vehicle to be detected and the current time, the historical detection information comprising the historical fault codes of the vehicle to be detected and the detection time corresponding to each historical fault code; determining the detection interval duration of each historical fault code based on the historical detection time and the current time; determining whether the detection interval duration corresponding to each historical fault code reaches a corresponding preset interval duration; if there is a historical fault code whose detection interval duration does not reach the preset interval duration, deleting the historical fault code whose detection interval duration does not reach the preset interval duration to obtain a second fault code; According to the first fault code, the second fault code and the deleted historical fault code, a target first fault code is determined, the target first fault code being all of the first fault code and the second fault code except the deleted historical fault code; The ECU corresponding to the target first fault code of the vehicle to be detected is detected.

3. The method of diagnosing a fault of an automobile according to claim 2, wherein The detection of the ECU corresponding to the target first fault code in the vehicle to be detected further includes: Obtaining the maintenance times of the ECU corresponding to the first fault code in the target vehicle; According to the detection times of the ECU and the number of the target vehicle, a maintenance times proportion is determined; Based on the number proportion, the maintenance times proportion and the respective corresponding weight, a score of each first fault code is calculated; The scores are sorted from large to small to obtain a sorting result; Based on the sorting result, the ECU corresponding to the first fault code of the vehicle to be detected is detected.

4. The method of claim 1, wherein, The first driving road condition of the vehicle to be detected is determined based on the historical navigation route record of the vehicle to be detected, and the second driving road condition of each target vehicle is determined based on the historical navigation route of the target vehicle, including: Based on each historical navigation route of the vehicle to be detected, a first total length of each road grade corresponding to a plurality of preset road grades is determined; The preset road grade corresponding to the longest first total length is determined as the first driving road condition of the vehicle to be detected; Based on each historical navigation route of each target vehicle, a second total length corresponding to each target vehicle is determined under a plurality of preset road grades; The preset road grade corresponding to the longest second total length is determined as the second driving road condition of each target vehicle.

5. The method of claim 1, wherein, If there is a fault code in the detection result, the method further includes: Obtaining a three-dimensional model of the vehicle to be detected; Based on the detection result, the ECU corresponding to the fault code is marked in the detection vehicle model to obtain a marked three-dimensional model; Output the marked three-dimensional model.

6. An apparatus for diagnosing a failure of an automobile, which applies the automobile failure diagnosing method as claimed in claim 1, characterized by Including: An acquisition module is configured to acquire a model and a driving mileage of a vehicle to be detected; An interval determination module is configured to determine a target mileage interval in which the driving mileage is located from at least one preset mileage interval; A vehicle searching module is configured to search for a target vehicle and a first fault code of the target vehicle from a historical database according to the model and the target mileage interval, the model and the target mileage interval of the target vehicle being the same as those of the vehicle to be detected; A proportion determination module is configured to determine a number proportion of each first fault code according to a number of target vehicles and a number of occurrences of each first fault code; A detection module is configured to detect an ECU corresponding to a target first fault code in the vehicle to be detected if the target first fault code exists, the target first fault code being a first fault code whose number proportion reaches a preset proportion, to obtain a detection result; An output module is configured to output the detection result.

7. A vehicle fault detector, characterised in that, It includes: At least one processor; Memory; at least one application program, wherein the at least one application program is stored in the memory and is configured to be executed by the at least one processor, and the at least one application program is configured to execute the automobile fault diagnosis method according to any one of claims 1-5.

8. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program product, when executed in the computer, causes the computer to execute the automobile fault diagnosis method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Method for training fault prediction model and method and apparatus for predicting vehicle fault

    CN108693868A

  • Route planning method and device, server and medium

    CN113160598A