Fault extraction method, device, system, vehicle and storage medium
By setting the fault signal and fault code mapping relationship in the vehicle ECU, obtaining and storing fault codes and freezing frames, and cacheing vehicle communication data, the problems of high load and data loss in the fault diagnosis of the vehicle ECU are solved, and more efficient fault location and data storage are achieved.
Patent Information
- Application Number
- CN202210594236.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-27
- Publication Date
- 2025-04-29
- Estimated Expiration
- 2042-05-27
AI Technical Summary
In the fault diagnosis, existing vehicle ECUs need to set up multiple messages and multiple signals to map the contents of different DTCs, resulting in high load and the problem of coverage and loss of fault data processing methods.
By setting the fault signal and setting the mapping relationship between the fault code and the fault type, when the fault signal is a preset value, the fault code and frozen frame are obtained and stored, and the vehicle communication data for a period of time before and after the fault moment is cached in the non-volatile area.
It solves the problem that the vehicle ECU needs to set up multiple messages and signals to map the load high of different DTCs, and avoids the overwrite and loss of fault data, and improves the data accuracy and integrity of fault location.
Smart Images

Figure CN114924903B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present application relate to the field of vehicle technology, and in particular, to a fault extraction method, device, system, vehicle, and storage medium. Background Art
[0002] With the development of intelligent and interconnected vehicles, the software and hardware deployed on vehicles are becoming more and more complex, resulting in an increasing number and types of vehicle failures, making failure analysis more and more difficult, and facing new challenges in accurately locating vehicle failures. Summary of the invention
[0003] Embodiments of the present application provide a fault extraction method, device, system, vehicle and storage medium to improve the above-mentioned problems.
[0004] In a first aspect, an embodiment of the present application provides a fault extraction method. The fault extraction method includes: if a fault signal is detected to be a preset value, obtaining the fault moment, wherein the fault signal is represented by a bit, and the fault moment is the moment when the fault is detected; obtaining a fault code and a freeze frame corresponding to the fault moment, wherein different fault codes correspond to different fault types; and caching the fault code and the freeze frame in a non-volatile area.
[0005] In a second aspect, an embodiment of the present application provides a fault extraction device. The fault extraction device includes a determination module, an acquisition module, and a storage module. The determination module is used to obtain the fault moment if the fault signal detected is a preset value, wherein the fault signal is represented by a bit, and the fault moment is the moment when the fault is detected. The acquisition module is used to obtain the fault code and freeze frame corresponding to the fault moment, wherein different fault codes correspond to different fault types. The storage module is used to cache the fault code and the freeze frame to a non-volatile area.
[0006] In a third aspect, an embodiment of the present application provides a fault extraction system. The fault extraction system includes an electronic control unit and a telematics processor. The electronic control unit is used to set a fault signal to a preset value if a vehicle fault is detected, and record the time when the vehicle fault is detected as the fault time, wherein the fault signal is represented by one bit. The telematics processor is used to execute the fault extraction method provided in the embodiment of the present application if the fault signal is detected to be the preset value.
[0007] In a fourth aspect, an embodiment of the present application provides a vehicle. The vehicle includes a vehicle body and a fault extraction system provided in an embodiment of the present application. The fault extraction system includes a memory, one or more processors, and one or more applications. The one or more applications are stored in the memory and are configured to execute the fault extraction method provided in an embodiment of the present application when called by one or more processors.
[0008] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium having a program code stored therein, wherein the program code is configured to execute the fault extraction method provided in the embodiment of the present application when called by a processor.
[0009] The embodiments of the present application provide a fault extraction method, device, electronic device and storage medium. By setting a fault signal and setting a mapping relationship between a fault code and a fault type, the fault code and freeze frame can be obtained and stored when the fault signal is a preset value, so that the DTC and its corresponding data can be saved, solving the problem of high load caused by the current vehicle ECU needing to set multiple messages and multiple signals to map different DTC contents. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without paying any creative work.
[0011] Figure 1 It is a schematic diagram of an application scenario of the fault extraction method provided in an embodiment of the present application;
[0012] Figure 2 It is a flowchart of a fault extraction method provided by an embodiment of the present application;
[0013] Figure 3 is a flowchart of a fault extraction method provided by another embodiment of the present application;
[0014] Figure 4 is a flowchart of a fault extraction method provided by another embodiment of the present application;
[0015] Figure 5 is a flowchart of a fault extraction method provided in yet another embodiment of the present application;
[0016] Figure 6 is a flowchart of a fault extraction method provided by an exemplary embodiment of the present application;
[0017] Figure 7is a structural block diagram of a fault extraction device provided in an embodiment of the present application;
[0018] Figure 8 is a structural block diagram of a fault extraction system provided in an embodiment of the present application;
[0019] Fig. 9 is a structural block diagram of a vehicle provided in an embodiment of the present application;
[0020] Fig.10 It is a structural block diagram of a computer-readable storage medium provided in an embodiment of the present application. DETAILED DESCRIPTION
[0021] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0022] The rapid development of the current automotive industry has brought about high software complexity and a large number of in-vehicle data flows, which has put forward more demanding and stringent requirements for vehicle fault diagnosis and signal optimization. At present, vehicle fault diagnosis is mainly carried out by mapping the fault content through the fault signal message bit, which has high requirements for bus load and signal detection.
[0023] There are currently two ways to process fault data:
[0024] Method 1: The fault only triggers the Diagnostic Trouble Codes (DTC). When a new fault is added or the fault is self-healed, the DTC will be overwritten and disappear. This method cannot save historical data.
[0025] Method 2: Faults synchronously trigger DTCs and in-vehicle signals corresponding to different DTCs. This method requires the addition of application messages (Data Base CAN, DBC), loads, signal detection, and generation logic for controller area network (CAN) communication between automotive electronic control units (Electronic Control Unit, ECU), where the application message DBC is used to define the fault bit. In other words, this method relies on data upload and requires the addition of application messages, which has high requirements for load.
[0026] That is, the current methods for processing fault data have their own defects and are not yet perfect.
[0027] Based on this, the embodiments of the present application provide a fault extraction method, device, system, vehicle and storage medium. By setting the fault signal and setting the mapping relationship between the fault code and the fault type, the fault code and freeze frame can be obtained and stored when the fault signal is a preset value, so that the DTC and its corresponding data can be saved, solving the problem of high load caused by the current vehicle ECU needing to set multiple messages and multiple signals to map different DTC contents.
[0028] See also Figure 1 , Figure 1 Schematic diagram of an application scenario of the fault extraction method provided in an embodiment of the present application. The fault extraction system 10 includes an ECU 11, a telematics BOX (T-BOX) 12, and a fault analysis module 13. The ECU 11, the T-BOX 12 and the fault analysis module 13 can communicate with each other to achieve information exchange between each other.
[0029] ECU11 may refer to one ECU or may include multiple ECUs, which is not specifically limited in the embodiments of the present application. An independent single fault signal bit is set in each ECU11 to indicate whether the ECU11 fault is activated. In some embodiments, the fault signal bit is "1", indicating that the ECU11 fault is activated, indicating that one or more faults exist in the vehicle at this time; the fault signal bit is "0", indicating that the ECU11 fault is not activated, indicating that the vehicle is operating normally and there is no fault.
[0030] ECU11 stores a preset mapping relationship between DTC and fault type. That is, different DTCs correspond to different fault types, and the fault type can be set according to actual needs. The embodiment of the present application does not make specific limitations here. For example, the fault type may include the following types: (1) ECU11 external line type; (2) ECU11 configuration parameter type; (3) ECU11 software fault type; (4) ECU11 internal hardware fault type; (5) ECU11 initialization and calibration incomplete type; (6) ECU11 output fault. By setting different fault codes to correspond to different fault types, all modules can understand the fault type corresponding to the DTC by simply transmitting DTC between modules. There is no need for the ECU to separately add application messages DBC and signals to map different DTC contents, thereby solving the problem of high load caused by the vehicle ECU needing to set multiple messages and multiple signals to map different DTC contents.
[0031] During vehicle startup, ECU11 can detect vehicle faults. In some embodiments, when no vehicle fault is detected, the fault signal bit is "0". If ECU11 detects that the vehicle has a fault, ECU11 sets the fault signal bit to "1" and records the moment as the fault moment so that the fault moment can be sent to T-BOX12 later. As an example, when ECU11 detects that the voltage value (3-5 volts) of its external sensor exceeds the normal operating range or is lost for more than a preset period of time, it is determined that the vehicle has a fault, sets the fault signal bit to "1", and records the current moment as the fault moment. Among them, the preset period can be set according to actual needs. For example, the preset period can be 10 cycles, each cycle is 100 milliseconds, and the embodiment of the present application is not specifically limited here.
[0032] It should be noted that there is only one fault signal in the ECU 11, that is, at the same time, whether a single fault or multiple faults are detected, the only fault signal bit is set to "1". Whether the ECU 11 is one ECU or includes multiple ECUs, the fault signals of the ECUs are all set in the same way so that the T-BOX 12 can determine the fault signal.
[0033] When the vehicle is started, T-BOX12 can obtain and dynamically cache the vehicle communication data. The vehicle communication data refers to the data used for communication or generated during the communication process. The vehicle communication data may include at least the following three types of data: (1) Interaction data between ECU11, for example, the air conditioning start activation signal between the vehicle's air conditioning and the large screen, and the vehicle speed signal between the body controller (Body Control Module, BCM) and the pulse code modulation (Pulse Code Modulation, PCM); (2) Variables inside ECU11, for example, fault identification, sensor status; (3) The operating status of ECU11.
[0034] T-BOX12 starts fault signal detection and can detect the fault signal bit in ECU11. In some embodiments, T-BOX12 can obtain the fault time recorded by ECU11 and the fault data corresponding to the fault time when detecting that the fault signal bit is a preset value. Among them, the preset value can be set according to the assignment of the fault signal by ECU11, and the embodiment of the present application is not specifically limited here. As an example, as mentioned above, if ECU11 sets the fault signal bit to "1" to indicate that the vehicle has a fault, then correspondingly, the preset value in T-BOX12 is "1".
[0035] In some embodiments, when T-BOX12 is in normal operation (i.e., the network is normal), the above-mentioned fault time and its corresponding fault data can be actively uploaded to the fault analysis module 13, so that the fault analysis module 13 can analyze the fault according to the fault time and fault data. In other embodiments, T-BOX12 can also actively upload the above-mentioned fault time and its corresponding fault data to the fault analysis module 13 when receiving the fault data request instruction issued by the fault analysis module 13, so that the fault analysis module 13 can analyze the fault according to the fault time and fault data. By actively uploading when T-BOX12 is operating normally or uploading fault data when receiving the fault request instruction issued by the fault analysis module 13, operation and maintenance costs such as traffic fees caused by long-term data upload can be avoided.
[0036] The fault analysis module 13 can be a tester or a cloud, which is not specifically limited in the embodiments of the present application. The fault analysis module 13 can receive the fault time and the corresponding fault data reported by T-BOX12. The fault analysis module 13 can also initiate a vehicle-side fault data request, and send a fault data request instruction to T-BOX12 to obtain the fault time and the corresponding fault data stored in T-BOX12, and analyze the fault according to the fault time and the corresponding fault data fed back by T-BOX12. Among them, the fault data request and the fault request instruction can be set according to actual needs. For example, the fault data request and the fault request instruction can be different code fields, which is not specifically limited in the embodiments of the present application.
[0037] See also Figure 2 , Figure 2 is a flow chart of a fault extraction method provided by an embodiment of the present application. The fault extraction method can be applied to Figure 1 The T-BOX12 shown in the figure will be mentioned later. Figure 7 The device 500 shown in the figure will be described later. Figure 8 The T-BOX620 shown in the figure and the Fig. 9 The T-BOX 721 shown. The fault extraction method may include the following steps S110 to S130.
[0038] Step S110: If the detected fault signal is a preset value, the fault time is obtained, wherein the fault signal is represented by one bit and the fault time is the time when the fault is detected.
[0039] The preset value can be set according to the value assigned by the ECU to the fault signal, and the embodiment of the present application does not specifically limit it. As an example, if the ECU sets the fault signal bit to "1" to indicate that the vehicle has a fault, then the preset value in the T-BOX is "1" accordingly.
[0040] In some embodiments, T-BOX can obtain the fault signal in the ECU in real time and detect the fault signal bit. If the fault signal is detected to be a preset value, the fault time can be obtained from the ECU. Specifically, a request to obtain the fault time can be sent to the ECU, and the fault time fed back by the ECU can be received.
[0041] Step S120, obtaining the fault code and freeze frame corresponding to the fault moment, wherein different fault codes correspond to different fault types.
[0042] Among them, the freeze frame refers to the data generated when the ECU stores DTC.
[0043] Among them, different DTCs correspond to different fault types. For a specific description of the fault type, please refer to the aforementioned part about the fault type, which will not be repeated in the embodiments of the present application. By setting different fault codes to correspond to different fault types, all modules can understand the fault type corresponding to the DTC by simply transmitting the DTC between modules, without the need for the ECU to separately add application messages DBC and signals to map different DTC contents, thereby solving the problem of high load caused by the vehicle ECU needing to set multiple messages and multiple signals to map different DTC contents.
[0044] In some implementations, the T-BOX may obtain the DTC and freeze frame corresponding to the fault moment from the ECU.
[0045] Step S130, caching the fault code and the freeze frame into a non-volatile area.
[0046] The non-volatile area refers to a storage area in the T-BOX where the stored data will not disappear when the current is turned off.
[0047] In some implementations, the DTC and the freeze frame may be cached in a non-volatile area using a First Input First Output (FIFO) rule.
[0048] In some implementations, the FIFO rule may also be adopted to cache the fault time, DTC, and freeze frame together in a non-volatile area.
[0049] By caching fault codes and freeze frames in a non-volatile area, it is possible to prevent the fault codes and freeze frames from being overwritten by subsequent data and lost, so that subsequent testers or the cloud can analyze the fault based on the fault codes and freeze frames, thereby improving the data accuracy and completeness of vehicle fault location.
[0050] The fault extraction method provided in the embodiment of the present application can obtain and store fault codes and freeze frames when the fault signal is a preset value by setting a fault signal and setting a mapping relationship between fault codes and fault types, thereby saving DTCs and their corresponding data, thereby solving the problem of high load caused by the current vehicle ECU needing to set multiple messages and multiple signals to map different DTC contents.
[0051] See also Figure 3 , Figure 3 is a flow chart of a fault extraction method provided by another embodiment of the present application. The fault extraction method can be applied to Figure 1 The T-BOX12 shown in the figure will be mentioned later. Figure 7 The device 500 shown in the figure will be described later. Figure 8 The T-BOX620 shown in the figure and the Fig. 9 The T-BOX 721 shown. The fault extraction method may include the following steps S210 to S240.
[0052] Step S210: If the detected fault signal is a preset value, the fault time is obtained, wherein the fault signal is represented by one bit and the fault time is the time when the fault is detected.
[0053] Step S220, obtaining the fault code and freeze frame corresponding to the fault moment, wherein different fault codes correspond to different fault types.
[0054] For the detailed description of steps S210 to S220, please refer to steps S110 to S120, which will not be described in detail in the embodiment of the present application.
[0055] Step S230, obtaining first vehicle communication data within a first preset time period before the fault moment.
[0056] Due to the difference in ECUs, the detection cycle of DTC or faults (i.e., the period from when a fault occurs to when it is reported) is different, and the functional safety level requirements are also different. Therefore, the first preset period and the second preset period mentioned below can be set according to the actual functional requirements. The first preset period is usually longer than the second preset period. For example, the first preset period can be defined as 10 seconds, and the second preset period can be defined as 5 seconds. The embodiments of the present application do not make specific limitations here. Generally, the higher the functional safety level requirements, the shorter the detection cycle of DTC or faults, and the lower the functional safety level requirements (the fault is not important or the fault has a small impact), the longer the detection cycle of DTC or faults.
[0057] Among them, the first whole vehicle communication data is the same as the above-mentioned whole vehicle communication data. For the specific description of the first whole vehicle communication data, please refer to the above-mentioned part about the whole vehicle communication data, and the embodiments of this application will not be repeated here.
[0058] Step S240, caching the fault code, freeze frame, and first vehicle communication data into a non-volatile area.
[0059] In some implementations, the T-BOX may adopt a FIFO rule to cache the fault code, freeze frame, and first vehicle communication data into a non-volatile area.
[0060] In some implementations, the T-BOX may also adopt the FIFO rule to cache the fault time, fault code, freeze frame, and first vehicle communication data into the non-volatile area.
[0061] By changing the first vehicle communication data from dynamic cache to static cache, and caching the fault code and freeze frame to the non-volatile area, it is possible to avoid the fault code, freeze frame, and the first vehicle communication data being overwritten and lost by subsequent data, so that subsequent testers or the cloud can analyze the fault based on the fault code, freeze frame, and the first vehicle communication data, thereby improving the data accuracy and completeness of vehicle fault locating.
[0062] The fault extraction method provided in the embodiment of the present application can obtain and store the fault code, freeze frame and the first vehicle communication data in the first preset time period before the fault moment by setting the fault signal and setting the mapping relationship between the fault code and the fault type when the fault signal is a preset value. By saving the DTC corresponding to the fault moment and its corresponding data, the problem of high load caused by the current vehicle ECU needing to set multiple messages and multiple signals to map the contents of different DTCs can be solved. In addition, by saving the vehicle communication data for a period of time before the fault moment, the problem of no historical data analysis caused by the subsequent fault covering the vehicle after the fault occurs can be solved, thereby improving the data accuracy and completeness of vehicle fault location.
[0063] See also Figure 4 , Figure 4 is a flowchart of a fault extraction method provided by another embodiment of the present application. The fault extraction method can be applied to Figure 1 The T-BOX12 shown in the figure will be mentioned later. Figure 7 The device 500 shown in the figure will be described later. Figure 8 The T-BOX620 shown in the figure and the Fig. 9 The T-BOX 721 shown. The fault extraction method may include the following steps S310 to S340.
[0064] Step S310: If the detected fault signal is a preset value, the fault time is obtained, wherein the fault signal is represented by one bit and the fault time is the time when the fault is detected.
[0065] Step S320, obtaining the fault code and freeze frame corresponding to the fault moment, wherein different fault codes correspond to different fault types.
[0066] For the detailed description of steps S310 to S320, please refer to steps S110 to S120, which will not be described in detail in this embodiment of the present application.
[0067] Step S330, obtaining second vehicle communication data within a second preset time period after the fault moment.
[0068] For a specific description of the second preset time period, please refer to the relevant description in step S230, which will not be described in detail in the present embodiment. The second vehicle communication data is the same as the above vehicle communication data, and for a specific description of the second vehicle communication data, please refer to the above part on vehicle communication data, which will not be described in detail in the present embodiment.
[0069] Step S340, caching the fault code, freeze frame, and second vehicle communication data into a non-volatile area.
[0070] In some implementations, the T-BOX may adopt a FIFO rule to cache the fault code, freeze frame, and second vehicle communication data into a non-volatile area.
[0071] In some implementations, the T-BOX may also adopt the FIFO rule to cache the fault time, fault code, freeze frame, and the second vehicle communication data into the non-volatile area.
[0072] By changing the second vehicle communication data from dynamic cache to static cache, and caching the fault code and freeze frame to the non-volatile area, it is possible to avoid the fault code, freeze frame, and the second vehicle communication data being overwritten and lost by subsequent data, so that subsequent testers or the cloud can analyze the fault based on the fault code, freeze frame, and the second vehicle communication data, thereby improving the data accuracy and completeness of vehicle fault location.
[0073] The fault extraction method provided in the embodiment of the present application can obtain and store the fault code, freeze frame and the second vehicle communication data in the second preset time period after the fault moment by setting the fault signal and setting the mapping relationship between the fault code and the fault type when the fault signal is a preset value. By saving the DTC corresponding to the fault moment and its corresponding data, the problem of high load caused by the current vehicle ECU needing to set multiple messages and multiple signals to map the contents of different DTCs can be solved. In addition, by saving the vehicle communication data for a period of time after the fault moment, the problem of no historical data analysis caused by the subsequent fault covering the vehicle after the fault occurs can be solved, thereby improving the data accuracy and completeness of vehicle fault location.
[0074] See also Figure 5 , Figure 5 is a flowchart of a fault extraction method provided by another embodiment of the present application. The fault extraction method can be applied to Figure 1 The T-BOX12 shown in the figure will be mentioned later. Figure 7 The device 500 shown in the figure will be described later. Figure 8 The T-BOX620 shown in the figure and the Fig. 9 The T-BOX 721 shown. The fault extraction method may include the following steps S410 to S480.
[0075] Step S410: If the detected fault signal is a preset value, the fault time is obtained, wherein the fault signal is represented by one bit and the fault time is the time when the fault is detected.
[0076] For the detailed description of step S410, please refer to step S110, which will not be described in detail in the embodiment of the present application.
[0077] Step S420, obtaining the fault code and freeze frame corresponding to the fault moment, wherein different fault codes correspond to different fault types.
[0078] In some implementations, multiple ECUs may simultaneously detect that multiple different faults occur in the vehicle at the same time, that is, the fault time is the fault time corresponding to multiple faults. In this case, step S420 may include the following steps:
[0079] Step 1: Obtain diagnostic access addresses corresponding to multiple faults to obtain multiple diagnostic access addresses.
[0080] Among them, the diagnostic access address refers to the diagnostic access address of the ECU. To simplify the description, the diagnostic access address of the ECU will be referred to as the diagnostic ID in the following. The range of the diagnostic ID is defined by the International Organization for Standardization (ISO) as 0x700 to 0x7FF in the industry. For example, "0x7E0 / 0x7E8" are the diagnostic IDs of the access / response mechanism respectively. The diagnostic ID is defined by the original equipment manufacturer (OEM), and different ECUs have different diagnostic IDs.
[0081] Step 2: Based on the priority of each diagnostic ID, multiple DTCs and multiple freeze frames are obtained, wherein each diagnostic ID corresponds to a DTC, and each DTC corresponds to a freeze frame.
[0082] In some embodiments, multiple DTCs and multiple freeze frames can be obtained from high to low priority of the diagnostic ID. The priority of the diagnostic ID is inversely proportional to the numerical value of the diagnostic access address. For example, the priority of the diagnostic ID "0x7E0" is higher than the priority of the diagnostic ID "0x7E8", that is, the DTC and freeze frame corresponding to the diagnostic ID "0x7E8" can be obtained first, and then the DTC and freeze frame corresponding to the diagnostic ID "0x7E0" can be obtained.
[0083] In other embodiments, multiple DTCs and freeze frames may be obtained from high to low priority of the diagnostic ID. The priority of the diagnostic ID is inversely proportional to the numerical value of the diagnostic access address. For example, the priority of the diagnostic ID "0x7E0" is higher than the priority of the diagnostic ID "0x7E8", that is, the DTC and freeze frame corresponding to the diagnostic ID "0x7E0" may be obtained first, and then the DTC and freeze frame corresponding to the diagnostic ID "0x7E8" may be obtained.
[0084] For the part of step S420 not described in detail, please refer to step S120, and the embodiment of the present application will not be repeated here.
[0085] Step S430, obtaining first vehicle communication data within a first preset time period before the fault moment.
[0086] For the detailed description of step S430, please refer to step S230, which will not be repeated here in this embodiment of the present application.
[0087] Step S440, obtaining second vehicle communication data within a second preset time period after the fault moment.
[0088] For the specific description of step S440, please refer to step S330, which will not be repeated here in this embodiment of the present application.
[0089] Step S450, caching the fault code, the freeze frame, the first vehicle communication data, and the second vehicle communication data into a non-volatile area.
[0090] In some embodiments, if the fault moment is a fault moment corresponding to multiple faults, the DTC in step S450 includes multiple DTCs, and the freeze frame includes multiple freeze frames. The implementation of step 450 can be based on multiple DTCs, and the multiple DTCs and freeze frames are cached in the non-volatile area. As an example, the freeze frames corresponding to different DTCs can be stored in different parts of the non-volatile area, or the DTCs and their corresponding freeze frames can be stored in the non-volatile area in a descending order or a descending order according to the priority of the diagnostic ID corresponding to the DTC.
[0091] By storing the DTC and freeze frames in the non-volatile area, the first vehicle communication data and the second vehicle communication data are changed from dynamic storage to static storage, which can prevent the first vehicle communication data and the second vehicle communication data from being overwritten by subsequent data and lost, so that the subsequent tester or the cloud can analyze the fault based on the first vehicle communication data and the second vehicle communication data.
[0092] For the parts of step S450 that are not described in detail, please refer to step S130, step S240, and step S340, and the embodiments of the present application will not be repeated here.
[0093] Step S460, if it is detected that the network of the telematics processor meets the preset conditions, the fault code and the freeze frame are uploaded to the cloud or the tester, so that the cloud or the tester analyzes the fault according to the fault code and the freeze frame.
[0094] Among them, the preset condition can indicate whether the T-BOX is in a normal working state. For example, the preset condition can be that the network signal of the T-BOX is greater than the signal threshold, wherein the signal threshold can be set according to actual functional requirements, and the embodiment of the present application is not specifically limited here.
[0095] Taking into account that the network signal is weak or there is no network signal when the vehicle is in the garage, which may lead to unsuccessful data upload, or the inability to upload data or the uploaded data being erroneous due to a software failure of the T-BOX itself, the embodiment of the present application is configured to upload data to the cloud or tester only when the T-BOX network meets preset conditions, so as to avoid unsuccessful or incomplete data upload due to the above reasons, thereby improving the integrity of the fault data.
[0096] Step S470, obtaining feedback information from the cloud or the tester.
[0097] Among them, the feedback information can indicate whether the upload is successful, and its specific content can be set according to actual needs, and the embodiment of the present application does not make specific limitations here.
[0098] Step S480: If the feedback information indicates that the upload fails, the fault code and the freeze frame continue to be cached in the non-volatile area.
[0099] When the feedback information indicates that the upload has failed, the fault code and the freeze frame continue to be cached in the non-volatile area, which can avoid the loss of the fault code and the freeze frame and provide convenience for uploading the fault code and the freeze frame next time.
[0100] The fault extraction method provided in the embodiment of the present application can obtain and store the fault code, freeze frame, first vehicle communication data in the first preset period before the fault moment, and second vehicle communication data in the second preset period after the fault moment by setting the fault signal and setting the mapping relationship between the fault code and the fault type when the fault signal is a preset value. By saving the DTC corresponding to the fault moment and its corresponding data, the problem of high load caused by the current vehicle ECU needing to set multiple messages and multiple signals to map the contents of different DTCs can be solved. In addition, by saving the vehicle communication data for a period of time before and after the fault moment, the problem of no historical data analysis caused by the subsequent fault covering the vehicle after the fault occurs can be solved, thereby improving the data accuracy and completeness of vehicle fault location.
[0101] See also Figure 6 , Figure 6 is a flowchart of a fault extraction method provided by an exemplary embodiment of the present application. The fault extraction method can be applied to Figure 1 The fault extraction system 10 shown in the figure will be described later. Figure 8 The fault extraction system 600 shown in the figure and the fault extraction system 600 to be mentioned later Fig. 9 The fault extraction system 720 shown. The fault extraction method may include the following steps 1 to 10:
[0102] Step 1: When the vehicle is started, T-BOX starts the function of dynamically caching the vehicle communication data.
[0103] Step 2: When the ECU detects that the vehicle has a fault, it sets the fault signal bit to "1" and records the time when the vehicle fault is detected as the fault time.
[0104] Step 3: When the T-BOX detects that the fault signal bit is "1", it sends a request to the ECU to read the fault time and the DTC and freeze frame corresponding to the fault time.
[0105] Step 4: ECU feeds back the fault time and the DTC and freeze frame corresponding to the fault time to T-BOX.
[0106] Step 5: T-BOX stores the fault time and the DTC and freeze frame corresponding to the fault time in the non-volatile area.
[0107] Step six, T-BOX caches the first vehicle communication data within a first preset time period before the fault moment and the second vehicle communication data within a second preset time period after the fault moment into a non-volatile area.
[0108] The first preset period is Figure 6 The second preset time period is Figure 6 The time period between the fault time and the time Δt2 after the fault time is shown. That is, the first vehicle communication data in the first preset time period before the fault time and the second vehicle communication data in the second preset time period after the fault time are Figure 6 The vehicle communication data from Δt1 before the fault to Δt2 after the fault is shown. Both Δt1 and Δt2 can be set according to actual functional requirements. Δt1 is usually greater than Δt2. For example, Δt1 can be defined as 10 seconds and Δt2 can be defined as 5 seconds. The embodiment of the present application does not make specific limitations here.
[0109] By changing the first vehicle communication data and the second vehicle communication data from dynamic storage to static storage, it can avoid the first vehicle communication data and the second vehicle communication data being overwritten by subsequent data and lost, so that the subsequent tester or the cloud can analyze the fault based on the first vehicle communication data and the second vehicle communication data.
[0110] Step 7: T-BOX maps and stores the above DTC, freeze frame, first vehicle communication data, and second vehicle communication data in a file management manner.
[0111] Step 8: The tester or the cloud initiates a vehicle-side fault data request and sends a fault data request instruction to the T-BOX.
[0112] Step nine, T-BOX extracts the above-mentioned DTC, freeze frame, first vehicle communication data, and second vehicle communication data corresponding to the fault moment from the non-volatile area, and sends the extracted DTC, freeze frame, first vehicle communication data, and second vehicle communication data to the tester or the cloud.
[0113] Step ten, the tester or the cloud receives the above-mentioned DTC, freeze frame, first vehicle communication data, and second vehicle communication data, and analyzes the vehicle fault based on the above-mentioned DTC, freeze frame, first vehicle communication data, and second vehicle communication data.
[0114] For the parts not described in detail in the above steps 1 to 10, please refer to the corresponding processes in the above embodiments, and the embodiments of the present application will not be repeated here.
[0115] See also Figure 7 , Figure 7 is a structural block diagram of a fault extraction device provided in an embodiment of the present application. The fault extraction device 500 can be applied to Figure 1 The T-BOX12 shown in the figure will be mentioned later. Figure 7 The T-BOX620 shown in the figure and the Figure 8The T-BOX721 shown. The fault extraction device 500 includes a determination module 510, an acquisition module 520, and a storage module 530. The determination module 510 is used to obtain the fault moment, wherein the fault signal is represented by a bit, and the fault moment is the moment when the fault is detected. The acquisition module 520 is used to obtain the fault code and freeze frame corresponding to the fault moment, wherein different fault codes correspond to different fault types. The storage module 530 is used to cache the fault code and the freeze frame to a non-volatile area.
[0116] In some embodiments, the acquisition module 520 is further configured to acquire first vehicle communication data within a first preset period before the fault moment. The storage module 530 is further configured to cache the first vehicle communication data in the non-volatile area.
[0117] In some embodiments, the acquisition module 520 is further configured to acquire second vehicle communication data within a second preset period after the fault moment. The storage module 530 is further configured to cache the second vehicle communication data in the non-volatile area.
[0118] In some embodiments, the fault moment is the fault moment corresponding to multiple faults. The acquisition module 520 includes a first acquisition submodule and a second acquisition submodule. The storage module 530 also includes a storage submodule. The first acquisition submodule is used to acquire the diagnostic access addresses corresponding to the multiple faults and obtain multiple diagnostic access addresses. The second acquisition submodule is used to acquire multiple fault codes and multiple freeze frames based on the priority of each diagnostic access address, wherein each diagnostic access address corresponds to one fault code, and each fault code corresponds to one freeze frame. The storage submodule is used to cache multiple fault codes and freeze frames to the non-volatile area based on multiple fault codes. Wherein, the priority of the diagnostic access address is inversely proportional to the numerical value of the diagnostic access address.
[0119] In some embodiments, the fault extraction device 500 further includes an upload module and a receiving module. The upload module is used to upload the fault code and the freeze frame to the cloud or the tester if it is detected that the network of the telematics processor meets the preset conditions, so that the cloud or the tester analyzes the fault according to the fault code and the freeze frame. The receiving module is used to obtain feedback information from the cloud or the tester. The storage module 530 is also used to continue to cache the fault code and the freeze frame in the non-volatile area if the feedback information indicates that the upload fails.
[0120] See also Figure 8 , Figure 8It is a structural block diagram of the fault extraction system provided in an embodiment of the present application. The fault extraction system 600 includes an ECU 610 and a T-BOX 620. The ECU 610 and the T-BOX 620 can communicate with each other to realize data exchange. If the ECU 610 detects that a vehicle fault occurs, it sets the fault signal to a preset value, and records the moment when the fault is detected in the vehicle as the fault moment, wherein the fault signal is represented by a bit. If the T-BOX 620 detects that the fault signal is the preset value, it executes the fault extraction method provided in an embodiment of the present application. It should be noted that the fault extraction system 600 is similar to the above-mentioned Figure 1 The fault extraction system 10 shown is the same, the ECU 610 is the same as the above-mentioned ECU 11 , and the T-BOX 620 is the same as the above-mentioned T-BOX 630 .
[0121] Those skilled in the art can clearly understand that the fault extraction device 500 and the fault extraction system 600 provided in the embodiment of the present application can implement the fault extraction method provided in the embodiment of the present application. The specific working process of the above-mentioned device and module can refer to the corresponding process of the fault extraction method in the embodiment of the present application, which will not be repeated here.
[0122] In the embodiments provided in the present application, the coupling, direct coupling or communication connection between the modules shown or discussed may be indirect coupling or communication coupling through some interfaces, devices or modules, and may be electrical, mechanical or other forms, which are not specifically limited in the embodiments of the present application.
[0123] In addition, each functional module in the embodiment of the present application can be integrated into a processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above-mentioned integrated modules can be implemented in the form of hardware or in the form of software functional modules, which is not specifically limited in the embodiment of the present application.
[0124] See also Fig. 9 , Fig. 9 700 is a structural block diagram of a vehicle provided in an embodiment of the present application. The vehicle 700 includes a vehicle body 710 and a fault extraction system 720. The fault extraction system 720 includes a T-BOX 721. It should be noted that the fault extraction system 720 is similar to the above-mentioned Figure 1 The fault extraction system 10 shown is the same as the one shown in FIG. Figure 1 Same as T-BOX721 shown.
[0125] T-BOX721 includes one or more of the following components: a memory 7211, one or more processors 7212, and one or more applications, wherein the one or more applications can be stored in the memory 7211 and configured to, when called by the one or more processors 7212, enable the one or more processors 7212 to execute the above-mentioned fault extraction method provided in the embodiments of the present application.
[0126] The processor 7212 may include one or more processing cores. The processor 7212 uses various interfaces and lines to connect the various parts of the entire T-BOX721, and is used to run or execute instructions, programs, code sets or instruction sets stored in the memory 7211, and call to run or execute data stored in the memory 7211, and execute various functions of T-BOX721 and process data. Optionally, the processor 7212 can be implemented in at least one hardware form of digital signal processing (Digital Signal Processing, DSP), field programmable gate array (Field-Programmable Gate Array, FPGA), and programmable logic array (ProgrammableLogic Array, PLA). The processor 7212 can integrate one or a combination of a central processing unit (CentralProcessing Unit, CPU), a graphics processing unit (Graphics Processing Unit, GPU) and a modem. Among them, the CPU mainly processes the operating system, user interface and application programs; the GPU is responsible for rendering and drawing display content; and the modem is used to process wireless communications. It can be understood that the above-mentioned modem may not be integrated into the processor 7212, and may be implemented separately through a communication chip.
[0127] The memory 7211 may include a random access memory (RAM) or a read-only memory (ROM). The memory 7211 may be used to store instructions, programs, codes, code sets or instruction sets. The memory 7211 may include a program storage area and a data storage area. The program storage area may store instructions for implementing an operating system, instructions for implementing at least one function, instructions for implementing the above-mentioned various method embodiments, etc. The data storage area may store data created by the T-BOX 721 during use, etc.
[0128] See also Fig.10 , Fig.10The computer-readable storage medium 800 stores a program code 810, which is configured to cause the processor to execute the above-mentioned fault extraction method provided in the embodiment of the present application when called by the processor.
[0129] Computer readable storage medium 800 can be an electronic storage such as flash memory, electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), hard disk or ROM. Optionally, computer readable storage medium 800 includes non-transitory computer readable medium (Non-TCRSM). Computer readable storage medium 800 has storage space for program code 810 that performs any method step in the above method. These program codes 810 can be read from one or more computer program products or written into one or more computer program products. Program code 810 can be compressed in an appropriate form.
[0130] In summary, the embodiments of the present application provide a fault extraction method, device, electronic device and storage medium. By setting a fault signal and setting a mapping relationship between a fault code and a fault type, the fault code and freeze frame can be obtained and stored when the fault signal is a preset value, so that the DTC and its corresponding data can be saved, thereby solving the problem of high load caused by the current vehicle ECU needing to set multiple messages and multiple signals to map different DTC contents.
[0131] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or replace some of the technical features therein by equivalents; and these modifications or replacements do not drive the essence of the corresponding technical solutions out of the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A fault extraction method, characterized in that: include: If the detected fault signal is a preset value, the fault time is obtained, wherein the fault signal is represented by one bit, the fault time is the time when the fault is detected, and the fault time is the fault time corresponding to multiple faults; Acquire diagnostic access addresses corresponding to the multiple faults to obtain multiple diagnostic access addresses, where the diagnostic access addresses are diagnostic access addresses of the ECU, and different ECUs have different diagnostic IDs; Based on the priority of each of the diagnostic access addresses from high to low, a plurality of fault codes and a plurality of freeze frames are obtained, wherein the priority of the diagnostic access address is inversely proportional to the value of the diagnostic access address, each of the diagnostic access addresses corresponds to a fault code, each of the fault codes corresponds to a freeze frame, and different fault codes correspond to different fault types; Based on the plurality of fault codes, the plurality of fault codes and the freeze frame are cached in a non-volatile area.
2. The method according to claim 1, characterized in that After determining the moment when the fault signal is detected to be the preset value as the fault moment, the method further includes: Acquire first vehicle communication data within a first preset time period before the fault moment; The first vehicle communication data is cached in the non-volatile area.
3. The method according to claim 1 or 2, characterized in that: After determining the moment when the fault signal is detected to be the preset value as the fault moment, the method further includes: Acquire second vehicle communication data within a second preset time period after the fault moment; The second vehicle communication data is cached in the non-volatile area.
4. The method according to claim 1, characterized in that After caching the fault code and the freeze frame in a non-volatile area, the method further includes: If it is detected that the network of the telematics processor meets a preset condition, uploading the fault code and the freeze frame to a cloud or a tester, so that the cloud or the tester analyzes the fault according to the fault code and the freeze frame; Obtaining feedback information from the cloud or the tester; If the feedback information indicates that the upload fails, the fault code and the freeze frame continue to be cached in the non-volatile area.
5. A fault extraction device, characterized in that: include: A determination module, configured to obtain a fault time if a fault signal is detected to be a preset value, wherein the fault signal is represented by one bit, the fault time is a time when a fault is detected, and the fault time is a fault time corresponding to multiple faults; an acquisition module, used to acquire diagnostic access addresses corresponding to the multiple faults, and obtain multiple diagnostic access addresses, wherein the diagnostic access address is the diagnostic access address of the ECU, and different ECUs have different diagnostic IDs; based on the priority of each diagnostic access address from high to low, multiple fault codes and multiple freeze frames are acquired, wherein the priority of the diagnostic access address is inversely proportional to the value of the diagnostic access address, each diagnostic access address corresponds to a fault code, each fault code corresponds to a freeze frame, and different fault codes correspond to different fault types; The storage module is used for caching the plurality of fault codes and the freeze frame into a non-volatile area based on the plurality of fault codes.
6. A fault extraction system, characterized in that: include: An electronic control unit, configured to, if a fault is detected in the vehicle, set a fault signal to a preset value, and record the time when the fault is detected in the vehicle as the fault time, wherein the fault signal is represented by one bit; A telematics processor, configured to execute the fault extraction method as described in any one of claims 1 to 4 if it is detected that the fault signal is the preset value.
7. A vehicle, characterized in that: include: Car body; The fault extraction system as described in claim 6, wherein the telematics processor in the fault extraction system includes a memory, one or more processors, and one or more applications, wherein the one or more applications are stored in the memory and are configured to be called by the one or more processors so that the one or more processors execute the fault extraction method as described in any one of claims 1-4.
8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores program code, and when the program code is configured to be called by a processor, the processor executes the fault extraction method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Vehicle diagnosis method, vehicle control unit, vehicle and readable storage medium
CN114137932A
Method and program for preventing misdiagnosis of fault
JP2005156165A